/* ==========================================================================
   SPIRIT CROSSING - STYLESHEET
   Organized by page flow: base → layout → sections → overlays → quiz
   ========================================================================== */


/* ==========================================================================
   1. RESET & BASE
   ========================================================================== */

* {
    font-family: Oswald, serif;
}

body {
    overflow-x: hidden;
}

p {
    font-family: "Archivo", sans-serif;
}

p.tite-font {
    font-family: Oswald, serif;
}


/* ==========================================================================
   2. TYPOGRAPHY & UTILITIES
   ========================================================================== */

.text-white {
    color: #ffffff;
}

.large-text {
    font-size: 32px;
}

.mid-text {
    font-size: 24px;
}

.small-text {
    font-size: 18px;
}

.font-bree {
    font-family: "Bree Serif", serif;
}

.bold {
    font-weight: bold;
}


/* ==========================================================================
   3. TOP BAR & LAYOUT
   ========================================================================== */

#top-bar {
    background-color: #111111;
    position: sticky;
    top: 0;
    z-index: 99999999;
}

.container-fluid {
    overflow-x: hidden;
}

.container-fluid#section-gap-1,
.container-fluid#section-gap-2,
.container-fluid#section-gap-3,
.container-fluid#section-gap-4,
.container-fluid#section-gap-5 {
    overflow-x: initial;
    position: relative;
    background-color: #F6F6EE;
}

.container-fluid#section-gap-1 a,
.container-fluid#section-gap-2 a,
.container-fluid#section-gap-3 a,
.container-fluid#section-gap-4 a,
.container-fluid#section-gap-5 a {
    width: 220px !important;
    display: block;
    margin: auto;
}


/* ==========================================================================
   4. BUTTONS
   ========================================================================== */

.but-red {
    background-color: #E52E44;
    color: #ffffff;
    text-align: center;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    margin-top: 10px;
    position: relative;
    top: 7px;
    border-radius: 15px;
}

.but-small {
    border-radius: 12px;
    border: 3px solid #42574A;
    background: linear-gradient(90deg, #232C28 0%, #2D3B31 100%);
    color: #ffffff;
    cursor: pointer;
    text-align: center;
    font-size: 18px;
    padding: 15px 10px;
    padding-top: 12px;
    width: auto;
    display: block;
    margin: auto;
    text-decoration: none;
    position: relative;
}

.but-small.but-small-active,
.but-small:hover {
    color: #2B3930;
    border-radius: 12px;
    border: 3px solid #ffffff;
    background: #E4C251;
    font-weight: bold;
    transition: all 0.5s;
}

.qa-list .but-small.but-small-active {
    border-radius: 12px 12px 0 0;
}

.but-small-active {
    font-weight: 700;
}


/* ==========================================================================
   5. HEADER
   ========================================================================== */

#header {
    background-color: #ffffff;
    background-image: url('images/header-bg-back.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

#header .subtitle {
    color: #FFFFFF;
    text-align: center;
    font-family: Oswald;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-top: 28px;
    margin-bottom: 0;
    max-width: 420px;
    margin: auto;
}


/* ==========================================================================
   6. SECTION TITLES
   ========================================================================== */

.section-title {
    background-color: #0D393A;
    font-size: 32px;
    font-weight: bold;
    border-radius: 20px;
    color: #ffffff;
    width: fit-content;
    margin: auto;
    padding: 10px 20px;
    z-index: 999999;
    position: relative;
}

.section-title::before {
    content: "";
    position: relative;
    left: -100%;
    top: 20px;
    width: 100%;
    height: 3px;
    display: block;
    background: #0b3b3d;
    border-radius: 2px;
}

.section-title::after {
    content: "";
    position: relative;
    right: -100%;
    top: -20px;
    width: 100%;
    height: 3px;
    display: block;
    background: #0b3b3d;
    border-radius: 2px;
}

.section-title-wide::before {
    width: 75%;
}

.section-title-wide::after {
    width: 75%;
}


/* ==========================================================================
   7. SECTION BACKGROUNDS
   ========================================================================== */

#section-1 {
    background-color: #00BAFB;
    background-image: url('images/section-bg-1.png');
    background-size: cover;
    position: relative;
}

#section-2 {
    background-color: #B1D298;
    background-image: url('images/section-bg-2.png');
    background-size: cover;
    position: relative;
}

#section-3 {
    background-color: #E7646B;
    background-image: url('images/section-bg-3.png');
    background-size: cover;
    position: relative;
}

#section-4 {
    background-color: #FEC556;
    background-image: url('images/section-bg-4.png');
    background-size: cover;
    position: relative;
}


/* ==========================================================================
   8. SECTION FLAIRS (decorative clouds & trees)
   ========================================================================== */

.flair-s-1 {
    position: absolute;
    top: -20px;
    left: -20px;
    pointer-events: none;
}

.flair-s-2 {
    position: absolute;
    top: 125px;
    right: -20px;
    pointer-events: none;
}

.flair-s-3 {
    position: absolute;
    top: 200px;
    left: -20px;
    width: 320px;
    pointer-events: none;
}

.flair-s-4 {
    position: absolute;
    top: 200px;
    right: -20px;
    width: 220px;
    pointer-events: none;
}

.flair-t-1 {
    position: absolute;
    top: 100px;
    left: -20px;
    pointer-events: none;
}

.flair-t-2 {
    position: absolute;
    top: 120px;
    right: -20px;
    pointer-events: none;
}

.flair-t-3 {
    position: absolute;
    bottom: 0;
    left: -20px;
    width: 320px;
    pointer-events: none;
}

.flair-t-4 {
    position: absolute;
    bottom: 5px;
    right: -20px;
    width: 320px;
    pointer-events: none;
}

#section-2 .row {
    position: relative;
    z-index: 999;
}


/* ==========================================================================
   9. SECTION GAPS (wave dividers & Steam CTA)
   ========================================================================== */

#section-gap-1 {
    background-color: #F6F6EE;
    position: relative;
}

.wave-top {
    position: absolute;
    height: 100px;
    top: -100px;
    left: 0;
    pointer-events: none;
}

.wave-bot {
    position: absolute;
    height: 100px;
    bottom: -100px;
    left: 0;
    z-index: 9999;
    pointer-events: none;
}

#section-gap-1 a,
.section-gap a {
    text-decoration: none;
    font-weight: bold;
    color: inherit;
}

.but-steam {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: linear-gradient(180deg, #384668 0%, #425585 50%, #6183C5 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    margin: auto;
    position: relative;
}

.but-steam a {
    text-decoration: none;
    color: #fff;
}

.but-steam .fab {
    color: linear-gradient(180deg, #7690C3 0%, #7896DC 50%, #87B4FF 75%, #AEF4FF 100%);
    font-size: 82px;
}

.white-box [src*='wavey-p'] {
    position: relative;
    top: -20px;
}

.mid-text.mt-3 a {
    text-decoration: none;
    color: #222222;
}


/* ==========================================================================
   10. VIDEO CARDS (See Spirit Crossing in Action)
   ========================================================================== */

.vid-card {
    border-radius: 25px;
    overflow: hidden;
}

.vid-card-img {
    position: relative;
    aspect-ratio: 1 / 1;
    z-index: 9999;
    overflow: hidden;
}

.vid-card-img img {
    width: 101%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    display: block;
}

.vid-card-img video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.vid-card-img .fa-play-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    font-size: 48px;
    color: #f4c542;
    cursor: pointer;
    opacity: 0.65;
    transition: 0.4s;
}

.vid-card-img .fa-play-circle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    background: #ffffff;
    border-radius: 50%;
    z-index: -1;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    opacity: 0.65;
    transition: 0.4s;
}

.vid-card-img:hover .fa-play-circle,
.vid-card-img:hover .fa-play-circle::after {
    opacity: 1;
    transition: 0.4s;
}

.vid-card .fa-play-circle {
    color: #E4C251;
}

.in-action-tab-1,
.row.in-action-tab-2,
.row.in-action-tab-3,
.row.in-action-tab-4 {
    display: none !important;
    max-width: 1400px;
    margin: auto !important;
}

.row.in-action-tab-active {
    display: flex !important;
}

[class^="in-action-tab-"] {
    display: none;
}

.in-action-tab-active {
    display: flex;
}

.in-action-controls {
    max-width: 1400px;
    margin: auto !important;
    margin-top: 20px !important;
}

.vid-card-body {
    background-color: #0D393A;
    position: relative;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    margin-top: -40px;
    z-index: 999;
    padding-top: 40px !important;
}

.vid-card-body [src*='wavey'] {
    position: absolute;
    top: -37px;
    left: 0;
    width: 100%;
}

.vid-card p.mt-5.px-3 {
    cursor: default;
}


/* ==========================================================================
   11. QUESTION BOX & QUIZ (Is Spirit Crossing for me?)
   ========================================================================== */

.white-box {
    background-color: #ffffff;
    border-radius: 40px;
    overflow: hidden;
}

.num-cir {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background: #E4C251;
    color: #222222;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1;
    margin: auto;
    margin-top: -15px;
    margin-bottom: 25px;
    position: absolute;
    left: 0;
    right: 0;
}

.question-title,
.bullet-text {
    font-size: 22px;
    margin-bottom: 25px;
    text-align: center;
}

.question-title {
    font-weight: bold;
    padding-left: 20px;
    padding-right: 20px;
}

.white-box .but-small {
    width: 70%;
    margin-bottom: 20px;
    margin-top: 10px;
}

.result-actions .but-small {
    width: 45%;
    margin-bottom: 20px;
    margin-top: 10px;
}

.result-actions .but-small i {
    padding-right: 5px;
}

#nibbit-desktop {
    margin-left: -20px;
    width: 85%;
    max-width: 300px;
}

#nibbit-mobile {
    display: none;
}

.quiz-answer:last-child {
    margin-bottom: 40px !important;
}


/* ==========================================================================
   12. GAMEPLAY EXPERIENCES
   ========================================================================== */

#what-is [src*='ico-what'] {
    max-height: 120px;
    margin-bottom: 10px;
}


/* ==========================================================================
   13. POSTCARDS (3 things you'll do in Spirit Crossing)
   ========================================================================== */

.postcard {
    background-image: url('images/post-card-frame.png');
    padding: 25px;
    max-width: 920px;
    margin: auto;
}

.postcard-1 {
    transform: rotate(4.5deg);
}

.postcard-2,
.postcard-3 {
    display: none;
}

.postcard-2 {
    transform: rotate(-3deg);
    background-image: url('images/post-card-frame-2.png');
}

.postcard-3 {
    transform: rotate(2.2deg);
    background-image: url('images/post-card-frame-3.png');
}

.postcard-inner {
    background-color: #F8F4ED;
    text-align: left;
    padding: 25px;
    display: flex;
}

.postcard-left {
    width: 60%;
    position: relative;
    padding-bottom: 75px;
    padding-right: 40px;
}

.postcard-left p {
    font-size: 18px;
}

.postcard-left p strong {
    font-size: 22px;
}

.postcard-right {
    width: 35%;
    position: relative;
}

.polaroid-1 {
    position: absolute;
    bottom: -252px;
    left: 55px;
    max-width: 350px;
}

.polaroid-2 {
    position: absolute;
    bottom: -185px;
    left: 0;
    max-width: 350px;
}

.polaroid-3 {
    position: absolute;
    bottom: -170px;
    left: 132px;
    max-width: 250px;
}

.polaroid-5 {
    position: absolute;
    bottom: -271px;
    left: 73px;
    max-width: 350px;
}

.post-card-selector {
    max-width: 185px !important;
    padding: 40px 60px;
    border: 7.5px solid #869C9D;
    transition: all 0.4s;
    cursor: pointer;
    font-weight: normal;
}

.post-card-selector.active,
.post-card-selector:hover {
    border: 7.5px solid #0D393A;
    transition: all 0.4s;
}

.post-card-selector.active {
    font-weight: bold;
}

.postcard-controls {
    margin-bottom: -50px;
}

.postcard.active {
    display: block;
}


/* ==========================================================================
   14. JOIN THE PARTY (follower counter)
   ========================================================================== */

.counter {
    background-color: #52794B;
    border-radius: 40px;
    padding: 0 !important;
    padding-bottom: 15px !important;
    margin: 0 !important;
}

.counter-inner {
    background-color: #B9D39C;
    border-radius: 40px;
    margin-bottom: 20px !important;
}

.counter-num {
    display: inline-block;
    background-color: #52794B;
    border-radius: 20px;
    font-size: clamp(10px, 10vw, 200px);
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    padding-top: 5px;
    padding-bottom: 20px;
    padding-left: 15px;
    padding-right: 15px;
}

.counter-gap {
    display: inline-block;
    width: 65px !important;
    color: #ffffff;
    font-size: 98px;
}

.counter-ava-left {
    text-align: right;
}

.counter-ava-right {
    text-align: right;
}


/* ==========================================================================
   15. SECTION 3 - SPRY FOX (awards, newspaper, spotlight)
   ========================================================================== */

[src*='spry-award-1'] {
    max-width: 175px;
}

[src*='spry-award-2'] {
    max-height: 75px;
}

.newspaper-header {
    font-weight: bold;
    font-size: clamp(32px, 10vw, 96px);
}

.newspaper {
    background-color: rgba(244, 240, 237, 0.5);
    border-radius: 30px;
    padding-bottom: 20px;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.newspaper-inner {
    background-image: url('images/newspaper-bg.png');
    border-radius: 30px;
}

.newspaper-contents {
    padding: 13px;
    margin-top: -15px !important;
}

.newspaper-contents a {
    color: initial;
    font-weight: bold;
}

.newspaper-contents .col-md-3,
.newspaper-contents .col-md-5 {
    border-right: 3px solid #222222;
    border-top: 3px solid #222222;
}

.newspaper-contents .col-md-4 {
    border-top: 3px solid #222222;
}

.spotlight {
    background-color: #EC8E90;
    border: 3px solid #cd3e46;
    border-radius: 40px;
}

.spotlight-header {
    background-color: #cd3e46;
    padding: 30px 40px;
    color: #ffffff;
    border-radius: 0 30px 30px 0;
}

.spotlight a {
    color: #cd3e46;
    display: inline-block;
    padding: 10px;
    margin-top: 10px;
    border-radius: 10px;
    background-color: #ffffff;
    text-decoration: none;
    font-weight: bold;
}


/* ==========================================================================
   16. SECTION 4 - GETTING STARTED
   ========================================================================== */

.getting-started {
    background-color: #EE9563;
    border-radius: 40px;
}

.getting-started-card {
    background-color: #ffffff;
    border-radius: 30px;
    overflow: hidden;
}

.getting-started-track {
    padding-bottom: 1rem;
    scrollbar-width: thin;
    scrollbar-color: #0b3b3d #f3c56b;
}

.getting-started-track::-webkit-scrollbar {
    height: 30px !important;
}

.getting-started-track::-webkit-scrollbar-track {
    background: #f3c56b;
    border-radius: 999px;
    box-shadow: inset 0 0 0 3px #f3c56b;
}

.getting-started-track::-webkit-scrollbar-thumb {
    background: #0b3b3d;
    border-radius: 999px;
    box-shadow: inset 0 0 0 2px #0b3b3d;
}


/* ==========================================================================
   17. SECTION 4 - MEET THE CAST
   ========================================================================== */

.cast-card {
    display: flex;
    transition: flex-basis 0.4s ease, max-width 0.4s ease;
    cursor: pointer;
    min-height: 330px;
    max-height: 330px;
}

.cast-row.row {
    max-width: 1200px !important;
    margin: auto;
    margin-left: auto;
    margin-right: auto;
    max-height: 335px;
    overflow: hidden;
}

.cast-card.is-active {
    flex: 0 0 66.666666%;
    max-width: 66.666666%;
}

.cast-card.is-inactive {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.cast-inner {
    background: #EE9563;
    border-radius: 40px;
    overflow: hidden;
    align-items: center;
}

.cast-col-left {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
}

.cast-col-left img {
    max-width: 290px;
    max-height: 310px;
    width: 100%;
    padding-bottom: 20px;
}

.cast-card.is-inactive .cast-col-left {
    flex: 0 0 100%;
    max-width: 100%;
}

.cast-card.is-active .cast-col-left {
    flex: 0 0 41.666666%;
    max-width: 41.666666%;
}

.cast-col-right {
    color: #fff;
    transition: all 0.4s ease;
    overflow: hidden;
}

.cast-card.is-inactive .cast-col-right {
    opacity: 0;
    max-width: 0;
    pointer-events: none;
}

.cast-card.is-active .cast-col-right {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
    opacity: 1;
    padding-left: 2rem;
    transition-delay: 0.15s;
}

.cast-name {
    font-family: 'Lobster', sans-serif;
    font-size: clamp(24px, 6vw, 48px);
    margin-bottom: 15px;
    line-height: 100%;
}

.cast-card.is-hidden {
    display: none;
}


/* ==========================================================================
   18. SECTION 4 - Q&A
   ========================================================================== */

.qa-item {
    margin-bottom: 12px;
}

.qa-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-left: 20px;
}

.qa-icon {
    font-size: 18px;
    margin-left: 12px;
}

.qa-answer {
    background: #E4C251;
    margin-top: 0;
    border-radius: 0 0 12px 12px;
    padding: 16px 20px;
    display: none;
    border: 3px solid #ffffff;
    border-top: 0;
}

.qa-item.is-open .qa-answer {
    display: block;
}

.qa-item.is-open .qa-question {
    color: #2B3930;
    border: 3px solid #ffffff;
    background: #E4C251;
    font-weight: bold;
}

.qa-answer p {
    margin-bottom: 0;
    color: #2B3930;
}

.qa-answer p:last-child {
    margin-top: 10px;
}

[src*='images/char-lofi'] {
    max-width: 320px;
}


/* ==========================================================================
   19. VIDEO OVERLAYS (YouTube & TikTok)
   ========================================================================== */

.video-trigger img {
    cursor: pointer;
    max-width: 100%;
    height: auto;
    display: block;
}

.video-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.85);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999999;
}

.video-container {
    position: relative;
    width: 90%;
    max-width: 960px;
    aspect-ratio: 16 / 9;
    background: #000;
}

.video-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.video-close {
    position: absolute;
    top: -130px;
    right: -65px;
    background: none;
    border: none;
    color: #fff;
    font-size: 120px;
    cursor: pointer;
}

#openVideo {
    cursor: pointer;
}

img#openVideo {
    border: none;
    border-radius: 30px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    transition: all 0.3s;
    bottom: 0;
    position: relative;
}

img#openVideo:hover {
    transform: scale(1.01);
}

/* TikTok Lightbox */
#video-lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999999;
}

.video-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.75);
}

.video-modal {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(420px, 92vw);
    background: #000;
    border-radius: 12px;
    padding: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
}

#video-lightbox #video-container iframe {
    width: 100%;
    height: 720px;
    max-height: 80vh;
    border: 0;
}


/* ==========================================================================
   20. NIBBIT ANIMATIONS (quiz character reactions)
   ========================================================================== */

#nibbit-desktop.react-pulse {
    animation: nibbitPulse 0.5s ease;
}

#nibbit-desktop.react-bounce {
    animation: nibbitBounce 0.6s ease;
}

#nibbit-desktop.react-wiggle {
    animation: nibbitWiggle 0.6s ease;
}

@keyframes nibbitPulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.12); }
    100% { transform: scale(1); }
}

@keyframes nibbitBounce {
    0% { transform: translateY(0); }
    30% { transform: translateY(-12px); }
    60% { transform: translateY(4px); }
    100% { transform: translateY(0); }
}

@keyframes nibbitWiggle {
    0% { transform: rotate(0deg); }
    25% { transform: rotate(-6deg); }
    50% { transform: rotate(6deg); }
    75% { transform: rotate(-3deg); }
    100% { transform: rotate(0deg); }
}


/* ==========================================================================
   21. QUIZ RESULT SCREEN
   ========================================================================== */

#quiz {
    position: relative;
}

.quiz-result {
    position: relative;
    min-height: 520px;
    border-radius: 40px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.quiz-result .result-overlay {
    position: absolute;
    inset: 0;
    padding: 28px 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: linear-gradient(to bottom, rgb(11 85 111 / 50%), rgb(11 85 111 / 82%));
    color: #fff;
}

.quiz-result .result-kicker {
    margin: 0;
    opacity: 0.9;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.quiz-result .result-title {
    margin: 6px 0 10px 0;
    font-size: 42px;
    line-height: 1.05;
}

.quiz-result .result-icon-wrap {
    margin-top: 12px;
    margin-bottom: 4px;
}

.quiz-result .result-icon {
    font-size: 50px;
    margin-top: 10px;
    opacity: 1;
    color: #E4C251;
}

.quiz-result .result-blurb {
    margin: auto;
    margin-top: 10px;
    max-width: 52ch;
    font-size: 16px;
    opacity: 0.95;
}

.quiz-result .result-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.quiz-result .result-alt {
    margin-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    padding-top: 16px;
}

.quiz-result .alt-title {
    margin: 0 0 10px 0;
    font-size: 14px;
    opacity: 0.9;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.alt-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.alt-card {
    display: block;
    text-decoration: none;
    color: #fff;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    min-height: 92px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.25);
}

.alt-card .alt-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0, 0, 0, 0.15),
        rgba(0, 0, 0, 0.65)
    );
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 3px;
}

.alt-card .alt-name {
    margin: 0;
    font-size: 14px;
    line-height: 1.1;
}

.alt-card .alt-one {
    margin: 0;
    font-size: 12px;
    opacity: 0.9;
    line-height: 1.2;
}

/* Quiz result backgrounds */
.result-explorer { background-image: url("images/quiz/quiz-explorer-bg.jpg"); }
.result-helper { background-image: url("images/quiz/quiz-helper-bg.jpg"); }
.result-fluffalo { background-image: url("images/quiz/quiz-fluffalo-bg.jpg"); }
.result-adventurer { background-image: url("images/quiz/quiz-adventurer-bg.jpg"); }
.result-decorator { background-image: url("images/quiz/quiz-decorator-bg.jpg"); }
.result-stylist { background-image: url("images/quiz/quiz-stylist-bg.jpg"); }

/* Quiz alt card backgrounds */
.card-explorer { background-image: url("images/quiz/cards/explorer.jpg"); }
.card-helper { background-image: url("images/quiz/cards/helper.jpg"); }
.card-fluffalo { background-image: url("images/quiz/cards/fluffalo.jpg"); }
.card-adventurer { background-image: url("images/quiz/cards/adventurer.jpg"); }
.card-decorator { background-image: url("images/quiz/cards/decorator.jpg"); }
.card-stylist { background-image: url("images/quiz/cards/stylist.jpg"); }

/* Quiz responsive */
@media (min-width: 768px) {
    .alt-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .quiz-result {
        min-height: 610px;
    }

    .result-actions .but-small {
        width: 100%;
        margin-bottom: -5px;
        padding-top: 8px;
        padding-bottom: 11px;
    }
}

@media (max-width: 360px) {
    .quiz-result {
        min-height: 650px;
    }
}
