/* Developer contact page + site-wide developer CTA */
.dev-page .site-header{background:rgba(247,251,253,.96)}
.dev{padding:calc(var(--header-h) + 2.5rem) 0 4rem;min-height:70vh}
.dev__wrap{max-width:960px}
.dev__eyebrow{
  margin:0 0 1rem;
  font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--blue);
}
.dev__card{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(1.5rem,4vw,2.75rem);
  align-items:stretch;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(20,48,68,.08);
}
.dev__photo{margin:0;background:#e8f1f6}
.dev__photo img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:center top}
.dev__info{padding:clamp(1.4rem,3vw,2.2rem);display:flex;flex-direction:column;gap:.85rem}
.dev__info h1{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(1.9rem,4vw,2.6rem);
  font-weight:800;letter-spacing:-.03em;color:var(--ink-text);
}
.dev__role{margin:0;font-weight:700;color:var(--teal);letter-spacing:.04em}
.dev__lead{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.55}
.dev__contacts{display:grid;gap:1rem;margin:1rem 0 0;padding:0;list-style:none}
.dev__contacts li{display:grid;gap:.2rem;padding-top:.85rem;border-top:1px solid var(--line)}
.dev__contacts span{font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.dev__contacts a{font-family:var(--font-display);font-size:1.1rem;font-weight:700;color:var(--ink-text);overflow-wrap:anywhere}
.dev__contacts a:hover{color:var(--blue)}
.dev__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}
.btn--ghost-dark{
  border:1px solid var(--line);
  background:#fff;color:var(--ink-text);
}
.btn--ghost-dark:hover{border-color:var(--blue);color:var(--blue)}

/* Developer notice: desktop card (top-right) / mobile dock (full-width bottom) */
:root{--dev-dock-h:0px}
@keyframes devGlow{
  0%,100%{text-shadow:0 0 3px rgba(255,255,255,.25)}
  50%{text-shadow:0 0 8px rgba(255,255,255,.65)}
}
.dev-bar{
  position:fixed;
  /* Always sit below the fixed header so nav links stay clickable */
  top:calc(var(--header-h,5.5rem) + .65rem + env(safe-area-inset-top,0px));
  right:.75rem;
  left:auto;
  bottom:auto;
  z-index:95;
  width:auto;
  max-width:11.5rem;
  margin:0;
  padding:0;
  background:transparent;
  color:#fff;
  pointer-events:none;
}
.dev-bar__inner{
  pointer-events:auto;
  box-sizing:border-box;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.35rem;
  padding:.5rem .6rem .55rem;
  border-radius:10px;
  background:linear-gradient(135deg,#1557e0 0%,#0e9a8b 100%);
  box-shadow:0 8px 22px rgba(12,42,74,.22);
}
.dev-bar__label{
  display:flex;
  flex-direction:column;
  gap:.15rem;
  min-width:0;
  line-height:1.2;
}
.dev-bar__label small{
  display:block;
  margin:0;
  font-size:.55rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.9;
  white-space:nowrap;
}
.dev-bar__name,
.dev-bar__contacts{display:none!important}
.dev-bar__line{
  display:block;
  margin:0;
  font-family:var(--font-display);
  font-size:.68rem;
  font-weight:700;
  line-height:1.25;
  color:#fff;
  text-decoration:none;
  white-space:nowrap;
  animation:devGlow 2.8s ease-in-out infinite;
}
.dev-bar__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:1.4rem;
  padding:.18rem .55rem;
  border-radius:6px;
  background:#fff;
  color:#0c2a4a;
  font-family:var(--font-display);
  font-size:.65rem;
  font-weight:800;
  text-decoration:none;
  white-space:nowrap;
}
.dev-bar__btn:hover{background:#f0f7ff}

/* Switch to bottom dock before the horizontal nav gets cramped */
@media(max-width:1100px){
  :root{--dev-dock-h:3.75rem}
  .dev-bar{
    top:auto;
    right:0;
    left:0;
    bottom:0;
    z-index:200;
    max-width:none;
    width:100%;
    padding-bottom:env(safe-area-inset-bottom,0px);
    background:linear-gradient(135deg,#1557e0 0%,#0e9a8b 100%);
    box-shadow:0 -6px 24px rgba(12,42,74,.18);
    pointer-events:auto;
  }
  .dev-bar__inner{
    width:100%;
    max-width:none;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:.65rem;
    padding:.55rem .85rem;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .dev-bar__label{flex:1;min-width:0}
  .dev-bar__label small{white-space:normal}
  .dev-bar__line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dev-bar__btn{flex-shrink:0}
  body:has(.dev-bar){padding-bottom:calc(var(--dev-dock-h) + env(safe-area-inset-bottom,0px))}
  body:has(.dev-bar) .wa-float{
    bottom:calc(var(--dev-dock-h) + env(safe-area-inset-bottom,0px) + 1.1rem)!important;
    z-index:190!important;
  }
}
@media(max-width:780px){
  .dev__card{grid-template-columns:1fr}
  .dev__photo img{min-height:260px;max-height:340px}
  :root{--dev-dock-h:3.9rem}
  .dev-bar__inner{padding:.5rem .75rem}
  .dev-bar__label small{font-size:.5rem;letter-spacing:.06em}
  .dev-bar__line{font-size:.62rem}
  .dev-bar__btn{font-size:.62rem;min-height:1.35rem;padding:.16rem .5rem}
}
