@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400..800&display=swap');
@import url(./base.css);
@import url(./easings.css);

@layer General, Presets, Utils, Container, FlexSystem, Block, Button, Scroller;


:root {
    --clr-primary-hsl: 5, 97%, 55%;
    --clr-primary-main: #fb2d1b;
    --clr-primary-dark: #da2616;
    --clr-primary-light: #ffdcd4;
    --clr-primary-text: #210101;

    --clr-secondary-main: #030f74;
    --clr-secondary-dark: #020b64;
    --clr-secondary-light: #d3dbec;
    --clr-secondary-text: #00011b;
    --clr-secondary-hsl: 234, 95%, 23%;

    --clr-error: #d32f2f;
    --clr-warning: #b76e00;
    --clr-success: #66bb6a;
    --clr-info: #0c8ce9;
    --clamp-title: clamp(1.5rem, 2.75vw + 0.725rem, 52px);
    --clamp-sub-title: clamp(0.975rem, 1.05vw + 0.25rem, 1.15rem);
    --clr-black: #000;
    --clr-dark: #101010;
    --clr-body: #676468;
    --clr-white: #fff;
    --clr-gray: #808080;
    --clr-gray-100: #f8f8f8;
    --clr-gray-200: #f2f2f2;
    --clr-gray-300: #ededed;
    --clr-gray-400: #d8d8d8;
    --clr-gray-500: #ccc;
    --clr-gray-600: #bfbfbf;
    --clr-gray-700: #a1a1a1;
    --clr-gray-800: #9d9d9d;
    --clr-gray-900: #637381;
    --clr-auto: hsl(0, 0%, 0%, 5%);
    --clr-link: #646cff;
    --clr-link-hover: #535bf2;
    --font-title: "Syne", system-ui, -apple-system, BlinkMacSystemFont,
        'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
        sans-serif;
    --font-body: "Syne", system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
        Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    --smooth-shadow: 0px 0.6px 0.9px rgba(0, 0, 0, 0.006),
        0px 1.4px 2.1px rgba(0, 0, 0, 0.009), 0px 2.3px 3.5px rgba(0, 0, 0, 0.011),
        0px 3.5px 5.2px rgba(0, 0, 0, 0.013), 0px 5px 7.5px rgba(0, 0, 0, 0.015),
        0px 7.1px 10.6px rgba(0, 0, 0, 0.017),
        0px 10.1px 15.1px rgba(0, 0, 0, 0.019),
        0px 14.6px 21.9px rgba(0, 0, 0, 0.021),
        0px 22.5px 33.8px rgba(0, 0, 0, 0.024), 0px 40px 60px rgba(0, 0, 0, 0.03);
    --border-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px,
        rgba(9, 30, 66, 0.13) 0px 0px 1px 1px;
    --elevation-1: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
    --elevation-2: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    --elevation-3: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
    --elevation-4: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
    --elevation-6: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
    --elevation-8: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
    --elevation-12: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
    --elevation-16: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
    --elevation-24: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
    --clamp-btn: clamp(1em, 2.5vw, 1.25em) clamp(1em, 2.5vw, 2em);
    --clamp-box: clamp(1rem, 3vw, 1.25rem);
    --overlay-linear: linear-gradient(hsl(0, 0%, 0%, 85%), hsl(0, 0%, 0%, 85%));
    --block-spacing: clamp(2.5rem, 3vw + 1rem, 3.5rem);
    font-synthesis: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    image-rendering: optimizeSpeed;
    --clr-bg: hsl(0, 0%, 0%, 5%);
    --clr-border: hsl(0, 0%, 0%, 10%);
    --body-bg: var(--clr-white);
}

[data-theme="dark"] {
    --body-bg: var(--clr-dark);
    --clr-bg: hsl(0, 0%, 100%, 5%);
    --clr-border: hsl(0, 0%, 100%, 10%);
    --clr-body: #b7b7b7;
    --clr-auto: hsl(0, 0%, 100%, 5%);
}

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

@media (prefers-reduced-motion:no-preference) {
    :root {
        scroll-behavior: unset !important;
    }
}



body {
    visibility: hidden;
    transition: 300ms;
    opacity: 0;
}

body.CE-200 {
    visibility: visible;
    opacity: 1;
}




/*--------------------------------------------------------------
# Back To Top
--------------------------------------------------------------*/

/* .back-to-top {
    position: fixed;
    right: clamp(15px, 3vw, 24px);
    bottom: clamp(15px, 3vw, 24px);
    display: grid;
    place-items: center;
}

.back-to-top>* {
    grid-area: 1 / -1;
}

.back-to-top svg {
    transform: rotate(-90deg);
}

.back-to-top svg circle {
    stroke: rgba(0, 0, 0, 0.1);
    stroke-width: 3px;
    stroke-linecap: round;
    fill: transparent;
    width: 100%;
}

.back-to-top svg .progress-bar {
    stroke: url(#grad);
    fill: #fff;
    transition: stroke-dashoffset 0s ease-in-out;
    filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.2));
}

.back-to-top .pct {
    color: var(--clr-dark);
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    margin: 0;
    font-size: 14px;
    z-index: 1;
} */

::selection {
    background-color: var(--clr-primary-dark);
    color: var(--clr-primary-light);
}




/*=============================================
=            Form-Control            =
=============================================*/

.Form-root .row {
    row-gap: 1.5rem;
}

.FormControl-root {
    --_size-y: 50px;
    --_size-x: 100%;
    --_rounded: 0.25em;
    --_fz: 1rem;
    --_fz-shrink: 0.725rem;
    --_autofill-bg: hsl(var(--clr-primary-hsl), 10%);
    --_autofill-color: var(--clr-primary-text);
    position: relative;
    isolation: isolate;
}

.FormControl-group .FormControl-error {
    color: var(--clr-error);
    font-size: 80%;
}

.FormControl-root.FormControl-required :is(.FormControl-label, legend) {
    contain: layout;
}

.FormControl-root.FormControl-required :is(.FormControl-label, legend)::after {
    content: "*";
    color: var(--clr-error);
}

.FormControl-root.FormControl-invalid {
    color: var(--clr-error);
    border-color: var(--clr-error);
}

.FormControl-root .FormControl-label {
    position: absolute;
    inset: 0;
    text-indent: 1rem;
    font-size: var(--_fz);
    transition: 500ms cubic-bezier(0.175, 0.92, 0.165, 1);
    pointer-events: none;
    height: var(--_size-y);
    line-height: var(--_size-y);
}

.FormControl-root.FormControl-shrink .FormControl-label {
    /* .FormControl-root:has(.InputBase-input:not(:placeholder-shown), .InputBase-input:-webkit-autofill) .FormControl-label { */
    transform: translateY(-50%);
    font-size: var(--_fz-shrink);
}

.FormControl-root .InputBase-root {
    display: grid;
}

.FormControl-root .InputBase-root>* {
    grid-area: 1 / -1;
}

.FormControl-root .InputBase-input {
    padding: 0.5rem 1rem;
    margin: 0;
    border: none;
    outline: none;
    height: var(--_size-y);
    box-sizing: border-box;
    font-size: 1rem;
    font-family: var(--font-body);
    color: inherit;
}

.FormControl-root .InputBase-input::placeholder {
    color: transparent;
    transition: 200ms ease;
}

.FormControl-root.FormControl-shrink .InputBase-input::placeholder {
    color: inherit;
}

.FormControl-root select.InputBase-input {
    transition: all 500ms cubic-bezier(0.075, 0.82, 0.165, 1);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.FormControl-root select.InputBase-input {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath fill-rule='evenodd' d='M1.646 11.354a.5.5 0 0 0 .708 0L8 5.707l5.646 5.647a.5.5 0 0 0 .708-.708l-6-6a.5.5 0 0 0-.708 0l-6 6a.5.5 0 0 0 0 .708z'/%3e%3c/svg%3e");
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-size: 1rem 1rem;
    background-position: calc(100% - 1rem);
    background-repeat: no-repeat;
}

.FormControl-root select.InputBase-input:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath fill-rule='evenodd' d='M1.646 11.354a.5.5 0 0 0 .708 0L8 5.707l5.646 5.647a.5.5 0 0 0 .708-.708l-6-6a.5.5 0 0 0-.708 0l-6 6a.5.5 0 0 0 0 .708z'/%3e%3c/svg%3e");
    background-size: 1rem 1rem;
    background-position: calc(100% - 1rem);
    background-repeat: no-repeat;
}

.FormControl-root .InputBase-input option {
    font-size: initial;
    color: initial;
}

.FormControl-root .InputBase-input:-webkit-autofill {
    box-shadow: inset 0 0 0 100px var(--_autofill-bg) !important;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: var(--_autofill-color);
    color: var(--_autofill-color)
}

.FormControl-root fieldset {
    border: 1px solid currentColor;
    padding-inline: 0.5rem;
    position: absolute;
    inset: -0.5rem 0 0 0;
    pointer-events: none;
    height: calc(100% + 0.5rem);
    opacity: 0.5;
    box-sizing: border-box;
}

.FormControl-root:is(:hover, .FormControl-shrink) fieldset {
    opacity: 1;
}

.FormControl-root legend {
    all: revert-layer;
    margin: 0;
    font-size: 0;
    padding-inline: 0;
    height: 1rem;
    visibility: hidden;
    overflow: hidden;
    width: 0;
    box-sizing: border-box;
    transition: 500ms cubic-bezier(0.175, 0.92, 0.165, 1);
}

.FormControl-root.FormControl-shrink legend {
    width: auto;
    padding-inline: 0.5rem;
    font-size: var(--_fz-shrink);
}

.FormControl-root :is(.InputBase-input, fieldset) {
    width: 100%;
    border-radius: var(--_rounded, 0);
    -webkit-border-radius: var(--_rounded, 0);
    -moz-border-radius: var(--_rounded, 0);
    -ms-border-radius: var(--_rounded, 0);
    -o-border-radius: var(--_rounded, 0);
}

.FormControl-root:not(.FormControl-shrink) .InputBase-input:is([type="date"], select) {
    font-size: 0px;
    color: transparent;
}


input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    appearance: none;
    -moz-appearance: textfield;
}



.Adornment-root {
    display: flex;
}

.Adornment-item {
    aspect-ratio: 1;
    height: 100%;
    display: grid;
    place-content: center;
}


/*=====  End of Form-Control  ======*/








.Tooltip-root {
    position: fixed;
    padding: 6px 10px;
    background: rgba(17, 17, 17, 0.92);
    color: #fff;
    font-size: 13px;
    border-radius: 6px;
    pointer-events: none;
    opacity: 0;
    transform: scale(0.85);
    transition: opacity 140ms ease, transform 140ms ease;
    z-index: 9999;
    max-width: 220px;
}

.Tooltip-show {
    opacity: 1;
    transform: scale(1);
}




iconify-icon {
    font-size: 1.35rem;
}







/*=============================================
=            Block-header            =
=============================================*/

#Header-root {
    position: absolute;
    inset: 0 0 auto 0;
    z-index: 999;
}

#Header-root a[aria-current=page] {
    background-size: 100% 2px;
}

/*=====  End of Block-header  ======*/











/*=============================================
=            BLock-hero            =
=============================================*/

.Hero-root.Hero-root {
    contain: layout;
    align-content: center;
    padding-block: 100px var(--block-spacing);
}
@media (min-width: 992px) {
	.Hero-root.Hero-root {
    	min-height: min(100vh, 1080px);
	}

	.Hero-swiper:not(:is(:hover, :focus-within))::part(button-prev) {
		translate: -100px;
	}
	.Hero-swiper:not(:is(:hover, :focus-within))::part(button-next) {
		translate: 100px;
	}
}
.Hero-root.Hero-root::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 50%;
    background-color: #fb2d1b;
    z-index: -1;
    pointer-events: none;
}
.Hero-root::after {
    content: "";
    position: absolute;
    inset: 0 0 0 auto;
    width: 50%;
    background-color: #0a122a;
    z-index: -1;
    pointer-events: none;
}

.Hero-root .Hero-object {
    max-width: 1080px;
    margin-inline: auto;
}
.Hero-root .Hero-object > * {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: contain;
}

.Hero-root .Hero-brand {
    position: absolute;
    inset: 0;
    width: 50%;
    height: 100%;
    font-weight: 900;
    text-transform: uppercase;
    overflow: hidden;
    pointer-events: none;
}
.Hero-brand[slot="container-end"] {
    margin-left: auto;
}
.Hero-root .Hero-brand span {
    font-size: 20rem;
    position: absolute;
    inset: 0;
    width: max-content;
    height: max-content;
    left: 100%;
    translate: -50%;
    color: #fff;
    -webkit-text-stroke: 3px #fff;
}
@media (max-width: 991.98px) {
	.Hero-root .Hero-brand span {
    	font-size: 10rem;
    	-webkit-text-stroke: 2px #fff;
	}
}
@media (max-width: 575.98px) {
	.Hero-root .Hero-brand span {
    	font-size: 5rem;
	}
}
.Hero-brand[slot="container-start"] span {
    color: transparent;
}
.Hero-brand[slot="container-end"] span {
    left: 0;
}

.Hero-slide .Hero-object {
    clip-path: inset(100% 0 0 0);
    transition: 1s all cubic-bezier(0.45, 0.98, 0.145, 1) 200ms;
    translate: 0 -3rem;
    scale: 0.85;
    opacity: 0;
    rotate: 5deg;
}
.Hero-slide.swiper-slide-active .Hero-object {
    clip-path: inset(0);
    translate: 0;
    scale: 1;
    opacity: 1;
    rotate: 0deg;
}

.Hero-swiper::part(button-prev),
.Hero-swiper::part(button-next) {
    width: 20px;
    height: 20px;
    padding: 1rem;
    background-color: hsl(0, 0%, 100%, 20%);
    color: #fff;
    transition: 1s all cubic-bezier(0.245, 0.98, 0.122, 1);
}
.Hero-swiper::part(button-prev):active,
.Hero-swiper::part(button-next):active {
    scale: 0.95;
}

/*=====  End of BLock-hero  ======*/











/* Socials */
.List-socials {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}