:root {
    --gw-primary: #18487e;
    --gw-accent: #41dbf2;
    --gw-dark: #081f3f;
    --gw-muted: #5f7087;
    --gw-soft: #f4f8fc;
}

body {
    background: #fff;
}

.gw-section {
    padding: 90px 0;
    background: #fff;
}

.gw-hero-light {
    background: linear-gradient(135deg, #f7fbff 0%, #eef7ff 100%);
}

.gw-container {
    width: min(1140px, calc(100% - 32px));
    margin: 0 auto;
}

.gw-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 28px;
}

.gw-col-25,
.gw-col-33,
.gw-col-50 {
    flex: 1 1 240px;
}

.gw-col-25 { max-width: calc(25% - 21px); }
.gw-col-33 { max-width: calc(33.333% - 19px); }
.gw-col-50 { max-width: calc(50% - 14px); }

.gw-title {
    text-align: center;
    margin-bottom: 34px;
}

.gw-title h1,
.gw-section h2 {
    color: var(--gw-dark);
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.12;
    margin: 0 0 16px;
    font-weight: 800;
}

.gw-title span,
.gw-section h2 span {
    color: var(--gw-primary);
}

.gw-line {
    display: inline-block;
    width: 80px;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--gw-accent), var(--gw-primary));
}

.gw-text,
.gw-card p {
    color: var(--gw-muted);
    font-size: 17px;
    line-height: 1.8;
}

.gw-card {
    background: #fff;
    border: 1px solid #e6eef7;
    border-radius: 12px;
    padding: 26px;
    box-shadow: 0 16px 45px rgba(8, 31, 63, 0.08);
    min-height: 100%;
}

.gw-card h3 {
    color: var(--gw-dark);
    margin: 14px 0 10px;
    font-size: 22px;
}

.gw-card img,
.gw-image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}

.gw-list {
    list-style: none;
    margin: 20px 0 0;
    padding: 0;
}

.gw-list li {
    position: relative;
    padding: 10px 0 10px 34px;
    color: var(--gw-dark);
    font-weight: 600;
}

.gw-list li:before {
    content: "\f00c";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 10px;
    color: var(--gw-primary);
}

.gw-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--gw-accent), var(--gw-primary));
    color: #fff !important;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(24, 72, 126, 0.22);
}

.gw-quote {
    padding: 80px 0;
    background: var(--gw-dark);
    color: #fff;
}

.gw-cta {
    text-align: center;
}

.gw-cta h2 {
    color: #fff;
    margin-bottom: 24px;
}

.gw-btn.secondary {
    background: #fff;
    color: var(--gw-primary) !important;
}

@media (max-width: 900px) {
    .gw-col-25,
    .gw-col-33,
    .gw-col-50 {
        max-width: 100%;
        flex-basis: 100%;
    }

    .gw-section {
        padding: 70px 0;
    }
}
