/*---------------------------------------- Scaling System ----------------------------------------*/

                /* Desktop */

                :root {
                    --size-unit: 16;
                    /* body font-size in design - no px */
                    --size-container-ideal: 1440;
                    /* screen-size in design - no px */
                    --size-container-min: 992px;
                    --size-container-max: 1920px;
                    --size-container: clamp(var(--size-container-min), 100vw, var(--size-container-max));
                    --size-font: calc(var(--size-container) / (var(--size-container-ideal) / var(--size-unit)));
                }

                /* Tablet */

                @media screen and (max-width: 991px) {
                    :root {
                        --size-container-ideal: 834;
                        /* screen-size in design - no px */
                        --size-container-min: 768px;
                        --size-container-max: 991px;
                    }
                }

                /* Mobile Landscape */

                @media screen and (max-width: 767px) {
                    :root {
                        --size-container-ideal: 550;
                        /* screen-size in design - no px */
                        --size-container-min: 480px;
                        --size-container-max: 767px;
                    }
                }

                /* Mobile Portrait */

                @media screen and (max-width: 479px) {
                    :root {
                        --size-container-ideal: 402;
                        /* screen-size in design - no px */
                        --size-container-min: 320px;
                        --size-container-max: 479px;
                    }
                }

                /*---------------------------------------- Hide Scrollbar ----------------------------------------*/

                ::-webkit-scrollbar {
                    display: none;
                }

                /* Chrome, Safari, Opera */

                body {
                    -ms-overflow-style: none;
                }

                /* IE & Edge */

                html {
                    scrollbar-width: none;
                }

                /* Firefox */

                /*---------------------------------------- body --------------------------------------*/

                *,
                *:after,
                *:before {
                    -webkit-box-sizing: border-box;
                    -moz-box-sizing: border-box;
                    box-sizing: border-box;
                }

                html {
                    scroll-behavior: initial;
                }

                html,
                body {
                    -webkit-font-smoothing: antialiased;
                }

                svg {
                    max-width: none;
                    height: auto;
                    box-sizing: border-box;
                    vertical-align: middle;
                }

                /* Browser Font Smoothing */

                body {
                    -webkit-font-smoothing: antialiased;
                    -moz-osx-font-smoothing: grayscale;
                }

                /* Selection */

                ::selection {
                    background-color: var(--white);
                    color: var(--dark-blue);
                    text-shadow: none;
                }

                ::-moz-selection {
                    background-color: var(--white);
                    color: var(--dark-blue);
                    text-shadow: none;
                }

                /* Links */

                a {
                    color: inherit;
                    text-decoration: none;
                }

                /* Images */

                img {
                    -webkit-user-select: none;
                    user-select: none;
                }

                /* Buttons */

                button {
                    all: unset;
                    cursor: pointer;
                }

                button:focus-visible {
                    outline: revert;
                }

                /* SVG */

                svg {
                    pointer-events: none;
                }

                /* Inputs */

                textarea {
                    resize: vertical;
                }

/* ----- Theme Section ----- */

                /* Nav Theme */

                [data-theme-nav="light"] .header {
                    color: var(--light-silver);
                }

                [data-theme-nav="dark"] .header {
                    color: var(--ink-black);
                }

                /* ----- Logo Navbar ----- */

                [data-logo-scroll] {
                    cursor: default;
                    pointer-events: none;
                }

                [data-logo-scroll][data-back-to-top-active] {
                    cursor: pointer;
                    pointer-events: auto;
                }

                /* ----- Orbit Portfolio ----- */

                /* Previous and next Button*/

                .portfolio-orbit__btn,
                .portfolio-orbit__btn-overlay {
                    transition: transform 0.475s cubic-bezier(0.625, 0.05, 0, 1), opacity 0.475s cubic-bezier(0.625, 0.05, 0, 1)
                }

                .portfolio-orbit__btn:hover .portfolio-orbit__btn-overlay {
                    transform: scale(1.4);
                }

                .portfolio-orbit__overlay-nav:hover:has(.portfolio-orbit__btn:hover) .portfolio-orbit__btn {
                    opacity: 0.4;
                }

                .portfolio-orbit__btn:hover {
                    transform: scale(0.85);
                    opacity: 1 !important;
                }

                /* ----- Contact Section ----- */

                [data-contact-word] {
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    margin: 0;
                    font-size: clamp(1.5rem, 3.5vw, 4.5rem);
                    font-weight: 400;
                    line-height: 1;
                    white-space: nowrap;
                    color: rgba(255, 255, 255, 0.5);
                    opacity: 0;
                    filter: blur(0.65rem);
                    transform-style: preserve-3d;
                    will-change: transform, opacity, filter;
                }

                /* ----- Underline Links ----- */

                [data-underline-link] {
                    position: relative;
                    text-decoration: none;
                }

                [data-underline-link]::before {
                    content: "";
                    position: absolute;
                    left: 0;
                    bottom: -0.0625em;
                    width: 100%;
                    height: 0.0625em;
                    background-color: currentColor;
                    transform: scaleX(0) rotate(0.001deg);
                    transform-origin: right;
                    transition: transform 0.735s cubic-bezier(0.625, 0.05, 0, 1);
                }

                @media (hover: hover) and (pointer: fine) {
                    [data-hover]:hover [data-underline-link]::before,
                    [data-underline-link]:hover::before {
                        transform: scaleX(1) rotate(0.001deg);
                        transform-origin: left;
                    }
                }

                .globe :nth-child(1) {
                    animation-delay: -3.6s;
                }

                .globe :nth-child(2) {
                    animation-delay: -1.8s;
                }

                /* ----- Keyframes ----- */

                /* Scale on Hover */

                @media (hover: hover) and (pointer: fine) {
                    [data-hover="scale"] {
                        transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
                        will-change: transform;
                    }
                    [data-hover="scale"]:hover {
                        transform: scale(0.95);
                    }
                }

                /* Infinite Rotation */

                @keyframes rotate-360 {
                    from {
                        transform: rotate(0deg);
                    }
                    to {
                        transform: rotate(360deg);
                    }
                }

                [data-loop="rotate"] {
                    animation: rotate-360 6s linear infinite;
                }

                /* Rotating Globe */

                @keyframes globe {
                    0% {
                        transform: translate(-50%, -50%) rotate(0deg);
                    }
                    100% {
                        transform: translate(-50%, -50%) rotate(360deg);
                    }
                }

                @keyframes circle1 {
                    0% {
                        border-radius: 50%;
                        box-shadow: inset .1em 0px 0px .08em var(--ink-black);
                        width: 100%;
                    }
                    49% {
                        border-radius: 50%;
                        box-shadow: inset .1em 0px 0px .08em var(--ink-black);
                        background: transparent;
                    }
                    50% {
                        border-radius: 0%;
                        width: .175em;
                        background: var(--ink-black);
                    }
                    51% {
                        border-radius: 50%;
                        box-shadow: inset -.1em 0px 0px .08em var(--ink-black);
                        background: transparent;
                    }
                    100% {
                        border-radius: 50%;
                        box-shadow: inset -.1em 0px 0px .08em var(--ink-black);
                        width: 100%;
                    }
                }

                /* Shimmer Text */

                .shimmer-text {
                    color: transparent;
                    background-color: rgba(0, 0, 0, 0.35);
                    background-image: linear-gradient( 120deg, transparent 40%, rgba(0, 0, 0, 1) 50%, transparent 60%);
                    background-size: 200% 100%;
                    background-clip: text;
                    -webkit-background-clip: text;
                    animation: shimmer 3s linear infinite;
                }

                @keyframes shimmer {
                    from {
                        background-position: 200% 0%;
                    }
                    to {
                        background-position: -200% 0%;
                    }
                }

:root {
                    --button-007-color: var(--white);
                    --button-007-color-background: var(--ink-black);
                    --button-007-hover-color: var(--white);
                    --button-007-hover-color-background: var(--dark-blue);
                    --button-007-color-focus: var(--transparent);
                    --button-007-border-radius: 2.5em;
                    --button-007-padding: 0.75em 1em;
                    --button-007-focus-inset: -0.125em;
                    --button-007-overflow: clip;
                    --button-007-click-scale: 0.955 0.925;
                    --button-007-ease-click: cubic-bezier(0.4, 0, 0.2, 1);
                    --button-007-ease-focus: cubic-bezier(0.32, 0.72, 0, 1);
                }

                [data-wf--button--variant="dark-blue"],
                [data-wf--button-link--variant="dark-blue"] {
                    --button-007-color: var(--white);
                    --button-007-color-background: var(--dark-blue);
                    --button-007-hover-color: var(--white);
                    --button-007-hover-color-background: var(--ink-black);
                }

                [data-wf--button--variant="light-silver"],
                [data-wf--button-link--variant="light-silver"] {
                    --button-007-color: var(--ink-black);
                    --button-007-color-background: var(--light-silver);
                    --button-007-hover-color: var(--white);
                    --button-007-hover-color-background: var(--dark-blue);
                }

                [data-wf--button--variant="white"],
                [data-wf--button-link--variant="white"] {
                    --button-007-color: var(--ink-black);
                    --button-007-color-background: var(--white);
                    --button-007-hover-color: var(--white);
                    --button-007-hover-color-background: var(--dark-blue);
                }

                [data-wf--button--variant="link-only"],
                [data-wf--button-link--variant="link-only"] {
                    --button-007-color: currentColor;
                    --button-007-color-background: transparent;
                    --button-007-hover-color: var(--dark-blue);
                    --button-007-hover-color-background: var(--light-silver);
                    --button-007-color-focus: transparent;
                    --button-007-border-radius: 0.25em;
                    --button-007-padding: 0.25em 0.5em;
                    --button-007-focus-inset: -0.125em;
                    --button-007-overflow: visible;
                }

                @media (hover: none) and (pointer: coarse) {
                    :root {
                        --button-007-click-scale: 1.045 1.075;
                    }
                    .button-007__text.is--hover,
                    .button-007__svg,
                    .button-007__svg-overlay,
                    .button-007__svg-object {
                        display: none !important;
                    }
                    .button-007__text.is--default {
                        display: block;
                        position: relative;
                        z-index: 2;
                    }
                    .button-007__inner {
                        overflow: hidden;
                    }
                }

                .button-007 {
                    --button-007-stroke-width: 60;
                    -webkit-tap-highlight-color: transparent;
                    transition: scale 0.15s var(--button-007-ease-click);
                }

                .button-007:is(:focus-visible)::after {
                    box-shadow: 0 0 0 0.125em var(--button-007-color-focus);
                }

                .button-007:active {
                    scale: var(--button-007-click-scale);
                }

                .button-007::after {
                    content: '';
                    display: block;
                    position: absolute;
                    inset: var(--button-007-focus-inset);
                    border-radius: var(--button-007-border-radius);
                    transition: box-shadow 0.3s var(--button-007-ease-focus);
                    pointer-events: none;
                    z-index: 1;
                }

                .button-007__svg-overlay path,
                .button-007__svg path {
                    transform-box: fill-box;
                    transform-origin: center;
                    transform: scale(1.25);
                }
