/* Small, local responses. No scroll listeners, image transforms or reveal overrides. */
:root{
  --pe-micro-fast:160ms;
  --pe-micro-flow:400ms;
  --pe-micro-settle:560ms;
  --pe-micro-ease:cubic-bezier(.22,.75,.16,1);
  --pe-micro-accent:#61427e;
  --pe-micro-lilac:#c8b3e7;
}
.site-body .pe-micro-action .pe-micro-label,
.site-body .pe-micro-action .pe-micro-label-text,
.site-body .pe-micro-action .pe-micro-label-copy{
  font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit;
}
.pe-micro-label{position:relative;display:inline-grid;min-width:0;vertical-align:middle}
.pe-micro-label-text{display:block}
.pe-micro-nav .pe-micro-label{overflow:hidden}
.pe-micro-label-copy{position:absolute;inset:0;display:block;transform:translateY(115%);pointer-events:none;user-select:none}
.pe-micro-button{position:relative;isolation:isolate;overflow:hidden;--pe-micro-wash:#d8c9ee;--pe-micro-tap:#d8c9ee}
.pe-micro-button>:not(.pe-micro-wash){position:relative;z-index:1}
.pe-micro-button>.pe-micro-wash{
  position:absolute;z-index:0;inset-block-start:50%;inset-inline-end:22px;
  width:12px;height:12px;border-radius:50%;background:var(--pe-micro-wash);
  transform:translate(50%,-50%) scale(0);pointer-events:none;
}
:is(.sheet-button,.legacy-button,.nav-cta).pe-micro-button{--pe-micro-wash:#4d3b61;--pe-micro-tap:#4d3b61}
.site-body .button.outline.pe-micro-button{--pe-micro-wash:#e1d5ed;--pe-micro-tap:#e1d5ed}
.pe-micro-nav{position:relative}
.pe-micro-nav::after{
  content:'';position:absolute;inset-inline:0;bottom:5px;height:1px;
  background:currentColor;transform:scaleX(0);transform-origin:0 50%;pointer-events:none;
}
.pe-micro-nav[aria-current="page"]::after{display:none}
.pe-micro-photo{position:relative}
.pe-micro-photo-rule{
  position:absolute;z-index:1;inset:auto 0 0;height:3px;background:var(--pe-micro-lilac);
  transform:scaleX(.35);transform-origin:0 50%;opacity:0;pointer-events:none;
}
.pe-micro-icon{
  --pe-arrow-x:130%;--pe-arrow-y:-130%;
  display:inline-grid;position:relative;place-items:center;overflow:hidden;
  width:1.1em;height:1.15em;vertical-align:middle;pointer-events:none;
}
.pe-micro-icon[data-direction="right"]{--pe-arrow-x:130%;--pe-arrow-y:0%}
.pe-micro-icon[data-direction="left"]{--pe-arrow-x:-130%;--pe-arrow-y:0%}
.pe-micro-icon[data-direction="down"]{--pe-arrow-x:0%;--pe-arrow-y:130%}
.pe-micro-icon[data-direction="up"]{--pe-arrow-x:0%;--pe-arrow-y:-130%}
.site-body .pe-micro-icon>span{grid-area:1/1;display:block;font:inherit;line-height:1;color:inherit}
.pe-micro-icon-copy{transform:translate(calc(-1 * var(--pe-arrow-x)),calc(-1 * var(--pe-arrow-y)))}

/* Focus always works, including touch keyboards and reduced motion. */
.pe-micro-nav:focus-visible::after{transform:scaleX(1)}
.pe-micro-card:focus-visible .pe-micro-photo-rule,
.pe-micro-card:focus-within .pe-micro-photo-rule{opacity:1;transform:scaleX(1)}
.pe-micro-button:not(:disabled):not([aria-disabled="true"]):focus-visible>.pe-micro-wash{transform:translate(50%,-50%) scale(72)}
:is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):focus-visible{outline:3px solid var(--pe-micro-accent);outline-offset:5px}
.dark :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):focus-visible{outline-color:var(--pe-micro-lilac)}

/* Hover effects are deliberately limited to a mouse/trackpad. */
@media(hover:hover) and (pointer:fine){
  .pe-micro-nav:hover::after{transform:scaleX(1)}
  .pe-micro-card:hover .pe-micro-photo-rule{opacity:1;transform:scaleX(1)}
  .pe-micro-button:not(:disabled):not([aria-disabled="true"]):hover>.pe-micro-wash{transform:translate(50%,-50%) scale(72)}
  .site-body .brief-form .button.pe-micro-button:not(:disabled):hover{background:var(--pale)}
  .site-body .button.outline.pe-micro-button:hover{background:transparent;color:var(--purple)}
  .pe-micro-card:hover :is(.photo-arrow,.album-open),
  .pe-micro-photo-link:hover :is(.photo-arrow,.sheet-gallery-open>span){background:var(--pe-micro-lilac)}
  .pe-micro-card:hover :is(.album-card-top,.journal-card-link){border-color:var(--pe-micro-accent)}
  [data-pe-micro-motion="full"] .pe-micro-nav:hover .pe-micro-label-text{transform:translateY(-115%)}
  [data-pe-micro-motion="full"] .pe-micro-nav:hover .pe-micro-label-copy{transform:translateY(0)}
  [data-pe-micro-motion="full"] :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):hover .pe-micro-icon-original{transform:translate(var(--pe-arrow-x),var(--pe-arrow-y))}
  [data-pe-micro-motion="full"] :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):hover .pe-micro-icon-copy{transform:translate(0,0)}
}
[data-pe-micro-motion="full"] .pe-micro-nav:focus-visible .pe-micro-label-text{transform:translateY(-115%)}
[data-pe-micro-motion="full"] .pe-micro-nav:focus-visible .pe-micro-label-copy{transform:translateY(0)}
[data-pe-micro-motion="full"] :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):focus-visible .pe-micro-icon-original,
[data-pe-micro-motion="full"] .pe-micro-card:focus-within .pe-micro-icon-original{transform:translate(var(--pe-arrow-x),var(--pe-arrow-y))}
[data-pe-micro-motion="full"] :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):focus-visible .pe-micro-icon-copy,
[data-pe-micro-motion="full"] .pe-micro-card:focus-within .pe-micro-icon-copy{transform:translate(0,0)}
[data-pe-micro-motion="full"] :is(.pe-micro-label-text,.pe-micro-label-copy,.pe-micro-icon-original,.pe-micro-icon-copy){transition:transform var(--pe-micro-flow) var(--pe-micro-ease)}
[data-pe-micro-motion="full"] .pe-micro-nav::after{transition:transform var(--pe-micro-flow) var(--pe-micro-ease)}
[data-pe-micro-motion="full"] .pe-micro-wash{transition:transform var(--pe-micro-settle) var(--pe-micro-ease)}
[data-pe-micro-motion="full"] .pe-micro-photo-rule{transition:transform 350ms var(--pe-micro-ease),opacity var(--pe-micro-fast) ease}
[data-pe-micro-motion="full"] .pe-micro-card :is(.album-card-top,.journal-card-link){transition:border-color var(--pe-micro-fast) ease}

/* A tap follows the native link immediately; no hover emulation or click handler. */
.site-body .pe-micro-button:not(:disabled):not([aria-disabled="true"]):active{background:var(--pe-micro-tap)}
.pe-micro-card:active .pe-micro-photo-rule{opacity:1;transform:scaleX(1)}
.pe-micro-nav:active{color:var(--pe-micro-lilac)}
@media(prefers-reduced-motion:no-preference){
  .pe-micro-button>.pe-micro-wash{transition:transform var(--pe-micro-settle) var(--pe-micro-ease)}
  [data-pe-micro-motion="quiet"] .pe-micro-button>.pe-micro-wash{transition:none}
  .pe-micro-card :is(.photo-arrow,.album-open){transition:background-color var(--pe-micro-fast) ease}
}
@media(prefers-reduced-motion:reduce){
  .site-body .button.pe-micro-button:not(:disabled):active{transform:none}
  .pe-micro-wash,.pe-micro-photo-rule,.pe-micro-label-text,.pe-micro-label-copy,
  .pe-micro-icon-original,.pe-micro-icon-copy,.pe-micro-nav::after{transition:none!important}
}
@media(forced-colors:active){
  .pe-micro-wash{display:none}
  .pe-micro-photo-rule{background:Highlight}
  :is(.pe-micro-action,.pe-micro-card,.pe-micro-photo-link):focus-visible{outline-color:Highlight}
}
