/*
Password protected pages
*/
body.password-protected .logo-row {
   justify-content: center;
}

body.password-protected .menu-wrapper {
   display: none !important;
}

body.password-protected .logo-row .logo-wrapper img {
   left: 12%;
   position: relative;
}

body.logged-in.password-protected.page-template-template-rest-api-nexus-media-product-team-db .logo-row .logo-wrapper img {
   left: 0;
}

body.logged-in.password-protected.page-template-template-rest-api-nexus-media-product-team-db .logo-row {
   justify-content: flex-start;
}

.post-password-form {
   padding: 150px 30px 300px 30px;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}

.password-protected footer {
   display: none;
}

body.password-protected {
   background: #000;
   color: white;
}

.password-protected .form-wrapper {
   max-width: 551px;
   background: #FFF;
   border-radius: 6px;
   box-shadow: 0 20px 30px 0 rgba(0, 0, 0, 0.10);
   margin: 0 auto;
   margin-top: 156px;
   margin-bottom: 236px;
   padding: 70px 60px 84px 60px;
   text-align: center;
}

.password-protected .post-password-form {
   padding: 0px !important;
   display: block;
   text-align: center;
}

.password-protected .form-wrapper h2,
.password-protected .form-wrapper p {
   color: #121212;
}

.password-protected .form-wrapper h2 {
   font-size: 28px;
   font-weight: 600;
   line-height: 120%;
   margin-top: 48px;
   margin-bottom: 35px;
   letter-spacing: 0.64px;
}

.password-protected .form-wrapper.default-form h2 {
   margin-top: 0px;
}

.password-protected .form-wrapper p {
   font-size: 18px;
   font-style: normal;
   line-height: 120%;
   letter-spacing: 0.36px;
   margin-bottom: 0px;
}

.password-protected .form-wrapper p.note-text {
   margin-top: 16px;
   color: #8B8B8B !important;
   font-size: 12px;
   font-weight: 400;
   line-height: 130%;
   letter-spacing: 0.24px;
   border-bottom: 1px solid #ECECEC;
   padding-bottom: 20px;
   margin-bottom: 20px;
}

.post-password-form input[type="password"]::placeholder {
   /* Chrome, Firefox, Opera, Safari 10.1+ */
   color: #FFF;
   opacity: 1;
   transition: all 0.3s;
   font-weight: 400;
   /* Firefox */
}

.post-password-form input[type="password"]:-ms-input-placeholder {
   /* Internet Explorer 10-11 */
   color: #FFF;
   transition: all 0.3s;
   font-weight: 400;
}

.post-password-form input[type="password"]::-ms-input-placeholder {
   /* Microsoft Edge */
   color: #FFF;
   transition: all 0.3s;
   font-weight: 400;
}

.post-password-form .input-wrapper {
   display: flex;
   width: 100%;
   max-width: 625px;
   gap: 10px;
   align-items: flex-end;
   margin-top: 40px;
}

.or-text {
   margin-bottom: 0px;
   margin-top: 20px;
   color: #B7BBBC !important;
}

.custom-sign-okta {
   padding: 20px 40px;
   border-radius: 30px;
   border: 1px solid #C8C7C8;
   background: #000;
   color: #FFF !important;
   font-size: 14px;
   line-height: 138%;
   font-weight: 600;
   letter-spacing: 0.28px;
   transition: all 0.3s;
   display: flex;
   align-items: center;
   justify-content: center;
   max-width: 350px;
   margin-left: auto;
   margin-right: auto;
   gap: 10px;
}

.custom-sign-okta img {
   width: 20px;
}

.custom-sign-okta:hover {
   background: #444444;
}

.custom-sign-okta span {
   transition: all 0.3s;
}

.custom-sign-okta:hover span {
   text-decoration: underline;
}


.post-password-form input[type="password"] {
   background: #333;
   color: #FFF;
   width: 100%;
   box-shadow: none;
   margin: 0px;
   padding: 15px 18px;
   border-radius: 6px;
   appearance: none;
   -moz-appearance: none;
   -webkit-appearance: none;
   border: 0px;
   font-size: 16px;
   height: 51px;
}

.post-password-form input[type="submit"] {
   appearance: none;
   -moz-appearance: none;
   -webkit-appearance: none;
   border: 0px;
   padding: 13px 32px 14px 32px;
   border-radius: 50px;
   background: #333;
   color: white;
   font-size: 20px;
   letter-spacing: 0.4px;
   transition: transform 0.4s ease 0s, background-color, border-color, background, color;
}

.post-password-form input[type="submit"]:hover {
   transform: translateY(-3px);
}

@media(max-width:768px) {
   .post-password-form .input-wrapper {
      flex-direction: column;
   }

   .password-protected .form-wrapper {
      padding: 53px 15px 60px 15px;
      margin-top: 50px;
      margin-bottom: 50px;
   }

}

/*Guidelines / other pages*/
.page-template-template-guidelines.logged-in .post-password-form {
   display: none;
}

/*Logged in password protected page*/
.logged-in.password-protected .logo-row .menu-wrapper {
   display: none;
}

/*Login notice*/
.login-notice {
   background: #fef8d6;
   font-size: 12px !important;
   padding: 12px;
}

/*Temporarily disable password screen*/
/*
.password-protected .form-wrapper {
   display: none !important;
}

.global-welcome-message {
   position: absolute;
   inset: 0;
   margin: auto;
   max-width: max-content;
   max-height: max-content;
   font-size: 22px;
   font-weight: 600;
}

.global-welcome-message img {
   display: block;
   margin-left: auto;
   margin-right: auto;
   margin-bottom: 30px;
}
*/
/*Login page*/
.section-lvmh-login {
   background-color: #000;
   background-size: 50% auto;
   background-repeat: no-repeat;
   background-position: 100% 0%;
   height: 100vh;
   display: flex;
   align-items: center;
}

.section-lvmh-login.section-overflowed-blur::before {
   width: 90vw;
   height: 75vh;
   filter: blur(15vw);
}

.section-lvmh-login .col-bg {
   background-size: cover;
   background-position: 0% 0%;
}

.section-lvmh-login .container-fluid {
   width: 100%;
   position: relative;
   z-index: 10;
}

.login-wrapper:has(.magic_login_block_login_success) .subtext {
   display: none !important;
}

.login-wrapper {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   padding: 41px 72px;
}

#magic-login-shortcode {
   margin: 0 !important;
   width: 100% !important;
   max-width: 480px;
   text-align: left;
   margin-bottom: 18px !important;
}

#magic_login_registration_form {
   background-color: transparent !important;
   border: 0px solid #ddd !important;
   margin: 0 auto !important;
   padding: 0 !important;
   margin-top: 28px !important;
}

#magic-login-shortcode .input,
#magic_login_registration_form input[type=email],
.login-wrapper .input {
   background: #092242;
   border-radius: 2px;
   border: 1px solid rgba(255, 255, 255, 0.29);
   height: 48px;
   padding: 13px 16px !important;
   font-size: 15px !important;
   font-weight: 400 !important;
   color: white !important;
   transition: all 0.3s;
}

#magic-login-shortcode .input:focus,
#magic_login_registration_form input[type=email]:focus,
.login-wrapper .input:focus,
#magic-login-shortcode .input:active,
#magic_login_registration_form input[type=email]:active,
.login-wrapper .input:active {
   border: 1px solid white;
}

#magic-login-shortcode .input::placeholder,
#magic_login_registration_form input[type=email]::placeholder,
.login-wrapper .input::placeholder {
   color: #FFF !important;
   opacity: 1;
   /* Firefox */
}

#magic-login-shortcode .input::-ms-input-placeholder,
#magic_login_registration_form input[type=email]::-ms-input-placeholder,
.login-wrapper .input::-ms-input-placeholder {
   /* Edge 12 -18 */
   color: #FFF !important;
}

#magic-login-shortcode p.message {
   display: none;
   background: transparent !important;
   border: 0px;
   font-size: 16px;
   padding: 0;
}

#magic-login-shortcode .magic_login_block_login_success,
#magic-login-register .registration_result {
   border: 1px solid rgba(255, 255, 255, 0.29);
   background: #092242 !important;
   padding: 13px 16px !important;
   color: #fff;
   font-size: 16px;
   font-weight: 400;
   display: block !important;
   margin-top: 28px;
   min-width: 480px;
   border-left: 1px solid rgba(255, 255, 255, 0.29) !important;
}

#magic-login-shortcode .magic_login_block_login_success p.title {
   font-weight: 600;
   font-size: 18px;
   margin-bottom: 10px;
}

#magic-login-shortcode .magic_login_block_login_success p.text {
   width: 100%;
   margin-bottom: 0;
}

#magic-login-register .registration_result {
   margin-bottom: 28px;
}

#magic-login-register .registration_result .info,
#magic-login-register .registration_result .success {
   background: transparent !important;
   padding: 0 !important;
   border: 0 !important;
   margin: 0 !important;
   color: white !important;
}

#magic-login-register .registration_result .error,
#magic-login-shortcode #login_error {
   border-left-color: #d63638 !important;
   background: transparent !important;
   color: white !important;
}

#magic-login-shortcode label,
.login-wrapper label {
   text-align: left;
   color: white;
   font-size: 16px;
   font-style: normal;
   font-weight: 600;
   line-height: 148%;
   margin-bottom: 10px !important;
}

#magic-login-shortcode .magic-login-submit,
#magic_login_registration_form input[type=submit],
.magic-login-submit {
   width: max-content;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-top: 28px !important;
   font-size: 16px !important;
   font-weight: 400;
   line-height: min(6vw, 28px) !important;
   letter-spacing: 0.32px;
   line-height: 148%;
   text-align: center;
   max-width: 100%;
   margin-left: auto;
   margin-right: auto;
   color: rgb(255, 255, 255) !important;
   transition: transform 0.4s, background-color, border-color, background, color;
   border-radius: 30px !important;
   white-space: normal;
   border-width: 0px;
   border-style: initial;
   border-color: initial;
   border-image: initial;
   padding: 10px 20px !important;
   background: linear-gradient(267.29deg, rgb(9, 149, 227) 0%, rgb(9, 107, 225) 100%) !important;
}

#wp-submit {
   opacity: 0.5;
   transition: all 0.3s;
   pointer-events: none;
}

#wp-submit.is-active,
.custom-registration-form #wp-submit {
   opacity: 1;
   pointer-events: all;
}

#magic-login-shortcode .magic-login-submit:hover,
#magic_login_registration_form input[type=submit]:hover,
.magic-login-submit:hover {
   transform: translateY(-3px);
}

.login-wrapper img.centric-logo {
   margin-bottom: 38px;
}

.login-wrapper h2.general-title {
   margin-bottom: 12px;
   min-width: 566px;
   display: block;
}

.login-wrapper p.subtext {
   color: #F1F2F5;
   margin-bottom: 28px;
   opacity: 0.8;
}

p.magic-login-inline-note {
   font-size: 14px;
   font-style: normal;
   font-weight: 300;
   line-height: 148%;
   margin-top: 10px;
   color: #F1F2F5;
}

p.terms-login {
   opacity: 0.7;
   font-size: 12px;
   font-weight: 300;
   line-height: 159.9%;
}

p.back-to-login {
   font-size: 16px;
   font-style: normal;
   font-weight: 600;
   line-height: 148%;
   letter-spacing: 0.32px;
   text-transform: uppercase;
   display: flex;
   align-items: center;
   gap: 20px;
   cursor: pointer;
}

p.back-to-login:hover {
   text-decoration: underline;
}

.col-text.login-wrapper .magic-login-submit {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   width: 100%;
}

.col-text.login-wrapper .magic-login-submit svg {
   display: inline-block;
}

p.see-email {
   color: #F1F2F5;
   opacity: 0.8;
   font-size: 14px;
}

/*Complete registration*/
.section-lvmh-registration .custom-space {
   height: 15px;
   display: block;
}

.section-lvmh-registration .form-row-col {
   display: flex;
   gap: 15px;
}

/* Motion defaults */
.section-lvmh-login .reveal-seq>* {
   will-change: opacity, transform;
}

/* Fade up */
@keyframes dtFadeUp {
   from {
      opacity: 0;
      transform: translateY(12px);
   }

   to {
      opacity: 1;
      transform: translateY(0);
   }
}

/* Fade down (logo) */
@keyframes dtFadeDown {
   from {
      opacity: 0;
      transform: translateY(-12px);
   }

   to {
      opacity: 1;
      transform: translateY(0);
   }
}

/* Base animation */
.dt-anim {
   opacity: 0;
   animation-duration: .6s;
   animation-timing-function: ease-out;
   animation-fill-mode: both;
}

/* Variants */
.dt-fade-up {
   animation-name: dtFadeUp;
}

.dt-fade-down {
   animation-name: dtFadeDown;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
   .dt-anim {
      animation: none !important;
      opacity: 1 !important;
      transform: none !important;
   }
}

/* Spinner for Continue button */
.dt-spinner {
   display: inline-block;
   width: 1em;
   height: 1em;
   margin-right: .5em;
   border-radius: 50%;
   border: 2px solid rgba(255, 255, 255, .6);
   border-top-color: #fff;
   animation: dtSpin 1s linear infinite;
   vertical-align: -2px;
}

@keyframes dtSpin {
   to {
      transform: rotate(360deg);
   }
}


/* Input error */

.input.is-invalid {
   border-color: #da565a !important;
}

/* Error text */
.dt-email-error {
   margin: .5rem 0 0;
   font-size: 14px;
   font-weight: 600;
   color: #da565a !important;
   opacity: 0;
   animation-duration: .6s;
   animation-timing-function: ease-out;
   animation-fill-mode: both;
   animation-name: dtFadeDown;
}

/*General responsive*/
@media (max-width: 991px) {
   .login-wrapper {
      padding: 0;
   }

   .login-wrapper h2.general-title {
      min-width: auto;
   }

   .section-lvmh-login {
      background-size: cover;
   }

   .login-wrapper img.centric-logo {
      width: 100%;
      max-width: 372px;
      margin-bottom: 20px;
   }

   #magic-login-shortcode .magic_login_block_login_success,
   #magic-login-register .registration_result {
      min-width: auto;
   }

   #magic-login-shortcode .magic_login_block_login_success p.title {
      font-weight: 600;
      font-size: 16px;
      margin-bottom: 10px;
   }

   #magic-login-shortcode .input,
   #magic_login_registration_form input[type=email],
   .login-wrapper .input {
      font-size: 13px !important;
   }

   #magic-login-shortcode .magic_login_block_login_success p.text {
      font-size: 14px;
   }

   #magic-login-shortcode label,
   .login-wrapper label {
      font-size: 14px;
   }
}