.sgc-page {
    --sgc-ink: #172532;
    --sgc-muted: #65717c;
    --sgc-line: #dce3e8;
    --sgc-soft: #f4f7f8;
    --sgc-white: #fff;
    --sgc-accent: #1093a2;
    --sgc-accent-dark: #087985;
    --sgc-dark: #142b35;
    color: var(--sgc-ink);
    background: var(--sgc-white);
    overflow: hidden;
}

.sgc-page *,
.sgc-page *::before,
.sgc-page *::after { box-sizing: border-box; }

.sgc-container {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
}

.sgc-hero {
    padding: 44px 0 92px;
    background:
        radial-gradient(circle at 84% 16%, rgba(16,147,162,.14), transparent 31%),
        linear-gradient(180deg, #f7fafb 0%, #ffffff 100%);
    border-bottom: 1px solid var(--sgc-line);
}

.sgc-breadcrumb ol {
    display: flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 56px;
    padding: 0;
    list-style: none;
    font-size: 14px;
    color: var(--sgc-muted);
}

.sgc-breadcrumb li + li::before { content: "/"; margin-right: 10px; color: #aab3ba; }
.sgc-breadcrumb a { color: inherit; text-decoration: none; }
.sgc-breadcrumb a:hover { color: var(--sgc-accent-dark); }

.sgc-hero-grid,
.sgc-intro-grid,
.sgc-seo-grid,
.sgc-cta-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
    gap: 72px;
    align-items: center;
}

.sgc-eyebrow {
    margin: 0 0 18px;
    font-size: 13px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
    color: var(--sgc-accent-dark);
}

.sgc-hero h1,
.sgc-section h2,
.sgc-cta h2 {
    margin: 0;
    letter-spacing: -.04em;
    color: var(--sgc-ink);
}

.sgc-hero h1 {
    max-width: 820px;
    font-size: clamp(42px, 5vw, 72px);
    line-height: .98;
    font-weight: 600;
}

.sgc-hero h1 span { color: var(--sgc-accent-dark); }

.sgc-lead {
    max-width: 760px;
    margin: 28px 0 0;
    font-size: clamp(18px, 2vw, 22px);
    line-height: 1.55;
    color: #4f5e69;
}

.sgc-actions,
.sgc-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 34px;
}

.sgc-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 13px 22px;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    transition: transform .2s ease, background-color .2s ease, border-color .2s ease;
}

.sgc-button:hover { transform: translateY(-2px); }
.sgc-button-primary { background: var(--sgc-accent); color: #fff; }
.sgc-button-primary:hover { background: var(--sgc-accent-dark); color: #fff; }
.sgc-button-outline { border-color: #bfcbd1; color: var(--sgc-ink); background: #fff; }
.sgc-button-outline:hover { border-color: var(--sgc-ink); color: var(--sgc-ink); }

.sgc-brand-card {
    position: relative;
    padding: 38px;
    border: 1px solid #dbe4e8;
    background: rgba(255,255,255,.88);
    box-shadow: 0 26px 70px rgba(20,43,53,.10);
}

.sgc-brand-card::before {
    content: "";
    position: absolute;
    width: 90px;
    height: 6px;
    left: 38px;
    top: 0;
    background: var(--sgc-accent);
}

.sgc-logo-wrap {
    min-height: 100px;
    display: flex;
    align-items: center;
    padding-bottom: 28px;
    border-bottom: 1px solid var(--sgc-line);
}

.sgc-logo-wrap img { display: block; width: min(100%, 360px); height: auto; }
.sgc-brand-card > p { margin: 28px 0 8px; font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--sgc-accent-dark); }
.sgc-brand-card > strong { display: block; font-size: 22px; line-height: 1.25; }
.sgc-brand-card > span { display: block; margin-top: 12px; font-size: 16px; line-height: 1.55; color: var(--sgc-muted); }

.sgc-section { padding: 104px 0; }
.sgc-intro-grid { align-items: start; }
.sgc-section h2,
.sgc-cta h2 { font-size: clamp(34px, 4vw, 54px); line-height: 1.05; font-weight: 600; }
.sgc-copy { font-size: 18px; line-height: 1.75; color: #4d5c67; }
.sgc-copy p { margin: 0 0 22px; }

.sgc-services-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    margin-top: 64px;
    border-top: 1px solid var(--sgc-line);
    border-left: 1px solid var(--sgc-line);
}

.sgc-service-card {
    min-height: 330px;
    padding: 38px;
    border-right: 1px solid var(--sgc-line);
    border-bottom: 1px solid var(--sgc-line);
    background: #fff;
}

.sgc-service-card-accent { background: var(--sgc-dark); color: #fff; }
.sgc-number { display: block; margin-bottom: 54px; font-size: 14px; color: #89959d; }
.sgc-card-kicker { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--sgc-accent-dark); }
.sgc-service-card-accent .sgc-card-kicker { color: #6ed0d9; }
.sgc-service-card h3 { margin: 0 0 18px; font-size: 27px; line-height: 1.16; letter-spacing: -.025em; color: var(--sgc-ink); }
.sgc-service-card-accent h3 { color: #fff; }
.sgc-service-card p:last-child { margin: 0; font-size: 16px; line-height: 1.65; color: var(--sgc-muted); }
.sgc-service-card-accent p:last-child { color: #c8d3d8; }

.sgc-seo-section { background: var(--sgc-soft); border-top: 1px solid var(--sgc-line); border-bottom: 1px solid var(--sgc-line); }
.sgc-seo-grid { align-items: start; }
.sgc-seo-heading > p:last-child { margin: 28px 0 0; font-size: 18px; line-height: 1.72; color: #53616b; }
.sgc-checks { border-top: 1px solid #cdd8dd; }
.sgc-checks > div { display: grid; grid-template-columns: 34px 1fr; gap: 16px; padding: 24px 0; border-bottom: 1px solid #cdd8dd; }
.sgc-checks span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--sgc-accent); color: #fff; font-weight: 700; }
.sgc-checks p { margin: 0; font-size: 16px; line-height: 1.55; color: #53616b; }
.sgc-checks strong { color: var(--sgc-ink); }

.sgc-strength-head { max-width: 820px; }
.sgc-strength-head > p:last-child { margin: 26px 0 0; font-size: 19px; line-height: 1.7; color: var(--sgc-muted); }
.sgc-strength-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0; margin-top: 56px; border-top: 1px solid var(--sgc-line); border-left: 1px solid var(--sgc-line); }
.sgc-strength-grid article { padding: 30px; border-right: 1px solid var(--sgc-line); border-bottom: 1px solid var(--sgc-line); }
.sgc-strength-grid h3 { margin: 0 0 14px; font-size: 21px; line-height: 1.2; color: var(--sgc-ink); }
.sgc-strength-grid p { margin: 0; font-size: 15px; line-height: 1.65; color: var(--sgc-muted); }

.sgc-cta { padding: 86px 0; background: var(--sgc-dark); color: #fff; }
.sgc-cta-grid { align-items: end; }
.sgc-cta .sgc-eyebrow { color: #77d2da; }
.sgc-cta h2 { color: #fff; font-size: clamp(34px, 4vw, 50px); }
.sgc-cta p:not(.sgc-eyebrow) { margin: 22px 0 0; max-width: 760px; font-size: 18px; line-height: 1.65; color: #c9d5d9; }
.sgc-cta-actions { flex-direction: column; align-items: flex-start; margin-top: 0; }
.sgc-button-light { background: #fff; color: var(--sgc-dark); }
.sgc-button-light:hover { color: var(--sgc-dark); }
.sgc-text-link { color: #d9e4e7; text-decoration: none; font-weight: 600; }
.sgc-text-link:hover { color: #fff; }

@media (max-width: 980px) {
    .sgc-hero-grid,
    .sgc-intro-grid,
    .sgc-seo-grid,
    .sgc-cta-grid { grid-template-columns: 1fr; gap: 48px; }
    .sgc-strength-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .sgc-cta-actions { margin-top: 0; }
}

@media (max-width: 680px) {
    .sgc-container { width: min(100% - 30px, 1180px); }
    .sgc-hero { padding: 28px 0 64px; }
    .sgc-breadcrumb ol { margin-bottom: 38px; }
    .sgc-hero h1 { font-size: clamp(38px, 11vw, 52px); }
    .sgc-lead { font-size: 18px; }
    .sgc-actions { flex-direction: column; }
    .sgc-button { width: 100%; }
    .sgc-brand-card { padding: 28px; }
    .sgc-brand-card::before { left: 28px; }
    .sgc-section { padding: 72px 0; }
    .sgc-services-grid { grid-template-columns: 1fr; margin-top: 46px; }
    .sgc-service-card { min-height: auto; padding: 30px; }
    .sgc-number { margin-bottom: 36px; }
    .sgc-strength-grid { grid-template-columns: 1fr; }
    .sgc-cta { padding: 68px 0; }
}
