/* Event technology identity. Preserve section backgrounds and imagery; recolor component surfaces. */
:root{
  --brand-blue:#1764c0;
  --brand-red:#cf4140;
  --brand-blue-hover:#104b94;
  --brand-navy:#173b60;
  --brand-orange:#f28a2e;
  --brand-teal:#16a6b6;
  --brand-orange-ink:#a34b0b;
  --brand-muted:#526477;
  --brand-line:#d7e1ec;
  --brand-surface:#f5f8fc;
  --brand-surface-hover:#edf4fd;
  --brand-orange-surface:#fff0df;
}
body{font-weight:400}
.section-title,.seg-title,.cases-head h3{color:var(--brand-navy);font-weight:700}
.section-title .accent,.seg-title .accent{color:var(--brand-blue)}
.section-title .accent::before{background:var(--brand-orange);opacity:.4}
#types .seg-title .accent{color:var(--brand-red)}
.seg-sub,.cases-sub{color:var(--brand-muted);font-weight:400}

/* Navigation uses the same action blue on all three pages. */
.entrance-nav{background:rgba(245,248,252,.96);border-color:var(--brand-line);box-shadow:0 6px 24px #173b6014}
.entrance-nav-item,.entrance-nav-item:disabled{color:var(--brand-navy);-webkit-text-fill-color:var(--brand-navy)}
.entrance-nav-item.is-current{background:var(--brand-blue);color:#fff;-webkit-text-fill-color:#fff;box-shadow:0 2px 8px #1764c026}
.entrance-nav-item.is-current:hover{background:var(--brand-blue-hover);border-color:var(--brand-blue-hover)}
.entrance-nav-item:not(.is-current):not(:disabled):hover{background:var(--brand-surface-hover);color:var(--brand-blue);-webkit-text-fill-color:var(--brand-blue)}
.entrance-nav-item:focus-visible{outline-color:var(--brand-orange)}
.about-hero h1,.about-hero h1 em{font-weight:700}

/* A dark live-service folder anchors the pair; online stays light. */
.project-folder-1{--folder-color:var(--brand-navy);--folder-ink:#f5f8fc;--folder-edge:#315779}
.project-folder-2{--folder-color:#edf3fa;--folder-ink:var(--brand-navy);--folder-edge:#c3d3e5}
.project-date{color:var(--brand-blue)}
.project-date span{background:var(--brand-orange)}
.project-description{color:#3f5264;font-weight:400}
.project-lead{font-weight:500}
.project-cta{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}
.project-cta span{color:inherit}
.project-cta:hover{background:var(--brand-blue-hover);border-color:var(--brand-blue-hover);filter:none}
.project-cta:focus-visible{outline-color:var(--brand-orange)}
.project-folder-1 .project-date{color:#bdd8f5}
.project-folder-1 .project-description{color:#c6d8e9}
.project-folder-1 .project-cta{background:#f5f8fc;border-color:#f5f8fc;color:var(--brand-blue)}
.project-folder-1 .project-cta:hover{background:#dcecff;border-color:#dcecff}
/* Teal is limited to the online service marker. */
.project-folder-2 .project-date span{background:var(--brand-teal)}

/* One red accent unifies the catalogue headline, numbering and hover rule. */
#types .type-card{background:var(--brand-surface);border-color:var(--brand-line);box-shadow:0 6px 18px #173b6006}
#types .type-card strong{color:var(--brand-navy);font-weight:600}
#types .type-card small{color:var(--brand-muted);font-weight:400}
#types .type-card .t-num{color:var(--brand-red)}
#types .type-card::before{background:var(--brand-red)}
#types .type-card:hover{background:var(--brand-surface-hover);border-color:var(--brand-red);box-shadow:0 12px 28px #1764c012}

/* Cool blue case cards and filters; orange identifies featured work. */
.cases-page .cases-head{border-bottom-color:var(--brand-line)}
.cases-page .activity-card{background:var(--brand-surface);border-color:var(--brand-line);box-shadow:0 10px 26px #173b600b}
.cases-page .activity-card:hover{border-color:var(--brand-blue);box-shadow:0 18px 36px #1764c014}
.cases-page .ac-tags span{background:#fff;border-color:var(--brand-line);color:var(--brand-muted)}
.cases-page .ac-featured{background:var(--brand-orange-surface);color:var(--brand-orange-ink)}
.cases-page .activity-filter,.cases-page .pager-btn{background:var(--brand-surface);color:var(--brand-navy);border-color:var(--brand-line)}
.cases-page .activity-filter.active,.cases-page .pager-btn.active{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff;box-shadow:0 4px 12px #1764c019}
.cases-page .activity-filter:hover:not(.active),.cases-page .pager-btn:hover:not(.active):not(:disabled){background:var(--brand-surface-hover);color:var(--brand-blue);border-color:var(--brand-blue)}
.cases-page .ac-link{background:#fff;color:var(--brand-blue);border-color:var(--brand-blue)}
.cases-page .ac-link:hover{background:var(--brand-blue);color:#fff}
.cases-page .activity-filter:focus-visible,.cases-page .pager-btn:focus-visible,.cases-page .ac-link:focus-visible{outline-color:var(--brand-orange)}

/* Channel colors distinguish contact actions above the unchanged star field. */
#finale .statement-line,#finale .statement-line.accent{color:#fff}
#finale .btn-contact.wx{background:#167348;border-color:#5db58c;color:#fff}
#finale .btn-contact.wx .ct small{color:#e0f3e9}
#finale .btn-contact.wx .ct strong{color:#fff}
#finale .btn-contact.wx .ci{background:#ffffff0d;border-color:#ffffff40;color:#fff}
#finale .btn-contact.wx:hover{background:#105c39;border-color:#89cfae}
#finale .btn-contact.tel{background:#e7f0fa;border-color:#9ec5ed;color:var(--brand-navy)}
#finale .btn-contact.tel .ci{background:#d6e6f7;color:var(--brand-blue);border-color:#a8c9e9}
#finale .btn-contact.tel .ct strong{color:var(--brand-navy)}
#finale .btn-contact.tel .ct small{color:#436585}
#finale .btn-contact.tel:hover{background:#d6e7fa;border-color:#78afe4}
#finale .btn-contact:hover{box-shadow:0 12px 26px #07132140}
#finale .btn-contact:focus-visible{outline-color:#c3e1ff}
#finale .btn-contact.wx:focus-visible{outline-color:#9de0bb}
#finale .btn-contact .ct small{font-weight:400}
.floating-seal{visibility:hidden;width:56px;height:64px;border-radius:12px;flex-direction:column;gap:3px;border:1px solid #c7d8eb;background:#fff;color:var(--brand-blue);box-shadow:0 5px 18px #173b601c;font-size:12px;line-height:1.3;font-weight:600;cursor:pointer}
.floating-seal.show{visibility:visible}
.floating-seal::before{display:none}
.floating-seal svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.floating-seal:hover{background:var(--brand-blue);border-color:var(--brand-blue);color:#fff;transform:translateY(-2px);box-shadow:0 7px 20px #173b6026}
.floating-seal:focus-visible{outline:2px solid var(--brand-orange);outline-offset:4px}
@media(max-width:780px){.floating-seal{width:48px;height:56px;right:16px;bottom:max(18px,env(safe-area-inset-bottom));font-size:11px}.floating-seal svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.floating-seal{transition:none}.floating-seal:hover{transform:none}}
