.gi-hero { position: relative; background: #000000; color: #ffffff; overflow: hidden; height: 660px; }
.gi-hero__slides { position: relative; width: 100%; height: 100%; }
.gi-hero__slide { position: absolute; inset: 0; opacity: 0; pointer-events: none; transition: opacity 1s ease; }
.gi-hero__slide--active { opacity: 1; pointer-events: auto; }
.gi-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; filter: contrast(1.02); }
.gi-hero__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.62) 46%, rgba(0,0,0,.25) 100%); }
.gi-hero__text-wrap { position: relative; height: 100%; max-width: 1280px; margin: 0 auto; padding: 0 32px; display: flex; flex-direction: column; justify-content: center; }
.gi-hero__text { max-width: 680px; }
.gi-hero__eyebrow { font-family: 'Archivo', sans-serif; font-size: 11.5px; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: rgba(255,255,255,.6); }
.gi-hero__title { margin-top: 22px; font-family: 'Barlow Condensed', sans-serif; font-weight: 600; font-size: clamp(44px, 5.4vw, 78px); line-height: .98; letter-spacing: .005em; }
.gi-hero__body { margin-top: 22px; font-size: 18px; line-height: 1.7; color: rgba(255,255,255,.72); max-width: 520px; font-family: 'Archivo', sans-serif; }

.gi-hero__bottom { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; }
.gi-hero__bottom-inner { max-width: 1280px; margin: 0 auto; padding: 0 32px 46px; display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; flex-wrap: wrap; }

.gi-hero__buttons { display: flex; gap: 14px; }
.gi-hero__button { display: inline-block; font-family: 'Archivo', sans-serif; padding: 18px 34px; font-weight: 500; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; text-decoration: none; transition: opacity .3s ease, border-color .3s ease; }
.gi-hero__button--primary { background: #ffffff; color: #000000; }
.gi-hero__button--primary:hover { opacity: .75; }
.gi-hero__button--secondary { border: 1px solid rgba(255,255,255,.45); color: #ffffff; background: transparent; }
.gi-hero__button--secondary:hover { border-color: #ffffff; }

.gi-hero__dots { display: flex; gap: 18px; }
.gi-hero__dot { width: 58px; height: 2px; background: rgba(255,255,255,.3); border: 0; padding: 0; cursor: pointer; transition: background .3s ease; }
.gi-hero__dot--active { background: #ffffff; }

@media (max-width: 900px) {
	.gi-hero { height: 460px; }
	.gi-hero__bottom-inner { padding-bottom: 36px; }
}

@media (max-width: 600px) {
	.gi-hero { height: 400px; }
	.gi-hero__text-wrap { padding: 0 20px; }
	.gi-hero__text { max-width: 100%; }
	.gi-hero__body { font-size: 15px; }
	.gi-hero__bottom-inner { padding: 0 20px 28px; flex-direction: column; align-items: flex-start; gap: 20px; }
	.gi-hero__buttons { flex-direction: column; align-items: stretch; width: 100%; }
	.gi-hero__button { width: 100%; text-align: center; box-sizing: border-box; }
	.gi-hero__dots { gap: 10px; }
	.gi-hero__dot { width: 36px; }
}
