/* Bonvo Beauty Hero Banner — scoped styles only */
.bbhb-hero{--bbhb-purple:#4b168f;--bbhb-dark:#20102f;position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(390px,39vw,620px);width:100%;overflow:hidden;background:#f8e8ec;color:#17131b;font-family:inherit}
.bbhb-hero *{box-sizing:border-box}
.bbhb-photo{position:absolute;inset:0;z-index:-2;background-image:var(--bbhb-desktop-image);background-size:cover;background-position:center right;background-repeat:no-repeat}
.bbhb-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,248,246,.96) 0%,rgba(255,242,242,.88) 34%,rgba(255,238,243,.22) 58%,rgba(255,238,243,0) 75%);pointer-events:none}
.bbhb-overlay-medium:before{background:linear-gradient(90deg,rgba(255,250,248,.98) 0%,rgba(255,244,245,.94) 40%,rgba(255,238,243,.36) 65%,rgba(255,238,243,0) 82%)}
.bbhb-content{width:min(48%,690px);padding:clamp(30px,5vw,82px) clamp(24px,6.5vw,112px);text-align:left}
.bbhb-align-center .bbhb-content{width:min(760px,100%);margin:0 auto;text-align:center;padding-left:28px;padding-right:28px}
.bbhb-eyebrow{margin:0 0 18px;font-size:clamp(10px,.9vw,14px);letter-spacing:4px;line-height:1.6;text-transform:uppercase;color:#4a3d4b;font-weight:500}
.bbhb-heading{margin:0 0 18px!important;color:#17131b;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,5.1vw,78px);font-weight:500;letter-spacing:-2.2px;line-height:.99}
.bbhb-heading span{display:block;margin-top:4px;color:var(--bbhb-purple);font-family:"Brush Script MT","Segoe Script",cursive;font-size:1.02em;font-weight:400;font-style:italic;letter-spacing:-1.8px;line-height:1.12}
.bbhb-description{max-width:490px;margin:0 0 24px!important;font-size:clamp(14px,1.25vw,19px);line-height:1.55;color:#332b34}
.bbhb-align-center .bbhb-description{margin-left:auto!important;margin-right:auto!important}
.bbhb-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--bbhb-purple);color:#fff!important;text-decoration:none!important;border:1px solid var(--bbhb-purple);border-radius:3px;padding:15px 24px;min-height:48px;font-size:14px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;transition:background .2s ease,transform .2s ease}
.bbhb-button:hover{background:#32105f;color:#fff!important;transform:translateY(-1px)}
.bbhb-button span{font-size:22px;line-height:1}
.bbhb-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:9px}
.bbhb-dots i{width:9px;height:9px;border-radius:50%;background:rgba(75,22,143,.28)}
.bbhb-dots i:first-child{background:var(--bbhb-purple)}
@media(max-width:767px){
 .bbhb-hero{min-height:0;display:flex;align-items:flex-start;background:#f9e8ec}
 .bbhb-photo{background-image:var(--bbhb-mobile-image);background-position:center;background-size:cover}
 .bbhb-hero:before{background:linear-gradient(90deg,rgba(255,247,246,.95) 0%,rgba(255,244,245,.88) 46%,rgba(255,240,244,.28) 100%)}
 .bbhb-overlay-medium:before{background:linear-gradient(90deg,rgba(255,249,247,.98) 0%,rgba(255,244,245,.92) 55%,rgba(255,240,244,.38) 100%)}
 .bbhb-content{width:75%;padding:34px 18px 54px}
 .bbhb-align-center .bbhb-content{width:100%;padding:35px 20px 54px}
 .bbhb-eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:13px}
 .bbhb-heading{font-size:clamp(34px,9vw,54px);letter-spacing:-1.2px;line-height:1}
 .bbhb-heading span{font-size:1em;letter-spacing:-1px}
 .bbhb-description{font-size:13px;line-height:1.45;max-width:260px;margin-bottom:18px!important}
 .bbhb-button{padding:12px 16px;min-height:42px;font-size:11px;gap:12px}
 .bbhb-button span{font-size:19px}
 .bbhb-dots{bottom:15px}
}
@media(max-width:390px){.bbhb-content{width:82%;padding-left:15px;padding-right:12px}.bbhb-heading{font-size:34px}.bbhb-eyebrow{letter-spacing:1.4px}.bbhb-description{max-width:220px}}
