/* Original page styling remains in each HTML file and its Tailwind config. */

body[data-reference-page="about"] #profile-section,
body[data-reference-page="about"] #culture-section,
body[data-reference-page="cases"] #cases-header {
  --tw-bg-opacity: 1;
  background-color: rgb(232 232 232 / var(--tw-bg-opacity, 1));
}

[data-detail][role="link"] {
  cursor: pointer;
}
[data-reference-page]
  .site-header
  span[class~="text-[10px]"][class~="sm:text-[11px]"][class~="font-bold"][class~="text-primary"][class~="tracking-wider"][class~="mt-0.5"] {
  display: none;
}
.site-utility {
  display: none !important;
  font-size: 11px;
  line-height: 16px;
}
.site-utility > div > :first-child {
  min-width: 0;
}
.site-utility .material-symbols-outlined {
  flex-shrink: 0;
}
.site-header > div {
  min-height: 80px;
  height: auto;
  gap: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
}
.site-header > div > :first-child {
  min-width: 0;
}
.site-header > div > :first-child > a {
  min-width: 0;
}
.site-header [data-bind="site.company_name"] {
  overflow-wrap: anywhere;
}
.site-slogan {
  width: 100%;
  text-align: right;
}
.site-slogan.flex {
  justify-content: flex-end;
}
.site-slogan:not(.flex):not(.hidden) {
  display: inline-block;
}
.site-utility > div {
  gap: 16px;
}
.site-utility > div > :last-child {
  flex-shrink: 0;
}
.site-navigation {
  width: 192px;
}
@media (min-width: 1280px) and (max-width: 1759px) {
  body:has(> .site-navigation) > main,
  body:has(> .site-navigation) > section {
    margin-left: 240px;
    margin-right: 24px;
    width: calc(100% - 264px);
  }
}
@media (max-width: 767px) {
  .site-header > div {
    flex-wrap: wrap;
  }
  .site-header > div > :last-child {
    margin-left: auto;
  }
  .site-utility > div > :last-child {
    flex-wrap: wrap;
    justify-content: center;
    flex-shrink: 1;
  }
}
[hidden] {
  display: none !important;
}
.reference-status {
  position: fixed;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  padding: 8px 16px;
  border: 1px solid #bfc7d2;
  border-radius: 4px;
  background: #fff;
  color: #006194;
  font-size: 13px;
}
.reference-status[role="alert"] {
  color: #ba1a1a;
}
.reference-status button {
  text-decoration: underline;
}
.reference-dialog {
  width: min(1000px, 94vw);
  max-height: 85vh;
  padding: 32px 24px;
  border: 1px solid #bfc7d2;
  border-radius: 8px;
  color: #131b2e;
  background: #fff;
}
.reference-dialog::backdrop {
  background: #131b2e88;
}
.reference-dialog h2 {
  margin-bottom: 24px;
  font-size: 20px;
  font-weight: 700;
}
.reference-close {
  position: absolute;
  top: 6px;
  right: 16px;
  font-size: 24px;
}
.reference-table {
  overflow: auto;
}
.reference-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.reference-table th,
.reference-table td {
  min-width: 140px;
  padding: 12px;
  text-align: left;
  border: 1px solid #bfc7d266;
}
.reference-table th {
  background: #f2f3ff;
}
