/* Approved 18 October: the luminous Balena Pink wave is the shared opening
   signature. It is a full-width band, never a small decorative tail. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar){
  --bp-wave-art:url("./bp-luminous-wave.jpg");
  --bp-wave-overlay:linear-gradient(90deg,rgba(9,15,45,.74),rgba(16,22,56,.55) 48%,rgba(16,22,56,.16) 74%,rgba(16,22,56,.08));
}

/* Editorial pages: one continuous opening field. Home retains its approved
   photographic composition; every internal page receives the same wave. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]),
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial-contact,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined{
  background-color:#101638!important;
  background-image:var(--bp-wave-overlay),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:100% clamp(330px,31vw,500px)!important;
  background-position:center top!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .source-page{
  padding-top:0!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="home"] .hero{
  background-color:#101638!important;
  background-image:linear-gradient(90deg,rgba(16,22,56,.36),rgba(16,22,56,.06) 58%,rgba(16,22,56,.18)),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening{
  position:relative!important;
  isolation:isolate!important;
  box-sizing:border-box!important;
  min-height:clamp(310px,30vw,450px)!important;
  padding-top:clamp(58px,7vw,100px)!important;
  padding-bottom:clamp(52px,6vw,88px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening::before,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  width:100vw!important;
  transform:translateX(-50%)!important;
  background-color:#101638!important;
  background-image:linear-gradient(90deg,rgba(9,15,45,.74),rgba(16,22,56,.55) 48%,rgba(16,22,56,.16) 74%,rgba(16,22,56,.08)),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
  pointer-events:none!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="cocktail"] .bp-wave-opening{
  min-height:clamp(310px,30vw,450px)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .hero{
  box-sizing:border-box!important;
  min-height:clamp(320px,31vw,470px)!important;
  padding:clamp(64px,8vw,118px) 0 clamp(54px,7vw,96px)!important;
  background-color:#101638!important;
  background-image:linear-gradient(90deg,rgba(16,22,56,.18),rgba(16,22,56,.03) 58%,rgba(16,22,56,.12)),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
  align-items:center!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined{
  box-sizing:border-box!important;
  padding-top:clamp(58px,7vw,104px)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main :is(.bp-editorial[data-page]:not([data-page="home"]),.bp-editorial-contact,.bp-contact-refined) :is(h1,h1 strong,h1 span){
  color:#fffaf5!important;
  -webkit-text-fill-color:#fffaf5!important;
}

/* Revision 59: every internal-page opening title starts on the same left
   content edge. Gutenberg's constrained-layout auto margins must not recenter
   the title or its immediate hero wrapper. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .bp-wave-opening{
  align-items:stretch!important;
  text-align:left!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .bp-wave-opening > h1,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .bp-wave-opening > .bp-editorial-hero > h1{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
  align-self:stretch!important;
}

/* Contact is generated at runtime around the intact CF7 form. The heading
   owns the complete wave band; its champagne rule closes that band and the
   form begins afterwards in an unambiguous navy section. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-wrap{
  padding-top:0!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-heading{
  position:relative!important;
  box-sizing:border-box!important;
  min-height:clamp(330px,31vw,500px)!important;
  display:flex!important;
  align-items:center!important;
  padding:clamp(58px,7vw,100px) 0 clamp(52px,6vw,88px)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-heading::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  width:100vw!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:rgba(201,173,118,.62)!important;
  pointer-events:none!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-heading h1{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  text-align:left!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-form-panel{
  margin-top:clamp(48px,6vw,82px)!important;
}

@media(max-width:600px){
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-heading{
    min-height:330px!important;
    padding:54px 0 48px!important;
  }
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined .bp-contact-form-panel{
    margin-top:38px!important;
  }
}

/* Native commerce, account and legal pages use the same full opening band.
   Content panels remain untouched and preserve all WooCommerce behaviour. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar):is(.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.bp-legal-page) :is(main#wp--skip-link--target,main){
  background-color:#101638!important;
  background-image:var(--bp-wave-overlay),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:100% clamp(330px,31vw,500px)!important;
  background-position:center top!important;
  padding-top:clamp(48px,6vw,86px)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-post main.bp-article-page,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).error404 main.bp-not-found{
  background-color:#101638!important;
  background-image:var(--bp-wave-overlay),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:100% clamp(330px,31vw,500px)!important;
  background-position:center top!important;
}

/* Product photography uses one light frame in Shop and all product pages.
   Keep the luminous wave in the opening band, not inside image frames. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar):is(.woocommerce-shop,.single-product,.woocommerce-cart) :is(main#wp--skip-link--target,main) :is(.wc-block-product,ul.products li.product,.wc-block-grid__product) img:not(.emoji):not(.zoomImg){
  background:#fffaf5!important;
  background-image:none!important;
  filter:none!important;
  opacity:1!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-product :is(main#wp--skip-link--target,main) .woocommerce-product-gallery,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-product :is(main#wp--skip-link--target,main) .woocommerce-product-gallery__image img:not(.zoomImg){
  background:#fffaf5!important;
  background-image:none!important;
}

/* Product hero: the heading alone sits on the wave, left aligned. The
   gallery and all buying controls start below its champagne closing line.
   Extra navy height holds the entire buying area before the cream tabs. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-product :is(main#wp--skip-link--target,main) > .wp-block-columns.alignwide:has(> .wp-block-column .wp-block-woocommerce-product-image-gallery){
  position:relative!important;
  box-sizing:border-box!important;
  padding-top:clamp(250px,28vw,390px)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-product :is(main#wp--skip-link--target,main) > .wp-block-columns.alignwide:has(> .wp-block-column .wp-block-woocommerce-product-image-gallery) > .wp-block-column h1.wp-block-post-title{
  position:absolute!important;
  top:0!important;
  left:0!important;
  width:min(700px,100%)!important;
  max-width:100%!important;
  margin:0!important;
  text-align:left!important;
}
@media(max-width:760px){
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-product :is(main#wp--skip-link--target,main) > .wp-block-columns.alignwide:has(> .wp-block-column .wp-block-woocommerce-product-image-gallery){
    padding-top:250px!important;
  }
}

/* All five Contact social destinations remain in one prominent family. */
html body.wp-child-theme-balena-pink-child main :is(.bp-editorial[data-page="contatti"],.bp-contact-refined,.bp-editorial-contact) .bp-contact-social-links{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
}
html body.wp-child-theme-balena-pink-child main :is(.bp-editorial[data-page="contatti"],.bp-contact-refined,.bp-editorial-contact) .bp-contact-social-links>a{
  width:100%!important;
  min-width:0!important;
  min-height:92px!important;
  flex-direction:row!important;
}
@media(max-width:980px){
 html body.wp-child-theme-balena-pink-child main :is(.bp-editorial[data-page="contatti"],.bp-contact-refined,.bp-editorial-contact) .bp-contact-social-links{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:600px){
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]),
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial-contact,
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined,
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar):is(.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.bp-legal-page) :is(main#wp--skip-link--target,main){
  background-size:auto 330px!important;
  background-position:62% top!important;
 }
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]) .hero{min-height:280px!important;padding:52px 0 46px!important;background-position:62% center!important}
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening,
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening{min-height:280px!important;padding-top:48px!important;padding-bottom:44px!important}
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening::before,
 html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening::before{background-position:62% center!important}
 html body.wp-child-theme-balena-pink-child main :is(.bp-editorial[data-page="contatti"],.bp-contact-refined,.bp-editorial-contact) .bp-contact-social-links{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.wp-child-theme-balena-pink-child main :is(.bp-editorial[data-page="contatti"],.bp-contact-refined,.bp-editorial-contact) .bp-contact-social-links>a{min-height:82px!important;flex-direction:column!important}
}

/* Review 18 October, pass 43: the artwork contains a slightly different navy.
   Paint every dark surface with the canonical navy and reveal the wave through
   a four-sided soft mask, so the image has no rectangular edge or colour seam. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar){
  --bp-navy:#101638;
  --bp-wave-edge-mask:linear-gradient(90deg,transparent 0%,#000 12%,#000 88%,transparent 100%);
  background-color:var(--bp-navy)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) :is(main,.wp-site-blocks,.wp-block-post-content),
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .source-page,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .source-content{
  background-color:var(--bp-navy)!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page]:not([data-page="home"]),
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial-contact,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-contact-refined{
  background-image:none!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial :is(.section-dark,.section-navy),
html body.wp-child-theme-balena-pink-child.home:not(#wpadminbar) main .bp-editorial[data-page="home"] :is(.hero,.colour-demo,.origin,.limited,.cocktail,.voices,.home-cta){
  background-color:var(--bp-navy)!important;
}

html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening{
  background:var(--bp-navy)!important;
  overflow:visible!important;
}
/* The content wrapper used to clip the 100vw opening artwork at the layout
   gutters. Keep normal content constrained, but let the opening band reach the
   viewport edges like the shared header and footer. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .source-content:has(> .bp-wave-opening),
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .source-content:has(.bp-story-opening){
  overflow-x:visible!important;
}
/* Limited Edition also carries the older refined-hero rules, which collapsed
   its opening to the height of the title. Restore the same breathing room used
   by the other editorial openings. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial.bp-editorial-refined[data-page="limited-edition"] .bp-editorial-hero.bp-wave-opening{
  min-height:clamp(310px,30vw,450px)!important;
  margin-top:0!important;
  margin-bottom:24px!important;
  padding-top:clamp(58px,7vw,100px)!important;
  padding-bottom:clamp(52px,6vw,88px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening::before,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening::before{
  top:-2px!important;
  bottom:-2px!important;
  background-color:transparent!important;
  background-image:var(--bp-wave-art)!important;
  background-size:cover!important;
  background-position:center right!important;
  opacity:.96!important;
  -webkit-mask-image:var(--bp-wave-edge-mask),linear-gradient(180deg,transparent 0%,#000 12%,#000 76%,transparent 100%)!important;
  -webkit-mask-composite:source-in!important;
  mask-image:var(--bp-wave-edge-mask),linear-gradient(180deg,transparent 0%,#000 12%,#000 76%,transparent 100%)!important;
  mask-composite:intersect!important;
}
/* A deliberate champagne hairline closes every wave band. It matches the
   active-menu detail and makes the transition intentional on every page. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening::after,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening::after{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  width:100vw!important;
  transform:translateX(-50%)!important;
  box-shadow:inset 0 1px rgba(201,173,118,.72),inset 0 -1px rgba(201,173,118,.72)!important;
  pointer-events:none!important;
}

/* Home: the same wave sits behind the right-hand product photograph and fades
   into the single navy surface before it reaches the copy or section edge. */
html body.wp-child-theme-balena-pink-child.home:not(#wpadminbar) main .bp-editorial[data-page="home"] .hero{
  position:relative!important;
  isolation:isolate!important;
  background:var(--bp-navy)!important;
}
html body.wp-child-theme-balena-pink-child.home:not(#wpadminbar) main .bp-editorial[data-page="home"] .hero::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:0 0 0 38%!important;
  background:var(--bp-wave-art) center right/cover no-repeat!important;
  opacity:.78!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 88%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 12%,#000 80%,transparent 100%)!important;
  -webkit-mask-composite:source-in!important;
  mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 88%,transparent 100%),linear-gradient(180deg,transparent 0%,#000 12%,#000 80%,transparent 100%)!important;
  mask-composite:intersect!important;
  pointer-events:none!important;
}
html body.wp-child-theme-balena-pink-child.home:not(#wpadminbar) main .bp-editorial[data-page="home"] .hero::after{
  content:""!important;
  position:absolute!important;
  z-index:3!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:inset 0 1px rgba(201,173,118,.72),inset 0 -1px rgba(201,173,118,.72)!important;
  pointer-events:none!important;
}

html body.wp-child-theme-balena-pink-child:not(#wpadminbar):is(.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.bp-legal-page) :is(main#wp--skip-link--target,main),
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-post main.bp-article-page,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).error404 main.bp-not-found{
  position:relative!important;
}
html body.wp-child-theme-balena-pink-child:not(#wpadminbar):is(.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account,.bp-legal-page) :is(main#wp--skip-link--target,main)::before,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).single-post main.bp-article-page::before,
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).error404 main.bp-not-found::before{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  top:0!important;
  right:0!important;
  left:0!important;
  height:clamp(330px,31vw,500px)!important;
  box-shadow:inset 0 1px rgba(201,173,118,.72),inset 0 -1px rgba(201,173,118,.72)!important;
  pointer-events:none!important;
}

/* Production correction 19 October: Contact uses a native wrapper rather
   than .bp-wave-opening.  Keep the approved wave on that wrapper after the
   uniform-navy reset above, instead of erasing it with background-image:none. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main :is(.bp-contact-refined,.bp-editorial-contact){
  background-color:var(--bp-navy)!important;
  background-image:var(--bp-wave-overlay),var(--bp-wave-art)!important;
  background-repeat:no-repeat!important;
  background-size:100% clamp(330px,31vw,500px)!important;
  background-position:center top!important;
}

/* Shop: close the wave band with the same top and bottom champagne hairlines
   used on the other pages.  Product spacing is handled by the collection. */
html body.wp-child-theme-balena-pink-child:not(#wpadminbar).woocommerce-shop :is(main#wp--skip-link--target,main)::before{
  box-shadow:inset 0 1px rgba(201,173,118,.72),inset 0 -1px rgba(201,173,118,.72)!important;
}

@media(max-width:760px){
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial.bp-editorial-refined[data-page="limited-edition"] .bp-editorial-hero.bp-wave-opening{
    min-height:280px!important;
    padding-top:48px!important;
    padding-bottom:44px!important;
  }
  html body.wp-child-theme-balena-pink-child.home:not(#wpadminbar) main .bp-editorial[data-page="home"] .hero::before{inset:22% -10% 0 18%!important;opacity:.64!important}
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial .bp-wave-opening::before,
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main .bp-editorial[data-page="storia"] .bp-story-opening::before{background-position:62% center!important}
  html body.wp-child-theme-balena-pink-child:not(#wpadminbar) main :is(.bp-contact-refined,.bp-editorial-contact){background-size:auto 330px!important;background-position:62% top!important}
}
