/* AZ Boutique account de-skin candidate — loyalty page is the visual reference. */
body {
    --azb-deskin-canvas: #fff;
    --azb-deskin-card: #faf7f4;
    --azb-deskin-card-accent: #fff0f5;
    --azb-deskin-line-soft: #dfe2e5;
    --azb-deskin-text: #30343a;
    --azb-deskin-muted: #697078;
    --azb-deskin-pink: #de2666;
    --azb-deskin-pink-dark: #c91d59;
}

/* Checkout login reuses the canonical account card and control vocabulary. */
body.checkout-onepage-index #checkout-step-login > #col2-set {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 24px !important;
    width: 100% !important;
    margin: 0 !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1,
body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 {
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 24px !important;
    background: var(--azb-deskin-card, #faf7f4) !important;
    border: 1px solid #d9dde2 !important;
    border-radius: 10px !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1 > h3,
body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 > h3 {
    margin: 0 0 16px !important;
    padding: 0 0 10px !important;
    color: var(--azb-deskin-text, #30343a) !important;
    border: 0 !important;
    border-bottom: 2px solid var(--azb-deskin-pink, #de2666) !important;
    font-size: 22.5px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1 > p,
body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 fieldset > p {
    margin: 0 0 16px !important;
    color: #4b5057 !important;
    line-height: 1.55 !important;
}

body.checkout-onepage-index #checkout-step-login #col2-set2,
body.checkout-onepage-index #checkout-step-login #col2-set2 > .col-1,
body.checkout-onepage-index #checkout-step-login #login-form,
body.checkout-onepage-index #checkout-step-login #login-form fieldset,
body.checkout-onepage-index #checkout-step-login #login-form .form-list,
body.checkout-onepage-index #checkout-step-login #login-form .form-list > li,
body.checkout-onepage-index #checkout-step-login #login-form .input-box {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.checkout-onepage-index #checkout-step-login #col2-set2 {
    margin-top: auto !important;
}

body.checkout-onepage-index #checkout-step-login #login-form {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}

body.checkout-onepage-index #checkout-step-login #login-form fieldset {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.checkout-onepage-index #checkout-step-login #login-form .form-list {
    margin-bottom: 0 !important;
}

body.checkout-onepage-index #checkout-step-login #login-form .buttons-set {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-top: auto !important;
    padding-top: 18px !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1 button.button,
body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 #login-form button.button {
    box-sizing: border-box !important;
    justify-content: center !important;
    width: 160px !important;
    min-width: 160px !important;
    max-width: 160px !important;
    flex: none !important;
    height: 44px !important;
    margin: 0 5px 5px 0 !important;
}

body.checkout-onepage-index #checkout-step-login #login-form .buttons-set p,
body.checkout-onepage-index #checkout-step-login #login-form .buttons-set a {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
}

@media only screen and (max-width: 767px) {
    body.checkout-onepage-index #checkout-step-login > #col2-set {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 16px !important;
    }

    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1,
    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 {
        padding: 16px !important;
        border-radius: 8px !important;
    }

    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1 > h3,
    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 > h3 {
        font-size: 22.5px !important;
    }

    body.checkout-onepage-index #checkout-step-login #login-form .buttons-set {
        align-items: stretch !important;
    }

    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-1 button.button,
    body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 #login-form button.button {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        margin: 10px 0 0 !important;
    }
}

/* Auth spacing: one 16px rhythm on standalone and checkout login surfaces. */
body.customer-account-login .account-login .new-users,
body.customer-account-login .account-login .registered-users {
    background: var(--azb-deskin-card, #faf7f4) !important;
}

body.customer-account-login .account-login .registered-users {
    margin-bottom: 0 !important;
}

/* Both desktop login cards finish on one shared action baseline. */
@media only screen and (min-width: 768px) {
    body.customer-account-login .account-login .new-users,
    body.customer-account-login .account-login .registered-users,
    body.customer-account-login .account-login .new-users > .content,
    body.customer-account-login .account-login .registered-users > .content {
        display: flex !important;
        flex-direction: column !important;
    }

    body.customer-account-login .account-login .new-users > .content,
    body.customer-account-login .account-login .registered-users > .content {
        flex: 1 1 auto !important;
        min-height: 0 !important;
    }

}

body.customer-account-login .account-login > .page-title {
    margin-bottom: 16px !important;
}

body.customer-account-login .account-login > .messages {
    margin: 0 0 16px !important;
}

body.customer-account-login .account-login > #customer-login-form,
body.customer-account-login .account-login > #login-form {
    gap: 16px !important;
}

/* eKomi already owns its 16px top gap; remove the legacy extra 25px. */
body.customer-account-login .main .col-main,
body.customer-account-forgotpassword .main .col-main {
    padding-bottom: 0 !important;
}

body.customer-account-login .main,
body.customer-account-forgotpassword .main {
    min-height: 0 !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set {
    gap: 16px !important;
}

body.checkout-onepage-index #checkout-step-login #login-form .buttons-set {
    gap: 16px !important;
    padding: 16px 0 0 !important;
}

body.checkout-onepage-index #checkout-step-login > #col2-set > .col-2 #login-form .buttons-set button.button {
    margin: 0 !important;
}

body.checkout-onepage-index #checkout-step-login #login-form .buttons-set::before,
body.checkout-onepage-index #checkout-step-login #login-form .buttons-set::after {
    display: none !important;
    content: none !important;
}

body.checkout-onepage-index #opc-login #login-form .azb-auth-required-note {
    margin: 16px 0 0 !important;
}

/* Forgot password reuses the standalone account card and 16px rhythm. */
body.customer-account-forgotpassword .col-main > .page-title {
    margin: 0 0 16px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid var(--azb-deskin-pink, #de2666) !important;
}

body.customer-account-forgotpassword .col-main > .messages {
    margin: 0 0 16px !important;
}

body.customer-account-forgotpassword .col-main > #form-validate {
    box-sizing: border-box !important;
    display: grid !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 24px !important;
    color: var(--azb-deskin-text, #30343a) !important;
    background: var(--azb-deskin-card, #faf7f4) !important;
    border: 0 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

body.customer-account-forgotpassword #form-validate > .fieldset,
body.customer-account-forgotpassword #form-validate .form-list,
body.customer-account-forgotpassword #form-validate .form-list > li,
body.customer-account-forgotpassword #form-validate .input-box {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.customer-account-forgotpassword #form-validate > .fieldset {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
}

body.customer-account-forgotpassword #form-validate .form-list {
    width: calc(50% - 8px) !important;
}

body.customer-account-forgotpassword #form-validate .legend {
    margin: 0 0 16px !important;
    padding: 0 0 10px !important;
    color: var(--azb-deskin-text, #30343a) !important;
    border: 0 !important;
    border-bottom: 2px solid var(--azb-deskin-pink, #de2666) !important;
    font-size: 22.5px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

body.customer-account-forgotpassword #form-validate .fieldset > p {
    margin: 0 0 16px !important;
    color: #4b5057 !important;
    line-height: 1.55 !important;
}

body.customer-account-forgotpassword #form-validate .form-list {
    display: grid !important;
    gap: 16px !important;
}

body.customer-account-forgotpassword #form-validate label.required {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important;
    margin: 0 0 6px !important;
}

body.customer-account-forgotpassword #form-validate label.required > em {
    position: static !important;
    float: none !important;
    order: 2 !important;
    margin: 0 0 0 4px !important;
    color: var(--azb-deskin-pink, #de2666) !important;
}

body.customer-account-forgotpassword #form-validate input.input-text {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    border: 1px solid #c9cdd2 !important;
    border-radius: 6px !important;
    font-size: 16px !important;
    line-height: 24px !important;
}

body.customer-account-forgotpassword #form-validate > .buttons-set {
    display: grid !important;
    grid-template-columns: repeat(2, 160px) !important;
    justify-content: start !important;
    gap: 16px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set::before,
body.customer-account-forgotpassword #form-validate .buttons-set::after {
    display: none !important;
    content: none !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set > .required {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    color: #4b5057 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set > .back-link,
body.customer-account-forgotpassword #form-validate .buttons-set > button.button {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set > .back-link > a {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 9px 18px !important;
    color: var(--azb-deskin-pink, #de2666) !important;
    background: #fff !important;
    border: 1px solid var(--azb-deskin-pink, #de2666) !important;
    border-radius: 6px !important;
    line-height: 24px !important;
    text-decoration: none !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set > .back-link > a:hover,
body.customer-account-forgotpassword #form-validate .buttons-set > .back-link > a:focus-visible {
    color: var(--azb-deskin-pink-dark, #c91d59) !important;
    background: var(--azb-deskin-card-accent, #fff0f5) !important;
    border-color: var(--azb-deskin-pink-dark, #c91d59) !important;
}

body.customer-account-forgotpassword #form-validate .buttons-set > .back-link small {
    display: none !important;
}

@media only screen and (max-width: 767px) {
    body.customer-account-forgotpassword .col-main > #form-validate {
        width: 100% !important;
        padding: 16px !important;
        border-radius: 8px !important;
    }

    body.customer-account-forgotpassword #form-validate .form-list {
        width: 100% !important;
    }

    body.customer-account-forgotpassword #form-validate > .buttons-set {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.customer-account-forgotpassword #form-validate .buttons-set > .required {
        grid-column: 1 !important;
        order: 3 !important;
    }

    body.customer-account-forgotpassword #form-validate .buttons-set > button.button {
        order: 1 !important;
    }

    body.customer-account-forgotpassword #form-validate .buttons-set > .back-link {
        order: 2 !important;
    }
}

/* Address form: keep legacy values in the POST while removing obsolete UI. */
body.customer-address-form #form-validate .name-prefix,
body.customer-address-form #form-validate .azb-address-fax,
body.customer-address-form #form-validate li.fields:has(#fax) {
    display: none !important;
}

body.customer-address-form #form-validate input.input-text,
body.customer-address-form #form-validate select {
    box-sizing: border-box !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
}

body.customer-address-form #form-validate .buttons-set {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

body.customer-address-form #form-validate .buttons-set > .back-link,
body.customer-address-form #form-validate .buttons-set > button.button {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
}

body.customer-address-form #form-validate .buttons-set > .back-link {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

body.customer-address-form #form-validate .buttons-set > .back-link > a {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
}

body.customer-address-form #form-validate .buttons-set > button.button {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    color: #fff !important;
    background: var(--azb-deskin-pink) !important;
    border: 1px solid var(--azb-deskin-pink) !important;
    border-radius: 6px !important;
    line-height: 42px !important;
}

body.customer-address-form #form-validate .buttons-set > .required {
    box-sizing: border-box !important;
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    color: var(--azb-deskin-text) !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

/* One quiet content frame, with no repeated gradient/border hierarchy. */
body[class*="customer-account-"]:not(.customer-account-loyalty) .my-account,
body.customer-address-index .my-account,
body.customer-address-form .my-account,
body.sales-order-history .my-account,
body.sales-order-view .my-account,
body.newsletter-manage-index .my-account,
body.wishlist-index-index .my-account {
    padding: 24px !important;
    color: var(--azb-deskin-text) !important;
    background: var(--azb-deskin-canvas) !important;
    border: 1px solid var(--azb-deskin-line-soft) !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}

body:not(.customer-account-loyalty) .my-account .page-title {
    margin: 0 0 22px !important;
    padding: 0 !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .page-title h1 {
    margin: 0 !important;
    color: var(--azb-deskin-text) !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    overflow: visible !important;
    max-height: none !important;
    white-space: normal !important;
    text-overflow: clip !important;
}

body:not(.customer-account-loyalty) .my-account h2,
body:not(.customer-account-loyalty) .my-account h3,
body:not(.customer-account-loyalty) .my-account h4,
body:not(.customer-account-loyalty) .my-account .legend {
    color: var(--azb-deskin-text) !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

/* Dashboard: the H1 already names the surface; nested marketing headings add noise. */
body.customer-account-index .my-account .dashboard .box-account > .box-head,
body.customer-account-index .my-account .dashboard .box-title > h3 {
    display: none !important;
}

body.customer-account-index .my-account .dashboard .box-account {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body.customer-account-index .my-account .dashboard .box {
    height: auto !important;
    min-height: 0 !important;
    padding: 18px !important;
    background: var(--azb-deskin-card) !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: visible !important;
}

body.customer-account-index .my-account .dashboard .box-title {
    min-height: 24px;
    margin: 0 0 8px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.customer-account-index .my-account .dashboard .box-title a {
    float: none !important;
    font-size: 14px !important;
    font-weight: 600;
}

body.customer-account-index .my-account .dashboard .col2-set > .box {
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box .box-title {
    min-height: 0 !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box .box-content {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px !important;
    height: auto !important;
    overflow: visible !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box .box-content > div {
    box-sizing: border-box !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 18px !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
    border-radius: 12px !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box .box-content > div + div {
    padding: 18px !important;
    border-left: 0 !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box h4 {
    margin: 0 0 8px !important;
    color: var(--azb-deskin-text) !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    text-transform: lowercase !important;
}

body.customer-account-index .my-account .dashboard .col2-set > .box h4::first-letter {
    text-transform: uppercase !important;
}

/* Forms: beige loyalty surface, no duplicate legend line. */
body.customer-account-edit .my-account .fieldset,
body.newsletter-manage-index .my-account .fieldset {
    padding: 20px !important;
    background: var(--azb-deskin-card) !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.customer-account-edit .my-account .fieldset:first-of-type > .legend,
body.customer-address-form .my-account .fieldset > .legend,
body.newsletter-manage-index .my-account .fieldset > .legend {
    display: none !important;
}

/* Account edit reuses the complete Magento name widget and only normalizes its grid. */
body.customer-account-edit #form-validate .azb-account-edit-name,
body.customer-account-edit #form-validate .azb-account-edit-name > [class^="customer-name"] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body.customer-account-edit #form-validate .azb-account-edit-name > [class^="customer-name"] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

body.customer-account-edit #form-validate .azb-account-edit-name .field,
body.customer-account-edit #form-validate .azb-account-edit-name .input-box,
body.customer-account-edit #form-validate .azb-account-edit-name input,
body.customer-account-edit #form-validate .azb-account-edit-name select,
body.customer-account-edit #form-validate .azb-account-edit-email,
body.customer-account-edit #form-validate .azb-account-edit-email .input-box,
body.customer-account-edit #form-validate .azb-account-edit-email input {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.customer-account-edit #form-validate .azb-account-edit-name .field {
    width: auto !important;
}

body.customer-account-edit #form-validate .azb-account-edit-email {
    width: calc((100% - 16px) / 2) !important;
}

body.customer-account-edit #form-validate label.required,
body.customer-account-edit #form-validate label.require {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 4px !important;
}

body.customer-account-edit #form-validate label.required > em,
body.customer-account-edit #form-validate label.require > em {
    position: static !important;
    inset: auto !important;
    float: none !important;
    order: 2 !important;
    margin: 0 !important;
    color: #de2666 !important;
}

body:not(.customer-account-loyalty) .my-account .box-title,
body:not(.customer-account-loyalty) .my-account .box-head {
    border: 0 !important;
}

/* The account navigation keeps its accepted geometry, but loses the anthracite slab. */
body:not(.customer-account-loyalty) .block-account {
    background: #fff !important;
    border: 1px solid var(--azb-deskin-line-soft) !important;
    box-shadow: none !important;
}

body.customer-account-loyalty .block-account .block-title,
body:not(.customer-account-loyalty) .block-account .block-title {
    color: var(--azb-deskin-text) !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .block-account .block-title::after {
    display: none !important;
    content: none !important;
}

/* Shallow destinations already exist in the account navigation: no duplicate Retour. */
body.customer-account-edit .my-account .buttons-set > .back-link,
body.newsletter-manage-index .my-account .buttons-set > .back-link {
    display: none !important;
}

/* Genuine deep escape actions stay canonical secondary controls. */
body.customer-address-form .my-account .back-link > a,
body.sales-order-view .my-account .back-link > a {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 9px 18px !important;
    color: var(--azb-deskin-pink) !important;
    background: #fff !important;
    border: 1px solid var(--azb-deskin-pink) !important;
    border-radius: 6px !important;
    line-height: 24px !important;
    text-decoration: none !important;
}

body.customer-address-form .my-account .back-link > a:hover,
body.customer-address-form .my-account .back-link > a:focus-visible,
body.sales-order-view .my-account .back-link > a:hover,
body.sales-order-view .my-account .back-link > a:focus-visible {
    color: var(--azb-deskin-pink-dark) !important;
    background: var(--azb-deskin-card-accent) !important;
    border-color: var(--azb-deskin-pink-dark) !important;
}

body.customer-address-form .my-account .back-link small,
body.sales-order-view .my-account .back-link small {
    display: none !important;
}

/* Newsletter primary is the same loyalty CTA, not a floated legacy span stack. */
body.newsletter-manage-index .my-account .buttons-set {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: 44px !important;
    padding-top: 0 !important;
    border: 0 !important;
}

body.newsletter-manage-index .my-account .buttons-set button.button {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 160px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    color: #fff !important;
    background: var(--azb-deskin-pink) !important;
    border: 1px solid var(--azb-deskin-pink) !important;
    border-radius: 6px !important;
    line-height: 42px !important;
    text-align: center !important;
}

body.newsletter-manage-index .my-account .buttons-set button.button:hover,
body.newsletter-manage-index .my-account .buttons-set button.button:focus-visible {
    background: var(--azb-deskin-pink-dark) !important;
    border-color: var(--azb-deskin-pink-dark) !important;
}

/* Account tables and lists: quiet loyalty palette, with readable row hierarchy. */
body:not(.customer-account-loyalty) .my-account .data-table {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 0 20px !important;
    color: var(--azb-deskin-text) !important;
    background: #fff !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 10px !important;
    box-shadow: 0 0 0 1px #f2edea !important;
    overflow: hidden !important;
}

body:not(.customer-account-loyalty) .my-account .data-table thead,
body:not(.customer-account-loyalty) .my-account .data-table thead tr,
body:not(.customer-account-loyalty) .my-account .data-table thead th {
    color: var(--azb-deskin-text) !important;
    background: #fff !important;
}

body:not(.customer-account-loyalty) .my-account .data-table th,
body:not(.customer-account-loyalty) .my-account .data-table td {
    box-sizing: border-box !important;
    padding: 12px 14px !important;
    color: var(--azb-deskin-text) !important;
    border: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #f2edea !important;
    line-height: 1.45 !important;
    vertical-align: middle !important;
}

body:not(.customer-account-loyalty) .my-account .data-table th {
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: left !important;
}

body:not(.customer-account-loyalty) .my-account .data-table tbody tr:nth-child(odd) > td,
body:not(.customer-account-loyalty) .my-account .data-table tbody:nth-of-type(odd) > tr > td {
    background: #fff !important;
}

body:not(.customer-account-loyalty) .my-account .data-table tbody tr:nth-child(even) > td,
body:not(.customer-account-loyalty) .my-account .data-table tbody:nth-of-type(even) > tr > td {
    background: var(--azb-deskin-card) !important;
}

body:not(.customer-account-loyalty) .my-account .data-table tbody:last-of-type tr:last-child > td,
body:not(.customer-account-loyalty) .my-account .data-table tfoot tr:last-child > td {
    border-bottom: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .data-table a,
body:not(.customer-account-loyalty) .my-account .pager a,
body:not(.customer-account-loyalty) .my-account .addresses-list a,
body:not(.customer-account-loyalty) .my-account .order-info a,
body:not(.customer-account-loyalty) .my-account .order-links a {
    color: var(--azb-deskin-pink) !important;
    font-weight: 600 !important;
}

body:not(.customer-account-loyalty) .my-account .data-table a:hover,
body:not(.customer-account-loyalty) .my-account .data-table a:focus-visible,
body:not(.customer-account-loyalty) .my-account .pager a:hover,
body:not(.customer-account-loyalty) .my-account .pager a:focus-visible,
body:not(.customer-account-loyalty) .my-account .addresses-list a:hover,
body:not(.customer-account-loyalty) .my-account .addresses-list a:focus-visible {
    color: var(--azb-deskin-pink-dark) !important;
}

body:not(.customer-account-loyalty) .my-account .pager {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 44px !important;
    margin: 0 0 18px !important;
    padding: 8px 0 !important;
    color: var(--azb-deskin-muted) !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .pager .pages,
body:not(.customer-account-loyalty) .my-account .pager .pages ol {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    float: none !important;
    margin: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .pager .pages li,
body:not(.customer-account-loyalty) .my-account .pager .pages a,
body:not(.customer-account-loyalty) .my-account .pager .pages .current {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    border-radius: 6px !important;
    line-height: 1 !important;
}

body:not(.customer-account-loyalty) .my-account .pager .pages .current {
    color: #fff !important;
    background: var(--azb-deskin-pink) !important;
}

body:not(.customer-account-loyalty) .my-account .addresses-list ol {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px !important;
    margin: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .addresses-list,
body:not(.customer-account-loyalty) .my-account .addresses-list > .col-1,
body:not(.customer-account-loyalty) .my-account .addresses-list > .col-2 {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .addresses-list h2 {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: var(--azb-deskin-text) !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
}

body:not(.customer-account-loyalty) .my-account .addresses-list li.item,
body:not(.customer-account-loyalty) .my-account .order-info-box .box,
body:not(.customer-account-loyalty) .my-account .order-additional {
    box-sizing: border-box !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 18px !important;
    color: var(--azb-deskin-text) !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body:not(.customer-account-loyalty) .my-account .addresses-list li.item:nth-child(even) {
    background: #fff !important;
    box-shadow: 0 0 0 1px #f2edea !important;
}

body:not(.customer-account-loyalty) .my-account .order-info-box {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .order-info-box > .col-1,
body:not(.customer-account-loyalty) .my-account .order-info-box > .col-2 {
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .order-info-box .box-title,
body:not(.customer-account-loyalty) .my-account .order-info-box .box-content {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

body:not(.customer-account-loyalty) .my-account .order-info-box .box-title {
    margin-bottom: 8px !important;
}

body:not(.customer-account-loyalty) .my-account .order-info,
body:not(.customer-account-loyalty) .my-account .order-date,
body:not(.customer-account-loyalty) .my-account .order-additional {
    margin-bottom: 14px !important;
}

/* Registration/auth outer shells: keep the validated inner form as the single card. */
body.customer-account-create .my-account,
body.customer-account-login .my-account,
body.customer-account-forgotpassword .my-account {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.customer-account-create .account-create {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.customer-account-create .account-create .page-title h1 {
    color: var(--azb-deskin-text) !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    margin: 0 !important;
}

body.customer-account-create .account-create .page-title {
    margin: 16px 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.checkout-onepage-index #account-create > .page-title {
    margin: 16px 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.checkout-onepage-index #account-create > .page-title h1 {
    margin: 0 !important;
    color: var(--azb-deskin-text) !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

body.customer-account-create .account-create .page-title::before,
body.customer-account-create .account-create .page-title::after {
    display: none !important;
    content: none !important;
}

body.customer-account-create .account-create .azb-registration-form {
    box-sizing: border-box !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.customer-account-create .account-create .azb-registration-card,
body.checkout-onepage-index .azb-registration-form .azb-registration-card {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 16px !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

body.customer-account-create .account-create .azb-registration-card + .azb-registration-card,
body.checkout-onepage-index .azb-registration-form .azb-registration-card + .azb-registration-card {
    margin-top: 16px !important;
}

body.customer-account-create .account-create #professionaldata.azb-professional-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    margin: 0 !important;
}

body.customer-account-create .account-create #professionaldata.azb-professional-fields > .field,
body.customer-account-create .account-create #professionaldata.azb-professional-fields .input-box,
body.customer-account-create .account-create #professionaldata.azb-professional-fields input {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
}

body.customer-account-create .account-create #professionaldata.azb-professional-fields > .field {
    margin: 0 !important;
    padding: 0 !important;
}

@media only screen and (min-width: 768px) {
    body.customer-account-create .account-create #professionaldata.azb-professional-fields > .field {
        display: grid !important;
        grid-template-rows: minmax(42px, auto) 44px !important;
        align-content: start !important;
    }

    body.customer-account-create .account-create #professionaldata.azb-professional-fields > .field > label {
        align-self: start !important;
        margin: 0 !important;
    }

    body.customer-account-create .account-create #professionaldata.azb-professional-fields > .field > .input-box {
        align-self: end !important;
    }
}

body.customer-account-create .account-create .azb-registration-card > .legend {
    display: none !important;
}

body.customer-account-create .account-create .azb-registration-card > .legend::before,
body.customer-account-create .account-create .azb-registration-card > .legend::after {
    display: none !important;
    content: none !important;
}

body.customer-account-create .account-create .azb-registration-actions {
    float: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: none !important;
}

body.customer-account-create .account-create .azb-registration-actions > .required {
    flex: 0 0 100% !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

body.customer-account-create .account-create .azb-registration-actions > .back-link,
body.customer-account-create .account-create .azb-registration-actions > button.button {
    flex: 0 0 200px !important;
    width: 200px !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
}

body.customer-account-create .account-create .azb-registration-actions > .back-link > a {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
}

body.customer-account-create .account-create .azb-registration-actions > .back-link {
    order: 1;
}

body.customer-account-create .account-create .azb-registration-actions > button.button {
    order: 2;
}

body.customer-account-create .account-create .azb-registration-legal,
body.customer-account-create .account-create .form-instructions,
body.customer-account-create .account-create .legal-notice,
body.customer-account-create .account-create .bloc-validation-contenu,
body.checkout-onepage-index .azb-registration-form .bloc-validation-contenu {
    box-sizing: border-box !important;
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 16px auto 0 !important;
    padding: 16px !important;
    background: var(--azb-deskin-card) !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    line-height: 1.55;
    text-align: justify;
    overflow-wrap: anywhere;
    hyphens: auto;
    font-size: 13px !important;
}

/* Auth fields keep one geometry across standalone and checkout surfaces. */
body.customer-account-create .azb-registration-form .azb-registration-email-row,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

body.customer-account-create .azb-registration-form .azb-registration-name,
body.checkout-onepage-index .azb-registration-form .azb-registration-name {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields {
    box-sizing: border-box !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-registration-name > .field,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.checkout-onepage-index .azb-registration-form .azb-registration-name > .field,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.customer-account-create .azb-registration-form .azb-registration-name .input-box,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-name .input-box,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields .input-box,
body.customer-account-create .azb-registration-form .azb-registration-name input,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields input,
body.checkout-onepage-index .azb-registration-form .azb-registration-name input,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields input {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-registration-name input,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields input,
body.checkout-onepage-index .azb-registration-form .azb-registration-name input,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields input,
body.customer-account-create .azb-registration-form .azb-registration-email input,
body.checkout-onepage-index .azb-registration-form .azb-registration-email input {
    padding-right: 12px !important;
    padding-left: 12px !important;
}

body.customer-account-create .azb-registration-form .form-list,
body.checkout-onepage-index .azb-registration-form .form-list,
body.customer-account-create .azb-registration-form .form-list > li,
body.checkout-onepage-index .azb-registration-form .form-list > li {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-registration-email,
body.customer-account-create .azb-registration-form .azb-registration-email .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-email,
body.checkout-onepage-index .azb-registration-form .azb-registration-email .input-box,
body.customer-account-create .azb-registration-form .azb-registration-email input[type="email"],
body.checkout-onepage-index .azb-registration-form .azb-registration-email input[type="email"] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}

body.customer-account-create .azb-registration-form .azb-registration-email,
body.customer-account-create .azb-registration-form .azb-registration-email .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-email,
body.checkout-onepage-index .azb-registration-form .azb-registration-email .input-box {
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-email,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-email .input-box,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-email input[type="email"] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-email,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-email .input-box {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-name > .field,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-name .input-box,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-name input {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-name > .field,
body.checkout-onepage-index #opc-login #register-form-validate .azb-registration-name .input-box {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body.customer-account-login #login-form .input-box,
body.checkout-onepage-index #opc-login #login-form .input-box,
body.customer-account-login #login-form input[type="email"],
body.customer-account-login #login-form input[type="text"],
body.customer-account-login #login-form input[type="password"],
body.checkout-onepage-index #opc-login #login-form input[type="email"],
body.checkout-onepage-index #opc-login #login-form input[type="text"],
body.checkout-onepage-index #opc-login #login-form input[type="password"] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}

body.customer-account-login #login-form,
body.checkout-onepage-index #opc-login #login-form {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    overflow: visible !important;
}

body.customer-account-login #login-form .registered-users,
body.customer-account-login #login-form .form-list,
body.customer-account-login #login-form .form-list > li {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}

/* Registration rows share the same two-column track and cannot inherit legacy fixed widths. */
body.customer-account-create .azb-registration-form .azb-registration-email-row,
body.customer-account-create .azb-registration-form .azb-registration-passwords,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Magento clearfix pseudo-elements must not become empty grid tracks. */
body.customer-account-create .azb-registration-form .azb-registration-name::before,
body.customer-account-create .azb-registration-form .azb-registration-name::after,
body.customer-account-create .azb-registration-form .azb-registration-email-row::before,
body.customer-account-create .azb-registration-form .azb-registration-email-row::after,
body.customer-account-create .azb-registration-form .azb-registration-passwords::before,
body.customer-account-create .azb-registration-form .azb-registration-passwords::after,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields::before,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields::after,
body.checkout-onepage-index .azb-registration-form .azb-registration-name::before,
body.checkout-onepage-index .azb-registration-form .azb-registration-name::after,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row::before,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row::after,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords::before,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords::after,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields::before,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields::after {
    content: none !important;
    display: none !important;
}

body.customer-account-create .azb-registration-form .azb-registration-email-row > .field,
body.customer-account-create .azb-registration-form .azb-registration-passwords > .field,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row > .field,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords > .field,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.customer-account-create .azb-registration-form .azb-registration-email-row .input-box,
body.customer-account-create .azb-registration-form .azb-registration-passwords .input-box,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords .input-box,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields .input-box,
body.customer-account-create .azb-registration-form .azb-registration-email-row input,
body.customer-account-create .azb-registration-form .azb-registration-passwords input,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields input,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row input,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords input,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields input {
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-registration-email-row > .field,
body.customer-account-create .azb-registration-form .azb-registration-passwords > .field,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row > .field,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords > .field,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields > .field,
body.customer-account-create .azb-registration-form .azb-registration-email-row .input-box,
body.customer-account-create .azb-registration-form .azb-registration-passwords .input-box,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row .input-box,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords .input-box,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields .input-box {
    padding: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-registration-email-row input,
body.customer-account-create .azb-registration-form .azb-registration-passwords input,
body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields input,
body.checkout-onepage-index .azb-registration-form .azb-registration-email-row input,
body.checkout-onepage-index .azb-registration-form .azb-registration-passwords input,
body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields input {
    padding-right: 12px !important;
    padding-left: 12px !important;
}

body.customer-account-create .azb-registration-form .azb-registration-actions,
body.checkout-onepage-index .azb-registration-form .azb-registration-actions {
    float: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    width: 100% !important;
    max-width: none !important;
    margin-top: 16px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.customer-account-login #login-form input[type="email"],
body.customer-account-login #login-form input[type="text"],
body.customer-account-login #login-form input[type="password"],
body.checkout-onepage-index #opc-login #login-form input[type="email"],
body.checkout-onepage-index #opc-login #login-form input[type="text"],
body.checkout-onepage-index #opc-login #login-form input[type="password"] {
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    border: 1px solid #c9cdd2 !important;
    border-radius: 6px !important;
    line-height: 24px !important;
}

body.customer-account-create .azb-registration-form label.required,
body.customer-account-create .azb-registration-form .azb-account-type__fieldset > legend,
body.checkout-onepage-index .azb-registration-form label.required,
body.checkout-onepage-index .azb-registration-form .azb-account-type__fieldset > legend {
    display: inline-flex !important;
    align-items: baseline !important;
    justify-content: flex-start !important;
    gap: 0 !important;
}

body.customer-account-create .azb-registration-form label.required > em,
body.customer-account-create .azb-registration-form .azb-account-type__fieldset > legend > em,
body.checkout-onepage-index .azb-registration-form label.required > em,
body.checkout-onepage-index .azb-registration-form .azb-account-type__fieldset > legend > em {
    position: static !important;
    float: none !important;
    order: initial !important;
    margin: 0 0 0 4px !important;
    color: #de2666 !important;
}

body.customer-account-create .azb-registration-form .azb-footnote-ref,
body.checkout-onepage-index .azb-registration-form .azb-footnote-ref {
    display: inline-block !important;
    margin-left: 2px !important;
    color: #de2666 !important;
    font-size: 10px !important;
    line-height: 1 !important;
    vertical-align: super !important;
}

body.customer-account-create .azb-registration-form .azb-registration-newsletter .azb-choice,
body.checkout-onepage-index .azb-registration-form .azb-registration-newsletter .azb-choice {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 44px !important;
    line-height: 1.35 !important;
}

body.customer-account-login #remember-me-box,
body.checkout-onepage-index #remember-me-box {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 44px !important;
}

body.customer-account-login #remember-me-box .input-box,
body.checkout-onepage-index #remember-me-box .input-box {
    flex: 0 0 16px !important;
    width: 16px !important;
    min-width: 16px !important;
    margin: 0 !important;
}

body.customer-account-login #remember-me-box label,
body.checkout-onepage-index #remember-me-box label {
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    margin: 0 !important;
}

/* Login uses the same 16px vertical rhythm as the shared registration form. */
body.customer-account-login #login-form .registered-users .form-list,
body.checkout-onepage-index #opc-login #login-form .form-list {
    display: grid !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.checkout-onepage-index #opc-login #login-form > fieldset {
    margin-bottom: 16px !important;
}

body.customer-account-login #login-form .registered-users .form-list > li,
body.checkout-onepage-index #opc-login #login-form .form-list > li {
    margin: 0 !important;
    padding: 0 !important;
}

body.customer-account-login #login-form .registered-users .form-list > li:not(.control) > label,
body.checkout-onepage-index #opc-login #login-form .form-list > li:not(.control) > label {
    margin: 0 0 6px !important;
}

body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set,
body.checkout-onepage-index #opc-login #login-form > .buttons-set {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
    margin: auto 0 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--azb-deskin-line-soft, #dfe2e5) !important;
}

body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set > button,
body.checkout-onepage-index #opc-login #login-form > .buttons-set > button,
body.checkout-onepage-index #opc-login #login-form > .buttons-set > p,
body.checkout-onepage-index #opc-login #login-form > .buttons-set > p > a {
    margin: 0 !important;
}

body.checkout-onepage-index #opc-login #login-form > .buttons-set > p,
body.checkout-onepage-index #opc-login #login-form > .buttons-set > p > a {
    box-sizing: border-box !important;
    width: 100% !important;
}

body.checkout-onepage-index #opc-login #login-form > .buttons-set > p > a::before {
    display: none !important;
    content: none !important;
}

@media only screen and (min-width: 768px) {
    body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set,
    body.checkout-onepage-index #opc-login #login-form > .buttons-set {
        grid-template-columns: 160px minmax(0, 1fr) !important;
    }

    body.checkout-onepage-index #opc-login #login-form > .buttons-set {
        align-items: end !important;
    }

    body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set > button,
    body.checkout-onepage-index #opc-login #login-form > .buttons-set > button {
        justify-self: start !important;
        width: 160px !important;
        min-width: 160px !important;
        max-width: 160px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
    }

    body.checkout-onepage-index #opc-login #login-form > .buttons-set > p {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        justify-self: end !important;
        width: auto !important;
        min-height: 44px !important;
        text-align: right !important;
    }

    body.checkout-onepage-index #opc-login #login-form > .buttons-set > p > a {
        display: inline-flex !important;
        align-items: center !important;
        float: none !important;
        width: auto !important;
        min-height: 44px !important;
        white-space: nowrap !important;
    }

}

@media only screen and (max-width: 767px) {
    body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set,
    body.checkout-onepage-index #opc-login #login-form > .buttons-set {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.checkout-onepage-index #opc-login #checkout-step-login #col2-set2 > .col-1 > .buttons-set > button,
    body.checkout-onepage-index #opc-login #login-form > .buttons-set > button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    body.checkout-onepage-index #opc-login #login-form > .buttons-set > p,
    body.checkout-onepage-index #opc-login #login-form > .buttons-set > p > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        min-height: 44px !important;
        text-align: left !important;
    }
}

body.customer-account-login .account-login .new-users > .buttons-set::before,
body.customer-account-login .account-login .new-users > .buttons-set::after,
body.customer-account-login .account-login .registered-users .content > .buttons-set::before,
body.customer-account-login .account-login .registered-users .content > .buttons-set::after {
    display: none !important;
    content: none !important;
}

body.customer-account-login .account-login .registered-users .content > .buttons-set > a::before {
    display: none !important;
    content: none !important;
}

body.customer-account-login .account-login .new-users > .buttons-set,
body.customer-account-login .account-login .registered-users .content > .buttons-set {
    box-sizing: border-box !important;
    display: grid !important;
    gap: 16px !important;
    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--azb-deskin-line-soft, #dfe2e5) !important;
}

@media only screen and (min-width: 768px) {
    body.customer-account-login .account-login .new-users > .buttons-set,
    body.customer-account-login .account-login .registered-users .content > .buttons-set {
        grid-template-columns: 160px minmax(0, 1fr) !important;
        align-items: center !important;
        margin-top: auto !important;
    }

    body.customer-account-login .account-login .new-users > .buttons-set > button,
    body.customer-account-login .account-login .registered-users .content > .buttons-set > button {
        justify-self: start !important;
        width: 160px !important;
        min-width: 160px !important;
        max-width: 160px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
    }

    body.customer-account-login .account-login .registered-users .content > .buttons-set > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        justify-self: end !important;
        width: auto !important;
        min-height: 44px !important;
        margin: 0 !important;
        text-align: right !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
    body.customer-account-login .account-login .registered-users .content > .buttons-set {
        gap: 8px !important;
    }
}

@media only screen and (max-width: 767px) {
    body.customer-account-login .account-login .new-users > .buttons-set,
    body.customer-account-login .account-login .registered-users .content > .buttons-set {
        grid-template-columns: minmax(0, 1fr) !important;
        justify-items: stretch !important;
    }

    body.customer-account-login .account-login .new-users > .buttons-set > button,
    body.customer-account-login .account-login .registered-users .content > .buttons-set > button {
        justify-self: stretch !important;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    body.customer-account-login .account-login .registered-users .content > .buttons-set > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 44px !important;
        margin: 0 !important;
        text-align: center !important;
    }
}

body.customer-account-login .account-login .new-users h2,
body.customer-account-login .account-login .registered-users h2 {
    margin-bottom: 16px !important;
    padding-bottom: 10px !important;
    color: var(--azb-deskin-text) !important;
    border-bottom: 2px solid var(--azb-deskin-pink) !important;
}

@media only screen and (max-width: 767px) {
    body.customer-account-edit #form-validate .azb-account-edit-name > [class^="customer-name"] {
        grid-template-columns: 1fr !important;
    }

    body.customer-account-edit #form-validate .azb-account-edit-email {
        width: 100% !important;
    }

    body[class*="customer-account-"]:not(.customer-account-loyalty) .my-account,
    body.customer-address-index .my-account,
    body.customer-address-form .my-account,
    body.sales-order-history .my-account,
    body.sales-order-view .my-account,
    body.newsletter-manage-index .my-account,
    body.wishlist-index-index .my-account {
        padding: 16px !important;
    }

    body:not(.customer-account-loyalty) .my-account .page-title h1 {
        font-size: 22px !important;
    }

    body.customer-account-index .my-account .dashboard .box,
    body.customer-account-edit .my-account .fieldset,
    body.newsletter-manage-index .my-account .fieldset {
        padding: 16px !important;
    }

    body.customer-account-index .my-account .dashboard .col2-set > .box .box-content {
        grid-template-columns: 1fr;
    }

    body.customer-account-index .my-account .dashboard .col2-set > .box .box-content > div,
    body.customer-account-index .my-account .dashboard .col2-set > .box .box-content > div + div {
        padding: 16px !important;
        border-left: 0 !important;
    }

    body.customer-account-index .my-account .dashboard .col2-set > .box .box-content > div + div {
        margin-top: 18px !important;
    }

    body.customer-account-create .account-create .page-title h1 {
        font-size: 26px !important;
    }

    body.customer-account-create .account-create .azb-registration-card,
    body.checkout-onepage-index .azb-registration-form .azb-registration-card {
        padding: 16px !important;
    }

    body.newsletter-manage-index .my-account .buttons-set button.button {
        width: 100% !important;
        min-width: 0 !important;
    }

    body.customer-account-create .account-create .azb-registration-actions {
        flex-direction: column !important;
    }

    body.customer-account-create .account-create #professionaldata.azb-professional-fields {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.customer-account-create .azb-registration-form .azb-registration-email-row,
    body.customer-account-create .azb-registration-form .azb-registration-passwords,
    body.checkout-onepage-index .azb-registration-form .azb-registration-email-row {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.checkout-onepage-index .azb-registration-form .azb-registration-passwords {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.customer-account-create .azb-registration-form .azb-registration-name,
    body.customer-account-create .azb-registration-form #professionaldata.azb-professional-fields,
    body.checkout-onepage-index .azb-registration-form .azb-registration-name,
    body.checkout-onepage-index .azb-registration-form #professionaldata.azb-professional-fields {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.checkout-onepage-index .azb-registration-form .azb-registration-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.checkout-onepage-index .azb-registration-form .azb-registration-actions > button.button,
    body.checkout-onepage-index .azb-registration-form .azb-registration-actions > .back-link,
    body.checkout-onepage-index .azb-registration-form .azb-registration-actions > .back-link > a {
        flex: none !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
    }

    body.customer-account-create .account-create .azb-registration-actions > button.button,
    body.customer-account-create .account-create .azb-registration-actions > .back-link {
        flex: none !important;
        width: 100% !important;
        height: 44px !important;
        min-height: 44px !important;
    }

    body.customer-account-create .account-create .azb-registration-actions > button.button {
        order: 1;
    }

    body.customer-account-create .account-create .azb-registration-actions > .back-link {
        order: 2;
    }

    body:not(.customer-account-loyalty) .my-account .pager {
        display: grid !important;
        grid-template-columns: 1fr !important;
        justify-content: center !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    body:not(.customer-account-loyalty) .my-account .pager .amount,
    body:not(.customer-account-loyalty) .my-account .pager .limiter,
    body:not(.customer-account-loyalty) .my-account .pager .pages {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        float: none !important;
        width: 100% !important;
        margin: 0 !important;
        text-align: center !important;
    }

    body:not(.customer-account-loyalty) .my-account .pager .amount,
    body:not(.customer-account-loyalty) .my-account .pager .limiter {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        min-width: 0 !important;
        white-space: normal !important;
    }

    body:not(.customer-account-loyalty) .my-account .addresses-list ol,
    body:not(.customer-account-loyalty) .my-account .order-info-box {
        grid-template-columns: 1fr !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table {
        display: block !important;
        margin-bottom: 16px !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table colgroup,
    body:not(.customer-account-loyalty) .my-account .data-table col,
    body:not(.customer-account-loyalty) .my-account .data-table thead {
        display: none !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table tbody {
        display: block !important;
        margin: 0 0 14px !important;
        background: transparent !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table tbody > tr {
        box-sizing: border-box !important;
        display: block !important;
        width: 100% !important;
        margin: 0 0 14px !important;
        padding: 8px 14px !important;
        background: var(--azb-deskin-card) !important;
        border: 0 !important;
        border-radius: 12px !important;
        box-shadow: none !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table tbody:nth-of-type(even) > tr,
    body:not(.customer-account-loyalty) .my-account .data-table tbody > tr:nth-child(even) {
        background: #fff !important;
        box-shadow: 0 0 0 1px #f2edea !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table tbody > tr > td {
        box-sizing: border-box !important;
        display: grid !important;
        grid-template-columns: minmax(100px, 38%) minmax(0, 1fr) !important;
        align-items: start !important;
        gap: 10px !important;
        width: 100% !important;
        padding: 9px 0 !important;
        text-align: left !important;
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid #f2edea !important;
        overflow-wrap: anywhere !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table tbody > tr > td:last-child {
        display: flex !important;
        justify-content: flex-end !important;
        border-bottom: 0 !important;
    }

    body:not(.customer-account-loyalty) .my-account .data-table .cell-label {
        display: inline-block !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        color: var(--azb-deskin-muted) !important;
        font-size: 12px !important;
        font-weight: 700 !important;
    }

    body.sales-order-view .my-account .order-items .data-table tbody > tr > td:first-child {
        display: block !important;
        padding-top: 10px !important;
    }

    body.sales-order-view .my-account .order-items .data-table tbody > tr > td:last-child {
        display: block !important;
        text-align: right !important;
    }

    body.sales-order-view .my-account .order-items .data-table tfoot,
    body.sales-order-view .my-account .order-items .data-table tfoot > tr {
        display: block !important;
        width: 100% !important;
    }

    body.sales-order-view .my-account .order-items .data-table {
        display: flex !important;
        flex-direction: column !important;
    }

    body.sales-order-view .my-account .order-items .data-table > tbody {
        order: 1 !important;
    }

    body.sales-order-view .my-account .order-items .data-table > tfoot {
        order: 2 !important;
    }

    body.sales-order-view .my-account .order-items .data-table tfoot > tr {
        box-sizing: border-box !important;
        padding: 0 14px !important;
        background: #fff !important;
    }

    body.sales-order-view .my-account .order-items .data-table tfoot td {
        box-sizing: border-box !important;
        display: inline-block !important;
        width: 50% !important;
        padding: 8px 0 !important;
        text-align: right !important;
        background: #fff !important;
        border: 0 !important;
        border-bottom: 1px solid #f2edea !important;
    }
}

/* Account edit: reuse the registration rhythm without changing its form contract. */
body.customer-account-edit #form-validate > .fieldset:first-of-type > .form-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-bottom: 0 !important;
}

body.customer-account-edit #form-validate > .fieldset:first-of-type > .form-list > li,
body.customer-account-edit #form-validate > .fieldset:first-of-type > .form-list > #professionaldata,
body.customer-account-edit #form-validate > .fieldset:first-of-type > .form-list > #professionaldata > li {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body.customer-account-edit #form-validate > .fieldset:first-of-type > .form-list > #professionaldata > li + li {
    margin-top: 16px !important;
}

body.customer-account-edit #form-validate .azb-account-type-options {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    gap: 16px !important;
    min-width: 0 !important;
}

body.customer-account-edit #form-validate .azb-account-type-options .azb-choice {
    display: inline-flex !important;
    flex: 0 1 auto !important;
    align-items: center !important;
    min-width: 0 !important;
    height: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

body.customer-account-edit #form-validate .customer-dob {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 12px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 474px !important;
    min-width: 0 !important;
    height: auto !important;
}

body.customer-account-edit #form-validate .customer-dob > .dob-day,
body.customer-account-edit #form-validate .customer-dob > .dob-month,
body.customer-account-edit #form-validate .customer-dob > .dob-year {
    float: none !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body.customer-account-edit #form-validate .customer-dob > .dob-day > input,
body.customer-account-edit #form-validate .customer-dob > .dob-month > input,
body.customer-account-edit #form-validate .customer-dob > .dob-year > input {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
}

body.customer-account-edit #form-validate #change_password {
    align-self: center !important;
}

body.customer-account-edit #form-validate #change_password + label {
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    margin-bottom: 0 !important;
}

body.customer-account-edit #form-validate #change_password:focus-visible {
    outline-offset: 2px !important;
}

body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list,
body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list > li.fields {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
}

body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list {
    margin-bottom: 0 !important;
}

body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list > li,
body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list > li.fields > .field {
    float: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 560px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.customer-account-edit #form-validate > .fieldset + .fieldset .input-box,
body.customer-account-edit #form-validate > .fieldset + .fieldset input.input-text {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 560px !important;
    min-width: 0 !important;
}

body.customer-account-edit #form-validate #current_password,
body.customer-account-edit #form-validate #password,
body.customer-account-edit #form-validate #confirmation {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

body.customer-account-edit #form-validate input.input-text {
    padding-left: 12px !important;
    padding-right: 12px !important;
}

body.customer-account-edit #form-validate label[for="confirmation"] {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 560px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

@media only screen and (max-width: 767px) {
    body.customer-account-edit #form-validate .azb-account-type-options {
        gap: 8px !important;
    }

    body.customer-account-edit #form-validate .azb-account-type-options .azb-choice {
        gap: 5px !important;
        font-size: 13px !important;
    }

    body.customer-account-edit #form-validate .azb-account-type-options input.champ-radio-checkbox {
        flex: 0 0 16px !important;
        width: 16px !important;
        min-width: 16px !important;
        height: 16px !important;
        min-height: 16px !important;
    }

    body.customer-account-edit #form-validate label[for="confirmation"] {
        font-size: clamp(11px, 3.75vw, 14px) !important;
    }

    body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list > li,
    body.customer-account-edit #form-validate > .fieldset + .fieldset > .form-list > li.fields > .field,
    body.customer-account-edit #form-validate > .fieldset + .fieldset .input-box,
    body.customer-account-edit #form-validate > .fieldset + .fieldset input.input-text,
    body.customer-account-edit #form-validate label[for="confirmation"] {
        max-width: none !important;
    }
}

@media only screen and (max-width: 300px) {
    body.customer-account-edit #form-validate .azb-account-type-options {
        gap: 4px !important;
    }

    body.customer-account-edit #form-validate .azb-account-type-options .azb-choice {
        gap: 3px !important;
        font-size: 11px !important;
    }

    body.customer-account-edit #form-validate label[for="confirmation"] {
        letter-spacing: -.05px !important;
    }
}

@media only screen and (max-width: 280px) {
    body.customer-account-edit #form-validate label[for="confirmation"] {
        font-size: 10.75px !important;
    }
}

/* Compact registration rhythm and keep the three DOB controls in one safe row. */
body.customer-account-create .azb-registration-form .form-list,
body.checkout-onepage-index .azb-registration-form .form-list {
    row-gap: 16px !important;
}

body.customer-account-create .azb-registration-form .azb-account-type,
body.checkout-onepage-index .azb-registration-form .azb-account-type {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body.customer-account-create .azb-registration-form .azb-account-type__options,
body.checkout-onepage-index .azb-registration-form .azb-account-type__options {
    column-gap: 16px !important;
}

body.customer-account-create .azb-registration-form .azb-registration-dob,
body.checkout-onepage-index .azb-registration-form .azb-registration-dob {
    margin: 0 !important;
}

body.customer-account-create .azb-registration-form .customer-dob,
body.checkout-onepage-index .azb-registration-form .customer-dob {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 12px !important;
    width: 100% !important;
    max-width: 474px !important;
    min-width: 0 !important;
    height: auto !important;
}

body.customer-account-create .azb-registration-form .customer-dob > .dob-day,
body.customer-account-create .azb-registration-form .customer-dob > .dob-month,
body.customer-account-create .azb-registration-form .customer-dob > .dob-year,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-day,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-month,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-year {
    box-sizing: border-box !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body.customer-account-create .azb-registration-form .customer-dob > .dob-day > input,
body.customer-account-create .azb-registration-form .customer-dob > .dob-month > input,
body.customer-account-create .azb-registration-form .customer-dob > .dob-year > input,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-day > input,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-month > input,
body.checkout-onepage-index .azb-registration-form .customer-dob > .dob-year > input {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
}

@media only screen and (max-width: 767px) {
    body.customer-account-login .account-login .new-users .content > p:last-of-type {
        margin-bottom: 0 !important;
    }

    body.customer-account-login .account-login .new-users > .buttons-set {
        margin-top: 16px !important;
    }
}

/* Keep the canonical newsletter checkbox and its label on the same axis. */
body.newsletter-manage-index .my-account #subscription + label {
    margin-bottom: 0 !important;
}

/* Authentication labels already carry a pink required marker. */
body.customer-account-login .account-login .azb-auth-required-note,
body.customer-account-login .account-login .registered-users .content > p.required,
body.checkout-onepage-index #opc-login #login-form .azb-auth-required-note {
    display: none !important;
}

body.customer-account-login .account-login label.required,
body.checkout-onepage-index #opc-login #login-form label.required {
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 0 !important;
}

body.customer-account-login .account-login label.required > em,
body.checkout-onepage-index #opc-login #login-form label.required > em {
    position: static !important;
    float: none !important;
    order: initial !important;
    margin: 0 0 0 4px !important;
    color: #de2666 !important;
}

/* Checkout registration radios reuse the standalone account-type control. */
body.checkout-onepage-index #account-create .azb-account-type__options input.champ-radio-checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;
    box-sizing: border-box !important;
    display: inline-block !important;
    flex: 0 0 20px !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
    background: #fff !important;
    border: 1px solid #aeb5ba !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

body.checkout-onepage-index #account-create .azb-account-type__options input.champ-radio-checkbox:checked {
    background: #de2666 !important;
    border-color: #de2666 !important;
    box-shadow: inset 0 0 0 4px #fff !important;
}

body.checkout-onepage-index #account-create .azb-account-type__options input.champ-radio-checkbox:checked::after {
    content: none !important;
}

body.checkout-onepage-index #account-create .azb-registration-actions > .back-link > a {
    border: 1px solid #de2666 !important;
    background: #fff !important;
    color: #de2666 !important;
}

@media only screen and (max-width: 767px) {
    body.checkout-onepage-index #opc-login #col2-set > .col-1 .buttons-set button.button,
    body.checkout-onepage-index #opc-login #col2-set > .col-2 #login-form .buttons-set button.button,
    body.checkout-onepage-index #account-create .azb-registration-actions > .back-link,
    body.checkout-onepage-index #account-create .azb-registration-actions > .back-link > a {
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    body.checkout-onepage-index #opc-login.active #checkout-step-login #col2-set2 > .col-1 > .buttons-set,
    body.checkout-onepage-index #opc-login.active #checkout-step-login #col2-set2 > .col-1 > .buttons-set > button.button {
        box-sizing: border-box !important;
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}
