/* ==========================================================================
   BABY HAIR - widget bridge
   Maps the Baby Hair design system onto NATIVE Elementor widget markup, so
   every section stays drag-and-drop editable while looking identical to the
   approved build.
   ========================================================================== */

/* ---------- layout containers ---------- */
.babyhair .bh-wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut);width:100%}
.babyhair .bh-sec{padding-block:var(--sec)}
.babyhair .bh-sec-sm{padding-block:clamp(2.5rem,5vw,4rem)}
.babyhair .bh-ivory{background:var(--ivory)}
.babyhair .bh-cream{background:var(--cream)}
.babyhair .bh-navy{background:var(--navy)}
.babyhair .bh-tile{background:var(--tile)}
.babyhair .bh-center{text-align:center}
.babyhair .bh-center .elementor-widget-container{margin-inline:auto}
.babyhair .bh-2col{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.babyhair .bh-3col{display:grid!important;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.75rem)}
.babyhair .bh-4col{display:grid!important;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,1.75rem)}
.babyhair .bh-5col{display:grid!important;grid-template-columns:repeat(5,1fr);gap:1.25rem}
@media(max-width:1024px){.babyhair .bh-4col,.babyhair .bh-5col{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.babyhair .bh-2col,.babyhair .bh-3col{grid-template-columns:1fr}}
@media(max-width:600px){.babyhair .bh-4col,.babyhair .bh-5col{grid-template-columns:1fr}}

/* ---------- typography widgets ---------- */
.babyhair .bh-eyebrow .elementor-heading-title{font-family:var(--sans);font-size:var(--step--1);
  font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);line-height:1.5}
.babyhair .bh-eyebrow--muted .elementor-heading-title{color:var(--charcoal)}
.babyhair .bh-eyebrow--light .elementor-heading-title{color:var(--champagne)}
.babyhair .bh-display .elementor-heading-title{font-family:var(--display);font-weight:400;
  font-size:var(--step-4);line-height:1.04;letter-spacing:-.005em;color:var(--ink)}
.babyhair .bh-display-xl .elementor-heading-title{font-size:var(--step-5);line-height:1;font-family:var(--display);font-weight:400}
.babyhair .bh-h2 .elementor-heading-title{font-family:var(--display);font-weight:400;font-size:var(--step-3);line-height:1.08;color:var(--ink)}
.babyhair .bh-h3 .elementor-heading-title{font-family:var(--display);font-weight:400;font-size:var(--step-2);line-height:1.15;color:var(--ink)}
.babyhair .bh-display em,.babyhair .bh-h2 em,.babyhair .bh-h3 em,
.babyhair .bh-display-xl em,.babyhair .bh-italic .elementor-heading-title{
  font-style:italic;color:var(--gold);font-weight:400}
.babyhair .bh-onnavy .elementor-heading-title{color:#FBF7F1}
.babyhair .bh-onnavy em{color:var(--champagne)}
.babyhair .bh-lede{font-size:var(--step-1);color:var(--charcoal);line-height:1.65;max-width:var(--measure)}
.babyhair .bh-lede p{margin:0 0 1em}
.babyhair .bh-small{font-size:var(--step--1);color:var(--charcoal)}
.babyhair .bh-small p{margin:0 0 .8em}
.babyhair .bh-onnavy.bh-lede,.babyhair .bh-onnavy.bh-small{color:rgba(239,231,218,.86)}
.babyhair .bh-quote{font-family:var(--display);font-style:italic;font-size:var(--step-2);line-height:1.4;color:var(--navy)}
.babyhair .bh-serif-sub .elementor-heading-title{font-family:var(--display);font-style:italic;
  font-size:var(--step-1);color:var(--gold);font-weight:400}

/* ---------- buttons ---------- */
.babyhair .bh-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;
  padding:1.05rem 2rem;font-family:var(--sans);font-size:.7rem;font-weight:600;letter-spacing:.16em;
  text-transform:uppercase;border-radius:2px;border:1px solid transparent;transition:.3s var(--ease);fill:currentColor}
.babyhair .bh-btn--navy .elementor-button{background:var(--ink);color:#FBF7F1;border-color:var(--ink)}
.babyhair .bh-btn--navy .elementor-button:hover{background:#000;color:#FBF7F1}
.babyhair .bh-btn--gold .elementor-button{background:var(--gold);color:#FBF7F1;border-color:var(--gold)}
.babyhair .bh-btn--gold .elementor-button:hover{background:#9d6f2c;border-color:#9d6f2c}
.babyhair .bh-btn--ghost .elementor-button{background:transparent;color:var(--ink);border-color:var(--ink)}
.babyhair .bh-btn--ghost .elementor-button:hover{background:var(--ink);color:#FBF7F1}
.babyhair .bh-btn--light .elementor-button{background:transparent;color:#FBF7F1;border-color:rgba(251,247,241,.55)}
.babyhair .bh-btn--light .elementor-button:hover{background:#FBF7F1;color:var(--ink)}
.babyhair .bh-btn--link .elementor-button{background:none;border:0;padding:0;color:var(--gold);
  font-size:.68rem;letter-spacing:.16em}
.babyhair .bh-btn--link .elementor-button:hover{gap:.95rem;background:none;color:var(--gold)}

/* ---------- icon boxes ---------- */
.babyhair .bh-iconbox .elementor-icon-box-wrapper{display:flex;gap:.9rem;align-items:flex-start;text-align:left}
.babyhair .bh-iconbox .elementor-icon{color:var(--gold);font-size:24px}
.babyhair .bh-iconbox .elementor-icon svg{fill:var(--gold);width:24px;height:24px}
.babyhair .bh-iconbox .elementor-icon-box-title{font-family:var(--sans);font-size:.7rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0 0 .25rem}
.babyhair .bh-iconbox .elementor-icon-box-description{font-size:.8rem;color:var(--charcoal);margin:0;line-height:1.55}
.babyhair .bh-iconbox--center .elementor-icon-box-wrapper{flex-direction:column;align-items:center;text-align:center}
.babyhair .bh-iconbox--serif .elementor-icon-box-title{font-family:var(--display);font-size:1.25rem;
  letter-spacing:0;text-transform:none;font-weight:400}
.babyhair .bh-iconbox--ring .elementor-icon{border:1px solid var(--gold);border-radius:50%;width:46px;height:46px;
  display:grid;place-items:center;flex:none}
.babyhair .bh-iconbox--stat .elementor-icon-box-title{font-family:var(--display);font-size:var(--step-3);
  letter-spacing:0;text-transform:none;font-weight:400;line-height:1.1}
.babyhair .bh-iconbox--stat .elementor-icon-box-description{font-size:.64rem;letter-spacing:.16em;
  text-transform:uppercase}
.babyhair .bh-onnavy .elementor-icon-box-title{color:#FBF7F1}
.babyhair .bh-onnavy .elementor-icon-box-description{color:rgba(239,231,218,.8)}

/* ---------- icon lists ---------- */
.babyhair .bh-checks .elementor-icon-list-item{align-items:flex-start;font-size:.9rem;color:var(--charcoal)}
.babyhair .bh-checks .elementor-icon-list-icon{color:var(--gold);padding-top:.28rem}
.babyhair .bh-checks .elementor-icon-list-icon svg{fill:var(--gold);width:13px;height:13px}
.babyhair .bh-checks .elementor-icon-list-text{line-height:1.6}

/* ---------- divider used as rule / media block ---------- */
.babyhair .bh-rule .elementor-divider-separator{border-top-color:var(--gold)!important;border-top-width:2px!important}
.babyhair .bh-rule .elementor-divider{padding-block:0}

/* media placeholder rendered by a heading widget */
.babyhair .bh-mediabox{position:relative;overflow:hidden;background:var(--tile);width:100%;
  background-image:radial-gradient(120% 90% at 20% 10%,rgba(255,255,255,.9) 0%,rgba(255,255,255,0) 55%),
    radial-gradient(90% 80% at 80% 80%,rgba(183,131,56,.18) 0%,rgba(183,131,56,0) 60%),
    linear-gradient(150deg,#F1E7D8 0%,#DCD0C0 50%,#C9B7A0 100%)}
.babyhair .bh-mediabox .elementor-heading-title{position:absolute;left:1rem;bottom:.9rem;font-family:var(--sans);
  font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(23,23,23,.38);font-weight:500;margin:0}
.babyhair .bh-mediabox.bh-deep{background-image:radial-gradient(100% 80% at 25% 20%,rgba(211,173,111,.28) 0%,rgba(211,173,111,0) 60%),
  linear-gradient(160deg,#123054 0%,#071D35 60%,#04101f 100%)}
.babyhair .bh-mediabox.bh-green{background-image:radial-gradient(90% 80% at 70% 25%,rgba(211,173,111,.2) 0%,rgba(211,173,111,0) 60%),
  linear-gradient(160deg,#4A5F4D 0%,#354638 70%,#25322A 100%)}
.babyhair .bh-mediabox.bh-lightmedia{background-image:radial-gradient(110% 90% at 30% 12%,#fff 0%,rgba(255,255,255,0) 60%),
  linear-gradient(155deg,#FDFBF7 0%,#F3E9DC 55%,#E6DAC7 100%)}
.babyhair .bh-mediabox.bh-deep .elementor-heading-title,
.babyhair .bh-mediabox.bh-green .elementor-heading-title{color:rgba(251,247,241,.5)}
.babyhair .bh-4x5{aspect-ratio:4/5}
.babyhair .bh-1x1{aspect-ratio:1/1}
.babyhair .bh-3x2{aspect-ratio:3/2}
.babyhair .bh-3x4{aspect-ratio:3/4}
.babyhair .bh-16x9{aspect-ratio:16/9}
.babyhair .bh-fill{height:100%;min-height:320px}

/* ---------- hero container ---------- */
.babyhair .bh-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;
  margin-top:-123px;padding-bottom:clamp(3rem,7vw,6rem);overflow:hidden;
  background-image:linear-gradient(180deg,rgba(7,29,53,.5) 0%,rgba(7,29,53,.1) 38%,rgba(7,29,53,.62) 100%),
    radial-gradient(100% 80% at 25% 20%,rgba(211,173,111,.28) 0%,rgba(211,173,111,0) 60%),
    linear-gradient(160deg,#123054 0%,#071D35 60%,#04101f 100%);background-size:cover}
@media(max-width:1120px){.babyhair .bh-hero{margin-top:-109px}}
.babyhair .bh-hero .elementor-heading-title{color:#FBF7F1}
.babyhair .bh-hero-title .elementor-heading-title{font-family:var(--display);font-weight:400;
  font-size:clamp(2.3rem,5.8vw,5.6rem);line-height:1.02;max-width:16ch}
.babyhair .bh-hero-sub .elementor-heading-title{font-family:var(--display);font-style:italic;
  font-size:clamp(1.1rem,2vw,1.8rem);color:rgba(251,247,241,.92);font-weight:300}
.babyhair .bh-btnrow{display:flex!important;flex-direction:row!important;gap:.9rem;flex-wrap:wrap;align-items:center}
.babyhair .bh-btnrow.bh-center{justify-content:center}

/* ---------- page hero (cream band + art on the right) ---------- */
.babyhair .bh-pagehero{position:relative;background:var(--cream);overflow:hidden;
  display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,5vw,4rem);
  min-height:clamp(300px,34vw,430px)}
.babyhair .bh-pagehero>.e-con-inner{display:contents}
@media(max-width:900px){.babyhair .bh-pagehero{grid-template-columns:1fr}}
.babyhair .bh-pagehero-body{padding-block:clamp(2.75rem,6vw,4.5rem);padding-inline:var(--gut)}
.babyhair .bh-pagehero-art{align-self:stretch;min-height:260px}

/* ---------- cards ---------- */
.babyhair .bh-card{background:transparent}
.babyhair .bh-card .elementor-heading-title{font-family:var(--display);font-size:1.2rem;line-height:1.25;color:var(--ink)}
.babyhair .bh-cardcat .elementor-heading-title{font-size:.56rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);font-family:var(--sans);font-weight:600}
.babyhair .bh-price .elementor-heading-title{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--ink)}
.babyhair .bh-stars .elementor-star-rating{font-size:12px}
.babyhair .bh-stars .elementor-star-rating i:before{color:var(--champagne)}
.babyhair .bh-stars .elementor-star-rating__title{font-size:.72rem;color:var(--charcoal)}

/* ---------- tabs / accordion ---------- */
.babyhair .bh-tabs .e-n-tabs-heading{justify-content:center;gap:2.5rem;border-bottom:1px solid var(--line-c)}
.babyhair .bh-tabs .e-n-tab-title{background:none!important;border:0;border-bottom:2px solid transparent;
  padding:1.1rem 0;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--charcoal)}
.babyhair .bh-tabs .e-n-tab-title[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--gold)}
.babyhair .bh-acc .e-n-accordion-item-title{font-family:var(--sans);font-size:.7rem;letter-spacing:.14em;
  text-transform:uppercase;font-weight:600;border-top:1px solid var(--line-c);padding-block:1.1rem}
.babyhair .bh-acc .e-n-accordion-item-title-text{color:var(--ink)}

/* ---------- forms (Elementor Pro) ---------- */
.babyhair .bh-form .elementor-field-group>label{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;
  color:var(--charcoal);font-weight:600;margin-bottom:.35rem}
.babyhair .bh-form .elementor-field-textual{padding:.9rem 1rem;border:1px solid var(--taupe);background:var(--ivory);
  border-radius:2px;font-size:.9rem;color:var(--ink);height:auto}
.babyhair .bh-form .elementor-field-textual:focus{border-color:var(--gold);background:#fff;box-shadow:none}
.babyhair .bh-form .elementor-button[type=submit]{background:var(--ink);color:#FBF7F1;border-radius:2px;
  font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;padding:1.05rem 2rem}
.babyhair .bh-form .elementor-button[type=submit]:hover{background:#000}
.babyhair .bh-formcard{background:var(--ivory-warm);border:1px solid var(--line-c);
  padding:clamp(1.6rem,3.5vw,2.75rem)}

/* ---------- Woodmart product grid inside our pages ---------- */
.babyhair .wd-product .wd-entities-title{font-family:var(--display)!important;font-size:1.2rem;line-height:1.25}
.babyhair .wd-product .wd-entities-title a{color:var(--ink)}
.babyhair .wd-product .price{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--ink)}
.babyhair .wd-product .price del{color:var(--taupe);font-weight:400}
.babyhair .wd-product .star-rating span:before{color:var(--champagne)}
.babyhair .wd-product .product-image-link,
.babyhair .wd-product .product-element-top{background:var(--tile)}
.babyhair .product-labels .product-label{border-radius:0;background:var(--gold);color:#fff;font-size:.54rem;
  letter-spacing:.14em;text-transform:uppercase;font-weight:600;padding:.35rem .55rem}
.babyhair .product-labels .product-label.onsale{background:#C0392B}
.babyhair .wd-product .wd-add-btn>a,
.babyhair .wd-product .wd-add-btn-replace>a{background:var(--ink)!important;color:#FBF7F1!important;
  border-radius:2px;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  width:100%;justify-content:center;padding:.9rem 1rem}
.babyhair .wd-product .wd-add-btn>a:hover{background:#000!important}

/* WooCommerce single-product widgets */
.babyhair .elementor-widget-woocommerce-product-title .product_title{font-family:var(--display);
  font-size:var(--step-3);font-weight:400;color:var(--ink)}
.babyhair .elementor-widget-woocommerce-product-price .price{font-size:1.5rem;font-weight:600;color:var(--ink)}
.babyhair .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button{
  background:var(--ink)!important;color:#FBF7F1!important;border-radius:2px;font-size:.7rem;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;padding:1.05rem 2rem}
.babyhair .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button:hover{background:#000!important}
.babyhair .elementor-widget-woocommerce-product-data-tabs .woocommerce-tabs ul.tabs{
  display:flex;justify-content:center;gap:2.5rem;border-bottom:1px solid var(--line-c);padding:0;margin-bottom:2rem}
.babyhair .elementor-widget-woocommerce-product-data-tabs ul.tabs li a{font-size:.68rem;letter-spacing:.16em;
  text-transform:uppercase;font-weight:600;color:var(--charcoal);padding:1.1rem 0}
.babyhair .elementor-widget-woocommerce-product-data-tabs ul.tabs li.active a{color:var(--ink)}

/* ---------- blog post body ---------- */
.babyhair .bh-article{max-width:74ch;margin-inline:auto}
.babyhair .bh-article h2{font-family:var(--display);font-size:var(--step-2);margin:2.25rem 0 .75rem;color:var(--ink)}
.babyhair .bh-article h3{font-family:var(--display);font-size:1.4rem;margin:1.75rem 0 .5rem;color:var(--ink)}
.babyhair .bh-article p{font-size:1.02rem;line-height:1.75;color:var(--charcoal);margin:0 0 1.15em}
.babyhair .bh-article ul,.babyhair .bh-article ol{margin:0 0 1.3em 1.1rem;color:var(--charcoal);line-height:1.7}
.babyhair .bh-article li{margin-bottom:.5em}
.babyhair .bh-article strong{color:var(--ink);font-weight:600}
.babyhair .bh-article blockquote{border-left:2px solid var(--gold);padding-left:1.35rem;margin:1.75rem 0;
  font-family:var(--display);font-style:italic;font-size:1.3rem;color:var(--navy);line-height:1.5}
.babyhair .bh-note{background:var(--cream);border-left:2px solid var(--gold);padding:1.15rem 1.35rem}
.babyhair .bh-note p{margin:0;font-size:.88rem;color:var(--charcoal)}

/* ---------- misc ---------- */
.babyhair .bh-hide-empty .elementor-heading-title:empty{display:none}
.babyhair .elementor-widget:not(:last-child){margin-block-end:0}
.babyhair .e-con>.e-con-inner{padding:0}

/* ===== widget-built section styles ===== */
.babyhair .bh-beat{padding-block:clamp(5rem,11vw,10rem);display:flex;flex-direction:column;gap:.4rem}
.babyhair .bh-beatline .elementor-heading-title{font-family:var(--display);font-weight:300;
  font-size:clamp(1.5rem,4vw,3.1rem);line-height:1.3;color:var(--ink);max-width:22ch;margin-inline:auto}
.babyhair .bh-beatline--gold .elementor-heading-title{color:var(--gold);font-style:italic}
.babyhair .bh-gencard{position:relative;overflow:hidden;gap:.4rem}
.babyhair .bh-gencard .bh-mediabox{margin-bottom:.9rem}
.babyhair .bh-gencard .elementor-heading-title{font-family:var(--display)}
.babyhair .bh-pillar{padding-block:clamp(3rem,6vw,5.5rem);border-top:1px solid var(--line-c);align-items:center}
.babyhair .bh-pillarno .elementor-heading-title{font-family:var(--display);font-weight:400;
  font-size:clamp(2.5rem,6vw,5rem);color:var(--taupe);line-height:1}
.babyhair .bh-pillarmeta{border-top:1px solid var(--line-c);padding-top:1.25rem;margin-top:1.5rem}
.babyhair .bh-hubcard{position:relative;overflow:hidden;background:var(--navy);padding:0 0 1.5rem;gap:.35rem}
.babyhair .bh-hubcard .bh-mediabox{margin-bottom:1rem}
.babyhair .bh-hubcard>.e-con-inner>*:not(.bh-mediabox){padding-inline:1.5rem}
.babyhair .bh-hubcard .elementor-widget-heading,.babyhair .bh-hubcard .elementor-widget-text-editor,
.babyhair .bh-hubcard .elementor-widget-button{padding-inline:1.5rem}
.babyhair .bh-ptb{position:relative;overflow:hidden}
.babyhair .bh-ptbnodes{padding-top:2rem;margin-top:2rem;border-top:1px solid rgba(211,173,111,.28);
  gap:clamp(1rem,3vw,2.5rem)}
.babyhair .bh-link-light .elementor-button{color:rgba(239,231,218,.8)}
.babyhair .bh-link-light .elementor-button:hover{color:var(--champagne)}
.babyhair .bh-presslogos .elementor-heading-title{font-family:var(--display);font-size:1.5rem;
  color:var(--taupe);letter-spacing:.05em}
.babyhair .bh-shoplayout{align-items:flex-start}
.babyhair .bh-shop-side{position:sticky;top:110px}
@media(max-width:960px){.babyhair .bh-shoplayout{flex-direction:column!important}
  .babyhair .bh-shop-side,.babyhair .bh-shop-main{width:100%!important;position:static}}
.babyhair .bh-filter .widget-title,.babyhair .bh-filter .widgettitle{font-family:var(--sans);
  font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink);
  margin-bottom:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--line-c)}
.babyhair .bh-filter ul{list-style:none;margin:0 0 1.75rem;padding:0;display:grid;gap:.6rem}
.babyhair .bh-filter ul li a{font-size:.84rem;color:var(--charcoal)}
.babyhair .bh-filter ul li a:hover{color:var(--gold)}
.babyhair .bh-pdp{align-items:flex-start}
@media(max-width:900px){.babyhair .bh-pdp{flex-direction:column!important}
  .babyhair .bh-pdp>.e-con{width:100%!important}}
.babyhair .bh-pdp-icons{border-block:1px solid var(--line-c);padding-block:1.35rem;margin-block:1.5rem}
.babyhair .bh-assure{border-top:1px solid var(--line-c);padding-top:1.35rem;margin-top:1.4rem}
.babyhair .bh-assure .elementor-icon-box-title{font-size:.64rem;letter-spacing:.06em}
.babyhair .bh-price-lg .price{font-size:1.5rem;font-weight:600;color:var(--ink)}

/* ================= Elementor header / footer templates ================= */
body .bh-utility{background:var(--gold-bar)}
body .bh-utility-in{padding-block:0}
body .bh-utility-list .elementor-icon-list-items{justify-content:center;gap:1.6rem;min-height:36px;align-items:center;flex-wrap:wrap}
body .bh-utility-list .elementor-icon-list-item,body .bh-utility-list .elementor-icon-list-text{color:#FCF8F1;font-family:var(--sans);font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500}
body .bh-utility-list .elementor-icon-list-icon svg,body .bh-utility-list .elementor-icon-list-icon i{fill:#FCF8F1;color:#FCF8F1;width:13px;height:13px;font-size:11px}
body .bh-header{background:var(--ivory);border-bottom:1px solid var(--line-c);position:sticky;top:0;z-index:200}
body .bh-header-in{align-items:center;justify-content:space-between;min-height:86px;gap:2rem}
body .bh-logo-word .elementor-heading-title{font-family:var(--display);font-size:1.45rem;letter-spacing:.05em;font-weight:500;color:var(--ink);line-height:1}
body .bh-logo-tag .elementor-heading-title{font-family:var(--sans);font-size:.52rem;letter-spacing:.17em;text-transform:uppercase;color:var(--charcoal);margin-top:.3rem}
body .bh-logo{gap:0;flex:0 0 auto}
body .bh-navwrap{flex:1 1 auto;align-items:center}
body .bh-nav .elementor-nav-menu>li>a{font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink);padding:1.1rem .9rem}
body .bh-nav .elementor-nav-menu>li>a:hover,body .bh-nav .elementor-nav-menu>li.current-menu-item>a{color:var(--gold)}
body .bh-nav .elementor-nav-menu--dropdown a,body .bh-nav .sub-menu a{font-family:var(--sans);font-size:.86rem;letter-spacing:0;text-transform:none;color:var(--charcoal);font-weight:400;padding:.6rem 1.2rem}
body .bh-nav .sub-menu{background:var(--ivory-warm);border:1px solid var(--line-c);border-top:2px solid var(--gold);box-shadow:0 26px 60px -30px rgba(7,29,53,.25);padding:.6rem 0;min-width:250px}
body .bh-nav .sub-menu a:hover{color:var(--ink);background:transparent}
body .bh-tools{gap:1.1rem;flex:0 0 auto;align-items:center}
body .bh-tools .elementor-widget{width:auto}
body .bh-cart .elementor-menu-cart__toggle .elementor-button{background:transparent;color:var(--ink);border:0;padding:0}
body .bh-cart .elementor-button-icon-qty[data-counter]{background:var(--gold);color:#fff;font-size:.58rem;font-weight:600}
body .bh-search input{border:1px solid var(--taupe);background:var(--ivory-warm);border-radius:2px;font-size:.8rem;padding:.5rem .8rem}
body .bh-joinband{background:var(--cream);align-items:center;gap:0}
body .bh-joinband>.e-con-inner>.e-con:first-child{padding:clamp(2.25rem,4.5vw,3.25rem) var(--gut)}
body .bh-nlform .elementor-field-group{margin-bottom:0}
body .bh-footer{background:var(--navy);padding-top:clamp(3rem,6vw,4.5rem)}
body .bh-footer-top{align-items:flex-start;gap:2rem;padding-bottom:2.75rem}
body .bh-fbrand{flex:1.5 1 0}
body .bh-fcol-title .elementor-heading-title{font-family:var(--sans);font-size:.66rem;letter-spacing:.19em;text-transform:uppercase;color:#FBF7F1;font-weight:600;margin-bottom:1rem}
body .bh-fmenu .elementor-nav-menu a{font-family:var(--sans);font-size:.86rem;letter-spacing:0;text-transform:none;color:rgba(199,188,172,.92);padding:.3rem 0;font-weight:400}
body .bh-fmenu .elementor-nav-menu a:hover{color:#FBF7F1;background:transparent}
body .bh-socials .elementor-social-icon{background:transparent;color:rgba(199,188,172,.9);font-size:15px}
body .bh-socials .elementor-social-icon:hover{color:var(--champagne);background:transparent}
body .bh-ecosystem{border-top:1px solid rgba(199,188,172,.16);padding-block:2.25rem;align-items:center;justify-content:space-between;gap:1.5rem}
body .bh-eco-title .elementor-heading-title{font-family:var(--display);font-size:1.5rem;color:#FBF7F1;font-weight:400;margin-bottom:.4rem}
body .bh-affiliations{border-top:1px solid rgba(199,188,172,.16);padding-block:2rem 1.75rem}
body .bh-affil-row{justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}
body .bh-badge .elementor-heading-title{border:1.5px solid var(--champagne);color:var(--champagne);border-radius:50%;width:76px;height:76px;display:grid;place-items:center;text-align:center;font-family:var(--sans);font-size:.5rem;letter-spacing:.1em;line-height:1.35;font-weight:600;padding:.4rem}
body .bh-badge--white .elementor-heading-title{background:#fff;color:#1a1a1a;border:0;border-radius:2px;width:96px;height:56px;font-size:.56rem}
body .bh-badge--shield .elementor-heading-title{border-radius:3px 3px 14px 14px;width:64px;height:64px;font-family:var(--display);font-size:1.05rem}
body .bh-affil-text{max-width:38ch;padding-left:2rem;border-left:1px solid rgba(199,188,172,.22)}
body .bh-legal{border-top:1px solid rgba(199,188,172,.12);padding-block:1.4rem 1.9rem;justify-content:space-between;align-items:center;gap:1rem}
body .bh-legal .elementor-widget-text-editor{font-size:.76rem;color:rgba(199,188,172,.65)}
@media(max-width:1100px){body .bh-footer-top{flex-wrap:wrap}body .bh-fbrand{flex:1 1 100%}}
/* article + misc */
body .bh-chiprow{gap:.55rem}
body .bh-chip .elementor-button{padding:.6rem 1.15rem;border:1px solid var(--taupe);border-radius:99px;background:transparent;color:var(--charcoal);font-size:.72rem;letter-spacing:.08em;text-transform:none;font-weight:400}
body .bh-chip .elementor-button:hover{border-color:var(--ink);color:var(--ink);background:transparent}
body .bh-gate{align-items:stretch;border-top:1px solid var(--line-c);gap:0}
body .bh-gatebody{padding:clamp(2rem,4.5vw,4rem);justify-content:center}
body .bh-italic-lede{font-family:var(--display);font-style:italic;font-size:1.15rem}
body .bh-cardbox{background:var(--ivory-warm);border:1px solid var(--line-c);padding:1.5rem}
body .bh-partnerbox{background:var(--cream);border:1px solid var(--line-c);padding:1.5rem;gap:1.25rem}
body .bh-quoteband{position:relative;background:linear-gradient(160deg,#5C4526,#3C2A16)}
body .bh-quoteband-text{font-family:var(--display);font-size:clamp(1.1rem,2.2vw,1.75rem);color:#FBF7F1;line-height:1.45}
body .bh-quoteband-cite .elementor-heading-title{color:var(--champagne);font-family:var(--sans);font-size:.85rem}
body .bh-quotemark .elementor-heading-title{font-family:var(--display);font-size:3rem;color:var(--champagne);line-height:1}
body .bh-whyrow{align-items:center}
body .bh-pillarrail{border-left:1px solid var(--line-c);padding-left:1.75rem;gap:1.5rem}
body .bh-track .bh-step .elementor-icon{border:1px solid var(--taupe);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;color:var(--taupe)}
body .bh-track .bh-step--done .elementor-icon{background:var(--gold);border-color:var(--gold);color:#fff}
body .bh-track .bh-step--now .elementor-icon{border-color:var(--gold);color:var(--gold)}
body .bh-tiles>.e-con-inner>*{border-right:1px solid var(--line-c);padding-inline:1.25rem}
body .bh-postgrid .elementor-post__title,body .bh-postgrid .elementor-post__title a{font-family:var(--display);font-size:1.3rem;line-height:1.3;color:var(--ink)}
body .bh-postgrid .elementor-post__excerpt p{font-size:.86rem;color:var(--charcoal)}
body .bh-postgrid .elementor-post__read-more{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600}
body .bh-postgrid .elementor-post__meta-data{font-size:.72rem;color:var(--charcoal)}

/* ===== header / footer templates ===== */
.babyhair .bh-header-root{position:sticky;top:0;z-index:300}
.babyhair .bh-utility{background:var(--gold-bar)}
.babyhair .bh-utilin{align-items:center;min-height:36px;justify-content:space-between;flex-wrap:nowrap}
.babyhair .bh-utilitems .elementor-icon-list-items,.babyhair .bh-utilright .elementor-icon-list-items{gap:1.4rem;margin:0}
.babyhair .bh-utilitems .elementor-icon-list-text,.babyhair .bh-utilright .elementor-icon-list-text{
  color:#FCF8F1;font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500}
.babyhair .bh-utilitems .elementor-icon-list-icon svg,.babyhair .bh-utilright .elementor-icon-list-icon svg{fill:#FCF8F1;width:13px;height:13px}
.babyhair .bh-utilitems .elementor-icon-list-item:not(:last-child):after{content:'|';color:rgba(252,248,241,.45);margin-left:1.4rem}
.babyhair .bh-siteheader{background:var(--ivory);border-bottom:1px solid var(--line-c)}
.babyhair .bh-headerin{align-items:center;justify-content:space-between;min-height:86px;flex-wrap:nowrap;gap:2rem}
.babyhair .bh-brand{gap:0;width:auto;flex:0 0 auto}
.babyhair .bh-logoword .elementor-heading-title{font-family:var(--display);font-size:1.45rem;
  letter-spacing:.05em;color:var(--ink);line-height:1;font-weight:500}
.babyhair .bh-logotag .elementor-heading-title{font-family:var(--sans);font-size:.52rem;
  letter-spacing:.17em;text-transform:uppercase;color:var(--charcoal);margin-top:.3rem}
.babyhair .bh-navwrap{width:auto;flex:1 1 auto;align-items:center}
.babyhair .bh-toolswrap{width:auto;flex:0 0 auto}
.babyhair .bh-nav .elementor-nav-menu>li>a,.babyhair .bh-nav .elementor-item{
  font-family:var(--sans);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;color:var(--ink);padding:1.1rem .2rem}
.babyhair .bh-nav .elementor-nav-menu{justify-content:center;gap:2rem}
.babyhair .bh-nav .elementor-item:hover,.babyhair .bh-nav .elementor-item.elementor-item-active{color:var(--gold)}
.babyhair .bh-nav .elementor-nav-menu--dropdown{background:var(--ivory-warm);border:1px solid var(--line-c);border-top:2px solid var(--gold);
  box-shadow:0 26px 60px -30px rgba(7,29,53,.25);min-width:250px}
.babyhair .bh-nav .elementor-nav-menu--dropdown a{font-family:var(--sans);font-size:.86rem;
  color:var(--charcoal);letter-spacing:0;text-transform:none;font-weight:400;padding:.7rem 1.4rem}
.babyhair .bh-nav .elementor-nav-menu--dropdown a:hover{background:var(--cream);color:var(--ink)}
.babyhair .bh-tools .elementor-icon-list-items{gap:1.3rem;margin:0}
.babyhair .bh-tools .elementor-icon-list-icon svg{fill:var(--ink);width:19px;height:19px}
.babyhair .bh-tools .elementor-icon-list-text{display:none}
@media(max-width:1120px){.babyhair .bh-nav .elementor-nav-menu--main{display:none}}

/* footer */
.babyhair .bh-joinband{background:var(--cream)}
.babyhair .bh-joinin{align-items:center;gap:0}
.babyhair .bh-joinin>.e-con:first-child{padding:clamp(2.25rem,4.5vw,3.25rem) var(--gut)}
.babyhair .bh-nlform .elementor-field-group{margin-bottom:0}
.babyhair .bh-sitefooter{background:var(--navy);padding-top:clamp(3rem,6vw,4.5rem)}
.babyhair .bh-ftop{display:grid!important;grid-template-columns:1.45fr repeat(5,1fr);gap:2.25rem 1.75rem;padding-bottom:2.75rem;align-items:start}
@media(max-width:1100px){.babyhair .bh-ftop{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:620px){.babyhair .bh-ftop{grid-template-columns:1fr 1fr}.babyhair .bh-fbrand{grid-column:1/-1}}
.babyhair .bh-fcolhead .elementor-heading-title{font-family:var(--sans);font-size:.66rem;
  letter-spacing:.19em;text-transform:uppercase;color:#FBF7F1;font-weight:600;margin-bottom:1.1rem}
.babyhair .bh-fmenu .elementor-nav-menu a{font-family:var(--sans);font-size:.86rem;
  color:rgba(199,188,172,.92);padding:.31rem 0;letter-spacing:0;text-transform:none;font-weight:400;background:none}
.babyhair .bh-fmenu .elementor-nav-menu a:hover{color:#FBF7F1;background:none}
.babyhair .bh-socials .elementor-social-icon{background:transparent;color:rgba(199,188,172,.9);
  border:1px solid rgba(199,188,172,.28);width:32px;height:32px}
.babyhair .bh-socials .elementor-social-icon:hover{border-color:var(--champagne);color:var(--champagne)}
.babyhair .bh-socials .elementor-social-icon svg{width:14px;height:14px;fill:currentColor}
.babyhair .bh-eco{border-top:1px solid rgba(199,188,172,.16);padding-block:2.25rem}
.babyhair .bh-ecoin{align-items:center;gap:1.5rem}
.babyhair .bh-affiliations{border-top:1px solid rgba(199,188,172,.16);padding:2rem 0 1.75rem}
.babyhair .bh-affrow{align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap}
.babyhair .bh-badge .elementor-heading-title{border:1.5px solid var(--champagne);color:var(--champagne);
  border-radius:50%;width:76px;height:76px;display:grid;place-items:center;font-family:var(--sans);
  font-size:.6rem;letter-spacing:.1em;font-weight:600;text-align:center}
.babyhair .bh-badge--white .elementor-heading-title{background:#fff;color:#1a1a1a;border:0;
  border-radius:2px;width:96px;height:56px;font-size:.56rem;line-height:1.3}
.babyhair .bh-badge--shield .elementor-heading-title{border-radius:3px 3px 14px 14px;width:64px;height:64px;
  font-family:var(--display);font-size:1.05rem}
.babyhair .bh-affnote{max-width:38ch;text-align:left;padding-left:2rem;border-left:1px solid rgba(199,188,172,.22)}
.babyhair .bh-legal{border-top:1px solid rgba(199,188,172,.12)}
.babyhair .bh-legalin{align-items:center;justify-content:space-between;gap:1rem;padding-block:1.4rem 1.9rem;flex-wrap:wrap}
.babyhair .bh-legallinks .elementor-icon-list-items{gap:1.5rem;margin:0}
.babyhair .bh-legallinks .elementor-icon-list-text{color:rgba(199,188,172,.65);font-size:.76rem}
.babyhair .bh-legallinks .elementor-icon-list-icon{display:none}
.babyhair .bh-pay p{color:rgba(199,188,172,.65);font-size:.62rem;letter-spacing:.08em;margin:0}
.babyhair .bh-legal p{margin:0}
