/* GENEESL Hero */
.gs-hero { position: relative; display: flex; align-items: center; width: 100%; min-width: 100%; min-height: 100vh;margin: 0; padding: 0; overflow: hidden; background: #202020; color: #ffffff; }

.gs-hero__background { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; background-image: url('../../images/hero.webp'); background-position: center; background-repeat: no-repeat; background-size: cover; transform: scale(1.015); }

.gs-hero__overlay { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(12,14,17,0.84) 0%, rgba(12,14,17,0.70) 30%, rgba(12,14,17,0.42) 57%, rgba(12,14,17,0.14) 100%); }

.gs-hero__inner { position: relative; z-index: 2; width: min(1320px, calc(100% - 80px)); margin: 0 auto; padding: 170px 0 125px; }

.gs-hero__content { width: 100%; max-width: 980px; }

.gs-hero__title { max-width: 980px; margin: 0; color: #ffffff; font-size: clamp(60px, 5vw, 86px); font-weight: 800; line-height: 1.13; letter-spacing: -0.06em; word-break: keep-all; }

.gs-hero__description { max-width: 760px; margin: 38px 0 0; color: rgba(255,255,255,0.82); font-size: 20px; font-weight: 400; line-height: 1.85; letter-spacing: -0.035em; word-break: keep-all; }

.gs-hero__actions { display: flex; align-items: center; gap: 14px; margin-top: 48px; }

.gs-hero__button { display: inline-flex; align-items: center; justify-content: center; min-width: 160px; height: 56px; padding: 0 28px; border: 1px solid transparent; font-size: 15px; font-weight: 600; line-height: 1; text-decoration: none; transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease; }

.gs-hero__button--primary { border-color: #D63C2B; color: #ffffff; background: #D63C2B; }

.gs-hero__button--primary:hover { border-color: #bd3022; color: #ffffff; background: #bd3022; transform: translateY(-2px); }

.gs-hero__button--secondary { border-color: rgba(255,255,255,0.54); color: #ffffff; background: transparent; }

.gs-hero__button--secondary:hover { border-color: #ffffff; color: #222222; background: #ffffff; transform: translateY(-2px); }

.gs-hero__scroll { position: absolute; right: 40px; bottom: 34px; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 13px; color: rgba(255,255,255,0.55); }

.gs-hero__scroll span { font-size: 10px; font-weight: 600; line-height: 1; letter-spacing: 0.18em; writing-mode: vertical-rl; }

.gs-hero__scroll i { position: relative; display: block; width: 1px; height: 52px; overflow: hidden; background: rgba(255,255,255,0.25); }

.gs-hero__scroll i::after { content: ""; position: absolute; top: -50%; left: 0; width: 1px; height: 50%; background: #D63C2B; animation: gsHeroScroll 1.8s ease-in-out infinite; }

@keyframes gsHeroScroll { 0% { transform: translateY(0); } 100% { transform: translateY(300%); } }


/* Large Desktop */
@media (min-width: 1600px) { .gs-hero__inner { width: min(1380px, calc(100% - 100px)); } .gs-hero__content { max-width: 1020px; } .gs-hero__title { max-width: 1020px; font-size: clamp(68px, 4.5vw, 90px); } }


/* Tablet */
@media (max-width: 1024px) { .gs-hero__inner { width: min(100% - 56px, 1180px); padding: 140px 0 105px; } .gs-hero__content { max-width: 820px; } .gs-hero__title { max-width: 820px; font-size: clamp(50px, 6.5vw, 68px); } .gs-hero__description { max-width: 680px; margin-top: 32px; font-size: 18px; } .gs-hero__actions { margin-top: 42px; } .gs-hero__button { min-width: 150px; height: 53px; padding: 0 24px; font-size: 14px; } .gs-hero__scroll { right: 26px; } }


/* Mobile */
@media (max-width: 760px) {.gs-hero {min-height: 0vh;}.gs-hero__background { background-position: 58% center; transform: scale(1.01); } .gs-hero__overlay { background: linear-gradient(90deg, rgba(12,14,17,0.84) 0%, rgba(12,14,17,0.68) 68%, rgba(12,14,17,0.42) 100%); } .gs-hero__inner { width: min(100% - 40px, 1180px); padding: 125px 0 90px; } .gs-hero__content { max-width: 100%; } .gs-hero__title { max-width: 100%; font-size: clamp(39px, 11vw, 54px); line-height: 1.18; letter-spacing: -0.055em; } .gs-hero__description { max-width: 100%; margin-top: 26px; font-size: 16px; line-height: 1.75; } .gs-hero__description br { display: none; } .gs-hero__actions { gap: 10px; margin-top: 35px; } .gs-hero__button { min-width: 0; height: 49px; padding: 0 20px; font-size: 13px; } .gs-hero__scroll { display: none; } }


/* Small Mobile */
@media (max-width: 520px) { .gs-hero__inner { width: calc(100% - 36px); padding: 115px 0 72px; } .gs-hero__title { font-size: clamp(36px, 10.8vw, 48px); } .gs-hero__description { font-size: 15px; } .gs-hero__actions { align-items: stretch; gap: 8px; } .gs-hero__button { height: 48px; padding: 0 17px; font-size: 12px; } }