/* HallowixStudios V29 - recurring polygon atmosphere for key public pages. */
body.hx-polygon-v29{--hx29-gold:#D9B36C;--hx29-moss:#5C7A5E;--hx29-plum:#8B4C63}
body.hx-polygon-v29::before,body.hx-polygon-v29::after{opacity:.9!important;filter:saturate(118%) blur(.15px)!important}
body.hx-polygon-v29::before{background:linear-gradient(145deg,color-mix(in srgb,var(--hx29-moss) 31%,transparent),color-mix(in srgb,var(--hx29-gold) 12%,transparent))!important;box-shadow:0 0 110px color-mix(in srgb,var(--hx29-moss) 9%,transparent)}
body.hx-polygon-v29::after{background:linear-gradient(145deg,color-mix(in srgb,var(--hx29-plum) 29%,transparent),color-mix(in srgb,var(--hx29-moss) 13%,transparent))!important;box-shadow:0 0 120px color-mix(in srgb,var(--hx29-plum) 8%,transparent)}

/* Portfolio must never flatten the shared polygons behind an opaque main. */
body.hx-portfolio-v28.hx-polygon-v29 .portfolio-v21-main{background:
 radial-gradient(760px 440px at 22% 12%,color-mix(in srgb,var(--hx29-gold) 9%,transparent),transparent 72%),
 radial-gradient(760px 460px at 86% 54%,color-mix(in srgb,var(--hx29-plum) 8%,transparent),transparent 74%),
 color-mix(in srgb,var(--bg) 82%,transparent)!important;backdrop-filter:blur(2px)}
body.hx-portfolio-v28.hx-polygon-v29 .portfolio-v21-main::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;background:
 linear-gradient(145deg,transparent 0 20%,color-mix(in srgb,var(--hx29-moss) 7%,transparent) 20.2% 38%,transparent 38.2%),
 linear-gradient(28deg,transparent 0 66%,color-mix(in srgb,var(--hx29-plum) 6%,transparent) 66.2% 79%,transparent 79.2%);opacity:.72}

/* Product sections keep the recurring Hallowix polygon language without sacrificing readability. */
body.product-detail-page.hx-polygon-v29{background:var(--bg)!important}
body.product-detail-page.hx-polygon-v29 .pd-overview,body.product-detail-page.hx-polygon-v29 .pd-related,body.product-detail-page.hx-polygon-v29 .pd-reviews{background:color-mix(in srgb,var(--bg) 84%,transparent)!important;position:relative;isolation:isolate}
body.product-detail-page.hx-polygon-v29 .pd-overview::before,body.product-detail-page.hx-polygon-v29 .pd-related::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
 radial-gradient(720px 380px at 8% 22%,color-mix(in srgb,var(--hx29-moss) 12%,transparent),transparent 72%),
 radial-gradient(620px 380px at 92% 70%,color-mix(in srgb,var(--hx29-plum) 9%,transparent),transparent 74%),
 linear-gradient(135deg,transparent 0 63%,color-mix(in srgb,var(--hx29-gold) 4%,transparent) 63.2% 73%,transparent 73.2%)}

@media(max-width:720px){body.hx-polygon-v29::before{left:-42vw!important;width:112vw!important;height:112vw!important}body.hx-polygon-v29::after{right:-44vw!important;width:112vw!important;height:112vw!important}}
body.product-detail-page.hx-polygon-v29 .pd-description,body.product-detail-page.hx-polygon-v29 .pd-reviews{position:relative;isolation:isolate;overflow:hidden}
body.product-detail-page.hx-polygon-v29 .pd-description::before,body.product-detail-page.hx-polygon-v29 .pd-reviews::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:
 linear-gradient(145deg,transparent 0 18%,color-mix(in srgb,var(--hx29-moss) 9%,transparent) 18.2% 34%,transparent 34.2%),
 linear-gradient(31deg,transparent 0 68%,color-mix(in srgb,var(--hx29-plum) 8%,transparent) 68.2% 82%,transparent 82.2%),
 radial-gradient(640px 320px at 82% 22%,color-mix(in srgb,var(--hx29-gold) 8%,transparent),transparent 72%);opacity:.72}
