body {
    font-family: system-ui, -apple-system, Arial;
    background: #fafafa;
    overflow-x: hidden;
}

/* NAV */
.navbar {
    z-index: 1000;
}

/* HERO */

.hero {
    height: 100vh;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url('/images/bg_contact.jpg') center/cover no-repeat;
    z-index: 1;
}

.hero::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    /*background:linear-gradient(to bottom, rgba(0,0,0,0.4), rgba(0,0,0,0.1));*/
    z-index: 2;
}

/**/
.hero {
    height: 120vh;
    overflow: hidden;
    color: white;
}

/**/
.layer {
    position: absolute;
    width: 120%;
    left: -10%;
    /*top:0;*/
}

/**/
.layer.back {
    z-index: 1;
}

.layer.mid {
    z-index: 2;
}

.layer.grow {
    z-index: 3;
}

.layer.shrink {
    z-index: 3;
}


.hero-text {
    position: relative;
    z-index: 3;
    color: white;
    text-align: center;
}

/**/
.hero-text {
    position: relative;
    z-index: 10;
    text-align: center;
}

.hero-float {
    position: absolute;
    width: 120px;
    z-index: 4;
}

.float1 {
    top: 20%;
    left: 10%;
}

.float2 {
    top: 60%;
    left: 75%;
}

.float3 {
    top: 40%;
    left: 45%;
}

/* SECTIONS */

section {
    /*padding:100px 0;
position:relative;*/
    padding: 120px 25px;
    min-height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

section#banners {
    position: relative;
    padding: 0px;
    min-height: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

/* STANDARD PARALLAX */

.static-bg {
    background-size: cover;
    background-position: center;
    position: relative;
    color: white;
    min-height: 90vh;
    display: flex;
    align-items: center;
}

.static-bg::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    /*background:rgba(0,0,0,0.35);*/
}

.static-bg .container {
    position: relative;
    z-index: 2;
}

@media(min-width:900px) {
    .static-bg {
        background-attachment: fixed;
    }
}

/* PREMIUM LAYERED PARALLAX */

.layered {
    height: 100vh;
    position: relative;
    overflow: hidden;
}

.layer {
    position: absolute;
    width: 120%;
    left: -10%;
    object-fit: cover;
}

.layer.bg {
    z-index: 1;
}

.layer.mid {
    z-index: 2;
}

.layer.front {
    z-index: 3;
}

.layer-content {
    position: relative;
    z-index: 10;
    color: white;
    text-align: center;
    top: 40%;
    transform: translateY(-50%);
}

/* FLOATING */

.floating {
    position: absolute;
    width: 140px;
    pointer-events: none;
}

.sliding {
    position: absolute;
    width: 140px;
    pointer-events: none;
}

/* MOBILE */

@media(max-width:768px) {

    .hero-float,
    .floating,
    .sliding {
        width: 60px;
        opacity: 0.7;
    }

    .hero {
        height: 101vh;
    }
}



.books-wrapper {
    overflow: hidden;
}

.books-track {
    display: flex;
    gap: 40px;
    width: max-content;
    padding: 40px;
}

.book {
    width: 220px;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    transition: transform 0.3s;
}

.book:hover {
    transform: scale(1.08);
}

.alert {
    border-radius: 8px;
    font-size: 14px;
}

.salesheader {
    color: #e64123;
}

section.contact {
    background-color: #268886;
    min-height: 50vh;
    color: #fff;
}

section.newsletter,
section.sales {
    min-height: 50vh;
}

.contactusbox {
    width: 50%;
    border-radius: 20px;
    background-color: #fff;
    color: #000;
    padding: 25px;
}

.footer-container {
    position: relative;
}

.footer-text {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    transform: translate(-50%, -50%);
    z-index: 10;
}

@media(min-width:576px) {
    .d-sm-block {
        display: inline-block !important;
    }
}

