/* Shared white strokes, matching the service description panels. */
body.pw-case-design main > :is(.hero,.page-hero,.pw-service-hero,.artist-intro) {
  position:relative; isolation:isolate;
}
body.pw-case-design main > :is(.hero,.page-hero,.pw-service-hero,.artist-intro)::after {
  content:"" !important; display:block !important; position:absolute !important;
  top:0 !important; bottom:0 !important; left:50% !important; right:auto !important;
  width:100vw !important; height:auto !important; box-sizing:border-box;
  transform:translateX(-50%) !important; rotate:0deg !important;
  border:0 !important; border-top:2px solid #fff !important; border-bottom:2px solid #fff !important;
  border-radius:0 !important; background:none !important;
  box-shadow:var(--pw-case-frame) !important;
  opacity:1 !important; clip-path:none !important; mask:none !important; -webkit-mask:none !important;
  filter:none !important; pointer-events:none !important; z-index:5;
}
/* Desktop and laptop: one navigation row; only the contact link has a frame. */
@media(min-width:851px) {
  body.pw-case-design > header.header {
    display:flex !important; flex-wrap:nowrap !important; align-items:center;
    justify-content:space-between; gap:clamp(16px,2vw,28px);
    min-height:104px; padding:14px clamp(24px,4vw,76px); box-sizing:border-box;
  }
  body.pw-case-design > header.header .logo { flex:0 0 auto; }
  body.pw-case-design > header.header .brand-wordmark { width:clamp(205px,23vw,320px); }
  body.pw-case-design > header.header nav {
    display:flex !important; position:static !important; flex-direction:row !important;
    align-items:center !important; flex-wrap:nowrap; gap:clamp(14px,1.8vw,30px);
    width:auto !important; max-width:none; min-width:0; margin:0 !important; padding:0 !important;
    background:none !important; border:0 !important; box-shadow:none !important;
    border-radius:0 !important; font-size:13px;
  }
  body.pw-case-design > header.header nav::before,
  body.pw-case-design > header.header nav::after { content:none !important; display:none !important; }
  body.pw-case-design > header.header nav > a { flex:0 0 auto; white-space:nowrap; }
  body.pw-case-design > header.header nav .nav-cta {
    display:inline-flex !important; align-items:center; align-self:center; gap:14px;
    margin:0 !important; padding:9px 12px !important; white-space:nowrap;
  }
  body.pw-case-design > header.header > .pw-language {
    flex:0 0 auto; width:auto; margin:0 !important;
  }
  body.pw-case-design > header.header .menu-toggle { display:none !important; }
}
/* A consistent dropdown below the desktop breakpoint, including tablets. */
@media(max-width:850px) {
  body.pw-case-design > header.header {
    display:grid !important; grid-template-columns:minmax(0,1fr) auto;
    gap:3px 12px; padding:11px 24px 12px; align-items:center; z-index:40;
  }
  body.pw-case-design > header.header .logo { min-width:0; width:100%; }
  body.pw-case-design > header.header .brand-wordmark { width:250px; max-width:100%; }
  body.pw-case-design > header.header .menu-toggle {
    display:flex !important; grid-column:2; grid-row:1; justify-self:end; padding:10px 0;
  }
  body.pw-case-design > header.header > .pw-language {
    grid-column:1/-1; grid-row:2; justify-self:end; width:auto !important; margin:0 !important;
  }
  body.pw-case-design > header.header nav,
  body.pw-case-design > header.header nav.open {
    position:absolute !important; top:calc(100% + 8px) !important; left:14px !important; right:14px !important;
    display:none; flex-direction:column !important; align-items:stretch !important; gap:3px !important;
    width:auto !important; max-width:480px; margin:0 auto !important; padding:12px !important;
    background:#173451 !important; background-image:none !important; opacity:1 !important;
    border:1px solid #f5e8cf !important; border-radius:0 !important;
    box-shadow:0 14px 32px #091a2b72 !important; isolation:isolate; z-index:60 !important;
    mask:none !important; -webkit-mask:none !important; clip-path:none !important;
  }
  body.pw-case-design > header.header nav.open { display:flex !important; }
  body.pw-case-design > header.header nav::before,
  body.pw-case-design > header.header nav::after { content:none !important; display:none !important; }
  body.pw-case-design > header.header nav a:not(.nav-cta) {
    display:flex !important; align-items:center; min-height:42px; padding:10px 12px !important;
    color:#fff !important; background:transparent !important; border:0 !important;
    font-size:15px; line-height:1.3; text-shadow:none !important;
  }
  body.pw-case-design > header.header nav .nav-cta {
    display:flex !important; align-items:center; align-self:stretch; justify-content:space-between;
    min-height:48px; margin:5px 0 0 !important; padding:8px 10px 8px 14px !important;
    color:#192e49 !important; background:#f3e8d7 !important; background-image:none !important;
    border:1px solid #fff !important; box-shadow:none !important; text-shadow:none !important;
  }
}
/* The home hero now owns the shared boundary with the following section. */
body.pw-case-design.page-home main .hero + .manifesto::after { content:none !important; display:none !important; }
