@import url('/assets/styles/global.css');

/* SECTION OPENER */
.section-opener {
    text-align: center;
    font-size: 4em;
    font-size: clamp(4em, 4.5vw, 6em);
    height: 100vh;
	max-width: 100vw;
	overflow: hidden;
}

@media screen and (max-width: 1325px) {
    .section-opener {
        font-size: 3em;
        font-size: clamp(2em, 3.5vw, 5em);
    }
}

.section-opener-line .section-opener-line-text,
.section-opener-line .section-opener-line-text-color {
    overflow: hidden;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 200% 100%;
    background-position: 100%;
    transition: background-position 275ms ease;
    font-family: 'Montserrat-Semi-Bold' !important;
    line-height: 1.4em;
}

.section-opener-line-text {
    background: linear-gradient(
        to right,
        rgb(255, 255, 255),
        rgb(255, 255, 255) 50%,
        rgb(61, 61, 61) 50%
    );
}

.section-opener-line-text-color {
    background: linear-gradient(
        to right,
        rgb(var(--color1)),
        rgb(var(--color1)) 50%,
        rgb(61, 61, 61) 50%
    );
}

@keyframes slideBackground {
    from {
        background-position: 100%;
    }
    to {
        background-position: 0 100%;
    }
}

@-webkit-keyframes slideBackground {
    from {
        background-position: 100%;
    }
    to {
        background-position: 0 100%;
    }
}

.section-opener-line-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: radial-gradient(
            50% 75% at 88.6% 10.8%,
            rgb(var(--color2)) 0%,
            rgba(8, 7, 7, 0) 100%
        ),
        radial-gradient(
            50% 75% at 12.4% 85.39999999999999%,
            rgb(var(--color3)) 0%,
            rgb(8, 7, 7) 100%
        );
    width: 160px;
    padding: 15px;
    border-radius: 50px;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
    opacity: 0;
    transition: opacity 275ms ease;
    -webkit-transition: opacity 275ms ease;
    -moz-transition: opacity 275ms ease;
    -ms-transition: opacity 275ms ease;
    -o-transition: opacity 275ms ease;
}

@media screen and (max-width: 1325px) {
    .section-opener-line-icon {
        width: 75px;
    }
}

@keyframes showIcon {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.section-opener-line-icon-child {
    width: 60px;
    height: 60px;
}

@media screen and (max-width: 1325px) {
    .section-opener-line-icon-child {
        width: 30px;
        height: 30px;
    }
}

/* ###################### */

/* ANIMATED COLOR EFFECT */

.animated-color-effect {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: -1000;
    position: absolute;
    width: 100%;
}

@property --color-effect-gradient-radius {
    syntax: '<angle>';
    initial-value: 0deg;
    inherits: false;
}

.animated-color-effect .color-effect-gradient {
    max-width: 1000px;
    max-height: 600px;
    width: 100%;
    height: 100%;
    border-radius: 9999px;
    -webkit-border-radius: 9999px;
    -moz-border-radius: 9999px;
    -ms-border-radius: 9999px;
    -o-border-radius: 9999px;
    background: conic-gradient(
        from var(--color-effect-gradient-radius) at 50% 50%,
        rgba(var(--color1)),
        rgba(var(--color2)),
        rgba(var(--color3)),
        rgba(var(--color4)),
        rgba(var(--color5)),
        rgba(var(--color1))
    );
    filter: blur(100px);
    -webkit-filter: blur(100px);
    /*animation: animated-color-effect-spin 8s linear infinite,
        animated-color-effect-shrink both;*/
	animation: animated-color-effect-spin 8s linear infinite;
	-webkit-animation: animated-color-effect-spin 8s linear infinite;
    /*animation-timeline: auto, view(500px 250px);*/
    /*transform: scale(2);
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    -o-transform: scale(2);*/
    opacity: 0.5;
}

/*@keyframes animated-color-effect-spin {
    0% {
        --color-effect-gradient-radius: 0deg;
		animation-timing-function: linear;
    }
    100% {
        --color-effect-gradient-radius: 360deg;
		animation-timing-function: linear;
    }
}

@-webkit-keyframes animated-color-effect-spin {
    0% {
        --color-effect-gradient-radius: 0deg;
		animation-timing-function: linear;
    }
    100% {
        --color-effect-gradient-radius: 360deg;
		animation-timing-function: linear;
    }
}*/

@keyframes animated-color-effect-shrink {
    from {
        transform: scale(2);
        -webkit-transform: scale(2);
        -moz-transform: scale(2);
        -ms-transform: scale(2);
        -o-transform: scale(2);
        opacity: 0.5;
    }
    to {
        transform: scale(0.8);
        -webkit-transform: scale(0.8);
        -moz-transform: scale(0.8);
        -ms-transform: scale(0.8);
        -o-transform: scale(0.8);
        opacity: 1;
    }
}

/* ####################### */

/* Animated Color Effect 2 */
.animated-color-effect-container {
    height: 100vh;
    width: 100vw;
    position: absolute;
    filter: blur(100px);
    -webkit-filter: blur(100px);
    backface-visibility: hidden;
    pointer-events: none;
    z-index: -1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.animated-color-effect-circle {
    max-width: 1500px;
    max-height: 1500px;
    width: 100%;
    height: 100%;
    background: conic-gradient(
        from var(--color-effect-gradient-radius) at 50% 50%,
        rgba(var(--color1)),
        rgba(var(--color2)),
        rgba(var(--color3)),
        rgba(var(--color4)),
        rgba(var(--color5)),
        rgba(var(--color1))
    );
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    animation: animated-color-effect-spin 8s linear infinite;
    -webkit-animation: animated-color-effect-spin 8s linear infinite;
}

@keyframes animated-color-effect-spin {
    0% {
        transform: rotate(0);
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
    }
}

@keyframes animated-color-effect-circle-shrink {
    0% {
        max-width: 1500px;
        max-height: 1500px;
    }
    100% {
        max-width: 600px;
        max-height: 600px;
    }
}

/* ############################# */
