/* S2B_PROFILE_VISUAL_SYSTEM_20260903 */

.s2b-user-profile,
.s2b-profile-edit-intro,
.s2b-profile-edit-section {
  --s2b-navy: #1e2b3a;
  --s2b-navy-deep: #14263a;
  --s2b-gold: #d8ae4c;
  --s2b-soft: #f4f7fb;
  --s2b-line: rgba(30, 43, 58, .12);
  --s2b-muted: #667585;
}

.s2b-user-profile {
  max-width: 1180px;
  margin: 32px auto 54px;
  padding: 0 20px;
}

.s2b-profile-hero {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  padding: 34px;
  border: 1px solid var(--s2b-line);
  border-radius: 26px;
  background:
    linear-gradient(135deg, #ffffff 0%, #f5f8fc 100%);
  box-shadow: 0 14px 38px rgba(16, 32, 51, .08);
}

.s2b-profile-avatar-wrap {
  width: 150px;
  height: 150px;
}

.s2b-profile-avatar {
  display: block;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  object-fit: cover;
  border: 5px solid #fff;
  box-shadow:
    0 0 0 2px var(--s2b-gold),
    0 12px 28px rgba(20, 38, 58, .18);
}

.s2b-profile-avatar--fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--s2b-navy);
  color: #fff;
  font-size: 38px;
  font-weight: 800;
}

.s2b-profile-eyebrow,
.s2b-profile-card-eyebrow,
.s2b-profile-edit-eyebrow {
  margin-bottom: 8px;
  color: #92701f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}

.s2b-profile-hero h1 {
  margin: 0 0 13px;
  color: var(--s2b-navy);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.05;
  font-weight: 850;
}

.s2b-profile-role-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 13px;
}

.s2b-profile-role {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(216, 174, 76, .14);
  color: #745817;
  font-size: 14px;
  font-weight: 750;
}

.s2b-profile-location,
.s2b-profile-company-line {
  margin-top: 7px;
  color: var(--s2b-muted);
  font-size: 15px;
}

.s2b-profile-company-line a {
  color: var(--s2b-navy);
  font-weight: 800;
}

.s2b-profile-edit-button,
.s2b-profile-company-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border: 1px solid var(--s2b-navy);
  border-radius: 13px;
  background: var(--s2b-navy);
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 9px 22px rgba(30, 43, 58, .16);
}

.s2b-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-top: 22px;
}

.s2b-profile-card,
.s2b-profile-private-card {
  padding: 28px;
  border: 1px solid var(--s2b-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 10px 26px rgba(16, 32, 51, .055);
}

.s2b-profile-card h2,
.s2b-profile-private-card h1 {
  margin: 0 0 18px;
  color: var(--s2b-navy);
  font-size: 26px;
  line-height: 1.15;
  font-weight: 825;
}

.s2b-profile-bio {
  color: #334454;
  font-size: 16px;
  line-height: 1.72;
}

.s2b-profile-empty {
  color: var(--s2b-muted);
  font-style: italic;
}

.s2b-profile-info-row {
  display: grid;
  grid-template-columns: minmax(115px, .65fr) minmax(0, 1.35fr);
  gap: 16px;
  padding: 13px 0;
  border-top: 1px solid var(--s2b-line);
}

.s2b-profile-info-row:first-of-type {
  border-top: 0;
}

.s2b-profile-info-row span {
  color: var(--s2b-muted);
}

.s2b-profile-info-row strong {
  color: var(--s2b-navy);
}

.s2b-profile-company-button {
  margin-top: 20px;
}

.s2b-profile-edit-intro {
  margin: 22px 0 20px;
  padding: 25px 28px;
  border-radius: 22px;
  background:
    linear-gradient(135deg, #f7f9fc 0%, #eef4fa 100%);
  border: 1px solid var(--s2b-line);
}

.s2b-profile-edit-intro h1 {
  margin: 0 0 8px;
  color: var(--s2b-navy);
  font-size: clamp(29px, 5vw, 40px);
  font-weight: 850;
}

.s2b-profile-edit-intro p,
.s2b-profile-section-intro {
  margin: 0;
  color: var(--s2b-muted);
  line-height: 1.65;
}

.s2b-profile-edit-section {
  margin: 0 0 18px !important;
  border: 1px solid var(--s2b-line) !important;
  border-radius: 18px !important;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16, 32, 51, .045);
}

.s2b-profile-edit-section > summary {
  padding: 18px 20px !important;
  background: #eaf2fb !important;
  color: var(--s2b-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

.s2b-profile-edit-section .details-wrapper {
  padding: 20px !important;
}

.s2b-profile-edit-section input[type="text"],
.s2b-profile-edit-section input[type="email"],
.s2b-profile-edit-section input[type="password"],
.s2b-profile-edit-section textarea,
.s2b-profile-edit-section select {
  min-height: 50px;
  border: 1px solid #cbd5df;
  border-radius: 11px;
  background: #fff;
}

.s2b-profile-edit-section textarea {
  min-height: 140px;
}

.s2b-profile-save {
  min-height: 54px !important;
  padding: 0 28px !important;
  border: 1px solid var(--s2b-navy) !important;
  border-radius: 14px !important;
  background: var(--s2b-navy) !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 800 !important;
}

@media (max-width: 760px) {
  .s2b-user-profile {
    margin-top: 18px;
    padding: 0 14px;
  }

  .s2b-profile-hero {
    grid-template-columns: 1fr;
    gap: 19px;
    padding: 24px 20px;
    text-align: center;
  }

  .s2b-profile-avatar-wrap {
    width: 126px;
    height: 126px;
    margin: 0 auto;
  }

  .s2b-profile-avatar {
    width: 126px;
    height: 126px;
  }

  .s2b-profile-role-list {
    justify-content: center;
  }

  .s2b-profile-hero-action {
    width: 100%;
  }

  .s2b-profile-edit-button {
    width: 100%;
  }

  .s2b-profile-grid {
    grid-template-columns: 1fr;
  }

  .s2b-profile-card {
    padding: 22px 20px;
  }

  .s2b-profile-info-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}


/* S2B_ACCOUNT_ONBOARDING_CHOICE_20260903 */

.s2b-account-start-choice {
  margin: 20px 0 26px;
  padding: 26px;
  border: 1px solid rgba(30, 43, 58, .12);
  border-radius: 22px;
  background:
    linear-gradient(
      135deg,
      #ffffff 0%,
      #f1f6fb 100%
    );
  box-shadow:
    0 12px 30px rgba(16, 32, 51, .07);
}

.s2b-account-start-eyebrow {
  margin-bottom: 7px;
  color: #92701f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}

.s2b-account-start-choice h2 {
  margin: 0 0 8px;
  color: #1e2b3a;
  font-size: 28px;
  font-weight: 850;
  line-height: 1.15;
}

.s2b-account-start-choice > p {
  margin: 0 0 20px;
  color: #667585;
  line-height: 1.65;
}

.s2b-account-start-choice .form-radios {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.s2b-account-start-choice
.form-type-radio {
  margin: 0 !important;
  padding: 18px 18px 18px 48px;
  position: relative;
  border: 1px solid rgba(30, 43, 58, .14);
  border-radius: 16px;
  background: #fff;
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

.s2b-account-start-choice
.form-type-radio:hover {
  border-color: #d8ae4c;
  box-shadow:
    0 8px 20px rgba(30, 43, 58, .08);
}

.s2b-account-start-choice
.form-type-radio input {
  position: absolute;
  left: 18px;
  top: 22px;
}

.s2b-account-start-choice
.form-type-radio label {
  margin: 0;
  color: #1e2b3a;
  font-size: 16px;
  font-weight: 800;
}

@media (max-width: 650px) {
  .s2b-account-start-choice {
    padding: 21px 18px;
  }

  .s2b-account-start-choice
  .form-radios {
    grid-template-columns: 1fr;
  }
}


/* S2B_ORGANIZATION_ONBOARDING_UI_20260903 */

.s2b-org-hero {
  margin: 0 0 22px;
  padding: 28px;
  border-radius: 22px;
  background:
    linear-gradient(
      135deg,
      #172536 0%,
      #263c52 100%
    );
  box-shadow:
    0 14px 34px rgba(17, 31, 46, .14);
}

.s2b-org-hero h1 {
  margin: 2px 0 9px;
  color: #fff;
  font-size: clamp(27px, 4vw, 38px);
  font-weight: 850;
  line-height: 1.1;
}

.s2b-org-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, .82);
  line-height: 1.65;
}

.s2b-org-eyebrow {
  margin-bottom: 5px;
  color: #e0b64f;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .12em;
}

.s2b-org-actions {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 15px;
  margin: 0 0 24px;
}

.s2b-org-action {
  display: flex;
  min-height: 72px;
  align-items: center;
  justify-content: center;
  padding: 16px 20px;
  border-radius: 16px;
  font-weight: 800;
  text-align: center;
  text-decoration: none !important;
  transition:
    transform .16s ease,
    box-shadow .16s ease,
    border-color .16s ease;
}

.s2b-org-action:hover {
  transform: translateY(-1px);
}

.s2b-org-action--primary {
  border: 1px solid #d8ad45;
  background: #d8ad45;
  color: #172536 !important;
  box-shadow:
    0 9px 22px rgba(30, 43, 58, .11);
}

.s2b-org-action--secondary {
  border: 1px solid rgba(30, 43, 58, .16);
  background: #fff;
  color: #1e2b3a !important;
}

.s2b-org-list {
  display: grid;
  gap: 15px;
}

.s2b-org-card,
.s2b-org-empty,
.s2b-org-form-card {
  padding: 22px;
  border: 1px solid rgba(30, 43, 58, .12);
  border-radius: 18px;
  background: #f4f8fc;
}

.s2b-org-card__top {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.s2b-org-card h2,
.s2b-org-empty h2,
.s2b-org-form-card h2 {
  margin: 0 0 7px;
  color: #1e2b3a;
  font-size: 20px;
  font-weight: 850;
}

.s2b-org-card__types {
  margin-top: 5px;
  color: #5c6e80;
  font-size: 14px;
}

.s2b-org-card__meta {
  margin-top: 10px;
  color: #23384d;
  font-weight: 700;
}

.s2b-org-status {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 30px;
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 850;
}

.s2b-org-status--pending {
  background: #fff4d6;
  color: #785a0d;
}

.s2b-org-status--verified {
  background: #e1f3e8;
  color: #21633a;
}

.s2b-org-status--rejected {
  background: #f8e4e4;
  color: #8c3030;
}

.s2b-org-card__notice {
  margin: 13px 0 0;
  color: #6c7885;
  font-size: 13px;
  line-height: 1.55;
}

.s2b-org-form-card {
  margin: 0 0 18px;
}

.s2b-org-form-card
.form-item {
  margin-bottom: 19px;
}

.s2b-org-verification-note {
  margin: 18px 0;
  padding: 16px 18px;
  border-left: 4px solid #d8ad45;
  border-radius: 10px;
  background: #fff8e7;
  color: #4d4a40;
  line-height: 1.55;
}

.s2b-org-submit,
.s2b-profile-organization-link {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px !important;
  border: 1px solid #d8ad45 !important;
  border-radius: 10px !important;
  background: #d8ad45 !important;
  color: #172536 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.s2b-org-cancel {
  display: inline-flex;
  margin-left: 12px;
  align-items: center;
  min-height: 44px;
  color: #516274;
  font-weight: 700;
}

@media (max-width: 650px) {
  .s2b-org-hero {
    padding: 23px 19px;
  }

  .s2b-org-actions {
    grid-template-columns: 1fr;
  }

  .s2b-org-card__top {
    flex-direction: column;
  }

  .s2b-org-cancel {
    margin-left: 4px;
  }
}


/* S2B_ORGANIZATION_ADMIN_REVIEW_UI_20260903 */

.s2b-org-admin-hero {
  margin: 0 0 24px;
  padding: 25px 28px;
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      #172536 0%,
      #263c52 100%
    );
  color: #fff;
}

.s2b-org-admin-hero h1 {
  margin: 3px 0 7px;
  color: #fff;
  font-size: 30px;
  font-weight: 850;
}

.s2b-org-admin-hero p {
  margin: 0;
  color: rgba(255, 255, 255, .82);
}

.s2b-org-admin-section {
  margin: 0 0 30px;
}

.s2b-org-admin-section > h2,
.s2b-org-admin-section > .contextual-region > h2 {
  color: #1e2b3a;
}

.s2b-org-admin-count {
  display: inline-flex;
  min-width: 27px;
  min-height: 27px;
  align-items: center;
  justify-content: center;
  margin-left: 7px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #d8ad45;
  color: #172536;
  font-size: 13px;
}

.s2b-org-admin-card {
  margin: 0 0 13px;
  padding: 19px 21px;
  border: 1px solid rgba(30, 43, 58, .13);
  border-radius: 14px;
  background: #f5f8fb;
}

.s2b-org-admin-card__top {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  justify-content: space-between;
}

.s2b-org-admin-card h3 {
  margin: 0 0 4px;
  color: #1e2b3a;
  font-size: 19px;
  font-weight: 850;
}

.s2b-org-admin-meta {
  color: #687888;
}

.s2b-org-admin-detail {
  margin: 13px 0;
  color: #435568;
  line-height: 1.6;
}

.s2b-org-admin-review-link {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 8px 14px;
  border-radius: 9px;
  background: #1e2b3a;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
}

.s2b-org-admin-empty {
  padding: 17px 19px;
  border: 1px dashed rgba(30, 43, 58, .2);
  border-radius: 12px;
  color: #697887;
  background: #fafbfd;
}

.s2b-org-review-data {
  margin: 0 0 20px;
  overflow: hidden;
  border: 1px solid rgba(30, 43, 58, .13);
  border-radius: 15px;
  background: #fff;
}

.s2b-org-review-row {
  display: grid;
  grid-template-columns:
    minmax(150px, .75fr)
    minmax(0, 1.5fr);
  gap: 20px;
  padding: 13px 17px;
  border-bottom: 1px solid rgba(30, 43, 58, .09);
}

.s2b-org-review-row:last-child {
  border-bottom: 0;
}

.s2b-org-review-row strong {
  color: #1e2b3a;
}

.s2b-org-review-row span {
  color: #586a7a;
}

.s2b-org-review-description {
  padding: 17px;
  border-top: 1px solid rgba(30, 43, 58, .09);
}

.s2b-org-review-description p {
  margin: 8px 0 0;
  color: #586a7a;
  line-height: 1.6;
}

.s2b-org-review-approve {
  background: #d8ad45 !important;
  border-color: #d8ad45 !important;
  color: #172536 !important;
  font-weight: 850 !important;
}

.s2b-org-review-reject {
  font-weight: 750 !important;
}

@media (max-width: 650px) {
  .s2b-org-admin-hero {
    padding: 22px 18px;
  }

  .s2b-org-admin-card__top {
    flex-direction: column;
  }

  .s2b-org-review-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}


/* S2B_USER_ORGANIZATION_ADMIN_HUB_UI_20260904 */

.s2b-directory-hero {
  margin: 0 0 22px;
  padding: 29px;
  border-radius: 20px;
  background:
    linear-gradient(
      135deg,
      #172536 0%,
      #294159 100%
    );
  color: #fff;
  box-shadow:
    0 14px 34px rgba(17, 31, 46, .14);
}

.s2b-directory-hero--compact {
  padding-top: 24px;
  padding-bottom: 24px;
}

.s2b-directory-hero h1 {
  margin: 3px 0 9px;
  color: #fff;
  font-size: clamp(27px, 4vw, 38px);
  font-weight: 850;
  line-height: 1.1;
}

.s2b-directory-hero p {
  max-width: 820px;
  margin: 0;
  color: rgba(255,255,255,.82);
  line-height: 1.65;
}

.s2b-directory-metrics {
  display: grid;
  grid-template-columns:
    repeat(5, minmax(0, 1fr));
  gap: 11px;
  margin: 0 0 22px;
}

.s2b-directory-metric {
  padding: 16px;
  border: 1px solid rgba(30,43,58,.11);
  border-radius: 14px;
  background: #fff;
}

.s2b-directory-metric strong {
  display: block;
  color: #172536;
  font-size: 25px;
  line-height: 1;
}

.s2b-directory-metric span {
  display: block;
  margin-top: 7px;
  color: #6a7988;
  font-size: 13px;
  font-weight: 700;
}

.s2b-directory-grid {
  display: grid;
  grid-template-columns:
    repeat(3, minmax(0, 1fr));
  gap: 15px;
  margin: 0 0 20px;
}

.s2b-directory-card {
  position: relative;
  padding: 22px;
  border: 1px solid rgba(30,43,58,.12);
  border-radius: 17px;
  background: #f4f8fc;
}

.s2b-directory-card__badge {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 5px 10px;
  border-radius: 999px;
  background: #fff1c8;
  color: #6e5310;
  font-size: 12px;
  font-weight: 850;
}

.s2b-directory-card h2 {
  margin: 0 0 8px;
  color: #172536;
  font-size: 20px;
  font-weight: 850;
}

.s2b-directory-card p {
  min-height: 74px;
  margin: 0 0 17px;
  color: #657584;
  line-height: 1.55;
}

.s2b-directory-open,
.s2b-directory-secondary-link {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 8px 14px;
  border-radius: 9px;
  background: #1e2b3a;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
}

.s2b-directory-secondary-link {
  background: #d8ad45;
  color: #172536 !important;
}

.s2b-directory-back {
  display: inline-flex;
  margin: 0 0 17px;
  color: #526679;
  font-weight: 750;
  text-decoration: none !important;
}

.s2b-directory-list {
  display: grid;
  gap: 12px;
}

.s2b-directory-row {
  padding: 19px 21px;
  border: 1px solid rgba(30,43,58,.12);
  border-radius: 15px;
  background: #f6f9fc;
}

.s2b-directory-row__top {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  justify-content: space-between;
}

.s2b-directory-row h3 {
  margin: 0 0 4px;
  color: #172536;
  font-size: 19px;
  font-weight: 850;
}

.s2b-directory-pill {
  display: inline-flex;
  flex: 0 0 auto;
  padding: 5px 10px;
  border-radius: 999px;
  background: #e7eef5;
  color: #405569;
  font-size: 12px;
  font-weight: 800;
}

.s2b-directory-muted {
  color: #73808c;
  font-size: 13px;
}

.s2b-directory-profile-meta {
  margin: 13px 0;
  color: #4b5e70;
  line-height: 1.6;
}

.s2b-directory-relation {
  margin: 8px 0;
  padding: 10px 12px;
  border-left: 3px solid #d8ad45;
  border-radius: 7px;
  background: #fff;
}

.s2b-directory-relation strong,
.s2b-directory-relation span {
  display: block;
}

.s2b-directory-relation strong {
  color: #1e2b3a;
}

.s2b-directory-relation span {
  margin-top: 2px;
  color: #6a7784;
  font-size: 13px;
}

@media (max-width: 900px) {
  .s2b-directory-metrics {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .s2b-directory-grid {
    grid-template-columns: 1fr;
  }

  .s2b-directory-card p {
    min-height: auto;
  }
}

@media (max-width: 650px) {
  .s2b-directory-hero {
    padding: 22px 18px;
  }

  .s2b-directory-metrics {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .s2b-directory-row__top {
    flex-direction: column;
  }
}


/* S2B_SAFE_ORGANIZATION_MANAGEMENT_UI_20260904 */

.s2b-org-edit-hero {
  margin: 0 0 22px;
  padding: 25px;
  border-radius: 18px;
  background:
    linear-gradient(
      135deg,
      #172536 0%,
      #294159 100%
    );
  color: #fff;
}

.s2b-org-edit-hero h1 {
  margin: 3px 0 8px;
  color: #fff;
  font-size: clamp(27px, 4vw, 36px);
  font-weight: 850;
}

.s2b-org-edit-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.82);
  line-height: 1.6;
}

.s2b-org-protected-note {
  margin: 18px 0;
  padding: 15px 17px;
  border-left: 4px solid #d8ad45;
  border-radius: 10px;
  background: #f7f3e7;
  color: #49596a;
}

.s2b-org-protected-note strong {
  color: #172536;
}

.s2b-org-protected-note p {
  margin: 5px 0 0;
}

.s2b-org-manage-link {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  margin-top: 14px;
  padding: 8px 15px;
  border-radius: 9px;
  background: #d8ad45;
  color: #172536 !important;
  font-weight: 850;
  text-decoration: none !important;
}

.s2b-org-save {
  min-height: 46px;
  padding-inline: 22px !important;
  background: #d8ad45 !important;
  color: #172536 !important;
  font-weight: 850 !important;
}

@media (max-width: 650px) {
  .s2b-org-edit-hero {
    padding: 21px 18px;
  }
}


/* ============================================================
 * S2B_PUBLIC_ORGANIZATION_PROFILE_UI_20260904
 * ============================================================ */

.s2b-public-organization {
  width: min(100%, 1120px);
  margin: 24px auto 52px;
}

.s2b-public-organization-hero {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 28px;
  align-items: center;
  padding: clamp(24px, 4vw, 38px);
  border: 1px solid rgba(216, 173, 69, .25);
  border-radius: 28px;
  background:
    radial-gradient(
      circle at 92% 0,
      rgba(216, 173, 69, .14),
      transparent 38%
    ),
    linear-gradient(
      135deg,
      #10283c,
      #203d55
    );
  box-shadow:
    0 16px 38px rgba(18, 39, 57, .13);
  color: #fff;
}

.s2b-public-organization-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.s2b-public-organization-logo {
  display: flex;
  width: 132px;
  height: 132px;
  align-items: center;
  justify-content: center;
  padding: 12px;
  border: 2px solid rgba(220, 177, 66, .75);
  border-radius: 22px;
  background: #fff;
  object-fit: contain;
  box-shadow:
    0 10px 25px rgba(0, 0, 0, .13);
}

.s2b-public-organization-logo--fallback {
  background:
    linear-gradient(
      145deg,
      #fff,
      #eef3f6
    );
  color: #183148;
  font-size: 35px;
  font-weight: 900;
  letter-spacing: -.03em;
}

.s2b-public-organization-hero h1 {
  margin: 5px 0 14px;
  color: #fff;
  font-size: clamp(34px, 5vw, 52px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: -.03em;
}

.s2b-public-organization-types {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 14px;
}

.s2b-public-organization-types span {
  display: inline-flex;
  padding: 7px 11px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .1);
  color: #fff;
  font-size: 14px;
  font-weight: 750;
}

.s2b-public-organization-verified {
  display: inline-flex;
  align-items: center;
  margin-top: 2px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(64, 181, 131, .14);
  color: #bcebd6;
  font-size: 14px;
  font-weight: 800;
}

.s2b-public-organization-grid {
  display: grid;
  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    );
  gap: 20px;
  margin-top: 20px;
}

.s2b-profile-organization-types {
  margin: -3px 0 18px;
  color: #73808c;
  font-size: 15px;
  line-height: 1.45;
}

.s2b-public-organization-person-list {
  display: grid;
  gap: 10px;
}

.s2b-public-organization-person {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 14px 15px;
  border: 1px solid #dce2e8;
  border-radius: 12px;
  background: #f8fafc;
  color: #172536;
  text-decoration: none;
}

.s2b-public-organization-person:hover {
  border-color: #d8ad45;
  background: #fffaf0;
  color: #172536;
}

.s2b-public-organization-person span {
  color: #6d7b88;
  font-size: 14px;
}

.s2b-profile-info-row--multiline {
  align-items: flex-start;
}

@media (max-width: 720px) {
  .s2b-public-organization {
    margin-top: 12px;
  }

  .s2b-public-organization-hero {
    grid-template-columns: 1fr;
    gap: 20px;
    border-radius: 23px;
  }

  .s2b-public-organization-logo {
    width: 110px;
    height: 110px;
  }

  .s2b-public-organization-logo-wrap {
    justify-content: flex-start;
  }

  .s2b-public-organization-grid {
    grid-template-columns: 1fr;
  }
}


/* ============================================================
 * S2B_USER_EDIT_FINAL_CLEANUP_UI_20260904
 * ============================================================ */

.s2b-profile-edit-section input[type="password"],
.s2b-profile-edit-section input[type="email"] {
  width: 100%;
}

.s2b-profile-edit-section .password-strength,
.s2b-profile-edit-section .password-confirm {
  margin-top: 8px;
}

.s2b-profile-edit-section .description,
.s2b-profile-edit-section .form-item__description {
  color: #6d7885;
  line-height: 1.5;
}

/* ============================================================
 * S2B_PROFILE_COLORED_ACCORDION_HEADERS_20260904
 *
 * Definitieve Ship2Buy-stijl voor:
 * - Persoonlijk profiel
 * - Mijn organisaties
 * - Privacy
 * - Account & beveiliging
 * ============================================================ */

.s2b-profile-edit-section {
  margin: 0 0 22px;
  overflow: hidden;
  border: 1px solid #dfe4e9;
  border-radius: 24px;
  background: #ffffff;
  box-shadow:
    0 10px 28px rgba(17, 38, 57, 0.06);
}


/* ------------------------------------------------------------
 * HEADER
 * ------------------------------------------------------------ */

details.s2b-profile-edit-section > summary {
  position: relative;
  display: flex;
  min-height: 82px;
  align-items: center;
  padding: 22px 68px 22px 28px;

  border: 0;
  border-radius: 0;

  background:
    linear-gradient(
      135deg,
      #102b43 0%,
      #183c59 58%,
      #204a67 100%
    );

  color: #ffffff;

  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;

  cursor: pointer;
  list-style: none;

  box-shadow:
    inset 0 -1px 0 rgba(255, 255, 255, 0.08);

  transition:
    background 0.2s ease,
    box-shadow 0.2s ease;
}


/* Standaard browser-pijltje weg. */

details.s2b-profile-edit-section > summary::-webkit-details-marker {
  display: none;
}

details.s2b-profile-edit-section > summary::marker {
  content: "";
}


/* Gouden bovenaccent. */

details.s2b-profile-edit-section > summary::before {
  content: "";

  position: absolute;
  top: 0;
  right: 0;
  left: 0;

  height: 4px;

  background:
    linear-gradient(
      90deg,
      #c89d32,
      #e4bd59,
      #c89d32
    );
}


/* Eigen Ship2Buy-chevron. */

details.s2b-profile-edit-section > summary::after {
  content: "";

  position: absolute;
  top: 50%;
  right: 29px;

  width: 13px;
  height: 13px;

  border-right: 3px solid #dfb54c;
  border-bottom: 3px solid #dfb54c;

  transform:
    translateY(-67%)
    rotate(45deg);

  transition:
    transform 0.2s ease;
}


/* ------------------------------------------------------------
 * OPEN TOESTAND
 * ------------------------------------------------------------ */

details.s2b-profile-edit-section[open] > summary {
  background:
    linear-gradient(
      135deg,
      #0d2941 0%,
      #174362 58%,
      #205674 100%
    );

  box-shadow:
    inset 0 -1px 0 rgba(223, 181, 76, 0.32);
}

details.s2b-profile-edit-section[open] > summary::after {
  transform:
    translateY(-30%)
    rotate(225deg);
}


/* Hover alleen waar apparaat dat ondersteunt. */

@media (hover: hover) {

  details.s2b-profile-edit-section > summary:hover {
    background:
      linear-gradient(
        135deg,
        #12334f 0%,
        #1b4767 58%,
        #245a78 100%
      );
  }

}


/* Toetsenbordtoegankelijkheid. */

details.s2b-profile-edit-section > summary:focus-visible {
  outline: 3px solid #dfb54c;
  outline-offset: -5px;
}


/* ------------------------------------------------------------
 * INHOUD
 * ------------------------------------------------------------ */

details.s2b-profile-edit-section[open] {
  border-color: #d6dce2;

  box-shadow:
    0 14px 34px rgba(17, 38, 57, 0.08);
}

details.s2b-profile-edit-section > summary + * {
  margin-top: 0;
}

details.s2b-profile-edit-section[open] > :not(summary) {
  background: #ffffff;
}


/* Intro's rustiger in de sectie. */

.s2b-profile-edit-section .s2b-profile-section-intro {
  color: #687787;
  line-height: 1.65;
}


/* Formulierlabels iets krachtiger. */

.s2b-profile-edit-section label {
  color: #182b3e;
  font-weight: 700;
}


/* ------------------------------------------------------------
 * MOBIEL
 * ------------------------------------------------------------ */

@media (max-width: 767px) {

  .s2b-profile-edit-section {
    margin-bottom: 18px;
    border-radius: 22px;
  }

  details.s2b-profile-edit-section > summary {
    min-height: 76px;

    padding:
      20px
      62px
      20px
      22px;

    font-size: 18px;
  }

  details.s2b-profile-edit-section > summary::after {
    right: 25px;

    width: 12px;
    height: 12px;
  }

}

/* ============================================================
 * S2B_PROFILE_BOOTSTRAP_ACCORDION_FINAL_20260904
 *
 * Bootstrap5 renders:
 *
 * .s2b-profile-edit-section
 *   > details.accordion-item
 *     > summary.accordion-button
 *
 * Previous selector targeted the <details> itself and therefore
 * never matched.
 * ============================================================ */


/* Buitenkaart. */
.s2b-profile-edit-section.form-wrapper.accordion {
  overflow: hidden !important;

  margin: 0 0 20px !important;

  border:
    1px solid
    rgba(21, 47, 70, 0.14)
    !important;

  border-radius: 22px !important;

  background: #ffffff !important;

  box-shadow:
    0 10px 28px
    rgba(16, 37, 56, 0.07)
    !important;
}


/* Bootstrap binnencontainer neutraliseren. */
.s2b-profile-edit-section
> details.accordion-item {
  overflow: hidden !important;

  margin: 0 !important;

  border: 0 !important;
  border-radius: 0 !important;

  background: #ffffff !important;
}


/* ============================================================
 * HEADER — GESLOTEN
 * ============================================================ */

.s2b-profile-edit-section
> details.accordion-item
> summary.accordion-button {
  position: relative !important;

  display: flex !important;
  align-items: center !important;

  width: 100% !important;
  min-height: 78px !important;

  margin: 0 !important;

  padding:
    21px
    66px
    21px
    25px
    !important;

  border: 0 !important;
  border-radius: 0 !important;

  background:
    linear-gradient(
      135deg,
      #112c45 0%,
      #173b59 55%,
      #1d4968 100%
    )
    !important;

  color: #ffffff !important;

  font-size: 19px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;

  text-decoration: none !important;

  box-shadow:
    inset 0 -1px 0
    rgba(255, 255, 255, 0.08)
    !important;

  cursor: pointer !important;

  /* Bootstrap accordion vars ook neutraliseren. */
  --bs-accordion-btn-color: #ffffff;
  --bs-accordion-btn-bg: transparent;
  --bs-accordion-active-color: #ffffff;
  --bs-accordion-active-bg: transparent;
  --bs-accordion-btn-focus-box-shadow: none;
}


/* Gouden Ship2Buy-accent links. */
.s2b-profile-edit-section
> details.accordion-item
> summary.accordion-button::before {
  content: "" !important;

  position: absolute !important;

  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;

  width: 5px !important;

  background:
    linear-gradient(
      180deg,
      #e2bc58 0%,
      #c7952c 100%
    )
    !important;
}


/* Bootstrap standaard chevron volledig vervangen. */
.s2b-profile-edit-section
> details.accordion-item
> summary.accordion-button::after {
  content: "" !important;

  position: absolute !important;

  top: 50% !important;
  right: 27px !important;

  width: 13px !important;
  height: 13px !important;

  margin: 0 !important;

  border: 0 !important;
  border-right:
    3px solid #e1b84f
    !important;
  border-bottom:
    3px solid #e1b84f
    !important;

  background: none !important;
  background-image: none !important;
  background-size: 0 !important;

  transform:
    translateY(-68%)
    rotate(45deg)
    !important;

  transition:
    transform 0.18s ease
    !important;
}


/* ============================================================
 * HEADER — OPEN
 * ============================================================ */

.s2b-profile-edit-section
> details.accordion-item[open]
> summary.accordion-button {
  background:
    linear-gradient(
      135deg,
      #0c273f 0%,
      #164360 55%,
      #205674 100%
    )
    !important;

  color: #ffffff !important;

  box-shadow:
    inset 0 -1px 0
    rgba(224, 181, 72, 0.38)
    !important;
}


.s2b-profile-edit-section
> details.accordion-item[open]
> summary.accordion-button::after {
  transform:
    translateY(-30%)
    rotate(225deg)
    !important;
}


/* Open kaart iets duidelijker. */
.s2b-profile-edit-section:has(
  > details.accordion-item[open]
) {
  border-color:
    rgba(202, 157, 48, 0.34)
    !important;

  box-shadow:
    0 13px 32px
    rgba(16, 37, 56, 0.09)
    !important;
}


/* ============================================================
 * FOCUS / HOVER
 * ============================================================ */

.s2b-profile-edit-section
> details.accordion-item
> summary.accordion-button:focus,
.s2b-profile-edit-section
> details.accordion-item
> summary.accordion-button:focus-visible {
  outline:
    3px solid
    rgba(224, 181, 72, 0.75)
    !important;

  outline-offset:
    -4px
    !important;

  box-shadow:
    none !important;
}


@media (hover: hover) {

  .s2b-profile-edit-section
  > details.accordion-item
  > summary.accordion-button:hover {
    background:
      linear-gradient(
        135deg,
        #163752 0%,
        #1b4867 55%,
        #245a78 100%
      )
      !important;
  }

}


/* ============================================================
 * INHOUD
 * ============================================================ */

.s2b-profile-edit-section
> details.accordion-item
> .accordion-body {
  padding:
    24px
    25px
    28px
    !important;

  background: #ffffff !important;
}


/* ============================================================
 * MOBIEL
 * ============================================================ */

@media (max-width: 767.98px) {

  .s2b-profile-edit-section.form-wrapper.accordion {
    margin-bottom: 18px !important;
    border-radius: 21px !important;
  }

  .s2b-profile-edit-section
  > details.accordion-item
  > summary.accordion-button {
    min-height: 74px !important;

    padding:
      19px
      60px
      19px
      22px
      !important;

    font-size: 18px !important;
  }

  .s2b-profile-edit-section
  > details.accordion-item
  > summary.accordion-button::after {
    right: 24px !important;

    width: 12px !important;
    height: 12px !important;
  }

  .s2b-profile-edit-section
  > details.accordion-item
  > .accordion-body {
    padding:
      23px
      21px
      26px
      !important;
  }

}

/* ============================================================
 * S2B_PROFILE_PASSWORD_DYNAMIC_UI_POLISH_20260904
 * Dynamische Drupal wachtwoordfeedback rustig/compact tonen.
 * ============================================================ */

.s2b-profile-edit-section .password-strength {
  margin-top: 9px !important;
}

.s2b-profile-edit-section .password-strength__meter {
  height: 7px !important;
  margin-bottom: 7px !important;
  border-radius: 99px !important;
  overflow: hidden !important;
}

.s2b-profile-edit-section .password-strength__title,
.s2b-profile-edit-section .password-confirm-message {
  margin-top: 6px !important;
  color: #667585 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

.s2b-profile-edit-section .password-strength__text {
  font-weight: 800 !important;
}

.s2b-profile-edit-section .password-confirm-message {
  margin-bottom: 2px !important;
}

@media (max-width: 767.98px) {

  .s2b-profile-edit-section .password-strength__title,
  .s2b-profile-edit-section .password-confirm-message {
    font-size: 13px !important;
  }

}

/* /S2B_PROFILE_PASSWORD_DYNAMIC_UI_POLISH_20260904 */




/* ============================================================
   S2B_REGISTER_GOLD_UI_20260904
   Ship2Buy registratie – navy / gold
   ============================================================ */

.s2b-register-account-only {
  max-width: 760px;
  margin: 0 auto 3rem;
  padding: 0;
}

.s2b-register-account-only .form-wrapper,
.s2b-register-account-only .js-form-wrapper {
  box-sizing: border-box;
}

/* Accountkaart */
.s2b-register-account-only > .form-wrapper:not(.form-actions),
.s2b-register-account-only .field--type-email,
.s2b-register-account-only .field--type-string {
  border-radius: 22px;
}

/* Labels */
.s2b-register-account-only label,
.s2b-register-account-only legend,
.s2b-register-account-only .fieldset-legend {
  color: #102f49;
  font-weight: 700;
}

/* Inputs */
.s2b-register-account-only input[type="text"],
.s2b-register-account-only input[type="email"],
.s2b-register-account-only input[type="password"] {
  width: 100%;
  min-height: 56px;
  padding: 0.8rem 1rem;
  border: 1px solid #d7dce2;
  border-radius: 13px;
  background: #fff;
  color: #102f49;
  box-shadow: none;
  transition:
    border-color .16s ease,
    box-shadow .16s ease;
}

.s2b-register-account-only input[type="text"]:focus,
.s2b-register-account-only input[type="email"]:focus,
.s2b-register-account-only input[type="password"]:focus {
  border-color: #d9ab39;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(217, 171, 57, .18);
}

/* Helpteksten */
.s2b-register-account-only .description,
.s2b-register-account-only .form-text {
  margin-top: .45rem;
  color: #6d7885;
  font-size: .95rem;
  line-height: 1.45;
}

/* Wachtwoord */
.s2b-register-account-only .password-strength,
.s2b-register-account-only .password-confirm {
  margin: .65rem 0;
  color: #102f49;
  font-weight: 600;
}

.s2b-register-account-only .password-strength__meter {
  overflow: hidden;
  height: 7px;
  margin-top: .45rem;
  border-radius: 999px;
  background: #edf0f3;
}

.s2b-register-account-only .password-strength__indicator {
  border-radius: 999px;
}

/* CAPTCHA als nette Ship2Buy-sectie */
.s2b-register-account-only .captcha {
  margin-top: 1.75rem;
  padding: 1.35rem;
  border: 1px solid rgba(217, 171, 57, .45);
  border-radius: 20px;
  background: #fff;
}

.s2b-register-account-only .captcha > legend,
.s2b-register-account-only .captcha > label {
  color: #102f49;
}

/* Primaire actie: Ship2Buy goud */
.s2b-register-account-only .form-actions {
  margin-top: 1.75rem;
}

.s2b-register-account-only .s2b-register-submit,
.s2b-register-account-only input[type="submit"] {
  min-height: 56px;
  padding: .85rem 1.7rem;
  border: 1px solid #d9ab39 !important;
  border-radius: 15px !important;
  background: #d9ab39 !important;
  color: #102f49 !important;
  font-weight: 800;
  box-shadow: none !important;
}

.s2b-register-account-only .s2b-register-submit:hover,
.s2b-register-account-only .s2b-register-submit:focus,
.s2b-register-account-only input[type="submit"]:hover,
.s2b-register-account-only input[type="submit"]:focus {
  background: #e4ba4b !important;
  border-color: #e4ba4b !important;
  color: #102f49 !important;
}

/* Mobiel */
@media (max-width: 767px) {
  .s2b-register-account-only {
    width: 100%;
  }

  .s2b-register-account-only input[type="text"],
  .s2b-register-account-only input[type="email"],
  .s2b-register-account-only input[type="password"] {
    min-height: 52px;
  }

  .s2b-register-account-only .captcha {
    padding: 1rem;
    border-radius: 16px;
  }

  .s2b-register-account-only .form-actions input[type="submit"] {
    width: 100%;
  }
}

/* /S2B_REGISTER_GOLD_UI_20260904 */



/* ============================================================
   S2B_REGISTER_LOGIN_PARITY_UI_20260904
   Registratie in dezelfde stijl als de Ship2Buy-login
   ============================================================ */

.s2b-register-page-shell {
  width: min(100%, 760px);
  margin: 1.5rem auto 4rem;
}

/* Core paginatitel verbergen: eigen hero bevat de titel. */
body:has(.s2b-register-page-shell) .block-page-title-block {
  display: none !important;
}

/* --------------------------------
   HERO
   -------------------------------- */

.s2b-register-hero {
  position: relative;
  overflow: hidden;
  margin: 0 0 2rem;
  padding: 2.6rem 2.8rem;
  border: 1px solid rgba(217, 171, 57, .35);
  border-radius: 28px;
  background:
    linear-gradient(
      135deg,
      #0d2c45 0%,
      #143d5a 65%,
      #234d61 100%
    );
  color: #fff;
  box-shadow:
    0 12px 34px rgba(16, 47, 73, .10);
}

.s2b-register-hero::after {
  position: absolute;
  right: -90px;
  bottom: -125px;
  width: 280px;
  height: 280px;
  border: 1px solid rgba(217, 171, 57, .22);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.s2b-register-hero__eyebrow {
  position: relative;
  z-index: 1;
  margin-bottom: 1rem;
  color: #e0b43e;
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: .18em;
}

.s2b-register-hero__title {
  position: relative;
  z-index: 1;
  margin: 0 0 .9rem;
  color: #fff;
  font-size: clamp(2.1rem, 5vw, 3.2rem);
  font-weight: 800;
  line-height: 1.08;
}

.s2b-register-hero__text {
  position: relative;
  z-index: 1;
  max-width: 620px;
  margin: 0;
  color: #eef3f6;
  font-size: 1.08rem;
  line-height: 1.65;
}


/* --------------------------------
   WITTE FORMULIERKAART
   -------------------------------- */

form.s2b-register-account-only {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 2.5rem;
  border: 1px solid #dce1e6;
  border-radius: 28px;
  background: #fff;
  box-shadow:
    0 10px 30px rgba(16, 47, 73, .06);
}

.s2b-register-card-intro {
  margin: 0 0 2rem;
}

.s2b-register-card-intro h2 {
  margin: 0 0 .55rem;
  color: #102f49;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.15;
}

.s2b-register-card-intro p {
  margin: 0;
  color: #74808c;
  font-size: 1.05rem;
  line-height: 1.55;
}


/* --------------------------------
   VELDEN
   -------------------------------- */

.s2b-register-account-only .form-item {
  margin-bottom: 1.5rem;
}

.s2b-register-account-only label {
  display: block;
  margin-bottom: .55rem;
  color: #102f49;
  font-size: 1.05rem;
  font-weight: 800;
}

.s2b-register-account-only input[type="text"],
.s2b-register-account-only input[type="email"],
.s2b-register-account-only input[type="password"] {
  width: 100%;
  min-height: 58px;
  padding: .85rem 1rem;
  border: 1px solid #cbd2d8;
  border-radius: 17px;
  background: #fff;
  color: #102f49;
  font-size: 1rem;
  box-shadow: none;
}

.s2b-register-account-only input[type="text"]:focus,
.s2b-register-account-only input[type="email"]:focus,
.s2b-register-account-only input[type="password"]:focus {
  border-color: #d9ab39;
  outline: none;
  box-shadow:
    0 0 0 4px rgba(217, 171, 57, .16);
}

.s2b-register-account-only .description,
.s2b-register-account-only .form-text {
  margin-top: .5rem;
  color: #74808c;
  font-size: .92rem;
  line-height: 1.45;
}


/* --------------------------------
   PASSWORD
   -------------------------------- */

.s2b-register-account-only .password-strength,
.s2b-register-account-only .password-confirm {
  margin-top: .55rem;
  color: #102f49;
  font-weight: 700;
}

.s2b-register-account-only .password-strength__meter {
  height: 7px;
  margin: .6rem 0;
  overflow: hidden;
  border-radius: 999px;
  background: #edf0f3;
}

.s2b-register-account-only .password-strength__indicator {
  border-radius: 999px;
}


/* --------------------------------
   CAPTCHA
   -------------------------------- */

.s2b-register-account-only .captcha {
  margin: 2rem 0 0;
  padding: 1.6rem;
  border: 1px solid #dce1e6;
  border-radius: 22px;
  background: #fbfcfd;
}

.s2b-register-account-only .captcha legend,
.s2b-register-account-only .captcha > label {
  color: #102f49;
  font-weight: 800;
}


/* --------------------------------
   GOUDEN CTA
   -------------------------------- */

.s2b-register-account-only .form-actions {
  margin: 2rem 0 0;
}

.s2b-register-account-only .s2b-register-submit,
.s2b-register-account-only input[type="submit"] {
  width: 100%;
  min-height: 58px;
  padding: .9rem 1.4rem;
  border: 1px solid #d9ab39 !important;
  border-radius: 17px !important;
  background: #d9ab39 !important;
  color: #102f49 !important;
  font-size: 1.05rem;
  font-weight: 800;
  box-shadow: none !important;
}

.s2b-register-account-only .s2b-register-submit:hover,
.s2b-register-account-only .s2b-register-submit:focus,
.s2b-register-account-only input[type="submit"]:hover,
.s2b-register-account-only input[type="submit"]:focus {
  border-color: #e5bb4b !important;
  background: #e5bb4b !important;
  color: #102f49 !important;
}


/* --------------------------------
   MOBILE
   -------------------------------- */

@media (max-width: 767px) {

  .s2b-register-page-shell {
    width: 100%;
    margin: 1.15rem auto 2.5rem;
  }

  /* S2B_REGISTER_HERO_COMPACT_MOBILE_20260904 */
  .s2b-register-hero {
    margin-bottom: 1rem;
    padding: 1.25rem 1.4rem;
    border-radius: 24px;
  }

  .s2b-register-hero__eyebrow {
    margin-bottom: .65rem;
    font-size: .92rem;
  }

  .s2b-register-hero__title {
    margin-bottom: .6rem;
    font-size: 2.35rem;
    line-height: 1.04;
  }

  .s2b-register-hero__text {
    font-size: 1rem;
    line-height: 1.45;
  }
  /* /S2B_REGISTER_HERO_COMPACT_MOBILE_20260904 */

  /* S2B_REGISTER_FORM_COMPACT_MOBILE_20260904 */
  form.s2b-register-account-only {
    padding: 1.35rem 1.15rem;
    border-radius: 22px;
  }

  .s2b-register-card-intro {
    margin: 0 0 1.35rem;
  }

  .s2b-register-card-intro h2 {
    font-size: 1.55rem;
    line-height: 1.12;
    margin-bottom: .4rem;
  }

  .s2b-register-card-intro p {
    font-size: .96rem;
    line-height: 1.45;
  }

  .s2b-register-account-only .form-item {
    margin-bottom: 1.15rem;
  }

  .s2b-register-account-only label {
    margin-bottom: .42rem;
    font-size: .98rem;
  }

  .s2b-register-account-only input[type="text"],
  .s2b-register-account-only input[type="email"],
  .s2b-register-account-only input[type="password"] {
    min-height: 50px;
    padding: .72rem .9rem;
    border-radius: 14px;
    font-size: .97rem;
  }

  .s2b-register-account-only .description,
  .s2b-register-account-only .form-text {
    margin-top: .38rem;
    font-size: .88rem;
    line-height: 1.38;
  }

  .s2b-register-account-only .captcha {
    padding: 1rem;
    border-radius: 16px;
  }

  .s2b-register-account-only .form-actions {
    margin-top: 1.5rem;
  }

  .s2b-register-account-only .form-actions input[type="submit"] {
    min-height: 52px;
    font-size: 1rem;
  }
  /* /S2B_REGISTER_FORM_COMPACT_MOBILE_20260904 */

}

/* /S2B_REGISTER_LOGIN_PARITY_UI_20260904 */

/* ============================================================
   S2B_REGISTER_MOBILE_DENSITY_V2_20260904
   Compacte mobiele registratie zonder desktop te wijzigen.
   ============================================================ */

@media (max-width: 767px) {

  /* Pagina iets minder verticale marge. */
  .s2b-register-page-shell {
    margin-top: .75rem;
    margin-bottom: 1.75rem;
  }

  /* Formulierkaart: minder massief. */
  form.s2b-register-account-only {
    padding: 1.05rem .95rem;
    border-radius: 19px;
  }

  /* Kop van formulierkaart. */
  .s2b-register-card-intro {
    margin-bottom: 1rem;
  }

  .s2b-register-card-intro h2 {
    margin-bottom: .3rem;
    font-size: 1.4rem;
    line-height: 1.1;
  }

  .s2b-register-card-intro p {
    font-size: .9rem;
    line-height: 1.35;
  }

  /* Algemene ruimte tussen velden sterk terugbrengen. */
  .s2b-register-account-only .form-item {
    margin-top: 0;
    margin-bottom: .8rem;
  }

  /* Labels compacter maar nog duidelijk. */
  .s2b-register-account-only label {
    margin-bottom: .32rem;
    font-size: .92rem;
    line-height: 1.25;
  }

  /* Mobiele invoervelden. */
  .s2b-register-account-only input[type="text"],
  .s2b-register-account-only input[type="email"],
  .s2b-register-account-only input[type="password"] {
    min-height: 46px;
    padding: .58rem .75rem;
    border-radius: 12px;
    font-size: .95rem;
  }

  /* Helpteksten onder velden. */
  .s2b-register-account-only .description,
  .s2b-register-account-only .form-text {
    margin-top: .28rem;
    margin-bottom: 0;
    font-size: .82rem;
    line-height: 1.32;
  }

  /*
   * Drupal password-confirm heeft een bovenliggende required
   * label/marker. In onze opmaak zijn de twee echte labels al
   * aanwezig, dus de losse rode asterisk mag weg.
   */
  .s2b-register-account-only .form-type-password-confirm > label {
    display: none;
  }

  /* Password-confirm wrappers mogen geen grote standaardmarges houden. */
  .s2b-register-account-only .password-parent,
  .s2b-register-account-only .confirm-parent {
    margin-top: 0;
    margin-bottom: .8rem;
  }

  /* Wachtwoordsterkte compact. */
  .s2b-register-account-only .password-strength,
  .s2b-register-account-only .password-confirm {
    margin-top: .3rem;
    margin-bottom: 0;
    font-size: .84rem;
    line-height: 1.25;
  }

  .s2b-register-account-only .password-strength__meter {
    height: 5px;
    margin: .3rem 0;
  }

  /* Eventuele wachtwoordsuggesties ook niet oversized. */
  .s2b-register-account-only .password-suggestions {
    margin: .55rem 0;
    padding: .7rem;
    font-size: .82rem;
    line-height: 1.35;
  }

  /* CAPTCHA minder groot. */
  .s2b-register-account-only .captcha {
    margin-top: 1rem;
    padding: .85rem;
    border-radius: 14px;
  }

  /* CTA passend bij compactere velden. */
  .s2b-register-account-only .form-actions {
    margin-top: 1.15rem;
  }

  .s2b-register-account-only .s2b-register-submit,
  .s2b-register-account-only input[type="submit"] {
    min-height: 48px;
    padding: .7rem 1rem;
    border-radius: 13px !important;
    font-size: .95rem;
  }
}

/* /S2B_REGISTER_MOBILE_DENSITY_V2_20260904 */



/* ============================================================
   S2B_ORGANIZATION_EDIT_FORM_UI_V2_20260904
   Safe organization management in Ship2Buy visual language.
   ============================================================ */

.s2b-org-edit-form {
  width: min(100%, 860px);
  margin-inline: auto;
  color: #172536;
}

/* ------------------------------------------------------------
   HERO – bestaande vorm behouden, iets meer S2B verfijning.
   ------------------------------------------------------------ */

.s2b-org-edit-form .s2b-org-edit-hero {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(216, 173, 69, .32);
  border-radius: 24px;
  background:
    linear-gradient(
      135deg,
      #102f49 0%,
      #193f5b 68%,
      #294f63 100%
    );
  box-shadow: 0 12px 30px rgba(16, 47, 73, .08);
}

.s2b-org-edit-form .s2b-org-edit-hero::after {
  position: absolute;
  right: -100px;
  bottom: -145px;
  width: 290px;
  height: 290px;
  border: 1px solid rgba(216, 173, 69, .20);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.s2b-org-edit-form .s2b-org-edit-hero > * {
  position: relative;
  z-index: 1;
}

/* ------------------------------------------------------------
   ALGEMENE LABELS / VELDEN
   ------------------------------------------------------------ */

.s2b-org-edit-form .form-item {
  margin: 0 0 1.15rem;
}

.s2b-org-edit-form label {
  display: block;
  margin: 0 0 .42rem;
  color: #102f49;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.3;
}

.s2b-org-edit-form input[type="text"],
.s2b-org-edit-form input[type="email"],
.s2b-org-edit-form input[type="url"],
.s2b-org-edit-form input[type="tel"],
.s2b-org-edit-form select,
.s2b-org-edit-form textarea {
  width: 100%;
  border: 1px solid #cbd3da;
  border-radius: 14px;
  background: #fff;
  color: #172536;
  font-size: .98rem;
  box-shadow: none;
  transition:
    border-color .15s ease,
    box-shadow .15s ease;
}

.s2b-org-edit-form input[type="text"],
.s2b-org-edit-form input[type="email"],
.s2b-org-edit-form input[type="url"],
.s2b-org-edit-form input[type="tel"],
.s2b-org-edit-form select {
  min-height: 50px;
  padding: .72rem .9rem;
}

.s2b-org-edit-form textarea {
  min-height: 110px;
  padding: .8rem .9rem;
  line-height: 1.45;
  resize: vertical;
}

.s2b-org-edit-form input:focus,
.s2b-org-edit-form select:focus,
.s2b-org-edit-form textarea:focus {
  border-color: #d8ad45;
  outline: none;
  box-shadow: 0 0 0 4px rgba(216, 173, 69, .14);
}

.s2b-org-edit-form .description,
.s2b-org-edit-form .form-text {
  margin-top: .35rem;
  color: #73808c;
  font-size: .87rem;
  line-height: 1.4;
}

/* ------------------------------------------------------------
   LOGO-UPLOAD – van kaal Drupalveld naar een nette uploadkaart.
   ------------------------------------------------------------ */

.s2b-org-edit-form > .form-item-logo,
.s2b-org-edit-form .js-form-item-logo {
  margin: 0 0 1.15rem;
  padding: 1.1rem;
  border: 1px solid #dce2e7;
  border-radius: 18px;
  background: #fbfcfd;
}

.s2b-org-edit-form .form-managed-file {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
}

.s2b-org-edit-form input[type="file"] {
  max-width: 100%;
  color: #657482;
  font-size: .9rem;
}

.s2b-org-edit-form input[type="file"]::file-selector-button {
  min-height: 42px;
  margin-right: .7rem;
  padding: .55rem .9rem;
  border: 1px solid #d8ad45;
  border-radius: 11px;
  background: #d8ad45;
  color: #172536;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.s2b-org-edit-form input[type="file"]::file-selector-button:hover {
  background: #e1b84e;
}

/* ------------------------------------------------------------
   DETAILS / ACCORDION
   ------------------------------------------------------------ */

.s2b-org-edit-form .s2b-org-edit-section {
  margin: 0 0 1.25rem;
  overflow: hidden;
  border: 1px solid #dce2e7;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 7px 22px rgba(16, 47, 73, .045);
}

.s2b-org-edit-form .s2b-org-edit-section > summary {
  position: relative;
  padding: 1rem 3rem 1rem 1.2rem;
  border: 0;
  background: #fff;
  color: #102f49;
  font-size: 1.08rem;
  font-weight: 850;
  cursor: pointer;
  list-style: none;
}

.s2b-org-edit-form .s2b-org-edit-section > summary::-webkit-details-marker {
  display: none;
}

.s2b-org-edit-form .s2b-org-edit-section > summary::after {
  position: absolute;
  top: 50%;
  right: 1.2rem;
  width: 10px;
  height: 10px;
  border-right: 2px solid #d8ad45;
  border-bottom: 2px solid #d8ad45;
  content: "";
  transform: translateY(-65%) rotate(45deg);
  transition: transform .16s ease;
}

.s2b-org-edit-form .s2b-org-edit-section[open] > summary {
  border-bottom: 1px solid #edf0f2;
  background:
    linear-gradient(
      90deg,
      rgba(216, 173, 69, .10),
      rgba(216, 173, 69, .025)
    );
}

.s2b-org-edit-form .s2b-org-edit-section[open] > summary::after {
  transform: translateY(-35%) rotate(225deg);
}

/*
 * Drupal plaatst de inhoud van details in een wrapper.
 * Ondersteun zowel moderne als oudere markup.
 */
.s2b-org-edit-form .s2b-org-edit-section > .details-wrapper,
.s2b-org-edit-form .s2b-org-edit-section > .details__wrapper {
  padding: 1.15rem 1.2rem .15rem;
}

/* ------------------------------------------------------------
   BESCHERMDE INFO
   ------------------------------------------------------------ */

.s2b-org-edit-form .s2b-org-protected-note {
  margin: 1rem 0 1.2rem;
  padding: .95rem 1rem;
  border: 1px solid rgba(216, 173, 69, .32);
  border-left: 4px solid #d8ad45;
  border-radius: 14px;
  background: #fffaf0;
  color: #596978;
  font-size: .9rem;
  line-height: 1.45;
}

/* ------------------------------------------------------------
   ACTIES
   ------------------------------------------------------------ */

.s2b-org-edit-form .form-actions {
  margin: 1.35rem 0 0;
}

.s2b-org-edit-form .s2b-org-save {
  min-height: 50px;
  padding: .72rem 1.25rem !important;
  border: 1px solid #d8ad45 !important;
  border-radius: 13px !important;
  background: #d8ad45 !important;
  color: #172536 !important;
  font-size: .98rem !important;
  font-weight: 850 !important;
  box-shadow: none !important;
}

.s2b-org-edit-form .s2b-org-save:hover,
.s2b-org-edit-form .s2b-org-save:focus {
  border-color: #e3b94d !important;
  background: #e3b94d !important;
}

/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width: 650px) {

  .s2b-org-edit-form {
    width: 100%;
  }

  .s2b-org-edit-form .s2b-org-edit-hero {
    margin-bottom: 1rem;
    padding: 1.3rem 1.15rem;
    border-radius: 22px;
  }

  .s2b-org-edit-form .s2b-org-edit-hero h1 {
    margin-bottom: .55rem;
    font-size: 2rem;
    line-height: 1.08;
  }

  .s2b-org-edit-form .s2b-org-edit-hero p {
    font-size: .94rem;
    line-height: 1.45;
  }

  .s2b-org-edit-form > .form-item-logo,
  .s2b-org-edit-form .js-form-item-logo {
    padding: .9rem;
    border-radius: 16px;
  }

  .s2b-org-edit-form .s2b-org-edit-section {
    margin-bottom: 1rem;
    border-radius: 17px;
  }

  .s2b-org-edit-form .s2b-org-edit-section > summary {
    padding: .85rem 2.8rem .85rem 1rem;
    font-size: 1rem;
  }

  .s2b-org-edit-form .s2b-org-edit-section > summary::after {
    right: 1rem;
  }

  .s2b-org-edit-form .s2b-org-edit-section > .details-wrapper,
  .s2b-org-edit-form .s2b-org-edit-section > .details__wrapper {
    padding: .9rem .95rem .05rem;
  }

  .s2b-org-edit-form .form-item {
    margin-bottom: .85rem;
  }

  .s2b-org-edit-form label {
    margin-bottom: .32rem;
    font-size: .92rem;
  }

  .s2b-org-edit-form input[type="text"],
  .s2b-org-edit-form input[type="email"],
  .s2b-org-edit-form input[type="url"],
  .s2b-org-edit-form input[type="tel"],
  .s2b-org-edit-form select {
    min-height: 46px;
    padding: .6rem .75rem;
    border-radius: 12px;
    font-size: .94rem;
  }

  .s2b-org-edit-form textarea {
    min-height: 96px;
    padding: .7rem .75rem;
    border-radius: 12px;
    font-size: .94rem;
  }

  .s2b-org-edit-form .description,
  .s2b-org-edit-form .form-text {
    margin-top: .28rem;
    font-size: .82rem;
    line-height: 1.35;
  }

  .s2b-org-edit-form input[type="file"] {
    width: 100%;
    font-size: .84rem;
  }

  .s2b-org-edit-form input[type="file"]::file-selector-button {
    min-height: 40px;
    margin-right: .45rem;
    padding: .5rem .7rem;
    border-radius: 10px;
  }

  .s2b-org-edit-form .s2b-org-save {
    width: 100%;
    min-height: 48px;
  }
}

/* /S2B_ORGANIZATION_EDIT_FORM_UI_V2_20260904 */


/* ============================================================
   S2B_ORG_EDIT_HIDE_CORE_TITLE_20260904
   Eigen Ship2Buy-hero bevat de paginatitel al.
   ============================================================ */

body:has(.s2b-org-edit-form) .block-page-title-block {
  display: none !important;
}

/* /S2B_ORG_EDIT_HIDE_CORE_TITLE_20260904 */


/* ============================================================
   S2B_REGISTER_DESKTOP_COMPACT_20260904
   Desktopregistratie compacter, in verhouding met mobile
   ============================================================ */

@media (min-width: 768px) {

  .s2b-register-page-shell {
    width: min(100%, 650px);
    margin: 1rem auto 2.5rem;
  }

  /* Compactere hero */
  .s2b-register-hero {
    margin-bottom: 1.25rem;
    padding: 1.55rem 2rem 1.65rem;
    border-radius: 22px;
  }

  .s2b-register-hero__eyebrow {
    margin-bottom: .55rem;
    font-size: .82rem;
    letter-spacing: .16em;
  }

  .s2b-register-hero__title {
    margin-bottom: .55rem;
    font-size: 2.15rem;
    line-height: 1.08;
  }

  .s2b-register-hero__text {
    max-width: 560px;
    font-size: .95rem;
    line-height: 1.5;
  }

  /* Compactere witte formulierkaart */
  form.s2b-register-account-only {
    padding: 1.55rem 1.8rem 1.7rem;
    border-radius: 22px;
  }

  .s2b-register-card-intro {
    margin-bottom: 1.25rem;
  }

  .s2b-register-card-intro h2 {
    margin-bottom: .3rem;
    font-size: 1.55rem;
  }

  .s2b-register-card-intro p {
    font-size: .9rem;
    line-height: 1.4;
  }

  /* Minder verticale ruimte tussen velden */
  .s2b-register-account-only .form-item {
    margin-bottom: 1rem;
  }

  .s2b-register-account-only label {
    margin-bottom: .35rem;
    font-size: .92rem;
  }

  /* Kleinere desktopvelden */
  .s2b-register-account-only input[type="text"],
  .s2b-register-account-only input[type="email"],
  .s2b-register-account-only input[type="password"] {
    min-height: 48px;
    padding: .6rem .85rem;
    border-radius: 13px;
    font-size: .95rem;
  }

  .s2b-register-account-only .description,
  .s2b-register-account-only .form-text {
    margin-top: .3rem;
    font-size: .8rem;
    line-height: 1.35;
  }

  /* Wachtwoordblok minder hoog */
  .s2b-register-account-only .password-strength,
  .s2b-register-account-only .password-confirm {
    margin-top: .3rem;
    font-size: .86rem;
  }

  .s2b-register-account-only .password-strength__meter {
    height: 5px;
    margin: .35rem 0;
  }

  /* Compactere captcha-kaart */
  .s2b-register-account-only .captcha {
    margin-top: 1.25rem;
    padding: 1rem 1.15rem;
    border-radius: 17px;
  }

  /* Compactere CTA */
  .s2b-register-account-only .form-actions {
    margin-top: 1.3rem;
  }

  .s2b-register-account-only .s2b-register-submit,
  .s2b-register-account-only input[type="submit"] {
    min-height: 49px;
    padding: .65rem 1.25rem;
    border-radius: 14px !important;
    font-size: .95rem;
  }
}

/* /S2B_REGISTER_DESKTOP_COMPACT_20260904 */


/* ============================================================
   S2B_PROFILE_SAVE_ACTION_VISIBLE_20260905
   Bestaande Drupal-profielactie zichtbaar onder de accordions.
   ============================================================ */

.s2b-profile-edit-form .s2b-profile-edit-actions,
.s2b-profile-edit-form > .form-actions {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  width: 100%;
  margin: 22px 0 32px !important;
  padding: 0;
  align-items: center;
}

.s2b-profile-edit-form .s2b-profile-save {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center;
  justify-content: center;
}

@media (max-width: 760px) {
  .s2b-profile-edit-form .s2b-profile-edit-actions,
  .s2b-profile-edit-form > .form-actions {
    margin-top: 16px !important;
  }

  .s2b-profile-edit-form .s2b-profile-save {
    width: 100%;
  }
}

/* /S2B_PROFILE_SAVE_ACTION_VISIBLE_20260905 */


/* ============================================================
   S2B_PROFILE_GLOBAL_SAVE_BAR_UI_20260905
   Afsluitende opslagactie voor het volledige /edit-formulier.
   ============================================================ */

.s2b-profile-save-bar {
  width: 100%;
  margin: 24px 0 38px;
  padding: 18px 20px;
  border: 1px solid rgba(30, 43, 58, .12);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(16, 32, 51, .05);
}

.s2b-profile-save-bar .form-actions {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  align-items: center;
}

.s2b-profile-save-bar .s2b-profile-save {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 52px !important;
  padding: 0 26px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8ae4c !important;
  border-radius: 13px !important;
  background: #d8ae4c !important;
  color: #14263a !important;
  font-size: 16px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.s2b-profile-save-bar .s2b-profile-save:hover,
.s2b-profile-save-bar .s2b-profile-save:focus {
  background: #e1b84e !important;
  border-color: #e1b84e !important;
  color: #14263a !important;
}

@media (max-width: 760px) {
  .s2b-profile-save-bar {
    margin-top: 16px;
    padding: 14px;
    border-radius: 15px;
  }

  .s2b-profile-save-bar .s2b-profile-save {
    width: 100%;
  }
}

/* /S2B_PROFILE_GLOBAL_SAVE_BAR_UI_20260905 */


/* ============================================================
   S2B_PROFILE_EDIT_VIEW_BUTTON_UI_20260905
   Profiel bekijken rechts in de profielbewerk-hero.
   ============================================================ */

.s2b-profile-edit-intro {
  position: relative;
  padding-right: 205px;
}

.s2b-profile-edit-view-button {
  position: absolute;
  top: 25px;
  right: 28px;
  display: inline-flex;
  min-height: 46px;
  padding: 0 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid #1e2b3a;
  border-radius: 13px;
  background: #1e2b3a;
  color: #fff !important;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(30, 43, 58, .14);
}

.s2b-profile-edit-view-button:hover,
.s2b-profile-edit-view-button:focus {
  background: #14263a;
  border-color: #14263a;
  color: #fff !important;
  text-decoration: none !important;
}

@media (max-width: 760px) {
  .s2b-profile-edit-intro {
    padding-right: 20px;
  }

  .s2b-profile-edit-view-button {
    position: static;
    width: 100%;
    margin-top: 16px;
  }
}

/* /S2B_PROFILE_EDIT_VIEW_BUTTON_UI_20260905 */


/* ============================================================
   S2B_PROFILE_ROLE_MULTISELECT_UI_20260905
   Compacte multi-select dropdown voor persoonlijke rollen.
   ============================================================ */

.s2b-role-native-select {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.s2b-role-multiselect {
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-top: 4px;
}

.s2b-role-multiselect__toggle {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 50px;
  padding: 11px 46px 11px 15px;
  align-items: center;
  border: 1px solid #cbd5df;
  border-radius: 11px;
  background: #fff;
  color: #1e2b3a;
  font: inherit;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
}

.s2b-role-multiselect__toggle::after {
  position: absolute;
  top: 50%;
  right: 17px;
  width: 9px;
  height: 9px;
  border-right: 2px solid #d8ae4c;
  border-bottom: 2px solid #d8ae4c;
  content: "";
  transform:
    translateY(-70%)
    rotate(45deg);
}

.s2b-role-multiselect__toggle[aria-expanded="true"] {
  border-color: #d8ae4c;
  box-shadow:
    0 0 0 3px
    rgba(216, 174, 76, .14);
}

.s2b-role-multiselect__toggle[aria-expanded="true"]::after {
  transform:
    translateY(-30%)
    rotate(225deg);
}

.s2b-role-multiselect__panel {
  position: absolute;
  z-index: 80;
  top: calc(100% + 7px);
  left: 0;
  width: 100%;
  max-height: 330px;
  overflow-y: auto;
  padding: 7px;
  border: 1px solid #d8dee5;
  border-radius: 13px;
  background: #fff;
  box-shadow:
    0 14px 34px
    rgba(20, 38, 58, .15);
}

.s2b-role-multiselect__option {
  display: flex;
  min-height: 42px;
  margin: 0;
  padding: 8px 10px;
  gap: 10px;
  align-items: center;
  border-radius: 9px;
  color: #26394b;
  font-weight: 600;
  cursor: pointer;
}

.s2b-role-multiselect__option:hover {
  background: #f4f7fb;
}

.s2b-role-multiselect__option input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #d8ae4c;
  flex: 0 0 auto;
}

@media (max-width: 760px) {
  .s2b-role-multiselect__toggle {
    min-height: 48px;
    padding:
      10px 42px
      10px 13px;
  }

  .s2b-role-multiselect__panel {
    max-height: 290px;
  }
}

/* /S2B_PROFILE_ROLE_MULTISELECT_UI_20260905 */


/* ============================================================
   S2B_ORG_PROFILE_UNLINK_UI_20260905
   ============================================================ */

.s2b-org-profile-unlink {
  display: flex;
  width: 100%;
  margin: 18px 0 34px;
  padding: 17px 19px;
  gap: 20px;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #dce2e7;
  border-radius: 16px;
  background: #f8fafc;
}

.s2b-org-profile-unlink__copy strong {
  display: block;
  margin-bottom: 4px;
  color: #172536;
  font-weight: 850;
}

.s2b-org-profile-unlink__copy p {
  margin: 0;
  color: #657482;
  font-size: .88rem;
}

.s2b-org-profile-unlink__button {
  display: inline-flex;
  min-height: 44px;
  padding: 0 15px;
  align-items: center;
  justify-content: center;
  border: 1px solid #b7c0c8;
  border-radius: 12px;
  background: #fff;
  color: #596775 !important;
  font-weight: 800;
  text-decoration: none !important;
  white-space: nowrap;
}

.s2b-org-profile-unlink__button:hover,
.s2b-org-profile-unlink__button:focus {
  border-color: #a94848;
  background: #fff8f8;
  color: #923838 !important;
}

.s2b-org-unlink-blocked {
  max-width: 720px;
  margin: 30px auto;
  padding: 22px;
  border: 1px solid #dfc062;
  border-radius: 16px;
  background: #fffaf0;
}

@media (max-width: 760px) {
  .s2b-org-profile-unlink {
    display: block;
  }

  .s2b-org-profile-unlink__button {
    width: 100%;
    margin-top: 14px;
    white-space: normal;
    text-align: center;
  }
}

/* /S2B_ORG_PROFILE_UNLINK_UI_20260905 */


/* ============================================================
   S2B_ORG_UNLINK_SHIP2BUY_UI_20260905
   Ship2Buy styling organisatiekoppeling verwijderen.
   ============================================================ */

/* Core Drupal paginatitel verbergen; eigen hero bevat titel. */
body:has(.s2b-org-leave-form--confirm) .block-page-title-block {
  display: none !important;
}

.s2b-org-leave-form--confirm {
  width: min(calc(100% - 32px), 760px);
  margin: 28px auto 48px;
}


/* ------------------------------------------------------------
   HERO
   ------------------------------------------------------------ */

.s2b-org-leave-hero {
  margin-bottom: 18px;
  padding: 26px 30px;
  overflow: hidden;
  border: 1px solid rgba(216, 174, 76, .55);
  border-radius: 24px;
  background:
    linear-gradient(
      135deg,
      #102f49 0%,
      #173c59 65%,
      #0e526b 100%
    );
  color: #fff;
  box-shadow:
    0 12px 30px
    rgba(16, 47, 73, .12);
}

.s2b-org-leave-hero__eyebrow {
  margin-bottom: 8px;
  color: #d8ae4c;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .14em;
}

.s2b-org-leave-hero h1 {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.08;
  font-weight: 850;
}

.s2b-org-leave-hero p {
  max-width: 600px;
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: 15px;
  line-height: 1.55;
}


/* ------------------------------------------------------------
   CONFIRMATIEKAART
   ------------------------------------------------------------ */

.s2b-org-leave-card {
  padding: 26px 28px;
  border: 1px solid #dce2e7;
  border-radius: 20px;
  background: #fff;
  box-shadow:
    0 9px 26px
    rgba(16, 47, 73, .06);
}

.s2b-org-leave-card h2 {
  margin: 0 0 12px;
  color: #172536;
  font-size: 23px;
  line-height: 1.22;
  font-weight: 850;
}

.s2b-org-leave-card > .description,
.s2b-org-leave-card .description {
  margin: 0 0 18px;
  color: #596978;
  font-size: 15px;
  line-height: 1.6;
}


/* ------------------------------------------------------------
   INFO
   ------------------------------------------------------------ */

.s2b-org-leave-notice {
  display: flex;
  margin: 20px 0;
  padding: 13px 15px;
  gap: 4px;
  flex-direction: column;
  border-left: 4px solid #d8ae4c;
  border-radius: 10px;
  background: #fffaf0;
}

.s2b-org-leave-notice strong {
  color: #172536;
  font-size: 14px;
  font-weight: 850;
}

.s2b-org-leave-notice span {
  color: #657482;
  font-size: 13px;
  line-height: 1.45;
}


/* ------------------------------------------------------------
   ACTIES
   ------------------------------------------------------------ */

.s2b-org-leave-card .form-actions {
  display: flex !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}

.s2b-org-leave-card .form-actions input[type="submit"],
.s2b-org-leave-card .form-actions button[type="submit"] {
  display: inline-flex !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8ae4c !important;
  border-radius: 13px !important;
  background: #d8ae4c !important;
  color: #172536 !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.s2b-org-leave-card .form-actions input[type="submit"]:hover,
.s2b-org-leave-card .form-actions input[type="submit"]:focus,
.s2b-org-leave-card .form-actions button[type="submit"]:hover,
.s2b-org-leave-card .form-actions button[type="submit"]:focus {
  border-color: #e3ba55 !important;
  background: #e3ba55 !important;
  color: #172536 !important;
}

.s2b-org-leave-card .form-actions a {
  display: inline-flex !important;
  min-height: 50px;
  margin: 0 !important;
  padding: 0 20px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #bcc6cf !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: #334454 !important;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: none !important;
}

.s2b-org-leave-card .form-actions a:hover,
.s2b-org-leave-card .form-actions a:focus {
  border-color: #172536 !important;
  color: #172536 !important;
}


/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media (max-width: 760px) {

  .s2b-org-leave-form--confirm {
    width: calc(100% - 24px);
    margin: 14px auto 32px;
  }

  .s2b-org-leave-hero {
    margin-bottom: 12px;
    padding: 20px 18px;
    border-radius: 19px;
  }

  .s2b-org-leave-hero h1 {
    font-size: 27px;
  }

  .s2b-org-leave-hero p {
    font-size: 14px;
  }

  .s2b-org-leave-card {
    padding: 20px 17px;
    border-radius: 18px;
  }

  .s2b-org-leave-card h2 {
    font-size: 20px;
  }

  .s2b-org-leave-card .form-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .s2b-org-leave-card .form-actions input[type="submit"],
  .s2b-org-leave-card .form-actions button[type="submit"],
  .s2b-org-leave-card .form-actions a {
    width: 100% !important;
    min-height: 48px !important;
  }
}

/* /S2B_ORG_UNLINK_SHIP2BUY_UI_20260905 */


/* ============================================================
   S2B_ORG_OFFICIAL_CHANGE_UI_20260905
   Officiële bedrijfsgegevens / reviewworkflow.
   ============================================================ */

.s2b-org-official-current {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0 20px;
}

.s2b-org-official-current > div {
  padding: 13px 14px;
  border: 1px solid #e2e7eb;
  border-radius: 13px;
  background: #f8fafb;
}

.s2b-org-official-current span {
  display: block;
  margin-bottom: 4px;
  color: #73808b;
  font-size: .78rem;
  font-weight: 700;
}

.s2b-org-official-current strong {
  display: block;
  color: #172536;
  font-size: .94rem;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.s2b-org-official-status {
  margin: 16px 0;
  padding: 14px 16px;
  border-left: 4px solid #d8ae4c;
  border-radius: 12px;
  background: #fff9eb;
}

.s2b-org-official-status strong {
  display: block;
  color: #172536;
  font-weight: 850;
}

.s2b-org-official-status p {
  margin: 5px 0 0;
  color: #64727e;
  line-height: 1.45;
}

.s2b-org-official-request-link {
  display: inline-flex;
  min-height: 46px;
  margin-top: 15px;
  padding: 0 18px;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8ae4c;
  border-radius: 12px;
  background: #d8ae4c;
  color: #172536 !important;
  font-weight: 850;
  text-decoration: none !important;
}

.s2b-org-official-request-link:hover,
.s2b-org-official-request-link:focus {
  border-color: #e1b94f;
  background: #e1b94f;
  color: #172536 !important;
  text-decoration: none !important;
}

@media (max-width: 760px) {

  .s2b-org-official-current {
    grid-template-columns: 1fr;
  }

  .s2b-org-official-request-link {
    width: 100%;
  }
}

/* /S2B_ORG_OFFICIAL_CHANGE_UI_20260905 */


/* ==========================================================
 * S2B_PROFILE_SHIP_CARD_STYLE_20260910
 * ========================================================== */

.s2b-profile-card--ship {
  position: relative;
  overflow: hidden;
}

.s2b-profile-card--ship::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    #c69634,
    #e0b85b
  );
}

.s2b-profile-ship-photo {
  display: block;
  width: 100%;
  margin: 4px 0 20px;
  overflow: hidden;
  border-radius: 16px;
  aspect-ratio: 16 / 9;
  background: #e9eef3;
}

.s2b-profile-ship-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .22s ease;
}

.s2b-profile-ship-photo:hover img {
  transform: scale(1.025);
}

.s2b-profile-ship-titleline {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 5px;
}

.s2b-profile-ship-titleline h2 {
  margin: 0;
  color: #172c40;
  line-height: 1.15;
}

.s2b-profile-ship-status {
  flex: 0 0 auto;
  padding: 7px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.1;
  white-space: nowrap;
}

.s2b-profile-ship-status--sale {
  background: #e5f4e9;
  color: #27683b;
}

.s2b-profile-ship-status--history {
  background: #edf1f4;
  color: #53616e;
}

.s2b-profile-card--ship
.s2b-profile-organization-types {
  margin-bottom: 17px;
  color: #6a7784;
}

.s2b-profile-card--ship
.s2b-profile-info-row strong {
  color: #172c40;
}

.s2b-profile-card--ship
.s2b-profile-info-row:last-of-type {
  margin-bottom: 22px;
}

.s2b-profile-card--ship
.s2b-profile-company-button {
  margin-top: 20px;
}

.s2b-profile-card--ship-manage {
  position: relative;
  overflow: hidden;
  border-color: #e2d3aa;
  background:
    linear-gradient(
      145deg,
      #fff 0%,
      #fcf9f1 100%
    );
}

.s2b-profile-card--ship-manage::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: #c69634;
}

.s2b-profile-card--ship-manage h2 {
  color: #172c40;
}

@media (max-width: 700px) {
  .s2b-profile-ship-photo {
    aspect-ratio: 16 / 8.6;
  }

  .s2b-profile-ship-titleline {
    align-items: center;
  }

  .s2b-profile-ship-titleline h2 {
    font-size: 27px;
  }

  .s2b-profile-ship-status {
    padding: 6px 9px;
    font-size: 11px;
  }
}

/* /S2B_PROFILE_SHIP_CARD_STYLE_20260910 */


/* S2B_SHIP_CARD_TECH_DETAILS_20260910 */
.s2b-profile-ship-details {
  margin: 5px 0 14px;
  color: #687786;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}
/* /S2B_SHIP_CARD_TECH_DETAILS_20260910 */


/* ==========================================================
 * S2B_ORGANIZATION_CONNECTED_SHIPS_20260910
 * ========================================================== */

.s2b-org-connected-ships {
  grid-column: 1 / -1;
  position: relative;
  overflow: hidden;
}

.s2b-org-connected-ships::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(90deg,#c69634,#e2ba61);
}

.s2b-org-connected-ships__heading {
  display: flex;
  gap: 22px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 20px;
}

.s2b-org-connected-ships__heading h2 {
  margin-bottom: 5px;
  color: #172c40;
}

.s2b-org-connected-ships__heading p {
  margin: 0;
  color: #687786;
}

.s2b-org-connected-ships__add {
  flex: 0 0 auto;
  margin: 0 !important;
}

.s2b-org-ship-list {
  display: grid;
  gap: 11px;
}

.s2b-org-ship {
  display: grid;
  grid-template-columns: 118px minmax(0,1fr) auto;
  gap: 17px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dce3e9;
  border-radius: 15px;
  background: #fff;
  color: inherit;
  text-decoration: none !important;
  transition:
    border-color .16s ease,
    background .16s ease,
    transform .16s ease;
}

.s2b-org-ship:hover {
  border-color: #d9c48b;
  background: #fcfaf4;
  transform: translateY(-1px);
}

.s2b-org-ship__photo {
  display: flex;
  width: 118px;
  height: 78px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 11px;
  background: #e9eef3;
  color: #17334b;
  font-size: 25px;
  font-weight: 800;
}

.s2b-org-ship__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.s2b-org-ship__body {
  min-width: 0;
}

.s2b-org-ship__title {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

.s2b-org-ship__title > strong {
  overflow: hidden;
  color: #172c40;
  font-size: 19px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.s2b-org-ship__identity {
  margin-top: 3px;
  color: #586878;
  font-size: 13px;
}

.s2b-org-ship__specs {
  margin-top: 4px;
  color: #687786;
  font-size: 12px;
  font-weight: 600;
}

.s2b-org-ship__relations {
  margin-top: 5px;
  color: #8a671c;
  font-size: 13px;
  font-weight: 700;
}

.s2b-org-ship__arrow {
  padding: 8px;
  color: #a27822;
  font-size: 30px;
  line-height: 1;
}

@media (max-width: 700px) {
  .s2b-org-connected-ships__heading {
    flex-direction: column;
  }

  .s2b-org-connected-ships__add {
    width: 100%;
    text-align: center;
  }

  .s2b-org-ship {
    grid-template-columns: 88px minmax(0,1fr);
  }

  .s2b-org-ship__photo {
    width: 88px;
    height: 66px;
  }

  .s2b-org-ship__arrow {
    display: none;
  }

  .s2b-org-ship__title {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }
}

/* /S2B_ORGANIZATION_CONNECTED_SHIPS_20260910 */


/* ==========================================================
 * S2B_ORGANIZATION_SHIPS_VISUAL_FINAL_20260910
 * Organization profile + connected ships final S2B styling.
 * ========================================================== */

.s2b-public-organization {
  --s2b-navy: #10283d;
  --s2b-navy-2: #173e5c;
  --s2b-gold: #d6a944;
  --s2b-gold-dark: #b58627;
  --s2b-border: #dce3e9;
  --s2b-muted: #687786;
}

/* ---------- HERO ---------- */

.s2b-public-organization-hero {
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
  padding: 28px;
  border: 1px solid rgba(198,150,52,.28);
  border-radius: 22px;
  background:
    linear-gradient(
      135deg,
      var(--s2b-navy) 0%,
      var(--s2b-navy-2) 100%
    );
  box-shadow: 0 14px 34px rgba(16,40,61,.12);
}

.s2b-public-organization-hero h1 {
  margin-bottom: 8px;
  color: #fff;
}

.s2b-public-organization
.s2b-profile-eyebrow {
  color: #dcb354;
}

.s2b-public-organization-types {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}

.s2b-public-organization-types span {
  display: inline-flex;
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.s2b-public-organization-verified {
  display: inline-flex;
  margin-top: 12px;
  padding: 7px 11px;
  border: 1px solid rgba(214,169,68,.35);
  border-radius: 999px;
  background: rgba(214,169,68,.12);
  color: #f0cf7e;
  font-size: 13px;
  font-weight: 800;
}

/* ---------- CONTENT GRID ---------- */

.s2b-public-organization-grid {
  gap: 20px;
}

.s2b-public-organization
.s2b-profile-card {
  border: 1px solid var(--s2b-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 9px 26px rgba(16,40,61,.055);
}

.s2b-public-organization
.s2b-profile-card h2 {
  color: #172c40;
}

.s2b-public-organization
.s2b-profile-card-eyebrow {
  color: #a47820;
}

/* ---------- BUTTONS ---------- */

/*
 * Secundaire organisatieacties: navy.
 */
.s2b-public-organization
.s2b-profile-company-button,
.s2b-public-organization
.s2b-profile-company-button:visited {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border: 1px solid #17334b !important;
  border-radius: 12px;
  background: #17334b !important;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: none !important;
}

.s2b-public-organization
.s2b-profile-company-button:hover,
.s2b-public-organization
.s2b-profile-company-button:focus {
  border-color: #214a6b !important;
  background: #214a6b !important;
  color: #fff !important;
}

/*
 * Primaire scheepsactie: goud.
 */
.s2b-public-organization
.s2b-org-connected-ships__add,
.s2b-public-organization
.s2b-org-connected-ships__add:visited {
  border-color: #c69634 !important;
  background: var(--s2b-gold) !important;
  color: #142a3e !important;
}

.s2b-public-organization
.s2b-org-connected-ships__add:hover,
.s2b-public-organization
.s2b-org-connected-ships__add:focus {
  border-color: #c69634 !important;
  background: #e0b553 !important;
  color: #10283d !important;
}

/* ---------- VERBONDEN SCHEPEN ---------- */

.s2b-org-connected-ships {
  grid-column: 1 / -1;
  position: relative;
  overflow: hidden;
  padding: 25px !important;
}

.s2b-org-connected-ships::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background:
    linear-gradient(
      90deg,
      #c69634,
      #e2ba61
    );
}

.s2b-org-connected-ships__heading {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  justify-content: space-between;
  margin: 0 0 21px;
}

.s2b-org-connected-ships__heading h2 {
  margin: 0 0 5px;
  font-size: 25px;
  line-height: 1.2;
}

.s2b-org-connected-ships__heading p {
  margin: 0;
  color: var(--s2b-muted);
  font-size: 14px;
}

/* ---------- SCHEEPSLIJST ---------- */

.s2b-org-ship-list {
  display: grid;
  gap: 11px;
}

.s2b-org-ship {
  display: grid;
  grid-template-columns:
    118px
    minmax(0, 1fr)
    auto;
  gap: 17px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dce3e9;
  border-radius: 15px;
  background: #fbfcfd;
  color: inherit;
  text-decoration: none !important;
  transition:
    border-color .15s ease,
    background .15s ease,
    transform .15s ease,
    box-shadow .15s ease;
}

.s2b-org-ship:hover,
.s2b-org-ship:focus {
  border-color: #d5bd7e;
  background: #fcfaf4;
  box-shadow: 0 7px 18px rgba(16,40,61,.06);
  transform: translateY(-1px);
}

.s2b-org-ship__photo {
  display: flex;
  width: 118px;
  height: 78px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 11px;
  background: #e8edf2;
  color: #17334b;
  font-size: 27px;
  font-weight: 900;
}

.s2b-org-ship__photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.s2b-org-ship__body {
  min-width: 0;
}

.s2b-org-ship__title {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

.s2b-org-ship__title > strong {
  overflow: hidden;
  color: #172c40;
  font-size: 20px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.s2b-org-ship__identity {
  margin-top: 3px;
  color: #3d5062;
  font-size: 13px;
  font-weight: 600;
}

.s2b-org-ship__specs {
  margin-top: 4px;
  color: #6a7886;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}

.s2b-org-ship__relations {
  margin-top: 6px;
  color: #8a671c;
  font-size: 13px;
  font-weight: 800;
}

/* ---------- STATUS ---------- */

.s2b-public-organization
.s2b-profile-ship-status {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  padding: 6px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.s2b-public-organization
.s2b-profile-ship-status--sale {
  background: #e5f4e9;
  color: #286b3d;
}

.s2b-public-organization
.s2b-profile-ship-status--history {
  background: #edf1f4;
  color: #53616e;
}

.s2b-org-ship__arrow {
  padding: 7px;
  color: #aa7c23;
  font-size: 30px;
  line-height: 1;
}

/* ---------- VERBONDEN PERSONEN ---------- */

.s2b-public-organization-people {
  grid-column: 1 / -1;
}

.s2b-public-organization-person {
  border-radius: 12px;
}

/* ---------- MOBILE ---------- */

@media (max-width: 700px) {

  .s2b-public-organization-hero {
    margin-bottom: 17px;
    padding: 22px 19px;
    border-radius: 0 0 22px 22px;
  }

  .s2b-public-organization-grid {
    gap: 14px;
  }

  .s2b-public-organization
  .s2b-profile-card {
    border-radius: 17px;
  }

  .s2b-org-connected-ships {
    padding: 17px !important;
  }

  .s2b-org-connected-ships__heading {
    flex-direction: column;
    gap: 15px;
    margin-bottom: 17px;
  }

  .s2b-org-connected-ships__heading h2 {
    font-size: 23px;
  }

  .s2b-public-organization
  .s2b-org-connected-ships__add {
    width: 100%;
  }

  .s2b-org-ship {
    grid-template-columns:
      90px
      minmax(0,1fr);
    gap: 13px;
    padding: 10px;
  }

  .s2b-org-ship__photo {
    width: 90px;
    height: 68px;
  }

  .s2b-org-ship__title {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .s2b-org-ship__title > strong {
    max-width: 100%;
    font-size: 18px;
  }

  .s2b-org-ship__identity {
    font-size: 12px;
  }

  .s2b-org-ship__specs {
    font-size: 11px;
  }

  .s2b-org-ship__relations {
    font-size: 12px;
  }

  .s2b-org-ship__arrow {
    display: none;
  }

}

/* /S2B_ORGANIZATION_SHIPS_VISUAL_FINAL_20260910 */


/* ==========================================================
 * S2B_ORGANIZATION_EDIT_ACTIONS_COMPACT_20260910
 * Compacte primaire/secundaire acties organisatiebeheer.
 * ========================================================== */

/* Primaire save: Ship2Buy goud, geen full-width Bootstrapblok. */
input.s2b-org-save,
button.s2b-org-save {
  display: block !important;
  width: auto !important;
  min-width: 260px;
  max-width: 100%;
  min-height: 48px;
  margin: 22px auto 0 !important;
  padding: 11px 24px !important;

  border: 1px solid #c69634 !important;
  border-radius: 12px !important;

  background: #d6a944 !important;
  color: #142a3e !important;

  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: .01em;
  text-align: center;

  box-shadow: none !important;
}

input.s2b-org-save:hover,
input.s2b-org-save:focus,
button.s2b-org-save:hover,
button.s2b-org-save:focus {
  border-color: #bd8d2d !important;
  background: #e0b553 !important;
  color: #10283d !important;
}

/* Persoonlijke organisatiekoppeling: bewust secundair. */
.s2b-org-profile-unlink__button,
.s2b-org-profile-unlink__button:visited {
  display: inline-flex !important;
  width: auto !important;
  max-width: 100%;
  min-height: 44px;
  align-items: center;
  justify-content: center;

  margin-top: 14px;
  padding: 9px 18px !important;

  border: 1px solid #aab5bf !important;
  border-radius: 11px !important;

  background: #fff !important;
  color: #425466 !important;

  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-align: center;
  text-decoration: none !important;

  box-shadow: none !important;
}

.s2b-org-profile-unlink__button:hover,
.s2b-org-profile-unlink__button:focus {
  border-color: #17334b !important;
  background: #f4f7f9 !important;
  color: #17334b !important;
}

@media (max-width: 700px) {
  input.s2b-org-save,
  button.s2b-org-save {
    min-width: 0;
    width: fit-content !important;
    max-width: calc(100% - 32px);
    padding-right: 22px !important;
    padding-left: 22px !important;
  }

  .s2b-org-profile-unlink__button {
    width: fit-content !important;
    max-width: 100%;
  }
}

/* /S2B_ORGANIZATION_EDIT_ACTIONS_COMPACT_20260910 */


/* ==========================================================
 * S2B_MY_ORGANIZATIONS_PROFILE_BUTTON_20260910
 * ========================================================== */

.s2b-org-profile-link,
.s2b-org-profile-link:visited,
.s2b-org-manage-link,
.s2b-org-manage-link:visited {
  display: inline-flex !important;
  width: auto !important;
  min-height: 42px;
  align-items: center;
  justify-content: center;

  margin-top: 14px;
  padding: 9px 17px !important;

  border-radius: 10px !important;

  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  text-decoration: none !important;
  box-shadow: none !important;
}

/* Publiek profiel = secundair navy/outline. */
.s2b-org-profile-link,
.s2b-org-profile-link:visited {
  margin-right: 8px;

  border: 1px solid #17334b !important;
  background: #fff !important;
  color: #17334b !important;
}

.s2b-org-profile-link:hover,
.s2b-org-profile-link:focus {
  background: #f2f6f8 !important;
  color: #10283d !important;
}

/* Beheren = primaire S2B-actie. */
.s2b-org-manage-link,
.s2b-org-manage-link:visited {
  border: 1px solid #c69634 !important;
  background: #d6a944 !important;
  color: #142a3e !important;
}

.s2b-org-manage-link:hover,
.s2b-org-manage-link:focus {
  background: #e0b553 !important;
  color: #10283d !important;
}

@media (max-width: 700px) {
  .s2b-org-profile-link,
  .s2b-org-manage-link {
    min-height: 40px;
    padding: 8px 14px !important;
    font-size: 13px !important;
  }
}

/* /S2B_MY_ORGANIZATIONS_PROFILE_BUTTON_20260910 */


/* ==========================================================
 * S2B_ORG_SHIPCONNECT_MANAGE_STYLE_20260910
 * ========================================================== */

.s2b-org-ship-manage-row {
  display: flex;
  justify-content: flex-end;
  margin: -2px 11px 11px;
}

.s2b-org-ship-manage,
.s2b-org-ship-manage:visited {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  padding: 6px 13px;

  border: 1px solid #cbd3da;
  border-radius: 9px;

  background: #fff;
  color: #29445b;

  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;

  text-decoration: none !important;
  box-shadow: none;
}

.s2b-org-ship-manage:hover,
.s2b-org-ship-manage:focus {
  border-color: #c69634;
  background: #fcfaf4;
  color: #8a671c;
}

@media (max-width: 700px) {
  .s2b-org-ship-manage-row {
    justify-content: flex-start;
    margin-left: 11px;
  }
}

/* /S2B_ORG_SHIPCONNECT_MANAGE_STYLE_20260910 */


/* ==========================================================
 * S2B_SHIPCONNECT_CARD_ACTIONS_20260911
 * ========================================================== */

.s2b-myships-connection-actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
}

.s2b-myships-view-link,
.s2b-myships-view-link:visited,
.s2b-myships-manage-link,
.s2b-myships-manage-link:visited {
  display: inline-flex !important;
  width: auto !important;
  min-height: 40px;

  align-items: center;
  justify-content: center;

  padding: 8px 14px !important;

  border-radius: 9px !important;

  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  text-decoration: none !important;
  box-shadow: none !important;
}

/* Gewoon schip bekijken = rustige secundaire actie. */
.s2b-myships-view-link,
.s2b-myships-view-link:visited {
  border: 1px solid #17334b !important;
  background: #fff !important;
  color: #17334b !important;
}

.s2b-myships-view-link:hover,
.s2b-myships-view-link:focus {
  border-color: #c69634 !important;
  background: #fcfaf4 !important;
  color: #8a671c !important;
}

/* Organisatie ShipConnect beheren = beheeractie. */
.s2b-myships-manage-link,
.s2b-myships-manage-link:visited {
  border: 1px solid #c69634 !important;
  background: #f8f1df !important;
  color: #8a671c !important;
}

.s2b-myships-manage-link:hover,
.s2b-myships-manage-link:focus {
  background: #d6a944 !important;
  color: #142a3e !important;
}

@media (max-width: 700px) {
  .s2b-myships-connection-actions {
    align-items: flex-start;
  }

  .s2b-myships-view-link,
  .s2b-myships-manage-link {
    min-height: 38px;
    padding: 7px 12px !important;
  }
}

/* /S2B_SHIPCONNECT_CARD_ACTIONS_20260911 */


/* ==========================================================
 * S2B_SHIPCONNECT_SCOPE_SEMANTICS_20260911
 * ========================================================== */

.s2b-shipconnect-scope-label {
  margin: 17px 0 7px;

  color: #987323;

  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;

  letter-spacing: .13em;
  text-transform: uppercase;
}

.s2b-shipconnect-scope-context {
  display: flex;
  flex-direction: column;
  gap: 3px;

  margin: 4px 0 16px;
  padding: 11px 14px;

  border: 1px solid #dbe2e7;
  border-radius: 11px;

  background: #f8fafb;
}

.s2b-shipconnect-scope-context strong {
  color: #17334b;

  font-size: 13px;
  font-weight: 800;
}

.s2b-shipconnect-scope-context span {
  color: #687887;

  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
}

.s2b-shipconnect-scope-context--organization {
  border-left: 4px solid #d6a944;
  background: #fcfaf4;
}

@media (max-width: 700px) {

  .s2b-shipconnect-scope-label {
    margin-left: 2px;
  }

  .s2b-shipconnect-scope-context {
    margin-bottom: 14px;
  }

}

/* /S2B_SHIPCONNECT_SCOPE_SEMANTICS_20260911 */

/* S2B_NOTIFICATION_SCOPE_LABELS_20260911 */
.s2b-notification-scope-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.s2b-notification-scope-links .s2b-profile-company-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  background: #102b42 !important;
  color: #ffffff !important;
  border: 1px solid #c8a44d !important;
  border-radius: 14px;
  text-decoration: none !important;
  font-weight: 700;
}

.s2b-notification-scope-links .s2b-profile-company-button.is-active {
  background: #c8a44d !important;
  color: #102b42 !important;
  border-color: #c8a44d !important;
}
/* /S2B_NOTIFICATION_SCOPE_LABELS_20260911 */

/* S2B_NOTIFICATION_SAVE_BUTTON_20260911 */
.s2b-notification-settings .button--primary,
.s2b-notification-settings input[type="submit"],
.s2b-new-ship-notification-form .button--primary,
.s2b-new-ship-notification-form input[type="submit"] {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 14px 24px;
  background: #c8a44d !important;
  color: #102b42 !important;
  border: 1px solid #c8a44d !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  line-height: 1.2;
}

.s2b-notification-settings .button--primary:hover,
.s2b-notification-settings .button--primary:focus,
.s2b-notification-settings input[type="submit"]:hover,
.s2b-notification-settings input[type="submit"]:focus,
.s2b-new-ship-notification-form .button--primary:hover,
.s2b-new-ship-notification-form .button--primary:focus,
.s2b-new-ship-notification-form input[type="submit"]:hover,
.s2b-new-ship-notification-form input[type="submit"]:focus {
  background: #102b42 !important;
  color: #ffffff !important;
  border-color: #c8a44d !important;
}
/* /S2B_NOTIFICATION_SAVE_BUTTON_20260911 */

/* S2B_NOTIFICATION_BUTTON_FORCE_20260911 */

#s2b-profiles-new-ship-notification-preference .form-submit,
#s2b-profiles-my-notifications-form .form-submit,
.s2b-new-ship-notification-form .form-submit,
.s2b-notification-settings .form-submit {
  --bs-btn-color: #102b42 !important;
  --bs-btn-bg: #c8a44d !important;
  --bs-btn-border-color: #c8a44d !important;
  --bs-btn-hover-color: #ffffff !important;
  --bs-btn-hover-bg: #102b42 !important;
  --bs-btn-hover-border-color: #c8a44d !important;
  --bs-btn-active-color: #ffffff !important;
  --bs-btn-active-bg: #102b42 !important;
  --bs-btn-active-border-color: #c8a44d !important;

  appearance: none !important;
  background: #c8a44d !important;
  background-color: #c8a44d !important;
  color: #102b42 !important;
  border: 1px solid #c8a44d !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
  text-shadow: none !important;
}

#s2b-profiles-new-ship-notification-preference .form-submit:hover,
#s2b-profiles-new-ship-notification-preference .form-submit:focus,
#s2b-profiles-my-notifications-form .form-submit:hover,
#s2b-profiles-my-notifications-form .form-submit:focus,
.s2b-new-ship-notification-form .form-submit:hover,
.s2b-new-ship-notification-form .form-submit:focus,
.s2b-notification-settings .form-submit:hover,
.s2b-notification-settings .form-submit:focus {
  background: #102b42 !important;
  background-color: #102b42 !important;
  color: #ffffff !important;
  border-color: #c8a44d !important;
}

/* /S2B_NOTIFICATION_BUTTON_FORCE_20260911 */

/* S2B_NOTIFICATION_ACTION_BUTTONS_20260911 */
.s2b-notification-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

.s2b-notification-actions .s2b-profile-company-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  border-radius: 14px;
  font-weight: 800;
  text-decoration: none !important;
}

.s2b-notification-actions .s2b-profile-company-button:first-child {
  background: #102b42 !important;
  color: #ffffff !important;
  border: 1px solid #c8a44d !important;
}

.s2b-notification-actions .s2b-profile-company-button:last-child {
  background: #c8a44d !important;
  color: #102b42 !important;
  border: 1px solid #c8a44d !important;
}
/* /S2B_NOTIFICATION_ACTION_BUTTONS_20260911 */

/* S2B_NOTIFICATION_DESKTOP_ROWS_20260911 */

.s2b-notification-item {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 22px 0;
  border-bottom: 1px solid rgba(16, 43, 66, .12);
}

.s2b-notification-item:last-child {
  border-bottom: 0;
}

.s2b-notification-thumb {
  display: block;
  width: 150px;
  height: 100px;
  overflow: hidden;
  border-radius: 14px;
  background: #eef1f3;
  border: 1px solid rgba(16, 43, 66, .10);
  text-decoration: none !important;
}

.s2b-notification-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.s2b-notification-thumb--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #102b42;
  color: #c8a44d !important;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
}

.s2b-notification-content {
  min-width: 0;
}

.s2b-notification-content h3 {
  margin: 4px 0 4px;
  font-size: 27px;
  line-height: 1.12;
  color: #182533;
}

.s2b-notification-ship-meta {
  margin: 0 0 8px;
  color: #68737d;
  font-size: 14px;
  font-weight: 650;
}

.s2b-notification-detail {
  margin: 0;
  color: #27333d;
  font-size: 17px;
  line-height: 1.4;
}

.s2b-notification-date {
  margin-top: 8px;
  color: #7b858d;
  font-size: 13px;
}

.s2b-notification-item .s2b-notification-actions {
  display: flex;
  flex-direction: column;
  min-width: 175px;
  gap: 9px;
  margin: 0;
}

.s2b-notification-item .s2b-notification-actions
.s2b-profile-company-button {
  width: 100%;
  min-height: 46px;
  padding: 11px 18px;
  white-space: nowrap;
}

@media (min-width: 1100px) {
  .s2b-notification-item {
    grid-template-columns: 170px minmax(320px, 1fr) auto;
  }

  .s2b-notification-thumb {
    width: 170px;
    height: 112px;
  }

  .s2b-notification-item .s2b-notification-actions {
    flex-direction: row;
    min-width: auto;
  }

  .s2b-notification-item .s2b-notification-actions
  .s2b-profile-company-button {
    width: auto;
  }
}

@media (max-width: 767px) {
  .s2b-notification-item {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 20px 0;
  }

  .s2b-notification-thumb {
    width: 92px;
    height: 74px;
    border-radius: 11px;
  }

  .s2b-notification-content h3 {
    font-size: 22px;
  }

  .s2b-notification-detail {
    font-size: 15px;
  }

  .s2b-notification-item .s2b-notification-actions {
    grid-column: 1 / -1;
    flex-direction: row;
    width: 100%;
    min-width: 0;
  }

  .s2b-notification-item .s2b-notification-actions
  .s2b-profile-company-button {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* /S2B_NOTIFICATION_DESKTOP_ROWS_20260911 */

/* S2B_TEAM_MEMBER_EDIT_LINK_20260913 */
.s2b-team-member-edit-link {
  color: inherit;
  font-weight: 700;
  text-decoration: none;
}

.s2b-team-member-edit-link:hover,
.s2b-team-member-edit-link:focus-visible {
  text-decoration: underline;
}
/* /S2B_TEAM_MEMBER_EDIT_LINK_20260913 */

/* =========================================================
 * S2B_MEMBERSHIP_MANAGEMENT_UX_20260913
 * ========================================================= */

/*
 * Teamkaart: Beheren + Koppeling verbreken naast elkaar.
 */
.s2b-team-member-actions {
  display: flex;
  align-items: stretch;
  gap: 12px;
  width: 100%;
  margin-top: 14px;
}

.s2b-team-member-actions > * {
  flex: 1 1 0;
  min-width: 0;
}

.s2b-team-member-actions .button,
.s2b-team-member-manage-button,
.s2b-team-member-actions .s2b-org-profile-unlink__button {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100% !important;
  min-height: 52px;
  margin: 0 !important;
  padding: 10px 12px;
  border-radius: 16px;
  text-align: center;
  line-height: 1.2;
  white-space: normal;
  text-decoration: none;
}

.s2b-team-member-manage-button {
  border: 2px solid var(--s2b-gold, #dfb43f);
  background: var(--s2b-gold, #dfb43f);
  color: #172d42;
  font-weight: 700;
}

.s2b-team-member-manage-button:hover,
.s2b-team-member-manage-button:focus-visible {
  text-decoration: none;
}


/*
 * Koppeling beheren:
 * voorkom dat linkerzijde/labels tegen de viewport worden
 * afgesneden.
 */
.s2b-membership-edit-form .s2b-membership-edit-card {
  box-sizing: border-box;
  width: auto !important;
  max-width: none !important;
  margin-left: 14px !important;
  margin-right: 14px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  overflow: visible !important;
}

.s2b-membership-edit-form .s2b-membership-edit-card .form-item,
.s2b-membership-edit-form .s2b-membership-edit-card .js-form-item {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.s2b-membership-edit-form .s2b-membership-edit-card label {
  display: block;
  box-sizing: border-box;
  max-width: 100%;
  margin-left: 0 !important;
  padding-left: 0 !important;
  overflow: visible;
}


/*
 * Opslaan / Annuleren:
 * beide netjes binnen dezelfde zijmarges.
 */
.s2b-membership-edit-form .s2b-membership-edit-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  box-sizing: border-box;
  width: auto;
  margin: 28px 14px 30px !important;
  padding: 0 !important;
}

.s2b-membership-edit-form .s2b-membership-edit-actions .button,
.s2b-membership-edit-form .s2b-membership-save,
.s2b-membership-edit-form .s2b-membership-cancel {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100% !important;
  min-height: 58px;
  margin: 0 !important;
  padding: 12px 18px;
  border-radius: 18px;
  text-align: center;
  font-weight: 700;
  text-decoration: none;
}

.s2b-membership-edit-form .s2b-membership-cancel {
  border: 2px solid #203b55;
  background: #fff;
  color: #203b55;
}

.s2b-membership-edit-form .s2b-membership-cancel:hover,
.s2b-membership-edit-form .s2b-membership-cancel:focus-visible {
  text-decoration: none;
}


/*
 * Op smallere telefoons blijven de twee teamacties naast
 * elkaar; lange tekst mag over twee regels lopen.
 */
@media (max-width: 480px) {
  .s2b-team-member-actions {
    gap: 8px;
  }

  .s2b-team-member-actions .button {
    padding-left: 8px;
    padding-right: 8px;
    font-size: 15px;
  }

  .s2b-membership-edit-form .s2b-membership-edit-card {
    margin-left: 12px !important;
    margin-right: 12px !important;
    padding-left: 17px !important;
    padding-right: 17px !important;
  }

  .s2b-membership-edit-form .s2b-membership-edit-actions {
    margin-left: 12px !important;
    margin-right: 12px !important;
  }
}

/* /S2B_MEMBERSHIP_MANAGEMENT_UX_20260913 */

/* =========================================================
 * S2B_MEMBERSHIP_BUTTON_POLISH_20260913
 * Duidelijke teamacties + veilige formulierbreedtes.
 * ========================================================= */

/*
 * TEAM & KOPPELINGEN
 * ---------------------------------------------------------
 * Acties altijd duidelijk als knoppen tonen.
 */
.s2b-team-member-actions {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;

  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;

  margin: 18px 0 0 !important;
  padding: 0 !important;
}

/*
 * Wanneer er maar één actie is, mag die de kaartbreedte
 * gebruiken.
 */
.s2b-team-member-actions > :only-child {
  grid-column: 1 / -1 !important;
}

.s2b-team-member-actions a.button,
.s2b-team-member-actions .button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 54px !important;

  margin: 0 !important;
  padding: 11px 10px !important;

  border-radius: 15px !important;

  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: normal !important;
}


/*
 * BEHEREN = primaire actie.
 */
.s2b-team-member-actions
a.s2b-team-member-manage-button.button,
.s2b-team-member-actions
.s2b-team-member-manage-button {
  border: 2px solid #ddb23f !important;
  background: #ddb23f !important;
  color: #172d42 !important;

  box-shadow:
    0 2px 5px rgba(20, 42, 62, .10) !important;
}

.s2b-team-member-actions
a.s2b-team-member-manage-button.button:hover,
.s2b-team-member-actions
a.s2b-team-member-manage-button.button:focus-visible {
  background: #e7bd4b !important;
  border-color: #e7bd4b !important;
  color: #172d42 !important;
  text-decoration: none !important;
}


/*
 * KOPPELING VERBREKEN = secundaire/destructieve actie.
 */
.s2b-team-member-actions
a.s2b-org-profile-unlink__button.button,
.s2b-team-member-actions
.s2b-org-profile-unlink__button {
  border: 2px solid #89939d !important;
  background: #ffffff !important;
  color: #263d53 !important;

  box-shadow: none !important;
}

.s2b-team-member-actions
a.s2b-org-profile-unlink__button.button:hover,
.s2b-team-member-actions
a.s2b-org-profile-unlink__button.button:focus-visible {
  border-color: #263d53 !important;
  background: #f5f6f7 !important;
  color: #172d42 !important;
  text-decoration: none !important;
}


/*
 * KOPPELING BEHEREN - ACTIEBLOK
 * ---------------------------------------------------------
 * Nooit meer tegen of buiten de viewport.
 */
.s2b-membership-edit-form
.s2b-membership-edit-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;

  box-sizing: border-box !important;

  width: calc(100% - 32px) !important;
  max-width: 760px !important;

  margin-top: 28px !important;
  margin-right: auto !important;
  margin-bottom: 30px !important;
  margin-left: auto !important;

  padding: 0 !important;
}


/*
 * Zowel submit als annuleren volledig binnen actions-container.
 */
.s2b-membership-edit-form
.s2b-membership-edit-actions
.button,
.s2b-membership-edit-form
.s2b-membership-save,
.s2b-membership-edit-form
.s2b-membership-cancel {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 58px !important;

  margin: 0 !important;
  padding: 12px 18px !important;

  border-radius: 17px !important;

  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;

  text-align: center !important;
  text-decoration: none !important;
}


/*
 * Opslaan.
 */
.s2b-membership-edit-form
.s2b-membership-save {
  border: 2px solid #ddb23f !important;
  background: #ddb23f !important;
  color: #172d42 !important;
}


/*
 * Annuleren.
 */
.s2b-membership-edit-form
.s2b-membership-cancel {
  border: 2px solid #d5d9dd !important;
  background: #f7f7f8 !important;
  color: #34475a !important;
}

.s2b-membership-edit-form
.s2b-membership-cancel:hover,
.s2b-membership-edit-form
.s2b-membership-cancel:focus-visible {
  border-color: #82909d !important;
  background: #ffffff !important;
  color: #172d42 !important;
}


/*
 * Mobiel.
 */
@media (max-width: 480px) {

  .s2b-team-member-actions {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;

    gap: 8px !important;
  }

  .s2b-team-member-actions a.button,
  .s2b-team-member-actions .button {
    min-height: 52px !important;

    padding:
      9px
      7px !important;

    font-size: 15px !important;

    border-radius: 14px !important;
  }

  .s2b-membership-edit-form
  .s2b-membership-edit-actions {
    width: calc(100% - 28px) !important;

    margin-top: 24px !important;
    margin-bottom: 26px !important;
  }

}


/* /S2B_MEMBERSHIP_BUTTON_POLISH_20260913 */

/* =========================================================
 * S2B_OFFICIAL_LAYOUT_POLISH_20260913
 * ========================================================= */

/*
 * Logo hoort visueel bij de officiële bedrijfsidentiteit.
 */
.s2b-org-edit-form
.s2b-official-logo-placement {
  margin-top: 22px !important;
  margin-bottom: 18px !important;
}


/*
 * "Door Ship2Buy gecontroleerd" staat nu onderaan binnen
 * Officiële bedrijfsgegevens.
 */
.s2b-official-controlled-placement {
  box-sizing: border-box;
  width: 100%;
  margin-top: 24px;
  margin-bottom: 6px;
}

.s2b-official-controlled-placement > * {
  max-width: 100%;
}


/*
 * Geen extra buitenmarge wanneer de bestaande goudkleurige
 * informatiekaart binnen de details-container staat.
 */
.s2b-official-controlled-placement
.s2b-org-protected-note {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
}


/* /S2B_OFFICIAL_LAYOUT_POLISH_20260913 */

/* =========================================================
 * S2B_PROFILE_SHIPCONNECT_SUMMARY_STYLE_20260913
 * ========================================================= */

.s2b-profile-shipconnect-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 18px 0 4px;
}

.s2b-profile-shipconnect-count {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 10px 15px;

  border: 1px solid #d9dee3;
  border-radius: 14px;

  background: #f7f8f9;
  color: #20384f;

  font-weight: 700;
  text-decoration: none;
}

.s2b-profile-shipconnect-count:hover,
.s2b-profile-shipconnect-count:focus-visible {
  border-color: #20384f;
  color: #20384f;
  text-decoration: none;
}

.s2b-profile-shipconnect-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;
  padding: 10px 17px;

  border: 2px solid #ddb23f;
  border-radius: 14px;

  background: #ddb23f;
  color: #172d42;

  font-weight: 700;
  text-decoration: none;
}

.s2b-profile-shipconnect-add:hover,
.s2b-profile-shipconnect-add:focus-visible {
  background: #e7bd4b;
  border-color: #e7bd4b;
  color: #172d42;
  text-decoration: none;
}

@media (max-width: 480px) {
  .s2b-profile-shipconnect-summary {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .s2b-profile-shipconnect-count,
  .s2b-profile-shipconnect-add {
    box-sizing: border-box;
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* /S2B_PROFILE_SHIPCONNECT_SUMMARY_STYLE_20260913 */

/* =========================================================
 * S2B_PROFILE_SHIPCONNECT_OPEN_FULLWIDTH_20260913
 * Alleen de zwarte knop in de Mijn ShipConnect-kaart.
 * ========================================================= */

.s2b-profile-card--ship-manage
.s2b-profile-company-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;

  width: 100% !important;
  max-width: none !important;
  min-height: 58px !important;

  margin-left: 0 !important;
  margin-right: 0 !important;

  text-align: center !important;
}

/* /S2B_PROFILE_SHIPCONNECT_OPEN_FULLWIDTH_20260913 */

/* =========================================================
 * S2B_PROFILE_MY_ORGANIZATIONS_CARD_STYLE_20260913
 * ========================================================= */

.s2b-profile-org-count {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 54px;
  margin: 18px 0 12px;
  padding: 12px 16px;
  border: 1px solid #d9dee3;
  border-radius: 14px;
  background: #f7f8f9;
  color: #20384f;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.s2b-profile-org-pending {
  margin: 0 0 14px;
  color: #6f7881;
  text-align: center;
}

.s2b-profile-org-actions {
  display: grid;
  gap: 12px;
}

.s2b-profile-org-action {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 58px;
  padding: 12px 18px;
  border-radius: 16px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.s2b-profile-org-action--join {
  background: #ddb23f;
  color: #172d42;
}

.s2b-profile-org-action--create {
  border: 2px solid #ddb23f;
  background: #fff;
  color: #172d42;
}

.s2b-profile-org-action--open {
  background: #203247;
  color: #fff;
}

/* /S2B_PROFILE_MY_ORGANIZATIONS_CARD_STYLE_20260913 */

/* =========================================================
 * S2B_MANAGEMENT_REQUEST_UX_STYLE_20260913
 * ========================================================= */

/*
 * Admin-inbox: labels en waardes niet meer tegen elkaar.
 */
.s2b-org-admin-card__meta--management {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.s2b-org-admin-card__meta--management
.s2b-org-admin-meta-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
}

.s2b-org-admin-card__meta--management
.s2b-org-admin-meta-row span {
  display: block;
  font-size: 0.92rem;
  opacity: 0.72;
}

.s2b-org-admin-card__meta--management
.s2b-org-admin-meta-row strong {
  display: block;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

/*
 * Beoordelingsscherm.
 */
.s2b-management-review-summary {
  box-sizing: border-box;
  width: 100%;
  margin: 24px 0;
}

.s2b-management-review-summary > h2,
.s2b-management-review-summary h2 {
  margin: 0 0 18px;
}

.s2b-management-review-summary__rows {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(128, 128, 128, 0.35);
  border-radius: 16px;
}

.s2b-management-review-summary__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 15px 18px;
  border-bottom: 1px solid rgba(128, 128, 128, 0.25);
}

.s2b-management-review-summary__row:last-child {
  border-bottom: 0;
}

.s2b-management-review-summary__row span {
  display: block;
  font-size: 0.9rem;
  opacity: 0.72;
}

.s2b-management-review-summary__row strong {
  display: block;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.s2b-management-review-summary__note {
  box-sizing: border-box;
  margin-top: 16px;
  padding: 16px 18px;
  border-left: 5px solid #ddb23f;
  border-radius: 12px;
  background: rgba(221, 178, 63, 0.10);
}

.s2b-management-review-summary__note strong {
  display: block;
  margin-bottom: 5px;
}

.s2b-management-review-summary__note p {
  margin: 0;
  line-height: 1.55;
}

/*
 * Reviewformulier op mobiel altijd volle breedte.
 */
.s2b_profiles_organization_management_request_review
.form-select,
.s2b_profiles_organization_management_request_review
.form-actions,
.s2b_profiles_organization_management_request_review
.form-actions .button {
  box-sizing: border-box;
  width: 100%;
}

/* /S2B_MANAGEMENT_REQUEST_UX_STYLE_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_SETTINGS_STYLE_20260913
 * ========================================================= */

.s2b-org-settings-link {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 54px;
  margin-top: 12px;
  padding: 12px 18px;
  border: 1px solid #d7b446;
  border-radius: 15px;
  background: #fff;
  color: #203247;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.s2b-org-settings-link::before {
  content: "⚙";
  margin-right: 8px;
}

.s2b-self-membership-current,
.s2b-self-membership-settings-card {
  margin-bottom: 20px;
}

.s2b-self-membership-settings .form-actions {
  display: grid;
  gap: 12px;
}

.s2b-self-membership-settings .form-actions .button,
.s2b-self-membership-settings .form-actions a {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 56px;
  text-align: center;
}

/* /S2B_SELF_MEMBERSHIP_SETTINGS_STYLE_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_SETTINGS_STYLE_FINAL_20260913
 * ========================================================= */

.s2b-org-settings-link {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;

  width: 100%;
  min-height: 56px;

  margin-top: 14px;
  padding: 12px 18px;

  border: 2px solid #d9ae3d;
  border-radius: 16px;

  background: #fff;
  color: #203247;

  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

.s2b-org-settings-link::before {
  content: "⚙";
  margin-right: 9px;
}

.s2b-org-settings-link:hover,
.s2b-org-settings-link:focus {
  color: #203247;
  text-decoration: none;
}

/* /S2B_SELF_MEMBERSHIP_SETTINGS_STYLE_FINAL_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_SETTINGS_SPACING_20260913
 *
 * Persoonlijke organisatiekoppeling:
 * - meer ruimte tot schermrand;
 * - ruimere kaarten;
 * - nette veldafstanden;
 * - betere checkbox- en infobox-layout.
 * ========================================================= */

/*
 * Gehele formulier op mobiel niet tegen de schermrand.
 */
.s2b-self-membership-settings {
  box-sizing: border-box;
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  padding-bottom: 28px;
}

/*
 * Hero mag dezelfde nette mobiele uitlijning houden.
 */
.s2b-self-membership-settings .s2b-org-edit-hero {
  box-sizing: border-box;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

/*
 * Huidige koppeling + instellingenkaart.
 */
.s2b-self-membership-settings
.s2b-self-membership-current,
.s2b-self-membership-settings
.s2b-self-membership-settings-card {
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 20px 0;
  padding: 22px 20px;
  border-radius: 22px;
}

/*
 * Koppen binnen de kaarten.
 */
.s2b-self-membership-settings
.s2b-self-membership-current h2,
.s2b-self-membership-settings
.s2b-self-membership-settings-card h2 {
  margin-top: 0;
  margin-bottom: 18px;
}

/*
 * Formulieronderdelen meer verticale rust.
 */
.s2b-self-membership-settings
.s2b-self-membership-settings-card
.form-item {
  box-sizing: border-box;
  width: 100%;
  margin-top: 0;
  margin-bottom: 24px;
}

/*
 * Labels los van invoerveld.
 */
.s2b-self-membership-settings
.s2b-self-membership-settings-card
.form-item > label {
  display: block;
  margin: 0 0 9px 0;
  line-height: 1.35;
}

/*
 * Inputs/selects binnen de kaart houden.
 */
.s2b-self-membership-settings
.s2b-self-membership-settings-card
select,
.s2b-self-membership-settings
.s2b-self-membership-settings-card
input[type="text"],
.s2b-self-membership-settings
.s2b-self-membership-settings-card
input[type="search"],
.s2b-self-membership-settings
.s2b-self-membership-settings-card
textarea {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 54px;
  margin: 0;
}

/*
 * Uitleg onder velden.
 */
.s2b-self-membership-settings
.s2b-self-membership-settings-card
.description {
  display: block;
  margin-top: 9px;
  margin-bottom: 0;
  line-height: 1.5;
}

/*
 * Checkbox: voldoende ruimte links/rechts en nette tekstflow.
 */
.s2b-self-membership-settings
.form-type-checkbox {
  box-sizing: border-box;
  width: 100%;
  margin: 4px 0 24px 0;
  padding: 4px 0;
}

.s2b-self-membership-settings
.form-type-checkbox
.form-check {
  box-sizing: border-box;
  width: 100%;
}

.s2b-self-membership-settings
.form-type-checkbox
.form-check-label {
  line-height: 1.45;
}

.s2b-self-membership-settings
.form-type-checkbox
.description {
  margin-top: 8px;
  line-height: 1.5;
}

/*
 * Gouden informatieblok.
 */
.s2b-self-membership-settings
.s2b-org-protected-note {
  box-sizing: border-box;
  width: 100%;
  margin: 20px 0;
  padding: 20px 20px 20px 24px;
  border-radius: 20px;
  line-height: 1.55;
}

.s2b-self-membership-settings
.s2b-org-protected-note strong {
  display: block;
  margin-bottom: 8px;
}

.s2b-self-membership-settings
.s2b-org-protected-note p {
  margin: 0;
  line-height: 1.55;
}

/*
 * Huidige geverifieerde gegevens.
 */
.s2b-self-membership-settings
.s2b-org-review-data {
  box-sizing: border-box;
  width: 100%;
}

.s2b-self-membership-settings
.s2b-org-review-row {
  box-sizing: border-box;
  padding: 16px 0;
}

.s2b-self-membership-settings
.s2b-org-review-row:first-child {
  padding-top: 4px;
}

.s2b-self-membership-settings
.s2b-org-review-row:last-child {
  padding-bottom: 4px;
}

.s2b-self-membership-settings
.s2b-org-review-row strong,
.s2b-self-membership-settings
.s2b-org-review-row span {
  display: block;
}

.s2b-self-membership-settings
.s2b-org-review-row strong {
  margin-bottom: 7px;
}

/*
 * Opslaan / annuleren.
 */
.s2b-self-membership-settings
.form-actions {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  gap: 12px;
  margin: 24px 0 0 0;
  padding: 0;
}

.s2b-self-membership-settings
.form-actions .button,
.s2b-self-membership-settings
.form-actions a {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: none;
  min-height: 58px;
  margin: 0;
  text-align: center;
}

/*
 * Extra compacte correctie voor smalle telefoons.
 */
@media (max-width: 480px) {
  .s2b-self-membership-settings {
    padding-left: 14px;
    padding-right: 14px;
  }

  .s2b-self-membership-settings
  .s2b-self-membership-current,
  .s2b-self-membership-settings
  .s2b-self-membership-settings-card {
    padding: 20px 18px;
  }

  .s2b-self-membership-settings
  .s2b-org-protected-note {
    padding: 18px 18px 18px 22px;
  }
}

/* /S2B_SELF_MEMBERSHIP_SETTINGS_SPACING_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_CHECKBOX_ALIGN_20260913
 *
 * Bootstrap trekt .form-check-input standaard met een
 * negatieve marge naar links. Binnen deze kaart willen we
 * checkbox + tekst volledig binnen de content-padding houden.
 * ========================================================= */

.s2b-self-membership-settings
.form-type-checkbox {
  box-sizing: border-box;
  width: 100%;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s2b-self-membership-settings
.form-type-checkbox
.form-check {
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  gap: 12px;

  width: 100%;
  margin: 0;
  padding-left: 0 !important;
}

.s2b-self-membership-settings
.form-type-checkbox
.form-check-input {
  position: static !important;
  float: none !important;

  flex: 0 0 22px;

  width: 22px;
  height: 22px;

  margin: 5px 0 0 0 !important;

  transform: none !important;
}

.s2b-self-membership-settings
.form-type-checkbox
.form-check-label {
  flex: 1 1 auto;
  min-width: 0;

  margin: 0 !important;
  padding: 0 !important;

  line-height: 1.45;
}

/*
 * Uitleg netjes uitlijnen onder de tekst van de checkbox,
 * dus niet onder het vinkvak zelf.
 */
.s2b-self-membership-settings
.form-type-checkbox
.description {
  box-sizing: border-box;
  margin-top: 10px !important;
  margin-left: 34px !important;
  padding: 0 !important;
  line-height: 1.5;
}

@media (max-width: 480px) {
  .s2b-self-membership-settings
  .form-type-checkbox
  .form-check {
    gap: 11px;
  }

  .s2b-self-membership-settings
  .form-type-checkbox
  .description {
    margin-left: 33px !important;
  }
}

/* /S2B_SELF_MEMBERSHIP_CHECKBOX_ALIGN_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_CHECKBOX_INLINE_20260913
 *
 * Checkbox links naast de tekst.
 * Beschrijving uitgelijnd onder de tekst.
 * ========================================================= */

/*
 * Drupal kan input + label direct in .form-type-checkbox
 * renderen. Daarom de wrapper als 2-koloms grid.
 */
.s2b-self-membership-settings
.form-type-checkbox {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  column-gap: 12px !important;
  row-gap: 8px !important;
  align-items: start !important;

  box-sizing: border-box;
  width: 100%;
  margin: 6px 0 26px 0 !important;
  padding: 0 !important;
}

/*
 * Checkbox zelf.
 */
.s2b-self-membership-settings
.form-type-checkbox
> input[type="checkbox"],
.s2b-self-membership-settings
.form-type-checkbox
> .form-check-input {
  grid-column: 1 !important;
  grid-row: 1 !important;

  position: static !important;
  float: none !important;

  width: 22px !important;
  height: 22px !important;

  margin: 4px 0 0 0 !important;
  padding: 0 !important;

  transform: none !important;
}

/*
 * Tekst direct RECHTS van de checkbox.
 */
.s2b-self-membership-settings
.form-type-checkbox
> label,
.s2b-self-membership-settings
.form-type-checkbox
> label.option,
.s2b-self-membership-settings
.form-type-checkbox
> .form-check-label {
  grid-column: 2 !important;
  grid-row: 1 !important;

  display: block !important;

  margin: 0 !important;
  padding: 0 !important;

  min-width: 0;
  line-height: 1.4 !important;
}

/*
 * Uitleg onder de labeltekst, niet onder het vinkvak.
 */
.s2b-self-membership-settings
.form-type-checkbox
> .description {
  grid-column: 2 !important;
  grid-row: 2 !important;

  margin: 0 !important;
  padding: 0 !important;

  line-height: 1.5 !important;
}

/*
 * Bootstrap/Drupal variant waarbij input + label eerst
 * in een aparte .form-check wrapper zitten.
 */
.s2b-self-membership-settings
.form-type-checkbox
> .form-check {
  grid-column: 1 / -1 !important;

  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr) !important;
  column-gap: 12px !important;
  align-items: start !important;

  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.s2b-self-membership-settings
.form-type-checkbox
> .form-check
> .form-check-input {
  grid-column: 1 !important;

  position: static !important;
  float: none !important;

  width: 22px !important;
  height: 22px !important;

  margin: 4px 0 0 0 !important;
}

.s2b-self-membership-settings
.form-type-checkbox
> .form-check
> .form-check-label {
  grid-column: 2 !important;

  margin: 0 !important;
  padding: 0 !important;

  line-height: 1.4 !important;
}

/*
 * Wanneer de description ná .form-check staat:
 * exact uitlijnen met de labeltekst.
 */
.s2b-self-membership-settings
.form-type-checkbox
> .form-check
+ .description {
  grid-column: 2 !important;

  margin: 0 !important;
  padding: 0 !important;

  line-height: 1.5 !important;
}

/* /S2B_SELF_MEMBERSHIP_CHECKBOX_INLINE_20260913 */

/* =========================================================
 * S2B_SELF_MEMBERSHIP_CURRENT_CARD_STYLE_20260913
 * ========================================================= */

/*
 * Bovenste kaart compacter.
 */
.s2b-self-membership-settings
.s2b-self-membership-current {
  padding: 22px 20px 20px !important;
}

/*
 * Kleine gouden status boven de titel.
 */
.s2b-self-membership-settings
.s2b-current-connection-kicker {
  margin: 0 0 7px 0;

  color: #9a7723;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.12em;
}

/*
 * Niet meer zo'n enorme kop.
 */
.s2b-self-membership-settings
.s2b-self-membership-current h2 {
  margin: 0 0 18px 0 !important;

  color: #203247;
  font-size: 1.65rem !important;
  font-weight: 750;
  line-height: 1.18 !important;
}

/*
 * Binnenste gegevensblok rustiger:
 * geen zwaar kader-in-kader.
 */
.s2b-self-membership-settings
.s2b-self-membership-current
.s2b-org-review-data {
  overflow: hidden;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid #e3e6e8 !important;
  border-radius: 16px !important;

  background: #fbfbfa;
}

/*
 * Relatie / functie als compacte nette rijen.
 */
.s2b-self-membership-settings
.s2b-self-membership-current
.s2b-org-review-row {
  display: grid !important;
  grid-template-columns: minmax(90px, 0.75fr) minmax(0, 1.5fr);
  gap: 14px;

  align-items: center;

  margin: 0 !important;
  padding: 15px 16px !important;

  border: 0 !important;
  border-bottom: 1px solid #e5e7e9 !important;
}

.s2b-self-membership-settings
.s2b-self-membership-current
.s2b-org-review-row:last-child {
  border-bottom: 0 !important;
}

/*
 * Labels subtieler.
 */
.s2b-self-membership-settings
.s2b-self-membership-current
.s2b-org-review-row strong {
  margin: 0 !important;

  color: #203247;
  font-size: 0.94rem;
  font-weight: 700;
  line-height: 1.35;
}

/*
 * Waarden rechts.
 */
.s2b-self-membership-settings
.s2b-self-membership-current
.s2b-org-review-row span {
  margin: 0 !important;

  color: #687681;
  font-size: 1rem;
  line-height: 1.4;
}

/*
 * Op heel smalle telefoons nog steeds overzichtelijk.
 */
@media (max-width: 420px) {
  .s2b-self-membership-settings
  .s2b-self-membership-current h2 {
    font-size: 1.5rem !important;
  }

  .s2b-self-membership-settings
  .s2b-self-membership-current
  .s2b-org-review-row {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }
}

/* /S2B_SELF_MEMBERSHIP_CURRENT_CARD_STYLE_20260913 */

/* =========================================================
 * S2B_ORG_SETTINGS_INLINE_ACTION_20260913
 *
 * Instellingen als normale kaartactie naast
 * Bekijk profiel en Beheren.
 * ========================================================= */

.s2b-org-card .s2b-org-profile-link,
.s2b-org-card .s2b-org-manage-link,
.s2b-org-card .s2b-org-settings-link {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  width: auto !important;
  max-width: none !important;
  min-height: 48px;

  margin-top: 14px;
  margin-right: 8px;
  margin-bottom: 0;

  padding: 10px 15px;

  vertical-align: middle;
  white-space: nowrap;
}

/*
 * Instellingen niet meer als brede aparte balk.
 */
.s2b-org-card .s2b-org-settings-link {
  margin-left: 0 !important;

  border: 2px solid #d9ae3d;
  border-radius: 14px;

  background: #fff;
  color: #203247;

  font-weight: 700;
  text-decoration: none;
}

/*
 * Geen groot emoji-tandwiel meer.
 * Zo blijft hij visueel gelijkwaardig aan de andere acties.
 */
.s2b-org-card .s2b-org-settings-link::before {
  content: none !important;
}

.s2b-org-card .s2b-org-settings-link:hover,
.s2b-org-card .s2b-org-settings-link:focus {
  color: #203247;
  text-decoration: none;
}

/*
 * Op zeer smalle schermen mogen de acties netjes wrappen,
 * maar Instellingen blijft een compacte knop.
 */
@media (max-width: 420px) {
  .s2b-org-card .s2b-org-profile-link,
  .s2b-org-card .s2b-org-manage-link,
  .s2b-org-card .s2b-org-settings-link {
    padding-left: 12px;
    padding-right: 12px;
    margin-right: 6px;
  }
}

/* /S2B_ORG_SETTINGS_INLINE_ACTION_20260913 */

/* =========================================================
 * S2B_ORG_ACTIONS_ONE_ROW_20260913
 *
 * Mobiel:
 * Bekijk profiel | Beheren | Instellingen
 * netjes op één regel.
 * ========================================================= */

@media (max-width: 767.98px) {

  .s2b-org-card .s2b-org-profile-link,
  .s2b-org-card .s2b-org-manage-link,
  .s2b-org-card .s2b-org-settings-link {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 0 !important;
    max-width: none !important;
    min-height: 52px !important;

    margin-top: 18px !important;
    margin-bottom: 0 !important;

    padding: 9px 7px !important;

    font-size: 0.92rem !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;

    white-space: nowrap !important;
    text-align: center !important;
    vertical-align: top !important;
  }

  /*
   * Verdeling bewust iets verschillend:
   * profiel en instellingen hebben langere tekst.
   */
  .s2b-org-card .s2b-org-profile-link {
    width: 32% !important;
    margin-right: 2% !important;
  }

  .s2b-org-card .s2b-org-manage-link {
    width: 30% !important;
    margin-right: 2% !important;
  }

  .s2b-org-card .s2b-org-settings-link {
    width: 32% !important;
    margin-right: 0 !important;
  }

  /*
   * Tandwiel blijft weg: de drie knoppen krijgen
   * dezelfde rustige actiestijl.
   */
  .s2b-org-card .s2b-org-settings-link::before {
    content: none !important;
  }
}

/*
 * Op echt smalle schermen nog iets compacter,
 * maar nog steeds één regel.
 */
@media (max-width: 370px) {

  .s2b-org-card .s2b-org-profile-link,
  .s2b-org-card .s2b-org-manage-link,
  .s2b-org-card .s2b-org-settings-link {
    padding-left: 4px !important;
    padding-right: 4px !important;
    font-size: 0.84rem !important;
  }
}

/* /S2B_ORG_ACTIONS_ONE_ROW_20260913 */

/* =========================================================
 * S2B_MANAGEMENT_REQUEST_CARD_STYLE_20260913
 * Beheeraanvraag hoort binnen de betreffende organisatiekaart.
 * ========================================================= */

.s2b-org-card .s2b-org-management-request-link,
.s2b-org-card .s2b-org-management-request-status {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 54px;

  margin: 14px 0 0;
  padding: 12px 18px;

  border: 2px solid #d7ad3d;
  border-radius: 14px;

  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
}

.s2b-org-card .s2b-org-management-request-link {
  background: #fff;
  color: #203248;
}

.s2b-org-card .s2b-org-management-request-status {
  background: #f7f2e3;
  color: #596575;
  cursor: default;
}

/*
 * De bestaande bovenste actieknoppen blijven compact.
 * De langere beheeraanvraag krijgt bewust zijn eigen regel.
 */
@media (max-width: 767.98px) {

  .s2b-org-card .s2b-org-management-request-link,
  .s2b-org-card .s2b-org-management-request-status {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* /S2B_MANAGEMENT_REQUEST_CARD_STYLE_20260913 */

/* =========================================================
 * S2B_ORG_ACTIONS_2X2_MOBILE_20260914
 *
 * Mijn organisaties:
 * desktop = compacte actierij
 * mobiel  = exact 2 knoppen boven + 2 onder
 * ========================================================= */

.s2b-org-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.s2b-org-card__actions
.s2b-org-profile-link,
.s2b-org-card__actions
.s2b-org-manage-link,
.s2b-org-card__actions
.s2b-org-settings-link,
.s2b-org-card__actions
.s2b-org-business-pro-link {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: auto !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 10px 15px !important;

  line-height: 1.2 !important;
  text-align: center !important;
  white-space: normal !important;
}

/*
 * Business Pro is a commercial action,
 * visually distinct from ordinary settings.
 */
.s2b-org-card__actions
.s2b-org-business-pro-link,
.s2b-org-card__actions
.s2b-org-business-pro-link:visited {
  border: 2px solid #d9ae3d !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #203247 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.s2b-org-card__actions
.s2b-org-business-pro-link:hover,
.s2b-org-card__actions
.s2b-org-business-pro-link:focus {
  background: #fff8e7 !important;
  color: #203247 !important;
}

@media (max-width: 767.98px) {
  .s2b-org-card__actions {
    display: grid !important;
    grid-template-columns:
      minmax(0, 1fr)
      minmax(0, 1fr) !important;

    gap: 12px !important;
    width: 100% !important;
    margin-top: 18px !important;
  }

  .s2b-org-card__actions
  .s2b-org-profile-link,
  .s2b-org-card__actions
  .s2b-org-manage-link,
  .s2b-org-card__actions
  .s2b-org-settings-link,
  .s2b-org-card__actions
  .s2b-org-business-pro-link {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 58px !important;

    margin: 0 !important;
    padding: 10px 8px !important;

    font-size: 0.92rem !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }
}

/* /S2B_ORG_ACTIONS_2X2_MOBILE_20260914 */


/* =========================================================
 * S2B_MYSHIPS_TOP_ACTIONS_MOBILE_PARITY_20260915
 * + ShipConnecten en Mijn notificaties:
 * identieke mobiele maatvoering en uitlijning.
 * ========================================================= */

@media (max-width: 767.98px) {

  .s2b-myships-top-actions {
    box-sizing: border-box !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;

    width: auto !important;

    margin:
      18px
      16px
      26px !important;

    padding: 0 !important;
  }

  .s2b-myships-top-actions
  .s2b-myships-add,

  .s2b-myships-top-actions
  .s2b-myships-notifications-link {
    box-sizing: border-box !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 58px !important;

    margin: 0 !important;
    padding: 12px 18px !important;

    border-radius: 14px !important;

    font-size: 17px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;

    white-space: normal !important;
    text-align: center !important;
    text-decoration: none !important;
  }

  /* Primaire actie. */
  .s2b-myships-top-actions
  .s2b-myships-add {
    border: 2px solid #b88720 !important;

    background:
      linear-gradient(
        180deg,
        #dfb843 0%,
        #d4a52d 100%
      ) !important;

    color: #172536 !important;

    box-shadow:
      0 6px 16px rgba(145, 107, 25, .14) !important;
  }

  /* Secundaire actie. */
  .s2b-myships-top-actions
  .s2b-myships-notifications-link {
    border: 2px solid #173d59 !important;

    background: #fff !important;
    color: #173d59 !important;

    box-shadow:
      0 4px 12px rgba(23, 61, 89, .07) !important;
  }

  .s2b-myships-top-actions
  .s2b-myships-add:hover,

  .s2b-myships-top-actions
  .s2b-myships-add:focus {
    filter: brightness(1.03);
  }

  .s2b-myships-top-actions
  .s2b-myships-notifications-link:hover,

  .s2b-myships-top-actions
  .s2b-myships-notifications-link:focus {
    background: #f5f8fa !important;
    color: #173d59 !important;
  }

}

/* /S2B_MYSHIPS_TOP_ACTIONS_MOBILE_PARITY_20260915 */


/* S2B_NOTIFICATIONS_SLIDER_SEPARATOR_20260916
 * Kleine visuele scheiding tussen Uitgelicht en notificatiepagina.
 */
#s2b-profiles-my-notifications-form .s2b-shipconn-hero {
  margin-top: 10px !important;
}
/* /S2B_NOTIFICATIONS_SLIDER_SEPARATOR_20260916 */



/* =========================================================
   S2B_ORG_EDIT_HERO_TOP_GAP_20260917
   10px ruimte tussen homepage-slider en organisatiebeheer.
   ========================================================= */

body.path-mijn-organisaties .s2b-org-edit-hero {
  margin-top: 10px !important;
}

/* /S2B_ORG_EDIT_HERO_TOP_GAP_20260917 */

/* =========================================================
   S2B_MY_ORGANIZATIONS_HERO_TOP_GAP_20260917
   10px ruimte tussen Uitgelicht en Mijn organisaties.
   ========================================================= */

body.path-mijn-organisaties .s2b-org-hero {
  margin-top: 10px !important;
}

/* /S2B_MY_ORGANIZATIONS_HERO_TOP_GAP_20260917 */

/* =========================================================
   S2B_ORG_CARD_ACTION_LAYOUT_20260917
   Profielacties links, Business Pro als aparte commerciële
   actie rechts op desktop.
   ========================================================= */

.s2b-org-card__actions {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: 100% !important;
}

/* 1. Publiek profiel */
.s2b-org-card__actions > .s2b-org-profile-link {
  order: 1;
}

/* 2. Bedrijfsprofiel beheren */
.s2b-org-card__actions > .s2b-org-manage-link:not(.s2b-org-business-pro-link) {
  order: 2;
}

/* 3. Eigen relatie met de organisatie */
.s2b-org-card__actions > .s2b-org-settings-link:not(.s2b-org-business-pro-link) {
  order: 3;
}

/* 4. Business Pro bewust los van de profielacties. */
.s2b-org-card__actions > .s2b-org-business-pro-link {
  order: 4;
  margin-left: auto !important;
}

/* Mobiel: logisch onder elkaar, geen kunstmatige rechteruitlijning. */
@media (max-width: 767px) {
  .s2b-org-card__actions {
    align-items: stretch !important;
  }

  .s2b-org-card__actions > a {
    width: 100% !important;
    justify-content: center !important;
  }

  .s2b-org-card__actions > .s2b-org-business-pro-link {
    margin-left: 0 !important;
  }
}

/* /S2B_ORG_CARD_ACTION_LAYOUT_20260917 */

/* =========================================================
   S2B_ORGANIZATION_EDIT_HERO_LINKS_20260917
   Navigatie vanuit organisatiebeheer.
   ========================================================= */

.s2b-org-edit-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 17px;
}

.s2b-org-edit-hero__actions a {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 9px 15px;

  border-radius: 10px;

  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
}

.s2b-org-edit-hero__public-link {
  border: 1px solid rgba(255, 255, 255, .9);
  background: #fff;
  color: #172536 !important;
}

.s2b-org-edit-hero__organizations-link {
  border: 1px solid rgba(255, 255, 255, .32);
  background: rgba(255, 255, 255, .06);
  color: #fff !important;
}

.s2b-org-edit-hero__actions a:hover,
.s2b-org-edit-hero__actions a:focus {
  transform: translateY(-1px);
  text-decoration: none !important;
}

@media (max-width: 650px) {
  .s2b-org-edit-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .s2b-org-edit-hero__actions a {
    width: 100%;
  }
}

/* /S2B_ORGANIZATION_EDIT_HERO_LINKS_20260917 */

/* S2B_PROFILE_BOTTOM_CARDS_EQUAL_20260917 */

/*
 * Mijn ShipConnect visueel gelijk aan Mijn organisaties.
 * Tekst/koppen bovenin blijven ongemoeid.
 */
.s2b-profile-card--ship-manage {
  display: flex;
  flex-direction: column;

  border-color: var(--s2b-line) !important;
  background: #fff !important;
}

/* Gouden sierlijn bovenaan verwijderen. */
.s2b-profile-card--ship-manage::before {
  display: none !important;
  content: none !important;
}

/*
 * De twee ShipConnect-acties vormen samen met de
 * zwarte Open-knop een verticale 3-knoppenstack.
 *
 * margin-top:auto houdt de hele stack onderaan de kaart,
 * zonder kop/introductietekst te verplaatsen.
 */
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-summary {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;

  width: 100% !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

/* 1. Goud: + ShipConnecten */
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-add {
  order: 1;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 58px !important;
  padding: 12px 18px !important;

  border: 0 !important;
  border-radius: 16px !important;

  background: #ddb23f !important;
  color: #172d42 !important;

  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

/* 2. Wit: aantal geconnecte schepen */
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-count {
  order: 2;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 58px !important;
  padding: 12px 18px !important;

  border: 2px solid #ddb23f !important;
  border-radius: 16px !important;

  background: #fff !important;
  color: #172d42 !important;

  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

/* 3. Donker: Open Mijn ShipConnect */
.s2b-profile-card--ship-manage
.s2b-profile-company-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 58px !important;

  margin: 12px 0 0 !important;
  padding: 12px 18px !important;

  border: 0 !important;
  border-radius: 16px !important;

  background: #203247 !important;
  color: #fff !important;

  box-shadow: none !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-decoration: none !important;
}

/* Hover rustig houden in dezelfde visuele familie. */
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-add:hover,
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-add:focus-visible {
  background: #e7bd4b !important;
  color: #172d42 !important;
}

.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-count:hover,
.s2b-profile-card--ship-manage
.s2b-profile-shipconnect-count:focus-visible {
  border-color: #ddb23f !important;
  background: #fff !important;
  color: #172d42 !important;
}

.s2b-profile-card--ship-manage
.s2b-profile-company-button:hover,
.s2b-profile-card--ship-manage
.s2b-profile-company-button:focus-visible {
  background: #2b4056 !important;
  color: #fff !important;
}

/* /S2B_PROFILE_BOTTOM_CARDS_EQUAL_20260917 */

/* =========================================================
 * S2B_REGISTER_COMPANY_ONBOARDING_STYLE_20260918
 * ========================================================= */

.s2b-register-mode {
  margin: 0 0 24px;
}

.s2b-register-mode > legend,
.s2b-register-mode > .fieldset-legend {
  color: #172d42;
  font-size: 18px;
  font-weight: 800;
}

.s2b-register-mode .form-radios {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 12px;
}

.s2b-register-mode .form-type-radio {
  position: relative;
  margin: 0;
}

.s2b-register-mode-card {
  display: flex;
  gap: 14px;
  min-height: 112px;
  box-sizing: border-box;
  padding: 18px;
  border: 1px solid rgba(23, 45, 66, .14);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 7px 22px rgba(23, 45, 66, .055);
  cursor: pointer;
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

.s2b-register-mode-card:hover {
  transform: translateY(-1px);
  border-color: rgba(201, 157, 54, .55);
  box-shadow: 0 11px 26px rgba(23, 45, 66, .085);
}

.s2b-register-mode-card__icon {
  display: flex;
  flex: 0 0 42px;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: #f5f7f9;
  font-size: 20px;
}

.s2b-register-mode-card__body {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.s2b-register-mode-card__body strong {
  color: #172d42;
  font-size: 16px;
  font-weight: 850;
}

.s2b-register-mode-card__body span {
  color: #687786;
  font-size: 14px;
  line-height: 1.45;
}

.s2b-register-mode
.form-type-radio:has(input:checked)
.s2b-register-mode-card {
  border-color: #c99d36;
  box-shadow:
    0 0 0 2px rgba(201, 157, 54, .13),
    0 11px 28px rgba(23, 45, 66, .09);
}

.s2b-register-company-panel {
  margin: 26px 0 0;
  padding: 22px;
  border: 1px solid rgba(23, 45, 66, .12);
  border-radius: 20px;
  background:
    linear-gradient(
      145deg,
      #ffffff 0%,
      #fafbfd 100%
    );
  box-shadow:
    0 10px 28px rgba(23, 45, 66, .055);
}

.s2b-register-company-intro,
.s2b-register-plan-heading {
  margin-bottom: 18px;
}

.s2b-register-company-intro__eyebrow {
  margin-bottom: 6px;
  color: #a67b24;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .11em;
}

.s2b-register-company-intro h2,
.s2b-register-plan-heading h2 {
  margin: 0 0 6px;
  color: #172d42;
  font-size: 23px;
  font-weight: 850;
}

.s2b-register-company-intro p,
.s2b-register-plan-heading p {
  margin: 0;
  color: #687786;
  line-height: 1.5;
}

.s2b-register-plan-heading {
  margin-top: 28px;
  padding-top: 22px;
  border-top: 1px solid rgba(23, 45, 66, .10);
}

.s2b-register-plans .form-radios {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.s2b-register-plans .form-type-radio {
  position: relative;
  margin: 0;
}

.s2b-register-plan-card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 112px;
  box-sizing: border-box;
  padding: 17px;
  border: 1px solid rgba(23, 45, 66, .14);
  border-radius: 16px;
  background: #fff;
  cursor: pointer;
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

.s2b-register-plan-card:hover {
  transform: translateY(-1px);
  border-color: rgba(201, 157, 54, .55);
}

.s2b-register-plan-card--free {
  background:
    linear-gradient(
      145deg,
      #ffffff,
      #f8fafc
    );
}

.s2b-register-plan-card__top {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.s2b-register-plan-card__top strong {
  color: #172d42;
  font-size: 16px;
  font-weight: 850;
}

.s2b-register-plan-card__price {
  color: #a67b24;
  font-size: 14px;
  font-weight: 800;
}

.s2b-register-plan-card__text {
  color: #687786;
  font-size: 13px;
  line-height: 1.45;
}

.s2b-register-plans
.form-type-radio:has(input:checked)
.s2b-register-plan-card {
  border-color: #c99d36;
  box-shadow:
    0 0 0 2px rgba(201, 157, 54, .13),
    0 9px 22px rgba(23, 45, 66, .08);
}

.s2b-register-plan-note {
  margin: 12px 0 22px;
  padding: 12px 14px;
  border-radius: 12px;
  background: #f7f8fa;
  color: #687786;
  font-size: 13px;
  line-height: 1.5;
}

.s2b-register-plan-note strong {
  color: #172d42;
}

.s2b-register-relation-heading {
  margin-top: 26px;
  padding-top: 21px;
  border-top: 1px solid rgba(23, 45, 66, .10);
}

.s2b-register-relation-heading h3 {
  margin: 0 0 14px;
  color: #172d42;
  font-size: 18px;
  font-weight: 850;
}

@media (max-width: 700px) {
  .s2b-register-mode .form-radios,
  .s2b-register-plans .form-radios {
    grid-template-columns: 1fr;
  }

  .s2b-register-company-panel {
    padding: 18px 15px;
    border-radius: 17px;
  }

  .s2b-register-mode-card {
    min-height: 0;
  }

  .s2b-register-plan-card {
    min-height: 0;
  }
}

/* /S2B_REGISTER_COMPANY_ONBOARDING_STYLE_20260918 */

/* =========================================================
 * S2B_REGISTER_ORGANIZATION_LOOKUP_STYLE_20260918
 * ========================================================= */

.s2b-register-company-source {
  margin: 20px 0 22px;
}

.s2b-register-company-source .form-radios {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.s2b-register-company-source .form-type-radio {
  margin: 0;
}

.s2b-register-source-card {
  display: flex;
  flex-direction: column;
  gap: 5px;

  box-sizing: border-box;
  min-height: 96px;
  padding: 17px 18px;

  border: 1px solid rgba(23, 45, 66, .14);
  border-radius: 16px;

  background: #fff;

  cursor: pointer;

  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

.s2b-register-source-card:hover {
  transform: translateY(-1px);

  border-color:
    rgba(201, 157, 54, .55);

  box-shadow:
    0 9px 22px rgba(23, 45, 66, .07);
}

.s2b-register-source-card strong {
  color: #172d42;
  font-size: 16px;
  font-weight: 850;
}

.s2b-register-source-card span {
  color: #687786;
  font-size: 13px;
  line-height: 1.45;
}

.s2b-register-company-source
.form-type-radio:has(input:checked)
.s2b-register-source-card {
  border-color: #c99d36;

  box-shadow:
    0 0 0 2px rgba(201, 157, 54, .13),
    0 10px 25px rgba(23, 45, 66, .08);
}

.s2b-register-existing-company,
.s2b-register-new-company {
  margin-top: 18px;
  padding: 20px;

  border: 1px solid rgba(23, 45, 66, .10);
  border-radius: 17px;

  background: #fbfcfd;
}

.s2b-register-company-section-head {
  margin-bottom: 16px;
}

.s2b-register-company-section-head h3 {
  margin: 0 0 5px;

  color: #172d42;
  font-size: 18px;
  font-weight: 850;
}

.s2b-register-company-section-head p {
  margin: 0;

  color: #687786;
  font-size: 14px;
  line-height: 1.5;
}

.s2b-register-company-relationship {
  margin-top: 24px;
  padding-top: 22px;

  border-top:
    1px solid rgba(23, 45, 66, .10);
}

.s2b-register-relation-heading p {
  margin: -6px 0 15px;

  color: #687786;
  font-size: 14px;
  line-height: 1.5;
}

.s2b-register-subscription {
  margin-top: 24px;
  padding-top: 4px;
}

.s2b-register-existing-company
.s2b-org-search-selected-card {
  margin-top: 14px;
}

@media (max-width: 700px) {
  .s2b-register-company-source .form-radios {
    grid-template-columns: 1fr;
  }

  .s2b-register-existing-company,
  .s2b-register-new-company {
    padding: 16px 14px;
  }

  .s2b-register-source-card {
    min-height: 0;
  }
}

/* /S2B_REGISTER_ORGANIZATION_LOOKUP_STYLE_20260918 */

/* =========================================================
 * S2B_REGISTRATION_COMPLETE_STYLE_20260918
 * ========================================================= */

.s2b-registration-complete {
  width: min(100%, 860px);
  margin: 22px auto 50px;
}

.s2b-registration-complete__hero {
  position: relative;
  overflow: hidden;

  padding: 30px 28px;

  border-radius: 24px;

  background:
    linear-gradient(
      135deg,
      #102d43 0%,
      #145270 100%
    );

  box-shadow:
    0 16px 38px rgba(16, 45, 67, .16);
}

.s2b-registration-complete__hero::after {
  content: "";
  position: absolute;
  width: 250px;
  height: 250px;
  right: -95px;
  bottom: -145px;

  border:
    1px solid rgba(201, 157, 54, .28);

  border-radius: 50%;
}

.s2b-registration-complete__eyebrow {
  position: relative;
  z-index: 1;

  margin-bottom: 7px;

  color: #d8b255;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .12em;
}

.s2b-registration-complete__hero h1 {
  position: relative;
  z-index: 1;

  margin: 0 0 8px;

  color: #fff;
  font-size: clamp(30px, 6vw, 43px);
  font-weight: 900;
  line-height: 1.08;
}

.s2b-registration-complete__hero p {
  position: relative;
  z-index: 1;

  max-width: 680px;
  margin: 0;

  color: rgba(255, 255, 255, .88);
  font-size: 16px;
  line-height: 1.55;
}

.s2b-registration-complete__org {
  display: flex;
  flex-direction: column;
  gap: 4px;

  margin-top: 18px;
  padding: 20px 22px;

  border: 1px solid rgba(23, 45, 66, .12);
  border-left: 5px solid #c99d36;
  border-radius: 18px;

  background: #fff;

  box-shadow:
    0 9px 25px rgba(23, 45, 66, .055);
}

.s2b-registration-complete__org-label {
  color: #a67b24;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .10em;
}

.s2b-registration-complete__org strong {
  color: #172d42;
  font-size: 24px;
  font-weight: 900;
}

.s2b-registration-complete__status {
  width: fit-content;
  margin-top: 5px;
  padding: 5px 10px;

  border-radius: 999px;

  background: #fff7e6;
  color: #946c18;

  font-size: 12px;
  font-weight: 800;
}

.s2b-registration-complete__card {
  margin-top: 18px;
  padding: 8px 22px;

  border: 1px solid rgba(23, 45, 66, .11);
  border-radius: 20px;

  background: #fff;

  box-shadow:
    0 10px 28px rgba(23, 45, 66, .055);
}

.s2b-registration-step {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  align-items: start;

  padding: 19px 0;
}

.s2b-registration-step
+ .s2b-registration-step {
  border-top:
    1px solid rgba(23, 45, 66, .09);
}

.s2b-registration-step__icon,
.s2b-registration-step__number {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 38px;
  height: 38px;

  border-radius: 50%;

  font-size: 15px;
  font-weight: 900;
}

.s2b-registration-step--done
.s2b-registration-step__icon {
  background: #eaf6ee;
  color: #277444;
}

.s2b-registration-step--pending
.s2b-registration-step__number {
  background: #fff4d9;
  color: #9d721c;
}

.s2b-registration-step--saved
.s2b-registration-step__number {
  background: #edf3f8;
  color: #173f5e;
}

.s2b-registration-step--next
.s2b-registration-step__number {
  background: #f3f5f7;
  color: #687786;
}

.s2b-registration-step strong {
  display: block;

  margin: 1px 0 4px;

  color: #172d42;
  font-size: 16px;
  font-weight: 850;
}

.s2b-registration-step span:not(
  .s2b-registration-step__icon
):not(
  .s2b-registration-step__number
) {
  display: block;

  color: #687786;
  font-size: 14px;
  line-height: 1.5;
}

.s2b-registration-complete__notice {
  display: flex;
  flex-direction: column;
  gap: 4px;

  margin-top: 15px;
  padding: 14px 16px;

  border-radius: 14px;

  background: #f7f8fa;

  color: #687786;
  font-size: 13px;
  line-height: 1.5;
}

.s2b-registration-complete__notice strong {
  color: #172d42;
}

.s2b-registration-complete__actions {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 10px;

  margin-top: 18px;
}

.s2b-registration-complete__button {
  display: flex;
  align-items: center;
  justify-content: center;

  min-height: 48px;
  padding: 10px 16px;

  border-radius: 13px;

  font-size: 14px;
  font-weight: 850;
  text-align: center;
  text-decoration: none !important;
}

.s2b-registration-complete__button--primary {
  background: #c99d36;
  color: #172d42 !important;
}

.s2b-registration-complete__button--secondary {
  border: 1px solid rgba(23, 45, 66, .15);
  background: #fff;
  color: #172d42 !important;
}

.s2b-registration-complete__button--quiet {
  grid-column: 1 / -1;

  background: #172d42;
  color: #fff !important;
}

@media (max-width: 700px) {
  .s2b-registration-complete {
    margin-top: 10px;
  }

  .s2b-registration-complete__hero {
    padding: 25px 20px;
    border-radius: 20px;
  }

  .s2b-registration-complete__org {
    padding: 18px;
  }

  .s2b-registration-complete__card {
    padding-left: 17px;
    padding-right: 17px;
  }

  .s2b-registration-complete__actions {
    grid-template-columns: 1fr;
  }

  .s2b-registration-complete__button--quiet {
    grid-column: auto;
  }
}

/* /S2B_REGISTRATION_COMPLETE_STYLE_20260918 */

/* =========================================================
 * S2B_REGISTRATION_COMPLETE_DYNAMIC_STYLE_20260918
 * ========================================================= */

.s2b-registration-complete__status--verified {
  background: #eaf6ee;
  color: #277444;
}

.s2b-registration-complete__status--rejected {
  background: #fff0f0;
  color: #a63a3a;
}

.s2b-registration-step--ready
.s2b-registration-step__number {
  background: #fff1c9;
  color: #946c18;

  box-shadow:
    0 0 0 4px rgba(201, 157, 54, .12);
}

.s2b-registration-step--ready strong {
  color: #946c18;
}

.s2b-registration-step--rejected
.s2b-registration-step__number {
  background: #fff0f0;
  color: #a63a3a;
}

.s2b-registration-complete__button--wide {
  grid-column: 1 / -1;

  min-height: 54px;

  font-size: 15px;
}

.s2b-bp-plan-preselected {
  margin: 0 0 14px;
  padding: 12px 14px;

  border-left: 4px solid #c99d36;
  border-radius: 10px;

  background: #fff8e8;

  color: #675524;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}

@media (max-width: 700px) {
  .s2b-registration-complete__button--wide {
    grid-column: auto;
  }
}

/* /S2B_REGISTRATION_COMPLETE_DYNAMIC_STYLE_20260918 */

/* =========================================================
 * S2B_REGISTER_MONTHLY_PRICE_STYLE_20260918
 * Zelfde prijs-hiërarchie tijdens bedrijfsregistratie.
 * ========================================================= */

.s2b-register-plan-card__price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  column-gap: 6px;
  row-gap: 3px;

  margin-top: 5px;
}

.s2b-register-plan-card__price-main {
  color: #a67b24;

  font-size: clamp(1.55rem, 2.5vw, 1.9rem);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.02em;
}

.s2b-register-plan-card__price-period {
  color: #34495b;

  font-size: .86rem;
  line-height: 1.2;
  font-weight: 800;
}

.s2b-register-plan-card__price-yearly {
  display: block;
  flex: 0 0 100%;

  margin-top: 3px;

  color: #71808e;

  font-size: .72rem;
  line-height: 1.35;
  font-weight: 650;
}

@media (max-width: 700px) {
  .s2b-register-plan-card__price-main {
    font-size: 1.85rem;
  }

  .s2b-register-plan-card__price-period {
    font-size: .84rem;
  }
}

/* /S2B_REGISTER_MONTHLY_PRICE_STYLE_20260918 */



/* ==========================================================
 * S2B_PROFILE_EDIT_REAL_INTERIOR_BRIDGE_20260922
 *
 * HERO:
 * achtergrond, goudaccent, radius, schaduw en de grote
 * Ship2Buy-cirkel komen rechtstreeks uit s2b-interior.css.
 *
 * Hier regelen we uitsluitend de interne layout van de
 * profile-edit hero en de accordionkoppen.
 * ========================================================== */


/*
 * Vier bestaande hero-items:
 * eyebrow / titel / tekst / Profiel bekijken.
 */
body.s2b-interior
.s2b-profile-edit-form
.s2b-profile-edit-hero {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  grid-template-areas:
    "eyebrow action"
    "title action"
    "text action";

  column-gap: 30px;
  align-items: center;
}


body.s2b-interior
.s2b-profile-edit-form
.s2b-profile-edit-hero
.s2b-profile-edit-eyebrow {
  grid-area: eyebrow;
}


body.s2b-interior
.s2b-profile-edit-form
.s2b-profile-edit-hero
h1 {
  grid-area: title;
}


body.s2b-interior
.s2b-profile-edit-form
.s2b-profile-edit-hero
p {
  grid-area: text;
}


/*
 * De oudere profile.css zette deze knop absoluut.
 * Binnen de nieuwe centrale hero hoort hij in de grid.
 */
body.s2b-interior
.s2b-profile-edit-form
.s2b-profile-edit-hero
.s2b-profile-edit-view-button {
  grid-area: action;

  position: relative !important;

  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;

  margin: 0 !important;

  z-index: 2;
}


/*
 * Persoonlijk profiel / Privacy / Account & beveiliging:
 * dezelfde echte interior-kleuren.
 */
body.s2b-interior
.s2b-profile-edit-form
details.s2b-profile-edit-section
> summary {
  min-height: 68px;

  border: 0 !important;

  background:
    linear-gradient(
      118deg,
      var(--s2bi-navy-deep) 0%,
      var(--s2bi-navy) 42%,
      var(--s2bi-blue) 72%,
      var(--s2bi-teal) 100%
    )
    !important;

  color: #fff !important;

  box-shadow:
    inset 6px 0 0
      var(--s2bi-gold)
    !important;
}


body.s2b-interior
.s2b-profile-edit-form
details.s2b-profile-edit-section[open]
> summary {
  background:
    linear-gradient(
      118deg,
      var(--s2bi-navy-deep) 0%,
      var(--s2bi-navy) 42%,
      var(--s2bi-blue) 72%,
      var(--s2bi-teal) 100%
    )
    !important;

  color: #fff !important;
}


body.s2b-interior
.s2b-profile-edit-form
details.s2b-profile-edit-section
> summary::after {
  color:
    var(--s2bi-gold-soft)
    !important;
}


body.s2b-interior
.s2b-profile-edit-form
details.s2b-profile-edit-section {
  overflow: hidden;

  border:
    1px solid
    var(--s2bi-border)
    !important;

  border-radius:
    var(--s2bi-radius-card)
    !important;

  background: #fff;

  box-shadow:
    0 8px 26px
    rgba(15,35,55,.055);
}


@media (max-width: 767.98px) {

  body.s2b-interior
  .s2b-profile-edit-form
  .s2b-profile-edit-hero {
    grid-template-columns: 1fr;

    grid-template-areas:
      "eyebrow"
      "title"
      "text"
      "action";

    column-gap: 0;
  }


  body.s2b-interior
  .s2b-profile-edit-form
  .s2b-profile-edit-hero
  .s2b-profile-edit-view-button {
    width: 100%;
    margin-top: 18px !important;
  }


  body.s2b-interior
  .s2b-profile-edit-form
  details.s2b-profile-edit-section
  > summary {
    min-height: 62px;

    box-shadow:
      inset 5px 0 0
        var(--s2bi-gold)
      !important;
  }
}

/* /S2B_PROFILE_EDIT_REAL_INTERIOR_BRIDGE_20260922 */
