/* Organization — fixed selector, independent radial stage, readable detail column. */
#idst-organization-hero {
  --org-edge: clamp(24px, 3vw, 56px);
  --org-left: clamp(210px, 16vw, 252px);
  --org-right: clamp(292px, 22vw, 340px);
  --org-gap: clamp(18px, 1.6vw, 30px);
  position: relative;
  height: max(720px, 100svh);
  min-height: 720px;
  padding: 124px 0 0;
  background: radial-gradient(ellipse at 50% 44%, #252525 0%, #202020 58%, #191919 100%);
  color: #e2e7e9;
  isolation: isolate;
  overflow: hidden;
}
#idst-organization-hero > .elementor-container { position: static; width: 100%; max-width: none; margin: 0; }
#idst-organization-hero > .elementor-container > .elementor-column,
#idst-organization-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { position: static; padding: 0; }
#idst-organization-hero > .elementor-container > .elementor-column > .elementor-widget-wrap { display: block; }
#idst-organization-hero .idst-org-page-title,
#idst-organization-hero .idst-org-page-kicker { position: relative; z-index: 3; width: var(--org-left); margin-left: var(--org-edge); pointer-events: none; }
#idst-organization-hero .idst-org-page-title { margin-bottom: 8px; }
#idst-organization-hero .idst-org-page-title .elementor-heading-title { margin: 0; color: #f3f6f7; font-family: inherit; font-size: 32px; font-weight: 400; line-height: 1.22; letter-spacing: -.075em; }
#idst-organization-hero .idst-org-page-kicker { margin-bottom: 0; }
#idst-organization-hero .idst-org-page-kicker .elementor-heading-title { margin: 0; color: #9ca2a5; font-family: inherit; font-size: 9px; font-weight: 400; line-height: 1.5; letter-spacing: .2em; }
#idst-organization-hero .idst-org-scene-widget { position: absolute !important; z-index: 0; inset: 0; width: 100%; height: 100%; margin: 0; }
#idst-organization-hero .idst-org-scene-widget > .elementor-widget-container,
#idst-organization-hero .idst-org-scene-widget .elementor-shortcode { height: 100%; }
.idst-organization { --org-accent: #e4e9eb; position: relative; width: 100%; height: 100%; color: #dce3e6; font-family: inherit; text-align: left; -webkit-font-smoothing: antialiased; }
.idst-organization *, .idst-organization *::before, .idst-organization *::after { box-sizing: border-box; }
.idst-org-canvas { display: block; position: absolute; inset: 0; width: 100%; height: 100%; }
.idst-org-graph { display: block; position: absolute; top: 120px; bottom: 24px; left: calc(var(--org-edge) + var(--org-left) + var(--org-gap)); right: calc(var(--org-edge) + var(--org-right) + var(--org-gap)); z-index: 0; overflow: hidden; touch-action: pan-y; cursor: grab; outline: none; }
.idst-organization.is-dragging .idst-org-graph { cursor: grabbing; }
/* Pointer focus must never frame the scene. Keyboard focus uses a small marker. */
#idst-organization-hero .idst-org-graph,
#idst-organization-hero .idst-org-graph:focus,
#idst-organization-hero .idst-org-graph:focus-visible { border: 0 !important; outline: none !important; box-shadow: none !important; -webkit-tap-highlight-color: transparent; }
.idst-organization.is-keyboard-mode .idst-org-graph:focus::after { content: ""; position: absolute; bottom: 9px; left: calc(50% - 20px); width: 40px; height: 2px; background: rgba(235, 242, 245, .85); pointer-events: none; }
.idst-org-canvas { pointer-events: none; }
.idst-org-geometry-canvas { display: block; position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.idst-org-graph > .idst-org-canvas { z-index: 1; }
.idst-org-selector { position: absolute; z-index: 2; left: var(--org-edge); top: 212px; bottom: 28px; width: var(--org-left); padding-right: 6px; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #5f6569 transparent; scrollbar-gutter: stable; }
.idst-organization .idst-org-selector__heading { margin: 0 0 8px; padding: 0; color: #aeb6ba; font-family: inherit; font-size: 10px; font-weight: 400; line-height: 1.6; letter-spacing: .08em; }
.idst-org-business-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
.idst-org-sectors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3px 12px; }
.idst-org-departments { margin-top: 27px; }
.idst-organization .idst-org-business {
  display: grid;
  grid-template-columns: 5px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 37px;
  margin: 0;
  padding: 6px 0;
  border: 0;
  border-bottom: 1px solid rgba(229, 237, 243, .045);
  border-radius: 0;
  outline: none;
  background: none;
  box-shadow: none;
  color: #c0c7ca;
  font-family: inherit;
  font-weight: 400;
  text-align: left;
  text-transform: none;
  cursor: pointer;
  transition: color .2s ease, border-color .2s ease;
}
.idst-organization .idst-org-business::before,
.idst-organization .idst-org-business::after { content: none; display: none; }
.idst-organization .idst-org-business:is(:hover, :focus-visible, .is-active, .is-preview) { color: #f6f8f9; border-bottom-color: rgba(229, 237, 243, .22); background: none; box-shadow: none; }
.idst-organization .idst-org-business:focus-visible { outline: 1px solid #dce4e7; outline-offset: 3px; }
.idst-org-business__dot { width: 4px; height: 4px; border: 1px solid currentColor; border-radius: 50%; opacity: .5; }
.idst-org-business:is(.is-active, .is-preview) .idst-org-business__dot { background: currentColor; opacity: 1; }
.idst-org-business__title { font-size: 12px; font-weight: 400; line-height: 1.5; letter-spacing: -.035em; white-space: normal; word-break: keep-all; overflow-wrap: normal; }
.idst-organization .idst-org-sector {
  display: grid;
  grid-template-columns: 16px 6px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  width: 100%;
  min-height: 31px;
  margin: 0;
  padding: 5px 0;
  border: 0;
  border-bottom: 1px solid rgba(229, 237, 243, .045);
  border-radius: 0;
  outline: none;
  background: none;
  box-shadow: none;
  color: #afb5b8;
  font-family: inherit;
  font-weight: 400;
  line-height: 1.35;
  text-align: left;
  text-transform: none;
  cursor: pointer;
  transition: color .2s ease, border-color .2s ease;
}
.idst-organization .idst-org-sector::before,
.idst-organization .idst-org-sector::after { content: none; display: none; }
.idst-organization .idst-org-sector:is(:hover, :focus-visible, .is-active, .is-preview) { color: #f0f4f5; border-bottom-color: rgba(229, 237, 243, .19); background: none; box-shadow: none; }
.idst-organization .idst-org-sector:focus-visible { outline: 1px solid #dce4e7; outline-offset: 3px; }
.idst-org-sector__index { color: #858b8e; font-size: 9px; letter-spacing: .06em; font-variant-numeric: tabular-nums; }
.idst-org-sector__dot { display: block; width: 6px; height: 6px; border: 1px solid currentColor; border-radius: 50%; opacity: .65; }
.idst-org-sector.is-active .idst-org-sector__dot,
.idst-org-sector.is-preview .idst-org-sector__dot { background: currentColor; opacity: 1; }
.idst-org-sector__title { display: block; font-size: 12px; font-weight: 400; line-height: 1.45; letter-spacing: -.035em; white-space: normal; word-break: keep-all; overflow-wrap: normal; }
.idst-org-details { position: absolute; z-index: 2; right: var(--org-edge); top: 136px; bottom: 28px; width: var(--org-right); padding: 0 8px 18px 24px; border-left: 1px solid rgba(232, 239, 243, .13); overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; scrollbar-color: #737a7e transparent; scrollbar-gutter: stable; pointer-events: auto; }
.idst-org-selector::-webkit-scrollbar, .idst-org-details::-webkit-scrollbar { width: 3px; }
.idst-org-selector::-webkit-scrollbar-thumb, .idst-org-details::-webkit-scrollbar-thumb { background: #5f6569; border-radius: 3px; }
.idst-org-details[hidden] { display: none !important; }
.idst-org-detail-heading { margin-bottom: 16px; }
.idst-org-detail-heading strong { display: block; color: #f1f5f6; font-size: 22px; font-weight: 400; line-height: 1.4; letter-spacing: -.045em; word-break: keep-all; }
.idst-org-detail-heading span { display: block; margin-top: 6px; color: #b5bdc1; font-size: 8px; line-height: 1.6; letter-spacing: .12em; }
.idst-org-detail-summary { margin: 0 0 24px; color: #bcc5ca; font-size: 12px; line-height: 1.85; font-weight: 400; word-break: keep-all; }
.idst-org-detail-set, .idst-org-detail-heading, .idst-org-detail-summary { transition: opacity .15s ease; }
.idst-organization.is-changing .idst-org-detail-set,
.idst-organization.is-changing .idst-org-detail-heading,
.idst-organization.is-changing .idst-org-detail-summary { opacity: 0; }
.idst-org-detail-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 8px; margin: 0; padding: 12px 0 13px; border: 0; border-top: 1px solid rgba(232, 239, 243, .15); background: none; box-shadow: none; transition: opacity .18s ease, border-color .18s ease; }
.idst-org-detail-row[data-org-role] { outline: none; }
.idst-org-detail-row[data-org-role]:focus-visible { outline: 1px solid rgba(221, 233, 240, .65); outline-offset: 4px; }
.idst-organization.is-role-focused .idst-org-detail-row.is-role-muted { opacity: .28; }
.idst-organization.is-role-focused .idst-org-detail-row.is-role-active { opacity: 1; border-top-color: var(--org-accent); }
.idst-organization.is-role-focused .idst-org-detail-row.is-role-active .idst-org-detail-row__title,
.idst-organization.is-role-focused .idst-org-detail-row.is-role-active .idst-org-detail-row__email { color: #ffffff; }
.idst-organization.is-role-focused .idst-org-detail-row.is-role-active .idst-org-detail-row__en,
.idst-organization.is-role-focused .idst-org-detail-row.is-role-active .idst-org-detail-row__tasks { color: #d5dee2; }
.idst-organization .idst-org-detail-row__title { grid-column: 1; grid-row: 1; margin: 0; color: #e0e7ea; font-family: inherit; font-size: 13px; font-weight: 400; line-height: 1.5; letter-spacing: -.035em; word-break: keep-all; }
.idst-org-detail-row__en { grid-column: 1 / -1; grid-row: 2; display: block; margin-top: 3px; color: #a5adb1; font-size: 7px; line-height: 1.5; letter-spacing: .07em; }
.idst-org-detail-row__email { grid-column: 2; grid-row: 1; align-self: center; color: #d1dadd; font-size: 11px; line-height: 1.5; text-decoration: none; white-space: nowrap; }
.idst-org-detail-row__email[href]:hover { color: #f1f5f7; text-decoration: underline; text-underline-offset: 3px; }
.idst-organization .idst-org-detail-row__tasks { grid-column: 1 / -1; grid-row: 3; display: flex; flex-wrap: wrap; gap: 0 7px; margin: 7px 0 0; padding: 0; color: #b5bfc4; font-size: 11px; line-height: 1.75; list-style: none; }
.idst-organization .idst-org-detail-row__tasks li { display: block; position: relative; margin: 0; padding: 0; word-break: keep-all; }
.idst-organization .idst-org-detail-row__tasks li:not(:last-child)::after { content: "·"; margin-left: 7px; color: #5f6569; }
.idst-org-detail-set.is-business .idst-org-detail-row,
.idst-org-detail-set.is-overview .idst-org-detail-row { padding: 13px 0 15px; }
.idst-org-detail-row__summary { grid-column: 1 / -1; grid-row: 3; margin: 8px 0 0; color: #b3bdc2; font-size: 11px; line-height: 1.8; word-break: keep-all; }
.idst-org-detail-row__count { grid-column: 2; grid-row: 1; align-self: center; color: #b2babd; font-size: 10px; font-variant-numeric: tabular-nums; }
@media (min-width: 1800px) {
  #idst-organization-hero { padding-top: 132px; }
  .idst-org-selector { top: 220px; }
  .idst-org-details { top: 142px; padding-left: 28px; }
  .idst-org-business__title, .idst-org-sector__title { font-size: 13px; }
  .idst-org-detail-summary { font-size: 13px; }
  .idst-organization .idst-org-detail-row__title { font-size: 14px; }
  .idst-org-detail-row__email { font-size: 12px; }
  .idst-org-detail-row__summary, .idst-organization .idst-org-detail-row__tasks { font-size: 12px; }
}
@media (max-width: 1200px) and (min-width: 1025px) {
  #idst-organization-hero { --org-edge: 24px; --org-left: 190px; --org-right: 260px; --org-gap: 12px; }
  .idst-org-selector { padding-right: 2px; }
  .idst-org-details { padding-left: 17px; padding-right: 4px; }
  .idst-org-sectors { column-gap: 8px; }
  .idst-org-business__title, .idst-org-sector__title { font-size: 11px; }
  .idst-organization .idst-org-sector { grid-template-columns: 4px minmax(0, 1fr); gap: 6px; }
  .idst-org-sector__index { display: none; }
  .idst-org-sector__dot { width: 4px; height: 4px; }
  .idst-org-detail-heading strong { font-size: 20px; }
  .idst-org-detail-row { grid-template-columns: minmax(0, 1fr); }
  .idst-organization .idst-org-detail-row__title { font-size: 12px; }
  .idst-org-detail-row__email { grid-column: 1; grid-row: 3; margin-top: 5px; font-size: 11px; }
  .idst-organization .idst-org-detail-row__tasks { grid-row: 4; }
  .idst-org-detail-row__count { grid-column: 1; grid-row: 3; margin-top: 5px; }
  .idst-org-detail-row__summary { grid-row: 4; }
}
@media (max-width: 1024px) {
  #idst-organization-hero { height: auto; min-height: 0; padding: 125px 28px 45px; }
  #idst-organization-hero .idst-org-page-title,
  #idst-organization-hero .idst-org-page-kicker { width: auto; margin-left: 0; }
  #idst-organization-hero .idst-org-page-title .elementor-heading-title { font-size: 30px; }
  #idst-organization-hero .idst-org-scene-widget { position: relative !important; inset: auto; height: auto; margin-top: 31px; }
  #idst-organization-hero .idst-org-scene-widget > .elementor-widget-container,
  #idst-organization-hero .idst-org-scene-widget .elementor-shortcode { height: auto; }
  .idst-organization { display: flex; flex-direction: column; height: auto; }
  .idst-org-selector { order: 0; position: relative; inset: auto; width: 100%; padding: 0; overflow: visible; scrollbar-gutter: auto; }
  .idst-org-business-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px 24px; }
  .idst-org-sectors { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px 24px; }
  .idst-organization .idst-org-business { min-height: 42px; }
  .idst-org-business__title { font-size: 13px; }
  .idst-org-sector__title { font-size: 12px; }
  .idst-organization .idst-org-sector { min-height: 37px; }
  .idst-org-graph { order: 1; position: relative; inset: auto; width: calc(100% + 56px); height: min(750px, 96vw); min-height: 440px; margin: 25px -28px 21px; }
  .idst-org-details { order: 2; position: relative; inset: auto; width: 100%; max-width: none; margin: 0 auto; padding: 26px 0 0; border-left: 0; border-top: 1px solid rgba(232, 239, 243, .13); overflow: visible; scrollbar-gutter: auto; }
  .idst-org-detail-set { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 35px; }
  .idst-org-detail-heading { margin-bottom: 14px; }
  .idst-org-detail-summary { max-width: 600px; margin-bottom: 24px; font-size: 13px; }
  .idst-organization .idst-org-detail-row__title { font-size: 14px; }
  .idst-org-detail-row__en { font-size: 8px; }
  .idst-org-detail-row__email { font-size: 11px; }
  .idst-organization .idst-org-detail-row__tasks { font-size: 11px; }
  .idst-org-detail-set.is-business .idst-org-detail-row, .idst-org-detail-set.is-overview .idst-org-detail-row { padding: 14px 0; }
  .idst-org-detail-set.is-business .idst-org-detail-row__tasks,
  .idst-org-detail-row__summary { font-size: 11px; }
}
@media (max-width: 600px) {
  #idst-organization-hero { padding: 117px 22px 38px; }
  .idst-org-business-list, .idst-org-sectors { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 18px; }
  .idst-org-departments { margin-top: 23px; }
  .idst-organization .idst-org-business { min-height: 45px; gap: 6px; }
  .idst-org-business__title { font-size: 11px; line-height: 1.6; }
  .idst-organization .idst-org-sector { grid-template-columns: 6px minmax(0, 1fr); gap: 7px; min-height: 43px; padding: 6px 0; }
  .idst-org-sector__index { display: none; }
  .idst-org-sector__title { font-size: 11px; line-height: 1.4; }
  .idst-org-sector__dot { width: 4px; height: 4px; }
  .idst-org-graph { width: calc(100% + 44px); height: 118vw; min-height: 400px; margin: 17px -22px 20px; }
  .idst-org-detail-set { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .idst-org-detail-heading strong { font-size: 22px; }
  .idst-org-detail-row { padding: 15px 0; }
  .idst-organization .idst-org-detail-row__title { font-size: 14px; }
  .idst-org-detail-row__email { font-size: 12px; }
  .idst-organization .idst-org-detail-row__tasks { font-size: 12px; }
  .idst-org-detail-set.is-business .idst-org-detail-row, .idst-org-detail-set.is-overview .idst-org-detail-row { padding: 15px 0; }
  .idst-org-detail-set.is-business .idst-org-detail-row__tasks,
  .idst-org-detail-row__summary { font-size: 12px; }
}
@media (min-width: 1025px) and (max-height: 800px) {
  #idst-organization-hero { min-height: 680px; height: max(680px, 100svh); padding-top: 116px; }
  .idst-org-selector { top: 194px; bottom: 22px; }
  .idst-org-departments { margin-top: 19px; }
  .idst-organization .idst-org-business { min-height: 34px; }
  .idst-org-details { top: 124px; bottom: 22px; }
  .idst-org-graph { top: 112px; bottom: 22px; }
  .idst-org-detail-summary { margin-bottom: 18px; }
  .idst-org-detail-row { padding-top: 10px; padding-bottom: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .idst-organization *, .idst-organization *::before, .idst-organization *::after { transition-duration: .001ms !important; animation: none !important; }
}
