/* SEO landing hero + feature cards */
.sl-hero {
    position: relative;
    overflow: hidden;
    padding: 92px 0 56px;
    color: #fff;
    background:
        radial-gradient(720px 340px at 88% -8%, rgba(201, 169, 110, .28), transparent 62%),
        radial-gradient(520px 280px at -8% 110%, rgba(45, 120, 90, .2), transparent 55%),
        linear-gradient(155deg, #1c4638 0%, #163a2d 55%, #0e241c 100%);
}
.sl-hero::before {
    content: "";
    position: absolute;
    right: -140px;
    top: -140px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px solid rgba(201, 169, 110, .2);
    box-shadow: 0 0 0 56px rgba(201, 169, 110, .04), 0 0 0 112px rgba(201, 169, 110, .03);
    pointer-events: none;
}
.sl-hero .container { position: relative; z-index: 1; }
.sl-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 18px;
    padding: 6px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(201, 169, 110, .35);
    color: #e2c890;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.sl-hero h1 {
    margin: 0;
    max-width: 820px;
    color: #fff;
    font-family: var(--font-display);
    font-size: clamp(2.1rem, 4.8vw, 3.6rem);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -.02em;
}
.sl-features {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 40px;
}
.sl-card {
    padding: 24px 22px 22px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(201, 169, 110, .2);
    box-shadow: 0 18px 40px -28px rgba(0, 0, 0, .7);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.sl-card__icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    margin-bottom: 16px;
    border-radius: 14px;
    background: rgba(201, 169, 110, .14);
    color: #e2c890;
    font-size: 1.15rem;
}
.sl-card h3 {
    margin: 0 0 8px;
    color: #fff;
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
}
.sl-card p {
    margin: 0;
    color: rgba(255, 255, 255, .7);
    font-size: .92rem;
    line-height: 1.6;
}
@media (max-width: 900px) {
    .sl-hero { padding: 76px 0 40px; }
    .sl-features { grid-template-columns: 1fr; }
}
