/* ===== Pink Ribbon hero — drop this <section> into index.html ===== */
.pr-hero{--pink:#ff5fa8;--pink-deep:#d81b6e;--cream:#f4efe6;--muted:#c9bfc6;
 position:relative;overflow:hidden;background:#0b0809;color:var(--cream);font-family:'Archivo',system-ui,sans-serif;
 min-height:680px;display:flex;align-items:center}
.pr-hero__bg{position:absolute;inset:0;z-index:0;
 background:
  radial-gradient(ellipse 60% 70% at 78% 45%, rgba(216,27,110,.28), transparent 65%),
  radial-gradient(ellipse 50% 40% at 15% 90%, rgba(216,27,110,.14), transparent 70%),
  linear-gradient(90deg, rgba(11,8,9,.96) 0%, rgba(11,8,9,.75) 45%, rgba(11,8,9,.35) 100%),
  #0b0809}
.pr-hero__grain{position:absolute;inset:0;z-index:0;opacity:.07;mix-blend-mode:overlay;
 background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='160' height='160' filter='url(%23n)' opacity='.6'/></svg>")}
.pr-hero__mark{position:absolute;right:5%;top:50%;transform:translateY(-50%);width:min(44vw,680px);z-index:0;
 filter:drop-shadow(0 0 60px rgba(255,95,168,.35));opacity:.92;pointer-events:none}
.pr-hero__inner{position:relative;z-index:1;box-sizing:border-box;width:min(1200px,100%);margin:0 auto;padding:96px 40px;padding-right:max(40px,46%)}
@media (min-width:1500px){.pr-hero__inner{padding-right:40px}}
.pr-hero__eyebrow{display:flex;align-items:center;gap:14px;font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--pink);font-weight:600}
.pr-hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(48px,7.2vw,104px);line-height:1.02;margin:26px 0 28px;max-width:11ch;letter-spacing:-.01em}
.pr-hero h1 em{font-style:italic;color:#ffd1e6}
.pr-hero p{font-size:clamp(17px,1.35vw,21px);line-height:1.55;color:var(--muted);max-width:60ch;margin:0 0 40px}
.pr-hero p strong{color:var(--cream);font-weight:500}
.pr-hero__cta{display:inline-flex;align-items:center;gap:14px;background:var(--pink);color:#17060e;text-decoration:none;
 font-weight:600;letter-spacing:.22em;text-transform:uppercase;font-size:14px;padding:24px 40px;transition:background .2s,transform .2s}
.pr-hero__cta:hover{background:#ff7ab8;transform:translateY(-1px)}
.pr-hero__cta svg{width:18px;height:18px}
.pr-hero__partners{margin-top:64px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;align-items:center;gap:18px 40px}
.pr-hero__partners span{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#8d7f86}
.pr-hero__partners b{font-family:'Playfair Display',serif;font-weight:500;font-size:19px;letter-spacing:.04em;color:var(--cream);white-space:nowrap}
.pr-hero__partners b small{display:block;font-family:'Archivo',sans-serif;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--pink);margin-top:3px;font-weight:600}
.pr-hero__partners .x{color:var(--pink);font-family:'Playfair Display',serif;font-size:22px}
.pr-hero__note{margin-top:22px;font-size:12px;letter-spacing:.06em;color:#8d7f86}
@media (max-width:860px){
 .pr-hero{min-height:0;flex-direction:column;align-items:stretch}
 .pr-hero__mark{position:relative;right:auto;top:auto;transform:none;display:block;width:min(78vw,380px);margin:56px auto 0;opacity:1}
 .pr-hero__inner{padding:28px 20px 64px;padding-right:20px;text-align:center}
 .pr-hero__eyebrow{justify-content:center;flex-wrap:wrap;gap:8px 12px;font-size:12px;letter-spacing:.26em}
 .pr-hero__cta{display:flex;justify-content:center;width:100%;box-sizing:border-box;padding:22px 20px;text-align:center}
 .pr-hero h1{margin-left:auto;margin-right:auto}
 .pr-hero p{margin-left:auto;margin-right:auto}
 .pr-hero__partners{justify-content:center;gap:18px 26px}.pr-hero__partners .x{display:none}
 .pr-hero__partners span:first-child{width:100%;text-align:center}
 .pr-hero__partners b{text-align:center}
}
