.mdb2b-private-notice {
width: 100%;
background: #102b46;
color: #fff;
font-size: 14px;
line-height: 1.4;
position: relative;
z-index: 50;
}

.mdb2b-private-notice__inner {
width: min(1200px, calc(100% - 32px));
margin: 0 auto;
padding: 9px 0;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
text-align: center;
}

.mdb2b-private-notice__link {
color: #fff;
font-weight: 700;
text-decoration: underline;
text-underline-offset: 3px;
}

.mdb2b-private-notice__link:hover,
.mdb2b-private-notice__link:focus {
color: #fff;
text-decoration-thickness: 2px;
}

.mdb2b-price-gate {
display: inline-block;
max-width: 100%;
font-size: 14px;
font-weight: 600;
line-height: 1.45;
padding: 9px 12px;
border: 1px solid rgba(16, 43, 70, .18);
border-left: 4px solid #102b46;
border-radius: 8px;
background: #f7f9fb;
color: #102b46;
}

.mdb2b-single-cta {
margin-top: 18px;
padding: 18px;
border: 1px solid rgba(16, 43, 70, .14);
border-radius: 12px;
background: #fff;
}

.mdb2b-single-cta p {
margin: 0 0 12px;
}

.mdb2b-pending-label {
display: inline-block;
padding: 10px 14px;
border-radius: 8px;
background: #f4f4f4;
color: #333;
font-weight: 600;
}

.mdb2b-catalog-mode form.cart,
.mdb2b-catalog-mode .single_add_to_cart_button,
.mdb2b-catalog-mode .quantity,
.mdb2b-catalog-mode .ast-site-header-cart,
.mdb2b-catalog-mode .site-header-cart,
.mdb2b-catalog-mode .wc-block-mini-cart {
display: none !important;
}

@media (max-width: 600px) {
.mdb2b-private-notice__inner {
flex-direction: column;
gap: 3px;
padding: 8px 0;
}
}

/* MDB2B 0.1.1: pulizia interfaccia catalogo */
.mdb2b-catalog-mode .ast-site-header-cart,
.mdb2b-catalog-mode .ast-site-header-cart-li,
.mdb2b-catalog-mode .ast-header-woo-cart,
.mdb2b-catalog-mode [data-section="section-header-woo-cart"],
.mdb2b-catalog-mode .wc-block-mini-cart,
.mdb2b-catalog-mode .widget_shopping_cart {
display: none !important;
}

/*
 * Astra mostra un'icona carrello anche quando il collegamento
 * porta semplicemente alla pagina del prodotto.
 */
.mdb2b-catalog-mode .ast-select-options-trigger,
.mdb2b-catalog-mode .ast-on-card-button.product_type_variable,
.mdb2b-catalog-mode .ast-on-card-button.product_type_simple {
display: none !important;
}

/*
 * Bollini derivati dalle offerte del vecchio negozio B2C.
 */
.mdb2b-catalog-mode .onsale,
.mdb2b-catalog-mode .ast-onsale-card {
display: none !important;
}

/* MDB2B 0.2.0: registrazione aziendale */
.mdb2b-registration-wrap {
max-width: 960px;
margin: 40px auto;
padding: 32px;
border: 1px solid rgba(16, 43, 70, .12);
border-radius: 18px;
background: #fff;
box-shadow: 0 15px 45px rgba(16, 43, 70, .07);
}

.mdb2b-registration-intro {
margin-bottom: 28px;
}

.mdb2b-registration-intro h1 {
margin: 4px 0 10px;
}

.mdb2b-kicker {
margin: 0;
color: #102b46;
font-size: 13px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
}

.mdb2b-form-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 18px 22px;
}

.mdb2b-form-grid .form-row {
width: 100%;
margin: 0;
padding: 0;
}

.mdb2b-form-grid .mdb2b-wide {
grid-column: 1 / -1;
}

.mdb2b-registration-form label {
font-weight: 600;
color: #102b46;
}

.mdb2b-registration-form input[type="text"],
.mdb2b-registration-form input[type="email"],
.mdb2b-registration-form input[type="tel"],
.mdb2b-registration-form input[type="password"],
.mdb2b-registration-form select,
.mdb2b-registration-form textarea {
width: 100%;
min-height: 48px;
margin-top: 6px;
border: 1px solid rgba(16, 43, 70, .22);
border-radius: 8px;
background: #fff;
}

.mdb2b-registration-form textarea {
min-height: 120px;
padding: 12px;
}

.mdb2b-registration-form input:focus,
.mdb2b-registration-form select:focus,
.mdb2b-registration-form textarea:focus {
border-color: #102b46;
box-shadow: 0 0 0 2px rgba(16, 43, 70, .10);
outline: none;
}

.mdb2b-privacy {
display: flex;
align-items: flex-start;
gap: 9px;
margin: 24px 0 18px;
font-weight: 500 !important;
}

.mdb2b-privacy input {
margin-top: 5px;
}

.mdb2b-submit {
min-height: 48px;
padding: 11px 22px !important;
}

.mdb2b-errors {
margin: 0 0 24px;
padding: 16px 18px;
border: 1px solid #ba3333;
border-left-width: 5px;
border-radius: 8px;
background: #fff7f7;
color: #7e1e1e;
}

.mdb2b-errors ul {
margin: 8px 0 0 20px;
}

.mdb2b-status-box,
.mdb2b-login-registration {
margin: 18px 0;
padding: 18px;
border: 1px solid rgba(16, 43, 70, .16);
border-left: 5px solid #102b46;
border-radius: 10px;
background: #f7f9fb;
}

.mdb2b-status-box h2 {
margin-top: 0;
}

.mdb2b-login-link {
margin-top: 22px;
text-align: center;
}

.mdb2b-hp {
position: absolute !important;
left: -10000px !important;
width: 1px !important;
height: 1px !important;
overflow: hidden !important;
}

@media (max-width: 700px) {
.mdb2b-registration-wrap {
margin: 20px auto;
padding: 20px;
border-radius: 12px;
}

.mdb2b-form-grid {
grid-template-columns: 1fr;
}

.mdb2b-form-grid .mdb2b-wide {
grid-column: auto;
}
}

/* MDB2B 0.3.1: prezzo scheda prodotto */
.mdb2b-approved-price {
margin: 0 0 22px;
padding: 17px 19px;
border: 1px solid rgba(16, 43, 70, .16);
border-left: 5px solid #102b46;
border-radius: 10px;
background: #f7f9fb;
}

.mdb2b-approved-price__label {
display: block;
margin-bottom: 4px;
color: #102b46;
font-size: 12px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
}

.mdb2b-approved-price__value {
margin: 0 !important;
font-size: 26px;
font-weight: 700;
line-height: 1.25;
}

.mdb2b-approved-price__value del {
margin-right: 8px;
opacity: .65;
font-size: .75em;
}

.mdb2b-approved-price__value ins {
text-decoration: none;
}

/* MDB2B 0.3.2: Turnstile registrazione */
.mdb2b-turnstile {
grid-column: 1 / -1;
margin: 22px 0 18px;
}

.mdb2b-turnstile .cf-turnstile {
max-width: 100%;
}

.mdb2b-turnstile-unavailable {
margin: 0;
padding: 13px 15px;
border: 1px solid #ba3333;
border-radius: 8px;
background: #fff7f7;
color: #7e1e1e;
}

@media (max-width: 400px) {
.mdb2b-turnstile {
overflow-x: auto;
}
}

/* MDB2B 0.4.0: registrazione professionale */
.mdb2b-registration-wrap {
--mdb2b-accent: var(--ast-global-color-0, #b48a4c);
--mdb2b-accent-dark: var(--ast-global-color-1, #826131);
--mdb2b-text: var(--ast-global-color-2, #20272e);
--mdb2b-muted: var(--ast-global-color-3, #65707a);
--mdb2b-surface: var(--ast-global-color-5, #f6f4ef);
--mdb2b-surface-light: var(--ast-global-color-4, #ffffff);
--mdb2b-border: rgba(32, 39, 46, .14);
--mdb2b-shadow: 0 18px 55px rgba(24, 31, 38, .09);

width: min(100%, 1120px);
margin: 34px auto 70px;
color: var(--mdb2b-text);
}

.mdb2b-registration-hero {
display: flex;
align-items: center;
justify-content: space-between;
gap: 36px;
margin-bottom: 20px;
padding: clamp(28px, 5vw, 54px);
overflow: hidden;
border-radius: 20px;
background:
linear-gradient(
135deg,
var(--mdb2b-text),
color-mix(
in srgb,
var(--mdb2b-text) 82%,
var(--mdb2b-accent)
)
);
box-shadow: var(--mdb2b-shadow);
color: #fff;
}

.mdb2b-registration-hero__content {
max-width: 720px;
}

.mdb2b-registration-hero .mdb2b-kicker {
margin: 0 0 10px;
color: var(--mdb2b-accent);
font-size: 13px;
font-weight: 800;
letter-spacing: .13em;
text-transform: uppercase;
}

.mdb2b-registration-hero h1 {
margin: 0 0 16px;
color: #fff;
font-size: clamp(32px, 5vw, 52px);
line-height: 1.06;
}

.mdb2b-registration-hero p {
margin: 0;
color: rgba(255, 255, 255, .82);
font-size: 17px;
line-height: 1.7;
}

.mdb2b-registration-hero__badge {
flex: 0 0 auto;
min-width: 190px;
padding: 23px;
border: 1px solid rgba(255, 255, 255, .18);
border-radius: 16px;
background: rgba(255, 255, 255, .08);
backdrop-filter: blur(7px);
}

.mdb2b-registration-hero__badge span,
.mdb2b-registration-hero__badge strong {
display: block;
}

.mdb2b-registration-hero__badge span {
margin-bottom: 4px;
color: rgba(255, 255, 255, .72);
font-size: 12px;
letter-spacing: .12em;
text-transform: uppercase;
}

.mdb2b-registration-hero__badge strong {
color: #fff;
font-size: 21px;
}

.mdb2b-login-card {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
margin-bottom: 26px;
padding: 18px 22px;
border: 1px solid var(--mdb2b-border);
border-radius: 14px;
background: var(--mdb2b-surface);
}

.mdb2b-login-card > div {
display: flex;
flex-wrap: wrap;
gap: 4px 9px;
}

.mdb2b-login-card strong {
color: var(--mdb2b-text);
}

.mdb2b-login-card span {
color: var(--mdb2b-muted);
}

.mdb2b-login-card__button {
flex: 0 0 auto;
padding: 9px 18px;
border: 1px solid var(--mdb2b-accent);
border-radius: 8px;
color: var(--mdb2b-accent-dark);
font-weight: 700;
text-decoration: none;
transition:
background-color .2s ease,
color .2s ease;
}

.mdb2b-login-card__button:hover,
.mdb2b-login-card__button:focus {
background: var(--mdb2b-accent);
color: #fff;
}

.mdb2b-registration-form {
padding: clamp(22px, 4vw, 42px);
border: 1px solid var(--mdb2b-border);
border-radius: 20px;
background: var(--mdb2b-surface-light);
box-shadow: var(--mdb2b-shadow);
}

.mdb2b-form-section {
padding: 0 0 38px;
}

.mdb2b-form-section + .mdb2b-form-section {
padding-top: 38px;
border-top: 1px solid var(--mdb2b-border);
}

.mdb2b-form-section:last-child {
padding-bottom: 0;
}

.mdb2b-form-section__header {
display: flex;
align-items: flex-start;
gap: 15px;
margin-bottom: 25px;
}

.mdb2b-section-number {
display: inline-flex;
flex: 0 0 38px;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: 50%;
background: var(--mdb2b-accent);
color: #fff;
font-weight: 800;
}

.mdb2b-form-section__header h2 {
margin: 0 0 4px;
color: var(--mdb2b-text);
font-size: 24px;
line-height: 1.25;
}

.mdb2b-form-section__header p {
margin: 0;
color: var(--mdb2b-muted);
font-size: 14px;
}

.mdb2b-form-grid {
display: grid;
grid-template-columns:
repeat(2, minmax(0, 1fr));
gap: 20px 22px;
}

.mdb2b-field {
min-width: 0;
}

.mdb2b-field--wide {
grid-column: 1 / -1;
}

.mdb2b-field > label {
display: block;
margin-bottom: 7px;
color: var(--mdb2b-text);
font-size: 14px;
font-weight: 700;
}

.mdb2b-required {
color: #c62828;
font-weight: 800;
}

.mdb2b-optional {
color: var(--mdb2b-muted);
font-size: 12px;
font-weight: 400;
}

.mdb2b-control {
display: block;
width: 100%;
min-height: 48px;
margin: 0;
padding: 11px 13px;
border: 1px solid var(--mdb2b-border);
border-radius: 9px;
background: #fff;
color: var(--mdb2b-text);
font: inherit;
line-height: 1.35;
transition:
border-color .2s ease,
box-shadow .2s ease,
background-color .2s ease;
}

textarea.mdb2b-control {
min-height: 130px;
resize: vertical;
}

.mdb2b-control:hover {
border-color:
color-mix(
in srgb,
var(--mdb2b-accent) 55%,
var(--mdb2b-border)
);
}

.mdb2b-control:focus {
outline: 0;
border-color: var(--mdb2b-accent);
box-shadow:
0 0 0 3px
color-mix(
in srgb,
var(--mdb2b-accent) 18%,
transparent
);
}

.mdb2b-control:invalid:not(:placeholder-shown) {
border-color: rgba(198, 40, 40, .65);
}

.mdb2b-field-hint {
display: block;
margin-top: 6px;
color: var(--mdb2b-muted);
font-size: 12px;
line-height: 1.45;
}

.mdb2b-password-control {
position: relative;
}

.mdb2b-password-control .mdb2b-control {
padding-right: 51px;
}

.mdb2b-password-control input::-ms-reveal,
.mdb2b-password-control input::-ms-clear {
display: none;
}

.mdb2b-password-toggle {
position: absolute;
top: 50%;
right: 8px;
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
padding: 0;
transform: translateY(-50%);
border: 0;
border-radius: 7px;
background: transparent;
color: var(--mdb2b-muted);
cursor: pointer;
}

.mdb2b-password-toggle:hover,
.mdb2b-password-toggle:focus {
background: var(--mdb2b-surface);
color: var(--mdb2b-text);
}

.mdb2b-eye {
display: inline-flex;
width: 21px;
height: 21px;
}

.mdb2b-eye svg {
width: 100%;
height: 100%;
fill: currentColor;
}

.mdb2b-eye--hide {
display: none;
}

.mdb2b-password-toggle[aria-pressed="true"]
.mdb2b-eye--show {
display: none;
}

.mdb2b-password-toggle[aria-pressed="true"]
.mdb2b-eye--hide {
display: inline-flex;
}

.mdb2b-product-interests {
margin-top: 26px;
padding: 22px;
border: 1px solid var(--mdb2b-border);
border-radius: 14px;
background: var(--mdb2b-surface);
}

.mdb2b-product-interests__heading {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 18px;
margin-bottom: 19px;
}

.mdb2b-product-interests__heading h3 {
margin: 0 0 5px;
color: var(--mdb2b-text);
font-size: 18px;
}

.mdb2b-product-interests__heading p {
max-width: 720px;
margin: 0;
color: var(--mdb2b-muted);
font-size: 13px;
line-height: 1.55;
}

.mdb2b-product-interests__heading > span {
flex: 0 0 auto;
padding: 4px 9px;
border-radius: 999px;
background: #fff;
color: var(--mdb2b-muted);
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
}

.mdb2b-interest-groups {
display: grid;
grid-template-columns:
repeat(2, minmax(0, 1fr));
gap: 16px;
}

.mdb2b-interest-group {
min-width: 0;
margin: 0;
padding: 17px;
border: 1px solid var(--mdb2b-border);
border-radius: 11px;
background: #fff;
}

.mdb2b-interest-group legend {
padding: 0 7px;
color: var(--mdb2b-accent-dark);
font-size: 14px;
font-weight: 800;
}

.mdb2b-interest-options {
display: grid;
gap: 9px;
}

.mdb2b-interest-option {
display: flex;
align-items: flex-start;
gap: 9px;
margin: 0;
padding: 8px 9px;
border-radius: 7px;
color: var(--mdb2b-text);
cursor: pointer;
transition: background-color .2s ease;
}

.mdb2b-interest-option:hover {
background: var(--mdb2b-surface);
}

.mdb2b-interest-option input {
flex: 0 0 auto;
width: 17px;
height: 17px;
margin: 2px 0 0;
accent-color: var(--mdb2b-accent);
}

.mdb2b-interest-option span {
font-size: 13px;
line-height: 1.45;
}

.mdb2b-form-grid--notes {
margin-top: 22px;
}

.mdb2b-privacy {
display: flex;
align-items: flex-start;
gap: 11px;
margin: 24px 0 8px;
padding: 15px 17px;
border: 1px solid var(--mdb2b-border);
border-radius: 10px;
background: var(--mdb2b-surface);
color: var(--mdb2b-text);
font-size: 14px;
line-height: 1.55;
cursor: pointer;
}

.mdb2b-privacy input {
flex: 0 0 auto;
width: 18px;
height: 18px;
margin: 2px 0 0;
accent-color: var(--mdb2b-accent);
}

.mdb2b-privacy a {
color: var(--mdb2b-accent-dark);
font-weight: 700;
text-decoration: underline;
}

.mdb2b-turnstile {
margin: 22px 0 18px;
}

.mdb2b-submit-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
margin-top: 18px;
}

.mdb2b-submit {
min-height: 50px;
padding: 12px 25px !important;
border-radius: 9px !important;
background: var(--mdb2b-accent) !important;
color: #fff !important;
font-weight: 800 !important;
}

.mdb2b-submit:hover,
.mdb2b-submit:focus {
background: var(--mdb2b-accent-dark) !important;
}

.mdb2b-submit-row p {
margin: 0;
color: var(--mdb2b-muted);
font-size: 12px;
}

.mdb2b-errors {
margin: 0 0 24px;
padding: 17px 20px;
border: 1px solid rgba(198, 40, 40, .3);
border-left: 5px solid #c62828;
border-radius: 10px;
background: #fff7f7;
color: #7b1d1d;
}

.mdb2b-errors strong {
display: block;
margin-bottom: 7px;
}

.mdb2b-errors ul {
margin: 0 0 0 20px;
}

.mdb2b-hp {
position: absolute !important;
left: -9999px !important;
width: 1px !important;
height: 1px !important;
overflow: hidden !important;
}

@media (max-width: 820px) {
.mdb2b-registration-hero {
align-items: flex-start;
flex-direction: column;
}

.mdb2b-registration-hero__badge {
min-width: 0;
width: 100%;
}

.mdb2b-form-grid,
.mdb2b-interest-groups {
grid-template-columns: 1fr;
}

.mdb2b-field--wide {
grid-column: auto;
}
}

@media (max-width: 600px) {
.mdb2b-registration-wrap {
margin-top: 20px;
}

.mdb2b-registration-hero {
padding: 25px 21px;
border-radius: 14px;
}

.mdb2b-registration-form {
padding: 23px 17px;
border-radius: 14px;
}

.mdb2b-login-card {
align-items: stretch;
flex-direction: column;
}

.mdb2b-login-card__button {
text-align: center;
}

.mdb2b-form-section__header {
gap: 11px;
}

.mdb2b-section-number {
flex-basis: 33px;
width: 33px;
height: 33px;
}

.mdb2b-form-section__header h2 {
font-size: 20px;
}

.mdb2b-product-interests {
padding: 17px 13px;
}

.mdb2b-product-interests__heading,
.mdb2b-submit-row {
align-items: stretch;
flex-direction: column;
}

.mdb2b-submit {
width: 100%;
}

.mdb2b-turnstile {
overflow-x: auto;
}
}

/* MDB2B 0.4.1: font globale e categorie WooCommerce */
.mdb2b-registration-wrap {
--mdb2b-font-body:
var(
--e-global-typography-text-font-family,
var(
--ast-body-font-family,
inherit
)
);

--mdb2b-font-heading:
var(
--e-global-typography-primary-font-family,
var(
--ast-headings-font-family,
var(--mdb2b-font-body)
)
);

font-family: var(--mdb2b-font-body);
}

.mdb2b-registration-wrap input,
.mdb2b-registration-wrap select,
.mdb2b-registration-wrap textarea,
.mdb2b-registration-wrap button,
.mdb2b-registration-wrap label,
.mdb2b-registration-wrap small,
.mdb2b-registration-wrap p,
.mdb2b-registration-wrap span,
.mdb2b-registration-wrap a {
font-family: var(--mdb2b-font-body);
}

.mdb2b-registration-wrap h1,
.mdb2b-registration-wrap h2,
.mdb2b-registration-wrap h3,
.mdb2b-registration-wrap h4,
.mdb2b-registration-hero__badge strong,
.mdb2b-login-card strong,
.mdb2b-submit {
font-family: var(--mdb2b-font-heading);
}

.mdb2b-registration-hero h1 {
font-weight:
var(
--e-global-typography-primary-font-weight,
700
);
}

.mdb2b-form-section__header h2,
.mdb2b-product-interests__heading h3,
.mdb2b-interest-category h4 {
font-weight:
var(
--e-global-typography-primary-font-weight,
700
);
}

/*
 * Le categorie non sono più racchiuse
 * in riquadri separati.
 */
.mdb2b-interest-groups,
.mdb2b-interest-categories {
display: grid;
grid-template-columns:
repeat(2, minmax(0, 1fr));
gap: 30px 44px;
}

.mdb2b-interest-category {
min-width: 0;
margin: 0;
padding: 0;
border: 0;
background: transparent;
}

.mdb2b-interest-category h4 {
margin: 0 0 13px;
padding: 0;
color: var(--mdb2b-accent-dark);
font-size: 16px;
line-height: 1.3;
}

.mdb2b-interest-category .mdb2b-interest-options {
display: grid;
gap: 5px;
}

.mdb2b-interest-category .mdb2b-interest-option {
padding: 7px 5px;
border: 0;
border-radius: 6px;
background: transparent;
}

.mdb2b-interest-category .mdb2b-interest-option:hover {
background:
color-mix(
in srgb,
var(--mdb2b-accent) 8%,
transparent
);
}

.mdb2b-interest-category
.mdb2b-interest-option:has(input:checked) {
background:
color-mix(
in srgb,
var(--mdb2b-accent) 13%,
transparent
);
}

.mdb2b-interest-category
.mdb2b-interest-option input:checked + span {
color: var(--mdb2b-accent-dark);
font-weight: 700;
}

/*
 * Neutralizza le vecchie card fieldset 0.4.0
 * nel caso restino regole in cache.
 */
.mdb2b-interest-group {
margin: 0;
padding: 0;
border: 0;
background: transparent;
}

@media (max-width: 820px) {
.mdb2b-interest-categories {
grid-template-columns: 1fr;
gap: 25px;
}
}

/* MDB2B 0.4.2: recupero account Partita IVA duplicata */
.mdb2b-duplicate-vat-message {
display: block;
line-height: 1.6;
}

.mdb2b-duplicate-vat-message strong {
font-weight: 700;
}

.mdb2b-duplicate-vat-action,
.mdb2b-duplicate-vat-support {
display: block;
margin-top: 9px;
}

.mdb2b-recovery-link {
display: inline;
color: var(--mdb2b-accent-dark);
font-weight: 700;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}

.mdb2b-recovery-link:hover,
.mdb2b-recovery-link:focus {
color: var(--mdb2b-accent);
text-decoration-thickness: 2px;
}

/* MDB2B 0.4.5: error anchor and neutral recovery link */

#mdb2b-registration-errors {
    scroll-margin-top: 120px;
}

#mdb2b-registration-errors:focus {
    outline: none;
}

.mdb2b-errors .mdb2b-recovery-link,
.mdb2b-errors .mdb2b-recovery-link:visited {
    color: inherit;
    text-decoration-color: currentColor;
}

.mdb2b-errors .mdb2b-recovery-link:hover,
.mdb2b-errors .mdb2b-recovery-link:focus {
    color: inherit;
    opacity: 0.78;
    text-decoration-thickness: 2px;
}

/* MDB2B 0.4.6: standard institutional page layout */

body.mdb2b-standard-page .site-content {
    background: #ffffff;
}

body.mdb2b-standard-page .site-content > .ast-container {
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}

body.mdb2b-standard-page #primary {
    width: 100%;
    max-width: none;
    margin: 0;
}

body.mdb2b-standard-page #primary > main {
    width: 100%;
}

body.mdb2b-standard-page article.page {
    margin: 0;
    padding: 0;
    background: transparent;
    box-shadow: none;
}

body.mdb2b-standard-page .entry-content {
    width: 100%;
}

/* Area Account */

body.woocommerce-account.mdb2b-standard-page .woocommerce {
    width: min(1200px, calc(100% - 48px));
    margin-left: auto;
    margin-right: auto;
    padding-top: 58px;
    padding-bottom: 80px;
}

.mdb2b-account-heading {
    width: min(1200px, calc(100% - 48px));
    margin: 58px auto 34px;
    text-align: center;
}

.mdb2b-account-heading h1 {
    margin: 0;
    font-size: clamp(34px, 4.2vw, 52px);
    line-height: 1.15;
}

.mdb2b-account-heading p {
    max-width: 720px;
    margin: 12px auto 0;
    font-size: 16px;
    line-height: 1.6;
}

body.woocommerce-account
.mdb2b-account-heading + .woocommerce {
    padding-top: 0;
}

@media (max-width: 768px) {

    body.woocommerce-account.mdb2b-standard-page .woocommerce {
        width: calc(100% - 32px);
        padding-top: 36px;
        padding-bottom: 56px;
    }

    .mdb2b-account-heading {
        width: calc(100% - 32px);
        margin-top: 36px;
        margin-bottom: 25px;
    }

    .mdb2b-account-heading p {
        font-size: 15px;
    }
}

/* MDB2B 0.7.0: sales area */

.mdb2b-sales-area,
.mdb2b-sales-access {
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
    padding: 58px 0 84px;
}

.mdb2b-sales-hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    margin-bottom: 32px;
}

.mdb2b-sales-eyebrow,
.mdb2b-sales-section-head span {
    display: block;
    margin-bottom: 7px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .65;
}

.mdb2b-sales-hero h1 {
    margin: 0 0 8px;
    font-size: clamp(34px, 4vw, 52px);
    line-height: 1.1;
}

.mdb2b-sales-role {
    padding: 8px 14px;
    border: 1px solid rgba(0, 0, 0, .14);
    border-radius: 999px;
    white-space: nowrap;
    font-weight: 600;
}

.mdb2b-sales-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 24px;
}

.mdb2b-sales-card {
    padding: 20px;
    border: 1px solid rgba(0, 0, 0, .12);
    background: #fff;
}

.mdb2b-sales-card > strong {
    display: block;
    margin-bottom: 7px;
    font-size: 30px;
    line-height: 1;
}

.mdb2b-sales-card > strong.mdb2b-sales-card-text {
    font-size: 18px;
    line-height: 1.25;
}

.mdb2b-sales-card > span {
    font-size: 14px;
    opacity: .7;
}

.mdb2b-sales-notice {
    display: flex;
    gap: 9px 20px;
    flex-wrap: wrap;
    padding: 14px 18px;
    margin-bottom: 34px;
    border-left: 4px solid currentColor;
    background: rgba(0, 0, 0, .035);
}

.mdb2b-sales-section {
    margin-top: 42px;
}

.mdb2b-sales-section-head {
    margin-bottom: 15px;
}

.mdb2b-sales-section-head h2 {
    margin: 0;
    font-size: 28px;
}

.mdb2b-sales-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(0, 0, 0, .12);
    background: #fff;
}

.mdb2b-sales-table {
    width: 100%;
    min-width: 940px;
    border-collapse: collapse;
}

.mdb2b-sales-table th,
.mdb2b-sales-table td {
    padding: 14px 15px;
    border-bottom: 1px solid rgba(0, 0, 0, .09);
    text-align: left;
    vertical-align: top;
}

.mdb2b-sales-table th {
    font-size: 12px;
    text-transform: uppercase;
    background: rgba(0, 0, 0, .035);
}

.mdb2b-sales-table tbody tr:last-child td {
    border-bottom: 0;
}

.mdb2b-sales-empty {
    padding: 22px;
    border: 1px dashed rgba(0, 0, 0, .2);
}

.mdb2b-sales-team {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.mdb2b-sales-team-member {
    padding: 16px 18px;
    border: 1px solid rgba(0, 0, 0, .12);
    background: #fff;
}

.mdb2b-sales-team-member strong,
.mdb2b-sales-team-member span {
    display: block;
}

.mdb2b-sales-team-member span {
    margin-top: 5px;
    font-size: 14px;
    opacity: .68;
}

.mdb2b-sales-access {
    text-align: center;
}

.mdb2b-sales-button {
    display: inline-block;
    margin-top: 14px;
    padding: 11px 20px;
    border: 1px solid currentColor;
    text-decoration: none;
}

@media (max-width: 900px) {

    .mdb2b-sales-cards {
        grid-template-columns: repeat(2, 1fr);
    }

    .mdb2b-sales-team {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {

    .mdb2b-sales-area,
    .mdb2b-sales-access {
        width: calc(100% - 32px);
    }

    .mdb2b-sales-hero {
        display: block;
    }

    .mdb2b-sales-role {
        display: inline-block;
        margin-top: 18px;
    }

    .mdb2b-sales-cards,
    .mdb2b-sales-team {
        grid-template-columns: 1fr;
    }
}




/*
 * ==========================================================
 * MDB2B UI POLISH 0.12.1
 * Area Commerciale
 * ==========================================================
 */

.mdb2b-commission-report,
.mdb2b-sales-orders-panel,
.mdb2b-order-operations,
.mdb2b-settlement-panel {
    position: relative !important;
    box-sizing: border-box !important;
    margin-top: 54px !important;
    margin-bottom: 54px !important;
    padding: 30px !important;
    border: 1px solid #d9dde2 !important;
    border-top: 4px solid #c9b33f !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 24px rgba(24, 30, 36, .06) !important;
}

.mdb2b-commission-report::before,
.mdb2b-sales-orders-panel::before,
.mdb2b-order-operations::before,
.mdb2b-settlement-panel::before {
    content: "" !important;
    position: absolute !important;
    top: -30px !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: #e8ebee !important;
}

.mdb2b-sales-section {
    margin-top: 30px !important;
    margin-bottom: 34px !important;
    padding: 24px !important;
    border: 1px solid #dde1e5 !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 15px rgba(24, 30, 36, .035) !important;
}

.mdb2b-sales-section-head {
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #e4e7ea !important;
}

.mdb2b-report-heading,
.mdb2b-order-heading,
.mdb2b-ops-heading,
.mdb2b-settlement-heading {
    margin-bottom: 24px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #e1e4e8 !important;
}

.mdb2b-report-period,
.mdb2b-settlement-period {
    padding: 12px 14px !important;
    border: 1px solid #dfe3e6 !important;
    border-radius: 8px !important;
    background: #f6f7f7 !important;
}

.mdb2b-report-period button,
.mdb2b-settlement-period button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 92px !important;
    min-height: 40px !important;
    padding: 8px 15px !important;
    border: 1px solid #2f2f2f !important;
    border-radius: 5px !important;
    background: #2f2f2f !important;
    background-image: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-family: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-indent: 0 !important;
    text-shadow: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

.mdb2b-report-period button:hover,
.mdb2b-report-period button:focus,
.mdb2b-settlement-period button:hover,
.mdb2b-settlement-period button:focus {
    border-color: #111111 !important;
    background: #111111 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.mdb2b-report-global,
.mdb2b-settlement-personal,
.mdb2b-settlement-global,
.mdb2b-order-history {
    margin-top: 28px !important;
    padding: 22px !important;
    border: 1px solid #e1e4e7 !important;
    border-radius: 9px !important;
    background: #fafafa !important;
}

.mdb2b-report-global-head,
.mdb2b-settlement-global-head {
    margin-bottom: 20px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #e1e4e7 !important;
}

.mdb2b-ops-rule {
    margin: 18px 0 24px !important;
    padding: 16px 18px !important;
    border-left: 4px solid #c9b33f !important;
    border-radius: 7px !important;
    background: #f8f7ef !important;
}

.mdb2b-sales-empty,
.mdb2b-report-empty,
.mdb2b-order-empty,
.mdb2b-ops-empty,
.mdb2b-settlement-empty {
    padding: 17px 19px !important;
    border: 1px dashed #cbd1d6 !important;
    border-radius: 8px !important;
    background: #f8f9fa !important;
    color: #444444 !important;
}

.mdb2b-report-table-wrap,
.mdb2b-ops-table-wrap,
.mdb2b-settlement-table-wrap {
    margin-top: 14px !important;
}

.mdb2b-settlement-new,
.mdb2b-settlement-global-history {
    margin-top: 34px !important;
    padding-top: 26px !important;
    border-top: 1px solid #e2e5e8 !important;
}

.mdb2b-commission-report > :last-child,
.mdb2b-sales-orders-panel > :last-child,
.mdb2b-order-operations > :last-child,
.mdb2b-settlement-panel > :last-child {
    margin-bottom: 0 !important;
}

@media (max-width: 720px) {

    .mdb2b-commission-report,
    .mdb2b-sales-orders-panel,
    .mdb2b-order-operations,
    .mdb2b-settlement-panel {
        margin-top: 40px !important;
        margin-bottom: 40px !important;
        padding: 20px !important;
    }

    .mdb2b-sales-section {
        margin-top: 24px !important;
        margin-bottom: 28px !important;
        padding: 18px !important;
    }

    .mdb2b-report-period,
    .mdb2b-settlement-period {
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        width: 100% !important;
    }

    .mdb2b-report-period input,
    .mdb2b-report-period button,
    .mdb2b-settlement-period input,
    .mdb2b-settlement-period button {
        width: 100% !important;
    }

    .mdb2b-report-global,
    .mdb2b-settlement-personal,
    .mdb2b-settlement-global,
    .mdb2b-order-history {
        padding: 16px !important;
    }

    .mdb2b-commission-report::before,
    .mdb2b-sales-orders-panel::before,
    .mdb2b-order-operations::before,
    .mdb2b-settlement-panel::before {
        top: -22px !important;
    }
}

/*
 * ==========================================================
 * MDB2B UI POLISH 0.12.2
 * Micro spacing fix sui bordi interni
 * ==========================================================
 */

.mdb2b-report-global,
.mdb2b-settlement-personal,
.mdb2b-settlement-global,
.mdb2b-order-history {
    padding: 24px !important;
}

.mdb2b-report-personal-total,
.mdb2b-report-global-total,
.mdb2b-settlement-help,
.mdb2b-sales-empty,
.mdb2b-report-empty,
.mdb2b-order-empty,
.mdb2b-ops-empty,
.mdb2b-settlement-empty,
.mdb2b-ops-rule {
    margin-left: 4px !important;
    margin-right: 4px !important;
}

.mdb2b-report-table-wrap,
.mdb2b-ops-table-wrap,
.mdb2b-settlement-table-wrap {
    box-sizing: border-box !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
}

@media (max-width: 720px) {
    .mdb2b-report-global,
    .mdb2b-settlement-personal,
    .mdb2b-settlement-global,
    .mdb2b-order-history {
        padding: 18px !important;
    }

    .mdb2b-report-personal-total,
    .mdb2b-report-global-total,
    .mdb2b-settlement-help,
    .mdb2b-sales-empty,
    .mdb2b-report-empty,
    .mdb2b-order-empty,
    .mdb2b-ops-empty,
    .mdb2b-settlement-empty,
    .mdb2b-ops-rule {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mdb2b-report-table-wrap,
    .mdb2b-ops-table-wrap,
    .mdb2b-settlement-table-wrap {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}


/*
 * ==========================================================
 * MDB2B UI POLISH 0.12.3
 * Margini esterni macro-sezioni
 * ==========================================================
 */

.mdb2b-commission-report,
.mdb2b-sales-orders-panel,
.mdb2b-order-operations,
.mdb2b-settlement-panel {
    width: auto !important;
    margin-left: 28px !important;
    margin-right: 28px !important;
}

@media (max-width: 720px) {

    .mdb2b-commission-report,
    .mdb2b-sales-orders-panel,
    .mdb2b-order-operations,
    .mdb2b-settlement-panel {
        width: auto !important;
        margin-left: 12px !important;
        margin-right: 12px !important;
    }
}

/*
 * ==========================================================
 * MDB2B ORDER SHIPPING 0.13.0
 * ==========================================================
 */

.mdb2b-ops-shipping-fields {
    display: grid;
    gap: 9px;
    box-sizing: border-box;
    width: 100%;
    padding: 13px;
    border: 1px solid #e0e3e6;
    border-radius: 7px;
    background: #f8f9fa;
}

.mdb2b-ops-shipping-fields strong {
    color: #222;
}

.mdb2b-ops-shipping-fields input {
    box-sizing: border-box;
    width: 100%;
}

.mdb2b-ops-shipping-fields small {
    display: block;
    line-height: 1.45;
    color: #555;
}
