/* Presentation only: retain native forms, labels, validation, nonces and submit behavior. */
body.pa-storefront #content {
    --pa-form-pink:#bd105c;
    --pa-form-ink:#2a222e;
    --pa-form-muted:#716375;
    --pa-form-line:#d9cddd;
    --pa-form-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
body.pa-customer-form-page #content { background:#faf8fb; }
body.pa-customer-form-page #content > .ast-container { display:block; max-width:1240px; padding:0 28px; }
body.pa-customer-form-page #primary { width:100%; margin:0; padding:0; }
body.pa-customer-form-page #primary article { margin:0; padding:0; background:transparent; }
body.pa-customer-form-page #primary .entry-header { display:none; }
.pa-customer-form-heading { display:flex; justify-content:flex-start; align-items:center; gap:26px; padding:32px 0 26px; border-bottom:1px solid #e1d6e6; font-family:var(--pa-form-font); text-align:left; }
.pa-customer-form-heading img { width:165px; height:55px; flex:0 0 165px; object-fit:contain; background:#000; margin:0!important; }
body.pa-storefront .pa-customer-form-heading h1 { color:var(--pa-form-ink); font-family:inherit; font-size:32px; font-weight:700; line-height:1.2; margin:0 0 7px; letter-spacing:0; }
.pa-customer-form-heading p { color:var(--pa-form-muted); font-size:15px; line-height:1.6; margin:0; }
/* These shared Elementor sections contain the old contact hero/spacer, not form fields. */
body.pa-customer-form-page #primary :is(.elementor-element-593f498,.elementor-element-70e8213) { display:none; }
body.pa-customer-form-page #primary .elementor-element-c62c657 { --min-height:0; min-height:0; background:none; padding:32px 0 54px; margin:0; border:0; border-radius:0; width:100%; }
body.pa-customer-form-page #primary .elementor-element-c62c657 > .e-con-inner { padding:0; gap:28px; width:100%; max-width:1184px; }
body.pa-customer-form-page #primary .elementor-element-6e1568f { width:100%; padding:0; margin:0; min-height:0; background:none; }
body.pa-customer-form-page #primary .elementor-element-6e1568f > .e-con-inner { padding:0; width:100%; max-width:none; }
body.pa-customer-form-page #primary .elementor-element-1cba60b { --min-height:0; min-height:0; width:100%; max-width:680px; margin:0 auto; padding:30px; border:1px solid #e0d4e5; border-top:4px solid #d71173; border-radius:6px; background:#fff; box-shadow:0 8px 26px #24192806; }
body.pa-customer-form-page #primary .elementor-element-1cba60b > .e-con-inner { padding:0; width:100%; gap:0; }
body.pa-customer-form-page #primary .elementor-element-731fd80 { display:none; }
body.pa-customer-auth-page #primary .elementor-element-e17cb91 { display:none; }
body.pa-customer-form-page #primary .elementor-element-e17cb91 .elementor-heading-title { font-family:var(--pa-form-font); font-size:23px; font-weight:650; line-height:1.3; color:#35253e; margin:0 0 22px; letter-spacing:0; }
body.pa-customer-form-page #primary .elementor-widget-wpr-forms { width:100%; max-width:none; padding:0; margin:0; }
body.pa-customer-form-page #primary .elementor-widget-wpr-forms > .elementor-widget-container { padding:0; margin:0; background:transparent; }

/* WPForms contact, login, registration and recovery forms share one visual language. */
body.pa-storefront #content div.wpforms-container-full { font-family:var(--pa-form-font); font-size:15px; color:var(--pa-form-ink); margin:0; max-width:100%; letter-spacing:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form { --wpforms-field-border-color:#d9cddd; --wpforms-field-background-color:#fff; --wpforms-field-text-color:#2a222e; --wpforms-label-color:#3b2d42; --wpforms-label-sublabel-color:#716375; --wpforms-button-background-color:#bd105c; --wpforms-button-text-color:#fff; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field { padding:0!important; margin-bottom:20px!important; min-width:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field-label { display:block; font-family:inherit; color:#49344f; font-size:14px; font-weight:600; line-height:1.5; margin:0 0 8px; padding:0; letter-spacing:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(.wpforms-field-sublabel,.wpforms-field-description,.wpforms-field-limit-text) { font-family:inherit; color:#76647c; font-size:12px; font-weight:400; line-height:1.6; margin-top:7px; letter-spacing:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],input[type=url],input[type=date],input[type=time],textarea,select) { box-sizing:border-box; max-width:100%; width:100%; min-height:46px; height:auto; padding:11px 13px; background:#fff; color:#2a222e; border:1px solid #d9cddd; border-radius:4px; box-shadow:none; font-family:inherit; font-size:15px; line-height:1.5; letter-spacing:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form textarea { min-height:132px!important; height:auto!important; resize:vertical; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form select[multiple] { min-height:132px; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(input,textarea,select):focus { border-color:#08747a; outline:2px solid #08747a; outline-offset:2px; box-shadow:none; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(input[type=checkbox],input[type=radio]) { accent-color:#bd105c; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(.wpforms-field-checkbox,.wpforms-field-radio,.wpforms-field-gdpr-checkbox) ul li { margin-top:8px; line-height:1.6; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(.wpforms-field-label-inline,.wpforms-field-checkbox label,.wpforms-field-radio label) { font-family:inherit; color:#5e4865; font-size:14px; font-weight:400; line-height:1.6; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-submit-container { padding:4px 0 0; margin:0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(button.wpforms-submit,input[type=submit],button.wpforms-page-button) { display:inline-flex; align-items:center; justify-content:center; width:auto; max-width:100%; min-height:46px; height:auto; padding:12px 24px; border:1px solid #bd105c; border-radius:4px; background:#bd105c; color:#fff; box-shadow:none; font-family:inherit; font-size:14px; font-weight:650; line-height:1.5; letter-spacing:0; text-transform:none; white-space:normal; text-align:center; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(button.wpforms-submit,input[type=submit],button.wpforms-page-button) { background:#bd105c!important; margin:0!important; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(button.wpforms-submit,input[type=submit],button.wpforms-page-button):hover { background:#9f0b4c!important; border-color:#9f0b4c; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-page-prev { background:#fff!important; color:#694370; border-color:#c9b4d0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(label.wpforms-error,em.wpforms-error) { color:#a31739; font-family:inherit; font-size:12px; line-height:1.6; margin:7px 0 0; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(input.wpforms-error,textarea.wpforms-error,select.wpforms-error) { border-color:#b32248; }
body.pa-storefront #content div.wpforms-container-full :is(.wpforms-error-container,.wpforms-confirmation-container-full) { font-family:inherit; font-size:14px; line-height:1.65; border-radius:4px; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-required-label { color:#b22052; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field:not(.wpforms-field-hp):not(.wpforms-field-hidden) > .wpforms-field-label.wpforms-label-hide { position:static; width:auto; height:auto; overflow:visible; clip:auto; clip-path:none; white-space:normal; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-uploader { border:1px dashed #bba1c5; border-radius:4px; background:#faf7fc; padding:20px; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field-divider { border-top:1px solid #e5dbe9; padding-top:20px; }
body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field-divider h3 { font-family:inherit; color:#45304d; font-size:19px; font-weight:650; line-height:1.4; letter-spacing:0; }
body.pa-storefront #content div.wpforms-container-full :is(a,.wpforms-form a) { color:#a40b50; text-decoration:underline; text-underline-offset:3px; }
body.pa-customer-auth-page #content div.wpforms-container-full .wpforms-form button.wpforms-submit { width:100%; }

/* Native WooCommerce login/recovery and customer forms remain native. */
body.pa-shop-account #customer_login { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
body.pa-shop-account #customer_login::before,body.pa-shop-account #customer_login::after { display:none; }
body.pa-shop-account #customer_login > :is(.col-1,.col-2) { width:auto; float:none; min-width:0; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) { box-sizing:border-box; margin:0; padding:28px; border:1px solid #e0d4e4; border-top:4px solid #d71173; border-radius:6px; background:#fff; font-family:var(--pa-form-font); color:#2a222e; line-height:1.65; }
body.pa-shop-account .woocommerce form.lost_reset_password { max-width:620px; margin:0 auto; }
body.pa-customer-auth-page .woocommerce > :is(form.login,form.register) { max-width:620px; margin:0 auto; }
body.pa-customer-auth-page .woocommerce > h2 { max-width:620px; margin-left:auto; margin-right:auto; }
body.pa-shop-account .woocommerce > h2,body.pa-shop-account #customer_login h2 { font-family:var(--pa-form-font); font-size:24px; line-height:1.3; font-weight:700; color:#35253e; margin:0 0 18px; letter-spacing:0; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .form-row { margin:0 0 20px; padding:0; width:auto; max-width:100%; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) label { font-family:inherit; color:#49344f; font-size:14px; font-weight:600; line-height:1.5; margin:0 0 8px; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) :is(input.input-text,input[type=text],input[type=email],input[type=password]) { box-sizing:border-box; min-height:46px; width:100%; max-width:100%; background:#fff; color:#2a222e; border:1px solid #d9cddd; border-radius:4px; padding:11px 13px; font-family:inherit; font-size:15px; line-height:1.5; box-shadow:none; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .password-input { display:block; width:100%; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .password-input input { padding-right:46px; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .show-password-input { right:10px; top:10px; padding:3px; color:#6d5076; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) :is(button.button,input.button) { display:inline-flex; align-items:center; justify-content:center; min-height:46px; max-width:100%; padding:12px 24px; margin:0; border:1px solid #bd105c; border-radius:4px; background:#bd105c; color:#fff; font-family:inherit; font-size:14px; font-weight:650; line-height:1.5; letter-spacing:0; white-space:normal; text-transform:none; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .woocommerce-form-login__rememberme { display:block; margin:0 0 16px; color:#6d5076; font-size:13px; font-weight:400; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) input[type=checkbox] { accent-color:#bd105c; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) a { color:#a40b50; text-underline-offset:3px; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) .lost_password { font-size:13px; margin:18px 0 0; }
body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) :is(.woocommerce-privacy-policy-text,.woocommerce-password-hint,.woocommerce-password-strength) { font-size:12px; line-height:1.65; color:#75617e; }
body.pa-storefront #content :is(.woocommerce-invalid input,.woocommerce-invalid select) { border-color:#b32248; }
body.pa-storefront #content :is(button:disabled,input:disabled,select:disabled,textarea:disabled) { opacity:.6; cursor:not-allowed; }
body.pa-storefront #content :is(button,input,textarea,select):focus-visible { outline:2px solid #08747a; outline-offset:3px; }
@media(max-width:767px) {
    body.pa-customer-form-page #content > .ast-container { padding-left:20px; padding-right:20px; }
    .pa-customer-form-heading { flex-direction:column; align-items:flex-start; gap:20px; padding:28px 0 24px; }
    .pa-customer-form-heading img { width:144px; height:48px; flex-basis:auto; }
    body.pa-storefront .pa-customer-form-heading h1 { font-size:28px; }
    body.pa-customer-form-page #primary .elementor-element-c62c657 { padding:24px 0 36px; }
    body.pa-customer-form-page #primary .elementor-element-1cba60b { padding:22px; }
    body.pa-shop-account #customer_login { grid-template-columns:minmax(0,1fr); gap:30px; }
    body.pa-shop-account .woocommerce :is(form.login,form.register,form.lost_reset_password) { padding:22px; }
    body.pa-storefront #content div.wpforms-container-full .wpforms-form :is(button.wpforms-submit,input[type=submit]) { width:100%; }
    body.pa-storefront #content div.wpforms-container-full .wpforms-form .wpforms-field-container > .wpforms-field:is(.wpforms-one-half,.wpforms-one-third,.wpforms-two-thirds,.wpforms-one-fourth,.wpforms-three-fourths) { width:100%; float:none; margin-left:0!important; }
}
