/*!
Template :  Crypto Dojo - Cryptocurrency Landing Template
Author   :  ThemesDojo
Version  :  1.0.0
Created  :  23.20.2018
*/

/* 
********** ==> RESPONSIVE STYLES <== **********

1. LARGER MONITORS
2. MEDIUM SCREENS/DESKTOPS
3. TABLETS / IPADS
4. SMARTPHONES

********** ==> END RESPONSIVE STYLES <== **********
*/

/* Larger devices (larger desktops, 1400px and up) */
@media screen and (max-width: 1400px) {
    .line {height: 9.24rem;}
    .token-sale__graph-info:nth-of-type(3) {left: -2%;}
    .token-sale__graph-info:nth-of-type(6) {right: -2%;}
    .token-sale__graph-info:nth-of-type(4) {left: 10%;}
    .token-sale__graph-info:nth-of-type(5) {right: 10%;}

    #distributionChart, 
    #proceedsChart {height: 400px;}

    .fixed-top-navbar .line-xl {margin-bottom: 6.5%;}
    .fixed-top-navbar .line-mp {margin-bottom: -4%;}
}


/* Large devices (large desktops, 1200px and up) */
@media screen and (max-width: 1200px) {
    .line-play {
        right: -9rem;
        bottom: 0;
    }
    .line {height: 7rem;}

    .navbar.fixed-right {padding: 1.875rem 1rem 1.5rem 0;}
    .fixed-brand {
        top: 5%;
        left: 5%;
    }
    
    .settings-box {bottom: 10%;}

    #lottie {margin-top: 3.75rem;}

    .crypto-section__content {padding: 3.125rem 1.875rem 3.75rem;}
    .about__description {padding-left: 1.875rem;}

    .token-section.charts-view .title br {display: none;}
    .token-section.charts-view .title {text-align: center;}
    .token-sale__graph-info:nth-of-type(3) {left: -5%;}
    .token-sale__graph-info:nth-of-type(6) {right: -5%;}
    .token-sale__graph-info:nth-of-type(4) {
        margin-top: 1rem;
        left: 8%;
    }
    .token-sale__graph-info:nth-of-type(5) {
        margin-top: 1rem;
        right: 8%;
    }

    .partners-section__blk a {margin-bottom: 1.5rem;}

    .navbar-toggler {
        cursor: pointer;
        width: 35px; 
        height: 30px;
        float: right;
        padding: 0;
        outline: none !important;
        position: absolute;
        right: 1.875rem;
        top: 1.875rem;
    }
    .navbar-toggler.collapsed .navbar-toggler-icon:nth-child(1) {
        -webkit-animation:outT 0.8s backwards;
        animation:outT 0.8s backwards;
        -webkit-animation-direction:reverse;
        animation-direction:reverse;
    }
    .navbar-toggler.collapsed .navbar-toggler-icon:nth-child(2) {
        margin: 6px 0;
        -webkit-animation:outM 0.8s backwards;
        animation:outM 0.8s backwards;
        -webkit-animation-direction:reverse;
        animation-direction:reverse;
    }
    .navbar-toggler.collapsed .navbar-toggler-icon:nth-child(3) {
        -webkit-animation:outBtm 0.8s backwards;
        animation:outBtm 0.8s backwards;
        -webkit-animation-direction:reverse;
        animation-direction:reverse;
    }
    .navbar-toggler-icon {
        background-color: #fff;
        border-radius: 2px;
        content: '';
        display: block;
        width: 100%;
        height: 2px;
    }
    .navbar-toggler-icon:nth-child(1) {
        -webkit-animation:inT 0.8s forwards;
        animation:inT 0.8s forwards;
    }
    .navbar-toggler-icon:nth-child(2) {
        -webkit-animation:inM 0.8s forwards;
        animation:inM 0.8s forwards;
        margin: 7px 0;
    }
    .navbar-toggler-icon:nth-child(3) {
        -webkit-animation:inBtm 0.8s forwards;
        animation:inBtm 0.8s forwards;
    }

    .navbar.fixed-top {
        background: rgb(159,54,171);
        background: -moz-linear-gradient(45deg, rgba(159,54,171,1) 0%, rgba(96,42,119,1) 100%);
        background: -webkit-linear-gradient(45deg, rgba(159,54,171,1) 0%,rgba(96,42,119,1) 100%);
        background: linear-gradient(45deg, rgba(159,54,171,1) 0%,rgba(96,42,119,1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9f36ab', endColorstr='#602a77',GradientType=1 );
    }
    .navbar.fixed-top .navbar-collapse {
        z-index: 5;
        padding: 1rem;
    }
    .navbar.fixed-top .navbar-toggler {position: static;}
    .navbar.fixed-top .navbar-nav a {padding: .625rem .925rem;}

}


/* Medium devices (tablets, 992px and up) */
@media screen and (max-width: 991px) {
    #cd-content {padding: 0.9375rem 0;}
    .fp-tableCell {padding: 0.9375rem 1.875rem;}

    .line {
        height: 2.5rem;
        background-position: bottom;
    }   


    .navbar.fixed-right {
        max-width: 100%;
        width: 30%;
        padding-top: 90px;
    }


    .navbar.fixed-right .social-icons {margin-top: 2.5rem;}

    #fullPage {transition: transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275) .5s;}
    #fullPage.show-menu {
        transform: translateX(-30%) !important;
        transition: transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
    }

    .crypto-section.charts-view {height: auto;}

    .hex-content.first {margin-bottom: 90px;}
    .hex-content.last {margin-top: 90px;} 

    .token-sale__graph-info:nth-of-type(4) {
        margin-top: 2rem;
        left: 3%;
    }
    .token-sale__graph-info:nth-of-type(5) {
        margin-top: 2rem;
        right: 3%;
    }
    .token-sale__graph-info:nth-of-type(3) {
        left: -10%;
        bottom: 120px;
    }
    .token-sale__graph-info:nth-of-type(6) {
        right: -10%;
        bottom: 120px;
    }
    .token-sale__time {text-align: center !important;}
    .token-sale__time .countdown {margin-top: 1.25rem;}
    .app-section__bg {margin-bottom: 30px;}

    .faq-section .title br,
    .contacts-section .title br {display: none;}
    .faq-section .title,
    .contacts-section .title {text-align: center;}
    .faq-section .nav-pills {
        flex-direction: row;
        justify-content: center;
        letter-spacing: 1px;
    }

    .contacts-section__info {margin-bottom: 1rem;}
    .contacts-section__form-wrapp {margin-top: 2rem;}
    footer.contacts-section {padding-bottom: 1.875rem;}

    .fixed-top-navbar .fp-tableCell {padding: 3rem 3.75rem;}
    .fixed-top-navbar #fullPage.show-menu {
        transform: translateX(0) !important;
    }
}

/* Small devices (smartphones, 768px and up) */
@media screen and (max-width: 767px) {
    .line-play,
    .scrollDown,
    .title br,
    .faq-section .title br, 
    .contacts-section .title br {display: none;}
    .settings-box.d-flex {display: none !important;}
    .fixed-brand {display: block !important;}

    .navbar.fixed-right {
        width: 100%;
        height: auto;
        bottom: auto;
        padding: 60px 0 15px;
        text-align: center;
    }
    .fixed-brand.fixed-bottom {
        top: 5%;
        bottom: auto;
    }
    .navbar.fixed-right.scrolled,
    .navbar-collapse {
        background: rgb(58,102,103);
        background: -moz-linear-gradient(45deg, rgba(58,102,103,1) 0%, rgba(58,102,103,1) 100%);
        background: -webkit-linear-gradient(45deg, rgba(58,102,103,1) 0%,rgba(58,102,103,1) 100%);
        background: linear-gradient(45deg, rgba(0,0,0,0) 0%,rgba(58,102,103,1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9f36ab', endColorstr='#602a77',GradientType=1 );
        z-index: 5;
    }
    .navbar-collapse {padding: 15px;}

    #fullPage.show-menu {transform: translateX(0) !important;}
    #fullPage {padding-top: 3.750rem;}
    .crypto-section__content {padding: 5.25rem 1.875rem 1.5rem !important;}
    .crypto-section__content .row.w-100 {width: auto !important;}
    .token-section .crypto-section__content .row.w-100 {width: 100% !important;}

    .platform-section .btn-group {
        flex-wrap: wrap;
        margin-bottom: 1.25rem;
    }
    .platform-section .btn-group li:first-child {
        margin-right: 0;
        margin-bottom: 1.25rem;
    }
    .platform-section .btn-group li,
    .platform-section .btn-group li .btn {width: 100%;}
    .about__description {padding-left: 15px;}

    .hex-content {transform: scale(.8);}
    .hex-content.last {margin-top: 0;}
    .hex-content.first {
        margin-bottom: 2rem;
        margin-top: 1rem;
    }

    .token-section .section-title {margin-bottom: 1.875rem;}
    .token-sale__graph,
    .token-sale__graph:before {
        background-image: none;
        margin-bottom: 0;
    }
    .token-sale__graph-info {
        position: static;
        text-align: left !important;
        margin: 15px 0 !important;
        width: 100%;
    }
    .token-sale__graph-ico,
    .token-sale__graph-ico__shadow {
        left: auto;
        right: 0;
    }
    .text-right.token-sale__time {margin-bottom: 1.875rem;}
    #distributionChart, 
    #proceedsChart {height: 300px;}

    .app-section__content .btn {
        margin-right: 0;
        width: 100%;
    }
    .app-section__content .btn-danger {margin-bottom: 1.25rem;}

    .faq-section .nav-pills {letter-spacing: 0;}
    .faq-section .title {margin-bottom: 1.875rem;}
    .card-header .btn-link {
        white-space: normal;
        text-align: left;
    }
    .card-body {padding: .635rem 0 2.55rem;}  
    
    .navbar.fixed-top.scrolled .navbar-collapse {background: transparent;}
    .navbar.fixed-top .container-fluid {padding: 0 1rem;}
    .fixed-top-navbar .social-icons {display: none !important;}
    .fixed-top-navbar .fp-tableCell {padding: 3.5rem 1rem !important;}
    .fixed-top-navbar .fp-section.fp-table {margin-bottom: -3.5rem !important;}
}

/* monitors with small height */
@media screen and (max-height: 768px) {
    #cd-content {padding: 0.9375rem 0;}
    .fp-tableCell {padding: 0.9375rem 1.875rem;}
    .fixed-top-navbar .fp-tableCell {padding: 6.5rem 3.75rem;}
    .fixed-top-navbar .fp-section.fp-table {margin-bottom: -7.5rem;}

    .settings-box {display: none !important;}
    
    #lottie {height: 225px;}

    .token-section .crypto-section__content {
        padding-top: 2.5rem;
        padding-bottom: 2.75rem;
    }
    .token-section.charts-view .title br {display: none;}
    #distributionChart, 
    #proceedsChart {height: 350px;}

    .crypto-section__content .btcwdgt {height: 350px !important;}
    .crypto-section__content .btcwdgt-chart .btcwdgt-body {max-height: 350px !important;}
}
/* ==============================================================
   GNHC - MOBILE PORTRAIT REFINEMENTS
   Scope: phones in portrait only. Desktop/tablet landscape unchanged.
   No JavaScript/touch/scroll interception is used here.
   ============================================================== */
@media screen and (max-width: 767px) and (orientation: portrait) {

    /* Make the first white card start lower on initial mobile load/refresh. */
    #section0.fp-section.fp-table > .fp-tableCell,
    #section0 .fp-tableCell {
        vertical-align: top !important;
        padding-top: calc(0.35rem + env(safe-area-inset-top)) !important;
    }

    #section0 .crypto-section__content {
        margin-top: 0.35rem !important;
    }


    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    /* Remove template padding that becomes visible around the page on phones. */
    #cd-content {
        padding: 0 !important;
        min-height: 100vh;
        min-height: 100svh;
        overflow-x: hidden;
    }

    /* Reserve a real header-safe area before the first white card. */
    #fullPage {
        padding-top: calc(7rem + env(safe-area-inset-top)) !important;
        max-width: 100%;
        overflow-x: hidden;
    }

    /* More useful mobile gutters: enough breathing room without wasting width. */
    .fp-tableCell {
        padding: .5rem 1rem 1.25rem !important;
    }

    /* Cards: compact and consistent on phones. */
    .crypto-section__content {
        min-width: 0;
        border-radius: 1.25rem;
        padding: 2rem 1.25rem 2.25rem !important;
    }

    .crypto-section__content > .row.w-100 {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* First card has the language selector at the top, so it needs extra room. */
    #section0 .crypto-section__content {
        position: relative;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        padding-top: 4.4rem !important;
        margin-top: 0 !important;
        background: #ffffff !important;
    }

    #section0 .crypto-section__content > .row.w-100 {
        align-items: flex-start !important;
    }

    /* Fixed mobile header: logo and hamburger stay entirely above the card. */
    .navbar.fixed-right {
        min-height: 5rem;
        padding: 0 !important;
        z-index: 100;
    }

    .fixed-brand,
    .fixed-brand.fixed-bottom {
        top: calc(1.35rem + env(safe-area-inset-top)) !important;
        bottom: auto !important;
        left: 1.1rem !important;
        width: 2.75rem;
        height: 2.75rem;
        z-index: 102;
    }

    .navbar-toggler {
        top: calc(1.35rem + env(safe-area-inset-top)) !important;
        right: 1.1rem !important;
        width: 2.75rem;
        height: 2.75rem;
        padding: .35rem;
        z-index: 103;
    }

    /* Language buttons: centered inside the white card and safe on narrow phones. */
    #section0 .language-switcher {
        top: 1rem !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%);
        width: max-content;
        max-width: calc(100% - 1rem);
        flex-wrap: nowrap !important;
        gap: .45rem !important;
    }

    #section0 .language-switcher .lang-btn {
        min-height: 2.6rem;
        padding: .55rem .75rem !important;
        gap: .45rem !important;
        font-size: .8rem !important;
    }

    #section0 .language-switcher .flag-icon {
        width: 1.35rem !important;
        height: .9rem !important;
    }

    /* Hero typography: keep impact, reduce awkward 5-6 line wrapping. */
    .title {
        font-size: 2rem;
        line-height: 1.22;
        letter-spacing: -.02em;
    }

    .platform-section .title {
        margin-bottom: 1.4rem;
    }

    .platform-section .subtitle {
        font-size: .96rem;
        line-height: 1.65rem;
        margin-bottom: 1.5rem;
    }

    /* Keep the hero animation visible without creating a large empty area. */
    #section0 #lottie {
        width: 100%;
        max-width: 17.5rem;
        height: 11.5rem !important;
        margin: 1.25rem auto 0;
    }

    /* Decorative elements should not dominate or escape the phone card. */
    .line {
        height: 2rem;
    }

    /* Secondary sections: avoid excessive template spacing. */
    .about__description {
        padding-left: 0;
    }

    .hex-content {
        transform: scale(.74);
        transform-origin: center center;
    }

    .hex-content.first {
        margin-top: 0;
        margin-bottom: .75rem;
    }

    .hex-content.last {
        margin-top: .75rem;
        margin-bottom: .5rem;
    }

    /* Mobile tap targets. */
    .btn {
        min-height: 2.75rem;
        padding: .9rem 1rem;
    }

    .app-section__content .btn {
        width: 100%;
        margin-right: 0;
    }

    /* FAQ/contact sections: denser, readable, and no input zoom on phones. */
    .faq-section .title,
    .contacts-section .title,
    .partners-section .title {
        margin-bottom: 1.5rem;
    }

    .contacts-section__form .form-group {
        margin-bottom: 1.75rem;
    }

    .contacts-section__form .form-group .form-control {
        font-size: 1rem;
    }

    .card-header .btn-link {
        line-height: 1.35;
    }

    /* Open mobile menu: readable overlay, independent from the white card. */
    #main-menu.show {
        max-height: 100vh;
        max-height: 100svh;
        overflow-y: auto;
        padding: calc(5rem + env(safe-area-inset-top)) 1.25rem 1.25rem;
        background: rgba(48, 84, 91, .98);
        box-shadow: 0 .75rem 1.75rem rgba(0,0,0,.18);
    }

    .navbar.fixed-right .navbar-nav .nav-item {
        margin-bottom: .45rem;
    }

    .navbar.fixed-right .navbar-nav a {
        padding: .8rem 1rem;
        line-height: 1.25;
    }
}

/* Extra care for very narrow phones. */
@media screen and (max-width: 359px) and (orientation: portrait) {
    #fullPage {
        padding-top: calc(6.6rem + env(safe-area-inset-top)) !important;
    }

    .fp-tableCell {
        padding-left: .75rem !important;
        padding-right: .75rem !important;
    }

    .crypto-section__content {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #section0 .crypto-section__content {
        padding-top: 4.75rem !important;
    }

    .title {
        font-size: 1.75rem;
        line-height: 1.2;
    }

    #section0 .language-switcher .lang-btn {
        padding: .5rem .6rem !important;
        font-size: .73rem !important;
    }
}

/* =========================================================
   ALBINTECH / GNHC — UNIFIED MOBILE MENU
   One clean menu for both portrait and landscape mobile.
   Replaces the template's old side-menu presentation.
   ========================================================= */
@media screen and (max-width: 991px) {
    /* Neutralize the old mobile/tablet side-menu behavior. */
    #fullPage.show-menu {
        transform: none !important;
    }

    .navbar.fixed-right,
    .navbar.fixed-right.scrolled {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        width: 100% !important;
        max-width: none !important;
        height: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        filter: none !important;
        box-shadow: none !important;
        text-align: left !important;
        overflow: visible !important;
        pointer-events: none;
        z-index: 2000 !important;
    }

    /* One visual language for logo and hamburger. */
    .fixed-brand,
    .fixed-brand.fixed-bottom {
        position: fixed !important;
        top: calc(.9rem + env(safe-area-inset-top)) !important;
        left: .9rem !important;
        bottom: auto !important;
        width: 3.15rem !important;
        height: 3.15rem !important;
        margin: 0 !important;
        padding: .46rem !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255,255,255,.28);
        border-radius: 1rem;
        background: rgba(30, 51, 61, .42);
        box-shadow: 0 .45rem 1.2rem rgba(11, 27, 34, .16);
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        pointer-events: auto;
        z-index: 2003 !important;
    }

    .fixed-brand img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain;
    }

    .navbar-toggler {
        position: fixed !important;
        top: calc(.9rem + env(safe-area-inset-top)) !important;
        right: .9rem !important;
        left: auto !important;
        width: 3.15rem !important;
        height: 3.15rem !important;
        margin: 0 !important;
        padding: .82rem .72rem !important;
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: stretch;
        border: 1px solid rgba(255,255,255,.28) !important;
        border-radius: 1rem !important;
        background: rgba(30, 51, 61, .42) !important;
        box-shadow: 0 .45rem 1.2rem rgba(11, 27, 34, .16) !important;
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        pointer-events: auto;
        z-index: 2004 !important;
    }

    .navbar-toggler:focus,
    .navbar-toggler:active {
        outline: none !important;
        box-shadow: 0 0 0 .18rem rgba(75, 180, 132, .24), 0 .45rem 1.2rem rgba(11,27,34,.18) !important;
    }

    .navbar-toggler:not(.collapsed) {
        background: rgba(35, 79, 73, .90) !important;
        border-color: rgba(255,255,255,.36) !important;
    }

    .navbar-toggler-icon {
        width: 100% !important;
        height: 2px !important;
        border-radius: 999px !important;
        background-color: #fff !important;
    }

    .navbar-toggler.collapsed .navbar-toggler-icon:nth-child(2) {
        margin: 6px 0 !important;
    }

    /* Remove the old navbar-collapse look completely while closed. */
    .navbar.fixed-right .navbar-collapse:not(.show):not(.collapsing) {
        display: none !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    /* Elegant floating panel used in BOTH portrait and landscape. */
    .navbar.fixed-right #main-menu.show,
    .navbar.fixed-right #main-menu.collapsing {
        position: fixed !important;
        top: calc(4.65rem + env(safe-area-inset-top)) !important;
        right: .9rem !important;
        left: auto !important;
        bottom: auto !important;
        width: min(24rem, calc(100vw - 1.8rem)) !important;
        height: auto !important;
        max-height: calc(100dvh - 5.55rem - env(safe-area-inset-top)) !important;
        margin: 0 !important;
        padding: .75rem !important;
        border: 1px solid rgba(255,255,255,.14) !important;
        border-radius: 1.35rem !important;
        background: linear-gradient(160deg, rgba(30,48,58,.30) 0%, rgba(36,70,70,.30) 58%, rgba(31,93,70,.30) 100%) !important;
        filter: none !important;
        box-shadow: 0 1.15rem 2.8rem rgba(10, 24, 31, .34) !important;
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain;
        pointer-events: auto;
        z-index: 2002 !important;
    }

    .navbar.fixed-right #main-menu.show {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .navbar.fixed-right #main-menu .navbar-nav {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: .25rem;
    }

    .navbar.fixed-right #main-menu .navbar-nav .nav-item {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .navbar.fixed-right #main-menu .navbar-nav .nav-link {
        width: 100% !important;
        min-height: 3rem;
        margin: 0 !important;
        padding: .82rem .92rem !important;
        display: flex !important;
        align-items: center;
        border: 1px solid transparent !important;
        border-radius: .95rem !important;
        background: transparent !important;
        color: rgba(255,255,255,.90) !important;
        font-size: .92rem !important;
        font-weight: 600 !important;
        line-height: 1.25 !important;
        letter-spacing: .005em !important;
        text-transform: none !important;
        text-align: left !important;
        box-shadow: none !important;
        transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
    }

    .navbar.fixed-right #main-menu .navbar-nav .nav-link:hover,
    .navbar.fixed-right #main-menu .navbar-nav .nav-link:focus {
        background: rgba(255,255,255,.075) !important;
        border-color: rgba(255,255,255,.10) !important;
        color: #fff !important;
        transform: translateX(.1rem);
        text-decoration: none !important;
    }

    .green-theme .navbar.fixed-right #main-menu .navbar-nav .nav-item.active > .nav-link,
    .green-theme .navbar.fixed-right #main-menu .navbar-nav .nav-link.active {
        background: rgba(109, 220, 167, .20) !important;
        border-color: rgba(109, 220, 167, .46) !important;
        color: #173c2f !important;
        font-weight: 700 !important;
        box-shadow: inset 3px 0 0 #55c78f !important;
    }

    /* Compact and consistent social footer. */
    .navbar.fixed-right #main-menu .social-icons {
        width: 100% !important;
        margin: .7rem 0 0 !important;
        padding: .72rem 0 0 !important;
        display: flex !important;
        flex-wrap: wrap;
        justify-content: center;
        gap: .38rem;
        border-top: 1px solid rgba(255,255,255,.10);
        font-size: .95rem !important;
    }

    .navbar.fixed-right #main-menu .social-icons li {
        margin: 0 !important;
        padding: 0 !important;
    }

    .navbar.fixed-right #main-menu .social-icons a {
        width: 2.45rem !important;
        height: 2.45rem !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255,255,255,.08);
        border-radius: .8rem;
        background: rgba(255,255,255,.05) !important;
        color: rgba(255,255,255,.82) !important;
        opacity: 1 !important;
        text-decoration: none !important;
    }

    .navbar.fixed-right #main-menu .social-icons a:hover,
    .navbar.fixed-right #main-menu .social-icons a:focus {
        background: rgba(255,255,255,.10) !important;
        color: #fff !important;
    }
}


/* Keep the first white card below the floating mobile header in landscape too. */
@media screen and (max-width: 991px) and (orientation: landscape) {
    #fullPage {
        padding-top: calc(5.4rem + env(safe-area-inset-top)) !important;
    }

    #section0 .crypto-section__content {
        padding-top: 4rem !important;
        justify-content: flex-start !important;
    }
}


/* Keep the first white card slightly lower on initial load in mobile landscape too. */
@media screen and (max-width: 991px) and (orientation: landscape) {
    #section0.fp-section.fp-table > .fp-tableCell,
    #section0 .fp-tableCell {
        vertical-align: top !important;
        padding-top: calc(.25rem + env(safe-area-inset-top)) !important;
    }

    #section0 .crypto-section__content {
        margin-top: .25rem !important;
    }
}

/* Same design in landscape; only spacing is tightened for short screens. */
@media screen and (max-width: 991px) and (orientation: landscape) and (max-height: 560px) {
    .navbar.fixed-right #main-menu.show,
    .navbar.fixed-right #main-menu.collapsing {
        top: calc(4.2rem + env(safe-area-inset-top)) !important;
        max-height: calc(100dvh - 4.75rem - env(safe-area-inset-top)) !important;
        padding: .6rem !important;
    }

    .fixed-brand,
    .fixed-brand.fixed-bottom,
    .navbar-toggler {
        top: calc(.55rem + env(safe-area-inset-top)) !important;
        width: 2.95rem !important;
        height: 2.95rem !important;
    }

    .navbar.fixed-right #main-menu .navbar-nav .nav-link {
        min-height: 2.6rem;
        padding: .62rem .85rem !important;
        font-size: .86rem !important;
    }

    .navbar.fixed-right #main-menu .social-icons {
        margin-top: .5rem !important;
        padding-top: .55rem !important;
    }

    .navbar.fixed-right #main-menu .social-icons a {
        width: 2.2rem !important;
        height: 2.2rem !important;
    }
}
