
@import url('dist/fullpage.min.css') layer(fullpage);

@layer override {

    body {
        background-color: #ffffff;
        background-image: url(images/avif/08-white-papers.avif);
        background-repeat: repeat;
        background-size: 150px;
        background-blend-mode: luminosity;
    }

    a {
        color: #296eb4;
    }

    .image {
        background-image: url(images/avif/lddzF2WN1o.avif);
        background-size: contain;
        background-repeat: no-repeat;
    }

    .img-home {
        width: 100%;
        object-fit: contain;
    }
    .imageFull{
        height: 90% !important;
        max-width: 100% !important;
        object-fit: contain;
    }
    .imageLeft50 {
        height: 90% !important;
        width: auto !important;
        max-width: 50% !important;
        margin-right: 5px;
        justify-self: end;
        object-fit: contain;
    }

    .imageRight50 {
        height: 90% !important;
        width: auto !important;
        max-width: 50% !important;
        margin-left: 5px;
        justify-self: start;
        object-fit: contain;
    }

    .imageRight75 {
        height: 90% !important;
        width: auto !important;
        max-width: 75% !important;
        margin-left: 5px;
        justify-self: start;
        object-fit: contain;

    }

    .imageLeft75 {
        height: 90% !important;
        width: auto !important;
        max-width: 75% !important;
        margin-right: 5px;
        justify-self: end;
        object-fit: contain;

    }
    .imageTopLeft25 {
        height: 42.5% !important;
        position: absolute;
        top: 5%;
        left: 5%;
        object-fit: contain;
    }
    .imageTopRight25 {
        height: 42.5% !important;
        position: absolute;
        top: 5%;
        right: 5%;
        object-fit: contain;

    }

    .imageBottomLeft25 {
        height: 42.5% !important;
        position: absolute;
        bottom: 5%;
        left: 5%;
        object-fit: contain;
    }
    .imageBottomRight25 {
        height: 42.5% !important;
        position: absolute;
        bottom: 5%;
        right: 5%;
        object-fit: contain;
    }

    .left {
        justify-self: start;
        left: 5%;
    }
    .right {
        justify-self: end;
        right: 5%;
    }

    .imageLeft50Sq {
        height: auto;
        max-width: 50% !important;
        aspect-ratio: 1 / 1;
        left: 5%;
        object-fit: contain;
    }
    .imageRight50Sq {
        height: auto;
        max-width: 50% !important;
        aspect-ratio: 1 / 1;
        right: 5%;
        object-fit: contain;
    }
    .square {
        aspect-ratio: 1 / 1;
        object-fit: contain;
    }
    .imageSquare {
        max-height: 90%;
        width: auto !important;
        object-fit: contain;
    }
    .img {
        width: auto;
        height: 100%;
        object-fit: contain;
    }

    .header {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-rows: 1fr;
        text-align: left;
        height: 10vh;
        width: 90vw;
        z-index: 1001;
        position: fixed;
        left: 5vw;
        top: 0;
        margin: 0 auto;
        color: #172815;
        pointer-events: none;
    }

    .header > * {
        pointer-events: auto;
    }

    .name {
        font-family: "IM Fell English", serif;
    }
    .menu-text {
        font-family: "Rosarivo", cursive;
    }
    .body-text {
        font-family: "Gafata", sans-serif;

    }
    .body-text h3 {
        font-family: "Rosarivo", cursive;
    }


    .slide-container {
        max-height: 90vh;
        width: 90vw;
        aspect-ratio: 17 / 11;
        margin: auto;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 5vh;
        z-index: 1000;
        box-shadow: 1px 3px 7px 3px rgba(0,0,0,0.08) inset;
        min-height: 0;
        background-color: #ffffff;
        background-image: url(images/avif/02-white-papers.avif);
        background-repeat: repeat;
        background-size: 500px;
        background-blend-mode: luminosity;
    }
    .slide-container-home {
        height: 90vh;
        width: 90vw;
        margin: auto;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 5vh;
        z-index: 1000;
        min-height: 0;
    }

    /* Prevent fullPage.js from clipping the shadow */
    .fp-section,
    .fp-slide,
    .fp-tableCell,
    .fp-overflow {
        overflow: visible !important;
    }

    .grid-container {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr;
        height: 100vh;
        width: 100vw;
        overflow: visible;
    }

    #fullpage, .header{
        /* Send both divs to row 1, column 1 */
        grid-column: 1 !important;
        grid-row: 1 !important;
        min-height: 0;
        align-self: start;
    }

    .title {
        align-self: center;
        color: #382633;
        font-size: 1.5rem;
    }
    .title a {
        color: #382633;
        text-decoration: none;
    }

    .menu {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
        align-self: center;
        margin-right: 2rem;
    }

    .nav {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
    }

    .dropdown {
        position: relative;
        margin-left: 20px;
    }

    .dropdown > a {
        text-decoration: none;
        color: #172815;
        display: block;
        padding: 10px 0;
    }

    .dropdown-content {
        display: none;
        position: absolute;
        background-color: #fffffd;
        min-width: 120px;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
        z-index: 1;
        list-style: none;
        padding: 0;
        margin: 0;
        top: 100%;
        left: 0;
    }

    .dropdown-content li a {
        color: #172815;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }

    .dropdown-content li a:hover {
        color: #296eb4;
    }

    .dropdown:hover .dropdown-content {
        display: block;
    }

    @media screen and (max-width: 786px) {
        .header {
            position: relative;
            left: auto;
            width: 100vw;
        }
        .dropdown:hover .dropdown-content {
            display: none;
        }
        .nested-dropdown:hover .nested-dropdown-content {
            display: none;
        }
        /* The JS will handle display: block for these on click */
    }

    .nested-dropdown {
        position: relative;
    }

    .nested-dropdown-content {
        display: none;
        position: absolute;
        background-color: #fffffd;
        min-width: 120px;
        box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
        z-index: 2;
        list-style: none;
        padding: 0;
        margin: 0;
        top: 0;
        left: 100%;
    }

    @media screen and (max-width: 768px) {
        .nested-dropdown-content {
            position: static;
            box-shadow: none;
            padding-left: 20px;
            width: 100%;
            background-color: transparent;
        }
        .nested-dropdown-content li a {
            padding: 8px 16px;
        }
    }

    .nested-dropdown-content li a {
        color: #172815;
        padding: 12px 16px;
        text-decoration: none;
        display: block;
    }

    .nested-dropdown:hover .nested-dropdown-content {
        display: block;
    }

    .slide-container img {
        display: block;
        max-width: 100%;
        max-height: 100%;
        margin: 0 auto;
        object-fit: contain;
    }

    .slide-container picture {
        display: block;
        max-width: 100%;
        max-height: 100%;
        margin: 0 auto;
    }

    .hidden {
        display: none !important;
    }


    /* Overriding fullPage.js arrows */
    .fp-arrow {
        border: none !important;
        width: 25px !important;
        height: 25px !important;
        background-color: transparent;
    }

    .fp-arrow.fp-prev {
        --b: 5px; /* control the border thickness */
        height: 20px;
        width: 20px;
        aspect-ratio: cos(30deg);
        clip-path: polygon(0 50%, 100% 100%, 100% 0);
        background: transparent;
        left: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .fp-arrow.fp-prev::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        clip-path: polygon(0 50%, 100% 100%, 100% 0, 0 50%, var(--b) 50%, calc(100% - var(--b) / 2) calc(var(--b) * cos(30deg)), calc(100% - var(--b) / 2) calc(100% - var(--b) * cos(30deg)), var(--b) 50%);
        background: linear-gradient(45deg, #798071, #382633);
        pointer-events: none;
    }

    .fp-arrow.fp-next {
        --b: 5px;
        height: 20px;
        width: 20px;
        aspect-ratio: cos(30deg);
        clip-path: polygon(100% 50%, 0 0, 0 100%);
        background: transparent;
        right: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .fp-arrow.fp-next::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        clip-path: polygon(100% 50%, 0 0, 0 100%, 100% 50%, calc(100% - var(--b)) 50%, calc(var(--b) / 2) calc(100% - var(--b) * cos(30deg)), calc(var(--b) / 2) calc(var(--b) * cos(30deg)), calc(100% - var(--b)) 50%);
        background: linear-gradient(45deg, #382633, #798071);
        pointer-events: none;
    }

    .fp-watermark {
        display: none !important;
    }
}

.text-box{
    color: #382633;
    max-width: 50% !important;
    margin: 0 auto;
}
.text-box.right,
.text-box.left {
    width: 40%; !important;
}
.text-box-wide {
    max-width: 80%;
    color: #382633;
}

.email-popup button {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    max-width: none;
    min-width: 100%;
    align-self: stretch;
    box-sizing: border-box;
    margin: 0;
    background: transparent;
    border: none;
    border-radius: 5px;
    padding: 7px 10px;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: var(--text-color);
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.15s ease, color 0.15s ease;
}
.email-popup-wrap.open .email-popup {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
}
.email-popup {
    display: none;
    position: absolute;
    bottom: calc(100% + 8px);
    left: 0;
    background: var(--surface-color);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 5px;
    white-space: nowrap;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12), 0 1px 3px rgba(0, 0, 0, 0.05);
    z-index: 20;
    min-width: 190px;
    width: max-content;
    max-width: min(19rem, 100%);
    box-sizing: border-box;
    font-family: var(--font-family);
    font-size: 0.825rem;
    font-weight: 400;
    line-height: 1.3;
    color: var(--text-color);
}
.email-popup-wrap {
    position: static;
}
.mob-only {
    display: none;
}

/*-------mobile styles-------*/

@media screen and (max-width: 768px) {

    .mob-sp {
        padding-bottom: 15svh;
    }
    .mob-left {
        text-align: left !important;
    }

    .mob-arr {
        display: block;
        width: 100%;
        text-align: center;
        color: rgba(124, 124, 124, 0.75);
        font-size: 1.5rem;
    }
    .mob-arr::before {
        content: "\21a1";
    }
    .image {
        background-image: url(images/jpg/GdlP544RTa.jpg);
        background-size: contain;
        background-repeat: no-repeat;
    }

    .title {
        font-size: 1.2rem;
        pointer-events: auto;
    }

    body {
        background-image: url(images/08-white-papers.jpg);
        background-repeat: repeat;
        background-size: 150px;
        background-clip: padding-box;
        background-blend-mode: luminosity;
    }

    .slide-container {
        flex-direction: column !important;
        height: auto !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        display: flex !important;
        width: 90vw !important;
        margin: 0 auto 20px auto !important;
        gap: 10px !important;
        min-height: auto !important;
        align-items: center !important;
        box-shadow: none;
        background-image: url(images/08-white-papers.jpg);
        background-repeat: repeat;
        background-size: 150px;
        background-clip: padding-box;
        background-blend-mode: luminosity;
    }

    .slide-container img,
    .slide-container picture,
    .imageLeft50, .imageRight50, .imageFull, .imageLeft50Sq, .imageRight50Sq,
    .imageLeft75, .imageRight75, .imageTopLeft25, .imageTopRight25,
    .imageBottomLeft25, .imageBottomRight25 {
        width: 80% !important;
        min-width: 80% !important;
        max-width: 80% !important;
        height: auto !important;
        max-height: 80svh !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin: 0 auto !important;
        display: block !important;
        justify-self: center !important;
        object-fit: contain !important;
        border: #7d49b1;
        border-width: 1px;
    }
    .imageSquare {
        max-height: 90svh !important;
        min-width: 90svh !important;
        object-fit: contain !important;
        border: #7d49b1;
    }

    .text-box, .text-box.right, .text-box.left {
        width: 80% !important;
        min-width: 80% !important;
        max-width: 80% !important;
        text-align: center;
        margin: 0 auto !important;
        display: block !important;
        position: relative !important;
        left: auto !important;
        right: auto !important;
        border: #1a961a;
        border-width: 1px;
    }

    /* Add space for the header in responsive mode */
    #fullpage {
        margin-top: 10svh !important;
        padding-top: 0 !important;
        position: relative;
    }

    .grid-container {
        height: auto !important;
        display: block !important;
        overflow: visible !important;
    }

    .header {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-rows: 1fr;
        position: fixed;
        top: 0;
        left: 0;
        padding-left: 3svw;
        width: 100vw;
        height: 10svh !important;
        min-height: 10svh !important;
        max-height: 10svh !important;
        z-index: 3000;
        background-image: url(images/08-white-papers.jpg);
        background-repeat: repeat;
        background-size: 150px;
        background-blend-mode: luminosity;
        background-clip: padding-box;
        pointer-events: none;
    }

}

@supports (-webkit-touch-callout: none) {
    @media screen and (max-width: 768px) {

        .slide-container {
            min-height: 0 !important;
            aspect-ratio: auto !important;
            border: #342c3c;
            border-width: 1px;
            display: flow-root !important;
    }
        .slide-container img,
        .slide-container picture {
        padding-top: 2svh;
        padding-bottom: 2svh;}
    }

        .mob-top {
            padding-top: 10svh;
        }
    .mob-arr {
        display: flex;
        justify-content: center; /* Horizontally centers the text inside */
        align-items: center;     /* Vertically centers if needed */
        width: 100%;
        color: rgba(124, 124, 124, 0.75);
    }
    .mob-arr::before {
        content: "\21d3";
    }
}


.fp-responsive .fp-section,
.fp-responsive .fp-slide,
.fp-responsive .fp-tableCell,
.fp-responsive .fp-overflow,
.fp-responsive .fp-slides,
.fp-responsive .fp-slidesContainer,
.fp-responsive .fp-watermark,
.fp-responsive .fp-section.fp-table,
.fp-responsive .fp-slide.fp-table {
    height: auto !important;
    display: block !important;
    margin-bottom: 0 !important;
    min-height: 0 !important;
}

.fp-responsive .fp-watermark {
    display: none !important;
}



