.ofelia-display {
    font-family: "ofelia-display", sans-serif;
    font-weight: 200;
    font-style: normal;
    font-variation-settings: "wdth" 110, "wght" 300;
    font-size: 48.03px;
}

.ofelia-font {
    font-family: "ofelia-display", sans-serif;
    font-weight: 300;
    font-style: normal;
}

blockquote, figure, h1, h2, h3, h4, h5, h6, p, pre {
    margin: 0;
}

body {
    padding: 0;
    margin: 0;
    overflow-x: hidden;
    overscroll-behavior: none;
    background: linear-gradient(135deg, rgb(200, 15, 25), rgba(200, 15, 25, 0.3) 30.71%, rgba(200, 15, 25, 0) 50%), 
    linear-gradient(225deg, rgb(53, 116, 233), rgba(53, 116, 233, 0.3) 30.71%, rgba(53, 116, 233, 0) 50%), 
    linear-gradient(180deg, rgb(255, 246, 120) 30%, rgba(255, 246, 120, 0.5) 70%, rgba(255, 246, 120, 0) 100%),
    linear-gradient(0deg, rgba(65, 205, 135, 0.605) 30%, rgba(120, 255, 188, 0) 60%);
    /* overflow: hidden; */
}

body.loading {
    overflow-y: hidden;
}

html {
    scrollbar-width: thin;
    scrollbar-color: #bdbdbd #ffffff;
    scroll-behavior: smooth;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1);
    transition-property: scrollbar-width;
}

html.loading {
    scrollbar-width: none;
}

.content-section {
    height: min-content;
    /* background-color: #ffffff; */
    padding: 0px 50px;
    display: flex;
    width: 50%;
    padding: 20px 0;
    flex-direction: row;
    justify-content: center;
    /* width: 100%; */
}

/* #general.content-section {
    padding-top: 150px;
} */

/* main {
    background: linear-gradient(135deg, rgb(200, 15, 25), rgba(200, 15, 25, 0.3) 30.71%, rgba(200, 15, 25, 0) 50%), 
    linear-gradient(225deg, rgb(53, 116, 233), rgba(53, 116, 233, 0.3) 30.71%, rgba(53, 116, 233, 0) 50%), 
    linear-gradient(180deg, rgb(255, 246, 120) 30%, rgba(255, 246, 120, 0.5) 70%, rgba(255, 246, 120, 0) 100%),
    linear-gradient(0deg, rgba(65, 205, 135, 0.605) 30%, rgba(120, 255, 188, 0) 60%);
} */

.section-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-top: 150px;
}

.container-card {
    box-shadow: -1px -1px white;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    padding: 16px;
    border-radius: 10px;
    /* box-shadow: 0 0.3px 0.7px rgba(0, 0, 0, 0.126), 0 0.9px 1.7px rgba(0, 0, 0, 0.179), 0 1.8px 3.5px rgba(0, 0, 0, 0.224), 0 3.7px 7.3px rgba(0, 0, 0, 0.277), 0 10px 20px rgba(0, 0, 0, 0.4);; */
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    /* max-width: 70%; */
}

.container-card:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.25;
    border-radius: 8px;
    background-color: white;
    
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1);
    transition-property: opacity;
}

.card-title {
    font-size: 48px;
    font-weight: 500;
    margin: 20px 0;
    white-space: wrap;
    width: min-content;
    /* color: white; */
}

.card-content {
    padding: 5px;
    font-size: 24px;
    font-weight: 300;
}

.content-list-wrap {
    margin: 0 0 0 25px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

/* -------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------- */

#section-container {
    padding-top: 5rem;
    padding-bottom: 5rem;
    align-items: center;
    min-height: 100vh;
    display: flex;
    position: relative;
    padding: 8rem 0;
}

.section-hidden {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.section-visible {
    opacity: 1;
    transform: translateY(0);
}

.container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

@media (min-width: 640px) {
    .container {
        max-width: 640px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 768px;
    }
}

@media (min-width: 1024px) {
    .container {
        max-width: 1024px;
    }
}

.wrap {
    max-width: 64rem;
    margin-left: auto;
    margin-right: auto;
}

.title-container {
    text-align: center;
    margin-bottom: 3rem;
}

.title-wrap {
    display: inline-block;
    margin-bottom: 0.75rem;
}

.upper-title {
    color: rgb(248, 252, 253);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, rgb(148, 26, 26), rgb(44, 34, 152));
    background-image: linear-gradient(to right,rgb(255, 241, 164), #ffffff, rgb(140, 220, 255));
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25rem;
    margin-bottom: 0.25rem;
}

.main-title {
    font-size: 4rem;
    line-height: 1;
    color: transparent;
    font-weight: 400;
    -webkit-background-clip: text;
    background-clip: text;
    background-image: linear-gradient(to right, rgb(255, 241, 164), #ffffff 25%, #ffffff 75%, rgb(140, 220, 255));
    /* background-image: linear-gradient(to right, rgb(148, 26, 26), rgb(121, 26, 148), rgb(44, 34, 152)); */
}

.title-underline {
    background-image: linear-gradient(to right,rgb(255, 241, 164), #ffffff, rgb(140, 220, 255));
    /* background-image: linear-gradient(to right, rgb(148, 26, 26), rgb(121, 26, 148), rgb(44, 34, 152)); */
    width: 5rem;
    height: 0.25rem;
    margin-left: auto;
    margin-right: auto;
}

.content-grid {
    gap: 2rem;
    display: grid;
}

@media (min-width: 768px) {
    .content-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 768px) {
    .content-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.content-card-wrap {
    border-radius: 0.75rem;
    overflow: hidden;
    position: relative;
}

.main-content-container {
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    background-image: linear-gradient(to bottom right, rgb(79 70 229 / 0.8), rgb(147 51 234 / 0.8));
    justify-content: center;
    align-items: center;
    display: flex;
    z-index: 10;
    position: absolute;
    inset: 0;
}

.content-card-wrap.general .main-content-container {
    background-image: linear-gradient(to bottom right, rgb(147 51 234 / 0.8) , rgb(219 39 119 / 0.8));
}

.content-card-wrap.office .main-content-container {
    background-image: linear-gradient(to bottom right, rgb(79 70 229 / 0.8), rgb(147 51 234 / 0.8));
}

.content-card-wrap.storage .main-content-container {
    background-image: linear-gradient(to bottom right, rgb(8 145 178 / 0.8) , rgb(79 70 229 / 0.8));
}

.content-card-wrap.declutter .main-content-container {
    background-image: linear-gradient(to bottom right, rgba(17, 100, 27, 0.8), rgba(83, 187, 169, 0.8));
}



.main-content-wrap {
    --tw-translate-y: 2rem;
    transform: translateY(var(--tw-translate-y));
    padding: 1rem;
    text-align: center;
    transition-property: transform;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}

.content-card-wrap:hover .main-content-container {
    opacity: 1;
}

.content-card-wrap:hover .main-content-wrap {
    transform: translateY(0);
}

.content-card-wrap.active .main-content-container {
    opacity: 1;
}

.content-card-wrap.active .main-content-container {
    transform: translateY(0);
}

.main-content-title {
    color: rgb(255 255 255);
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.75rem;
    margin-bottom: 0.5rem;
}

.main-content-text {
    color: rgb(229 231 235);
    margin: 0;
    margin-bottom: 1rem;
}

.image-content-container {
    /* background-image: linear-gradient(45deg, rgb(255, 241, 164), rgba(255, 241, 164, 0.3) 30.71%, rgba(255, 241, 164, 0) 50%), 
    linear-gradient(135deg, rgb(140, 220, 255), rgba(140, 220, 255, 0.3) 30.71%, rgba(140, 220, 255, 0) 50%), 
    linear-gradient(90deg, rgb(196, 102, 255) 30%, rgba(196, 102, 255, 0)); */
    background-image: linear-gradient(to bottom right, hsla(0, 0%, 100%, 0.25), hsla(222, 100%, 96%, 0.485));
    box-shadow: inset -4px -4px white, inset 4px 4px #ffffff, inset -4px 4px #ffffff, inset 4px -4px #ffffff, 0 0.3px 0.7px rgba(0, 0, 0, 0.126), 0 0.9px 1.7px rgba(0, 0, 0, 0.179), 0 1.8px 3.5px rgba(0, 0, 0, 0.224), 0 3.7px 7.3px rgba(0, 0, 0, 0.277), 0 10px 20px rgba(0, 0, 0, 0.4);
    border-radius: 0.75rem;
    justify-content: center;
    align-items: center;
    aspect-ratio: 16 / 9;
    display: flex;
}

.image-content-title {
    color: rgba(23, 97, 157, 0.8);
    color: rgba(26, 19, 92, 0.925);
    font-weight: 500;
    font-size: 1.5rem;
    transition-property: color;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 200ms;
}

.content-card-wrap:hover .image-content-title {
    color: rgba(34, 146, 238, 0);
}

.content-list-wrap {
    margin: 0;
    padding: 20px;
    height: min-content;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    text-align: left;
}

.content-list-item {
    margin: 0.25rem 0;
    color: white;
}

#main-header {
    position: fixed;
    width: 100vw;
    /* background-color: white; */
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    /* background: linear-gradient(45deg, rgb(255, 241, 164, 0.5), rgba(255, 241, 164, 0.3) 30.71%, rgba(255, 241, 164, 0) 50%), 
    linear-gradient(135deg, rgb(140, 220, 255, 0.5), rgba(140, 220, 255, 0.3) 30.71%, rgba(140, 220, 255, 0) 50%), 
    linear-gradient(90deg, rgb(196, 102, 255, 0.5) 30%, rgba(196, 102, 255, 0)); */
    z-index: 50;
    transform: translateY(0%);
    animation-duration: 1600ms;
    animation-delay: 0001ms;
    animation-timing-function: cubic-bezier(0.17, 0.17, 0.24, 1);
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards;
    animation-play-state: paused;
    animation-name: header-drop;
}

#main-header:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.5;
    background-color: rgba(255, 255, 255, 0);
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1);
    transition-property: opacity;
}

.link-text {
    font-size: 24px;
    /* line-height: 24px; */
    margin: 0px;
    color:#ffffff;
    white-space: nowrap;
}

.link-decoration {
    background-color: #ffffff;
    height: 2.5px;
    width: 0%;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1);
    transition-property: width;
}

.hover-card .link-text {
    color:#000000;
}

@media only screen and (max-width: 1020px) {
    main {
        background: linear-gradient(135deg, rgb(200, 15, 25), rgba(200, 15, 25, 0.3) 30.71%, rgba(200, 15, 25, 0) 50%), 
                    linear-gradient(225deg, rgb(53, 116, 233), rgba(53, 116, 233, 0.3) 30.71%, rgba(53, 116, 233, 0) 50%), 
                    linear-gradient(180deg, rgb(255, 246, 120) 30%, rgba(255, 246, 120, 0.5) 70%, rgba(255, 246, 120, 0) 100%),
                    linear-gradient(0deg, rgba(65, 205, 135, 0.605) 30%, rgba(120, 255, 188, 0) 60%);
        padding: 0 10px;
    }

    .container {
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
        padding: 0 0.5rem;
    }

    #mobile-header {
        display: inline;
        position: fixed;
        width: 100vw;
        /* background-color: white; */
        backdrop-filter: blur(15px);
        -webkit-backdrop-filter: blur(15px);
        z-index: 50;
        transform: translateY(0%);
        animation-duration: 1600ms;
        animation-delay: 0001ms;
        animation-timing-function: cubic-bezier(0.17, 0.17, 0.24, 1);
        animation-iteration-count: 1;
        animation-direction: normal;
        animation-fill-mode: forwards;
        animation-play-state: paused;
        animation-name: header-drop;
    }

    #mobile-header:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1;
        opacity: 1;
        background-color: rgba(255, 255, 255, 0);
        transition-duration: 0.4s;
        transition-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1);
        transition-property: opacity;
    }

    .content-section {
        height: min-content;
        /* background-color: #ffffff; */
        /* padding: 25px 50px; */
        display: flex;
        width: 100%;
        padding: 60px 0px;
        flex-direction: row;
        justify-content: center;
        /* width: 100%; */
    }

    #general.content-section {
        padding-top: 150px;
    }

    .content-grid {
        gap: 1.5rem;
        display: grid;
    }

    .image-content-title {
        text-align: center;
    }

    .main-content-title {
        font-weight: 500;
        font-size: 1rem;
        line-height: 1.5rem;
        margin-bottom: 0.25rem;
    }

    .main-content-text {
        color: rgb(229 231 235);
        margin: 0;
        margin-bottom: 0.25rem;
    }

    .content-list-wrap {
        margin: 0;
        padding: 8px;
        height: min-content;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        text-align: left;
        font-size: 1rem;
        line-height: 1rem;
    }

    .main-content-wrap {
        --tw-translate-y: 2rem;
        transform: translateY(var(--tw-translate-y));
        padding: 1rem;
        text-align: center;
        transition-property: transform;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration: 300ms;
    }

    .image-content-container {
        background-image: linear-gradient(to bottom right, hsla(0, 0%, 100%, 0.25), hsla(222, 100%, 96%, 0.485));
        box-shadow: inset -4px -4px white, inset 4px 4px #ffffff, inset -4px 4px #ffffff, inset 4px -4px #ffffff, 0 0.3px 0.7px rgba(0, 0, 0, 0.126), 0 0.9px 1.7px rgba(0, 0, 0, 0.179), 0 1.8px 3.5px rgba(0, 0, 0, 0.224), 0 3.7px 7.3px rgba(0, 0, 0, 0.277), 0 10px 20px rgba(0, 0, 0, 0.4);
        border-radius: 0.75rem;
        justify-content: center;
        align-items: center;
        aspect-ratio: 16 / 12;
        display: flex;
    }
}