/* RUNDEX PRODUCTION SIMPLE V2 */

/* =========================================================
   INNER / CORPORATE PAGES
   ========================================================= */

.corp-hero,
.page-hero,
.inner-hero,
.section-hero{
    min-height:0 !important;
    height:auto !important;
    background:#fff !important;
    background-image:none !important;
    border:0 !important;
    border-bottom:1px solid #ececf2 !important;
    box-shadow:none !important;
    padding:34px 0 30px !important;
    margin:0 !important;
}

.corp-hero::before,
.corp-hero::after,
.page-hero::before,
.page-hero::after,
.inner-hero::before,
.inner-hero::after{
    display:none !important;
}

.corp-hero .wrap,
.page-hero .wrap,
.inner-hero .wrap,
.section-hero .wrap{
    max-width:1200px !important;
    margin:0 auto !important;
}

.corp-hero h1,
.page-hero h1,
.inner-hero h1,
.section-hero h1{
    max-width:850px !important;
    margin:0 0 9px !important;
    padding:0 !important;
    color:#15161c !important;
    font-size:clamp(30px,3vw,44px) !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    font-weight:800 !important;
}

.corp-hero p,
.page-hero p,
.inner-hero p,
.section-hero p{
    max-width:760px !important;
    margin:0 !important;
    color:#6c6d78 !important;
    font-size:16px !important;
    line-height:1.55 !important;
}


/* CONTENT */

.corp,
.page-content,
.inner-content{
    background:#fff !important;
    padding:38px 0 52px !important;
}

.corp > .wrap,
.page-content > .wrap,
.inner-content > .wrap{
    max-width:1200px !important;
}

.corp section{
    margin:0 0 34px !important;
}

.corp h2{
    margin:0 0 12px !important;
    color:#171820 !important;
    font-size:25px !important;
    line-height:1.22 !important;
    letter-spacing:-.02em !important;
}

.corp h3{
    margin:0 0 9px !important;
    color:#171820 !important;
    font-size:19px !important;
    line-height:1.3 !important;
}

.corp p,
.corp li{
    color:#555762 !important;
    font-size:16px !important;
    line-height:1.68 !important;
}

.corp p{
    margin:0 0 16px !important;
}

.corp a{
    color:#574cf2 !important;
}


/* Kill the "art project" look */

.corp [class*="card"],
.corp [class*="panel"],
.corp [class*="box"]{
    background:#fff !important;
    background-image:none !important;
    border:1px solid #e8e8ee !important;
    border-radius:10px !important;
    box-shadow:none !important;
    transform:none !important;
}

.corp [class*="card"]:hover,
.corp [class*="panel"]:hover,
.corp [class*="box"]:hover{
    transform:none !important;
    box-shadow:none !important;
}


/* =========================================================
   PREMIUM LIGHT FOOTER
   ========================================================= */

.footer{
    background:#f6f6f9 !important;
    background-image:none !important;
    color:#171820 !important;
    border-top:1px solid #e4e4eb !important;
    margin-top:54px !important;
    padding:0 !important;
}

.footer .wrap{
    max-width:1240px !important;
    margin:0 auto !important;
    padding-left:28px !important;
    padding-right:28px !important;
}

.footer-grid,
.rdx-footer-top{
    display:grid !important;
    grid-template-columns:minmax(280px,1.6fr) repeat(3,minmax(135px,1fr)) !important;
    gap:44px !important;
    padding:44px 0 36px !important;
    align-items:start !important;
}

.footer-brand,
.rdx-footer-brand{
    max-width:380px !important;
}

.footer-brand p,
.rdx-footer-brand p{
    margin:16px 0 0 !important;
    color:#696b76 !important;
    font-size:15px !important;
    line-height:1.6 !important;
}

.footer h4{
    margin:3px 0 13px !important;
    color:#171820 !important;
    font-size:14px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

.footer a{
    display:block !important;
    margin:0 !important;
    padding:5px 0 !important;
    color:#656772 !important;
    font-size:14px !important;
    line-height:1.4 !important;
    font-weight:550 !important;
    text-decoration:none !important;
}

.footer a:hover{
    color:#655cff !important;
}

.footer .logo{
    display:inline-flex !important;
    padding:0 !important;
    color:#171820 !important;
}

.footer-bottom,
.rdx-footer-bottom{
    min-height:62px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:20px !important;
    border-top:1px solid #dedee7 !important;
    color:#858690 !important;
    font-size:13px !important;
}


/* =========================================================
   BACK TO TOP
   ========================================================= */

#rx-backtop{
    position:fixed !important;
    right:24px !important;
    bottom:24px !important;
    z-index:99999 !important;

    width:48px !important;
    height:48px !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    padding:0 !important;
    margin:0 !important;

    border:1px solid rgba(101,92,255,.20) !important;
    border-radius:50% !important;

    background:#655cff !important;
    color:#fff !important;

    box-shadow:0 10px 30px rgba(34,30,90,.20) !important;

    cursor:pointer !important;

    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(8px) !important;

    transition:
        opacity .18s ease,
        transform .18s ease,
        visibility .18s ease !important;
}

#rx-backtop.is-visible{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
}

#rx-backtop:hover{
    transform:translateY(-2px) !important;
}

#rx-backtop svg{
    width:22px !important;
    height:22px !important;
    display:block !important;
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:2.2 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:900px){

    .corp-hero,
    .page-hero,
    .inner-hero,
    .section-hero{
        padding:25px 0 22px !important;
    }

    .corp-hero h1,
    .page-hero h1,
    .inner-hero h1,
    .section-hero h1{
        font-size:32px !important;
    }

    .corp{
        padding:28px 0 42px !important;
    }

    .footer-grid,
    .rdx-footer-top{
        grid-template-columns:1fr 1fr !important;
        gap:28px !important;
        padding:36px 0 30px !important;
    }

    .footer-brand,
    .rdx-footer-brand{
        grid-column:1/-1 !important;
    }
}

@media(max-width:600px){

    .footer{
        margin-top:38px !important;
    }

    .footer .wrap{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    .footer-grid,
    .rdx-footer-top{
        grid-template-columns:1fr 1fr !important;
        gap:26px 20px !important;
    }

    .footer-bottom,
    .rdx-footer-bottom{
        min-height:0 !important;
        padding:18px 0 !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:5px !important;
    }

    #rx-backtop{
        right:16px !important;
        bottom:16px !important;
        width:46px !important;
        height:46px !important;
    }
}

/* RUNDEX EXACT ALIGNMENT START */

/*
   ONE GRID FOR RUNDEX
   desktop = 40px
   mobile  = 20px
*/

:root{
    --rdx-page-gutter:40px;
}


/* Corporate area itself must use full viewport width */

html body .corp,
html body main.corp,
html body .corporate-main{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
}


/* HERO / PAGE TITLE */

html body .corp-hero{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    box-sizing:border-box !important;
}

html body .corp-hero > .wrap,
html body .corp-hero > .container{
    width:calc(100% - (var(--rdx-page-gutter) * 2)) !important;
    max-width:none !important;

    margin-left:var(--rdx-page-gutter) !important;
    margin-right:var(--rdx-page-gutter) !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
}


/* ALL CORPORATE CONTENT */

html body .corp-section,
html body .corp-simple-content,
html body .corp-content,
html body .corporate-content{
    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;

    box-sizing:border-box !important;
}

html body .corp-section > .wrap,
html body .corp-simple-content > .wrap,
html body .corp-content > .wrap,
html body .corporate-content > .wrap{
    width:calc(100% - (var(--rdx-page-gutter) * 2)) !important;
    max-width:none !important;

    margin-left:var(--rdx-page-gutter) !important;
    margin-right:var(--rdx-page-gutter) !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
}


/* NEW SIMPLE LEGAL PAGES */

html body .rdx-legal-page,
html body .rdx-simple-document{
    width:calc(100% - (var(--rdx-page-gutter) * 2)) !important;
    max-width:none !important;

    margin-left:var(--rdx-page-gutter) !important;
    margin-right:var(--rdx-page-gutter) !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
}

html body .rdx-legal-inner,
html body .rdx-simple-document-inner{
    width:100% !important;
    max-width:920px !important;

    margin-left:0 !important;
    margin-right:0 !important;
}


/* Prevent old wrappers from shifting content */

html body .corp .wrap,
html body .corp .container{
    box-sizing:border-box !important;
}


/* FOOTER SAME GRID */

html body .footer > .wrap,
html body .rdx-footer-premium > .wrap{
    width:calc(100% - (var(--rdx-page-gutter) * 2)) !important;
    max-width:none !important;

    margin-left:var(--rdx-page-gutter) !important;
    margin-right:var(--rdx-page-gutter) !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
}


/* TABLET */

@media(max-width:900px){

    :root{
        --rdx-page-gutter:24px;
    }

}


/* MOBILE */

@media(max-width:600px){

    :root{
        --rdx-page-gutter:20px;
    }

}

/* RUNDEX EXACT ALIGNMENT END */


/* RUNDEX BACKTOP ALWAYS VISIBLE */
html body #rx-backtop,
html body #rx-backtop.is-visible{
    display:flex !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    pointer-events:auto !important;
    z-index:2147483000 !important;
}
