/* Structural block styling; theme fonts, colors and button styles remain inherited. */
.hero-section { position:relative; overflow:hidden; min-height:var(--cz-hero-height,480px); }
.hero-section .hero-slider { position:relative; width:100%; min-height:var(--cz-hero-height,480px); }
.hero-section .hero-slide { display:none; position:relative; min-height:var(--cz-hero-height,480px); align-items:center; }
.hero-section .hero-slide.is-active { display:flex; }
.hero-section :is(.hero-bg,.hero-bg-video,.hero-bg-video-wrapper,.hero-bg-iframe) { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border:0; }
.hero-section .hero-overlay { position:absolute; inset:0; pointer-events:none; }
.hero-section .hero-content { position:relative; z-index:2; width:100%; padding:32px 24px; }
.hero-section .hero-slider__controls-arrows { position:absolute; inset:50% 16px auto; display:flex; justify-content:space-between; pointer-events:none; z-index:3; }
.hero-section .hero-slider__arrow { pointer-events:auto; border:0; border-radius:50%; width:40px; height:40px; background:#fff; color:#171717; font-size:24px; }
.hero-section .hero-slider__controls { position:absolute; bottom:16px; left:0; right:0; z-index:3; }
.hero-section .hero-slider__dots { display:flex; justify-content:center; gap:8px; }
.hero-section .hero-slider__dot { width:12px; height:12px; padding:0; border:1px solid #fff; border-radius:50%; background:#555; }
.hero-section .hero-slider__dot.is-active { background:#fff; }
.fx-testimonials__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.fx-testimonials__grid--cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.fx-testimonials__grid--cols-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.fx-testimonials__track--slider { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; }
.fx-testimonials__card { margin:0; padding:24px; border:1px solid #ddd; border-radius:8px; }
.fx-testimonials__card--slide { flex:0 0 min(80vw,360px); scroll-snap-align:start; }
.fx-testimonials__avatar { width:48px; height:48px; border-radius:50%; object-fit:cover; }
.fx-testimonials__author,.fx-testimonials__role { display:block; }
@media(max-width:767px) { .fx-testimonials__grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .hero-section * { animation:none!important; transition:none!important; } }
