/* Bridge: WordPress core's own full-bleed handling for "alignfull" blocks
   —  `.has-global-padding > .alignfull { margin-left/-right: calc(var(...) * -1); }`
   — is unconditionally injected UNLAYERED, and assumes the block keeps its
   default `width: auto` so the negative margins alone stretch it to the
   full viewport width. tulja/home-hero's outer wrapper also carries the
   reference design's own `w-full` utility class (`width: 100%`, declared
   inside `@layer utilities`), which fixes its width to 100% of the padded
   content box *before* the negative margins are applied — so the box ends
   up positioned correctly on the left but falls short on the right by
   exactly the page's left+right global padding (48px at the default
   24px/24px). This restates the width for that exact combination,
   unlayered, so it wins regardless of utilities' higher layer priority. */
.has-global-padding > .alignfull.w-full {
  width: calc(100% + var(--wp--style--root--padding-left, 0px) + var(--wp--style--root--padding-right, 0px));
}

/* Bridge: WordPress core also unconditionally injects an UNLAYERED
   `:where(.wp-site-blocks :focus) { outline: 2px solid; }` accessibility
   default, which draws a visible outline box around any link left sitting
   focused after a mouse click (not just real keyboard/Tab navigation).
   Restating it here, unlayered, keeps the ring for `:focus-visible`
   (keyboard users still get it, which is the accessibility requirement)
   while suppressing it for a plain `:focus` from a mouse click. */
a:focus:not(:focus-visible) {
  outline: none;
}
