/* Signature Experience: existing overlay owner and targets remain intact. */
:root { --signature-ink:#103632; --signature-gold:#cdb380; }
/* Geometry measurement temporarily reads natural flow. It must not nominate
   a lower home card as a browser scroll anchor during history restoration. */
main:has([data-signature-experience]) { overflow-anchor:none; }
/* Base snapshots stay neutral even before the new document's JS reads route
   state. Named photos/header/island retain their own native transitions. */
::view-transition-old(root),::view-transition-new(root) { animation:none!important;mix-blend-mode:normal; }
/* An unpaired outgoing title must never hover over the returned home. Native
   photo/header/island groups still animate; only the orphan text is omitted. */
html[data-motion-route="home"]::view-transition-old(yl-title) { display:none; }
/* Let the shared photograph carry the journey; the page never blacks out. */
html[data-yl-from="home"]:not([data-yl-nav="locale"])::view-transition-old(root),
html[data-yl-from="home"]:not([data-yl-nav="locale"])::view-transition-new(root),
html[data-motion-route="home"]:not([data-yl-nav="locale"])::view-transition-old(root),
html[data-motion-route="home"]:not([data-yl-nav="locale"])::view-transition-new(root),
html[data-motion-route="home"][data-yl-dir="back"]::view-transition-old(root),
html[data-motion-route="home"][data-yl-dir="back"]::view-transition-new(root) { animation:none!important;mix-blend-mode:normal; }
html[data-yl-from="home"]::view-transition-group(*) { animation-timing-function:cubic-bezier(.22,.68,.16,1); }
/* Focus never waits for a stagger, and transforms never move a hit target. */
:where(a,button,input,select,textarea):focus-visible { outline:3px solid #96702d;outline-offset:4px; }
.service-card-link:focus-visible .card-image img { transform:scale(1.025); }
.signature-experience .button:active { transform:none;filter:brightness(.93); }
.signature-experience .button { transition:background-color 160ms,color 160ms,box-shadow 160ms; }
.desktop-nav .nav-sub::before { content:"";position:absolute;inset:-16px 0 auto;height:16px; }
/* Fixed backdrop effects do not hide an interrupted state. */
html[data-motion-route="home"] .yl-veil,
html[data-yl-from="home"] .yl-veil { display:none; }
@media (prefers-reduced-motion:reduce),(forced-colors:active) {
  html::view-transition-group(*) { animation-duration:.001ms!important;animation-delay:0ms!important; }
  .service-card-link:focus-visible .card-image img { transform:none; }
}
/* Keep the navigation stacking context above the header's reading-progress
   ::after (z:1); raising dropdown children alone cannot escape their parent. */
.site-header .header-inner{position:relative;z-index:2}

/* Keep the independent preview action inside its card instead of after a 100%-height link. */
.representative-services > .service-card:has(> .yl-service-preview),
.service-grid > .service-card:has(> .yl-service-preview) {
  display:flex !important;
  flex-direction:column;
  height:auto !important;
  min-height:0;
}
.representative-services > .service-card:has(> .yl-service-preview) > .service-card-link,
.service-grid > .service-card:has(> .yl-service-preview) > .service-card-link {
  height:auto !important;
  min-height:0;
  flex:1 1 auto;
}
.service-card > .yl-service-preview { flex-shrink:0; align-self:flex-start; }

/* Interaction feedback v4: real state only; bounded motion is controller-owned. */
[role="status"][data-yl-feedback]{min-block-size:1.6em;line-height:1.6;overflow-wrap:anywhere}
.yl-feedback-mark{display:inline-grid;place-items:center;inline-size:1.15em;block-size:1.15em;margin-inline-end:.45em;border:1px solid currentColor;border-radius:50%;font-size:.85em;font-weight:750;line-height:1;vertical-align:baseline;flex:none}
.yl-feedback-mark::before{content:attr(data-symbol)}
[data-yl-feedback="loading"]>.yl-feedback-mark,[data-yl-feedback="preparing"]>.yl-feedback-mark,[data-yl-feedback="running"]>.yl-feedback-mark,[data-yl-feedback="streaming"]>.yl-feedback-mark{border-style:dotted}
[data-yl-feedback="error"]>.yl-feedback-mark{border-radius:4px;border-width:2px}
[data-yl-feedback="cancelled"]>.yl-feedback-mark,[data-yl-feedback="empty"]>.yl-feedback-mark{border-style:dashed}
.search-results[aria-busy="true"]{cursor:progress}
@media(forced-colors:active){.yl-feedback-mark{color:CanvasText;border-color:CanvasText;forced-color-adjust:auto}}
/* Interaction feedback v4: end. */
/* Essential text paint v1: keep live copy above decorative sweeps; no text hiding or persistent GPU promotion. */
.site-header.continuum-header .mobile-tools .menu-trigger .menu-label{position:relative;z-index:2;width:auto;height:auto;clip-path:none;overflow:visible;color:inherit;-webkit-text-fill-color:currentColor}
/* Essential dates and registration never depend on a reveal observer. */
html:not([data-yl-motion="off"]) main .yl-anniversary-notice[data-yl-anniversary]{opacity:1;transform:none;translate:none;filter:none;content-visibility:visible;contain-intrinsic-size:none;transition:none}
.yl-anniversary-notice>.yl-anniversary-date,.yl-anniversary-notice>.yl-anniversary-title,.yl-anniversary-notice .yl-anniversary-copy{position:relative;z-index:2;-webkit-text-fill-color:currentColor}
.yl-anniversary-notice .yl-anniversary-register,.yl-anniversary-notice .yl-anniversary-details{position:relative;isolation:isolate}
.yl-anniversary-notice .yl-anniversary-register{background:transparent}
.yl-anniversary-notice .yl-anniversary-register::before{content:"";position:absolute;inset:0;border-radius:inherit;background:#efcf8f;z-index:0;pointer-events:none}
.yl-anniversary-notice .yl-anniversary-register:hover{background:transparent}
.yl-anniversary-notice .yl-anniversary-register:hover::before{background:#ffe0a6}
.yl-anniversary-notice .yl-finish-foil{z-index:1}
.yl-anniversary-notice .yl-anniversary-copy{display:inline-flex;align-items:center;gap:6px;min-width:0}
@media(prefers-reduced-motion:no-preference){.yl-anniversary-notice .yl-anniversary-register::before{transition:background-color .16s ease}}
@media(forced-colors:active){.yl-anniversary-notice .yl-anniversary-register::before{background:ButtonFace}.yl-anniversary-notice .yl-anniversary-copy{color:LinkText}.yl-anniversary-notice .yl-finish-foil{display:none}}
/* Essential text paint v1: end. */
