:root {
  --vscui-accent: #165c41;
  --vscui-accent-dark: #0d432e;
  --vscui-ink: #18211d;
  --vscui-muted: #66716b;
  --vscui-line: #dde5e0;
  --vscui-soft: #f3f8f5;
  --vscui-danger: #b42318;
  --vscui-shadow: 0 24px 70px rgba(18, 35, 27, 0.18);
  --vscui-radius: 16px;
}

.vscui-hidden {
  display: none !important;
}

.vscui-get-started-wrap {
  display: inline-flex;
  align-items: center;
  margin-left: 14px;
}

.vscui-get-started-button,
.vscui-login-submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 11px 22px !important;
  border: 1px solid var(--vscui-accent) !important;
  border-radius: 8px !important;
  background: var(--vscui-accent) !important;
  color: #fff !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: none !important;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.vscui-get-started-button:hover,
.vscui-get-started-button:focus,
.vscui-login-submit:hover,
.vscui-login-submit:focus {
  background: var(--vscui-accent-dark) !important;
  border-color: var(--vscui-accent-dark) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.vscui-outbound-link {
  position: relative;
}

.vscui-outbound-count {
  position: absolute;
  top: -7px;
  right: -9px;
  min-width: 19px;
  height: 19px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--vscui-accent);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 19px;
  text-align: center;
}

html.vscui-modal-open,
html.vscui-modal-open body {
  overflow: hidden !important;
}

.vscui-modal[hidden] {
  display: none !important;
}

.vscui-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: grid;
  place-items: center;
  padding: 24px;
}

.vscui-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18, 25, 22, 0.68);
  backdrop-filter: blur(3px);
}

.vscui-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(920px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  border-radius: var(--vscui-radius);
  background: #fff;
  box-shadow: var(--vscui-shadow);
  outline: 0;
}

.vscui-modal__close {
  position: absolute;
  z-index: 3;
  top: 14px;
  right: 16px;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #4c5651;
  font-size: 34px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
}

.vscui-modal__close:hover,
.vscui-modal__close:focus {
  background: #eef3f0;
  color: var(--vscui-ink);
}

.vscui-modal__content {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
}

.vscui-modal__login,
.vscui-modal__new {
  padding: 56px 52px 48px;
}

.vscui-modal__new {
  background: var(--vscui-soft);
  border-left: 1px solid var(--vscui-line);
}

.vscui-eyebrow {
  margin: 0 0 10px !important;
  color: var(--vscui-accent) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.vscui-modal h2,
.vscui-modal h3,
.vscui-account-gateway h2,
.vscui-account-gateway h3 {
  margin-top: 0;
  color: var(--vscui-ink);
  line-height: 1.18;
}

.vscui-modal h2 {
  margin-bottom: 12px;
  font-size: clamp(30px, 4vw, 42px);
}

.vscui-modal h3 {
  margin-bottom: 18px;
  font-size: 27px;
}

.vscui-intro,
.vscui-account-gateway__header > p:last-child,
.vscui-account-card__heading p {
  color: var(--vscui-muted);
}

.vscui-modal__new ul {
  margin: 24px 0 28px;
  padding: 0;
  list-style: none;
}

.vscui-modal__new li {
  position: relative;
  margin: 0 0 13px;
  padding-left: 27px;
  color: #344039;
}

.vscui-modal__new li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--vscui-accent);
  font-weight: 800;
}

.vscui-support-link {
  margin: 22px 0 0 !important;
  color: var(--vscui-muted);
  font-size: 13px;
}

.vscui-support-link a {
  display: inline-block;
  margin-left: 4px;
  color: var(--vscui-accent);
  font-weight: 700;
}

.vscui-login-form {
  margin: 28px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

.vscui-form-row {
  margin: 0 0 19px !important;
}

.vscui-form-row label {
  display: block;
  margin-bottom: 8px;
  color: #35413b;
  font-size: 14px;
  font-weight: 650;
}

.vscui-form-row input[type="text"],
.vscui-form-row input[type="password"] {
  width: 100% !important;
  min-height: 50px;
  padding: 11px 14px !important;
  border: 1px solid #cfd9d3 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--vscui-ink) !important;
  box-shadow: none !important;
}

.vscui-form-row input:focus {
  border-color: var(--vscui-accent) !important;
  outline: 3px solid color-mix(in srgb, var(--vscui-accent) 18%, transparent) !important;
}

.vscui-password-field {
  position: relative;
  display: block;
}

.vscui-password-field input {
  padding-right: 52px !important;
}

.vscui-password-toggle {
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #59645e;
  cursor: pointer;
}

.vscui-login-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 2px 0 22px;
  font-size: 14px;
}

.vscui-login-options a,
.vscui-secondary-actions a {
  color: var(--vscui-accent);
  font-weight: 700;
  text-decoration: none;
}

.vscui-remember {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #4d5852;
}

.vscui-remember input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.vscui-login-submit {
  width: 100%;
  min-height: 50px;
  cursor: pointer;
}

.vscui-account-gateway {
  width: min(1140px, calc(100% - 40px));
  margin: 18px auto 70px;
}

.vscui-account-gateway__header {
  max-width: 720px;
  margin: 0 auto 36px;
  text-align: center;
}

.vscui-account-gateway__header h2 {
  margin-bottom: 12px;
  font-size: clamp(31px, 5vw, 48px);
}

.vscui-account-gateway__header p:last-child {
  margin: 0;
  font-size: 17px;
}

.vscui-account-gateway__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

.vscui-account-card {
  padding: 38px;
  border: 1px solid var(--vscui-line);
  border-radius: var(--vscui-radius);
  background: #fff;
  box-shadow: 0 14px 38px rgba(31, 49, 40, .07);
}

.vscui-account-card--new {
  background: var(--vscui-soft);
}

.vscui-account-card__heading {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 25px;
}

.vscui-account-card__heading h3 {
  margin-bottom: 5px;
  font-size: 25px;
}

.vscui-account-card__heading p {
  margin: 0;
}

.vscui-step-icon {
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--vscui-accent);
  color: #fff;
  font-weight: 800;
}

.vscui-service-list {
  display: grid;
  gap: 13px;
  margin: 0 0 27px;
}

.vscui-service-list > div {
  padding: 15px 17px;
  border: 1px solid #d8e4dc;
  border-radius: 10px;
  background: rgba(255, 255, 255, .75);
}

.vscui-service-list strong,
.vscui-service-list span {
  display: block;
}

.vscui-service-list strong {
  margin-bottom: 3px;
  color: var(--vscui-ink);
}

.vscui-service-list span {
  color: var(--vscui-muted);
  font-size: 14px;
}

.vscui-account-card .vscui-get-started-wrap {
  display: flex;
  margin: 0;
}

.vscui-account-card .vscui-get-started-button {
  width: 100%;
  min-height: 50px;
}

.vscui-secondary-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin-top: 20px;
  font-size: 14px;
}

.vscui-login-notices {
  margin-bottom: 20px;
}

.vscui-account-gateway .woocommerce-error,
.vscui-account-gateway .woocommerce-message,
.vscui-account-gateway .woocommerce-info,
.vscui-login-notices .woocommerce-error,
.vscui-login-notices .woocommerce-message,
.vscui-login-notices .woocommerce-info {
  margin: 0 !important;
  padding: 14px 16px 14px 45px !important;
  border: 1px solid #f2c6c2 !important;
  border-radius: 9px !important;
  background: #fff4f2 !important;
  color: #7a271a !important;
  font-size: 14px !important;
}

.vscui-account-gateway .woocommerce-error::before,
.vscui-login-notices .woocommerce-error::before {
  top: 14px !important;
  left: 16px !important;
  color: var(--vscui-danger) !important;
}

body.vscui-account-landing .woocommerce-account .woocommerce,
body.vscui-account-landing .woocommerce-account .entry-content {
  max-width: none;
}

body.vscui-registration-disabled .woocommerce-form-register,
body.vscui-registration-disabled .et-login-register-popup .register,
body.vscui-registration-disabled .login-register-popup .register-form {
  display: none !important;
}

@media (max-width: 900px) {
  .vscui-modal__content {
    grid-template-columns: 1fr;
  }

  .vscui-modal__new {
    border-top: 1px solid var(--vscui-line);
    border-left: 0;
  }

  .vscui-modal__login,
  .vscui-modal__new {
    padding: 46px 34px 36px;
  }

  .vscui-account-gateway__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .vscui-modal {
    align-items: end;
    padding: 0;
  }

  .vscui-modal__dialog {
    width: 100%;
    max-height: 94vh;
    border-radius: 16px 16px 0 0;
  }

  .vscui-modal__login,
  .vscui-modal__new {
    padding: 42px 22px 30px;
  }

  .vscui-login-options {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .vscui-account-gateway {
    width: min(100% - 24px, 1140px);
    margin-bottom: 40px;
  }

  .vscui-account-card {
    padding: 26px 20px;
  }

  .vscui-account-card__heading {
    gap: 11px;
  }

  .vscui-account-card__heading h3 {
    font-size: 22px;
  }

  .vscui-get-started-wrap.vscui-auto-cta {
    display: flex;
    width: 100%;
    margin: 10px 0 0;
  }

  .vscui-get-started-wrap.vscui-auto-cta .vscui-get-started-button {
    width: 100%;
  }
}


/* v2.4.1 — logged-out retail chrome cleanup */
body.vscui-user-logged-out .widget_shopping_cart,
body.vscui-user-logged-out .woocommerce-mini-cart,
body.vscui-user-logged-out .cart-dropdown,
body.vscui-user-logged-out .mini-cart,
body.vscui-user-logged-out .et-mini-cart,
body.vscui-user-logged-out .header-cart,
body.vscui-user-logged-out .et-cart-trigger,
body.vscui-user-logged-out form.woocommerce-product-search,
body.vscui-user-logged-out .woocommerce-product-search{
  display:none!important;
}


/* v2.44.0 — Seller Central logged-out account gateway */
body.vscui-account-landing {
  background: #f5f7f5;
}

body.vscui-account-landing .page-header,
body.vscui-account-landing .page-title,
body.vscui-account-landing .woocommerce-breadcrumb,
body.vscui-account-landing #customer_login,
body.vscui-account-landing .u-columns#customer_login,
body.vscui-account-landing .woocommerce-form-login:not(.vscui-login-form),
body.vscui-account-landing .woocommerce-form-register,
body.vscui-account-landing .et-login-register-form,
body.vscui-account-landing .login-register-form {
  display: none !important;
}

body.vscui-account-landing .site-content,
body.vscui-account-landing #content,
body.vscui-account-landing .content-area,
body.vscui-account-landing .entry-content,
body.vscui-account-landing .page-content,
body.vscui-account-landing .woocommerce,
body.vscui-account-landing .woocommerce-account .woocommerce {
  max-width: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.vscui-account-landing .entry-content > .woocommerce,
body.vscui-account-landing .page-content > .woocommerce {
  margin-bottom: 0 !important;
}

.vscui-account-gateway {
  box-sizing: border-box;
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto !important;
  padding: 64px 0 88px;
}

.vscui-account-gateway__header {
  max-width: 760px;
  margin: 0 0 34px;
  text-align: left;
}

.vscui-account-gateway__header h1,
.vscui-account-gateway__header h2 {
  margin: 0 0 12px !important;
  color: var(--vscui-ink) !important;
  font-size: clamp(34px, 4.2vw, 52px) !important;
  font-weight: 700 !important;
  line-height: 1.06 !important;
  letter-spacing: -.035em;
}

.vscui-account-gateway__header > p:last-child {
  max-width: 720px;
  margin: 0 !important;
  color: var(--vscui-muted);
  font-size: 17px;
  line-height: 1.65;
}

.vscui-account-gateway__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: 28px;
  align-items: stretch;
}

.vscui-account-card {
  box-sizing: border-box;
  min-width: 0;
  padding: 40px;
  border: 1px solid #dce5df;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(31, 49, 40, .08);
}

.vscui-account-card--new {
  border-color: #cfe1d7;
  background: linear-gradient(180deg, #eef7f2 0%, #f7faf8 100%);
}

.vscui-account-card__heading {
  display: block;
  margin-bottom: 26px;
}

.vscui-account-card__heading h2,
.vscui-account-card__heading h3 {
  margin: 0 0 8px !important;
  color: var(--vscui-ink) !important;
  font-size: clamp(25px, 2.3vw, 32px) !important;
  font-weight: 700 !important;
  line-height: 1.14 !important;
}

.vscui-account-card__heading p:last-child {
  margin: 0 !important;
  color: var(--vscui-muted);
  font-size: 15px;
  line-height: 1.6;
}

.vscui-account-card__kicker {
  margin: 0 0 8px !important;
  color: var(--vscui-accent) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.vscui-account-choice-list {
  display: grid;
  gap: 12px;
  margin: 0 0 24px;
}

.vscui-account-choice-list > div {
  padding: 15px 16px;
  border: 1px solid #d7e6dd;
  border-radius: 12px;
  background: rgba(255,255,255,.76);
}

.vscui-account-choice-list strong,
.vscui-account-choice-list span {
  display: block;
}

.vscui-account-choice-list strong {
  margin-bottom: 4px;
  color: var(--vscui-ink);
  font-size: 14px;
}

.vscui-account-choice-list span {
  color: var(--vscui-muted);
  font-size: 13px;
  line-height: 1.5;
}

.vscui-account-card--new .vscui-get-started-wrap {
  display: flex;
  width: 100%;
  margin: 0;
}

.vscui-account-card--new .vscui-get-started-button {
  width: 100%;
  min-height: 52px;
  border-radius: 10px !important;
}

.vscui-account-help {
  margin: 18px 0 0 !important;
  color: var(--vscui-muted);
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
}

.vscui-account-help a {
  margin-left: 4px;
  color: var(--vscui-accent) !important;
  font-weight: 700;
}

.vscui-login-form {
  margin-top: 0 !important;
}

.vscui-form-row {
  margin-bottom: 18px !important;
}

.vscui-form-row label {
  margin-bottom: 7px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.vscui-form-row input[type="text"],
.vscui-form-row input[type="password"] {
  min-height: 52px !important;
  border: 1px solid #ccd8d1 !important;
  border-radius: 10px !important;
  background: #fff !important;
}

.vscui-password-toggle {
  right: 8px;
  width: auto !important;
  min-width: 46px;
  height: 36px !important;
  padding: 0 8px !important;
  border-radius: 7px !important;
  color: var(--vscui-accent) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.vscui-password-toggle:hover,
.vscui-password-toggle:focus {
  background: #eef5f1 !important;
}

.vscui-password-field input {
  padding-right: 66px !important;
}

.vscui-login-options {
  margin: 4px 0 20px;
}

.vscui-login-submit {
  min-height: 52px !important;
  border-radius: 10px !important;
}

.vscui-login-notices {
  margin: 0 0 20px !important;
}

.vscui-login-notices .woocommerce-error,
.vscui-login-notices .woocommerce-message,
.vscui-login-notices .woocommerce-info {
  list-style: none !important;
  margin: 0 !important;
  padding: 13px 14px 13px 42px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  line-height: 1.45;
}

.vscui-secondary-actions {
  margin-top: 17px;
}

body.vscui-user-logged-out header .header-search,
body.vscui-user-logged-out header .header-search-link,
body.vscui-user-logged-out header .header-search-button,
body.vscui-user-logged-out header .search-trigger,
body.vscui-user-logged-out header .et-search-trigger,
body.vscui-user-logged-out header .search-button,
body.vscui-user-logged-out header .header-cart-icon,
body.vscui-user-logged-out header .header-cart-link,
body.vscui-user-logged-out header .shopping-cart,
body.vscui-user-logged-out header .cart-link,
body.vscui-user-logged-out header .et-header-cart,
body.vscui-user-logged-out header .mini-cart-button,
body.vscui-user-logged-out header a.cart-contents,
body.vscui-user-logged-out #header .header-search,
body.vscui-user-logged-out #header .et-search-trigger,
body.vscui-user-logged-out #header .et-cart-trigger,
body.vscui-user-logged-out #header a.cart-contents {
  display: none !important;
}

@media (max-width: 900px) {
  .vscui-account-gateway {
    width: min(100% - 40px, 760px);
    padding: 48px 0 64px;
  }

  .vscui-account-gateway__grid {
    grid-template-columns: 1fr;
  }

  .vscui-account-card {
    padding: 32px;
  }
}

@media (max-width: 600px) {
  .vscui-account-gateway {
    width: calc(100% - 32px);
    padding: 30px 0 44px;
  }

  .vscui-account-gateway__header {
    margin-bottom: 24px;
  }

  .vscui-account-gateway__header h1,
  .vscui-account-gateway__header h2 {
    font-size: 34px !important;
  }

  .vscui-account-gateway__header > p:last-child {
    font-size: 15px;
  }

  .vscui-account-card {
    padding: 24px 20px;
    border-radius: 14px;
  }

  .vscui-login-options {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}


/* v2.49.0 — final public site architecture/navigation treatment */
body.vscui-site-architecture-v1 header nav > ul > li > a,
body.vscui-site-architecture-v1 #header nav > ul > li > a,
body.vscui-site-architecture-v1 .site-header nav > ul > li > a {
  white-space: nowrap;
}

body.vscui-site-architecture-v1 .vscui-architecture-submenu {
  box-sizing: border-box;
}

body.vscui-site-architecture-v1 .vscui-architecture-submenu > li {
  break-inside: avoid;
  page-break-inside: avoid;
}

body.vscui-site-architecture-v1 .vscui-menu-group-title {
  margin: 0 !important;
  padding: 9px 16px 6px !important;
  pointer-events: none;
  break-inside: avoid;
  page-break-inside: avoid;
}

body.vscui-site-architecture-v1 .vscui-menu-group-title > span {
  display: block;
  color: #718078;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: .095em;
  text-transform: uppercase;
}

body.vscui-site-architecture-v1 .vscui-menu-group-title + li > a {
  padding-top: 7px !important;
}

@media (min-width: 1200px) {
  body.vscui-site-architecture-v1 header nav > ul,
  body.vscui-site-architecture-v1 #header nav > ul,
  body.vscui-site-architecture-v1 .site-header nav > ul {
    column-gap: clamp(12px, 1.1vw, 22px);
  }

  body.vscui-site-architecture-v1 header nav > ul > li > a,
  body.vscui-site-architecture-v1 #header nav > ul > li > a,
  body.vscui-site-architecture-v1 .site-header nav > ul > li > a {
    font-size: clamp(11px, .88vw, 13px);
    letter-spacing: -.01em;
  }

  body.vscui-site-architecture-v1 .vscui-architecture-submenu--services,
  body.vscui-site-architecture-v1 .vscui-architecture-submenu--commerce-os {
    width: min(720px, calc(100vw - 64px)) !important;
    min-width: min(720px, calc(100vw - 64px)) !important;
    column-count: 2;
    column-gap: 18px;
    padding: 18px 14px 18px !important;
  }

  body.vscui-site-architecture-v1 .vscui-architecture-submenu--how-it-works {
    width: min(620px, calc(100vw - 64px)) !important;
    min-width: min(620px, calc(100vw - 64px)) !important;
    column-count: 2;
    column-gap: 18px;
    padding: 18px 14px 18px !important;
  }

  body.vscui-site-architecture-v1 .vscui-architecture-submenu--solutions,
  body.vscui-site-architecture-v1 .vscui-architecture-submenu--marketplaces,
  body.vscui-site-architecture-v1 .vscui-architecture-submenu--resources,
  body.vscui-site-architecture-v1 .vscui-architecture-submenu--support {
    min-width: 320px !important;
    padding: 14px 10px !important;
  }

  body.vscui-site-architecture-v1 .vscui-menu-group-title--break {
    break-before: column;
  }

  body.vscui-site-architecture-v1 .vscui-architecture-submenu > li > a {
    white-space: normal !important;
    line-height: 1.28 !important;
  }
}

@media (min-width: 1200px) and (max-width: 1440px) {
  body.vscui-site-architecture-v1 header nav > ul,
  body.vscui-site-architecture-v1 #header nav > ul,
  body.vscui-site-architecture-v1 .site-header nav > ul {
    column-gap: 10px;
  }

  body.vscui-site-architecture-v1 header nav > ul > li > a,
  body.vscui-site-architecture-v1 #header nav > ul > li > a,
  body.vscui-site-architecture-v1 .site-header nav > ul > li > a {
    font-size: 11px;
  }
}

@media (max-width: 1199px) {
  body.vscui-site-architecture-v1 .vscui-menu-group-title {
    padding: 16px 18px 7px !important;
  }

  body.vscui-site-architecture-v1 .vscui-menu-group-title--break {
    margin-top: 7px !important;
    border-top: 1px solid rgba(21, 54, 42, .08);
  }

  body.vscui-site-architecture-v1 .vscui-architecture-submenu {
    column-count: 1 !important;
    min-width: 0 !important;
    width: auto !important;
  }
}


/* v2.51.0 — GOYA FULLSCREEN/MOBILE MENU RHYTHM FIX
   Keep the top-level active indicator, but prevent submenu underline
   pseudo-elements from crossing submenu labels. */
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a {
  display:inline-flex!important;
  align-items:center!important;
  position:relative!important;
  min-height:34px!important;
  margin:0!important;
  padding:6px 12px!important;
  line-height:1.4!important;
  text-decoration:none!important;
  border:0!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a::before,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a::after,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a::before,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-architecture-submenu li:not(.vscui-menu-group-title) > a::after {
  content:none!important;
  display:none!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-menu-group-title,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-menu-group-title {
  border:0!important;
  min-height:0!important;
  line-height:1!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-menu-group-title::before,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-menu-group-title::after,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-menu-group-title::before,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-menu-group-title::after {
  content:none!important;
  display:none!important;
}

/* The old visual group divider is deliberately removed in the side menus.
   Spacing, not a rule through text, separates the groups. */
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-menu-group-title--break,
body.vscui-site-architecture-v1 .side-mobile-menu .vscui-menu-group-title--break {
  border-top:0!important;
  margin-top:18px!important;
}

/* Belt-and-suspenders: hide the two legacy blank/hash spacer menu records
   even if Goya clones them after the PHP menu filter. */
body.vscui-site-architecture-v1 .side-fullscreen-menu li > a[href="#"]:empty,
body.vscui-site-architecture-v1 .side-mobile-menu li > a[href="#"]:empty {
  display:none!important;
}


/* v2.52.0 — GOYA FULLSCREEN MENU NORMALISATION
   Keep Goya's own sliding transforms. Only normalise the content box inside
   each submenu panel so no text can sit on top of the vertical divider. */
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 {
  box-sizing:border-box!important;
  padding-left:30px!important;
  padding-right:18px!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 > li {
  box-sizing:border-box!important;
  margin-left:0!important;
  padding-left:0!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 > li > a {
  position:relative!important;
  z-index:3!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  margin:0!important;
  padding:5px 8px 5px 0!important;
  line-height:1.4!important;
  background:#fff!important;
  border:0!important;
  text-decoration:none!important;
}

/* Existing WordPress title-item records are the real Goya section headings.
   Do not add a second artificial heading layer. */
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 > li.title-item > a,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 > li.vscui-goya-group-item > a {
  min-height:0!important;
  margin:8px 0 10px!important;
  padding:0!important;
  color:#59615d!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.35!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  pointer-events:none!important;
  background:#fff!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level3 {
  box-sizing:border-box!important;
  margin:0 0 22px!important;
  padding:0!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level3 > li {
  margin:0!important;
  padding:0!important;
}

body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level3 > li > a {
  position:relative!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  min-height:38px!important;
  margin:0!important;
  padding:5px 8px 5px 18px!important;
  line-height:1.4!important;
  background:#fff!important;
  border:0!important;
  text-decoration:none!important;
}

/* Never draw theme underline pseudo-elements through level-2/3 labels.
   The selected underline remains only on the top-level item. */
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 a::before,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level2 a::after,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level3 a::before,
body.vscui-site-architecture-v1 .side-fullscreen-menu .vscui-goya-level3 a::after {
  content:none!important;
  display:none!important;
}

/* Mobile remains a single-column drill-down and does not need the desktop
   divider compensation. */
@media(max-width:991px){
  body.vscui-site-architecture-v1 .side-mobile-menu .vscui-goya-level2,
  body.vscui-site-architecture-v1 .side-mobile-menu .vscui-goya-level3 {
    box-sizing:border-box!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }

  body.vscui-site-architecture-v1 .side-mobile-menu .vscui-goya-level2 > li > a,
  body.vscui-site-architecture-v1 .side-mobile-menu .vscui-goya-level3 > li > a {
    line-height:1.4!important;
  }
}


/* v2.53.0 — WORDPRESS MENU IS THE SINGLE SOURCE OF TRUTH
   No menu hierarchy, labels, links or group headings are generated here.
   These rules only control Goya's presentation. */

/* DESKTOP FULLSCREEN MENU:
   Move the complete level-2 panel to the right of the first menu column.
   The margin shifts the panel AND its divider; padding then creates clear
   breathing room between the divider and the actual WordPress menu text. */
@media(min-width:992px){
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu{
    box-sizing:border-box!important;
    margin-left:24px!important;
    padding-left:38px!important;
    padding-right:20px!important;
    border-left:1px solid rgba(40,40,40,.13)!important;
    background:#fff!important;
  }

  /* Make the divider visible throughout the open panel even if Goya applies
     backgrounds to links/items. */
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:-1px!important;
    top:0!important;
    bottom:0!important;
    width:1px!important;
    min-height:100%!important;
    background:rgba(40,40,40,.13)!important;
    pointer-events:none!important;
    z-index:8!important;
  }

  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu > li{
    box-sizing:border-box!important;
    margin-left:0!important;
    padding-left:0!important;
    background:transparent!important;
  }

  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu > li > a{
    position:relative!important;
    z-index:10!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    padding-left:0!important;
    padding-right:10px!important;
    background:transparent!important;
    line-height:1.42!important;
    text-decoration:none!important;
  }

  /* Goya title-item groups stay exactly where WordPress puts them. */
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu > li.title-item > a{
    margin-top:6px!important;
    margin-bottom:10px!important;
    padding:0!important;
    background:transparent!important;
  }

  /* Nested children under a WordPress/Goya title-item. */
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu > li > ul.sub-menu{
    box-sizing:border-box!important;
    margin:0 0 20px!important;
    padding:0!important;
    background:transparent!important;
  }

  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu > li > ul.sub-menu > li > a{
    box-sizing:border-box!important;
    margin:0!important;
    padding:5px 8px 5px 16px!important;
    background:transparent!important;
    line-height:1.42!important;
  }

  /* Submenu links never get an underline/pseudo rule through the label.
     The active underline is left entirely to Goya on the level-1 item. */
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu a::before,
  body.vscui-wordpress-menu-source .side-fullscreen-menu .mobile-menu.big-menu > li > ul.sub-menu a::after{
    content:none!important;
    display:none!important;
  }
}

/* MOBILE/TABLET:
   Do not shift the drill-down panel horizontally. WordPress hierarchy and
   Goya's own mobile behavior remain untouched. */
@media(max-width:991px){
  body.vscui-wordpress-menu-source .side-mobile-menu .mobile-menu > li > ul.sub-menu{
    box-sizing:border-box!important;
    margin-left:0!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
}
