/* =========================================================
   ARROTONDA - AUTH CSS DEDICATO
   Fonte: style rotto.css, sezione 60.
   Nota: file generato senza modificare functions.php o il CSS sorgente.
   ========================================================= */

/* ═══════════════════════════════════════════════════════════════════
   60 AUTH — Login, registrazione, recupero password, reCAPTCHA
   Regole in questa sezione: 97
   ═══════════════════════════════════════════════════════════════════ */

/* ───────────────────────────────────────────────────────────────
   60 AUTH — Login, registrazione, recupero password, reCAPTCHA — @media (max-width: 360px)
   ─────────────────────────────────────────────────────────────── */
@media (max-width: 360px) {
  .site-content .hp-form--user-login .g-recaptcha, .site-content .hp-form--user-login .hp-field--captcha {
    height: 68px !important;
            transform: scale(0.86) !important;
  }

  #user_password_request_modal .g-recaptcha, #user_password_request_modal .hp-field--captcha, #user_register_modal .g-recaptcha, #user_register_modal .hp-field--captcha {
    height: 68px !important;
            transform: scale(0.86) !important;
  }

}

/* ───────────────────────────────────────────────────────────────
   60 AUTH — Login, registrazione, recupero password, reCAPTCHA — @media (max-width: 375px)
   ─────────────────────────────────────────────────────────────── */
@media (max-width: 375px) {
  .site-content .hp-page__content:has(> .hp-form--user-login) {
    padding-left: 14px !important;
            padding-right: 14px !important;
  }

  .site-content .hp-page__content > .hp-page__title + .hp-form--user-login, .site-content .hp-page__content > .hp-form--user-login {
    padding: 16px 14px 14px !important;
            border-radius: 16px !important;
  }

  .site-content .hp-form--user-login .g-recaptcha {
    height: calc((100vw - 60px) * 78 / 304) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe {
    transform: scale(calc((100vw - 60px) / 304)) !important;
  }

  #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    height: calc((100vw - 56px) * 78 / 304) !important;
  }

  #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    transform: scale(calc((100vw - 56px) / 304)) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha {
    height: calc((100vw - 68px) * 78 / 304) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe {
    transform: scale(calc((100vw - 68px) / 304)) !important;
  }

  #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    height: calc((100vw - 68px) * 78 / 304) !important;
  }

  #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    transform: scale(calc((100vw - 68px) / 304)) !important;
  }

  #user_register_modal {
    padding: 12px 12px 10px !important;
            max-height: calc(100dvh - 82px) !important;
  }

  #user_register_modal .hp-form__field + .hp-form__field {
    margin-top: 8px !important;
  }

  .fancybox-slide:has(#user_login_modal), .fancybox-slide:has(#user_register_modal), .fancybox-slide:has(#user_password_request_modal) {
    padding-top: 10px !important;
            padding-bottom: 70px !important;
  }

  #user_login_modal, #user_password_request_modal, #user_register_modal {
    transform: translateY(-6px) !important;
  }

}

/* ───────────────────────────────────────────────────────────────
   60 AUTH — Login, registrazione, recupero password, reCAPTCHA — @media (max-width: 768px)
   ─────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  #user_login_modal .hp-modal__title, #user_register_modal .hp-modal__title, #user_password_request_modal .hp-modal__title {
    margin: 0 34px 18px 0 !important;
            padding: 0 !important;
            color: #111827 !important;
            font-size: clamp(24px, 6.4vw, 32px) !important;
            font-weight: 850 !important;
            line-height: 1.04 !important;
            letter-spacing: 0 !important;
            text-align: left !important;
  }

  #user_login_modal .hp-modal__title::before, #user_login_modal .hp-modal__title::after, #user_register_modal .hp-modal__title::before, #user_register_modal .hp-modal__title::after, #user_password_request_modal .hp-modal__title::before, #user_password_request_modal .hp-modal__title::after {
    display: none !important;
            content: none !important;
  }

  #user_login_modal input.hp-field, #user_register_modal input.hp-field, #user_register_modal .select2-selection--single, #user_password_request_modal input.hp-field {
    width: 100% !important;
            height: 48px !important;
            min-height: 48px !important;
            margin: 0 !important;
            padding: 0 14px !important;
            border: 1px solid #e5e7eb !important;
            border-radius: 14px !important;
            color: #111827 !important;
            background: #f8fafb !important;
            box-shadow: none !important;
            font-size: 16px !important;
            font-weight: 500 !important;
            line-height: 48px !important;
            letter-spacing: 0 !important;
            box-sizing: border-box !important;
  }

  #user_register_modal .select2-container {
    width: 100% !important;
            max-width: 100% !important;
  }

  #user_register_modal .select2-selection__rendered {
    padding-left: 0 !important;
            padding-right: 28px !important;
            color: #111827 !important;
            font-size: 16px !important;
            line-height: 48px !important;
  }

  #user_login_modal input.hp-field:focus, #user_register_modal input.hp-field:focus, #user_register_modal .select2-container--open .select2-selection--single, #user_password_request_modal input.hp-field:focus {
    border-color: #00a86b !important;
            background: #ffffff !important;
            box-shadow: 0 0 0 3px rgba(0, 168, 107, 0.12) !important;
            outline: 0 !important;
  }

  #user_register_modal .select2-container, #user_register_modal .selection, #user_register_modal .select2-selection--single {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            height: 48px !important;
            min-height: 48px !important;
            box-sizing: border-box !important;
  }

  #user_register_modal .select2-selection__rendered {
    display: block !important;
            height: 48px !important;
            min-height: 48px !important;
            padding-top: 0 !important;
            padding-bottom: 0 !important;
            line-height: 48px !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
            box-sizing: border-box !important;
  }

  #user_register_modal .select2-selection__arrow {
    height: 48px !important;
            top: 0 !important;
            right: 10px !important;
  }

  #user_register_modal .hp-modal__title {
    margin-bottom: 12px !important;
            font-size: clamp(22px, 5.8vw, 28px) !important;
  }

  #user_register_modal input.hp-field, #user_register_modal .select2-selection--single {
    height: 42px !important;
            min-height: 42px !important;
            padding: 0 12px !important;
            border-radius: 13px !important;
            font-size: 15px !important;
            line-height: 42px !important;
  }

  #user_register_modal .select2-container, #user_register_modal .selection, #user_register_modal .select2-selection--single, #user_register_modal .select2-selection__rendered, #user_register_modal .select2-selection__arrow {
    height: 42px !important;
            min-height: 42px !important;
            line-height: 42px !important;
  }

  .site-content .hp-page__content:has(> .hp-form--user-login) {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 0 18px 24px !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-page__content > .hp-page__title + .hp-form--user-login, .site-content .hp-page__content > .hp-form--user-login {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 18px 16px 16px !important;
            border: 1px solid rgba(17, 24, 39, 0.06) !important;
            border-radius: 18px !important;
            background: #ffffff !important;
            box-shadow: 0 12px 28px rgba(17, 24, 39, 0.08) !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-page__content:has(> .hp-form--user-login) > .hp-page__title {
    display: block !important;
            width: 100% !important;
            margin: 14px 0 18px !important;
            padding: 0 !important;
            color: #111827 !important;
            font-size: clamp(24px, 6.4vw, 32px) !important;
            font-weight: 850 !important;
            line-height: 1.04 !important;
            letter-spacing: 0 !important;
            text-align: left !important;
  }

  .site-content .hp-page__content:has(> .hp-form--user-login) > .hp-page__title::before, .site-content .hp-page__content:has(> .hp-form--user-login) > .hp-page__title::after {
    display: none !important;
            content: none !important;
  }

  .site-content .hp-form--user-login .hp-form__fields, .site-content .hp-form--user-login .hp-form__field {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .hp-form__field + .hp-form__field {
    margin-top: 14px !important;
  }

  .site-content .hp-form--user-login .hp-form__label, .site-content .hp-form--user-login .hp-field__label {
    display: block !important;
            margin: 0 0 7px !important;
            padding: 0 !important;
            color: #172033 !important;
            font-size: 15px !important;
            font-weight: 700 !important;
            line-height: 1.2 !important;
            letter-spacing: 0 !important;
  }

  .site-content .hp-form--user-login .hp-field--text, .site-content .hp-form--user-login .hp-field--password {
    display: block !important;
            width: 100% !important;
            height: 48px !important;
            min-height: 48px !important;
            margin: 0 !important;
            padding: 0 14px !important;
            border: 1px solid #e5e7eb !important;
            border-radius: 14px !important;
            color: #111827 !important;
            background: #f8fafb !important;
            box-shadow: none !important;
            font-size: 16px !important;
            font-weight: 500 !important;
            line-height: 48px !important;
            letter-spacing: 0 !important;
            box-sizing: border-box !important;
            appearance: none !important;
            -webkit-appearance: none !important;
  }

  .site-content .hp-form--user-login .hp-field--text:focus, .site-content .hp-form--user-login .hp-field--password:focus {
    border-color: #00a86b !important;
            background: #ffffff !important;
            box-shadow: 0 0 0 3px rgba(0, 168, 107, 0.12) !important;
            outline: 0 !important;
  }

  .site-content .hp-form--user-login .hp-form__field--password {
    position: relative !important;
  }

  .site-content .hp-form--user-login .hp-form__field--password .hp-field__icon {
    position: absolute !important;
            right: 13px !important;
            bottom: 14px !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 20px !important;
            height: 20px !important;
            color: #8b95a1 !important;
            text-decoration: none !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin-top: 16px !important;
            overflow: hidden !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .g-recaptcha, .site-content .hp-form--user-login .hp-field--captcha {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            overflow: hidden !important;
            box-sizing: border-box !important;
            transform-origin: left top !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha iframe {
    width: 100% !important;
            max-width: 100% !important;
  }

  .site-content .hp-form--user-login .hp-form__footer {
    display: flex !important;
            flex-direction: column !important;
            align-items: stretch !important;
            width: 100% !important;
            max-width: 100% !important;
            margin: 18px 0 0 !important;
            padding: 0 !important;
            gap: 14px !important;
            border: 0 !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .hp-form__button, .site-content .hp-form--user-login button[type="submit"] {
    display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 100% !important;
            height: 48px !important;
            min-height: 48px !important;
            margin: 0 !important;
            padding: 0 18px !important;
            border: 1px solid #00a86b !important;
            border-radius: 16px !important;
            color: #ffffff !important;
            background: #00a86b !important;
            box-shadow: 0 8px 18px rgba(0, 168, 107, 0.22) !important;
            font-size: 16px !important;
            font-weight: 800 !important;
            line-height: 1 !important;
            letter-spacing: 0 !important;
  }

  .site-content .hp-form--user-login .hp-form__button:hover, .site-content .hp-form--user-login button[type="submit"]:hover {
    border-color: #007a4d !important;
            background: #007a4d !important;
            box-shadow: 0 10px 22px rgba(0, 168, 107, 0.28) !important;
  }

  .site-content .hp-form--user-login .hp-form__actions {
    display: flex !important;
            flex-direction: column !important;
            align-items: center !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            gap: 8px !important;
            text-align: center !important;
  }

  .site-content .hp-form--user-login .hp-form__action, .site-content .hp-form--user-login .hp-form__action p {
    margin: 0 !important;
            padding: 0 !important;
            color: #667085 !important;
            font-size: 14px !important;
            font-weight: 500 !important;
            line-height: 1.35 !important;
            letter-spacing: 0 !important;
  }

  .site-content .hp-form--user-login .hp-form__action a, .site-content .hp-form--user-login a.hp-form__action {
    color: #00a86b !important;
            font-weight: 750 !important;
            text-decoration: none !important;
  }

  #user_password_request_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin-top: 14px !important;
            overflow: hidden !important;
            box-sizing: border-box !important;
  }

  #user_password_request_modal .g-recaptcha, #user_password_request_modal .hp-field--captcha, #user_register_modal .g-recaptcha, #user_register_modal .hp-field--captcha {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            overflow: hidden !important;
            box-sizing: border-box !important;
            transform-origin: left top !important;
  }

  #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha iframe {
    width: 100% !important;
            max-width: 100% !important;
  }

  #user_login_modal, #user_register_modal, #user_password_request_modal {
    width: calc(100vw - 28px) !important;
            max-width: 420px !important;
            padding: 18px 16px 18px !important;
            border: 1px solid rgba(17, 24, 39, 0.06) !important;
            border-radius: 18px !important;
            background: #ffffff !important;
            box-shadow: 0 12px 28px rgba(17, 24, 39, 0.08) !important;
            box-sizing: border-box !important;
  }

  #user_login_modal .hp-form, #user_register_modal .hp-form, #user_password_request_modal .hp-form {
    width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            border: 0 !important;
            background: transparent !important;
            box-shadow: none !important;
            box-sizing: border-box !important;
  }

  #user_login_modal .hp-form__field, #user_register_modal .hp-form__field, #user_password_request_modal .hp-form__field {
    width: 100% !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            box-sizing: border-box !important;
  }

  #user_login_modal .hp-form__field + .hp-form__field, #user_register_modal .hp-form__field + .hp-form__field, #user_password_request_modal .hp-form__field + .hp-form__field {
    margin-top: 14px !important;
  }

  #user_login_modal .hp-form__label, #user_register_modal .hp-form__label, #user_password_request_modal .hp-form__label {
    display: block !important;
            margin: 0 0 7px !important;
            padding: 0 !important;
            color: #172033 !important;
            font-size: 15px !important;
            font-weight: 700 !important;
            line-height: 1.2 !important;
            letter-spacing: 0 !important;
  }

  #user_login_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha, #user_password_request_modal .hp-form__field--captcha {
    width: 100% !important;
            max-width: 100% !important;
            margin-top: 14px !important;
            overflow: hidden !important;
  }

  #user_login_modal .g-recaptcha, #user_login_modal .hp-field--captcha, #user_register_modal .g-recaptcha, #user_register_modal .hp-field--captcha, #user_password_request_modal .g-recaptcha, #user_password_request_modal .hp-field--captcha {
    width: 100% !important;
            max-width: 100% !important;
            overflow: hidden !important;
            box-sizing: border-box !important;
            transform: none !important;
            transform-origin: left top !important;
  }

  #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    width: 100% !important;
            max-width: 100% !important;
  }

  #user_login_modal .hp-form__footer, #user_register_modal .hp-form__footer, #user_password_request_modal .hp-form__footer {
    display: flex !important;
            flex-direction: column !important;
            align-items: stretch !important;
            width: 100% !important;
            margin: 18px 0 0 !important;
            padding: 0 !important;
            gap: 14px !important;
            border: 0 !important;
  }

  #user_login_modal .hp-form__button, #user_register_modal .hp-form__button, #user_password_request_modal .hp-form__button {
    display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 100% !important;
            height: 48px !important;
            min-height: 48px !important;
            margin: 0 !important;
            padding: 0 18px !important;
            border: 1px solid #00a86b !important;
            border-radius: 16px !important;
            color: #ffffff !important;
            background: #00a86b !important;
            box-shadow: 0 8px 18px rgba(0, 168, 107, 0.22) !important;
            font-size: 16px !important;
            font-weight: 800 !important;
            line-height: 1 !important;
            letter-spacing: 0 !important;
  }

  #user_login_modal .hp-form__actions, #user_register_modal .hp-form__actions {
    display: flex !important;
            flex-direction: column !important;
            align-items: center !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            gap: 8px !important;
            text-align: center !important;
  }

  #user_login_modal .hp-form__action, #user_login_modal .hp-form__action p, #user_register_modal .hp-form__action, #user_register_modal .hp-form__action p {
    margin: 0 !important;
            padding: 0 !important;
            color: #667085 !important;
            font-size: 14px !important;
            font-weight: 500 !important;
            line-height: 1.35 !important;
            letter-spacing: 0 !important;
            text-align: center !important;
  }

  #user_login_modal .hp-form__action a, #user_login_modal a.hp-form__action, #user_register_modal .hp-form__action a, #user_register_modal a.hp-form__action {
    color: #00a86b !important;
            font-weight: 750 !important;
            text-decoration: none !important;
  }

  #user_register_modal {
    margin-bottom: 0 !important;
  }

  #user_register_modal .hp-form__footer {
    padding-bottom: 0 !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha, #user_login_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha, #user_password_request_modal .hp-form__field--captcha {
    width: 100% !important;
            max-width: 100% !important;
            overflow: visible !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .g-recaptcha, #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            overflow: visible !important;
            box-sizing: border-box !important;
            transform: none !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe, #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    width: 304px !important;
            min-width: 304px !important;
            max-width: 304px !important;
            height: 78px !important;
            min-height: 78px !important;
            max-height: 78px !important;
            transform-origin: left top !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha, #user_login_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha, #user_password_request_modal .hp-form__field--captcha {
    position: relative !important;
            display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            margin-top: 14px !important;
            padding: 0 !important;
            border: 1px solid #e5e7eb !important;
            border-radius: 14px !important;
            background: #f8fafb !important;
            box-shadow: none !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha:focus-within, #user_login_modal .hp-form__field--captcha:focus-within, #user_register_modal .hp-form__field--captcha:focus-within, #user_password_request_modal .hp-form__field--captcha:focus-within {
    border-color: #00a86b !important;
            background: #ffffff !important;
            box-shadow: none !important;
  }

  .site-content .hp-form--user-login .g-recaptcha, #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    margin: 0 !important;
            border-radius: 13px !important;
            background: #f8fafb !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, #user_login_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div {
    border-radius: 13px !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha, #user_login_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha, #user_password_request_modal .hp-form__field--captcha {
    overflow: hidden !important;
  }

  .site-content .hp-form--user-login .g-recaptcha, #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    overflow: hidden !important;
  }

  .site-content .hp-form--user-login .hp-form__field--captcha, #user_login_modal .hp-form__field--captcha, #user_register_modal .hp-form__field--captcha, #user_password_request_modal .hp-form__field--captcha {
    container-type: inline-size !important;
            width: 100% !important;
            max-width: 100% !important;
            overflow: visible !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .g-recaptcha, #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    --arr-recaptcha-scale: min(1.18, calc(100cqw / 304));
            display: block !important;
            width: 100% !important;
            max-width: 100% !important;
            height: calc(78px * var(--arr-recaptcha-scale)) !important;
            min-height: calc(78px * var(--arr-recaptcha-scale)) !important;
            overflow: visible !important;
            box-sizing: border-box !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe, #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    width: 304px !important;
            min-width: 304px !important;
            max-width: 304px !important;
            height: 78px !important;
            min-height: 78px !important;
            max-height: 78px !important;
            transform: scale(var(--arr-recaptcha-scale)) !important;
            transform-origin: left top !important;
  }

  #user_register_modal {
    padding: 14px 14px 12px !important;
            max-height: calc(100dvh - 92px) !important;
            overflow-y: auto !important;
            -webkit-overflow-scrolling: touch !important;
  }

  #user_register_modal .hp-form__field + .hp-form__field {
    margin-top: 10px !important;
  }

  #user_register_modal .hp-form__label, #user_register_modal .hp-field__label {
    margin-bottom: 5px !important;
            font-size: 14px !important;
  }

  #user_register_modal .hp-field--checkbox {
    padding: 9px 11px !important;
            border-radius: 13px !important;
            font-size: 13px !important;
            line-height: 1.3 !important;
  }

  #user_register_modal .hp-form__field--captcha {
    margin-top: 10px !important;
  }

  #user_register_modal .hp-form__footer {
    margin-top: 12px !important;
            gap: 9px !important;
  }

  #user_register_modal .hp-form__button {
    height: 44px !important;
            min-height: 44px !important;
            border-radius: 14px !important;
            font-size: 15px !important;
  }

  #user_register_modal .hp-form__actions, #user_register_modal .hp-form__action, #user_register_modal .hp-form__action p {
    display: block !important;
            margin: 0 !important;
            padding: 0 !important;
            font-size: 13px !important;
            line-height: 1.3 !important;
            text-align: center !important;
  }

  .fancybox-slide:has(#user_login_modal), .fancybox-slide:has(#user_register_modal), .fancybox-slide:has(#user_password_request_modal) {
    align-items: flex-start !important;
            padding-top: 18px !important;
            padding-bottom: 76px !important;
  }

  #user_login_modal, #user_register_modal {
    margin-top: 0 !important;
            transform: translateY(-10px) !important;
  }

  #user_password_request_modal {
    margin-top: 0 !important;
            transform: translateY(-10px) !important;
  }

}

/* ───────────────────────────────────────────────────────────────
   60 AUTH — Login, registrazione, recupero password, reCAPTCHA — @media (min-width: 376px) and (max-width: 768px)
   ─────────────────────────────────────────────────────────────── */
@media (min-width: 376px) and (max-width: 768px) {
  .site-content .hp-form--user-login .g-recaptcha {
    height: calc((100vw - 68px) * 78 / 304) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe {
    transform: scale(calc((100vw - 68px) / 304)) !important;
  }

  #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    height: calc((100vw - 60px) * 78 / 304) !important;
  }

  #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    transform: scale(calc((100vw - 60px) / 304)) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha {
    height: calc((100vw - 76px) * 78 / 304) !important;
  }

  .site-content .hp-form--user-login .g-recaptcha > div, .site-content .hp-form--user-login .g-recaptcha > div > div, .site-content .hp-form--user-login .g-recaptcha iframe {
    transform: scale(calc((100vw - 76px) / 304)) !important;
  }

  #user_login_modal .g-recaptcha, #user_register_modal .g-recaptcha, #user_password_request_modal .g-recaptcha {
    height: calc((100vw - 72px) * 78 / 304) !important;
  }

  #user_login_modal .g-recaptcha > div, #user_login_modal .g-recaptcha > div > div, #user_login_modal .g-recaptcha iframe, #user_register_modal .g-recaptcha > div, #user_register_modal .g-recaptcha > div > div, #user_register_modal .g-recaptcha iframe, #user_password_request_modal .g-recaptcha > div, #user_password_request_modal .g-recaptcha > div > div, #user_password_request_modal .g-recaptcha iframe {
    transform: scale(calc((100vw - 72px) / 304)) !important;
  }

}
