.smooci-review-page {
    background:
        radial-gradient(circle at 80% 6%, rgba(170, 105, 145, 0.11), transparent 30rem),
        radial-gradient(circle at 15% 16%, rgba(212, 182, 144, 0.09), transparent 32rem),
        #090909;
}

.smooci-hero .mc-alt-hero__overlay {
    background:
        linear-gradient(90deg, rgba(5, 5, 6, 0.98) 0%, rgba(5, 5, 6, 0.91) 54%, rgba(5, 5, 6, 0.61) 100%),
        linear-gradient(180deg, rgba(5, 5, 6, 0.36), #090909 98%);
}

.smooci-hero h1 {
    max-width: 980px;
    font-size: clamp(2.25rem, 6vw, 4.85rem);
}

.smooci-article p,
.smooci-article li {
    color: #d0cbc4;
    line-height: 1.76;
}

.smooci-article h3 {
    margin: 30px 0 12px;
    color: #fff0d7;
    font-family: "Playfair Display", serif;
    font-size: clamp(1.35rem, 3vw, 1.9rem);
    line-height: 1.22;
}

.smooci-article a:not(.mc-alt-button) {
    color: #e3c693;
    text-underline-offset: 3px;
}

.smooci-toc {
    position: sticky;
    z-index: 8;
    top: 68px;
    display: flex;
    gap: 18px;
    align-items: center;
    margin: 26px 0 0;
    padding: 14px 16px;
    border: 1px solid rgba(212, 182, 144, 0.24);
    border-radius: 8px;
    background: rgba(13, 13, 14, 0.94);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(12px);
}

.smooci-toc strong {
    flex: 0 0 auto;
    color: #f2d7ab;
    font: 800 0.76rem/1.2 "Inter", sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.smooci-toc div {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    scrollbar-width: thin;
}

.smooci-toc a {
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    color: #d8d1c8;
    font: 700 0.74rem/1 "Inter", sans-serif;
    text-decoration: none;
}

.smooci-toc a:hover,
.smooci-toc a:focus-visible {
    border-color: #d4b690;
    color: #fff1d9;
}

.smooci-scorecard tbody th {
    width: 23%;
}

.smooci-scorecard td:nth-child(2) {
    width: 25%;
}

.smooci-scorecard td:nth-child(3) {
    width: 52%;
}

.smooci-figure {
    min-width: 0;
    margin: 24px 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 10px;
    background: #111113;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.24);
}

.smooci-figure__image {
    display: block;
    width: 100%;
    height: auto;
    background: #070708;
}

.smooci-figure figcaption {
    padding: 13px 15px;
    color: #aaa49d;
    font-size: 0.84rem;
    line-height: 1.55;
}

.smooci-figure--wide {
    max-width: 980px;
}

.smooci-figure--portrait-center {
    max-width: 560px;
    margin-inline: auto;
}

.smooci-two-col,
.smooci-media-pair,
.smooci-premium-card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    align-items: center;
    margin-top: 26px;
}

.smooci-two-col .smooci-figure,
.smooci-media-pair .smooci-figure,
.smooci-premium-card .smooci-figure {
    margin: 0;
}

.smooci-two-col > div > h3:first-child,
.smooci-premium-card h3 {
    margin-top: 0;
}

.smooci-step-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
}

.smooci-step-gallery .smooci-figure {
    margin: 0;
}

.smooci-step-gallery .smooci-figure__image {
    aspect-ratio: 0.65;
    object-fit: contain;
}

.smooci-media-pair {
    align-items: start;
}

.smooci-media-pair--portrait {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.smooci-media-pair--portrait .smooci-figure__image {
    max-height: 680px;
    object-fit: contain;
}

.smooci-finding-grid,
.smooci-source-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 26px;
}

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

.smooci-finding-grid article,
.smooci-source-grid article,
.smooci-premium-card {
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 9px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.018));
}

.smooci-finding-grid h3,
.smooci-source-grid h3 {
    margin-top: 0;
}

.smooci-finding-grid p:last-child,
.smooci-source-grid p:last-child,
.smooci-premium-card p:last-child {
    margin-bottom: 0;
}

.smooci-premium-card {
    border-color: rgba(212, 182, 144, 0.38);
    background:
        radial-gradient(circle at top right, rgba(212, 182, 144, 0.15), transparent 20rem),
        #111112;
}

.smooci-premium-card ul {
    margin: 16px 0;
    padding-left: 20px;
}

.smooci-caution {
    margin: 20px 0 0;
    padding: 18px 20px;
    border-left: 3px solid #d4b690;
    background: rgba(212, 182, 144, 0.08);
}

.smooci-alternatives-table {
    min-width: 920px;
}

.smooci-alternatives-table th,
.smooci-alternatives-table td {
    width: 25%;
}

.smooci-article code {
    padding: 0.1em 0.35em;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.08);
    color: #f1d6aa;
}

@media (max-width: 900px) {
    .smooci-step-gallery {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .smooci-finding-grid {
        grid-template-columns: 1fr;
    }

    .smooci-media-pair--portrait {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .smooci-toc {
        position: static;
        display: block;
    }

    .smooci-toc div {
        margin-top: 10px;
    }

    .smooci-two-col,
    .smooci-two-col--reverse,
    .smooci-media-pair,
    .smooci-media-pair--portrait,
    .smooci-premium-card,
    .smooci-source-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .smooci-two-col--reverse .smooci-figure {
        order: 2;
    }

    .smooci-step-gallery {
        display: flex;
        gap: 12px;
        margin-inline: -4px;
        padding: 2px 4px 12px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .smooci-step-gallery .smooci-figure {
        flex: 0 0 min(78vw, 310px);
        scroll-snap-align: start;
    }

    .smooci-media-pair--portrait .smooci-figure__image {
        max-height: none;
    }

    .smooci-hero h1 {
        font-size: clamp(1.85rem, 8.8vw, 2.45rem);
    }
}

@media (max-width: 560px) {
    .smooci-review-page .mc-alt-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smooci-review-page .mc-alt-trust span {
        min-height: 82px;
    }

    .smooci-article .mc-alt-section {
        padding-top: 58px;
    }

    .smooci-figure figcaption {
        padding: 11px 12px;
        font-size: 0.8rem;
    }
}
