/* BioHack M12 design collections: scoped to newly generated page sections only.
 * These styles do not own the theme wrapper/header/footer or editor-generated markup.
 */
.bphp-m12-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--bphp-component-radius,18px);box-sizing:border-box;min-height:260px;padding:clamp(24px,5vw,70px);color:inherit;background:var(--bphp-surface,transparent);border:1px solid var(--bphp-line,currentColor);font-family:inherit}
.bphp-m12-hero.bphp-m12-editorial,.bphp-m12-hero.bphp-m12-atlas,.bphp-m12-hero.bphp-m12-wellness{background:var(--bphp-surface,transparent)}
.bphp-m12-hero :is(h1,h2,h3,p),.bphp-m12-hero .wp-block-heading{color:inherit;font-family:inherit;max-width:840px}
.bphp-m12-hero h1{font-size:clamp(2rem,4.3vw,3.55rem);line-height:1.13;margin:.4em 0}
.bphp-m12-hero p{font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.65}
.bphp-m12-section{max-width:none;width:100%;margin:clamp(24px,3.5vw,52px) 0;box-sizing:border-box;min-width:0}
.bphp-m12-columns{display:flex;gap:clamp(18px,2.8vw,34px);align-items:start;flex-wrap:nowrap}
.bphp-m12-columns > .wp-block-column{min-width:0;flex:1 1 0}
.bphp-m12-section :is(h2.wp-block-heading,.wpb_wrapper > h2){font-size:clamp(1.3rem,2.2vw,1.85rem);letter-spacing:-.015em;line-height:1.2}
.bphp-m12-section .bphp-component{max-width:100%;min-width:0}
.bphp-m12-editorial.bphp-m12-section,.bphp-m12-atlas.bphp-m12-section,.bphp-m12-wellness.bphp-m12-section{--bphp-collection-line:var(--bphp-line,currentColor);--bphp-collection-accent:var(--bphp-primary,currentColor)}
.bphp-m12-section :is(.bphp-vc-card,.bphp-vc-evidence,.bphp-archive-card){min-width:0}
/* WPBakery native rows receive classes; do not style other vc_row containers. */
.vc_row.bphp-m12-section{margin-left:0;margin-right:0;max-width:100%}
.vc_row.bphp-m12-hero{margin:0 auto 36px;padding:clamp(30px,5vw,70px)}
/* User controls on the individual native block/widget stay scoped to that component. */
.bphp-component{box-sizing:border-box;min-width:0;max-width:var(--bphp-custom-width,100%);margin-inline:auto;padding:var(--bphp-component-padding,0px);text-align:var(--bphp-content-alignment,left)}
.bphp-component[data-bphp-surface-mode="outlined"]{border:1px solid var(--bphp-line,#cbd9e6);border-radius:var(--bphp-component-radius,16px)}
.bphp-component[data-bphp-surface-mode="elevated"]{background:var(--bphp-surface,#fff);border:1px solid var(--bphp-line,#cbd9e6);border-radius:var(--bphp-component-radius,16px);box-shadow:var(--bphp-shadow-card,0 12px 30px rgba(0,0,0,.08))}
.bphp-component[data-bphp-surface-mode="quiet"]{border:0;box-shadow:none;background:transparent}
.bphp-component .bphp-vc-heading{margin-bottom:var(--bphp-module-gap,24px)}
@media(max-width:767px){
 .bphp-m12-hero{padding:24px 20px;border-radius:16px;min-height:220px}
 .bphp-m12-columns{display:flex;flex-direction:column;gap:18px}
 .bphp-m12-columns>.wp-block-column{width:100%;flex-basis:auto!important}
 .bphp-m12-section{margin:24px auto}
 .bphp-component{padding:var(--bphp-mobile-component-padding,12px)}
 .vc_row.bphp-m12-section>.wpb_column{width:100%;float:none}
}
@media(prefers-reduced-motion:reduce){.bphp-m12-hero *, .bphp-m12-section *{scroll-behavior:auto}}

/* M14: Newly generated pages inherit the theme's palette and fonts. No forced design-collection colors. */
.bphp-theme-page-intro{box-sizing:border-box;margin-block:clamp(1.5rem,3vw,3rem);padding-block:clamp(1rem,2vw,2rem);color:inherit;background:transparent;border:0;box-shadow:none;font-family:inherit}
.bphp-theme-page-intro :is(h1,h2,h3,p){color:inherit;font-family:inherit}
.bphp-theme-page-intro h1{font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.15;letter-spacing:-.025em}
.bphp-theme-page-intro .bphp-theme-page-kicker{font-size:.8rem;letter-spacing:.10em;text-transform:uppercase;font-weight:700;opacity:.72}
.bphp-theme-page-intro .bphp-theme-page-image{margin-top:1.5rem;overflow:hidden;border-radius:clamp(8px,1.4vw,18px)}
.bphp-theme-page-intro .bphp-theme-page-image img{max-width:100%;height:auto;display:block;object-fit:cover}
.bphp-m12-section:not([class*=bphp-m12-editorial]):not([class*=bphp-m12-atlas]):not([class*=bphp-m12-wellness]){color:inherit;font-family:inherit;background:transparent}
