/* Neural Designer arrangements; the shared package owns tokens and actions. */
body.nds-shared main.site-main.nds-commerce-shell { width: 100%; max-width: none; margin: 0; padding: 0; }
.nds-commerce-shell > .page-content { margin: 0; padding: 0; }
.nds-commerce-shell > .page-content > p:empty { margin: 0; }
.aui.nds-commerce {
  --ndp-blue: var(--aui-blue);
  --ndp-blue-dark: var(--aui-blue-hover);
  --ndp-navy: var(--aui-ink);
  --ndp-dark: var(--aui-ink);
  --ndp-text: var(--aui-ink);
  --ndp-muted: var(--aui-muted);
  --ndp-line: var(--aui-line);
  --g-blue: var(--aui-blue);
  --g-dark: var(--aui-blue-hover);
  --g-navy: var(--aui-ink);
  --g-muted: var(--aui-muted);
  --g-line: var(--aui-line);
  min-width: 0;
}
.aui.ndp { width: min(100%,1160px); max-width: 1160px; margin: 0 auto; padding: 0; }
.aui.nds-pricing-page { width: 100%; max-width: none; margin: 0; padding: 0; background: var(--aui-white); }
.aui.nds-pricing-page > .elementor-top-section { margin: 0; padding: 64px 0; background: var(--aui-soft); }
.aui.nds-pricing-page .elementor-container { width: min(calc(100% - var(--aui-gutter) * 2),1160px); max-width: 1160px; margin-inline: auto; }
.aui.nds-pricing-page :is(.elementor-column,.elementor-widget-wrap,.elementor-widget-container) { width: 100%; margin: 0; padding: 0; }
.aui.nds-pricing-page :is(.elementor-widget,.elementor-shortcode) { width: 100%; margin: 0; }
.aui.ndp [hidden], .aui.nds-commerce [hidden] { display: none; }
.aui.ndp .ndp-switch-wrap { display: flex; justify-content: center; margin-bottom: 40px; }
.aui.nds-commerce :is(.ndp-switch,.ndp-period,.nd-gate-tabs) {
  display: flex; gap: 4px; padding: 4px; margin: 0;
  background: var(--aui-soft); border: 1px solid var(--aui-line); border-radius: var(--aui-radius);
}
.aui.nds-commerce :is(.nds-choice,.ndp-period-btn) {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; min-width: 0; padding: 10px 20px;
  color: var(--aui-muted); background: transparent; border: 1px solid transparent;
  border-radius: 4px; box-shadow: none; font: 600 16px/1.35 var(--aui-font-family);
  letter-spacing: 0; text-transform: none; cursor: pointer;
}
.aui.nds-commerce :is(.nds-choice,.ndp-period-btn):hover { color: var(--aui-blue); background: var(--aui-white); }
.aui.nds-commerce :is(.nds-choice,.ndp-period-btn).is-active {
  color: var(--aui-ink); background: var(--aui-white); border-color: var(--aui-line); box-shadow: none;
}
.aui.nds-commerce :is(.nds-choice,.ndp-period-btn):focus-visible { outline: 3px solid var(--aui-blue); outline-offset: 3px; }
.aui.ndp .ndp-title { margin: 0 0 16px; font: 600 32px/1.25 var(--aui-font-family); color: var(--aui-ink); text-align: center; }
.aui.ndp .ndp-title span { color: inherit; }
.aui.ndp .ndp-intro { max-width: none; margin: 0 0 36px; color: var(--aui-muted); font-size: 17px; text-align: left; }
.aui.ndp .ndp-grid { display: grid; gap: 24px; align-items: stretch; margin-inline: auto; width: 100%; }
.aui.ndp .ndp-grid--4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.aui.ndp .ndp-grid--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.aui.ndp .ndp-card { position: relative; align-items: stretch; width: 100%; }
.aui.ndp .ndp-card--featured { border-color: var(--aui-blue); }
.aui.ndp .ndp-badge {
  align-self: flex-start; position: static; margin: 0 0 16px; padding: 4px 8px;
  background: var(--aui-soft); color: var(--aui-blue); border-radius: 4px;
  font: 700 12px/1.5 var(--aui-font-family); letter-spacing: .03em; text-transform: uppercase;
}
.aui.ndp .ndp-card .ndp-name { margin: 0 0 8px; padding: 0; color: var(--aui-ink); font: 600 26px/1.25 var(--aui-font-family); }
.aui.ndp .ndp-card .ndp-headline { margin: 0 0 12px; min-height: 0; font-size: 17px; font-weight: 500; color: var(--aui-blue); }
.aui.ndp .ndp-card .ndp-desc { margin: 0 0 24px; min-height: 0; }
.aui.ndp .ndp-buy { display: flex; flex-direction: column; justify-content: flex-end; width: 100%; margin-bottom: 24px; }
.aui.ndp .ndp-buy--stripe { justify-content: flex-start; }
.aui.ndp .ndp-contact-box { display: flex; flex: 1; flex-direction: column; justify-content: center; gap: 16px; padding: 20px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); background: var(--aui-soft); }
.aui.ndp .ndp-contact-note { margin: 0; text-align: center; }
.aui.ndp .aui-button { width: 100%; margin: 0; float: none; }
.aui.ndp form.cart { display: block; margin: 0; }
.aui.ndp :is(.quantity,.reset_variations,.woocommerce-variation-availability,.stock,table.variations,.variations) { display: none; }
.aui.ndp .ndp-period { margin-bottom: 16px; }
.aui.ndp .ndp-period-btn { flex: 1 1 0; padding-inline: 4px; font-size: 14px; white-space: nowrap; }
.aui.ndp :is(.woocommerce-variation,.ndp-plan-price) { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; min-height: 52px; margin: 0 0 16px; }
.aui.ndp .woocommerce-variation-price { order: 1; }
.aui.ndp .woocommerce-variation-description { order: 2; }
.aui.ndp .woocommerce-variation-description p { margin: 0; font-size: 14px; }
.aui.ndp :is(.woocommerce-variation-price .price,.woocommerce-variation-price .amount,.ndp-plan-amount,.ndp-plan-amount .price,.ndp-plan-amount .amount) { color: var(--aui-ink); font: 700 36px/1.2 var(--aui-font-family); }
.aui.ndp .ndp-plan-suffix { color: var(--aui-muted); font-size: 14px; }
.aui.ndp .ndp-plan-note { margin: 10px 0 0; font-size: 13px; text-align: center; }
.aui.ndp .ndp-annual-saving { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; font-size: 13px; font-weight: 600; color: var(--aui-ink); }
.aui.ndp .ndp-annual-saving del { color: var(--aui-muted); font-weight: 400; }
.aui.ndp .ndp-included { margin: 0 0 16px; padding-top: 20px; border-top: 1px solid var(--aui-line); color: var(--aui-ink); font: 600 15px/1.4 var(--aui-font-family); }
.aui.ndp .ndp-features { display: flex; flex-direction: column; gap: 12px; padding: 0; margin: 0; list-style: none; }
.aui.ndp .ndp-features li { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 0; list-style: none; font-size: 15px; line-height: 1.5; }
.aui.ndp .ndp-features li::before { content: none; }
.aui.ndp .ndp-features :is(strong,b) { color: var(--aui-ink); font-weight: 600; }
.aui.ndp .ndp-ico { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 2px; color: var(--aui-blue); }
.aui.ndp .ndp-out,.aui.ndp .ndp-ico-off { color: var(--aui-muted); }
.aui.ndp .ndp-testplan { margin-top: 16px; padding-top: 12px; border-top: 1px dashed var(--aui-line); text-align: center; }
.aui.ndp .ndp-testplan a { color: var(--aui-blue); font-size: 13px; }
.aui.ndp .ndp-testplan span { display: block; font-size: 12px; color: var(--aui-muted); }
.aui.ndp .ndp-bank { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--aui-line); }
.aui.ndp .ndp-bank summary { cursor: pointer; color: var(--aui-blue); font-size: 14px; line-height: 1.5; }
.aui.ndp .ndp-bank summary span { display: block; color: var(--aui-muted); font-size: 12px; }
.aui.ndp .ndp-bank-body { margin-top: 12px; padding: 16px; background: var(--aui-soft); border: 1px solid var(--aui-line); border-radius: var(--aui-radius); }
.aui.ndp .ndp-bank-body dl { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 4px 12px; margin: 0; font-size: 13px; }
.aui.ndp .ndp-bank-body dt { font-weight: 600; }
.aui.ndp .ndp-bank-body dd { margin: 0; overflow-wrap: anywhere; }
.aui.ndp .ndp-bank-body code { font-size: 12px; }
.aui.ndp .ndp-bank-warn { margin: 12px 0 0; padding-top: 12px; border-top: 1px solid var(--aui-line); font-size: 13px; }
.aui.nd-gate-wrap { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(0,1fr); gap: 24px; align-items: start; width: 100%; max-width: 1160px; margin: 0 auto 48px; }
.nds-gate-main { padding: 64px 24px; background: #f4f7f9; }
.nds-gate-main .aui.nd-gate-wrap--solo { grid-template-columns: minmax(0,640px); justify-content: center; padding: 0; margin-bottom: 0; }
.aui .nd-gate-col { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.aui .nd-gate-card { align-items: stretch; }
.aui .nd-gate-card--pending { opacity: .6; }
.aui .nd-gate-head { display: flex; align-items: center; gap: 12px; margin: 0 0 16px; }
.aui .nd-step { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; color: var(--aui-white); background: var(--aui-blue); font-size: 14px; }
.aui .nd-step--pending { color: var(--aui-muted); background: var(--aui-line); }
.aui .nd-gate-head .nd-gate-h { margin: 0; font-size: 22px; }
.aui .nd-gate-head h1.nd-gate-h { font: 600 26px/1.3 var(--aui-font-family); color: var(--aui-ink); }
.aui .nd-gate-intro { margin: 0 0 20px; }
.aui .nd-gate-pending-text { margin: 0; }
.aui.nds-commerce .nd-gate-tabs { margin-bottom: 24px; }
.aui .nd-gate-tab { flex: 1 1 0; }
.aui .nd-gate-form { display: flex; flex-direction: column; gap: 18px; }
.aui .nd-gate-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.aui .nd-gate-form label { display: flex; flex-direction: column; gap: 6px; color: var(--aui-ink); font: 500 15px/1.5 var(--aui-font-family); }
.aui.nds-commerce .nds-field { width: 100%; min-height: 48px; padding: 11px 14px; color: var(--aui-ink); background: var(--aui-white); border: 1px solid var(--aui-line); border-radius: var(--aui-radius); font: 400 16px/1.5 var(--aui-font-family); }
.aui .nd-gate-form small { color: var(--aui-muted); font-size: 13px; }
.aui .nd-gate-form .nd-gate-check { flex-direction: row; align-items: flex-start; gap: 10px; font-weight: 400; }
.aui .nd-gate-check input { margin-top: 5px; accent-color: var(--aui-blue); }
.aui .nd-gate-submit { width: 100%; }
.aui .nd-gate-submit[disabled] { opacity: .6; cursor: progress; }
.aui .nd-gate-link { align-self: center; color: var(--aui-blue); font-size: 15px; text-decoration: underline; }
.aui .nd-gate-error { margin: 0; padding: 12px 16px; color: #8d2118; background: #fff4f3; border: 1px solid #e8b9b5; border-radius: var(--aui-radius); font-size: 14px; }
.aui .nd-gate-summary table { width: 100%; border-collapse: collapse; margin-top: 16px; font-size: 14px; }
.aui .nd-gate-summary :is(th,td) { padding: 8px 0; border: 0; color: var(--aui-ink); text-align: left; font-weight: 400; }
.aui .nd-gate-summary td { text-align: right; }
.aui .nd-gate-summary thead th { color: var(--aui-muted); font-weight: 500; }
.aui .nd-gate-summary tfoot tr:last-child :is(th,td) { padding-top: 12px; border-top: 1px solid var(--aui-line); font-weight: 600; }
.aui.nd-gate-card--done { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; width: 100%; max-width: 1160px; margin: 0 auto 24px; padding: 20px 24px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); background: var(--aui-white); }
.aui .nd-gate-done-title { font-weight: 600; }
.aui .nd-gate-done-mail { color: var(--aui-blue); }
.aui .nd-gate-done-out { margin-left: auto; color: var(--aui-muted); font-size: 14px; text-decoration: underline; }
body.nd-gate-steps .aui .woocommerce-billing-fields > h3 { display: flex; align-items: center; gap: 12px; }
body.nd-gate-steps .aui .woocommerce-billing-fields > h3::before { content: "2"; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 28px; width: 28px; height: 28px; color: var(--aui-white); background: var(--aui-blue); border-radius: 50%; font-size: 14px; }
.aui.nd-account-page { width: 100%; margin: 0; background: var(--aui-soft); min-height: 0; }
.aui.nd-account-page > p:empty { display: none; margin: 0; }
.aui .nd-account-main { width: min(calc(100% - var(--aui-gutter) * 2),1160px); margin: 0 auto; padding: 64px 0; }
.aui .nd-account-main--center { display: flex; justify-content: center; }
.aui .nd-account-panel { width: min(100%,640px); align-items: stretch; }
.aui .nd-account-panel--wide { width: min(100%,1080px); }
.aui .nd-account-logo { display: block; width: min(100%,280px); height: auto; margin: 0 auto 28px; }
.aui .nd-account-panel .nd-account-heading { margin: 0 0 20px; color: var(--aui-ink); font: 600 32px/1.25 var(--aui-font-family); text-align: left; }
.aui .nd-account-accent { color: inherit; }
.aui .nd-account-lead { max-width: 760px; margin: 0 0 24px; color: var(--aui-muted); }
.aui .nd-account-form { display: grid; gap: 18px; margin-top: 4px; }
.aui .nd-account-form > p { margin: 0; }
.aui .nd-account-form > p:empty { display: none; }
.aui .nd-account-panel > .nd-account-note { margin-top: 20px; }
.aui .nd-account-field { display: grid; gap: 8px; }
.aui .nd-account-field label { color: var(--aui-ink); font-size: 15px; font-weight: 500; }
.aui .nd-account-check { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--aui-muted); font-size: 15px; }
.aui .nd-account-check input { width: 18px; height: 18px; margin: 0; accent-color: var(--aui-blue); }
.aui .nd-account-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 8px; }
.aui .nd-account-link { color: var(--aui-blue); font-weight: 500; text-decoration: underline; }
.aui .nd-account-note { margin: 24px 0 0; color: var(--aui-muted); font-size: 16px; }
.aui .nd-account-hero { padding: 48px 0; background: var(--aui-white); border-bottom: 1px solid var(--aui-line); }
.aui .nd-account-hero-inner { width: min(calc(100% - var(--aui-gutter) * 2),1160px); margin: 0 auto; }
.aui .nd-account-hero h1 { margin: 0; font: 700 36px/1.2 var(--aui-font-family); color: var(--aui-ink); }
.aui .nd-account-hero p { margin: 20px 0 0; color: var(--aui-muted); font-size: 18px; }
.aui .nd-account-success-icon { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin: 0 0 24px; background: var(--aui-soft); color: var(--aui-blue); border-radius: 50%; font-size: 36px; }
.aui .nd-account-message { display: none; margin: 0 0 24px; padding: 16px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); background: var(--aui-soft); color: var(--aui-ink); }
.aui.nd-account-page[data-query*="checkemail"] .nd-account-message { display: block; }
.aui.nd-account-page--lost .woocommerce-notices-wrapper { display: none; }
.aui .woocommerce-MyAccount-navigation { float: none; width: 100%; margin: 0 0 24px; }
.aui .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; list-style: none; }
.aui .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; }
.aui .woocommerce-MyAccount-navigation a { display: block; padding: 10px 16px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); color: var(--aui-blue); text-decoration: none; }
.aui .woocommerce-MyAccount-navigation .is-active a { background: var(--aui-soft); color: var(--aui-ink); }
.aui .woocommerce-MyAccount-content { float: none; width: 100%; padding: 28px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); background: var(--aui-white); }
.aui.nd-account-page--lost .woocommerce-MyAccount-content { padding: 0; border: 0; }
.aui.nds-elementor-account { width: 100%; background: var(--aui-white); }
.aui.nds-elementor-account .elementor-top-section { margin: 0; padding: 64px 0; background: var(--aui-soft); }
.aui.nds-elementor-account .elementor-container { width: min(calc(100% - var(--aui-gutter) * 2),640px); margin: 0 auto; }
.aui.nds-elementor-account :is(.elementor-inner-section,.elementor-inner-section .elementor-container) { width: 100%; margin: 0; padding: 0; }
.aui.nds-elementor-account .elementor-column { width: 100%; min-width: 0; }
.aui.nds-elementor-account .elementor-top-column > .elementor-widget-wrap { padding: 28px; border: 1px solid var(--aui-line); border-radius: var(--aui-radius); background: var(--aui-white); }
.aui.nds-elementor-account .elementor-inner-column > .elementor-widget-wrap { padding: 0; }
.aui.nds-elementor-account :is(.elementor-widget,.elementor-widget-container) { width: 100%; margin: 0; padding: 0; }
.aui.nds-elementor-account .elementor-widget { margin-bottom: 24px; }
.aui.nds-elementor-account .elementor-widget:last-child { margin-bottom: 0; }
.aui.nds-elementor-account .elementor-heading-title { margin: 0; color: var(--aui-ink); font: 600 28px/1.25 var(--aui-font-family); text-align: left; }
.aui.nds-elementor-account .elementor-element-184d90a .elementor-heading-title { color: var(--aui-muted); font: 400 17px/1.65 var(--aui-font-family); }
.aui.nds-elementor-account .elementor-widget-theme-site-logo img { width: min(100%,280px); height: auto; }
.aui.nds-elementor-account #registerForm { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.aui.nds-elementor-account #registerForm .elementor-field-subgroup { width: 100%; }
.aui.nds-elementor-account #registerForm .elementor-field-option { display: flex; align-items: flex-start; gap: 10px; width: 100%; }
.aui.nds-elementor-account #registerForm .elementor-field-option input { flex: 0 0 18px; width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--aui-blue); }
.aui.nds-elementor-account #registerForm .elementor-field-group-acceptance label { display: block; position: static; margin: 0; padding: 0; color: var(--aui-muted); line-height: 24px; }
.aui.nds-elementor-account #registerForm .elementor-field-group-acceptance a { color: var(--aui-blue); text-decoration: underline; }
.aui.nds-elementor-account .elementor-form-fields-wrapper { display: flex; flex-wrap: wrap; gap: 18px; margin: 0; }
.aui.nds-elementor-account .elementor-field-group { width: 100%; padding: 0; margin: 0; }
.aui.nds-elementor-account .elementor-field-subgroup { color: var(--aui-muted); font-size: 15px; }
.aui.nds-elementor-account .elementor-button { width: 100%; }
.aui.nds-elementor-account .elementor-button-content-wrapper { display: flex; align-items: center; justify-content: center; }
.aui.nds-elementor-account .elementor-button-text { font: inherit; }
@media (max-width: 64rem) {
  .aui.ndp .ndp-grid--3 { grid-template-columns: 1fr; max-width: 620px; }
  .aui.nd-gate-wrap { grid-template-columns: 1fr; }
  .aui .nd-gate-col--side { order: -1; }
}
@media (max-width: 40rem) {
  .aui.ndp .ndp-grid--4 { grid-template-columns: 1fr; }
  .aui.ndp .ndp-title { font-size: 28px; }
  .aui.ndp .ndp-plan-price { min-height: 0; }
  .aui .nd-gate-row { grid-template-columns: 1fr; }
  .aui.nds-commerce .nds-choice { padding-inline: 14px; }
  .aui .nd-account-main,.aui.nds-elementor-account .elementor-top-section { padding-block: 48px; }
  .aui .nd-account-panel .nd-account-heading { font-size: 28px; }
  .aui.nds-elementor-account .elementor-top-column > .elementor-widget-wrap { padding: 24px; }
}
