* {
    box-sizing: border-box;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    color: var(--slate);
}

:root,
:host {
    --bg-color: #ffffff;
    --white: #ffffff;
    --black: #161612;
    --pure-black: #000;
    --slate: #70747B;
    --silicon: #edf1f3;
    --light-gray: #E2E4EA;
    --cloud: #EEF0F2;
    --dark-sky: #f7f7f7;
    --hal-red: #eb5757;
    --asimov-green: #6fcf97;
    --asimov-green-dark: #155b32;
    --david-yellow: #ffaf51;
    --david-yellow-dark: #956023;
    --zima-blue: #374ffa;
}

html.dark-mode,
html.dark-mode {
    --bg-color: #000000;
    --white: #0a0909;
    --black: #ffffff;
    --pure-black: #fff;
    --slate: #ABABAB;
    --silicon: #19191d;
    --light-gray: #373737;
    --cloud: #202020;
    --dark-sky: #121212;
    --hal-red: #eb5757;
    --asimov-green: #6fcf97;
    --david-yellow: #ffaf51;
    --zima-blue: #374ffa;
}

html.light-mode,
html.light-mode {
    --bg-color: #ffffff;
    --white: #ffffff;
    --black: #161612;
    --pure-black: #000;
    --slate: #70747B;
    --silicon: #edf1f3;
    --light-gray: #E2E4EA;
    --cloud: #EEF0F2;
    --dark-sky: #f7f7f7;
    --hal-red: #eb5757;
    --asimov-green: #6fcf97;
    --asimov-green-dark: #155b32;
    --david-yellow: #ffaf51;
    --david-yellow-dark: #956023;
    --zima-blue: #374ffa;
}

@media (prefers-color-scheme: dark) {
    :root, :host {
        --bg-color: #000000;
        --white: #0a0909;
        --black: #ffffff;
        --pure-black: #fff;
        --slate: #ABABAB;
        --silicon: #19191d;
        --light-gray: #373737;
        --cloud: #202020;
        --dark-sky: #121212;
        --hal-red: #eb5757;
        --asimov-green: #6fcf97;
        --david-yellow: #ffaf51;
        --zima-blue: #374ffa;
    }
}

/* Retina */

@media
only screen and (min-resolution: 2dppx),
only screen and (-webkit-min-device-pixel-ratio: 2) {
  body {
    --weight-light: 300;
    --weight-medium: 400;
  }
}

/* Mobile */

@media (max-width: 768px) {
  body {
    --weight-light: 400;
  }
}

/* Flexbox */

.d-f {
    display: flex;
}

.d-if {
    display: inline-flex;
}

.d-ib {
    display: inline-block;
}

/* Flex direction */
.fd-r {
    flex-direction: row;
}

/* Default */
.fd-rr {
    flex-direction: row-reverse;
}

.fd-c {
    flex-direction: column;
}

.fd-cr {
    flex-direction: column-reverse;
}

/* Flex wrap */
.fw-n {
    flex-wrap: nowrap;
}

/* Default */
.fw-w {
    flex-wrap: wrap;
}

.fw-wr {
    flex-wrap: wrap-reverse;
}

/* Justify content */
.jc-fe {
    justify-content: flex-end;
}

.jc-fs {
    justify-content: flex-start;
}

/* Default */
.jc-c {
    justify-content: center;
}

.jc-sa {
    justify-content: space-around;
}

.jc-sb {
    justify-content: space-between;
}

/* Align items */
.ai-fs {
    align-items: flex-start;
}

.ai-c {
    align-items: center;
}

.ai-fe {
    align-items: flex-end;
}

.ai-s {
    align-items: stretch;
}

/* Default */
.ai-b {
    align-items: baseline;
}

/* Flex grow */
.fg-0 {
    flex-grow: 0;
}

/* Default */
.fg-1 {
    flex-grow: 1;
}

/* Flex shrink */
.fs-0 {
    flex-shrink: 0;
}

.fs-1 {
    flex-shrink: 1;
}

/* Default */

/* Flex basis */
.fb-a {
    flex-basis: auto;
}

/* Default */
.fb-0 {
    flex-basis: 0;
}

/* Align self */
.as-a {
    align-self: auto;
}

/* Default */
.as-fs {
    align-self: flex-start;
}

.as-c {
    align-self: center;
}

.as-fe {
    align-self: flex-end;
}

.as-s {
    align-self: stretch;
}

.as-b {
    align-self: baseline
}

.no-select {
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

.divider-home {
    border-bottom: 1px solid var(--cloud);
    width: 100%;
    margin: 5rem 0;
}

.m-t-3 {
    margin-top: 3rem;
}

.m-t-2 {
    margin-top: 2rem;
}

.fill-w,
.m-btn-big.full-width {
    width: 100%;
}

.fill-h {
    height: 100%;
}

.mobile-only {
    display: none;
}

.desktop-only {
    display: inline-block;
}

@media only screen and (max-width: 950px) {
    .mobile-only {
        display: block;
        top: 22px !important;
    }

    .desktop-only {
        display: none;
    }
}

body {
    margin: 0;
    background-color: var(--bg-color);
    overflow-x: hidden;
}

a {
    transition: .15s ease-in-out;
    color: var(--slate);
    text-decoration: none;
    font-weight: 300;
    cursor: pointer;
}

p,
li,
a,
span,
.pill {
    font-size: 1.3rem;
    line-height: 1.5em;
    font-weight: 300;
    margin: 0;
}

.m-microcopy {
    font-size: 1rem;
}

ul {
    list-style-image: url('/static/imgs/website/homepage/icon-check-home.svg');
    padding-left: 1.5rem;
}

.dark-mode ul {
    list-style-image: url('/static/imgs/website/homepage/icon-check-home-dark.svg');
}

li {
    margin-bottom: 1.875rem;
    padding-left: 1rem;
}

#container-account {
    display: flex;
    align-items: center;
}

.desktop-only.switch-color i {
    margin-right: 1.25rem;
    cursor: pointer;
}

.switch-color .icon-m-moon {
    background-position: -209px -166px;
}

.button,
/* To cover legacy HTML from minima-auth.js */
.m-btn-big,
.m-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: .5rem .6rem .5rem 1rem;
    border-radius: 10px;
    cursor: pointer;
    color: var(--bg-color);
    background-color: var(--black);
    border: none;
    width: fit-content;
    font-size: 1.1rem;
    font-weight: 300;
    min-height: 48px;
    transition: .1s ease;
}

.button:hover,
.m-btn-big:hover,
.m-btn:hover {
    box-shadow: 0 0 0 .5px #e4e5e9, 0 0 0 1px #e4e5e999, 0 0 0 5.5px #f9f9fb;
}

.dark-mode .button:hover,
.dark-mode .m-btn-big:hover,
.dark-mode .m-btn:hover {
    box-shadow: 0 0 0 .5px #424242, 0 0 0 1px #36363799, 0 0 0 5.5px #141414;
}

.box-cta {
    display: flex;
    width: fit-content;
    margin: 0 auto;
}

.box-cta .button,
.section-full-width .button {
    padding: 0.5rem 1rem .5rem 1.5rem;
    font-size: 1.3rem;
    min-height: 58px;
}

.box-cta .button.secondary {
    margin-right: 1rem;
}

/* Loading */

.button.loading,
a.loading,
.cta-button.loading {
  position: relative;
  color: rgba(0, 0, 0, 0)!important;
  pointer-events: none;
  background-position: center;
}

.button.loading i,
.button.loading .arrow-animated,
a.loading i,
.cta-button.loading .arrow-animated {
  opacity: 0!important;
}

.button.loading::after,
.m-btn-big.loading::after,
.m-btn.loading::after,
.cta-button.loading::after {
  content: '';
  position: absolute;
  background-image: url(../imgs/muse-loader-white.gif);
  background-size: 30px!important;
  background-repeat: no-repeat;
  background-position: center;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--black);
  border-radius: 10px;
  transition: background-position 0s, background-repeat 0s;
}

.dark-mode .m-btn.loading::after,
.dark-mode .m-btn-big.loading::after {
    background-image: url(../imgs/muse-loader.gif);
    background-color: var(--black);
}

.dark-mode .button.secondary.loading::after {
  background-image: url(../imgs/muse-loader-white.gif);
  background-color: var(--white);
}

.button.secondary.loading::after,
.dark-mode .cta-button.loading::after {
  background-image: url(../imgs/muse-loader.gif);
}

html.dark-mode .button.secondary.loading::after {
  background-image: url(../imgs/muse-loader-white.gif);
}

.m-btn-big,
.m-btn {
    padding: .5rem .6rem .5rem .6rem;
}

.button.secondary,
.m-btn-pseudo {
    color: var(--black);
    background-color: var(--cloud);
    border: 1px solid var(--light-gray)!important;
}

.dark-mode .button.secondary i,
.button.secondary img,
.dark-mode .m-btn-pseudo i,
.light-mode .m-btn-big i {
    filter: invert(1);
}

.dark-mode .button i,
.dark-mode .m-btn i,
.dark-mode .m-btn-big i {
    filter: invert(0);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    color: var(--black);
}

.landing h1 {
    font-size: 4rem;
    text-align: center;
    margin: 0 0 25px 0;
    color: var(--black);
    background: -webkit-linear-gradient(#000, #fff);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0.64);
}

.dark-mode .landing h1 {
    background: -webkit-linear-gradient(#fff, #000);
    -webkit-background-clip: text;
    -webkit-text-fill-color: #ffffffc2;
}

.landing h3 {
    font-size: 1.8rem;
    line-height: 2.5rem;
    font-weight: 300;
    color: var(--slate);
    text-align: center;
    margin: 0 0 25px 0;
}

.sub-header {
    max-width: 47rem;
    text-align: center;
}

.center h3 {
    font-size: 1.8rem;
    text-align: center;
    font-weight: 400;
    margin: 0 0 25px 0;
    color: var(--black);
}

.main {
    display: grid;
    grid-template-columns: 100%;
    grid-gap: 1px;
    width: 100vw;
    overflow-x: hidden;
    margin-top: 100px;
}

.section-full-width {
    width: 100vw;
    padding: 0 30px;
}

.section-full-width.center {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.landing {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 72rem;
    margin: 0 auto;
    max-width: 100%;
    padding: 3rem;
}

/* Ratings
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.container-ratings {
    display: flex;
    color: var(--black);
    user-select: none;
}

.container-ratings a:hover {
    opacity: 1;
}

.container-ratings span,
.container-ratings p {
    font-size: 1.3rem !important;
    margin: 0 20px 20px 0;
    color: var(--asimov-green);
}

.four-cells,
.three-cells,
.two-cells {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    width: 100vw;
    grid-gap: 1px;
    padding: 0 50px;
}

.four-cells.no-padding,
.three-cells.no-padding,
.two-cells.no-padding {
    padding: 0;
}

.two-cells {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.two-cells .framed {
    max-width: 100%;
}

.section-body .two-cells {
    gap: 3rem;
}

.three-cells {
    display: grid;
    grid-template-columns: 1fr;
}

.cell {
    position: relative;
}

.cell:last-of-type {
    border-right: none
}

.cell.text {
    padding: 1.25rem 20px 40px 20px;
    border: none;
}

span.black,
a.black {
    color: var(--black);
}

.cell.bg {
    padding-top: 50%;
    background-size: cover;
    border-top: 1px solid var(--cloud);
    border-bottom: 1px solid var(--cloud);
    border-right: 1px solid var(--cloud);
}

.cell.search {
    background-image: url(/static/imgs/website/homepage/grid-search.svg);
}

.dark-mode .cell.search {
    background-image: url(/static/imgs/website/homepage/grid-search-dark.svg);
}

.cell.res {
    background-image: url(/static/imgs/website/homepage/grid-speed.svg);
}

.dark-mode .cell.res {
    background-image: url(/static/imgs/website/homepage/grid-speed-dark.svg);
}

.cell.embed {
    background-image: url(/static/imgs/website/homepage/grid-embed.svg);
}

.dark-mode .cell.embed {
    background-image: url(/static/imgs/website/homepage/grid-embed-dark.svg);
}

.cell.chart {
    background-image: url(/static/imgs/website/homepage/grid-chart.svg);
}

.dark-mode .cell.chart {
    background-image: url(/static/imgs/website/homepage/grid-chart-dark.svg);
}

.cell.cast {
    background-image: url(/static/imgs/website/homepage/grid-cast.svg);
}

.dark-mode .cell.cast {
    background-image: url(/static/imgs/website/homepage/grid-cast-dark.svg);
}

.cell.fast {
    background-image: url(/static/imgs/website/homepage/grid-fast.svg);
}

.dark-mode .cell.fast {
    background-image: url(/static/imgs/website/homepage/grid-fast-dark.svg);
}

.cell.team {
    background-image: url(/static/imgs/website/homepage/grid-team.svg);
}

.dark-mode .cell.team {
    background-image: url(/static/imgs/website/homepage/grid-team-dark.svg);
}

.cell.ad-free {
    background-image: url(/static/imgs/website/homepage/grid-shield.svg);
}

.dark-mode .cell.ad-free {
    background-image: url(/static/imgs/website/homepage/grid-shield-dark.svg);
}

/* Logos */

.container-logos {
    margin: 2.5rem 0;
    width: max-content;
    flex-direction: column;
}

.container-logos img {
    height: 1.1rem;
    margin-right: 2rem;
    filter: contrast(2) saturate(0);
}

.dark-mode .container-logos img {
    filter: contrast(2) saturate(0) invert(1) brightness(2);
}

.container-logos span {
    margin-bottom: 1.8rem;
    min-width: fit-content;
    font-size: .8rem;
    text-transform: uppercase;
}

.flex-logos img:last-of-type {
    margin: 0;
}

/* Review links */
.links-reviews {
    margin-top: 25px;
}

.links-reviews span {
    color: var(--black);
    margin-right: 3rem;
}

.links-reviews span:last-child {
    margin-right: 0;
}

.links-reviews a {
    color: var(--slate);
    text-decoration: none;
}

.links-reviews svg {
    stroke: var(--slate);
    margin: 0 0 1px 8px;
}

/* Email field */
.landing .container-cta {
    margin: 1rem 0 1.5rem 0;
}

.container-cta .email-field-landing {
    height: 3.1250rem;
    width: 22.50rem;
    font-size: 1.3rem;
    font-weight: 300;
    padding: 0 20px;
    border: none;
    border-radius: 16px;
    background-color: var(--cloud);
    z-index: -1;
}

.container-cta .email-field-landing:focus {
    outline: none;
}

.container-cta .email-field-landing::placeholder {
    opacity: .8;
}

.container-cta .cta-button {
    position: relative;
    display: flex;
    align-items: center;
    height: 5.125rem;
    width: max-content;
    padding: 0 35px 0 40px;
    font-size: 1.5rem;
    color: var(--white);
    background-color: var(--black);
    border: none;
    border-radius: 15px;
    cursor: pointer;
    font-weight: 300;
}

.landing .cta-button:hover::before {
    transform: scale(1.2);
}

.light-mode .landing .cta-button::before {
    opacity: 0;
}

.container-cta.error,
.container-cta.success {
    display: flex;
    align-items: center;
    color: var(--bg-color);
    background-color: var(--david-yellow);
    border: none;
    padding: 1rem 2rem;
    min-height: 72px;
}

.container-cta.success {
    background-color: var(--asimov-green);
}

.container-cta.error p,
.container-cta.error a {
    color: var(--david-yellow-dark);
    text-align: center;
    line-height: 1.3em;
}

.container-cta.success p,
.container-cta.success a {
    color: var(--asimov-green-dark);
    text-align: center;
    line-height: 1.3em;
}

.container-cta.error a,
.container-cta.success a {
    text-decoration: underline;
    line-height: 1.3em;
}

.container-cta.error a {
    margin-left: .5rem;
}

#section-hero.section-full-width {
    padding: 0;
}

#section-hero .landing {
    padding: 4.8rem 80px;
}

#section-carousel.section-full-width {
    padding: 0;
}

.carousel {
    display: flex;
    overflow: hidden;
    white-space: nowrap;
    flex-direction: row;
}

.wrapper-carousel {
    position: relative;
    padding: 10px;
    margin-right: 1rem;
    height: 410px;
}

.framed {
    box-shadow: 0 0 0 .5px #e4e5e9, 0 0 0 1px #e4e5e999, 0 0 0 5.5px #f9f9fb, 0 0 0 6px #f3f4f7;
    border-radius: 15px;
    flex: 0 0 auto;
    margin: 0;
    width: auto;
    height: 100%;
    max-height: 24rem;
    aspect-ratio: 29/18;
    pointer-events: none;
    background: var(--cloud);
}

.framed.loaded {
    aspect-ratio: auto;
}

.dark-mode .framed {
    box-shadow: 0 0 0 .5px #424242, 0 0 0 1px #36363799, 0 0 0 5.5px #242424, 0 0 0 6px #464646;
}

.wrapper-carousel .framed {
    margin-right: 2rem;
}

.wrapper-carousel .framed:last-of-type {
    margin-right: 0;
}

/* Arrow animation */

.arrow-animated {
    display: flex;
    align-items: center;
    margin-left: 15px;
    transform: scale(1.2);
}

.dark-mode .arrow-animated {
    filter: invert(1);
}

.arrow-caret {
    margin: 0 !important;
    transform: translatex(-8px);
    transition: transform .1s ease;
}

.arrow-line {
    opacity: 0;
    transition: opacity .1s ease;
}

a:hover .arrow-caret,
button:hover .arrow-caret {
    transform: translatex(-5px);
}

a:hover .arrow-line,
button:hover .arrow-line {
    opacity: 1;
}

/* Sections */

.section-body .two-cells {
    display: flex;
    justify-content: center;
}

.center h3,
.section-body h3 {
    font-size: 2.5rem;
    text-align: center;
    font-weight: 500;
    margin: 0 0 2rem 0;
    color: var(--black);
    background: -webkit-linear-gradient(#000, #fff);
    background-clip: border-box;
    -webkit-background-clip: text;
    -webkit-text-fill-color: rgba(0, 0, 0, 0.64);
}

.center span,
.center p {
    text-align: center;
}

.dark-mode .center h3,
.dark-mode .section-body h3 {
    background: -webkit-linear-gradient(#fff, #000);
    -webkit-background-clip: text;
    -webkit-text-fill-color: #ffffffc2;
}

.section-body .cell {
    max-width: 40rem;
}

.pill {
    font-size: 1rem;
    padding: .6rem .8rem .5rem .8rem;
    margin-bottom: 1.5625rem;
    color: var(--black);
    background-color: var(--white);
    border: 1px solid var(--cloud);
    border-radius: 10px;
}

.pill .icon-m-play {
    background-position: 0 -210px;
}

.pill .icon-m-embed {
    background-position: -2px -400px;
}

/* Import */
nav {
    display: flex;
    font-size: 1.1250rem;
}

#muse-logo {
    height: 1.5rem;
}

.dark-mode #muse-logo {
    filter: invert(1);
}

.nav-expansion {
    position: fixed;
    left: 0;
    top: 5rem;
    padding: 0.625rem 30px 30px 30px;
    width: 100%;
    max-height: calc(100vh - 100px);
    background-color: var(--bg-color);
    border-bottom: 1px solid var(--cloud);
    overflow: auto;
    opacity: 0;
    pointer-events: none;
    /* transform: translatey(-10px); */
    /* transition: opacity .15s ease-in-out, transform .15s ease-in-out; */
    z-index: 5;
}

.nav-menu-grid {
    display: grid;
    margin: 0 auto;
    gap: 10px;
    grid-auto-rows: min-content;
    --auto-grid-min-size: calc(24%);
    grid-template-columns: repeat(auto-fill, minmax(var(--auto-grid-min-size), 1fr));
}

.dimmer {
    content: '';
    position: fixed;
    left: 0;
    top: 5rem;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: rgba(0, 0, 0, .5);
    pointer-events: none;
    opacity: 0;
    /* transition: opacity .1s; */
}

.nav-link-container.hover~.dimmer {
    opacity: 1;
    z-index: 0;
}

.nav-link-container.hover>.nav-expansion,
.nav-expansion:hover {
    opacity: 1;
    pointer-events: all;
    transform: translatey(0);
}

.nav-expansion-cell {
    padding: 1.5rem !important;
    transition: background-color .15s ease-in-out, border .15s ease-in-out !important;
    text-decoration: none;
    border: 1px solid var(--cloud);
    border-radius: 10px;
    height: 14rem;
}

.nav-expansion-cell:last-of-type {
    margin-bottom: 0;
}

.nav-expansion-cell:hover {
    border: 1px solid var(--black);
}

.nav-expansion-cell i {
    opacity: .4;
    transition: opacity .15s ease-in-out;
}

.nav-expansion-cell:hover i {
    opacity: 1;
}

.nav-expansion h2 {
    font-size: 1.8rem;
}

.nav-menu-grid h2 {
    flex-direction: column;
    display: flex;
    font-size: 1.3rem;
    font-weight: 400 !important;
    margin: 0 !important;
    color: var(--black);
}

.nav-expansion p {
    margin: 0.35rem 0 0 0;
    font-size: 1.1rem;
    font-weight: 300;
    line-height: 1.6rem;
    text-decoration: none;
}

.nav-link-container::after {
    content: '';
    position: absolute;
    width: calc(100% + 24px);
    left: -0.8125rem;
    bottom: -23px;
    height: 4rem;
}

/* Topbar
–––––––––––––––––––––––––––––––––––––––––––––––––– */

#main-nav {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 3;
}

.menu {
    display: flex;
    align-items: center;
    position: relative;
}

.topbar {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 4.3750rem;
    background-color: var(--bg-color);
    padding: 1.25rem 30px;
}

.minimized .topbar {
    border-bottom: 1px solid var(--cloud);
}

#link-home {
    position: absolute;
    left: 1.8rem;
    height: 1.5rem;
}

.nav-links {
    position: absolute;
    right: 1.8rem;
}

.nav-link-container,
.menu>a {
    display: flex;
    justify-content: space-around;
    align-items: center;
    position: relative;
    margin-right: 1.25rem;
    font-weight: 300;
    cursor: pointer;
    padding: .5rem .4rem .5rem 1rem;
    border-radius: 3rem;
    transition: background-color .15s ease-in-out;
    border-radius: 0.625rem;
    font-size: 1.1rem;
    max-height: 42px;
    color: var(--black);
}

.menu>a {
    padding: .7rem 1rem .7rem 1rem;
    margin: 0;
}

.nav-link-container:hover,
.menu>a:hover {
    color: var(--black);
    background-color: var(--cloud);
}

.nav-link-container i {
    margin-left: 2px;
    transition: transform .5s ease;
}

.nav-link-container:hover>i {
    transform: translatey(2px);
    transition: transform .1s ease;
}

#account-dropdown .m-dropdown-content {
    font-size: 1.4rem;
    margin-top: 3rem;
}

.mobile-menu-btn {
    position: fixed !important;
    top: 22px;
    right: 25px !important;
}

.mobile-menu-home {
    display: none;
    position: fixed;
    top: 70px;
    width: 100vw;
    background-color: var(--bg-color);
    z-index: 99;
    opacity: 1;
}

.mobile-menu-home.active {
    display: block;
}

.mobile-menu-home button,
.mobile-menu-home a {
    margin: 0;
}

.mobile-menu-btn {
    position: absolute;
    right: 0;
    margin: 0;
    z-index: 2000;
    cursor: pointer;
    filter: invert(0);
}

.mobile-menu-overlay {
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
}

.dark-mode .mobile-menu-btn {
    filter: invert(1);
}

.mobile-menu-btn.on {
    position: fixed;
    top: 22px;
    right: 20px;
}

.mobile-menu-links {
    display: flex;
    flex-direction: column;
    position: relative;
    top: 0;
    width: 100vw;
    height: unset;
    padding: 10px 30px 30px 30px;
    border-bottom: 1px solid var(--cloud);
    background-color: var(--bg-color);
    z-index: 1;
}

.mobile-menu-links a {
    color: var(--black);
    display: inline-flex;
    font-size: 1.2rem;
    text-decoration: none;
    padding: 0.75rem 0;
    border-top: 1px solid var(--cloud);
}

.mobile-menu-links a.current {
    opacity: .5;
}

.mobile-menu-buttons {
    margin-top: 0;
    border-top: 1px solid var(--cloud);
    padding-top: 20px;
}

.mobile-menu-buttons a {
    width: 100%;
    color: var(--white);
    font-size: 1.1rem;
    justify-content: center;
}

#login-btn-mobile,
#logout-btn-mobile,
#btn-go-to-muse-mobile {
    display: flex;
    justify-content: center;
    align-items: center;
    bottom: 25px;
    left: 25px;
    right: 25px;
    width: 100%;
    margin-top: 10px;
}

#btn-get-started-mobile,
#btn-go-to-muse-mobile {
    bottom: 90px;
    right: 25px;
    left: 25px;
}

#btn-go-to-muse-mobile i {
    font-size: 3rem;
    margin-left: 7px;
}

.m-dropdown::after {
    content: '';
}

.m-dropdown.rotated::after {
    content: '';
}

.m-dropdown-content {
    right: 0;
    min-width: unset;
}

#login-btn,
#account-dropdown {
    display: none;
}

.header-box .cta-button,
.header-box .btn-go-to-muse {
    animation: fadein 1s;
}

html.logged-in #account-dropdown,
html.logged-in #logout-btn-mobile,
html.logged-in .header-box .btn-go-to-muse {
    visibility: visible !important;
    display: inline-flex !important;
}

html.logged-in #btn-go-to-muse-mobile {
    display: flex !important;
}

html.logged-in .btn-go-to-muse {
    visibility: visible !important;
    display: inline-flex !important;
    margin-left: 0 !important;
}

.header-box .cta-button {
    display: none;
    margin-left: 0 !important;
}

html.logged-in #login-btn,
html.logged-in #main-nav .cta-button,
html.logged-in .header-box .cta-button,
html.logged-in #login-btn-mobile,
html.logged-in .validate.homepage,
html.logged-in #btn-get-started-mobile {
    display: none;
    visibility: visible;
}

html.logged-out #account-dropdown,
html.logged-out #logout-btn-mobile,
html.logged-out .btn-go-to-muse,
html.logged-out #btn-go-to-muse-mobile {
    display: none;
}

html.logged-out #login-btn,
html.logged-out #main-nav .cta-button,
html.logged-out .header-box .cta-button,
html.logged-out .validate.homepage,
html.logged-out #btn-get-started-mobile,
.logged-out .dark-toggle {
    display: inline-flex !important;
    visibility: visible !important;
}

html.logged-out #login-btn-mobile {
    display: flex !important;
    visibility: visible !important;
}

#btn-theme-mobile {
    display: none !important;
    visibility: hidden !important;
    cursor: pointer;
}

/* Footer
–––––––––––––––––––––––––––––––––––––––––––––––––– */

footer {
    position: relative;
}

.footer-container {
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 86rem;
    padding: 6rem 30px 7rem 30px;
    margin: 0 auto;
}

.footer-links-container {
    width: 50%;
    min-width: 25rem;
}

.footer-links {
    display: flex;
    flex-direction: column;
}

.footer-links a,
.footer-links span {
    font-size: 16px;
    margin-bottom: 10px;
}

.footer-links span {
    color: var(--black);
    margin-bottom: 0.625rem;
}

.footer-logo {
    height: 2.5rem;
    margin-top: 10px;
}

.dark-mode .footer-logo {
    filter: invert(1);
}

.cr-notice {
    display: flex !important;
    align-items: center;
    color: var(--text-color-light);
    margin: 0 !important;
    font-size: 1.2rem;
}

.footer-btn {
    color: var(--black) !important;
    background-color: var(--cloud) !important;
    border: 1px solid var(--cloud) !important;
    transition: .5s;
}

.footer-sublinks {
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
    max-width: 86rem;
    margin: 0 auto;
}

.footer-sublinks a,
.footer-sublinks span {
    font-size: 0.8rem;
    margin-right: 10px;
    padding-left: 10px;
}

footer .container-cta {
    position: absolute;
    bottom: 15rem;
}

.footer-link-dash {
    opacity: .7;
    margin: 0 5px;
}

/* User stories */

.container-cards-user-stories {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

.card-user-story {
    position: relative;
    height: 290px;
    width: 40vw;
    border-radius: 15px;
    overflow: hidden;
    cursor: pointer;
}

.card-user-story:hover .bg-img-story {
    transform: scale(1.05);
}

.bg-img-story {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    transform-origin: center;
    transition: transform .5s ease;
}

.bg-img-story.academia {
    background-image: url(/static/imgs/website/homepage/user-story-academia.jpg);
}

.bg-img-story.tacfit {
    background-image: url(/static/imgs/website/homepage/user-story-tacfit.jpg);
}

.card-user-story h2 {
    position: absolute;
    bottom: 40px;
    left: 40px;
    right: 40px;
    font-size: 1.8rem;
    font-weight: 400 !important;
    color: #fff;
    line-height: 2.5rem;
    margin: 0 !important;
    z-index: 1;
}

.card-user-story img {
    position: absolute;
    top: 40px;
    right: 40px;
    height: 20px;
    z-index: 1;
}

.card-user-story.tacfit img {
    height: 29px;
    filter: invert(1);
}

.card-user-story::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 90%;
    color: #ffffff;
    background: linear-gradient(to bottom, hsla(0, 0%, 0%, 0) 0%, hsla(0, 0%, 0%, 0.009) 4.3%, hsla(0, 0%, 0%, 0.031) 8.9%, hsla(0, 0%, 0%, 0.065) 13.8%, hsla(0, 0%, 0%, 0.108) 18.9%, hsla(0, 0%, 0%, 0.158) 24.4%, hsla(0, 0%, 0%, 0.214) 30.2%, hsla(0, 0%, 0%, 0.272) 36.3%, hsla(0, 0%, 0%, 0.332) 42.8%, hsla(0, 0%, 0%, 0.391) 49.7%, hsla(0, 0%, 0%, 0.446) 57%, hsla(0, 0%, 0%, 0.496) 64.7%, hsla(0, 0%, 0%, 0.538) 72.8%, hsla(0, 0%, 0%, 0.571) 81.4%, hsla(0, 0%, 0%, 0.592) 90.5%, hsla(0, 0%, 0%, 0.6) 100%);
    z-index: 0;
}

.card-user-story::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 80px;
    max-height: 60%;
    color: #ffffff;
    background: linear-gradient(to top, hsla(0, 0%, 0%, 0) 0%, hsla(0, 0%, 0%, 0.009) 4.3%, hsla(0, 0%, 0%, 0.031) 8.9%, hsla(0, 0%, 0%, 0.065) 13.8%, hsla(0, 0%, 0%, 0.108) 18.9%, hsla(0, 0%, 0%, 0.158) 24.4%, hsla(0, 0%, 0%, 0.214) 30.2%, hsla(0, 0%, 0%, 0.272) 36.3%, hsla(0, 0%, 0%, 0.332) 42.8%, hsla(0, 0%, 0%, 0.391) 49.7%, hsla(0, 0%, 0%, 0.446) 57%, hsla(0, 0%, 0%, 0.496) 64.7%, hsla(0, 0%, 0%, 0.538) 72.8%, hsla(0, 0%, 0%, 0.571) 81.4%, hsla(0, 0%, 0%, 0.592) 90.5%, hsla(0, 0%, 0%, 0.6) 100%);
    z-index: 1;
}

@media (hover: hover) {
    .footer-links a:hover {
        color: var(--black);
        transition: color .5s;
    }

    .footer-btn:hover {
        background-color: var(--cloud) !important;
        border: 1px solid var(--cloud) !important;
        transition: .5s;
    }
}

/* Dark Mode
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.dark-mode .dark-mode-icon,
.dark-mode .dark-mode-label,
.light-mode .light-mode-icon,
.light-mode .light-mode-label {
    display: none !important;
}

/* Account Dropdown */

.m-dropdown-content {
    position: absolute;
    right: 0;
    transform: translateY(-15px);
    visibility: hidden;
    opacity: 0;
    margin-top: 0;
    background: var(--bg-color);
    width: max-content;
    width: -moz-max-content;
    width: -webkit-max-content;
    white-space: nowrap;
    z-index: 6;
    transition: opacity .1s cubic-bezier(0.19, 1, 0.22, 1), transform .1s cubic-bezier(0.19, 1, 0.22, 1), visibility .1s cubic-bezier(0.19, 1, 0.22, 1);
    user-select: none;
    border: 1px solid var(--cloud);
    border-radius: 15px;
}

.m-dropdown-content a {
    display: flex;
    align-items: center;
    position: relative;
    color: var(--black);
    padding: .5rem 1rem;
    font-size: 1.1rem;
    text-align: left;
    text-decoration: none;
    width: 100%;
    line-height: 1.625rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border 0s;
    border-radius: 10px;
}

@media (hover: hover) {
    .m-dropdown-content a:hover {
        background-color: var(--cloud);
    }
}

.account-name,
.account-email,
.light-mode-label,
.dark-mode-label {
    font-size: 1.1rem;
    color: var(--black);
}

.account-email {
    opacity: .5;
}

.account-header {
    padding: 10px 10px 20px 0;
    text-decoration: none;
    width: 100%;
    border-bottom: 1px solid var(--cloud);
    margin-bottom: 1.25rem;
    margin-bottom: 0;
}

.account-header .account-details {
    line-height: 1.2rem;
    margin-bottom: 0;
    padding: 1rem;
    width: calc(100% - 10px);
    margin: 0.32rem;
    border-radius: 10px;
    color: var(--black);
}

.grid-menu {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.32rem;
    padding: 0.32rem;
}

/* Player demo */

.container-demo-player {
    display: flex;
    justify-content: center;
}

.container-demo-player .muse-video-player {
    width: 100%;
    border-radius: 30px;
    padding: 10px;
    background-color: var(--cloud);
    border: 1px solid var(--light-gray);
    margin-top: 5rem;
}

.light-mode .container-demo-player .muse-video-player {
    border: 1px solid #e6e6e6;
}

#section-player .cell {
    max-width: 100vw;
}

.container-features-demo-search {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 3rem 60px 0 60px;
    width: 56rem;
    max-width: 100%;
}

.feature-demo-search {
    font-size: 1.1rem;
    line-height: 2.4rem;
    margin: 0 10px 10px 0;
    text-align: left;
    color: var(--black);
    display: inline-block;
    padding: 0.2rem 12px 3px 10px;
    border: 1px solid var(--cloud);
    border-radius: 10px;
    background-color: var(--white);
}

.feature-demo-search i {
    transform-origin: center;
    margin-right: 10px;
    filter: invert(93%) sepia(9%) saturate(111%) hue-rotate(185deg) brightness(65%) contrast(84%) !important;
}

.container-demo-search-videos {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 70rem;
    padding-top: 3.75rem;
    min-width: 60%;
}

.title-keywords {
    margin: 0 15px 0 0;
}

.container-demo-search-videos .tab-demo-search {
    margin-top: 0;
    width: calc(100% - 430px);
}

.container-demo-search-videos .muse-video-player {
    position: relative;
}

.box-demo-search-suggestions {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -3.75rem;
    right: unset;
    margin-top: 0;
    text-align: center;
}

.box-demo-search-suggestions .suggestion {
    font-size: 1.6rem;
    background-color: transparent;
    padding: 0;
    color: var(--black);
    margin-right: 0.5rem;
    user-select: none;
    cursor: pointer;
    transition: opacity .1s ease;
}

.box-demo-search-suggestions .suggestion:hover {
    opacity: .7;
}

.suggestion:last-of-type {
    margin-right: 0;
}

.suggestion .icon-m-search {
    background-position: -15.9375rem -210px;
}

.dark-mode .suggestion .icon-m-search {
    filter: invert(1) !important;
}

.container-demo-search-thumbnail {
    display: none;
}

.textbox-demo-search-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    z-index: 2;
    transition: opacity .1s;
}

.container-demo-search-thumbnail .tab.active .textbox-demo-search-tab {
    opacity: 1;
}

.textbox-demo-search-tab span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2rem;
    padding: 0 9px 0 6px;
    background-color: rgba(0, 0, 0, .5);
    font-size: 0.8750rem;
    line-height: normal;
    color: #fff;
    border-radius: 1px;
}

.textbox-demo-search-tab span i {
    margin-right: 0.1875rem;
    filter: invert(1);
    background-position: 0 -210px;
}

.background-demo-search-tab {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: cover;
    background-repeat: no-repeat;
    filter: brightness(.4);
    transition: filter .1s;
}

.container-suggestions {
    display: flex;
    align-items: center;
    position: absolute;
}

.suggestion {
    padding: 7px 15px 6px 17px;
    background-color: var(--white);
    border: 1px solid var(--cloud);
    color: var(--black);
    border-radius: 10px;
    cursor: pointer;
    transition: .15s ease;
    font-size: 1.1rem;
    margin-right: 1.25rem;
}

.suggestion:hover {
    background-color: var(--cloud);
}

.container-info {
    display: flex;
    align-items: center;
    margin: 0 auto 30px auto;
    color: var(--black);
    width: max-content;
}

.container-info span {
    font-size: 1.3rem;
}

.info-left {
    display: flex;
    align-items: center;
    font-size: 16px;
    border-right: 1px solid var(--light-gray);
    padding-right: 1.25rem;
    color: var(--black);
    margin-right: 1.25rem;
}

.info-left img {
    max-height: 1.5rem;
    margin-right: 10px;
}

.dark-mode .info-left img {
    filter: invert(1);
}

/* Use cases */

.tab-list {
    width: 100%;
}

.tab-list .tab.active {
    position: relative;
    color: var(--black);
}


.use-cases-container {
    width: 100%;
}

.use-cases-body {
    display: none;
    padding: 20px 0 0 0;
}

.use-cases-body.show {
    display: flex;
    align-items: flex-start;
}

.grid-features {
    padding: 0 30px;
    max-width: 1500px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 10px;
}

.cell-grid-feature {
    position: relative;
    border-radius: 1px;
    padding: 25px;
    cursor: default;
    background-image: radial-gradient(circle, var(--slate) 15%, transparent 10%), radial-gradient(circle, var(--slate) 15%, transparent 10%);
    background-size: 10px 10px;
    background-position: 0 0, 0 0;
    transition: border .5s ease;
}

.cell-grid-feature::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.8) 0%, rgb(255, 255, 255) 100%);
    z-index: 1;
}

.dark-mode .cell-grid-feature::before {
    background: radial-gradient(circle, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, 1)100%);
}

.cell-grid-feature h5,
.cell-grid-feature h5 a {
    position: relative;
    font-size: 1.5rem;
    color: var(--black);
    font-weight: 400;
    margin: 1rem 0;
    z-index: 1;
}

.cell-grid-feature p,
.cell-grid-feature a {
    position: relative;
    font-size: 1.1rem;
    z-index: 1;
}

.cell-grid-feature a {
    text-decoration: underline !important;
}

.cell-grid-feature i {
    margin: 0 0 0 -4px;
    z-index: 1;
}

.use-cases-body img {
    width: 630px;
    height: auto;
    margin-right: 35px;
    outline: none;
    flex-shrink: 0;
    background: #444;
}

.dark-mode .use-cases-body img {
    outline: 2px solid #000;
    outline-offset: -2px;
}

.use-cases-tabs {
    display: flex;
    justify-content: center;
    width: unset;
    margin-bottom: 0;
    background: none;
    scrollbar-color: transparent transparent;
    scrollbar-width: thin;
    overflow: auto;
}

.use-cases-tabs::-webkit-scrollbar {
    height: 1px;
    width: 1px;
}

.use-cases-tabs::-webkit-scrollbar-track {
    background: var(--bg-color);
    opacity: 0;
}

.use-cases-tabs::-webkit-scrollbar-thumb {
    background: transparent;
    border: none;
}

#use-cases .tab {
    font-size: 1.31rem;
    padding: .5rem 1.2rem !important;
    border: none;
    margin-right: 35px;
    opacity: .7;
    font-weight: 400;
    border-radius: 10px;
    transition: color .1s ease, opacity .1s ease;
    min-width: fit-content;
}

@media (hover: hover) {
    #use-cases .tab:hover {
        background: none;
        color: var(--black);
        opacity: 1;
    }
}

#use-cases .tab.active {
    opacity: 1;
    background-color: var(--cloud);
}

#use-cases .tab.active::after {
    content: none;
    bottom: 0;
}

#use-cases .section-title {
    text-align: center;
}

/* Auth modals */

.m-input {
    height: 60px;
    font-size: 1.1rem;
    font-weight: 300;
    padding: 0 1.4rem;
    border: none;
    border-radius: 10px;
    background-color: var(--white);
    width: 100%;
    border: 1px solid var(--light-gray);
    outline: none !important;
    transition: .1s ease;
}

.m-input:focus {
    outline: none !important;
}

.m-input:hover {
    background-color: var(--dark-sky);
}

.m-input:focus {
    background-color: var(--cloud);
}

.m-modal .m-input {
    margin-bottom: .7rem;
}

.m-modal button,
.m-modal .m-button-big,
.m-modal .m-btn {
    min-height: 60px;
}

.m-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 80px;
    padding: 0 30px;
}

.m-modal-header img {
    display: none;
}

.m-modal h5 {
    display: inline-flex;
    font-size: 1.3rem;
    margin-bottom: 0 !important;
    font-weight: 400 !important;
    color: var(--black);
    margin: 0;
}

.m-modal-content {
    position: relative;
    opacity: 0;
    background: var(--bg-color);
    border-radius: 20px;
    border: 1px solid var(--cloud);
    transform: translateY(50px);
    padding: 0;
    min-width: unset;
    max-width: unset;
    width: 430px;
    transition: opacity .1s ease, transform .1s ease;
    overscroll-behavior: contain;
}

.m-modal-content.auth {
    bottom: 0;
}

.m-modal-content i {
    position: relative;
}

.m-modal.current .m-modal-content {
    transform: translateY(0);
    opacity: 1;
}

.m-modal-body {
    padding: 1rem 2rem 2rem 2rem;
}

.m-modal-body.no-footer {
    margin-bottom: 0;
}

.m-modal-footer {
    display: flex;
    justify-content: flex-end;
    text-align: right;
    margin-top: 30px;
}

.login-flow-container .m-modal-footer {
    margin-top: 25px;
}

#modal-login-otp input[name=otp] {
    margin-top: 15px;
    font-size: 2rem;
}

.submitted .cta-request-signup-email:invalid,
#modal-sign-up.submitted .m-input:invalid {
    border: 1px solid var(--david-yellow) !important;
}

.msg-signup {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: absolute;
    min-height: 60px;
    padding: 20px;
    width: 100%;
    background-color: var(--asimov-green);
    color: var(--white);
    border-radius: 15px;
    color: var(--asimov-green);
    opacity: 0;
    pointer-events: none;
    transition: opacity .1s ease;
}

.msg-signup p {
    color: var(--asimov-green-dark);
    font-size: 1.3rem!important;
    line-height: 1.5rem!important;
    text-align: center;
}

.success .msg-signup {
    height: 161px;
    position: unset;
    opacity: 1;
    pointer-events: all;
    padding: 10px 20px 20px 20px;
}

#modal-sign-up.success .m-input,
#modal-sign-up.success .btn-google-auth,
#modal-sign-up.success .divider.or {
    display: none;
}

.msg-signup.error {
    background-color: var(--david-yellow);
    color: var(--david-yellow-dark);
}

#modal-sign-up .m-modal-footer .close-modal,
#modal-sign-up.success .m-modal-footer .create-account {
    display: none;
}

#modal-sign-up.success .m-modal-footer .close-modal {
    display: block;
}

#modal-sign-up .auth-error-message {
    margin-top: 15px;
}

#modal-sign-up h5,
#modal-reset h5,
#modal-activate-check h5,
#modal-reset-check h5 {
    position: absolute;
    top: 1.3rem;
}

#modal-sign-up .m-modal-header {
    justify-content: flex-end;
}

.auth-error-message {
    background-color: #eb57572b;
    display: block;
    padding: .7rem 1rem;
    border-radius: 8px;
    color: var(--hal-red);
    margin: .5rem 0 1rem 0;
}

.auth-error-message:empty {
    display: none;
}

.close {
    background-position: -99px -431px !important;
    background-color: var(--cloud);
    border-radius: 50%;
    opacity: 1;
    transition: .1s ease;
}

.dark-mode .close {
    background-color: #DFDFDF;
}

.close:hover {
    opacity: .7;
}

.m-modal-body p {
    font-size: 1rem;
    line-height: 1.4rem;
}

/* Google button */

.btn-google-auth {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    width: 100%;
    background: var(--cloud);
    border: 1px solid var(--light-gray);
    font-size: 1.1rem;
    color: var(--black);
    font-weight: 300;
    border-radius: 10px;
    box-shadow: none;
    white-space: nowrap;
    transition: opacity .1s;
    padding: 0.5rem 11px 9px 18px;
}

.btn-google-auth:hover {
    cursor: pointer;
    opacity: .7;
}

.btn-google-auth .icon-google {
    background-image: url('/static/imgs/website/icon-google.svg');
    display: inline-block;
    width: 22px;
    height: 22px;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 12px !important;
    filter: invert(0) !important;
}

.loading .btn-google-auth {
    color: rgba(0, 0, 0, 0) !important;
    background-size: 30px !important;
    background-image: url(/static/imgs/muse-loader.gif);
    pointer-events: none;
    background-repeat: no-repeat;
    background-position: center;
    transition: background-position 0s, background-repeat 0s;
}

.dark-mode .loading .btn-google-auth {
    background-image: url(/static/imgs/muse-loader-white.gif);
}

.loading .icon-google {
    display: none;
}

.loading #modal-form-login,
.loading #modal-form-sign-up,
.loading .m-modal-footer {
    pointer-events: none;
    opacity: .5;
}

/* Mobile */

@media (max-width: 1080px) {
    .use-cases-body img {
        width: 500px;
    }

    #login-btn span {
        display: none;
    }

    #main-nav .cta-topbar {
        margin-left: 17px;
    }
}

@media (max-width: 950px) {
    .use-cases-body img {
        width: 400px;
    }
}

/* Hide use-cases scrollbar on mobile */

@media (max-width: 950px) and (hover:none) {
    #use-cases::-webkit-scrollbar {
        display: none !important;
        width: 0px !important;
        height: 0px !important;
        background: transparent !important;
    }
}

@media (max-width: 1070px) {

    .four-cells.adaptive,
    .three-cells.adaptive,
    .two-cells.adaptive {
        grid-template-columns: 1fr 1fr;
        padding: 0;
    }

    .container-cards-user-stories.adaptive {
        display: flex;
        max-width: 100%;
    }

    .four-cells {
        margin-top: 1rem;
    }

    .card-user-story {
        height: 270px;
        width: calc(100vw - 60px);
    }

    .card-user-story::after {
        top: 0;
        height: unset;
    }

    .landing .container-cta {
        margin: 0 0 2.5rem 0;
    }

    .container-logos {
        flex-direction: column;
        width: 100%;
        margin: 0;
    }

    .container-logos span {
        font-size: .9rem;
        margin: 0;
    }

    .flex-logos {
        flex-wrap: wrap;
        margin-top: 1.5rem;
        justify-content: center;
        margin-right: -1rem;
    }

    .flex-logos img:last-of-type {
        margin-right: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .container-logos img {
        height: 1rem;
        margin-right: 1.5rem;
        margin-bottom: 1.5rem;
    }
}

.mobile-menu-btn {
    display: none !important;
}

@media (max-width: 1380px) {

    .logged-out .nav-links {
        display: none;
    }

    .logged-out .mobile-menu-btn {
        display: inline-flex !important;
    }

    #login-btn-mobile,
    #logout-btn-mobile,
    #btn-go-to-muse-mobile,
    #btn-get-started-mobile,
    #btn-go-to-muse-mobile {
        bottom: unset;
        left: unset;
        right: unset;
    }

}

@media (max-width: 1200px) {

    .menu {
        display: none;
    }

    .main-nav-container {
        height: 75px;
        width: calc(100% - 40px);
    }

    .mobile-menu-btn {
        display: inline-flex !important;
    }

    #btn-theme-mobile {
        display: block!important;
        visibility: visible!important;
        position: absolute;
        right: 70px;
        bottom: unset;
        opacity: 1;
    }

    .nav-links,
    .logged-in .nav-links {
        display: none;
    }

    html.logged-in #account-dropdown,
    html.logged-in .header-mobile {
        display: none !important;
    }

    .header-mobile {
        display: flex;
        align-items: center;
    }

    .alias-row .radio-box input {
        height: 60px;
    }

    .section-body .two-cells {
        flex-direction: column;
        align-items: center;
        padding: 0 30px;
    }

    .section.center p {
        text-align: center;
    }

    .section-body .cell {
        max-width: unset;
    }

    .wrapper-carousel {
        height: calc(100vw - 600px);
        min-height: 160px;
        max-height: 410px;
    }

    .section-body .cell-carousel img,
    .framed img {
        height: unset;
        border-radius: .5rem;
        width: 100%;
    }

    .section-body .cell-carousel {
        border-radius: 1rem;
        margin-right: 0;
        width: unset;
        max-width: 100%;
    }

    /* Footer */

    .footer-container {
        padding: 0 30px 2rem 30px;
        flex-direction: column;
    }

    .footer-links-container {
        width: 100%;
        min-width: unset;
        flex-wrap: wrap;
    }

    .footer-links {
        width: 49%;
        margin-top: 2rem;
    }

    footer .container-cta {
        display: none;
        /* position: unset;
        max-width: 100%;
        margin-top: 2rem; */
    }

    .footer-sublinks {
        padding: 1rem 30px;
        flex-direction: column;
        border-top: 1px solid var(--cloud);
    }

    .footer-sublinks a,
    .footer-sublinks span {
        margin-right: 5px;
        margin-top: 5px;
        padding-left: 0;
    }

    .footer-link-dash {
        margin: 0 7px;
        color: var(--slate) !important;
    }

}

@media (max-width: 1100px) {

    #section-player .fill-h {
        width: 100%;
    }

    #section-hero .landing {
        height: unset;
        padding: 1.8rem;
    }

    .container-cta .cta-button {
        height: 4.125rem;
        padding: 0 25px 0 30px;
        font-size: 1.4rem;
    }

    .container-ratings span,
    .container-ratings p {
        font-size: 1.1rem !important;
        margin: 0 10px 10px 10px;
    }

    .section-full-width {
        padding: 0 1.8rem;
    }

    .section-header {
        padding-bottom: 1rem;
    }

    .landing h1 {
        font-size: 2.5rem;
    }

    .landing h3 {
        font-size: 1.4rem;
        line-height: 2.1rem;
    }

    .container-cta {
        flex-direction: column;
        width: 100%;
        max-width: 31rem;
        margin-top: 0;
    }

    .container-cta .email-field-landing {
        width: 100%;
    }

    .container-cta .cta-button,
    .container-cta {
        justify-content: center;
        width: 100%;
        margin-top: 10px;
    }

    .container-cta.error,
    .container-cta.success {
        min-height: 132px;
    }

    .container-ratings {
        flex-wrap: wrap;
        justify-content: center;
    }

    .links-reviews {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-evenly;
        max-width: 26rem;
        margin: 1.1rem auto 1.5rem auto;
    }

    .links-reviews span,
    .links-reviews a {
        font-size: 1rem;
        margin: 0;
    }

    .links-reviews span:last-child {
        margin-top: 1.25rem;
    }

    #section-carousel {
        padding: 0;
    }

    .wrapper-carousel {
        padding: .8rem 0 .8rem 1rem;
    }

    .cell-carousel img {
        height: 12rem;
        width: unset;
    }

    .container-features-demo-search {
        width: 100vw;
        padding: 2rem 0 0 0;
    }

    .center h3,
    .section-body h3 {
        font-size: 1.8rem;
    }

    .container-info {
        width: 100%;
        justify-content: center;
        flex-direction: column;
        text-align: center;
    }

    .container-demo-player .muse-video-player {
        width: 100%;
        padding: 6px;
        border-radius: 25px;
    }

    .info-left {
        padding: 0;
        margin-right: 0;
        margin-bottom: 0.625rem;
        border: none;
    }

    .container-suggestions {
        flex-wrap: wrap;
        display: flex;
        justify-content: center;
    }

    .suggestion {
        font-size: 1rem;
        margin-right: 1rem;
        padding: 7px 15px;
    }

    .suggestion i {
        display: none;
    }

    /* Use cases */
    .grid-features {
        grid-template-columns: 1fr 1fr;
    }

    .use-cases-tabs {
        display: flex;
        justify-content: unset;
        padding: 0 30px;
        margin-top: -1rem;
    }

    /* Case studies */

    .card-user-story h2 {
        font-size: 1.5rem;
        line-height: 2rem;
    }

}

@media (max-width: 860px) {

    .main {
        margin-top: 70px;
    }
    
    .container-cards-user-stories.adaptive {
        display: flex;
        flex-direction: column;
        max-width: 100%;
    }
}

@media (max-width: 768px) {

    .m-modal {
        transition: .1s ease;
    }

    .m-modal-content {
        position: fixed;
        bottom: 60px;
        transform: translateY(100vh);
        margin-top: 0;
        right: 0;
        left: 0;
        padding: 0;
        margin-bottom: env(safe-area-inset-bottom);
        background: var(--bg-color);
        border: none;
        border-top: 1px solid var(--cloud);
        border-radius: 20px 20px 0 0;
        width: 100% !important;
        height: auto;
        max-height: none;
        opacity: 1;
        transition: .1s ease;
    }

    .m-modal.current .m-modal-content {
        transform: translateY(0);
    }

    .m-modal-header {
        height: 70px;
        padding: 0 20px;
    }

    .m-modal-body {
        display: flex;
        height: calc(100% - 170px);
        max-height: calc(100vh - 130px);
        overflow: auto;
        justify-content: unset;
        flex-flow: column;
        padding: 20px 20px 25px 20px;
    }

    .m-input-box h5 {
        margin-bottom: 2rem !important;
        font-weight: 400;
    }
}

@media (max-width: 650px) {

    /* Use cases */
    .grid-features {
        grid-template-columns: 1fr
    }

}

@media (max-width: 500px) {

    .four-cells.adaptive,
    .three-cells.adaptive,
    .two-cells.adaptive,
    .container-cards-user-stories.adaptive {
        grid-template-columns: 1fr;
        padding: 0;
    }

    .cell.bg {
        border-right: none;
    }
}

.dark-mode .sub-header svg {
    stroke: var(--slate)
}

/* Fade in */

@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(-30px)
    }

    100% {
        opacity: 100%;
        transform: translateY(0)
    }
}

.fade-in {
    animation: fadeIn 1s;
}

/* Place Intercom widget behind modals */
.intercom-lightweight-app {
    z-index: 351 !important;
}

#intercom-facade {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  bottom: 20px;
  right: 20px;
  border-radius: 50%;
  background: #000;
  width: 48px;
  height: 48px;
  cursor: pointer;
}

#intercom-facade:hover,
#intercom-facade.hover {
  transform: scale(1.1);
  cursor: pointer;
}

#intercom-facade svg {
  width: 21px;
  height: 24px;
}

#intercom-facade svg path {
  fill: #fff;
}

/* Product Hunt */

.links-reviews {
    display: flex;
}

.ph-widget {
    z-index: 100;
    margin-left: 50px;
    margin-top: -21px;
}

.light-mode .ph-widget.dark {
    display: none;
}

.dark-mode .ph-widget.light {
    display: none;
}

@media (max-width: 764px) {
    .ph-widget {
        position: fixed;
        left: 20px;
        bottom: 20px;
        transform: scale(.8);
        transform-origin: left;
    } 
}