/* V5.4 SOUND GOOD / FINISH LAYER — homepage only.
   Approved source aesthetics preserved; do not use stock/fake documentary imagery.
   Interaction is opt-out and respects prefers-reduced-motion / motion-off. */
:root{--az-finish-champagne:#d9c499;--az-finish-copper:#b98c5e;--az-finish-cold:#85a7a8}
.ug-sounds-good{font:400 clamp(43px,4.8vw,78px)/.98 'Gruppo','Oxanium',sans-serif;
  text-transform:uppercase;letter-spacing:.035em;position:relative;display:inline-block;
  margin:0;isolation:isolate;text-shadow:0 1px 2px rgba(0,0,0,.12)}
.ug-sounds-good em{font-style:normal;color:var(--az-finish-champagne);position:relative;
  text-shadow:0 0 18px rgba(217,196,153,.09)}
.ug-sounds-good em::after{content:'';position:absolute;left:0;bottom:-.04em;width:100%;height:1px;
  background:linear-gradient(90deg,transparent,var(--az-finish-champagne) 40%,transparent);opacity:.65;
  transform-origin:left center;animation:az-fin-line 5.5s ease-in-out infinite}
.ug-cursor-stroke{display:inline-block;width:.05em;height:.6em;margin-left:.13em;vertical-align:.04em;
  background:var(--az-finish-champagne);opacity:.46;animation:az-fin-breathe 3.8s ease-in-out infinite}
.ug-intro{max-width:545px;line-height:1.7}
.ug-image-plate img{will-change:auto}
.ug-image-plate{transition:filter .7s ease;filter:grayscale(.12) contrast(1.07) saturate(.88)}
.ug-hero:focus-within .ug-image-plate{filter:grayscale(.06) contrast(1.09) saturate(.92)}
.ug-link-primary,.ug-link-secondary,.ug-route{transition-timing-function:cubic-bezier(.21,.83,.24,1)}
.ug-route{position:relative;isolation:isolate}
.ug-route::before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,rgba(185,140,94,.07),transparent 80%);
 transform:scaleX(0);transform-origin:left center;transition:transform .65s cubic-bezier(.21,.83,.24,1);z-index:-1}
.ug-route:hover::before,.ug-route:focus-visible::before{transform:scaleX(1)}
.ug-hero-scratch path:first-child{stroke-dasharray:520;stroke-dashoffset:0;animation:az-fin-draw 9s ease-in-out infinite alternate}
.ug-photo-scribble path:first-child{stroke-dasharray:250;stroke-dashoffset:0;animation:az-fin-small-draw 12s ease-in-out infinite alternate}
.ug-image-number span{color:#d9c499}
.az-underground .wordmark-name{letter-spacing:.13em}
/* Subtle '15' gilding in Komplete 15 hero, without changing professional layout. */
@keyframes az-fin-line{0%,100%{transform:scaleX(.3);opacity:.35}50%{transform:scaleX(1);opacity:.75}}
@keyframes az-fin-breathe{0%,100%{opacity:.18}55%{opacity:.65}}
@keyframes az-fin-draw{0%{stroke-dashoffset:460}32%,100%{stroke-dashoffset:0}}
@keyframes az-fin-small-draw{0%,12%{stroke-dashoffset:245}60%,100%{stroke-dashoffset:0}}
/* A slight local movement response, not automatic/indefinite pointer tracking. */
.ug-sounds-good{transform:translateY(var(--az-finish-shift,0px));transition:transform .16s linear}
@media(max-width:700px){.ug-sounds-good{font-size:clamp(37px,8.5vw,60px);line-height:1.03;letter-spacing:.012em}}
@media(max-width:390px){.ug-sounds-good{font-size:clamp(32px,9.2vw,41px)}}
@media(prefers-reduced-motion:reduce){.ug-sounds-good,.ug-sounds-good em::after,.ug-cursor-stroke,
 .ug-hero-scratch path:first-child,.ug-photo-scribble path:first-child{animation:none!important;transition:none!important}}
html.motion-off .ug-sounds-good, html.motion-off .ug-sounds-good em::after,
html.motion-off .ug-cursor-stroke, html.motion-off .ug-hero-scratch path:first-child,
html.motion-off .ug-photo-scribble path:first-child{animation:none!important;transition:none!important}
