/* Omnitechnicus v2.4: matching dark navigation/footer, bold email headings and stable profile artwork. */

/* One opaque dark-blue surface keeps the navigation and footer visually consistent. */
:root { --site-bar-dark: #070f23; }
.site-header, .site-header.scrolled { background: var(--site-bar-dark); }

.contact-aside { min-width: 0; container-type: inline-size; }
.contact-aside .contact-email {
  max-width: 100%;
  font-family: var(--font-display);
  font-size: clamp(.875rem, 1.45vw, 1.125rem);
  font-size: clamp(.875rem, 5.5cqi, 1.125rem);
  font-weight: 800;
  font-stretch: normal;
  letter-spacing: -.015em;
  line-height: 1.5;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
}
.contact-email a:hover { color: var(--blue-bright); }
@media (max-width: 460px) { .contact-aside { padding: 24px; } }

/* Outlined letter artwork does not depend on browser font metrics or text strokes. */
.leadership-founder-layout {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 48px;
  align-items: start;
}
.leadership-profile-visual { position: sticky; top: 130px; width: 340px; min-width: 0; }
.leadership-placeholder {
  display: block;
  position: relative;
  flex: none;
  color: var(--gold);
  border: 1px solid var(--line-strong);
  background: #111d33;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}
.leadership-placeholder-founder { width: 340px; height: 340px; border-radius: 32px; }
.leadership-placeholder-compact { width: 92px; height: 92px; border-radius: 24px; }
.leadership-profile-glyph { display: block; width: 100%; height: 100%; max-width: none; overflow: visible; }
.leader-head { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 22px; align-items: center; }
.leader-head > div:last-child { min-width: 0; }
.leader-head .service-kicker { display: block; line-height: 1.5; overflow-wrap: normal; }
[data-theme="light"] .leadership-placeholder { background: #f1f5fc; box-shadow: inset 0 1px 0 #fff; }
@media (max-width: 1020px) {
  .leadership-founder-layout { grid-template-columns: 280px minmax(0, 1fr); gap: 32px; }
  .leadership-profile-visual, .leadership-placeholder-founder { width: 280px; }
  .leadership-placeholder-founder { height: 280px; }
}
@media (max-width: 900px) {
  .leadership-founder-layout { grid-template-columns: minmax(0, 1fr); }
  .leadership-profile-visual { position: static; margin-inline: auto; }
}
@media (max-width: 600px) {
  .leader-head { grid-template-columns: 72px minmax(0, 1fr); gap: 16px; }
  .leadership-placeholder-compact { width: 72px; height: 72px; border-radius: 20px; }
}
@media (max-width: 360px) {
  .leadership-profile-visual, .leadership-placeholder-founder { width: 240px; }
  .leadership-placeholder-founder { height: 240px; }
}

/* Opaque panels prevent the page wallpaper from showing through the footer. */
.site-footer {
  background: var(--site-bar-dark);
  background-image: none;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}
[data-theme="light"] .site-footer {
  background: #fff;
  background-image: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

/* Every external technology link uses this same compact, bold arrow. */
.technology-link-arrow {
  display: inline-block;
  flex: none;
  width: 12px;
  height: 12px;
  color: var(--gold);
  vertical-align: -1px;
}
.technology-microsoft-grid .technology-link-arrow { margin-inline-start: 4px; }

/* Local silhouettes inherit the site's palette rather than vendor brand colors. */
.technology-brand-strip { gap: 12px; padding: 18px 0; }
.technology-brand-strip li { display: block; }
.technology-brand-strip a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 116px;
  height: 100%;
  padding: 16px 10px;
  border: 1px solid rgba(204, 221, 255, .22);
  border-radius: 14px;
  background: rgba(9, 30, 72, .62);
  color: #f4f7ff;
  transition: background .18s ease, border-color .18s ease;
}
.technology-brand-strip a:hover { border-color: #e5b33f; background: rgba(21, 54, 113, .82); }
.technology-brand-strip .technology-mark { width: 112px; max-width: 100%; height: 30px; color: #edc36b; }
.technology-brand-strip .technology-mark-microsoft, .technology-brand-strip .technology-mark-ubiquiti { width: 34px; }
.technology-brand-strip .vendor-name { display: flex; align-items: center; gap: 6px; }
.technology-card-heading, .technology-card-compact .technology-card-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  justify-items: start;
  align-content: start;
  min-height: 112px;
}
.technology-vendor-link { width: 100%; border-radius: 5px; }
.technology-vendor-link:hover h3 { color: var(--blue-bright); }
.technology-vendor-link h3 { display: flex; align-items: center; gap: 6px; }
.technology-card .technology-mark { color: var(--blue-bright); }
.technology-card .technology-mark-autoelevate,
.technology-card .technology-mark-sentinelone,
.technology-card .technology-mark-veeam,
.technology-card .technology-mark-hpe { width: 112px; }
.technology-vendor-link:hover .technology-mark { color: var(--gold); }
.technology-mark-autoelevate { --vendor-mark: url("/assets/images/vendors/cyberfox.svg"); }
.technology-mark-backblaze { --vendor-mark: url("/assets/images/vendors/backblaze.svg"); }
.technology-mark-bitwarden { --vendor-mark: url("/assets/images/vendors/bitwarden.svg"); }
.technology-mark-cloudflare { --vendor-mark: url("/assets/images/vendors/cloudflare.svg"); }
.technology-mark-dell { --vendor-mark: url("/assets/images/vendors/dell.svg"); }
.technology-mark-hp { --vendor-mark: url("/assets/images/vendors/hp.svg"); }
.technology-mark-hpe { --vendor-mark: url("/assets/images/vendors/hpe.svg"); }
.technology-mark-hudu { --vendor-mark: url("/assets/images/vendors/hudu.svg"); }
.technology-mark-huntress { --vendor-mark: url("/assets/images/vendors/huntress.svg"); }
.technology-mark-jamf { --vendor-mark: url("/assets/images/vendors/jamf.svg"); }
.technology-mark-knowbe4 { --vendor-mark: url("/assets/images/vendors/knowbe4.svg"); }
.technology-mark-microsoft { --vendor-mark: url("/assets/images/vendors/microsoft.svg"); }
.technology-mark-ninjaone { --vendor-mark: url("/assets/images/vendors/ninjaone.png"); }
.technology-mark-proxmox { --vendor-mark: url("/assets/images/vendors/proxmox.svg"); }
.technology-mark-sentinelone { --vendor-mark: url("/assets/images/vendors/sentinelone.svg"); }
.technology-mark-tenable { --vendor-mark: url("/assets/images/vendors/tenable.svg"); }
.technology-mark-ubiquiti { --vendor-mark: url("/assets/images/vendors/ubiquiti.svg"); }
.technology-mark-uptimekuma { --vendor-mark: url("/assets/images/vendors/uptimekuma.svg"); }
.technology-mark-veeam { --vendor-mark: url("/assets/images/vendors/veeam.svg"); }
@media (prefers-reduced-motion: reduce) { .technology-brand-strip a { transition: none; } }
