/* Layer6 Blocks shared runtime layer. Block-specific CSS is added per block. */
:where(.wp-block-layer6-blocks-section,.wp-block-layer6-blocks-container){box-sizing:border-box}
.has-layer6-animation-lift{transition:transform var(--layer6-transition,250ms ease),box-shadow var(--layer6-transition,250ms ease)}
.has-layer6-animation-lift:hover{transform:translateY(-6px)}
.has-layer6-animation-glow{transition:box-shadow var(--layer6-transition,250ms ease)}
.has-layer6-animation-glow:hover{box-shadow:0 0 36px color-mix(in srgb,var(--layer6-accent,#24c9f2) 22%,transparent)}
@keyframes layer6-fade{from{opacity:0}to{opacity:1}}
@keyframes layer6-slide{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes layer6-zoom{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@keyframes layer6-pulse{50%{transform:scale(1.015)}}
.has-layer6-animation-fade{animation:layer6-fade .55s ease both}
.has-layer6-animation-slide{animation:layer6-slide .55s ease both}
.has-layer6-animation-zoom{animation:layer6-zoom .45s ease both}
.has-layer6-animation-pulse{animation:layer6-pulse 1.8s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.has-layer6-animation-lift,.has-layer6-animation-glow,.has-layer6-animation-fade,.has-layer6-animation-slide,.has-layer6-animation-zoom,.has-layer6-animation-pulse{animation:none!important;transition:none!important;transform:none!important}}

/* Alpha3 visual-parity defaults. Themes may override every token. */
:root{
 --layer6-block-content-max:1180px;
 --layer6-block-section-space:clamp(2.5rem,6vw,5.5rem);
 --layer6-block-card-min:180px;
}
.wp-block-layer6-blocks-hero,
.wp-block-layer6-blocks-section{
 box-sizing:border-box;
}
.wp-block-layer6-blocks-section{
 margin-block:var(--layer6-block-section-space);
}
.wp-block-layer6-blocks-container{
 max-width:var(--layer6-block-content-max);
 margin-inline:auto;
}

/* Alpha4: normalize spacing between migrated blocks without fighting theme typography. */
:root{
 --layer6-block-content-max:1180px;
 --layer6-block-grid-gap:1rem;
 --layer6-block-section-space:clamp(2rem,4vw,4rem);
}
.wp-block-layer6-blocks-section{
 margin-block:var(--layer6-block-section-space)!important;
 padding-block:0;
}
.wp-block-layer6-blocks-container.layer6-container{
 gap:var(--layer6-block-grid-gap);
}
.wp-block-layer6-blocks-container > .wp-block-layer6-blocks-feature-card,
.wp-block-layer6-blocks-container > .wp-block-layer6-blocks-service-card{
 margin:0!important;
}
