/* meet-agents.css (CHG-0028, v5.68): "Meet the agents" home band, persona profile card (dialog), the paged Agents
   home. Existing tokens only (css/style.css :root) + the .dept-* accents. iPhone safe: no backdrop-filter, no large
   blur shadows, solid dialog backgrounds, 100dvh + safe-area on full-screen surfaces, reduced motion respected.
   The band's above-the-fold box rules are inlined in index.html (#mta-critical); this file is loaded without
   blocking on the home page and normally on the directory pages. */
.dept-marketing{--ag-accent:#C4501A;--ag-accent-ink:#9E3F12}
.dept-sales{--ag-accent:#15803D;--ag-accent-ink:#11652F}
.dept-finance{--ag-accent:#0A4563;--ag-accent-ink:#0A4563}
.dept-operations{--ag-accent:#3651DA;--ag-accent-ink:#3651DA}
.dept-leadership-strategy{--ag-accent:#1C2D8A;--ag-accent-ink:#1C2D8A}
.dept-web-digital{--ag-accent:#2D55E6;--ag-accent-ink:#2D55E6}
.dept-legal-compliance{--ag-accent:#B2153D;--ag-accent-ink:#B2153D}
.dept-research-analytics{--ag-accent:#0D5A7A;--ag-accent-ink:#0D5A7A}
.dept-learning-development{--ag-accent:#5B4FD6;--ag-accent-ink:#5B4FD6}
.dept-product-engineering{--ag-accent:#0F766E;--ag-accent-ink:#0F766E}
.dept-customer-support{--ag-accent:#BE3A34;--ag-accent-ink:#A8322D}

/* ---------- MEET THE AGENTS band (home) ---------- */
.mta .btn-outline{background:#fff;color:var(--primary);border-color:rgba(51,97,255,.35)}
.mta-pause{display:grid;place-items:center;border:1px solid rgba(51,97,255,.3);border-radius:50%;background:#fff;color:var(--primary);cursor:pointer;padding:0}
.mta-pause[hidden]{display:none}
.marquee.is-live{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 48px,#000 calc(100% - 48px),transparent 100%)}
.marquee.is-live .marquee-track{animation:mta-scroll var(--mta-dur,86s) linear infinite;will-change:transform}
.marquee.is-live[data-paused="true"] .marquee-track,.marquee.is-live.is-off .marquee-track,.marquee.is-live:hover .marquee-track,.marquee.is-live:focus-within .marquee-track{animation-play-state:paused}
@keyframes mta-scroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.marquee-track>li{flex:none}
.face-card{transition:transform .15s ease,border-color .15s ease}
.face-card:hover{transform:translateY(-2px);border-color:var(--ag-accent)}
.face-card:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}
.face-card .nm{margin-top:8px;font:700 .9rem/1.2 var(--font-heading)}
.face-card .jt{display:-webkit-box;margin-top:2px;overflow:hidden;color:var(--grey-300);font-size:.74rem;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.dept-callouts a:hover{border-color:var(--ag-accent,var(--primary))}
.dept-callouts .dot{width:8px;height:8px;border-radius:50%;background:var(--ag-accent)}
.dept-callouts b{color:var(--ag-accent-ink);font-weight:700}
.dept-callouts .mta-all-pill{background:var(--primary);border-color:var(--primary);color:#fff}
.dept-callouts .mta-all-pill b{color:#fff}
.mta-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;color:var(--grey-300);font-size:.82rem}
.mta-foot a{color:var(--primary);font-weight:600;text-decoration:none}
.ai-note{display:inline-flex;align-items:center;gap:.4rem;margin:0}
.ai-badge{display:inline-flex;align-items:center;padding:.3rem .55rem;border-radius:999px;background:#e8edff;color:var(--primary);font:700 .75rem/1 var(--font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;vertical-align:middle}
@media (max-width:640px){
  .dept-callouts{margin-right:-1rem;padding-right:1rem}
  .dept-callouts::-webkit-scrollbar{display:none}
  .marquee.is-live{-webkit-mask-image:none;mask-image:none}
  .mta-foot{flex-direction:column;align-items:flex-start;gap:.35rem}
}

/* shared: initials tile when a face is not ready (same size and box as the photo) */
.mz-initials{display:grid;place-items:center;background:var(--ag-accent,var(--primary))!important;color:#fff;font:700 1.35rem/1 var(--font-heading)}

/* ---------- PERSONA PROFILE CARD (dialog) ---------- */
dialog.pc{width:min(560px,calc(100vw - 32px));max-width:none;margin:auto;max-height:min(88vh,860px);padding:0;overflow:hidden;border:0;border-radius:var(--radius-xl);background:#fff;color:var(--dark);box-shadow:0 10px 30px rgba(10,20,60,.25)}
dialog.pc::backdrop{background:rgba(17,24,39,.72)}
.pc-scroll{max-height:min(88vh,860px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.pc-cover{position:relative;height:96px;background:var(--ag-accent,var(--primary))}
.pc-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.14) 0 30%,transparent 30% 60%,rgba(0,0,0,.08) 60%)}
.pc-close{position:absolute;top:10px;right:10px;z-index:2;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:#fff;color:var(--dark);cursor:pointer}
.pc-close:focus-visible,.pc-nav button:focus-visible,.pc a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.pc-body{padding:0 1.5rem 1.25rem}
.pc-top{position:relative;display:flex;align-items:flex-start;gap:1rem;margin-top:-52px}
.pc-avatar{flex:none;width:112px;height:140px;border:4px solid #fff;border-radius:var(--radius-lg);background:#e8edff;object-fit:cover;object-position:50% 20%}
.pc-avatar.mz-initials{font-size:2.4rem}
.pc-id{min-width:0;padding-top:60px}
.pc-id h2{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;color:var(--dark);font-size:1.5rem;line-height:1.15}
.pc-title{margin-top:.15rem;color:var(--dark);font:600 1rem/1.3 var(--font-heading)}
.pc-meta{margin-top:.2rem;color:var(--grey-300);font-size:.85rem}
.pc-agentof{margin:.8rem 0 0;color:var(--grey-300);font-size:.82rem}
.pc-agentof a{color:var(--primary);font-weight:600}
.pc-hello{margin:1rem 0 0;padding:1rem 1.1rem;border-left:3px solid var(--ag-accent,var(--primary));border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:var(--blue-light);font-size:1rem;line-height:1.55}
.pc h3{margin:1.25rem 0 .5rem;color:var(--grey-300);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.pc p{margin:0}
.pc-exp{margin:0;padding:0;list-style:none}
.pc-exp li{display:flex;gap:.75rem;padding:.45rem 0;border-top:1px solid var(--grey-150);font-size:.92rem}
.pc-exp li:first-child{border-top:0}
.pc-exp .ico{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:6px;background:#eef1f8;color:var(--grey-300)}
.pc-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.pc-chips li{padding:.3rem .65rem;border-radius:999px;background:var(--grey-150);color:var(--dark);font-size:.8rem}
.pc-chips.str li{background:#e8edff;color:#1C2D8A}
.pc-honest{margin-top:1.1rem!important;color:var(--grey-300);font-size:.9rem;font-style:italic}
.pc-preview{margin-top:.9rem!important;padding:.55rem .75rem;border:1px solid #fed7aa;border-radius:var(--radius);background:#fff7ed;color:#9E3F12;font-size:.82rem}
.pc-cta{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;padding:1rem 1.5rem;border-top:1px solid var(--grey-200);background:#fff}
.pc-cta .q{width:100%;font:700 1rem var(--font-heading)}
.pc-cta .btns{display:flex;flex-wrap:wrap;gap:.5rem}
.pc-cta .btn{min-height:44px;font-size:.95rem}
.pc-cta .btn-outline{color:var(--primary);border-color:rgba(51,97,255,.35)}
.pc-nav{display:flex;gap:.35rem}
.pc-nav button{width:40px;height:40px;padding:0;border:1px solid var(--grey-200);border-radius:50%;background:#fff;color:var(--dark);font-size:1.2rem;cursor:pointer}
.pc-disclose{padding:0 1.5rem 1rem;background:#fff;color:var(--grey-300);font-size:.75rem}

/* ---------- AGENTS HOME ---------- */
.ah-hero-grid{grid-template-columns:1.15fr .85fr}
.ah-mosaic{display:grid;grid-template-columns:repeat(4,1fr);align-content:start;gap:10px;aspect-ratio:460/300}
.ah-mosaic img{display:block;width:100%;height:auto;aspect-ratio:4/5;border-radius:var(--radius-lg);background:#3045c8;object-fit:cover}
.ah-mosaic picture:nth-child(even) img{transform:translateY(14px)}
.ah-bar{position:sticky;top:80px;z-index:20;border-bottom:1px solid var(--grey-200);background:#fff}
.ah-bar-row{display:flex;align-items:center;gap:.6rem;padding:.8rem 0 .55rem}
.ah-search{position:relative;flex:1}
.ah-search input{box-sizing:border-box;width:100%;height:46px;padding:0 1rem 0 2.6rem;border:1px solid var(--grey-200);border-radius:var(--radius-lg);background:var(--grey-100);color:var(--dark);font:400 1rem var(--font-body)}
.ah-search input:focus-visible{outline:2px solid var(--primary);outline-offset:1px}
.ah-search svg{position:absolute;top:50%;left:.9rem;transform:translateY(-50%);color:var(--grey-300)}
.ah-filters{display:inline-flex;align-items:center;gap:.45rem;height:46px;padding:0 1rem;border:1px solid var(--grey-200);border-radius:var(--radius-lg);background:#fff;color:var(--dark);font:600 .9rem var(--font-heading);cursor:pointer}
.ah-fn{padding:.05rem .45rem;border-radius:999px;background:var(--primary);color:#fff;font-size:.72rem}
.ah-fn[hidden]{display:none}
.ah-tabs{display:flex;gap:.4rem;min-height:calc(38px + .7rem);padding:0 0 .7rem;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
.ah-tabs::-webkit-scrollbar{display:none}
.ah-tab{display:inline-flex;flex:none;align-items:center;gap:.4rem;height:38px;padding:0 .8rem;border:1px solid var(--grey-200);border-radius:999px;background:#fff;color:var(--dark);font:500 .86rem var(--font-body);text-decoration:none;white-space:nowrap;scroll-snap-align:start}
.ah-tab .dot{width:7px;height:7px;border-radius:50%;background:var(--ag-accent)}
.ah-tab .c{padding:.05rem .45rem;border-radius:999px;background:var(--grey-150);font-size:.72rem}
.ah-tab[aria-selected="true"]{border-color:var(--primary);background:var(--primary);color:#fff}
.ah-tab[aria-selected="true"] .c{background:rgba(255,255,255,.25)}
.ah-tab[aria-selected="true"] .dot{background:#fff}
.ah-tab:focus-visible,.ah-filters:focus-visible,.ac-pc:focus-visible,.ah-pager a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.ah-results{padding:0 0 1rem}
.ah-count{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.25rem 0 .9rem;color:var(--grey-300);font-size:.88rem}
.ah-count b{color:var(--dark)}
.ah-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;margin:0;padding:0;list-style:none}
.ac{position:relative;display:flex;flex-direction:column;box-sizing:border-box;height:100%;padding:1.25rem;border:1px solid rgba(51,97,255,.1);border-radius:var(--radius-xl);background:#fff;box-shadow:var(--shadow-card)}
.ac:hover{box-shadow:0 12px 32px rgba(28,45,138,.12)}
.ac:focus-within{border-color:var(--primary)}
.ac-top{display:flex;align-items:center;gap:.85rem}
.ac-face{flex:none;box-sizing:border-box;width:60px;height:60px;border:2px solid #fff;border-radius:50%;outline:2px solid var(--ag-accent);background:#e8edff;object-fit:cover;object-position:50% 18%}
.ac-face.mz-initials{font-size:1.1rem}
.ac-id{min-width:0}
.ac-dept{margin:0;color:var(--ag-accent-ink);font:600 .7rem/1.4 var(--font-heading);letter-spacing:.06em;text-transform:uppercase}
.ac h3{margin:0;font-size:1.12rem;line-height:1.25}
.ac h3 a{color:var(--dark);text-decoration:none}
.ac h3 a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.ac h3 a:focus-visible{outline:none}
.ac:focus-within h3 a{text-decoration:underline}
.ac-persona{margin:0;color:var(--grey-300);font-size:.8rem}
.ac-persona .ai-badge{padding:.2rem .45rem;margin-right:.25rem;vertical-align:1px}
.pc-disc{margin-top:.15rem;color:var(--grey-300);font-size:.8125rem}
.pc-tm{margin-top:.75rem;color:var(--grey-300);font-size:.8125rem;line-height:1.5}
.ac-desc{display:-webkit-box;margin:.8rem 0 .9rem;overflow:hidden;color:var(--grey-300);font-size:.92rem;line-height:1.5;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.ac-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:auto}
.ac-meet{color:var(--primary);font:600 .88rem var(--font-heading)}
.ac-pc{position:relative;z-index:2;min-height:36px;padding:.4rem .75rem;border:0;border-radius:999px;background:var(--grey-150);color:var(--dark);font:600 .8rem var(--font-heading);cursor:pointer}
.ac-pc:hover{background:#e8edff}
.pill-preview{padding:.2rem .5rem;border-radius:999px;background:#fff7ed;color:#9E3F12;font:600 .66rem var(--font-heading);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.ah-empty{padding:3rem 0;color:var(--grey-300);text-align:center}
.ah-empty[hidden]{display:none}
.ah-more-wrap{margin:2rem 0 1rem;text-align:center}
.ah-more{color:var(--primary);border-color:rgba(51,97,255,.35);justify-content:center}
.ah-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;margin:0 0 2rem;font-size:.88rem}
.ah-pager[hidden]{display:none}
.ah-pager a{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 .6rem;border:1px solid var(--grey-200);border-radius:var(--radius);color:var(--dark);text-decoration:none}
.ah-pager [aria-current]{border-color:var(--dark);background:var(--dark);color:#fff}
/* filters sheet: popover on desktop, bottom sheet on phone */
dialog.ah-sheet{width:min(440px,calc(100vw - 24px));margin:auto;padding:0;border:0;border-radius:var(--radius-xl);background:#fff;color:var(--dark);box-shadow:0 10px 30px rgba(10,20,60,.25)}
dialog.ah-sheet::backdrop{background:rgba(17,24,39,.6)}
.ah-sheet-h{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--grey-200)}
.ah-sheet-h h2{margin:0;font-size:1.1rem}
.ah-sheet-x{position:static;background:var(--grey-150)}
.ah-sheet-b{max-height:60vh;padding:1rem 1.25rem;overflow:auto;overscroll-behavior:contain}
.ah-sheet-b fieldset{margin:0 0 1.1rem;padding:0;border:0}
.ah-sheet-b legend{margin-bottom:.5rem;color:var(--grey-300);font:700 .78rem var(--font-heading);letter-spacing:.08em;text-transform:uppercase}
.ah-opt{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;margin:0 .35rem .45rem 0;padding:.35rem .75rem;border:1px solid var(--grey-200);border-radius:999px;font-size:.88rem;cursor:pointer}
.ah-opt input{accent-color:var(--primary)}
.ah-sheet-f{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.25rem calc(1rem + env(safe-area-inset-bottom));border-top:1px solid var(--grey-200)}
.ah-sheet-f .btn-outline{color:var(--dark)}

@media (max-width:1024px){
  .ah-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ah-hero-grid{grid-template-columns:1fr}
  .ah-mosaic{display:none}
}
@media (max-width:860px){
  .ah-bar{top:64px}
}
@media (max-width:640px){
  .ah-hero{padding:2rem 0 1.5rem}
  .ah-hero .ag-hero-sub{margin-bottom:1rem}
  .ah-hero-ctas{display:none}
  .ah-stats{margin-top:.25rem}
  .ah-stats .ah-stat-3{display:none}
  .ah-bar-row{padding:.6rem 0 .45rem}
  .ah-filters-lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .ah-grid{grid-template-columns:1fr;gap:.6rem}
  .ac{padding:.85rem;border-radius:var(--radius-lg);box-shadow:none}
  .ac-face{width:52px;height:52px}
  /* v5.76 A1: no Profile card button any more, so the name and role use the full width */
  .ac-desc{margin:.5rem 0 0;font-size:.86rem;-webkit-line-clamp:2}
  .ac-foot{position:absolute;top:.85rem;right:.85rem;margin:0}
  .ac-meet{display:none}
  .ac-pc{min-height:36px;padding:.35rem .65rem;font-size:.76rem}
  dialog.pc{width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
  .pc-scroll{height:100%;max-height:100dvh}
  .pc-body{padding:0 1rem 1rem}
  .pc-avatar{width:96px;height:120px}
  .pc-id{padding-top:56px}
  .pc-id h2{font-size:1.3rem}
  .pc-cta{padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom))}
  .pc-cta .btns{width:100%}
  .pc-cta .btns .btn{flex:1 1 auto;justify-content:center;padding:.85rem .9rem}
  .pc-nav{display:none}
  .pc-disclose{padding:0 1rem calc(1rem + env(safe-area-inset-bottom))}
  dialog.ah-sheet{width:100vw;max-width:100vw;margin:auto 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0}
}
@media (prefers-reduced-motion:reduce){
  .marquee.is-live .marquee-track{animation:none!important;transform:none!important}
  .marquee.is-live{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-mask-image:none;mask-image:none}
  .marquee.is-live .marquee-track>li[aria-hidden]{display:none}
  .face-card{scroll-snap-align:start;transition:none}
  .face-card:hover{transform:none}
  .mta-pause{display:none!important}
}
