html body main:is(#main-content,#top,main):is(#main-content,#top,main) .inner-layout-hero>.page-hero-badge{
 display:table!important;position:static!important;width:auto!important;max-width:100%!important;box-sizing:border-box;
 margin:0 0 36px!important;padding:8px 12px!important;border-radius:12px;background:#FF933C;color:#201E1C;
 font:900 16px/18px Helixa,sans-serif;letter-spacing:.64px;text-transform:uppercase;text-align:center!important;
}
@supports(corner-shape:squircle){html body main .page-hero-badge{corner-shape:squircle;}}
@media(max-width:1100px), (hover:none) and (pointer:coarse){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main) .inner-layout-hero>.page-hero-badge{margin:0 auto 32px!important;font-size:14px;letter-spacing:.56px;border-radius:10px;}
}
@media(max-width:599px){html body main:is(#main-content,#top,main):is(#main-content,#top,main) .inner-layout-hero>.page-hero-badge{margin-bottom:28px!important;font-size:12px;letter-spacing:.48px;}}
@media(prefers-reduced-motion:no-preference){
 html body:has(>.inner-page-curtain[data-images-ready="false"]) .page-hero-badge{opacity:0;}
 html body:has(>.inner-page-curtain[data-images-ready="true"]) .page-hero-badge{animation:page-badge-enter 480ms cubic-bezier(.22,1,.36,1) both;}
}
@keyframes page-badge-enter{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}


/* Work cards remain left aligned independently of the centered hero. */
html body.work-page main#top #work.work-showcase .projects,
html body.work-page main#top #work.work-showcase .projects :is(.work-caption,.project-capabilities){text-align:left!important;}

@media(max-width:599px){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main) :is(.page-hero-badge,.case-hero-badge){font-size:12px!important;line-height:18px!important;letter-spacing:.48px!important;}
}

/* Tablet Work gallery: equal outer gutters and full-width cards. */
@media(min-width:600px) and (max-width:1100px){
 html body.work-page main#top #work.work-showcase{width:calc(100% - 96px)!important;max-width:none!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box!important;}
 html body.work-page main#top #work.work-showcase>.projects{width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important;box-sizing:border-box!important;}
 html body.work-page main#top #work.work-showcase .work-item{width:100%!important;max-width:none!important;margin-inline:0!important;justify-self:stretch!important;}
 html body.work-page main#top #work.work-showcase .work-item>.project{width:100%!important;max-width:none!important;margin-inline:0!important;box-sizing:border-box!important;}
}

/* Labels must never stretch to fill a grid row or flex column. */
html body main:is(#main-content,#top,main):is(#main-content,#top,main) .inner-layout-hero>.page-hero-badge{width:fit-content!important;justify-self:start!important;align-self:flex-start!important;flex:none!important;}
@media(max-width:1100px), (hover:none) and (pointer:coarse){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main) .inner-layout-hero>.page-hero-badge{align-self:center!important;justify-self:center!important;}
}

/* Desktop badge-to-title gap. Touch layouts retain their existing spacing. */
@media(min-width:1101px) and (hover:hover) and (pointer:fine){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main):is(#main-content,#top,main) :is(.case-hero,.inner-layout-hero)>:is(.page-hero-badge,.case-hero-badge){margin-bottom:28px!important;}
}

/* Final badge sizing across page and case-study heroes. */
@media(min-width:600px){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main):is(#main-content,#top,main) :is(.page-hero-badge,.case-hero-badge){font-size:14px!important;line-height:18px!important;letter-spacing:.56px!important;}
}
@media(max-width:599px){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main):is(#main-content,#top,main) :is(.page-hero-badge,.case-hero-badge){padding:6px 10px!important;}
}

/* Extra breathing room between case badges and titles on large desktops. */
@media(min-width:1600px) and (hover:hover) and (pointer:fine){
 html body main:is(#main-content,#top,main):is(#main-content,#top,main):is(#main-content,#top,main) .case-hero>.case-hero-badge{margin-bottom:44px!important;}
}
