/* AVIV EBBO / unified royal-blue interaction system */
:root{
  --aviv-royal-blue:#0033FF;
  --aviv-button-black:#161616;
  --aviv-action-pink:#161616!important;
  --aviv-action-pink-dark:#0033FF!important;
  --aviv-lime:#161616!important;
}
/* Wordmark: same family and tracking ratio as the centered name, smaller scale */
body .global-header .global-brand{
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:15px!important;
  font-weight:500!important;
  letter-spacing:-.057em!important;
  line-height:1.1!important;
  text-transform:uppercase!important;
  color:var(--aviv-button-black)!important;
  text-decoration:none!important;
  white-space:nowrap;
}
body .global-header .global-brand:hover,
body .global-header .global-brand:focus-visible{
  color:var(--aviv-royal-blue)!important;
}
/* Footer name uses the same visual identity, without changing footer layout */
body .global-footer .global-footer-top > span:first-child{
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:500!important;
  letter-spacing:-.04em!important;
}
/* All accessible navigation actions: black until hovered or focused */
body .global-header :is(a,button):not(.global-brand){
  color:var(--aviv-button-black)!important;
  transition:color .18s ease!important;
}
body .global-header :is(a,button):not(.global-brand):hover,
body .global-header :is(a,button):not(.global-brand):focus-visible{
  color:var(--aviv-royal-blue)!important;
}
body .global-header .nav-link.is-active{
  color:var(--aviv-button-black)!important;
  text-decoration-color:var(--aviv-button-black)!important;
}
body .global-header .nav-link.is-active:hover,
body .global-header .nav-link.is-active:focus-visible{
  color:var(--aviv-royal-blue)!important;
  text-decoration-color:var(--aviv-royal-blue)!important;
}
/* The center name stays readable on the protected ivory canvas. */
body.aviv-redesign .aviv-hero-v2 .aviv-identity{
  mix-blend-mode:normal!important;
}
body.aviv-redesign .aviv-hero-v2 .aviv-identity h1{
  color:var(--aviv-button-black)!important;
}
body.aviv-redesign .aviv-hero-v2 .aviv-identity p{
  color:var(--aviv-button-black)!important;
}
/* Interactive disciplines below the name */
body.aviv-redesign .aviv-hero-v2 .aviv-identity .aviv-live-discipline,
body.aviv-redesign .aviv-hero-v2 .aviv-identity .aviv-live-discipline:visited{
  color:var(--aviv-button-black)!important;
  background:transparent!important;
  border-color:transparent!important;
  transition:color .18s ease!important;
}
body.aviv-redesign .aviv-hero-v2 .aviv-identity .aviv-live-discipline:hover,
body.aviv-redesign .aviv-hero-v2 .aviv-identity .aviv-live-discipline:focus-visible{
  color:var(--aviv-royal-blue)!important;
}
body.aviv-redesign .aviv-hero-v2 .aviv-live-discipline::after{
  background:var(--aviv-royal-blue)!important;
}
/* About and Work actions: consistent black/royal treatment */
body #about-preview .aviv-about-more,
body #work :is(a,button),
body .aviv-artwork-preview :is(a,button){
  color:var(--aviv-button-black)!important;
  border-bottom-color:var(--aviv-button-black)!important;
  transition:color .18s ease,border-color .18s ease,background-color .18s ease!important;
}
body #about-preview .aviv-about-more:hover,
body #about-preview .aviv-about-more:focus-visible,
body #work :is(a,button):hover,
body #work :is(a,button):focus-visible,
body .aviv-artwork-preview :is(a,button):hover,
body .aviv-artwork-preview :is(a,button):focus-visible{
  color:var(--aviv-royal-blue)!important;
  border-bottom-color:var(--aviv-royal-blue)!important;
}
/* No pink or lime background for selected filters. Black outlined by default. */
body #work .aviv-work-filters button,
body #work .aviv-work-filters button[aria-pressed="true"]{
  background:transparent!important;
  color:var(--aviv-button-black)!important;
  border:1px solid transparent!important;
  border-bottom:1px solid transparent!important;
  border-radius:999px!important;
  box-shadow:none!important;
  transform:none;
}
body #work .aviv-work-filters button[aria-pressed="true"]{
  border-color:var(--aviv-button-black)!important;
}
body #work .aviv-work-filters button:hover,
body #work .aviv-work-filters button:focus-visible{
  color:var(--aviv-royal-blue)!important;
  border-color:var(--aviv-royal-blue)!important;
  background:transparent!important;
  box-shadow:none!important;
}
body #work .project-open .project-title,
body #work .wrangler-case-open strong{
  color:var(--aviv-button-black)!important;
}
body #work .project-open:hover .project-title,
body #work .project-open:focus-visible .project-title,
body #work .wrangler-case-open:hover strong,
body #work .wrangler-case-open:focus-visible strong{
  color:var(--aviv-royal-blue)!important;
}
/* Image cards retain black hairlines and receive royal-blue hover only */
body .aviv-hero-v2 .aviv-piece{
  border-color:var(--aviv-button-black)!important;
}
body .aviv-hero-v2 .aviv-piece:hover,
body .aviv-hero-v2 .aviv-piece:focus-visible{
  border-color:var(--aviv-royal-blue)!important;
}
/* Existing dark footer is left dark; off-white idle links preserve contrast */
body .global-footer :is(a,button){
  color:#f7f8f1!important;
  transition:color .18s ease!important;
}
body .global-footer :is(a,button):hover,
body .global-footer :is(a,button):focus-visible{
  color:var(--aviv-royal-blue)!important;
}
body .global-footer .global-footer-arrow{
  color:#f7f8f1!important;
}
body .global-footer .global-footer-arrow:hover,
body .global-footer .global-footer-arrow:focus-visible{
  color:var(--aviv-royal-blue)!important;
}
/* One focus treatment across navigation and controls */
body :is(a,button):focus-visible{
  outline:2px solid var(--aviv-royal-blue)!important;
  outline-offset:4px!important;
}
@media(prefers-reduced-motion:reduce){
  body :is(a,button){transition:none!important}
}


/* FINAL: explicit state override, beating legacy pink/lime selectors */
body.aviv-flow-clean .global-header .nav-link,
body.aviv-flow-clean .global-header .nav-link.is-active,
body.aviv-flow-clean .global-header .nav-contact,
body.aviv-flow-clean .global-header .global-brand{
  color:#161616!important;
}
body.aviv-flow-clean .global-header .nav-link:hover,
body.aviv-flow-clean .global-header .nav-link:focus-visible,
body.aviv-flow-clean .global-header .nav-link.is-active:hover,
body.aviv-flow-clean .global-header .nav-link.is-active:focus-visible,
body.aviv-flow-clean .global-header .nav-contact:hover,
body.aviv-flow-clean .global-header .nav-contact:focus-visible,
body.aviv-flow-clean .global-header .global-brand:hover,
body.aviv-flow-clean .global-header .global-brand:focus-visible{
  color:#0033FF!important;
}
body.aviv-flow-clean #about-preview a.aviv-about-more,
body.aviv-flow-clean #work a.inline-arrow{
  color:#161616!important;
  border-bottom-color:#161616!important;
  background:transparent!important;
}
body.aviv-flow-clean #about-preview a.aviv-about-more:hover,
body.aviv-flow-clean #about-preview a.aviv-about-more:focus-visible,
body.aviv-flow-clean #work a.inline-arrow:hover,
body.aviv-flow-clean #work a.inline-arrow:focus-visible{
  color:#0033FF!important;
  border-bottom-color:#0033FF!important;
  background:transparent!important;
}
body.aviv-flow-clean #work .aviv-work-filters button,
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]{
  color:#161616!important;
  background:transparent!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
}
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]{
  border-color:#161616!important;
}
body.aviv-flow-clean #work .aviv-work-filters button:hover,
body.aviv-flow-clean #work .aviv-work-filters button:focus-visible,
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]:hover,
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]:focus-visible{
  color:#0033FF!important;
  border-color:#0033FF!important;
  background:transparent!important;
}
body.aviv-flow-clean #work .project-open:hover .project-title,
body.aviv-flow-clean #work .project-open:focus-visible .project-title,
body.aviv-flow-clean #work .wrangler-case-open:hover strong,
body.aviv-flow-clean #work .wrangler-case-open:focus-visible strong{
  color:#0033FF!important;
}
body.aviv-flow-clean #work .aviv-panel-close,
body.aviv-flow-clean .aviv-artwork-preview-close{
  color:#161616!important;
  border-bottom-color:#161616!important;
}
body.aviv-flow-clean #work .aviv-panel-close:hover,
body.aviv-flow-clean #work .aviv-panel-close:focus-visible,
body.aviv-flow-clean .aviv-artwork-preview-close:hover,
body.aviv-flow-clean .aviv-artwork-preview-close:focus-visible{
  color:#0033FF!important;
  border-bottom-color:#0033FF!important;
  background:transparent!important;
}
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-identity .aviv-live-discipline{
  color:#161616!important;
}
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-identity .aviv-live-discipline:hover,
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-identity .aviv-live-discipline:focus-visible{
  color:#0033FF!important;
}
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-live-discipline::after{
  background:#0033FF!important;
}
body.aviv-flow-clean .global-footer a,
body.aviv-flow-clean .global-footer button{
  color:#f7f8f1!important;
}
body.aviv-flow-clean .global-footer a:hover,
body.aviv-flow-clean .global-footer a:focus-visible,
body.aviv-flow-clean .global-footer button:hover,
body.aviv-flow-clean .global-footer button:focus-visible{
  color:#0033FF!important;
}
/* END FINAL OVERRIDES */


/* Electric royal hover: bold, saturated and unmistakably blue */
body.aviv-flow-clean #work .aviv-work-filters button:hover,
body.aviv-flow-clean #work .aviv-work-filters button:focus-visible,
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]:hover,
body.aviv-flow-clean #work .aviv-work-filters button[aria-pressed="true"]:focus-visible{
  background:#0033FF!important;
  border-color:#0033FF!important;
  color:#fff!important;
  box-shadow:0 0 0 1px #0033FF,0 0 13px rgba(0,51,255,.25)!important;
}
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-identity .aviv-live-discipline:hover,
body.aviv-redesign.aviv-flow-clean .aviv-hero-v2 .aviv-identity .aviv-live-discipline:focus-visible,
body.aviv-flow-clean .global-header :is(a,button):hover,
body.aviv-flow-clean .global-header :is(a,button):focus-visible{
  color:#0033FF!important;
  text-shadow:0 0 9px rgba(0,51,255,.18);
}
body.aviv-flow-clean #about-preview .aviv-about-more:hover,
body.aviv-flow-clean #about-preview .aviv-about-more:focus-visible{
  color:#0033FF!important;
  border-bottom-color:#0033FF!important;
  text-shadow:0 0 9px rgba(0,51,255,.14);
}
