/* pw55.css - the machined-bevel button system, site-wide. Loads LAST on every
   page, after pw50/pw52 and any page sheet, so its equal-specificity rules win
   the cascade. Faces keep their established colours, remodelled as a vertical
   polish: a lit top edge, a shaded lower lip inside the face, and a tight
   contact shadow. Hover lifts 1.5px and brightens; click compresses into a
   real inset. Nav buttons included by request. The wash-menu toggle and
   underline links stay flat on purpose - they are controls, not buttons. */
.pillbtn { transition: transform .18s ease, box-shadow .18s ease, filter .2s ease, background .2s ease;
  background: linear-gradient(180deg, #1c4657 0%, #12333e 52%, #0c2530 100%);
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.22), inset 0 -2px 0 rgba(0,0,0,0.4),
    0 2px 4px rgba(13,39,49,0.25), 0 12px 26px -12px rgba(13,39,49,0.6); }
.pillbtn:hover { background: linear-gradient(180deg, #1c4657 0%, #12333e 52%, #0c2530 100%);
  transform: translateY(-1.5px); filter: brightness(1.12);
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.22), inset 0 -2px 0 rgba(0,0,0,0.4),
    0 4px 7px rgba(13,39,49,0.28), 0 18px 32px -12px rgba(13,39,49,0.65); }
.pillbtn:active { transform: translateY(1px); filter: none;
  box-shadow: inset 0 3px 7px rgba(0,0,0,0.5), inset 0 1px 0 rgba(0,0,0,0.3); }
.pillbtn.accent { background: linear-gradient(180deg, #5cc2f4 0%, #3fb2ec 46%, #2ea1de 100%);
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.55), inset 0 -2px 0 rgba(13,80,125,0.35),
    0 2px 4px rgba(13,39,49,0.18), 0 12px 26px -12px rgba(24,130,200,0.6); }
.pillbtn.accent:hover { background: linear-gradient(180deg, #5cc2f4 0%, #3fb2ec 46%, #2ea1de 100%);
  transform: translateY(-1.5px); filter: brightness(1.05);
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.55), inset 0 -2px 0 rgba(13,80,125,0.35),
    0 4px 7px rgba(13,39,49,0.2), 0 18px 32px -12px rgba(24,130,200,0.65); }
.pillbtn.accent:active { transform: translateY(1px); filter: none;
  box-shadow: inset 0 3px 7px rgba(10,60,95,0.45), inset 0 1px 0 rgba(13,80,125,0.3), 0 1px 2px rgba(13,39,49,0.15); }
.pillbtn.member { background: linear-gradient(180deg, #f2fafb 0%, #e3f2f4 50%, #d3e9ec 100%);
  box-shadow: inset 0 1.5px 0 #fff, inset 0 -2px 0 rgba(34,120,140,0.16),
    0 2px 4px rgba(13,39,49,0.12), 0 10px 24px -12px rgba(34,150,180,0.4); }
.pillbtn.member:hover { background: linear-gradient(180deg, #f2fafb 0%, #e3f2f4 50%, #d3e9ec 100%);
  transform: translateY(-1.5px); filter: brightness(1.03); }
.pillbtn.member:active { transform: translateY(1px); filter: none;
  box-shadow: inset 0 3px 6px rgba(18,51,62,0.18); }
.pillbtn.on-white, .pillbtn.outline { background: linear-gradient(180deg, #ffffff 0%, #f2f6f8 100%);
  box-shadow: inset 0 1.5px 0 #fff, inset 0 -2px 0 rgba(18,51,62,0.08),
    0 2px 4px rgba(13,39,49,0.1), 0 10px 22px -14px rgba(13,39,49,0.35); }
.pillbtn.on-white:hover, .pillbtn.outline:hover { background: linear-gradient(180deg, #ffffff 0%, #f2f6f8 100%);
  transform: translateY(-1.5px); }
.pillbtn.on-white:active, .pillbtn.outline:active { transform: translateY(1px);
  box-shadow: inset 0 3px 6px rgba(18,51,62,0.16); }
/* the three over-photo ghosts share one smoked-glass face with a lit rim */
.pillbtn.ghost-dark, .sub-hero .pillbtn.ghost, .skyhero .pillbtn.ghost {
  background: linear-gradient(180deg, rgba(30,70,90,0.55), rgba(10,32,42,0.55));
  box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.28), inset 0 -2px 0 rgba(0,0,0,0.35),
    0 10px 22px -14px rgba(0,0,0,0.5); }
.pillbtn.ghost-dark:hover, .sub-hero .pillbtn.ghost:hover, .skyhero .pillbtn.ghost:hover {
  background: linear-gradient(180deg, rgba(30,70,90,0.55), rgba(10,32,42,0.55));
  transform: translateY(-1.5px); filter: brightness(1.12); }
.pillbtn.ghost-dark:active, .sub-hero .pillbtn.ghost:active, .skyhero .pillbtn.ghost:active {
  transform: translateY(1px); filter: none; box-shadow: inset 0 3px 7px rgba(0,0,0,0.5); }
/* xlink "See the page" pill on the location cross-links */
.xlink .go { box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.22), inset 0 -2px 0 rgba(0,0,0,0.3); }
/* carousel arrows */
.cbtn { background: linear-gradient(180deg, #ffffff, #eef3f6);
  box-shadow: inset 0 1.5px 0 #fff, inset 0 -2px 0 rgba(18,51,62,0.1),
    0 2px 4px rgba(13,39,49,0.12), 0 10px 22px -12px rgba(13,39,49,0.4);
  transition: transform .18s ease, box-shadow .18s ease; }
.cbtn:hover { transform: translateY(-1.5px);
  box-shadow: inset 0 1.5px 0 #fff, inset 0 -2px 0 rgba(18,51,62,0.1),
    0 4px 7px rgba(13,39,49,0.14), 0 14px 26px -12px rgba(13,39,49,0.45); }
.cbtn:active { transform: translateY(1px); box-shadow: inset 0 3px 6px rgba(18,51,62,0.18); }
/* mobile sticky bar */
.mbar .mb-call { box-shadow: inset 0 1.5px 0 rgba(255,255,255,0.35), inset 0 -2px 0 rgba(10,60,95,0.4); }
.mbar a { transition: transform .15s ease; }
.mbar a:active { transform: translateY(1px); }
@media (prefers-reduced-motion: reduce) {
  .pillbtn, .cbtn, .mbar a { transition: none; }
  .pillbtn:hover, .pillbtn:active, .cbtn:hover, .cbtn:active, .mbar a:active { transform: none; filter: none; }
}
