.bensini-spotlight {
  --bps-accent: #b02f63;
  --bps-text: #2b2728;
  --bps-bg: #f7f0ed;
  --bps-media-bg: transparent;
  --bps-sticky-offset: 100px;
  --bps-section-min-height: clamp(680px, 78vh, 900px);
  --bps-max-height: 900px;
  --bps-media-hard-cap: 960px;
  --bps-desktop-fit: contain;
  --bps-mobile-fit: contain;
  color: var(--bps-text);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  container-type: inline-size;
  margin: 3.5rem auto 4.5rem;
  max-width: 1520px;
  width: 100%;
}
.bensini-spotlight *, .bensini-spotlight *::before, .bensini-spotlight *::after { box-sizing: border-box; }
.bensini-spotlight__inner { align-items: stretch; display: grid; grid-template-columns: minmax(0, 1fr) minmax(380px, .85fr); min-height: var(--bps-section-min-height); position: relative; }
.bensini-spotlight--media-right .bensini-spotlight__media { order: 2; }
.bensini-spotlight__media { align-self: stretch; background-color: transparent; background-position: center; background-size: cover; min-width: 0; position: relative; }
.bensini-spotlight__media-inner { align-items: center; background-color: var(--bps-media-bg); display: flex; height: min(calc(100vh - var(--bps-sticky-offset)), var(--bps-max-height), var(--bps-media-hard-cap)); justify-content: center; overflow: hidden; top: var(--bps-sticky-offset); }
.bensini-spotlight--classic .bensini-spotlight__media-inner, .bensini-spotlight--editorial .bensini-spotlight__media-inner { position: relative; top: auto; }
.bensini-spotlight__picture { display: block; height: 100%; width: 100%; }
.bensini-spotlight__image { display: block; height: 100%; max-width: none; object-fit: var(--bps-desktop-fit); object-position: var(--bps-object-x) var(--bps-object-y); transform: scale(var(--bps-scale)); transform-origin: center center; width: 100%; }
.bensini-spotlight__content { align-self: center; background: #fff; min-width: 0; padding: clamp(2.5rem, 4cqw, 5rem) clamp(2rem, 3.5cqw, 4.5rem); }
.bensini-spotlight__badge { background: var(--bps-badge-bg); border-radius: 99px; color: var(--bps-badge-color); display: inline-block; font-size: .7rem; font-weight: 700; letter-spacing: .14em; margin-bottom: 1.2rem; padding: .45rem .8rem; text-transform: uppercase; }
.bensini-spotlight__badge--burgundy { background: #8c1d40; color: #fff; }
.bensini-spotlight__badge--blush { background: #f0d8df; color: #7a1739; }
.bensini-spotlight__badge--dark { background: #2b2728; color: #fff; }
.bensini-spotlight__badge--light { background: #fff; box-shadow: inset 0 0 0 1px #d9d0cd; color: #2b2728; }
.bensini-spotlight__eyebrow { font-size: .72rem; font-weight: 600; letter-spacing: .28em; margin: 0 0 .8rem; text-transform: uppercase; }
.bensini-spotlight__title { color: var(--bps-text); font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.5rem, 4.2cqw, 4.3rem); font-weight: 400; hyphens: none; letter-spacing: -.035em; line-height: 1.02; margin: 0 0 1rem; max-width: 14ch; overflow-wrap: normal; word-break: normal; }
.bensini-spotlight__subtitle { color: var(--bps-accent); font-size: .77rem; font-weight: 600; letter-spacing: .22em; margin: 0 0 1.5rem; text-transform: uppercase; }
.bensini-spotlight__description { font-size: 1rem; max-width: 66ch; }
.bensini-spotlight__description p { margin: .5rem 0 1.5rem; }
.bensini-spotlight__features { display: grid; gap: .7rem; list-style: none; margin: 1.7rem 0; padding: 0; }
.bensini-spotlight__features li { align-items: center; display: flex; gap: .75rem; }
.bensini-spotlight__features svg { background: color-mix(in srgb, var(--bps-accent) 10%, white); border-radius: 50%; color: var(--bps-accent); flex: 0 0 25px; height: 25px; padding: 5px; width: 25px; }
.bensini-spotlight__variants { display: grid; gap: 2rem; grid-template-columns: 1fr 1fr; margin: 2rem 0; }
.bensini-spotlight__variant-label { display: block; font-size: .7rem; font-weight: 700; letter-spacing: .14em; margin-bottom: .7rem; text-transform: uppercase; }
.bensini-spotlight__swatches, .bensini-spotlight__sizes { display: flex; flex-wrap: wrap; gap: .55rem; }
.bensini-spotlight__swatch { background: var(--bps-swatch); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #d6ceca; display: block; height: 30px; transition: box-shadow .2s, transform .2s; width: 30px; }
.bensini-spotlight__swatch[href], .bensini-spotlight__size[href] { cursor: pointer; }
.bensini-spotlight__swatch[href]:hover { box-shadow: 0 0 0 2px var(--bps-accent); transform: translateY(-1px); }
.bensini-spotlight__swatch[href]:focus-visible, .bensini-spotlight__size[href]:focus-visible { outline: 3px solid color-mix(in srgb, var(--bps-accent) 35%, transparent); outline-offset: 3px; }
.bensini-spotlight__size { align-items: center; border: 1px solid #ded7d4; border-radius: 4px; color: inherit; display: flex; font-size: .8rem; height: 38px; justify-content: center; min-width: 38px; padding: 0 .55rem; text-decoration: none !important; transition: background-color .2s, border-color .2s, transform .2s; }
.bensini-spotlight__size[href]:hover { background-color: color-mix(in srgb, var(--bps-accent) 7%, white); border-color: var(--bps-accent); transform: translateY(-1px); }
.bensini-spotlight__price { color: var(--bps-accent); font-family: Georgia, "Times New Roman", serif; font-size: 2rem; margin: 1rem 0; }
.bensini-spotlight__price del { color: #8b8280; font-size: 1rem; }
.bensini-spotlight__price ins { text-decoration: none; }
.bensini-spotlight__actions { display: grid; gap: .8rem; grid-template-columns: 1fr 1fr; margin: 1.5rem 0 2.5rem; }
.bensini-spotlight__cta { align-items: center; border: 1px solid var(--bps-accent); border-radius: 4px; display: flex; font-size: .86rem; font-weight: 600; justify-content: center; min-height: 54px; padding: .8rem 1.2rem; text-align: center; text-decoration: none !important; transition: background .2s, color .2s, transform .2s; white-space: normal; }
.bensini-spotlight__cta:focus-visible { outline: 3px solid color-mix(in srgb, var(--bps-accent) 35%, transparent); outline-offset: 3px; }
.bensini-spotlight__cta:hover { transform: translateY(-1px); }
.bensini-spotlight__cta--primary { background: var(--bps-accent); color: #fff; }
.bensini-spotlight__cta--primary span { margin-left: .7rem; }
.bensini-spotlight__cta--secondary { background: #fff; color: var(--bps-accent); }
.bensini-spotlight__cta--text { background: transparent; border-color: transparent; color: var(--bps-accent); justify-content: flex-start; min-height: 0; padding-left: 0; padding-right: 0; text-decoration: underline !important; text-underline-offset: .22em; }
.bensini-spotlight__benefits { border-top: 1px solid color-mix(in srgb, var(--bps-text) 12%, transparent); display: grid; gap: clamp(.75rem, 1.5cqw, 1.4rem); grid-template-columns: repeat(3, minmax(0, 1fr)); margin: -.5rem 0 2.5rem; padding-top: 1.4rem; }
.bensini-spotlight__benefit { align-items: flex-start; display: flex; gap: .65rem; min-width: 0; }
.bensini-spotlight__benefit-icon { color: var(--bps-accent); flex: 0 0 25px; height: 25px; margin-top: .05rem; width: 25px; }
.bensini-spotlight__benefit-icon svg { display: block; height: 100%; width: 100%; }
.bensini-spotlight__benefit-content { display: block; min-width: 0; }
.bensini-spotlight__benefit-content strong { display: block; font-size: .76rem; font-weight: 600; line-height: 1.3; }
.bensini-spotlight__benefit-content small { color: color-mix(in srgb, var(--bps-text) 72%, transparent); display: block; font-size: .68rem; line-height: 1.35; margin-top: .15rem; }
.bensini-spotlight__cards { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 2.5rem; }
.bensini-spotlight__card { min-width: 0; }
.bensini-spotlight__card img { aspect-ratio: 1.45 / 1; border-radius: 5px; display: block; height: auto; object-fit: cover; width: 100%; }
.bensini-spotlight__card h3 { font-family: Georgia, "Times New Roman", serif; font-size: 1.05rem; margin: .7rem 0 .15rem; }
.bensini-spotlight__card p { font-size: .76rem; line-height: 1.45; margin: 0; }
.bensini-spotlight__claim { align-items: center; background: color-mix(in srgb, var(--bps-accent) 7%, white); display: flex; gap: 1.5rem; justify-content: space-between; margin-top: 2.4rem; padding: 1.4rem 1.6rem; }
.bensini-spotlight__claim strong { color: var(--bps-accent); font-family: Georgia, "Times New Roman", serif; font-size: 1.3rem; font-style: italic; font-weight: 400; }
.bensini-spotlight__claim span { font-size: .78rem; }
.bensini-spotlight__media-overlay { height: auto; left: var(--bps-overlay-x); margin: 0; max-width: var(--bps-overlay-max-width); opacity: var(--bps-overlay-opacity); pointer-events: none; position: absolute; top: var(--bps-overlay-y); transform: translate(var(--bps-overlay-anchor-x), -50%) translate(var(--bps-overlay-offset-x), var(--bps-overlay-offset-y)) rotate(var(--bps-overlay-rotation)); transform-origin: center; width: var(--bps-overlay-width); z-index: var(--bps-overlay-z); }
.bensini-spotlight__media-overlay--left { --bps-overlay-anchor-x: 0%; }
.bensini-spotlight__media-overlay--center { --bps-overlay-anchor-x: -50%; }
.bensini-spotlight__media-overlay--right { --bps-overlay-anchor-x: -100%; }
.bensini-spotlight__media-overlay--desktop-hidden { display: none; }
.bensini-spotlight__media-overlay-image { display: block; height: auto; max-width: 100%; width: 100%; }
.bensini-spotlight__content-decoration { display: block; height: auto; margin-bottom: var(--bps-decoration-margin-bottom); margin-top: var(--bps-decoration-margin-top); max-width: var(--bps-decoration-max-width); opacity: var(--bps-decoration-opacity); transform: rotate(var(--bps-decoration-rotation)); width: var(--bps-decoration-width); }
.bensini-spotlight__content-decoration--left { margin-left: 0; margin-right: auto; }
.bensini-spotlight__content-decoration--center { margin-left: auto; margin-right: auto; }
.bensini-spotlight__content-decoration--right { margin-left: auto; margin-right: 0; }
.bensini-spotlight__content-decoration--desktop-hidden { display: none; }
.bensini-spotlight__content-decoration-image { display: block; height: auto; max-width: 100%; width: 100%; }
.bensini-spotlight--editorial { max-width: 1800px; }
.bensini-spotlight--editorial .bensini-spotlight__content { padding-left: clamp(2rem, 4.5cqw, 5.5rem); padding-right: clamp(2rem, 4.5cqw, 5.5rem); }
@media (min-width: 1200px) {
  .bensini-spotlight--sticky .bensini-spotlight__media-inner { position: sticky; top: var(--bps-sticky-offset); }
}
@media (max-width: 1199px) {
  .bensini-spotlight { margin-bottom: 3.5rem; margin-top: 2.75rem; }
  .bensini-spotlight--sticky .bensini-spotlight__media-inner { position: static; top: auto; }
}
@media (min-width: 1025px) and (max-width: 1279px) {
  .bensini-spotlight__inner { grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr); }
  .bensini-spotlight__content { padding: 2.75rem 2.25rem; }
  .bensini-spotlight__title { font-size: clamp(2.35rem, 4.8cqw, 3.55rem); max-width: 14ch; }
  .bensini-spotlight__variants { gap: 1.25rem; }
}
@media (max-width: 1024px) {
  .bensini-spotlight__inner { grid-template-columns: 1fr 1fr; }
  .bensini-spotlight__content { padding: 3rem 2rem; }
}
@media (max-width: 767px) {
  .bensini-spotlight { margin: 2rem 0; max-width: 100%; overflow-x: clip; }
  .bensini-spotlight__inner { display: flex; flex-direction: column; min-height: 0; }
  .bensini-spotlight--media-right .bensini-spotlight__media { order: 0; }
  .bensini-spotlight__media { min-height: 0; }
  .bensini-spotlight__media-inner, .bensini-spotlight--sticky .bensini-spotlight__media-inner { aspect-ratio: auto; height: auto; min-height: 0; overflow: hidden; position: static; }
  .bensini-spotlight__picture { height: auto; }
  .bensini-spotlight__image { height: auto; max-width: 100%; object-fit: var(--bps-mobile-fit); object-position: var(--bps-mobile-object-x) var(--bps-mobile-object-y); transform: none; width: 100%; }
  .bensini-spotlight__media-overlay { left: var(--bps-overlay-mobile-x); opacity: var(--bps-overlay-mobile-opacity); top: var(--bps-overlay-mobile-y); transform: translate(var(--bps-overlay-anchor-x), 0) rotate(var(--bps-overlay-mobile-rotation)); width: var(--bps-overlay-mobile-width); }
  .bensini-spotlight__media-overlay--desktop-hidden.bensini-spotlight__media-overlay--mobile-visible { display: block; }
  .bensini-spotlight__media-overlay--mobile-hidden { display: none; }
  .bensini-spotlight__content { padding: 2rem 1.25rem 2.5rem; }
  .bensini-spotlight__title { font-size: clamp(2.15rem, 11vw, 3rem); max-width: none; }
  .bensini-spotlight__variants, .bensini-spotlight__actions { grid-template-columns: 1fr; }
  .bensini-spotlight__swatch { height: 44px; width: 44px; }
  .bensini-spotlight__size { height: 44px; min-width: 44px; }
  .bensini-spotlight__cta { width: 100%; }
  .bensini-spotlight__cta--text { justify-content: flex-start; }
  .bensini-spotlight__benefits { gap: 1rem; grid-template-columns: 1fr; margin-top: 0; }
  .bensini-spotlight__benefit-icon { flex-basis: 28px; height: 28px; width: 28px; }
  .bensini-spotlight__benefit-content strong { font-size: .82rem; }
  .bensini-spotlight__benefit-content small { font-size: .74rem; }
  .bensini-spotlight__cards { grid-template-columns: 1fr; }
  .bensini-spotlight__card { display: grid; gap: 1rem; grid-template-columns: minmax(90px, 34%) 1fr; }
  .bensini-spotlight__card img { grid-row: 1 / 3; }
  .bensini-spotlight__card h3 { align-self: end; margin: 0; }
  .bensini-spotlight__content-decoration { width: var(--bps-decoration-mobile-width); }
  .bensini-spotlight__content-decoration--desktop-hidden.bensini-spotlight__content-decoration--mobile-visible { display: block; }
  .bensini-spotlight__content-decoration--mobile-hidden { display: none; }
  .bensini-spotlight__content-decoration--mobile-left { margin-left: 0; margin-right: auto; }
  .bensini-spotlight__content-decoration--mobile-center { margin-left: auto; margin-right: auto; }
  .bensini-spotlight__content-decoration--mobile-right { margin-left: auto; margin-right: 0; }
  .bensini-spotlight__claim { align-items: flex-start; flex-direction: column; gap: .5rem; }
}
