@font-face {
    font-family: "Instrument Sans";
    src: url("./flor-de-tajibo-instrument-sans.woff2") format("woff2");
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
}

.flor-storefront {
    --flor-ink: var(--brand-primary);
    --flor-deep: var(--brand-secondary);
    --flor-gold: var(--brand-accent);
    --flor-paper: var(--flor-ink);
    --flor-surface: #fffcf5;
    --flor-cream: color-mix(in srgb, var(--flor-deep) 92%, var(--flor-gold));
    --flor-light-gold: color-mix(in srgb, var(--flor-gold) 80%, #fff2d6);
    --flor-dark-gold: color-mix(in srgb, var(--flor-gold) 93%, #fff2d6);
    --flor-line: color-mix(in srgb, var(--flor-gold) 32%, var(--flor-paper));
    --flor-line-dark: color-mix(in srgb, var(--flor-gold) 44%, var(--flor-ink));
    --flor-display: "Instrument Sans", Arial, sans-serif;
    --iw-sf-accent: var(--flor-dark-gold);
    --iw-sf-accent-soft: var(--flor-cream);
    --iw-sf-text: var(--flor-light-gold);
    --iw-sf-body: #ded0b9;
    --iw-sf-muted: #bfae91;
    --iw-sf-line: var(--flor-line);
    --iw-sf-line-strong: var(--flor-gold);
    --iw-sf-divider: var(--flor-line);
    --iw-sf-box: var(--flor-line);
    background: var(--flor-paper);
    color: var(--flor-surface);
    font-family: var(--font-primary, var(--flor-display)), sans-serif;
}

html:has(.flor-storefront) { scrollbar-color: #544633 transparent; scrollbar-width: thin; }
.flor-storefront .iw-sf-main { background: var(--flor-paper); }
.flor-storefront :focus-visible { outline: 2px solid var(--flor-dark-gold); outline-offset: 3px; }

.flor-storefront main :is(h1, h2, h3),
.flor-storefront .flor-display {
    color: var(--flor-light-gold);
    font-family: var(--font-secondary, var(--font-primary, var(--flor-display)));
}
.flor-storefront main h1:not(.sr-only) {
    font-weight: 500;
    letter-spacing: -.04em;
    line-height: 1;
}
.flor-storefront .iw-sf-page-shell h1:not(.sr-only) { font-size: clamp(2.65rem, 5vw, 5.1rem); }
.flor-storefront .iw-sf-page-shell :is(h2, h3):not(.sr-only) { letter-spacing: -.02em; }
.flor-storefront .iw-sf-eyebrow { color: var(--flor-dark-gold); }
.flor-storefront .iw-sf-breadcrumb-bar { background: var(--flor-paper); }
.flor-storefront .iw-sf-breadcrumb-nav a { color: var(--flor-dark-gold); }
.flor-storefront .iw-sf-link { color: var(--flor-dark-gold); text-underline-offset: .22em; }
.flor-storefront .iw-sf-divider { border-color: var(--flor-line); }

.flor-storefront :is(.iw-brand-btn, .iw-brand-btn--outline) {
    min-height: 2.7rem;
    border: 1px solid var(--flor-gold);
    border-radius: .25rem;
    gap: .55rem;
}
.flor-storefront .iw-brand-btn {
    background: var(--flor-light-gold);
    border-color: var(--flor-light-gold);
    color: #1b150e;
}
.flor-storefront .iw-brand-btn:hover { background: var(--flor-surface); }
.flor-storefront .iw-brand-btn--outline { color: var(--flor-surface); }
.flor-storefront .iw-brand-btn--outline:hover { background: var(--flor-ink); color: var(--flor-surface); }

.flor-storefront .iw-sf-header {
    background: var(--flor-ink);
    border-color: var(--flor-line-dark);
    color: var(--flor-surface);
}
.flor-storefront .iw-sf-header > .iw-sf-container { min-height: 4.65rem; }
.flor-storefront .iw-sf-header.is-scrolled { box-shadow: 0 8px 22px #140d071c; }
.flor-storefront .iw-sf-header :is(.iw-sf-header-action, .iw-sf-header-account, .iw-brand-secondary) {
    color: var(--flor-surface);
}
.flor-storefront .iw-sf-header :is(.iw-sf-header-action, .iw-sf-header-account):hover {
    color: var(--flor-light-gold);
    background: var(--flor-deep);
}
.flor-storefront .iw-sf-header .iw-brand-bg-accent { background: var(--flor-dark-gold); }
.flor-storefront .iw-sf-header .iw-sf-header-account { border-color: var(--flor-line-dark); }
.flor-storefront .iw-sf-header .iw-sf-nav-progress__bar { background: var(--flor-light-gold); }
.flor-storefront .iw-sf-header a.iw-sf-nav-link {
    position: relative;
    color: var(--flor-dark-gold);
    background: transparent;
    border-radius: 0;
    padding-inline: clamp(.65rem, 1.4vw, 1.35rem);
    letter-spacing: .035em;
}
.flor-storefront .iw-sf-header a.iw-sf-nav-link:hover,
.flor-storefront .iw-sf-header a.iw-sf-nav-link[aria-current="page"] { color: var(--flor-light-gold); }
.flor-storefront .iw-sf-header a.iw-sf-nav-link[aria-current="page"]::after {
    position: absolute;
    content: "";
    height: 1px;
    background: currentColor;
    inset: auto 24% 0;
}
.flor-storefront .iw-sf-header .iw-sf-header-logo img,
.flor-footer-logo {
    background: var(--flor-surface);
    border: 1px solid var(--flor-light-gold);
    border-radius: .25rem;
}
.flor-storefront .iw-sf-header .iw-sf-header-logo img:not([aria-hidden]) {
    width: auto;
    height: clamp(2.7rem, 4vw, 3.5rem);
    object-fit: contain;
}
.flor-storefront .iw-sf-header .iw-sf-header-logo [class*="text-neutral-600"] { color: var(--flor-light-gold); }
.flor-storefront .iw-sf-drawer { background: var(--flor-deep); }
.flor-storefront .iw-sf-drawer .flor-menu a {
    min-height: 2.75rem;
    border-radius: 0;
    border-bottom: 1px solid var(--flor-line);
}
.flor-storefront .iw-sf-drawer .flor-menu a[aria-current="page"] {
    background: var(--flor-cream);
    color: var(--flor-dark-gold);
}

.flor-actions { display: flex; align-items: center; gap: 1rem 1.25rem; flex-wrap: wrap; margin-top: .35rem; }
.flor-gold-button {
    display: inline-flex;
    min-height: 3.1rem;
    align-items: center;
    gap: 1.25rem;
    padding: .78rem 1.2rem;
    border: 1px solid var(--flor-light-gold);
    border-radius: 99rem;
    background: var(--flor-light-gold);
    color: #21180d;
    font-size: .88rem;
    font-weight: 650;
    transition: background-color .2s, border-color .2s;
}
.flor-gold-button:hover { background: var(--flor-surface); border-color: var(--flor-surface); }
.flor-text-link { color: var(--flor-light-gold); font-size: .9rem; padding: .35rem 0; border-bottom: 1px solid currentColor; }
.flor-section { padding-block: clamp(2.8rem, 6.5vw, 6rem); }
.flor-home-widgets {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
    gap: clamp(1.2rem, 3vw, 2.5rem);
}
.flor-storefront .iw-ec-campaign-carousel > div:first-child,
.flor-storefront .iw-sf-product-card > div:nth-child(2) {
    border-top: 1px solid var(--flor-line);
}
.flor-storefront .iw-ec-campaign-carousel > div:first-child {
    padding-top: 1.25rem;
    align-items: baseline;
}
.flor-storefront .iw-ec-campaign-carousel h2 {
    font-size: clamp(2.6rem, 5vw, 4.9rem);
    font-weight: 500;
    line-height: .98;
}
.flor-storefront .iw-ec-campaign-carousel__view-all {
    display: inline-flex;
    color: var(--flor-dark-gold);
    padding: .3rem 0;
    border-bottom: 1px solid var(--flor-line);
}
.flor-storefront .iw-ec-campaign-carousel__track {
    --flor-carousel-gap: clamp(.8rem, 2.2vw, 1.75rem);
    gap: var(--flor-carousel-gap);
    scrollbar-width: none;
}
.flor-storefront .iw-ec-campaign-carousel__slide { width: min(73vw, 19rem); max-width: none; }
.flor-storefront .iw-ec-campaign-carousel__nav:not(:disabled) {
    background: var(--flor-surface);
    color: var(--flor-ink);
    border: 1px solid var(--flor-gold);
    opacity: 1;
    pointer-events: auto;
    box-shadow: none;
    width: 2.6rem;
    height: 2.6rem;
}
.flor-storefront .iw-ec-campaign-carousel__dot--active { background: var(--flor-dark-gold); }

.flor-storefront .iw-sf-product-card {
    border: 1px solid var(--flor-line);
    border-radius: 1.35rem;
    background: var(--flor-deep);
    transition: border-color .26s, box-shadow .26s;
}
.flor-storefront .iw-sf-product-card:focus-within,
.flor-storefront .iw-sf-product-card:hover {
    border-color: var(--flor-gold);
    box-shadow: 0 9px 24px #32201117;
}
.flor-storefront .iw-sf-product-card__image-link { background: #faf8f4; }
.flor-storefront .iw-sf-product-card__image-link img {
    object-fit: contain;
    padding: clamp(.25rem, .9vw, .8rem);
}
.flor-storefront .iw-sf-product-card > div:nth-child(2) { padding: clamp(.65rem, 1.5vw, 1.35rem); }
.flor-storefront :is(.iw-sf-product-card h2, .iw-ec-list-card h3) {
    font-size: clamp(1.18rem, 2vw, 1.7rem);
    font-weight: 600;
    line-height: 1.1;
}
.flor-storefront .iw-ec-list-card { border-color: var(--flor-line); }
.flor-storefront .iw-ec-list-card img { object-fit: contain; }
.flor-storefront #product-storefront-gallery > div:first-child {
    border: 1px solid var(--flor-line);
    background: #faf8f4;
    border-radius: 1.5rem;
}
.flor-storefront #product-storefront-gallery > div:first-child img {
    padding: clamp(.25rem, 1.1vw, 1rem);
}
.flor-storefront #product-storefront-gallery [aria-label="Miniaturas de la galería"] {
    scrollbar-width: none;
}
.flor-storefront #product-storefront-gallery [aria-label="Miniaturas de la galería"] button {
    border-radius: .3rem;
    background: var(--flor-surface);
}
.flor-storefront #product-storefront-gallery [aria-label="Miniaturas de la galería"] img { object-fit: contain; }
.flor-storefront #product-variation-picker-root button:not(:disabled) {
    min-height: 2.55rem;
    padding-inline: .95rem;
    border-color: var(--flor-line);
    border-radius: .25rem;
}
.flor-storefront #product-variation-picker-root button[aria-pressed="true"] {
    border-color: var(--flor-dark-gold);
    background: var(--flor-cream);
    color: var(--flor-surface);
}
.flor-storefront .iw-sf-price-sale { color: var(--flor-dark-gold); }
.flor-storefront :is(#product-storefront-price, .checkout-col-title) { color: var(--flor-light-gold); }
.flor-storefront .iw-sf-input:not([type="checkbox"]):not([type="radio"]) { border-radius: .28rem; }

.flor-about {
    display: grid;
    gap: clamp(1.8rem, 5vw, 5rem);
    align-items: center;
    padding-block: clamp(1rem, 3vw, 3rem);
}
.flor-about__copy {
    max-width: 61ch;
    display: grid;
    justify-items: start;
    gap: 1.15rem;
}
.flor-about__copy .flor-lede { color: var(--flor-dark-gold); }
.flor-about__copy p:not(.flor-lede) { font-size: 1rem; line-height: 1.75; color: var(--iw-sf-body); }
.flor-about__visual { background: var(--flor-cream); padding: .6rem; border: 1px solid var(--flor-line); }
.flor-about__visual img { display: block; width: 100%; aspect-ratio: 4 / 4.5; object-fit: cover; object-position: center 40%; }

.flor-storefront .iw-sf-footer {
    --iw-sf-line: var(--flor-line-dark);
    --iw-sf-text: var(--flor-light-gold);
    --iw-sf-body: #ded3c2;
    --iw-sf-muted: #c8baab;
    background: var(--flor-ink);
    color: var(--flor-surface);
    border-color: var(--flor-line-dark);
}
.flor-footer-brand { padding-block: 1.7rem; border-bottom: 1px solid var(--flor-line-dark); }
.flor-footer-logo { height: 3.5rem; width: auto; object-fit: contain; }
.flor-storefront .iw-sf-footer :is(h2, .iw-sf-footer-col-title, .iw-brand-secondary) { color: var(--flor-light-gold); }
.flor-storefront .iw-sf-footer :is(.iw-sf-footer-link, .iw-sf-subtext, [class*="text-neutral-"], small) { color: var(--iw-sf-body); }
.flor-storefront .iw-sf-footer a:hover { color: var(--flor-light-gold); }
.flor-storefront .iw-sf-footer :is(input, .iw-sf-input) {
    color: var(--flor-surface);
    background: var(--flor-deep);
    border-color: var(--flor-line-dark);
}
.flor-storefront .iw-sf-footer .iw-brand-btn {
    background: var(--flor-light-gold);
    border-color: var(--flor-light-gold);
    color: #21180d;
}

@media (min-width: 620px) {
    .flor-storefront .iw-ec-campaign-carousel__slide {
        width: calc((100% - var(--flor-carousel-gap) * 2) / 3);
    }
}
@media (min-width: 850px) {
    .flor-about--with-image { grid-template-columns: 1.05fr 1fr; }
    .flor-storefront .iw-ec-campaign-carousel__slide {
        width: calc((100% - var(--flor-carousel-gap) * 3) / 4);
    }
}
@media (max-width: 480px) {
    .flor-storefront .iw-sf-header .iw-sf-header-action { width: 2.15rem; }
}
@media (prefers-reduced-motion: reduce) {
    .flor-storefront .iw-ec-campaign-carousel__track { scroll-behavior: auto; }
    .flor-storefront .iw-sf-product-card img { transition: none; transform: none; }
}

.flor-storefront .iw-sf-footer .iw-sf-panel {
    background: var(--flor-deep);
    border-color: var(--flor-line-dark);
    border-radius: 1.15rem;
}
.flor-storefront .iw-sf-footer .iw-sf-panel h2 {
    font-family: var(--font-secondary, var(--font-primary, var(--flor-display)));
    font-weight: 500;
    color: var(--flor-surface);
}
.flor-storefront div:has(> #specs-tab-btn) {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem 1.2rem;
    overflow: visible;
}
.flor-storefront div:has(> #specs-tab-btn) button {
    overflow-wrap: anywhere;
    white-space: normal;
}
.flor-storefront .flor-about__visual { border-radius: 45% 45% 1.4rem 1.4rem; overflow: hidden; }
.flor-storefront .flor-about__visual img { border-radius: inherit; }

.flor-storefront main :is(h1, h2, h3).flor-display {
    text-transform: uppercase;
    letter-spacing: .055em;
    font-weight: 500;
    line-height: 1.02;
}
.flor-storefront .iw-sf-main:has(.flor-fragrances) { overflow: visible; }
.flor-cover, .flor-fragrances {
    color: var(--flor-surface);
    background: var(--flor-ink);
}
.flor-cover {
    position: relative;
    isolation: isolate;
    display: grid;
    align-items: center;
    min-height: 27rem;
    overflow: clip;
}
.flor-cover--image { min-height: min(88svh, 65rem); }
.flor-cover__art {
    position: absolute;
    inset: 0 0 0 auto;
    width: 76%;
    height: 100%;
    z-index: -2;
    object-fit: contain;
    object-position: center;
    mask-image: linear-gradient(90deg, transparent, #000 10% 94%, transparent);
}
.flor-cover--image::after {
    position: absolute;
    inset: 0;
    z-index: -1;
    content: "";
    pointer-events: none;
}
.flor-cover--image::after {
    background:
        linear-gradient(90deg, var(--flor-ink), color-mix(in srgb, var(--flor-ink) 82%, transparent) 24%, transparent 61%),
        linear-gradient(0deg, var(--flor-paper), transparent 11%);
}
.flor-cover__copy {
    display: grid;
    justify-items: start;
    gap: 1.4rem;
    padding-block: clamp(3rem, 9vw, 8rem);
}
.flor-cover h1 {
    font-size: clamp(3.4rem, 6.7vw, 7.75rem);
    max-width: 7.5ch;
    color: var(--flor-light-gold);
    text-wrap: balance;
}
.flor-lede {
    max-width: 36ch;
    font-size: clamp(1rem, 1.4vw, 1.2rem);
    line-height: 1.65;
    margin: 0;
}
.flor-cover .flor-lede, .flor-caption .flor-lede { color: var(--iw-sf-body); }
.flor-cover :focus-visible, .flor-caption :focus-visible,
.flor-storefront .iw-sf-header :focus-visible,
.flor-storefront .iw-sf-footer :focus-visible { outline-color: var(--flor-light-gold); }

.flor-fragrances { scroll-margin-top: 5rem; }
.flor-fragrances__intro {
    display: grid;
    place-items: center;
    padding-block: clamp(2.7rem, 5vw, 5rem) clamp(1rem, 3vw, 2.6rem);
    text-align: center;
}
.flor-fragrances__intro h2 {
    color: var(--flor-light-gold);
    font-size: clamp(1.65rem, 3.6vw, 4rem);
    text-wrap: balance;
}

.flor-storefront :is(.iw-sf-main, .iw-sf-drawer) {
    color: var(--flor-surface);
    --color-neutral-950: var(--flor-surface);
    --color-neutral-900: var(--flor-light-gold);
    --color-neutral-800: #e2cda8;
    --color-neutral-700: var(--iw-sf-body);
    --color-neutral-600: #c5baac;
    --color-neutral-500: var(--iw-sf-muted);
    --color-neutral-300: #42372a;
    --color-neutral-200: #2c251b;
    --color-neutral-100: #1b1813;
    --color-neutral-50: var(--flor-deep);
}
.flor-storefront :is(.iw-sf-main, .iw-sf-drawer) :is(.iw-sf-panel, .bg-white, .bg-white\/95, .iw-sf-input),
.flor-storefront .iw-sf-main :is(.checkout-shipping-option, .checkout-payment-card) {
    background-color: var(--flor-deep);
    color: var(--flor-surface);
    border-color: var(--flor-line);
}
.flor-storefront .iw-sf-main :is(.checkout-shipping-option, .checkout-payment-card):has(input:checked) {
    background-color: var(--flor-cream);
    border-color: var(--flor-light-gold);
}
.flor-storefront .iw-sf-main .checkout-payment-card__title { color: var(--flor-surface); }
.flor-storefront :is(.iw-sf-main, .iw-sf-drawer) :is(input, select, textarea):not([type="radio"], [type="checkbox"], [type="file"]) {
    background-color: var(--flor-deep);
    color: var(--flor-surface);
    border-color: var(--flor-line);
    color-scheme: dark;
}
.flor-storefront :is(.iw-sf-main,.iw-sf-drawer) :is(.bg-neutral-950,.bg-neutral-900,.bg-neutral-800).text-white,
.flor-storefront .iw-sf-drawer a.iw-sf-nav-link:hover {
    background-color: var(--flor-cream);
    color: var(--flor-surface);
}
.flor-storefront .iw-sf-main .iw-sf-product-card__image-link { background-color: #faf8f4; }
.flor-storefront .iw-sf-main #product-storefront-gallery button:has(img) { background-color: #faf8f4; }
.flor-storefront .iw-sf-main .iw-sf-product-card form button { background-color: var(--flor-deep); color: var(--flor-light-gold); }
.flor-storefront .iw-sf-main .iw-sf-catalog-section-divider { border-color: var(--flor-line); }
.flor-storefront .iw-sf-main .divide-neutral-200 > :not(:last-child) { border-color: var(--flor-line); }

.flor-cover__art { filter: saturate(1.05) brightness(1.045); }
.flor-cover--image::after {
    background:
        linear-gradient(90deg, var(--flor-ink), color-mix(in srgb, var(--flor-ink) 74%, transparent) 23%, transparent 52%),
        linear-gradient(0deg, var(--flor-paper), transparent 11%);
}

.flor-sequence { position: relative; }
.flor-sequence__stage { position: relative; }
.flor-fragrance { position: relative; isolation: isolate; }
.flor-shot { position: absolute; inset: 0; pointer-events: none; }
.flor-shot:not(:first-child), .flor-caption--detail { display: none; }
.flor-shot img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}
.flor-caption {
    position: relative;
    display: grid;
    align-items: center;
    min-height: 65svh;
    padding: clamp(1.4rem, 6vw, 7rem);
    pointer-events: none;
}
.flor-caption--right { justify-items: end; }
.flor-caption__inner {
    display: grid;
    justify-items: start;
    position: relative;
    isolation: isolate;
    gap: .85rem;
    width: min(29vw, 25rem);
}
.flor-caption__inner::before {
    position: absolute;
    z-index: -1;
    inset: -5rem -6rem;
    content: "";
    background: radial-gradient(ellipse at center, #080808e6 4%, #080808b8 37%, transparent 72%);
    pointer-events: none;
}
.flor-caption :is(h3, .flor-caption__title) {
    margin: 0;
    font-size: clamp(2.55rem, 5.2vw, 5.4rem);
    font-weight: 500;
    letter-spacing: .065em;
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
    color: var(--flor-light-gold);
}
.flor-caption :is(h3, .flor-caption__title), .flor-caption .flor-lede { text-shadow: 0 2px 18px #000; }
.flor-caption .flor-text-link { pointer-events: auto; }
.flor-caption--detail .flor-caption__inner { justify-items: end; text-align: right; }
.flor-caption--detail.flor-caption--left .flor-caption__inner { justify-items: start; text-align: left; }
.flor-sequence.is-animated { height: calc(100svh + var(--sequence-size, 1) * 40svh); }
.flor-sequence.is-animated .flor-sequence__stage {
    position: sticky;
    top: 0;
    isolation: isolate;
    height: 100svh;
    overflow: clip;
    background: var(--flor-ink);
}
.flor-sequence.is-animated .flor-fragrance { position: static; isolation: auto; }
.flor-sequence.is-animated .flor-shot {
    display: none;
    overflow: clip;
    background: radial-gradient(ellipse at 50% 52%, color-mix(in srgb, var(--flor-gold) 10%, var(--flor-ink)), var(--flor-ink) 73%);
}
.flor-sequence.is-animated .flor-shot.is-painted { display: grid; place-items: center; }
.flor-sequence.is-animated .flor-shot picture { display: contents; }
.flor-sequence.is-animated .flor-shot source { display: none; }
.flor-sequence.is-animated .flor-shot img {
    width: min(86%, 145svh);
    height: auto;
    max-height: 87svh;
    transform: translate3d(var(--shot-pan, 0), var(--shot-rise, 0), 0) scale(var(--shot-zoom, 1));
    mask-image: linear-gradient(90deg, transparent, #000 10% 90%, transparent),
                linear-gradient(transparent, #000 6% 91%, transparent);
    mask-composite: intersect;
}
.flor-sequence.is-animated .flor-caption {
    display: grid;
    position: absolute;
    min-height: 0;
    inset: 0;
    z-index: 3;
    visibility: hidden;
    opacity: 0;
    transition: opacity .28s ease, visibility .28s;
}
.flor-sequence.is-animated .flor-caption.is-current { visibility: visible; opacity: 1; }
.flor-sequence.is-animated .flor-caption:not(.is-current) .flor-text-link { pointer-events: none; }
.flor-sequence.is-animated .flor-caption--detail { align-items: end; padding-bottom: 10svh; }

@media (prefers-reduced-motion: no-preference) {
    .flor-cover__copy > *, .flor-caption.is-current .flor-caption__inner > * {
        animation: flor-appear .56s cubic-bezier(.19, .65, .23, 1) both;
    }
    .flor-cover__copy > :nth-child(2), .flor-caption.is-current .flor-caption__inner > :nth-child(2) { animation-delay: .075s; }
    .flor-cover__copy > :nth-child(3), .flor-caption.is-current .flor-caption__inner > :nth-child(3) { animation-delay: .13s; }
    @keyframes flor-appear {
        from { opacity: 0; translate: 0 .6rem; }
        to { opacity: 1; translate: 0 0; }
    }
}
@media (max-width: 899px) {
    .flor-cover--image { min-height: min(83svh, 52rem); align-content: center; grid-template-columns: minmax(0, 1fr); }
    .flor-cover__art {
        position: relative;
        width: min(148vw, 75svh);
        max-width: none;
        height: auto;
        justify-self: center;
        mask-image: linear-gradient(#000 85%, transparent 100%);
    }
    .flor-cover--image::after { background: none; }
    .flor-cover__copy { padding-block: 1.05rem 2.1rem; gap: .85rem; }
    .flor-cover h1 { font-size: clamp(3rem, 10vw, 6rem); }
    .flor-cover .flor-lede, .flor-caption .flor-lede { font-size: .95rem; }
    .flor-sequence.is-animated { height: calc(100svh + var(--sequence-size, 1) * 42svh); }
    .flor-sequence.is-animated .flor-shot img {
        position: absolute;
        inset: 45% auto auto 50%;
        width: min(151vw, 81svh);
        max-width: none;
        max-height: none;
        translate: -50% -50%;
    }
    .flor-caption {
        align-items: end;
        padding-block: 2.7rem;
        padding-inline: clamp(1.1rem, 5vw, 2.7rem);
    }
    .flor-caption__inner { width: min(78vw, 22rem); gap: .55rem; }
    .flor-sequence.is-animated .flor-caption:not(.flor-caption--detail) { padding-bottom: 15svh; }
    .flor-caption--right .flor-caption__inner { justify-items: end; text-align: right; }
    .flor-sequence.is-animated .flor-caption--detail {
        align-items: start;
        padding-block: clamp(2.8rem, 11svh, 6.5rem);
    }
    .flor-caption :is(h3, .flor-caption__title) { font-size: clamp(2.55rem, 11vw, 5rem); }
}
