:root {
  --debug: 0;
  --body-bg: hsl(0, 0%, 6%);
  --btn-bg: hsl(0, 0%, 0%);
  --btn-border-width: 1.5;
  --btn-offset: 1;
  --btn-scale: 1;
  --after-bg: linear-gradient(
    to right,
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0)
  );
  --after-blur: 10;
  --after-opacity: 1;
  --after-pos-y: 10;
  --before-opacity: 0.3;
  --bg-position: 100;
  --color-white: hsl(0, 0%, 100%);
  --color-cyan: hsl(180, 100%, 50%);
  --color-blue: hsl(240, 100%, 50%);
  --color-purple: hsl(270, 100%, 50%);
  --color-pink: hsl(330, 40%, 70%);
  --color-red: hsl(0, 100%, 50%);
  --color-yellow: hsl(60, 100%, 50%);
  --color-lime: hsl(90, 100%, 75%);
  --color-orange: oklch(69.1% 0.223 36.85);
}

@supports (color: color(display-p3 0 0 0)) {
  :root {
    --color-white: color(display-p3 1 1 1);
    --color-cyan: color(display-p3 0 1 1);
    --color-blue: color(display-p3 0 0 1);
    --color-purple: color(display-p3 0.5 0 1);
    --color-pink: color(display-p3 1 0.4 0.7);
    --color-red: color(display-p3 1 0 0);
    --color-yellow: color(display-p3 1 1 0);
    --color-lime: color(display-p3 0.75 1 0);
    --color-orange: color(display-p3 0.96 0.39 0.2);
  }
}
@layer properties {
  @property --bg-position {
    syntax: "<number>";
    inherits: true;
    initial-value: 100;
  }
  @property --after-blur {
    syntax: "<number>";
    inherits: true;
    initial-value: 0;
  }
  @property --after-opacity {
    syntax: "<number>";
    inherits: true;
    initial-value: 1;
  }
  @property --before-opacity {
    syntax: "<number>";
    inherits: true;
    initial-value: 0.3;
  }
  @property --btn-offset {
    syntax: "<number>";
    inherits: true;
    initial-value: 1;
  }
  @property --btn-scale {
    syntax: "<number>";
    inherits: true;
    initial-value: 1;
  }
}

:root {
  --debug: 0;

  /* colors */
  --body-bg: hsl(0, 0%, 6%);
  --btn-bg: hsl(0, 0%, 0%);
  --btn-border-width: 1.5;
  --btn-offset: 1;
  --btn-scale: 1;
  --after-bg: linear-gradient(
    to right,
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0),
    rgb(0 0 0)
  );
  --after-blur: 10;
  --after-opacity: 1;
  --after-pos-y: 10;
  
  --before-opacity: 0.3;

  /* positions */
  --bg-position: 100;

  --color-white: hsl(0, 0%, 100%);
  --color-cyan: hsl(180, 100%, 50%);
  --color-blue: hsl(240, 100%, 50%);
  --color-purple: hsl(270, 100%, 50%);
  --color-pink: hsl(330, 40%, 70%);
  --color-red: hsl(0, 100%, 50%);
  --color-yellow: hsl(60, 100%, 50%);
  --color-lime: hsl(90, 100%, 75%);

  --color-orange: oklch(69.1% 0.223 36.85);
}

@supports (color: color(display-p3 0 0 0)) {
  :root {
    --color-white: color(display-p3 1 1 1);
    --color-cyan: color(display-p3 0 1 1);
    --color-blue: color(display-p3 0 0 1);
    --color-purple: color(display-p3 0.5 0 1);
    --color-pink: color(display-p3 1 0.4 0.7);
    --color-red: color(display-p3 1 0 0);
    --color-yellow: color(display-p3 1 1 0);
    --color-lime: color(display-p3 0.75 1 0);

    --color-orange: color(display-p3 0.96 0.39 0.2);
  }
}

.mfg-popup-video-player {
    border-radius: 100% !important;
    display: inline-block !important;
    width: 70px !important;
    height: 70px !important;
    all: unset;
    background: transparent;
    border-width: 0;
    transform: scale(var(--btn-scale));
    transition: 
        --bg-position 3s ease, 
        --after-blur 0.3s ease,
        --before-opacity 0.3s ease,
        --btn-offset 0.3s ease,
        --btn-scale 0.2s cubic-bezier(.76,-0.25,.51,1.13);

        > div {
            display: flex;
            padding: 0;
            background: #11113D;
            color: white;
            font-weight: bold;
            border-radius: 8px;
            font-size: 22px;
            position: relative;
            cursor: pointer;
            width: 70px;
            height: 70px;
            border-radius: 100%;
            align-items: center;
            justify-content: center;

        &:not(:hover) {
            transition: --after-blur 0.3s ease;
        }

        > span {
            background: linear-gradient(
                to right,
                var(--color-white),
                var(--color-white),
                var(--color-cyan),
                var(--color-blue),
                var(--color-purple),
                var(--color-pink),
                var(--color-red),
                var(--color-yellow),
                var(--color-lime),
                var(--color-white),
                var(--color-white)
            )
            no-repeat calc(var(--bg-position) * 1%) 0% / 900%;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            letter-spacing: 0.15ch;
            font-weight: 600;
            font-size: 40px;
        }

        &:after {
            display: block;
            position: absolute;
            content: "";
            width: 100%;
            height: 100%;
            background: var(--after-bg) no-repeat calc(var(--bg-position) * 1%) 0% /
            900%;
            transform: translateY(calc(var(--after-pos-y) * 1px));
            left: 0;
            top: 0;
            z-index: -2;
            filter: blur(calc(var(--after-blur) * 1px));
            opacity: var(--after-opacity);
        }

        &:before {
            content: "";
            display: block;
            position: absolute;
            width: calc(100% + calc(calc(var(--btn-border-width) * 2) * 1px));
            height: calc(100% + calc(calc(var(--btn-border-width) * 2) * 1px));
            background: linear-gradient(
                to right,
                var(--color-white),
                var(--color-white),
                var(--color-cyan),
                var(--color-blue),
                var(--color-purple),
                var(--color-pink),
                var(--color-red),
                var(--color-yellow),
                var(--color-lime),
                var(--color-white),
                var(--color-white)
            )
            no-repeat calc(var(--bg-position) * 1%) 0% / 900%;
            border-radius: 9px;
            z-index: -1;
            top: calc(var(--btn-border-width) * -1px);
            left: calc(var(--btn-border-width) * -1px);
            opacity: var(--before-opacity);
            border-radius: 100%;
            width: 74px;
            height: 74px;
            top: -2px;
            left: -2px;
        }
    }

    &:hover {
        --btn-scale: 1.05;
        --bg-position: 0;
        --after-bg: linear-gradient(
            to right,
            var(--color-white),
            var(--color-white),
            var(--color-cyan),
            var(--color-blue),
            var(--color-purple),
            var(--color-pink),
            var(--color-red),
            var(--color-yellow),
            var(--color-lime),
            var(--color-white),
            var(--color-white)
            );
            --after-blur: 30;
            --after-opacity: 0.3;
            --after-pos-y: 0;
            --before-opacity: 1;      
            --btn-offset: 5;

        &:active {
            --btn-scale: 0.98;
            --after-blur: 15;
        }
    }
}

.mfg-popup-video-player.boxed {
  width: auto !important;
  height: auto !important;
  border-radius: 5px !important;
}
.mfg-popup-video-player.boxed > div {
  width: auto !important;
  height: auto !important;
  border-radius: 5px !important;
}
.mfg-popup-video-player.boxed > div:before {
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  border-radius: 5px;
}
.mfg-popup-video-player.boxed > div > span {
  font-size: 15px !important;
  padding: 5px !important;
}

.custom-contact-form-full-wrapper {
  width: 100%;
}
.custom-contact-form-full-wrapper form {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 25px 10px;
  justify-content: space-between;
}
.custom-contact-form-full-wrapper form .col-6-12 {
  flex: 0 0 calc(50% - 10px);
}
.custom-contact-form-full-wrapper form .col-12-12 {
  flex: 0 0 100%;
}
.custom-contact-form-full-wrapper form .input-field-group input {
  width: 100%;
  height: 50px;
  border: 1px solid #202020;
  border-radius: 25px;
  padding: 0 15px;
}
.custom-contact-form-full-wrapper form .input-field-group input[type="checkbox"] {
  display: none;
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 15px 0;
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes .checkbox {
  flex: 0 0 calc(calc(100% / 6) - 10px);
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes .checkbox label {
  width: 100%;
  height: 100px;
  font-size: 12px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 0 1px #e3e3e3;
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes .checkbox input:checked + label {
  box-shadow: 0 0 0 1px rgba(17,17,61,0.94);
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes .checkbox label img {
  width: 25px;
}
.custom-contact-form-full-wrapper form .input-field-group.checkboxes .checkbox label p {
  margin: 0;
}
.custom-contact-form-full-wrapper form .input-field-group button[type="submit"] {
  width: 100%;
  background-color: #11113D;
  color: #ffffff;
  padding: 15px;
  border-radius: 25px;
  border: 1px solid #11113D;
  cursor: pointer;
}
.alert-message .alert {
  width: 100%;
  height: auto;
  padding: 5px 10px;
  color: #000000;
}
.alert-message .alert.success {
  background-color: green;
}
.alert-message .alert.error {
  background-color: red;
}