/* The user-supplied pink hero reference; scoped to the homepage. */
.home-page.hero-reference{--hero-ink:#310818;--hero-muted:#5d515a;--hero-accent:#a70244;--hero-container:var(--max)}
.home-page.hero-reference::before{background-color:#fff8fc;background-image:url("../img/hero-reference-scene.svg?v=20261107-no-join-wave-1");background-size:100% 100%;background-position:center top;filter:none;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 54px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 54px),transparent)}










.hero-reference .hero-carousel{max-width:none;width:100%;margin-top:40px;overflow-x:clip;overflow-y:visible;padding:clamp(52px,5.35vw,89px) 0 180px;isolation:isolate}
.hero-reference .hero-slides{width:100%;max-width:var(--hero-container);margin-inline:auto;padding-inline:28px}
.hero-reference .hero-slide{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,4.5vw,76px);min-height:0;padding:0;align-items:center;overflow:visible}
.hero-reference .hero-slide .hero-copy{display:flex;flex-direction:column;align-items:flex-start;align-self:stretch;width:100%;min-width:0;color:var(--hero-ink)}
.hero-reference .hero-copy .eyebrow{position:relative;display:inline-flex;align-items:center;max-width:100%;padding:8px 36px 9px;margin:0 0 22px;border-radius:24px 13px 13px 24px;background:#f8dfef;color:var(--hero-accent);font-size:15px;font-weight:700;line-height:1.32;overflow:hidden}
.hero-reference .hero-copy .eyebrow::after{content:"";position:absolute;right:0;top:0;width:10px;height:100%;background:#b11157;border-radius:0 13px 13px 0}
.hero-reference .hero-copy h1{width:100%;font-size:38px;font-weight:700;line-height:1.4;letter-spacing:normal;color:var(--hero-ink);margin:0 0 23px;overflow-wrap:anywhere}
.hero-reference .hero-copy .hero-lead{width:100%;max-width:none;margin:0;color:var(--hero-muted);font-size:18px;font-weight:400;line-height:1.85}
.hero-reference .hero-slide .hero-actions{display:flex;align-items:center;gap:clamp(24px,4.5vw,76px);margin:0;padding:37px 0 0;margin-top:auto;flex-wrap:nowrap}
.hero-reference .hero-actions .primary-button{display:inline-flex;align-items:center;gap:12px;min-width:180px;min-height:50px;padding:10px 20px;border:1px solid #bb2167;border-radius:14px;background:linear-gradient(155deg,#c52875,#a70b4b);color:#fff;font-size:17px;font-weight:700;line-height:1.5;box-shadow:0 18px 29px -13px rgba(167,2,68,.32);white-space:nowrap}
.hero-reference .hero-actions .primary-button svg{width:22px;height:22px;flex-shrink:0}
.hero-reference .hero-actions .text-button{display:inline-flex;gap:8px;min-height:48px;padding:0;border:0;background:none;box-shadow:none;font-size:clamp(16px,1.15vw,20px);line-height:1.5;color:#59434f;white-space:nowrap}
.hero-reference .hero-actions .text-button svg{width:16px;height:18px;flex-shrink:0}
.hero-reference .hero-slide .hero-feature{position:relative;width:100%;min-width:0;min-height:0;aspect-ratio:1.515;align-self:center;isolation:isolate;transform:translateY(-10px)}
.hero-reference .hero-slide .hero-image{display:block;inset:0;margin:0;transform:none;border:6px solid #fff;border-radius:44px;overflow:hidden;box-shadow:0 28px 44px -20px rgba(167,2,68,.27);background:#f1e4f1;z-index:1}
.hero-reference .hero-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-reference .hero-feature::before{content:"";position:absolute;inset:-22% -4% -14% -8%;background:url("../img/hero-reference-photo-shapes.svg") center/100% 100% no-repeat;z-index:-1;pointer-events:none}
.hero-reference .hero-slider-controls{bottom:87px;gap:16px;z-index:8}
.hero-reference .hero-slider-controls>button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;background:#fff;color:#b10c57;box-shadow:0 8px 16px -8px rgba(167,2,68,.25)}
.hero-reference .hero-slider-controls>button svg{width:18px;height:18px;pointer-events:none}
.hero-reference .hero-slider-dots{gap:8px;padding:6px 10px;border:0;border-radius:999px;background:rgba(255,255,255,.87);box-shadow:none}
.hero-reference .hero-slider-dots button{width:10px;height:10px;background:#f2c7e1}
.hero-reference .hero-slider-dots button.is-active{width:28px;background:linear-gradient(145deg,#c51c69,#a70244)}
.hero-reference .hero-carousel::before,.hero-reference .hero-carousel::after{content:"";position:absolute;pointer-events:none;z-index:-1;background-image:radial-gradient(circle,#efbfdc 2.5px,transparent 3px);background-size:18px 18px;opacity:.48}
.hero-reference .hero-carousel::before{width:88px;height:70px;left:2.4vw;top:12px}
.hero-reference .hero-carousel::after{width:112px;height:86px;right:2vw;bottom:17px}
.hero-reference .hero-actions a:focus-visible,.hero-reference .hero-slider-controls button:focus-visible{outline:3px solid var(--hero-accent);outline-offset:5px}
@media(hover:hover){.hero-reference .hero-actions .primary-button:hover{filter:brightness(1.06);transform:translateY(-2px)}.hero-reference .hero-slider-controls>button:hover{background:#fff0f8}}
@media(min-width:1025px) and (max-width:1280px){
  .hero-reference .hero-slides{width:100%}
  
  
  
  .hero-reference .hero-carousel{padding-top:58px;padding-bottom:150px}
  .hero-reference .hero-slide{gap:38px}
  .hero-reference .hero-copy h1{font-size:38px}
  .hero-reference .hero-copy .eyebrow{font-size:15px}
  .hero-reference .hero-copy .hero-lead{font-size:18px}
  .hero-reference .hero-slide .hero-actions{gap:24px}
  .hero-reference .hero-actions .primary-button{min-width:180px;font-size:17px;padding:10px 20px}
  .hero-reference .hero-actions .text-button{font-size:16px}
  .hero-reference .hero-slider-controls{bottom:78px}
}

@media(max-width:1024px){
  
  
  
  
  .hero-reference .hero-carousel{padding:30px 0 126px}
  .hero-reference .hero-slides{width:100%;max-width:var(--hero-container)}
  .hero-reference .hero-slide{display:flex;flex-direction:column;gap:34px}
  .hero-reference .hero-slide .hero-feature{order:-1;aspect-ratio:1.515;transform:none}
  .hero-reference .hero-feature::before{inset:-18% -24px -11% -24px}
  .hero-reference .hero-copy .eyebrow{font-size:15px}
  .hero-reference .hero-copy h1{font-size:38px;margin-bottom:24px;line-height:1.5}
  .hero-reference .hero-copy .hero-lead{font-size:18px}
  .hero-reference .hero-slide .hero-actions{margin-top:28px;padding-top:0;gap:40px}
  .hero-reference .hero-slider-controls{bottom:58px}
}
@media(max-width:720px){
  
  
  
  
  
  .hero-reference .hero-carousel{padding:22px 0 118px}
  .hero-reference .hero-slides{width:100%;padding-inline:18px}
  .hero-reference .hero-slide{gap:28px}
  .hero-reference .hero-slide .hero-image{border-width:4px;border-radius:27px}
  .hero-reference .hero-feature::before{inset:-14% -12px -8% -12px}
  .hero-reference .hero-copy .eyebrow{font-size:15px;line-height:1.5;padding:6px 22px 7px;margin-bottom:18px}
  .hero-reference .hero-copy .eyebrow::after{width:8px}
  .hero-reference .hero-copy h1{font-size:25px;line-height:1.55;margin-bottom:22px}
  .hero-reference .hero-copy .hero-lead{font-size:14px;line-height:1.95}
  .hero-reference .hero-slide .hero-actions{margin-top:26px;gap:22px;flex-wrap:wrap}
  .hero-reference .hero-actions .primary-button{min-width:140px;min-height:44px;padding:8px 14px;font-size:15px;border-radius:10px;gap:8px}
  .hero-reference .hero-actions .primary-button svg{width:18px;height:18px}
  .hero-reference .hero-actions .text-button{font-size:15px}
  .hero-reference .hero-actions .text-button svg{width:13px;height:15px}
  .hero-reference .hero-slider-controls{bottom:54px;gap:14px}
  .hero-reference .hero-slider-controls>button{width:40px;height:40px}
  .hero-reference .hero-slider-controls>button svg{width:18px;height:18px}
  .hero-reference .hero-slider-dots{gap:7px;padding:6px 10px}
  .hero-reference .hero-slider-dots button{width:9px;height:9px}
  .hero-reference .hero-slider-dots button.is-active{width:24px}
  .hero-reference .hero-carousel::before{display:none}
  .hero-reference .hero-carousel::after{right:8px;bottom:8px;width:60px;height:50px;background-size:14px 14px;opacity:.35}
}
@media(max-width:380px){.hero-reference .hero-actions .primary-button{min-width:136px;font-size:15px}.hero-reference .hero-slide .hero-actions{gap:16px}}
@media(prefers-reduced-motion:reduce){.hero-reference .hero-slide,.hero-reference .hero-actions a,.hero-reference .hero-slider-dots button{transition:none}.hero-reference .hero-actions .primary-button:hover{transform:none}}

/* Preserve the face when the portrait cover is shown in the wide reference frame. */
.hero-reference .hero-image img[src*="hero-editorial-20261107-3.webp"]{object-position:center 18%}

/* Real publication date, opposite the category in the hero's first row. */
.hero-reference .hero-copy .hero-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:22px}
.hero-reference .hero-copy .hero-meta .eyebrow{min-width:0;margin:0}
.hero-reference .hero-publication-date{flex-shrink:0;white-space:nowrap;color:var(--hero-muted);font-size:14px;font-weight:400;line-height:1.5;font-variant-numeric:tabular-nums}
@media(max-width:720px){
  .hero-reference .hero-copy .hero-meta{gap:10px;margin-bottom:18px}
  .hero-reference .hero-publication-date{font-size:12px}
}
