/* Shared mobile navigation and workshop layout, September 28, 2026. */
.nav-mobile-cta { display:none !important; }
.pv-scroll-hint { color:#244d71; font-size:15px; line-height:1.5; margin:0 0 12px; }
.pv-scroll-hint[hidden] { display:none !important; }
.pv-scroll-hint span { margin-right:6px; }

@media screen and (max-width:899px) {
  header.site { position:sticky; top:0; z-index:1000; overflow:visible; overflow-anchor:none; }
  header.site .brand-masthead {
    box-sizing:border-box; width:calc(100% - 32px); min-height:76px;
    margin:0 auto; padding:12px 56px 12px 0; gap:12px;
    display:flex; align-items:center; justify-content:space-between;
    border:0;
  }
  header.site .brand-masthead .logo-block { flex:0 1 48%; min-width:0; }
  header.site .brand-masthead .logo,
  header.site .brand-masthead .logo span { font-size:23px; white-space:nowrap; }
  header.site .brand-masthead .logo-tag { font-size:10px; line-height:1.3; letter-spacing:0; }
  header.site .header-belief {
    flex:1 1 0; min-width:0; max-width:190px; margin:0;
    font-size:12px; line-height:1.3; text-align:right;
  }
  header.site .header-belief a { display:block; }
  header.site .nav-row.nav-row-menu { display:contents; }
  header.site .nav-row-menu > .nav-cta { display:none !important; }
  header.site .nav-row-menu .nav-drawer {
    display:block; position:static; width:0; height:0; min-height:0;
    margin:0; padding:0; border:0; flex:none;
  }
  header.site .nav-drawer > summary.nav-burger {
    position:absolute; top:50%; right:16px; transform:translateY(-50%);
    box-sizing:border-box; display:flex; align-items:center; justify-content:center;
    width:44px; height:44px; min-height:44px; margin:0; padding:10px;
    gap:0; border:1px solid #17344c; border-radius:6px;
    color:#fff; background:#0b1322; list-style:none;
  }
  header.site .nav-drawer > summary.nav-burger::marker,
  header.site .nav-drawer > summary.nav-burger::after { content:none; }
  header.site .nav-drawer > summary.nav-burger::-webkit-details-marker { display:none; }
  header.site .nav-burger .burger-label { display:none; }
  header.site .nav-burger .burger-bars { display:flex; flex-direction:column; gap:5px; width:22px; }
  header.site .nav-burger .burger-bars i { display:block; width:22px; height:2px; background:#fff; opacity:1; }
  header.site .nav-drawer[open] > summary.nav-burger { border-color:#d6ab43; box-shadow:0 0 0 2px #d6ab43; }
  header.site .nav-drawer[open] .burger-bars i:nth-child(2) { opacity:1; }
  header.site .nav-burger:focus-visible { outline:3px solid #164b88; outline-offset:4px; }
  header.site .nav-drawer > nav.primary {
    position:absolute; top:100%; left:0; right:0; width:auto;
    display:flex; flex-direction:column; align-items:stretch;
    margin:0; padding:12px 16px 18px; gap:0; box-sizing:border-box;
    max-height:calc(100vh - var(--site-header-height, 80px) - 8px);
    max-height:calc(100svh - var(--site-header-height, 80px) - 8px);
    overflow-y:auto; overscroll-behavior-y:contain; overflow-anchor:none;
    background:#fff; border:1px solid #c9d4df;
    box-shadow:0 12px 24px #0b132229;
  }
  header.site .nav-drawer:not([open]) > nav.primary { display:none; }
  header.site nav.primary .more { position:static; }
  header.site nav.primary .more > summary { min-height:48px; }
  header.site nav.primary .more .mega-panel {
    position:static; transform:none; width:auto; min-width:0;
    max-height:none; overflow:visible; margin:0 0 12px; padding:12px;
    border:1px solid #dce4eb; background:#f6f9fc; box-shadow:none;
  }
  header.site .nav-drawer > nav.primary > .nav-mobile-cta {
    display:flex !important; align-items:center; justify-content:center;
    margin:12px 0 0; padding:12px 16px; min-height:48px;
    background:#f2c44e; color:#0b1322; border:1px solid #c79a36;
    border-radius:6px; font-weight:700; line-height:1.4; text-align:center;
  }
}
@media screen and (max-width:899px) {
  .pv-site .pv-facilitator { grid-template-columns:minmax(0,1fr); }
  .pv-site .pv-facilitator .pv-art {
    width:100%; max-width:420px; justify-self:center; margin-inline:auto;
  }
  .pv-site .pv-facilitator .pv-art img { display:block; width:100%; height:auto; object-position:center top; }
}
@media screen and (max-width:359px) {
  header.site .brand-masthead { gap:8px; padding-right:52px; }
  header.site .brand-masthead .logo,
  header.site .brand-masthead .logo span { font-size:20px; }
  header.site .header-belief { font-size:11px; }
}
@media print { .pv-scroll-hint { display:none; } }
