.home-content { width: 100%; max-width: none; margin: 0; padding: 0; }
.site-header + .home-content { margin-top: 0; padding-top: 0; }
.home-hero { position: relative; display: flex; width: 100vw; max-width: none; min-height: 402px; align-items: center; flex-direction: column; margin: 0; padding: 15px 0 20px; overflow: hidden; background: #fff; color: #087ff5; text-align: center; }
.home-hero h1 { width: min(100%, 1580px); margin: 0 auto; color: #087ff5 !important; font-family: 'DM Sans', system-ui, sans-serif; font-size: clamp(2.8rem, 3.45vw, 4.1rem); font-weight: 700; letter-spacing: .005em; line-height: 1.02; text-wrap: balance; }
.home-hero__divider { width: 100vw; height: 4px; margin: 29px 0 28px; background: #087ff5; }
.home-hero__circles { width: clamp(12rem, 14.7vw, 17.5rem); height: auto; object-fit: contain; }

@media (max-width: 900px) {
	.home-hero { min-height: 350px; }
	.home-hero h1 { width: calc(100% - 32px); font-size: clamp(2.35rem, 7vw, 3.6rem); }
	.home-hero__divider { margin: 24px 0; }
	.home-hero__circles { width: clamp(10rem, 26vw, 14rem); }
}

@media (max-width: 620px) {
	.home-hero { min-height: 320px; padding: 36px 20px 56px; }
	.home-hero h1 { width: 100%; font-size: clamp(1.45rem, 5.35vw, 1.65rem); letter-spacing: .045em; line-height: .98; }
	.home-hero__divider { width: 100%; height: 4px; margin: 12px 0 10px; }
	.home-hero__circles { width: 7.5rem; }
}

@media (max-width: 420px) {
	.home-hero { min-height: 272px; padding: 20px 26px 22px; }
	.home-hero h1 { width: min(100%, 330px); font-size: 1.3rem; letter-spacing: .05em; line-height: 1.08; }
	.home-hero__divider { height: 4px; margin: 10px 0; }
	.home-hero__circles { width: 5.5rem; }
}
