/* =========================================
   FUTUREVERSE SPACE CENTER
   SOLAR SYSTEM
   solar-system.css
========================================= */


/* =========================================
   01. RESET
========================================= */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    background: #f4f7ff;
    color: #18213d;
    line-height: 1.65;
}

a {
    text-decoration: none;
    color: inherit;
}

button {
    font: inherit;
}


/* =========================================
   02. PAGE
========================================= */

.solar-system-page {
    min-height: 100vh;
    overflow: hidden;
}


/* =========================================
   03. HEADER
========================================= */

.solar-header {
    width: min(1180px, 92%);
    margin: 0 auto;

    padding: 21px 0;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;
}

.solar-brand {
    display: flex;
    align-items: center;
    gap: 12px;
}

.solar-brand-icon {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background:
        linear-gradient(
            135deg,
            #ff9f43,
            #ff4d5a
        );

    color: #fff;

    font-size: 20px;

    box-shadow:
        0 10px 25px rgba(255, 106, 70, 0.25);
}

.solar-brand-text {
    display: flex;
    flex-direction: column;
}

.solar-brand-text strong {
    color: #202a49;

    font-size: 17px;
    letter-spacing: .2px;
}

.solar-brand-text span {
    color: #77809b;

    font-size: 10px;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.back-home-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    padding: 10px 16px;

    border: 1px solid #dce2f3;
    border-radius: 12px;

    background: #fff;

    color: #35405f;

    font-size: 12px;
    font-weight: 700;

    transition: .25s ease;
}

.back-home-btn:hover {
    transform: translateY(-2px);

    border-color: #ffb18b;

    box-shadow:
        0 10px 25px rgba(40, 50, 100, .09);
}


/* =========================================
   04. HERO
========================================= */

.solar-hero {
    width: min(1180px, 92%);
    min-height: 570px;

    margin: 12px auto 0;

    padding: 75px 65px;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 55px;

    border-radius: 35px;

    background:
        radial-gradient(
            circle at 75% 30%,
            rgba(255, 171, 74, .18),
            transparent 23%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(93, 120, 255, .18),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #10152f,
            #171b3e 48%,
            #101d43
        );

    color: #fff;

    box-shadow:
        0 32px 75px rgba(27, 33, 78, .24);
}

.solar-hero::before {
    content: "";

    position: absolute;
    inset: 0;

    background-image:
        radial-gradient(
            circle,
            rgba(255,255,255,.7) 1px,
            transparent 1px
        );

    background-size: 72px 72px;

    opacity: .15;

    pointer-events: none;
}

.solar-hero-content {
    position: relative;
    z-index: 3;

    max-width: 610px;
}

.solar-eyebrow {
    display: inline-block;

    margin-bottom: 17px;

    color: #ffc47a;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 2.6px;
}

.solar-hero h1 {
    margin-bottom: 24px;

    font-size: clamp(46px, 6vw, 74px);

    line-height: 1;

    letter-spacing: -2.5px;
}

.solar-hero h1 span {
    display: block;

    background:
        linear-gradient(
            90deg,
            #ffb14b,
            #ff6a65,
            #9a8cff
        );

    -webkit-background-clip: text;
    background-clip: text;

    color: transparent;
}

.solar-hero p {
    max-width: 570px;

    color: #cbd2ec;

    font-size: 16px;

    line-height: 1.8;
}

.solar-hero-meta {
    margin-top: 30px;

    display: flex;
    align-items: center;

    gap: 32px;
}

.solar-hero-meta div {
    display: flex;
    flex-direction: column;
}

.solar-hero-meta strong {
    color: #fff;

    font-size: 20px;
}

.solar-hero-meta span {
    color: #929bbc;

    font-size: 10px;
}

.explore-solar-btn {
    margin-top: 30px;

    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 13px 20px;

    border-radius: 13px;

    background:
        linear-gradient(
            135deg,
            #ff9b45,
            #ff5964
        );

    color: #fff;

    font-size: 12px;
    font-weight: 800;

    box-shadow:
        0 13px 30px rgba(255, 91, 71, .25);

    transition: .25s ease;
}

.explore-solar-btn:hover {
    transform: translateY(-3px);

    box-shadow:
        0 18px 38px rgba(255, 91, 71, .35);
}


/* =========================================
   05. SOLAR HERO VISUAL
========================================= */

.solar-hero-visual {
    width: 390px;
    height: 390px;

    position: relative;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;
}

.solar-glow {
    position: absolute;

    width: 220px;
    height: 220px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255, 196, 85, .35),
            rgba(255, 130, 61, .12) 45%,
            transparent 72%
        );

    filter: blur(5px);
}

.sun-core {
    width: 115px;
    height: 115px;

    position: relative;
    z-index: 4;

    border-radius: 50%;

    background:
        radial-gradient(
            circle at 35% 30%,
            #fff5bd,
            #ffc34f 28%,
            #ff7a35 67%,
            #d94545
        );

    box-shadow:
        0 0 25px rgba(255, 186, 63, .8),
        0 0 70px rgba(255, 132, 49, .42);

    animation:
        sunPulse 4s ease-in-out infinite;
}

.sun-surface {
    position: absolute;
    inset: 10px;

    border-radius: 50%;

    border: 1px solid rgba(255,255,255,.25);
}

@keyframes sunPulse {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.035);
    }

}

.planet-orbit {
    position: absolute;

    border: 1px solid rgba(255,255,255,.16);

    border-radius: 50%;
}

.orbit-1 {
    width: 155px;
    height: 155px;
}

.orbit-2 {
    width: 205px;
    height: 205px;
}

.orbit-3 {
    width: 260px;
    height: 260px;
}

.orbit-4 {
    width: 320px;
    height: 320px;
}

.orbit-5 {
    width: 380px;
    height: 380px;
}

.orbit-planet {
    position: absolute;

    top: 50%;
    left: -5px;

    transform: translateY(-50%);

    border-radius: 50%;
}

.planet-mercury {
    width: 9px;
    height: 9px;

    background: #aeb2bc;

    box-shadow:
        0 0 8px rgba(255,255,255,.45);
}

.planet-venus {
    width: 13px;
    height: 13px;

    background: #dca25d;
}

.planet-earth {
    width: 16px;
    height: 16px;

    background:
        radial-gradient(
            circle at 35% 35%,
            #71d6ff,
            #3268d7 50%,
            #24533c
        );

    box-shadow:
        0 0 10px rgba(76, 169, 255, .5);
}

.planet-mars {
    width: 12px;
    height: 12px;

    background: #c55c46;
}

.planet-jupiter {
    width: 25px;
    height: 25px;

    background:
        linear-gradient(
            180deg,
            #d9b58b 0%,
            #a97554 25%,
            #ead0a8 44%,
            #9e694d 61%,
            #d8b48d 80%
        );
}


/* =========================================
   06. DOCUMENTARY NAV
========================================= */

.solar-documentary-nav {
    width: min(1120px, 92%);

    margin: 28px auto 0;

    padding: 12px;

    display: flex;
    align-items: center;

    gap: 7px;

    overflow-x: auto;

    border: 1px solid #e0e5f3;
    border-radius: 16px;

    background: #fff;

    box-shadow:
        0 10px 28px rgba(30, 43, 90, .055);

    scrollbar-width: none;
}

.solar-documentary-nav::-webkit-scrollbar {
    display: none;
}

.solar-documentary-nav a {
    flex-shrink: 0;

    padding: 9px 13px;

    border-radius: 9px;

    color: #68728f;

    font-size: 10px;
    font-weight: 700;

    transition: .2s ease;
}

.solar-documentary-nav a:hover {
    background: #fff3eb;

    color: #e96a45;
}


/* =========================================
   07. GENERAL DOCUMENTARY SECTION
========================================= */

.documentary-section {
    width: min(1100px, 92%);

    margin: 110px auto 0;
}

.section-kicker {
    margin-bottom: 10px;

    color: #ec704b;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 2px;
}

.section-heading {
    max-width: 780px;

    margin-bottom: 45px;
}

.section-heading h2 {
    margin-bottom: 14px;

    color: #192342;

    font-size: clamp(30px, 4vw, 45px);

    line-height: 1.15;

    letter-spacing: -1px;
}

.section-heading p {
    color: #717b98;

    font-size: 15px;

    line-height: 1.8;
}


/* =========================================
   08. OVERVIEW
========================================= */

.overview-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;
}

.overview-card {
    padding: 28px;

    border: 1px solid #e0e5f3;
    border-radius: 23px;

    background: #fff;

    box-shadow:
        0 12px 35px rgba(31, 44, 100, .055);

    transition: .25s ease;
}

.overview-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 20px 45px rgba(31, 44, 100, .09);
}

.overview-icon {
    width: 54px;
    height: 54px;

    margin-bottom: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background: #fff0e8;

    color: #ed7049;

    font-size: 20px;
}

.overview-card h3 {
    margin-bottom: 9px;

    color: #202a49;

    font-size: 18px;
}

.overview-card p {
    color: #75809b;

    font-size: 12px;

    line-height: 1.75;
}

.science-fact-box {
    margin-top: 24px;

    padding: 25px 28px;

    border-left: 4px solid #ef7651;

    border-radius: 0 18px 18px 0;

    background:
        linear-gradient(
            90deg,
            #fff3ed,
            #fff
        );
}

.science-fact-box span {
    display: block;

    margin-bottom: 6px;

    color: #df6845;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 1.7px;
}

.science-fact-box p {
    color: #59647f;

    font-size: 13px;

    line-height: 1.75;
}


/* =========================================
   09. SUN SECTION
========================================= */

.sun-content-grid {
    display: grid;

    grid-template-columns:
        380px 1fr;

    gap: 55px;

    align-items: center;
}

.sun-visual-card {
    min-height: 350px;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    border-radius: 27px;

    background:
        radial-gradient(
            circle,
            #49313c,
            #17192f 65%,
            #0f142a
        );
}

.large-sun {
    width: 190px;
    height: 190px;

    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        radial-gradient(
            circle at 35% 30%,
            #fff5bf,
            #ffc94e 27%,
            #ff7d35 62%,
            #d94743
        );

    box-shadow:
        0 0 30px rgba(255, 183, 55, .75),
        0 0 90px rgba(255, 111, 50, .38);
}

.large-sun::before,
.large-sun::after {
    content: "";

    position: absolute;

    border-radius: 50%;

    border: 1px solid rgba(255,193,75,.25);
}

.large-sun::before {
    inset: -17px;
}

.large-sun::after {
    inset: -31px;
}

.sun-information h3 {
    margin-bottom: 14px;

    color: #202a49;

    font-size: 27px;
}

.sun-information > p {
    margin-bottom: 15px;

    color: #707a96;

    font-size: 14px;

    line-height: 1.8;
}

.sun-facts {
    margin-top: 25px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 12px;
}

.sun-facts div {
    padding: 15px;

    border: 1px solid #e4e7f2;

    border-radius: 15px;

    background: #fafbff;
}

.sun-facts strong,
.sun-facts span {
    display: block;
}

.sun-facts strong {
    color: #df6845;

    font-size: 14px;
}

.sun-facts span {
    color: #838ba1;

    font-size: 9px;
}

.topic-grid {
    margin-top: 30px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 17px;
}

.topic-card {
    padding: 22px;

    border: 1px solid #e2e6f2;
    border-radius: 18px;

    background: #fff;
}

.topic-card h3 {
    margin-bottom: 8px;

    color: #27304e;

    font-size: 16px;
}

.topic-card p {
    color: #78819c;

    font-size: 11px;

    line-height: 1.7;
}


/* =========================================
   10. PLANETS
========================================= */

.planet-documentary-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}

.planet-documentary-card {
    min-height: 285px;

    position: relative;

    padding: 27px 23px;

    border: 1px solid #e0e5f3;
    border-radius: 23px;

    background: #fff;

    overflow: hidden;

    box-shadow:
        0 11px 32px rgba(31,44,100,.05);

    transition: .25s ease;
}

.planet-documentary-card:hover {
    transform: translateY(-5px);

    border-color: #cfd1f2;

    box-shadow:
        0 20px 42px rgba(31,44,100,.09);
}

.planet-number {
    position: absolute;

    top: 17px;
    right: 19px;

    color: #a6adbf;

    font-size: 10px;
    font-weight: 800;
}

.planet-symbol {
    width: 65px;
    height: 65px;

    margin-bottom: 20px;

    border-radius: 50%;

    box-shadow:
        inset -10px -8px 15px rgba(0,0,0,.17),
        0 8px 18px rgba(30,40,80,.1);
}

.mercury-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #d7d9df,
            #8d919a 60%,
            #5c606a
        );
}

.venus-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #f2c17b,
            #bd7e3d 60%,
            #80532f
        );
}

.earth-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #65c9ff,
            #2e66c6 50%,
            #244b37
        );
}

.mars-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #e89067,
            #b64f3e 55%,
            #74352e
        );
}

.jupiter-symbol {
    background:
        linear-gradient(
            180deg,
            #d9b28b,
            #a97655 25%,
            #e7d0a6 42%,
            #9d6a50 58%,
            #d7b58d 78%
        );
}

.saturn-symbol {
    position: relative;

    background:
        radial-gradient(
            circle at 35% 30%,
            #f0d39b,
            #bd9864 65%,
            #816a4d
        );
}

.saturn-symbol span {
    position: absolute;

    top: 50%;
    left: 50%;

    width: 88px;
    height: 24px;

    transform:
        translate(-50%, -50%)
        rotate(-18deg);

    border: 4px solid rgba(207,176,122,.75);

    border-radius: 50%;
}

.uranus-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #bff6f3,
            #67c8ca 65%,
            #398d99
        );
}

.neptune-symbol {
    background:
        radial-gradient(
            circle at 35% 30%,
            #7fb6ff,
            #3964ce 60%,
            #253d8d
        );
}

.planet-type {
    color: #8a91a7;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 1.2px;
}

.planet-documentary-card h3 {
    margin: 5px 0 9px;

    color: #202a49;

    font-size: 21px;
}

.planet-documentary-card > p {
    color: #76809b;

    font-size: 11px;

    line-height: 1.65;
}

.planet-mini-facts {
    margin-top: 15px;

    display: flex;

    gap: 7px;

    flex-wrap: wrap;
}

.planet-mini-facts span {
    padding: 5px 8px;

    border-radius: 7px;

    background: #f4f5fb;

    color: #747d96;

    font-size: 8px;
}


/* =========================================
   11. DWARF PLANETS
========================================= */

.dwarf-grid {
    display: grid;

    grid-template-columns:
        repeat(5, 1fr);

    gap: 15px;
}

.dwarf-card {
    padding: 25px 20px;

    border: 1px solid #e0e5f3;
    border-radius: 20px;

    background: #fff;

    transition: .25s ease;
}

.dwarf-card:hover {
    transform: translateY(-4px);
}

.dwarf-card > span {
    color: #a1a8ba;

    font-size: 9px;
    font-weight: 800;
}

.dwarf-card h3 {
    margin: 13px 0 8px;

    color: #242e4c;

    font-size: 17px;
}

.dwarf-card p {
    color: #78819a;

    font-size: 10px;

    line-height: 1.7;
}


/* =========================================
   12. MOONS
========================================= */

.moon-feature-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;
}

.moon-feature-card {
    padding: 30px;

    border-radius: 23px;

    background:
        linear-gradient(
            145deg,
            #151a38,
            #22295a
        );

    color: #fff;

    box-shadow:
        0 18px 40px rgba(25,31,75,.14);
}

.moon-icon {
    width: 52px;
    height: 52px;

    margin-bottom: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: rgba(255,255,255,.08);

    color: #d5d9ff;

    font-size: 19px;
}

.moon-feature-card h3 {
    margin-bottom: 10px;

    font-size: 19px;
}

.moon-feature-card p {
    color: #b8c0df;

    font-size: 11px;

    line-height: 1.75;
}


/* =========================================
   13. SMALL BODIES
========================================= */

.small-body-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}

.small-body-card {
    padding: 25px 22px;

    border: 1px solid #e0e5f3;
    border-radius: 21px;

    background: #fff;
}

.small-body-icon {
    width: 50px;
    height: 50px;

    margin-bottom: 16px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    background: #f1efff;

    color: #6758d8;

    font-size: 18px;
}

.small-body-card h3 {
    margin-bottom: 8px;

    color: #26304e;

    font-size: 17px;
}

.small-body-card p {
    color: #78819b;

    font-size: 10px;

    line-height: 1.75;
}


/* =========================================
   14. OUTER REGIONS
========================================= */

.outer-region-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 20px;
}

.outer-region-card {
    position: relative;

    padding: 29px;

    border: 1px solid #e0e5f3;
    border-radius: 23px;

    background: #fff;

    overflow: hidden;
}

.region-number {
    position: absolute;

    top: 18px;
    right: 20px;

    color: #a4abbc;

    font-size: 9px;
    font-weight: 800;
}

.region-icon {
    width: 54px;
    height: 54px;

    margin-bottom: 17px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background: #edf4ff;

    color: #4f72d9;

    font-size: 19px;
}

.outer-region-card h3 {
    margin-bottom: 8px;

    color: #26304e;

    font-size: 19px;
}

.outer-region-card p {
    min-height: 83px;

    color: #78819b;

    font-size: 11px;

    line-height: 1.7;
}

.outer-region-card strong {
    display: inline-block;

    margin-top: 15px;

    color: #5c70bb;

    font-size: 10px;
}

.heliosphere-box {
    margin-top: 25px;

    padding: 25px;

    display: flex;
    align-items: center;

    gap: 18px;

    border-radius: 22px;

    background:
        linear-gradient(
            135deg,
            #eef4ff,
            #f7f1ff
        );
}

.heliosphere-icon {
    width: 54px;
    height: 54px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;

    background: #fff;

    color: #ef7650;

    font-size: 19px;

    box-shadow:
        0 7px 20px rgba(50,60,110,.07);
}

.heliosphere-box span {
    color: #6979bb;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 1.5px;
}

.heliosphere-box h3 {
    margin: 3px 0 5px;

    color: #27304d;

    font-size: 18px;
}

.heliosphere-box p {
    color: #78819b;

    font-size: 11px;
}


/* =========================================
   15. FORMATION TIMELINE
========================================= */

.formation-timeline {
    position: relative;

    max-width: 850px;

    margin: 0 auto;
}

.formation-timeline::before {
    content: "";

    position: absolute;

    left: 25px;
    top: 10px;
    bottom: 10px;

    width: 1px;

    background:
        linear-gradient(
            180deg,
            #ffac79,
            #aaa0ff
        );
}

.timeline-step {
    position: relative;

    display: flex;

    gap: 25px;

    margin-bottom: 32px;
}

.timeline-number {
    width: 51px;
    height: 51px;

    flex-shrink: 0;

    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #fff;

    border: 2px solid #ffad82;

    color: #e36d49;

    font-size: 10px;
    font-weight: 800;

    box-shadow:
        0 6px 18px rgba(60,70,120,.08);
}

.timeline-content {
    padding: 4px 0;
}

.timeline-content span {
    color: #e16d4a;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 1.5px;
}

.timeline-content h3 {
    margin: 4px 0 7px;

    color: #27304d;

    font-size: 20px;
}

.timeline-content p {
    color: #77819c;

    font-size: 12px;

    line-height: 1.7;
}

.formation-fact {
    max-width: 850px;

    margin: 35px auto 0;

    padding: 22px 25px;

    display: flex;
    align-items: center;

    gap: 17px;

    border: 1px solid #e3e6f2;
    border-radius: 19px;

    background: #fff;
}

.formation-fact-icon {
    width: 48px;
    height: 48px;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    background: #fff0e9;

    color: #e56e49;
}

.formation-fact span,
.formation-fact strong,
.formation-fact p {
    display: block;
}

.formation-fact span {
    color: #e16d4a;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 1.5px;
}

.formation-fact strong {
    color: #27304d;

    font-size: 18px;
}

.formation-fact p {
    color: #8189a0;

    font-size: 10px;
}


/* =========================================
   16. EXPLORATION
========================================= */

.exploration-section {
    width: min(1100px, 92%);

    margin: 110px auto 80px;

    padding: 50px 55px;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 40px;

    border-radius: 29px;

    background:
        linear-gradient(
            135deg,
            #121833,
            #22265a
        );

    color: #fff;

    box-shadow:
        0 25px 55px rgba(27,32,76,.18);
}

.exploration-content {
    max-width: 650px;
}

.exploration-content > span {
    color: #ffbf78;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 2px;
}

.exploration-content h2 {
    margin: 9px 0 13px;

    font-size: 33px;

    line-height: 1.2;
}

.exploration-content p {
    color: #bdc5e0;

    font-size: 13px;

    line-height: 1.75;
}

.exploration-btn {
    margin-top: 23px;

    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 11px 16px;

    border: 1px solid rgba(255,255,255,.12);
    border-radius: 11px;

    background: rgba(255,255,255,.08);

    color: #fff;

    font-size: 11px;
    font-weight: 700;

    transition: .25s ease;
}

.exploration-btn:hover {
    background: rgba(255,255,255,.14);

    transform: translateY(-2px);
}

.exploration-visual {
    width: 190px;
    height: 190px;

    position: relative;

    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;
}

.exploration-orbit {
    width: 175px;
    height: 72px;

    position: absolute;

    border: 1px solid rgba(255,193,113,.4);

    border-radius: 50%;

    transform: rotate(-28deg);
}

.exploration-core {
    width: 66px;
    height: 66px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #ff9f50,
            #6b6aff
        );

    box-shadow:
        0 0 35px rgba(120,120,255,.3);

    font-size: 22px;
}


/* =========================================
   17. FOOTER
========================================= */

.solar-footer {
    width: min(1100px, 92%);

    margin: 0 auto;

    padding: 32px 0 28px;

    border-top: 1px solid #e1e5f1;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 25px;

    flex-wrap: wrap;
}

.footer-brand {
    display: flex;
    align-items: center;

    gap: 10px;
}

.footer-brand-icon {
    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 12px;

    background: #fff0e8;

    color: #e96e49;
}

.footer-brand strong,
.footer-brand span {
    display: block;
}

.footer-brand strong {
    color: #28314d;

    font-size: 14px;
}

.footer-brand span {
    color: #8991a7;

    font-size: 9px;
}

.footer-links {
    display: flex;
    align-items: center;

    gap: 17px;

    flex-wrap: wrap;

    color: #6e7893;

    font-size: 10px;
    font-weight: 600;
}

.footer-links a:hover {
    color: #e56d49;
}

.footer-copy {
    width: 100%;

    color: #9aa1b5;

    font-size: 9px;
}


/* =========================================
   18. DARK MODE
========================================= */

body[data-theme="dark"] {
    background: #090e20;
    color: #e9edff;
}

body[data-theme="dark"] .solar-brand-text strong {
    color: #eef1ff;
}

body[data-theme="dark"] .solar-brand-text span {
    color: #8e97b7;
}

body[data-theme="dark"] .back-home-btn {
    background: #151a35;
    border-color: #2b3457;
    color: #dce2ff;
}

body[data-theme="dark"] .solar-documentary-nav {
    background: #131832;
    border-color: #293257;
}

body[data-theme="dark"] .solar-documentary-nav a {
    color: #9aa3c1;
}

body[data-theme="dark"] .solar-documentary-nav a:hover {
    background: #24294b;
    color: #ffad7b;
}

body[data-theme="dark"] .section-heading h2 {
    color: #eef1ff;
}

body[data-theme="dark"] .section-heading p {
    color: #9ca5c5;
}

body[data-theme="dark"] .overview-card,
body[data-theme="dark"] .planet-documentary-card,
body[data-theme="dark"] .dwarf-card,
body[data-theme="dark"] .topic-card,
body[data-theme="dark"] .small-body-card,
body[data-theme="dark"] .outer-region-card,
body[data-theme="dark"] .formation-fact {
    background: #131832;
    border-color: #293257;
    box-shadow:
        0 14px 35px rgba(0,0,0,.18);
}

body[data-theme="dark"] .overview-card h3,
body[data-theme="dark"] .planet-documentary-card h3,
body[data-theme="dark"] .dwarf-card h3,
body[data-theme="dark"] .topic-card h3,
body[data-theme="dark"] .small-body-card h3,
body[data-theme="dark"] .outer-region-card h3,
body[data-theme="dark"] .sun-information h3,
body[data-theme="dark"] .timeline-content h3,
body[data-theme="dark"] .formation-fact strong,
body[data-theme="dark"] .heliosphere-box h3 {
    color: #e8ecff;
}

body[data-theme="dark"] .overview-card p,
body[data-theme="dark"] .planet-documentary-card > p,
body[data-theme="dark"] .dwarf-card p,
body[data-theme="dark"] .topic-card p,
body[data-theme="dark"] .small-body-card p,
body[data-theme="dark"] .outer-region-card p,
body[data-theme="dark"] .sun-information > p,
body[data-theme="dark"] .timeline-content p,
body[data-theme="dark"] .formation-fact p,
body[data-theme="dark"] .heliosphere-box p {
    color: #9ba5c4;
}

body[data-theme="dark"] .planet-mini-facts span {
    background: #202645;
    color: #9ba4c2;
}

body[data-theme="dark"] .science-fact-box {
    background:
        linear-gradient(
            90deg,
            #201d38,
            #141832
        );
}

body[data-theme="dark"] .science-fact-box p {
    color: #aab3d0;
}

body[data-theme="dark"] .sun-facts div {
    background: #191f3b;
    border-color: #2c3457;
}

body[data-theme="dark"] .heliosphere-box {
    background:
        linear-gradient(
            135deg,
            #17203d,
            #201b3d
        );
}

body[data-theme="dark"] .heliosphere-icon {
    background: #202644;
}

body[data-theme="dark"] .formation-fact-icon {
    background: #28233d;
}

body[data-theme="dark"] .solar-footer {
    border-color: #293257;
}

body[data-theme="dark"] .footer-brand strong {
    color: #e8ecff;
}

body[data-theme="dark"] .footer-brand span,
body[data-theme="dark"] .footer-links,
body[data-theme="dark"] .footer-copy {
    color: #858fac;
}

body[data-theme="dark"] .footer-brand-icon {
    background: #28233d;
}


/* =========================================
   19. TABLET
========================================= */

@media (max-width: 1000px) {

    .solar-hero {
        padding: 60px 45px;
    }

    .solar-hero-visual {
        width: 320px;
        height: 320px;
    }

    .orbit-5 {
        width: 315px;
        height: 315px;
    }

    .orbit-4 {
        width: 265px;
        height: 265px;
    }

    .orbit-3 {
        width: 220px;
        height: 220px;
    }

    .orbit-2 {
        width: 175px;
        height: 175px;
    }

    .orbit-1 {
        width: 135px;
        height: 135px;
    }

    .planet-documentary-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .dwarf-grid {
        grid-template-columns:
            repeat(3, 1fr);
    }

    .small-body-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================
   20. MOBILE
========================================= */

@media (max-width: 700px) {

    .solar-header {
        padding: 15px 0;
    }

    .solar-brand-icon {
        width: 42px;
        height: 42px;
    }

    .solar-brand-text strong {
        font-size: 15px;
    }

    .solar-brand-text span {
        font-size: 8px;
    }

    .back-home-btn {
        padding: 9px 11px;

        font-size: 9px;
    }


    /* HERO */

    .solar-hero {
        width: 94%;

        min-height: auto;

        padding: 43px 23px 38px;

        flex-direction: column;

        text-align: center;

        border-radius: 28px;
    }

    .solar-hero-content {
        max-width: 100%;
    }

    .solar-eyebrow {
        font-size: 8px;
        letter-spacing: 2px;
    }

    .solar-hero h1 {
        font-size: 45px;
        letter-spacing: -1.5px;
    }

    .solar-hero p {
        font-size: 13px;
    }

    .solar-hero-meta {
        justify-content: center;

        gap: 22px;
    }

    .solar-hero-meta strong {
        font-size: 17px;
    }

    .solar-hero-meta span {
        font-size: 8px;
    }

    .explore-solar-btn {
        font-size: 10px;
    }


    /* HERO VISUAL */

    .solar-hero-visual {
        width: 280px;
        height: 280px;

        margin-top: 5px;
    }

    .sun-core {
        width: 78px;
        height: 78px;
    }

    .orbit-1 {
        width: 110px;
        height: 110px;
    }

    .orbit-2 {
        width: 145px;
        height: 145px;
    }

    .orbit-3 {
        width: 185px;
        height: 185px;
    }

    .orbit-4 {
        width: 230px;
        height: 230px;
    }

    .orbit-5 {
        width: 275px;
        height: 275px;
    }

    .planet-jupiter {
        width: 20px;
        height: 20px;
    }


    /* NAV */

    .solar-documentary-nav {
        width: 94%;

        margin-top: 18px;

        padding: 9px;
    }

    .solar-documentary-nav a {
        padding: 8px 10px;

        font-size: 9px;
    }


    /* GENERAL */

    .documentary-section {
        width: 92%;

        margin-top: 75px;
    }

    .section-kicker {
        font-size: 8px;
    }

    .section-heading {
        margin-bottom: 30px;
    }

    .section-heading h2 {
        font-size: 29px;
    }

    .section-heading p {
        font-size: 12px;
    }


    /* OVERVIEW */

    .overview-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .overview-card {
        padding: 23px;
    }

    .science-fact-box {
        padding: 20px;
    }


    /* SUN */

    .sun-content-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    .sun-visual-card {
        min-height: 270px;
    }

    .large-sun {
        width: 145px;
        height: 145px;
    }

    .sun-information h3 {
        font-size: 23px;
    }

    .sun-information > p {
        font-size: 12px;
    }

    .sun-facts {
        grid-template-columns: 1fr;
    }

    .topic-grid {
        grid-template-columns: 1fr;
    }


    /* PLANETS */

    .planet-documentary-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .planet-documentary-card {
        min-height: auto;
    }


    /* DWARF PLANETS */

    .dwarf-grid {
        grid-template-columns: 1fr 1fr;

        gap: 13px;
    }

    .dwarf-card {
        padding: 21px 17px;
    }


    /* MOONS */

    .moon-feature-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .moon-feature-card {
        padding: 25px;
    }


    /* SMALL BODIES */

    .small-body-grid {
        grid-template-columns: 1fr 1fr;

        gap: 13px;
    }

    .small-body-card {
        padding: 21px 17px;
    }


    /* OUTER */

    .outer-region-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }

    .outer-region-card p {
        min-height: auto;
    }

    .heliosphere-box {
        align-items: flex-start;

        padding: 21px;
    }


    /* TIMELINE */

    .formation-timeline::before {
        left: 21px;
    }

    .timeline-step {
        gap: 17px;
    }

    .timeline-number {
        width: 43px;
        height: 43px;
    }

    .timeline-content h3 {
        font-size: 17px;
    }

    .timeline-content p {
        font-size: 10px;
    }

    .formation-fact {
        padding: 20px;
    }


    /* EXPLORATION */

    .exploration-section {
        width: 92%;

        margin-top: 75px;

        padding: 35px 24px;

        flex-direction: column;

        text-align: center;
    }

    .exploration-content h2 {
        font-size: 27px;
    }

    .exploration-content p {
        font-size: 11px;
    }

    .exploration-visual {
        width: 150px;
        height: 150px;
    }

    .exploration-orbit {
        width: 140px;
        height: 58px;
    }


    /* FOOTER */

    .solar-footer {
        width: 92%;

        flex-direction: column;

        justify-content: center;

        text-align: center;
    }

    .footer-links {
        justify-content: center;
    }

    .footer-copy {
        text-align: center;
    }

}