@font-face{font-family:Outfit;src:url('/fonts/Outfit.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/Manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:#fff;font-family:Manrope,sans-serif}
.gateway{min-height:100svh;display:flex;flex-direction:column}
.group-identity{display:flex;justify-content:center;align-items:center;gap:30px;padding:13px max(5vw,22px);background:#fff;color:#171717;border-bottom:1px solid #e8eaf1}
.group-identity img{width:285px;max-width:42vw;height:auto;display:block;flex:0 0 auto}
.identity-details{padding:9px 0 9px 28px;border-left:3px solid #d9272e;max-width:620px;text-align:left}
.identity-line{font-size:14px;line-height:1.35;font-weight:850;margin:0;color:#171717;letter-spacing:.01em}
.identity-line+ .identity-line{margin-top:3px}
.identity-line:nth-child(2),.identity-line:nth-child(3){color:#243b9c}
.gateway-hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;flex:1;padding:52px max(6vw,24px);min-height:650px;overflow:hidden;background:#1a202b;text-align:center}
.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero-image{object-fit:cover;object-position:center 50%;animation:arrive 1.2s ease-out both}
.hero-shade{background:linear-gradient(180deg,#061023c7,#07101f7a 42%,#061023df),linear-gradient(90deg,#061023a6,#10172530,#061023a6)}
.hero-content{width:100%;max-width:1120px;margin:auto;display:flex;flex-direction:column;align-items:center}
.eyebrow{font-size:12px;letter-spacing:.24em;font-weight:850;margin:0 0 24px;text-shadow:0 2px 18px #000}
h1{font-family:Outfit,sans-serif;font-size:clamp(58px,7vw,106px);font-weight:650;letter-spacing:0;line-height:.98;margin:0;text-shadow:0 8px 34px #000}
h1 em{font-family:Georgia,serif;font-weight:400}
.hero-intro{font-size:17px;line-height:1.7;margin:26px 0 42px;color:#f5f6fb;max-width:520px;text-shadow:0 2px 16px #000}
.brand-choices{display:grid;grid-template-columns:1fr 1fr;gap:18px;width:min(960px,100%)}
.brand-choice{color:#fff;text-decoration:none;display:flex;flex-direction:column;text-align:left;padding:27px 30px;border:1px solid #ffffff4a;transition:transform .25s,background .25s,box-shadow .25s;position:relative;box-shadow:0 22px 60px #00000040}
.construction{background:#c72632}
.sales{background:#243b9c}
.brand-choice:hover{transform:translateY(-5px);box-shadow:0 30px 76px #00000054}
.construction:hover{background:#ae202b}
.sales:hover{background:#1b2e81}
.brand-choice:focus-visible{outline:3px solid white;outline-offset:5px}
.choice-type{font-size:12px;letter-spacing:.14em;font-weight:850}
.choice-name{font-family:Outfit;font-size:clamp(27px,2.5vw,38px);font-weight:650;letter-spacing:0;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:15px 0 8px}
.choice-name b{font-size:32px;font-weight:300;transition:transform .25s}
.brand-choice:hover b{transform:translate(3px,-3px)}
.choice-description{font-size:13px;line-height:1.5;color:#fff}
@keyframes arrive{from{transform:scale(1.025);opacity:.6}to{transform:scale(1);opacity:1}}
@media(min-width:1600px){.gateway-hero{padding-top:80px;padding-bottom:80px}}
@media(max-width:900px){.group-identity{gap:20px}.group-identity img{width:250px}.identity-line{font-size:12px}.gateway-hero{min-height:620px}}
@media(max-width:650px){.group-identity{flex-direction:column;gap:8px;padding:10px 20px;text-align:center}.group-identity img{width:245px;max-width:100%}.identity-details{border-left:0;border-top:3px solid #d9272e;padding:9px 0 0;text-align:center}.identity-line{font-size:11px;line-height:1.35}.gateway-hero{padding:36px 22px;min-height:0;align-items:flex-start}.hero-image{object-position:center 46%}.eyebrow{font-size:9px;margin-bottom:18px}h1{font-size:clamp(42px,12vw,62px);line-height:1}.hero-intro{font-size:13px;margin:20px 0 28px;max-width:300px}.brand-choices{grid-template-columns:1fr;gap:12px}.brand-choice{padding:19px 22px}.choice-name{font-size:28px;margin:10px 0 5px}.choice-type{font-size:10.5px;letter-spacing:.12em}.choice-description{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none}.brand-choice,.choice-name b{transition:none}.brand-choice:hover,.brand-choice:hover b{transform:none}}
