.sggib-blog {
    --sggib-ink: #07142a;
    --sggib-muted: #5f6f88;
    --sggib-green: #35ae79;
    --sggib-deep: #121f31;
    --sggib-line: #dce5ef;
    --sggib-soft: #f5f8f8;
    --sggib-card: #ffffff;
    color: var(--sggib-ink);
    font-family: inherit;
    letter-spacing: 0;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    max-width: 100vw;
    overflow-x: clip;
    width: 100vw;
}

.sggib-blog *,
.sggib-blog *::before,
.sggib-blog *::after {
    box-sizing: border-box;
}

.sggib-blog a {
    color: inherit;
    text-decoration: none;
}

.sggib-hero {
    background:
        linear-gradient(90deg, rgba(9, 18, 30, .98) 0%, rgba(9, 18, 30, .88) 34%, rgba(9, 18, 30, .48) 100%),
        linear-gradient(135deg, rgba(255,255,255,.08) 0 1px, transparent 1px 110px),
        radial-gradient(circle at 78% 50%, rgba(53, 174, 121, .18), transparent 26%),
        linear-gradient(120deg, #182437 0%, #283346 48%, #0f1724 100%);
    border-top: 3px solid var(--sggib-green);
    min-height: 218px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.sggib-hero::after {
    background:
        linear-gradient(rgba(0,0,0,.18), rgba(0,0,0,.18)),
        repeating-linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,.06) 1px, transparent 1px, transparent 88px);
    content: "";
    inset: 0;
    opacity: .5;
    pointer-events: none;
    position: absolute;
}

.sggib-hero-inner {
    align-items: center;
    display: grid;
    gap: 68px;
    grid-template-columns: minmax(280px, 480px) minmax(360px, 1fr);
    margin: 0 auto;
    max-width: 1160px;
    min-height: 218px;
    padding: 32px 20px 36px;
    position: relative;
    z-index: 1;
}

.sggib-eyebrow,
.sggib-featured-copy > p,
.sggib-card-body > p {
    color: var(--sggib-green);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.6px;
    line-height: 1.2;
    margin: 0 0 9px;
    text-transform: uppercase;
}

.sggib-hero h1 {
    color: #fff;
    font-size: clamp(36px, 4vw, 58px);
    font-weight: 900;
    line-height: .92;
    margin: 0 0 18px;
    max-width: 520px;
    text-transform: uppercase;
}

.sggib-hero h1 span {
    color: var(--sggib-green);
}

.sggib-hero-text {
    color: rgba(255,255,255,.92);
    font-size: 15px;
    line-height: 1.55;
    margin: 0;
    max-width: 560px;
}

.sggib-search-panel {
    align-self: center;
    position: relative;
}

.sggib-search {
    align-items: center;
    background: rgba(255,255,255,.97);
    border: 1px solid rgba(255,255,255,.6);
    border-radius: 8px;
    box-shadow: 0 18px 36px rgba(0,0,0,.2);
    display: flex;
    gap: 12px;
    height: 48px;
    padding: 0 16px;
}

.sggib-search span,
.sggib-hot-icon,
.sggib-mail-icon {
    border: 2px solid currentColor;
    border-radius: 50%;
    color: var(--sggib-ink);
    display: inline-block;
    height: 16px;
    position: relative;
    width: 16px;
}

.sggib-search span::after,
.sggib-hot-icon::after {
    background: currentColor;
    border-radius: 1px;
    content: "";
    height: 7px;
    position: absolute;
    right: -5px;
    top: 10px;
    transform: rotate(45deg);
    width: 2px;
}

.sggib-search input {
    background: transparent;
    border: 0;
    color: var(--sggib-ink);
    flex: 1;
    font: inherit;
    font-size: 14px;
    min-width: 0;
    outline: 0;
}

.sggib-topic-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.sggib-topic-pills a,
.sggib-more-topics {
    align-items: center;
    background: rgba(10, 20, 34, .78);
    border: 1px solid rgba(255,255,255,.34);
    border-radius: 4px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    height: 36px;
    justify-content: center;
    padding: 0 17px;
    white-space: nowrap;
}

.sggib-topic-pills .is-active {
    background: var(--sggib-green);
    border-color: var(--sggib-green);
}

.sggib-more-topics span {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    height: 7px;
    margin-left: 11px;
    transform: rotate(45deg) translateY(-2px);
    width: 7px;
}

.sggib-topic-menu {
    background: #fff;
    border: 1px solid var(--sggib-line);
    border-radius: 6px;
    box-shadow: 0 18px 40px rgba(7, 20, 42, .14);
    display: none;
    padding: 8px;
    position: absolute;
    right: 0;
    top: 108px;
    width: 220px;
    z-index: 5;
}

.sggib-topic-menu.is-open {
    display: grid;
    gap: 4px;
}

.sggib-topic-menu a {
    border-radius: 4px;
    color: var(--sggib-ink);
    font-size: 13px;
    font-weight: 700;
    padding: 10px;
}

.sggib-topic-menu a:hover {
    background: #eef8f3;
}

.sggib-shell {
    background: #fff;
    margin: 0 auto;
    max-width: 1160px;
    padding: 24px 20px 0;
    width: 100%;
}

.sggib-content-grid {
    align-items: start;
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1fr) 350px;
}

.sggib-content-grid.sggib-no-sidebar {
    grid-template-columns: 1fr;
}

.sggib-section-title,
.sggib-section-row {
    align-items: center;
    display: flex;
    gap: 10px;
}

.sggib-section-row {
    justify-content: space-between;
    margin-top: 22px;
}

.sggib-section-title span {
    background: var(--sggib-green);
    display: inline-block;
    height: 14px;
    width: 3px;
}

.sggib-section-title h2,
.sggib-section-row h2,
.sggib-side-card h2 {
    color: var(--sggib-ink);
    font-size: 15px;
    font-weight: 900;
    letter-spacing: .6px;
    line-height: 1.2;
    margin: 0;
    text-transform: uppercase;
}

.sggib-section-row > a,
.sggib-side-link,
.sggib-recommendations button {
    color: #21875d;
    font-size: 12px;
    font-weight: 800;
}

.sggib-featured {
    background: var(--sggib-card);
    border: 1px solid var(--sggib-line);
    border-radius: 8px;
    box-shadow: 0 18px 40px rgba(7, 20, 42, .1);
    display: grid;
    grid-template-columns: 55% 45%;
    margin: 16px 0 18px;
    min-height: 250px;
    overflow: hidden;
}

.sggib-featured-media,
.sggib-featured-image,
.sggib-card-image,
.sggib-trend-image,
.sggib-recommendation-image {
    display: block;
    overflow: hidden;
    position: relative;
}

.sggib-featured-image,
.sggib-card-image,
.sggib-trend-image,
.sggib-recommendation-image,
.sggib-single-feature-image {
    background-position: center;
    background-size: cover;
}

.sggib-featured-image[style],
.sggib-card-image[style],
.sggib-trend-image[style],
.sggib-recommendation-image[style],
.sggib-single-feature-image[style] {
    background-color: #f3f6f8;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.sggib-featured-image {
    height: 100%;
    min-height: 250px;
}

.sggib-img-design {
    background:
        linear-gradient(180deg, rgba(7,20,42,.05), rgba(7,20,42,.18)),
        linear-gradient(125deg, #8db09e 0%, #f1d7bc 22%, #293647 23% 29%, #dbe5e8 30% 46%, #1e3146 47% 55%, #9bb682 56% 100%);
}

.sggib-img-bifold {
    background:
        linear-gradient(180deg, rgba(7,20,42,.05), rgba(7,20,42,.2)),
        linear-gradient(110deg, #d8e2e2 0 30%, #16314a 31% 36%, #87a993 37% 48%, #14233a 49% 54%, #ced7d4 55% 100%);
}

.sggib-img-home {
    background:
        linear-gradient(180deg, rgba(7,20,42,.05), rgba(7,20,42,.2)),
        linear-gradient(140deg, #bfd0c3 0 16%, #27364a 17% 24%, #dbc3a7 25% 45%, #13253b 46% 53%, #78976f 54% 100%);
}

.sggib-img-installer {
    background:
        linear-gradient(180deg, rgba(7,20,42,.04), rgba(7,20,42,.22)),
        linear-gradient(115deg, #222d3a 0 26%, #5e756f 27% 42%, #d8dfe2 43% 76%, #0c1828 77% 100%);
}

.sggib-img-garage {
    background:
        linear-gradient(180deg, rgba(7,20,42,.04), rgba(7,20,42,.22)),
        linear-gradient(120deg, #c8d2cf 0 16%, #27384c 17% 24%, #88918b 25% 64%, #111f32 65% 100%);
}

.sggib-img-window {
    background:
        linear-gradient(180deg, rgba(7,20,42,.04), rgba(7,20,42,.2)),
        linear-gradient(130deg, #e3eceb 0 25%, #1b3046 26% 31%, #7ca381 32% 50%, #15283f 51% 56%, #d3ddd9 57% 100%);
}

.sggib-featured-copy {
    padding: 30px 30px 28px;
}

.sggib-featured-copy h2 {
    font-size: 24px;
    font-weight: 900;
    line-height: 1.05;
    margin: 0 0 13px;
    max-width: 360px;
}

.sggib-featured-copy > div {
    color: #4e6078;
    font-size: 14px;
    line-height: 1.48;
}

.sggib-author-row {
    align-items: center;
    display: flex;
    gap: 10px;
    margin: 18px 0 13px;
}

.sggib-avatar {
    align-items: center;
    background: #dbe7e2;
    border-radius: 50%;
    color: var(--sggib-ink);
    display: inline-flex;
    font-size: 10px;
    font-weight: 900;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.sggib-author-row span:last-child {
    color: var(--sggib-ink);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.3;
}

.sggib-author-row small,
.sggib-card-body footer,
.sggib-card-body > div,
.sggib-recommendation small {
    color: var(--sggib-muted);
}

.sggib-read-link {
    color: #21875d;
    font-size: 13px;
    font-weight: 900;
}

.sggib-card-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 14px;
}

.sggib-article-card {
    background: #fff;
    border: 1px solid var(--sggib-line);
    border-radius: 5px;
    box-shadow: 0 10px 26px rgba(7, 20, 42, .06);
    min-width: 0;
    overflow: hidden;
}

.sggib-card-image {
    aspect-ratio: 16 / 9;
}

.sggib-card-body {
    padding: 14px 14px 12px;
}

.sggib-card-body > p {
    font-size: 9px;
    margin-bottom: 7px;
}

.sggib-card-body h3 {
    font-size: 15px;
    font-weight: 900;
    line-height: 1.16;
    margin: 0 0 9px;
}

.sggib-card-body > div {
    display: -webkit-box;
    font-size: 12px;
    line-height: 1.42;
    margin: 0 0 16px;
    min-height: 51px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.sggib-card-body footer {
    align-items: center;
    display: flex;
    font-size: 11px;
    justify-content: space-between;
}

.sggib-card-body button {
    background: transparent;
    border: 1px solid #8a9bb1;
    border-radius: 2px 2px 4px 4px;
    cursor: pointer;
    height: 18px;
    position: relative;
    width: 14px;
}

.sggib-card-body button.is-saved {
    background: #e4f7ef;
    border-color: var(--sggib-green);
}

.sggib-category-title {
    margin-top: 24px;
}

.sggib-category-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin: 14px 0 0;
}

.sggib-category {
    align-items: start;
    border: 1px solid var(--sggib-line);
    border-radius: 5px;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
    min-height: 112px;
    padding: 14px;
}

.sggib-category-icon {
    border: 2px solid #46b883;
    border-radius: 7px;
    display: block;
    height: 28px;
    position: relative;
    width: 28px;
}

.sggib-category-icon::before {
    background: #46b883;
    border-radius: 50%;
    content: "";
    height: 7px;
    left: 8px;
    position: absolute;
    top: 8px;
    width: 7px;
}

.sggib-category strong {
    font-size: 12px;
    font-weight: 900;
    line-height: 1.18;
    text-transform: uppercase;
    word-break: normal;
}

.sggib-category small {
    color: var(--sggib-muted);
    font-size: 12px;
    line-height: 1.35;
}

.sggib-side-card {
    border: 1px solid var(--sggib-line);
    border-radius: 5px;
    box-shadow: 0 10px 26px rgba(7, 20, 42, .04);
    margin-bottom: 22px;
    padding: 18px;
}

.sggib-side-card h2 {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 16px;
}

.sggib-hot-icon {
    border-color: #31a873;
    color: #31a873;
    height: 14px;
    width: 14px;
}

.sggib-mail-icon {
    border-color: #31a873;
    border-radius: 2px;
    color: #31a873;
    height: 18px;
    width: 24px;
}

.sggib-mail-icon::before,
.sggib-mail-icon::after {
    background: #31a873;
    content: "";
    height: 1px;
    left: 3px;
    position: absolute;
    top: 8px;
    transform: rotate(28deg);
    width: 11px;
}

.sggib-mail-icon::after {
    left: auto;
    right: 3px;
    transform: rotate(-28deg);
}

.sggib-trending-list {
    display: grid;
    gap: 13px;
}

.sggib-trend {
    display: grid;
    gap: 12px;
    grid-template-columns: 72px minmax(0, 1fr);
}

.sggib-trend-image {
    border-radius: 4px;
    height: 47px;
}

.sggib-trend strong {
    display: block;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
}

.sggib-trend small {
    color: #21875d;
    display: block;
    font-size: 11px;
    margin-top: 4px;
}

.sggib-side-link {
    display: block;
    margin-top: 18px;
    text-align: center;
}

.sggib-newsletter {
    text-align: center;
}

.sggib-newsletter p {
    color: var(--sggib-muted);
    font-size: 13px;
    line-height: 1.4;
    margin: 0 auto 16px;
    max-width: 240px;
}

.sggib-newsletter form {
    display: grid;
    gap: 9px;
}

.sggib-newsletter input {
    border: 1px solid var(--sggib-line);
    border-radius: 3px;
    font: inherit;
    font-size: 12px;
    height: 34px;
    padding: 0 10px;
}

.sggib-newsletter button {
    background: var(--sggib-green);
    border: 0;
    border-radius: 3px;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 11px;
    font-weight: 900;
    height: 32px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.sggib-newsletter small,
.sggib-form-status {
    color: var(--sggib-muted);
    font-size: 11px;
}

.sggib-form-status {
    min-height: 14px;
}

.sggib-recommendations {
    background: linear-gradient(90deg, #eef8f5, #f7fbfa);
    margin: 28px -20px 0;
    padding: 18px 20px 22px;
}

.sggib-recommendations .sggib-section-row {
    margin: 0 0 14px;
}

.sggib-recommendations h2 {
    font-size: 15px;
    letter-spacing: .6px;
    margin: 0 0 4px;
    text-transform: uppercase;
}

.sggib-recommendations p {
    color: var(--sggib-muted);
    font-size: 12px;
    margin: 0;
}

.sggib-recommendations button {
    background: transparent;
    border: 0;
    cursor: pointer;
}

.sggib-recommendation-track {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sggib-recommendation {
    background: #fff;
    border: 1px solid var(--sggib-line);
    border-radius: 5px;
    overflow: hidden;
}

.sggib-recommendation-image {
    aspect-ratio: 16 / 8;
}

.sggib-recommendation strong,
.sggib-recommendation small {
    display: block;
    padding: 0 12px;
}

.sggib-recommendation strong {
    font-size: 13px;
    font-weight: 900;
    line-height: 1.22;
    margin-top: 10px;
}

.sggib-recommendation small {
    margin: 7px 0 12px;
}

.sggib-single {
    --sggib-ink: #07142a;
    --sggib-muted: #5f6f88;
    --sggib-green: #35ae79;
    --sggib-line: #dce5ef;
    color: var(--sggib-ink);
    font-family: inherit;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow-x: clip;
    width: 100vw;
}

.sggib-single-hero {
    background:
        linear-gradient(90deg, rgba(9, 18, 30, .98) 0%, rgba(9, 18, 30, .86) 46%, rgba(15, 32, 49, .78) 100%),
        linear-gradient(135deg, rgba(255,255,255,.07) 0 1px, transparent 1px 96px),
        linear-gradient(120deg, #183039 0%, #111b2b 100%);
    border-top: 3px solid var(--sggib-green);
}

.sggib-single-hero-inner {
    margin: 0 auto;
    max-width: 1160px;
    padding: 58px 20px 62px;
}

.sggib-back-link {
    color: #9ce0c3;
    display: inline-block;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 22px;
}

.sggib-single h1 {
    color: #fff;
    font-size: clamp(34px, 4.4vw, 66px);
    font-weight: 900;
    line-height: .98;
    margin: 0;
    max-width: 900px;
}

.sggib-single-excerpt {
    color: rgba(255,255,255,.86);
    font-size: 18px;
    line-height: 1.55;
    margin: 22px 0 0;
    max-width: 790px;
}

.sggib-single-meta {
    align-items: center;
    color: rgba(255,255,255,.86);
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 24px;
}

.sggib-single-meta span:not(.sggib-avatar) {
    font-size: 13px;
    font-weight: 800;
}

.sggib-single-shell {
    align-items: start;
    display: grid;
    gap: 34px;
    grid-template-columns: minmax(0, 1fr) 330px;
    margin: 0 auto;
    max-width: 1160px;
    padding: 34px 20px 58px;
}

.sggib-single-article {
    min-width: 0;
}

.sggib-single-feature-image {
    aspect-ratio: 16 / 7;
    border-radius: 8px;
    display: block;
    margin-bottom: 30px;
    overflow: hidden;
}

.sggib-single-content {
    color: #20304a;
    font-size: 18px;
    line-height: 1.78;
    max-width: 780px;
}

.sggib-single-content > *:first-child {
    margin-top: 0;
}

.sggib-single-content h2,
.sggib-single-content h3 {
    color: var(--sggib-ink);
    font-weight: 900;
    line-height: 1.15;
    margin: 1.8em 0 .7em;
}

.sggib-single-content h2 {
    font-size: 31px;
}

.sggib-single-content h3 {
    font-size: 24px;
}

.sggib-single-content p,
.sggib-single-content ul,
.sggib-single-content ol {
    margin: 0 0 1.25em;
}

.sggib-single-content a {
    color: #21875d;
    font-weight: 800;
}

.sggib-single-tags {
    border-top: 1px solid var(--sggib-line);
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 34px;
    padding-top: 20px;
}

.sggib-single-tags a {
    background: #eaf8f2;
    border-radius: 999px;
    color: #16764e;
    font-size: 12px;
    font-weight: 900;
    padding: 8px 12px;
    text-transform: uppercase;
}

.sggib-single-sidebar {
    position: sticky;
    top: 24px;
}

@media (max-width: 1100px) {
    .sggib-hero-inner,
    .sggib-content-grid {
        grid-template-columns: 1fr;
    }

    .sggib-card-grid,
    .sggib-recommendation-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sggib-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sggib-single-shell {
        grid-template-columns: 1fr;
    }

    .sggib-single-sidebar {
        position: static;
    }
}

@media (max-width: 720px) {
    .sggib-hero-inner {
        gap: 26px;
        padding-top: 28px;
    }

    .sggib-featured {
        grid-template-columns: 1fr;
    }

    .sggib-card-grid,
    .sggib-category-grid,
    .sggib-recommendation-track {
        grid-template-columns: 1fr;
    }

    .sggib-topic-pills {
        overflow-x: auto;
        padding-bottom: 4px;
        flex-wrap: nowrap;
    }
}

/* Reference-style public layout pass. */
.sggib-hero,
.sggib-single-hero {
    background:
        radial-gradient(circle at 82% 12%, rgba(53, 174, 121, .16), transparent 28%),
        linear-gradient(115deg, rgba(3, 18, 32, .98) 0%, rgba(7, 31, 47, .95) 42%, rgba(9, 17, 31, .98) 100%);
    border-top: 0;
}

.sggib-hero::before,
.sggib-single-hero::before {
    border: 1px solid rgba(38, 174, 127, .18);
    border-bottom: 0;
    border-left: 0;
    border-radius: 50%;
    content: "";
    height: 520px;
    position: absolute;
    right: -90px;
    top: -185px;
    transform: rotate(-17deg);
    width: 680px;
}

.sggib-hero::after,
.sggib-single-hero::after {
    background: repeating-linear-gradient(90deg, rgba(255,255,255,.035), rgba(255,255,255,.035) 1px, transparent 1px, transparent 84px);
    opacity: .42;
}

.sggib-hero-inner,
.sggib-shell,
.sggib-single-hero-inner,
.sggib-single-shell {
    max-width: min(1560px, calc(100vw - 96px));
}

.sggib-hero-inner {
    gap: 72px;
    grid-template-columns: 430px minmax(420px, 1fr);
    min-height: 300px;
    padding: 34px 24px 38px;
}

.sggib-hero h1 {
    color: #ffffff;
    text-shadow: 0 2px 16px rgba(0,0,0,.2);
    font-size: clamp(42px, 4.2vw, 66px);
    line-height: .94;
    margin-bottom: 22px;
    text-transform: none;
}

.sggib-hero-text {
    color: rgba(255,255,255,.88);
    font-weight: 500;
    max-width: 430px;
}

.sggib-search {
    border-radius: 9px;
    box-shadow: 0 16px 30px rgba(0,0,0,.22);
    height: 54px;
}

.sggib-topic-pills {
    gap: 12px;
}

.sggib-topic-pills a,
.sggib-more-topics {
    border-radius: 7px;
    height: 38px;
    padding: 0 18px;
}

.sggib-shell {
    padding: 28px 0 0;
}

.sggib-content-grid {
    gap: 42px;
    grid-template-columns: minmax(0, 1fr) 390px;
}

.sggib-eyebrow {
    color: #49cf98;
}

.sggib-hero .sggib-eyebrow {
    color: #48d39a;
    opacity: 1;
}

.sggib-featured {
    grid-template-columns: 52% 48%;
    min-height: 340px;
}

.sggib-featured-image {
    min-height: 340px;
}

.sggib-featured-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 42px 38px;
}

.sggib-featured-copy h2 {
    font-size: 31px;
    max-width: 420px;
}

.sggib-featured-copy .sggib-author-row {
    border-top: 1px solid var(--sggib-line);
    margin-top: 24px;
    padding-top: 18px;
}

.sggib-card-grid {
    border-bottom: 1px solid var(--sggib-line);
    display: grid;
    gap: 22px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    padding-bottom: 24px;
}

.sggib-article-card {
    border: 0;
    box-shadow: none;
    display: grid;
    gap: 14px;
    grid-template-columns: 118px minmax(0, 1fr);
    min-width: 0;
}

.sggib-card-image {
    aspect-ratio: auto;
    border-radius: 7px;
    height: 92px;
}

.sggib-card-body {
    padding: 0;
}

.sggib-card-body h3 {
    font-size: 15px;
    overflow-wrap: anywhere;
}

.sggib-card-body > div {
    display: none;
}

.sggib-card-body footer {
    justify-content: flex-start;
    gap: 12px;
}

.sggib-card-body button {
    display: none;
}

.sggib-category-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.sggib-category {
    min-height: 72px;
    grid-template-columns: 38px 1fr;
    gap: 10px 12px;
}

.sggib-category strong,
.sggib-category small {
    grid-column: 2;
}

.sggib-category-icon {
    grid-row: 1 / span 2;
}

.sggib-recommendations {
    background: #081626;
    border-radius: 9px 9px 0 0;
    color: #fff;
    margin-top: 26px;
}

.sggib-recommendations h2,
.sggib-recommendations p {
    color: #fff;
}

.sggib-recommendations .sggib-section-row::after {
    border: 1px solid #35ae79;
    border-radius: 5px;
    color: #83d8b6;
    content: "Explore Our Products ->";
    font-size: 13px;
    font-weight: 900;
    padding: 14px 24px;
}

.sggib-recommendation-track,
.sggib-recommendations button {
    display: none;
}

.sggib-single-hero {
    position: relative;
}

.sggib-single-hero-inner {
    padding: 42px 24px 54px;
    position: relative;
    z-index: 1;
}

.sggib-single h1 {
    font-size: clamp(42px, 4.2vw, 66px);
    max-width: 780px;
}

.sggib-single-meta button {
    background: transparent;
    border: 0;
    border-left: 1px solid rgba(255,255,255,.34);
    color: #bdebd8;
    cursor: pointer;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    padding: 0 0 0 12px;
}

.sggib-single-meta button.is-saved {
    color: #35ae79;
}

.sggib-single-shell {
    grid-template-columns: minmax(0, 1fr) 360px;
    padding-top: 36px;
}

.sggib-single-feature-image {
    aspect-ratio: 16 / 6.7;
}

.sggib-toc-card ol {
    color: var(--sggib-muted);
    counter-reset: toc;
    list-style: none;
    margin: 0;
    padding: 0;
}

.sggib-toc-card li {
    counter-increment: toc;
    font-size: 13px;
    line-height: 1.35;
    margin: 0 0 10px;
    padding-left: 24px;
    position: relative;
}

.sggib-toc-card li::before {
    content: counter(toc) ".";
    left: 0;
    position: absolute;
}

.sggib-download-link {
    border-top: 1px solid var(--sggib-line);
    color: #21875d;
    display: block;
    font-size: 13px;
    font-weight: 900;
    margin-top: 16px;
    padding-top: 15px;
}

@media (max-width: 1100px) {
    .sggib-hero-inner {
        grid-template-columns: 1fr;
    }

    .sggib-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sggib-category-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .sggib-article-card,
    .sggib-category {
        grid-template-columns: 1fr;
    }

    .sggib-card-image {
        height: 150px;
    }

    .sggib-category strong,
    .sggib-category small {
        grid-column: auto;
    }
}

@media print {
    .sggib-single-sidebar,
    .sggib-back-link,
    .sggib-single-meta button {
        display: none !important;
    }

    .sggib-single,
    .sggib-single-shell {
        margin: 0;
        width: auto;
    }
}

/* Final SGG theme-width alignment and contrast overrides. */
.sggib-blog .sggib-hero-inner,
.sggib-blog .sggib-shell,
.sggib-single .sggib-single-hero-inner,
.sggib-single .sggib-single-shell {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1660px !important;
    width: min(1660px, calc(100vw - 80px)) !important;
}

.sggib-blog .sggib-content-grid {
    gap: clamp(34px, 4vw, 72px) !important;
    grid-template-columns: minmax(0, 1fr) minmax(390px, 430px) !important;
}

.sggib-blog .sggib-hero {
    min-height: 420px;
}

.sggib-blog .sggib-hero-inner {
    min-height: 420px;
}

.sggib-blog .sggib-hero .sggib-eyebrow,
.sggib-blog .sggib-hero h1,
.sggib-blog .sggib-hero-text {
    opacity: 1 !important;
}

.sggib-blog .sggib-hero .sggib-eyebrow {
    color: #42e6a2 !important;
}

.sggib-blog .sggib-hero-text {
    color: #dceaf2 !important;
    text-shadow: 0 1px 10px rgba(0,0,0,.32);
}

@media (max-width: 1100px) {
    .sggib-blog .sggib-content-grid {
        grid-template-columns: 1fr !important;
    }
}

/* v1.1.4: safe full-width correction. Prevent horizontal overflow/cropped hero text. */
html:has(.sggib-blog),
body:has(.sggib-blog) {
    overflow-x: hidden;
}

.sggib-blog {
    left: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    position: relative;
    width: 100% !important;
}

.sggib-blog .sggib-hero {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
}

.sggib-blog .sggib-hero-inner,
.sggib-blog .sggib-shell {
    box-sizing: border-box;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1440px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    width: 100% !important;
}

.sggib-blog .sggib-hero-inner {
    grid-template-columns: minmax(330px, 460px) minmax(460px, 1fr) !important;
}

.sggib-blog .sggib-content-grid {
    gap: 44px !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
}

.sggib-blog .sggib-hero-copy {
    min-width: 0;
}

.sggib-blog .sggib-hero h1,
.sggib-blog .sggib-hero-text,
.sggib-blog .sggib-hero .sggib-eyebrow {
    transform: none !important;
}

@media (max-width: 1100px) {
    .sggib-blog .sggib-hero-inner,
    .sggib-blog .sggib-content-grid {
        grid-template-columns: 1fr !important;
    }
}

/* v1.1.8: article alignment and real products CTA. */
.sggib-single .sggib-single-article,
.sggib-single .sggib-single-content {
    max-width: none !important;
    width: 100% !important;
}

.sggib-single .sggib-single-content {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.sggib-recommendations .sggib-section-row::after {
    content: none !important;
    display: none !important;
}

.sggib-products-cta {
    border: 1px solid #35ae79;
    border-radius: 5px;
    color: #83d8b6 !important;
    display: inline-flex;
    font-size: 13px;
    font-weight: 900;
    justify-content: center;
    padding: 14px 24px;
    text-decoration: none !important;
}

/* v1.1.9: single article reading alignment. */
.sggib-single .sggib-single-shell {
    align-items: start !important;
    gap: 42px !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
}

.sggib-single .sggib-single-article {
    max-width: 980px !important;
    width: 100% !important;
}

.sggib-single .sggib-single-feature-image {
    max-width: 980px !important;
    width: 100% !important;
}

.sggib-single .sggib-single-content {
    max-width: 860px !important;
    width: 100% !important;
}

.sggib-single .sggib-single-content p,
.sggib-single .sggib-single-content li {
    max-width: 860px !important;
}

.sggib-single .sggib-single-hero.has-cover-image {
    background-image:
        linear-gradient(90deg, rgba(5, 17, 30, .92) 0%, rgba(5, 17, 30, .78) 45%, rgba(5, 17, 30, .56) 100%),
        var(--sggib-cover-image) !important;
    background-position: center !important;
    background-size: cover !important;
}

.sggib-single .sggib-single-hero.has-cover-image::before {
    background: radial-gradient(circle at 80% 18%, rgba(53, 174, 121, .2), transparent 30%);
}

.sggib-single-feature-image.sggib-feature-size-large {
    aspect-ratio: 16 / 7 !important;
    max-width: 1120px !important;
}

.sggib-single-feature-image.sggib-feature-size-full {
    aspect-ratio: 16 / 7 !important;
    margin-left: calc((980px - min(100%, 1280px)) / 2) !important;
    max-width: 1280px !important;
    width: min(100%, 1280px) !important;
}

@media (max-width: 1100px) {
    .sggib-single .sggib-single-shell {
        grid-template-columns: 1fr !important;
    }

    .sggib-single .sggib-single-article,
    .sggib-single .sggib-single-feature-image,
    .sggib-single .sggib-single-content {
        max-width: none !important;
    }
}

/* v1.1.5: true full-bleed restore. The wrapper spans the viewport; inner content stays centered. */
.entry-content > .sggib-blog,
.sggib-blog {
    box-sizing: border-box !important;
    left: auto !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
    position: relative !important;
    right: auto !important;
    width: 100vw !important;
}

.sggib-blog .sggib-hero {
    box-sizing: border-box !important;
    margin: 0 !important;
    width: 100vw !important;
}

.sggib-blog .sggib-hero-inner,
.sggib-blog .sggib-shell {
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1440px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    width: 100% !important;
}

.sggib-blog .sggib-hero-inner {
    align-items: center !important;
    grid-template-columns: minmax(340px, 470px) minmax(480px, 1fr) !important;
}

.sggib-blog .sggib-content-grid {
    gap: 48px !important;
    grid-template-columns: minmax(0, 1fr) 380px !important;
}

.sggib-blog .sggib-search-panel,
.sggib-blog .sggib-search {
    min-width: 0 !important;
    max-width: 100% !important;
}

.sggib-blog .sggib-hero-copy {
    min-width: 0 !important;
    overflow: visible !important;
}

@media (max-width: 1100px) {
    .sggib-blog .sggib-hero-inner,
    .sggib-blog .sggib-content-grid {
        grid-template-columns: 1fr !important;
    }
}
