/* Wyoming K-9 Training Academy: base styles shared by every page.
   Page layout lives in each page's <style>: blocks are absolutely placed where they sit on the
   original (desktop measured at 1280px; the max-width:750px rules hold the Wix mobile layout). */

/* Fonts. The Wix family names are kept so the measured text styles apply unchanged.
   Gumley, Futura and Avenir are Wix-licensed, so they map to close open-licence stand-ins,
   scaled to the originals' widths. Lato and the uploaded Outfit Thin are the original files. */
@font-face { font-family: 'gumley'; src: url(fonts/lilita-one.woff2) format('woff2'); font-display: swap; size-adjust: 83.5%; ascent-override: 119.8%; descent-override: 24%; line-gap-override: 0%; }
@font-face { font-family: 'futura-lt-w01-book'; src: url(fonts/jost.woff2) format('woff2'); font-weight: 100 900; font-display: swap; size-adjust: 104%; ascent-override: 101.2%; descent-override: 28.2%; line-gap-override: 0%; }
@font-face { font-family: 'avenir-lt-w01_35-light1475496'; src: url(fonts/figtree.woff2) format('woff2'); font-weight: 300 900; font-display: swap; ascent-override: 93.6%; descent-override: 25%; line-gap-override: 0%; }
@font-face { font-family: 'lato-light'; src: url(fonts/lato-light.woff2) format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'lato-light'; src: url(fonts/lato-bold.woff2) format('woff2'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'lato'; src: url(fonts/lato-light.woff2) format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'wfont_49e40d_3566c37ba3d347938720d4cd0512c38d'; src: url(fonts/outfit-thin.woff2) format('woff2'); font-display: swap; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; min-width: 980px; background: #cfc7f2; color: #000; font: 10px/1.4 Arial, Helvetica, sans-serif; overflow-x: hidden; }
/* the original's page background: a photo pinned to the viewport behind every section */
body::before { content: ""; position: fixed; inset: 0; z-index: -1; background: #cfc7f2 url(img/page-bg.jpg) 50% 50% / cover no-repeat; }
img { border: 0; }

.skip-link { position: absolute; left: 8px; top: -60px; z-index: 2000; background: #fff; color: #000; padding: 10px 14px; font: 14px Arial, sans-serif; }
.skip-link:focus { top: 8px; }
.vh, .hp-field { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.hp-field { left: -9999px; }

.blk { position: relative; display: block; }
.n, .ly { position: absolute; display: block; }
.ly { left: 0; top: 0; }
img.ly { width: 100%; height: 100%; }

/* rich text: every block carries its measured style inline */
.rt { overflow-wrap: break-word; }
.rt :where(p, h1, h2, h3, h4, h5, h6, ul, ol, li, blockquote) { margin: 0; padding: 0; }
.rt :where(a) { color: inherit; text-decoration: none; }
.rt :where(strong, b) { font-weight: inherit; }
.rt :where(em, i) { font-style: inherit; }
.rt a:hover { opacity: .85; }

.img img { display: block; }
.img a { display: block; width: 100%; height: 100%; }
.vec svg { display: block; width: 100%; height: 100%; overflow: visible; }
.vec a { display: block; width: 100%; height: 100%; }
.btn { border: 0; padding: 0; margin: 0; background: none; font: inherit; color: inherit; text-decoration: none; cursor: pointer; transition: background-color .2s, color .2s; }
.btn .lbl { transition: color .2s; }
.btn .ic svg { display: block; width: 100%; height: 100%; }

/* desktop menu */
#nav ul { list-style: none; margin: 0; padding: 0; }
#nav li { position: absolute; }
#nav a { display: block; height: 100%; white-space: nowrap; color: #fff; text-decoration: none;
  font: 400 14px/normal 'futura-lt-w01-book', sans-serif; letter-spacing: .7px; }
#nav a[aria-current="page"], #nav a:hover { text-decoration: underline; }

/* mobile menu */
.mm-toggle { display: none; }
.mm { position: fixed; inset: 0; z-index: 1000; background: #f2e8d3; overflow-y: auto; }
.mm[hidden] { display: none; }
.mm ul { list-style: none; margin: 58px auto 40px; padding: 0; width: 188px; }
.mm a { display: flex; align-items: center; justify-content: center; min-height: 56px; text-align: center; color: #000;
  font: 400 22px/1.2 'lato-light', sans-serif; text-decoration: none; }
.mm a[aria-current="page"] { color: #014235; }

/* video (Wix MediaPlayer: muted loop, click to play/pause) */
.vbox video, .vbox img { object-fit: cover; }
.vbox video { opacity: 0; transition: opacity .3s; }
.vbox.playing video { opacity: 1; }
.vplay { position: absolute; left: 50%; top: 50%; width: 58px; height: 58px; margin: -29px 0 0 -29px; padding: 0; border: 0; background: none; cursor: pointer; }
.vplay svg { display: block; width: 100%; height: 100%; fill: rgba(0, 0, 0, .6); }
.vbox.playing .vplay { opacity: 0; }
.vbox.playing:hover .vplay, .vbox.playing .vplay:focus-visible { opacity: 1; }
.vaudio { position: absolute; right: 6px; bottom: 6px; width: 40px; height: 36px; padding: 3px 5px; border: 0; background: none; cursor: pointer; opacity: 0; transition: opacity .2s; filter: drop-shadow(0 0 1px #000); }
.vbox:hover .vaudio, .vaudio:focus-visible, .vaudio[aria-pressed="true"] { opacity: 1; }
.vaudio svg { display: block; width: 100%; height: 100%; fill: none; stroke: #fff; stroke-width: 1.6; stroke-linecap: round; }
.vaudio .spk { fill: #fff; }
.vaudio .on, .vaudio[aria-pressed="true"] .off { display: none; }
.vaudio[aria-pressed="true"] .on { display: inline; }

/* gallery slider (Wix Pro Gallery "slider" layout) */
.pgal { overflow: hidden; }
.pg-track { display: flex; gap: var(--gap); height: var(--h); overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.pg-track::-webkit-scrollbar { display: none; }
.pg-item { flex: 0 0 auto; height: 100%; aspect-ratio: var(--ar); scroll-snap-align: start; }
.pg-item img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pg-arrow { position: absolute; top: calc(50% - 19.5px); width: 23px; height: 39px; padding: 0; border: 0; background: none; cursor: pointer; filter: drop-shadow(0 0 1px rgba(0, 0, 0, .6)); }
.pg-arrow svg { display: block; width: 100%; height: 100%; fill: #f2e8d3; }
.pg-next { right: 28px; }
.pg-prev { left: 28px; }
.pg-prev svg { transform: scaleX(-1); }
.pg-arrow[hidden] { display: none; }

/* forms */
.wform input, .wform textarea { display: block; margin: 0; border: 0; background: transparent; outline: none; resize: none; width: 100%; }
.wform textarea { height: 100%; }
.wform input:focus-visible, .wform textarea:focus-visible { outline: 2px solid #1d67cd; outline-offset: 2px; }
.wform label { display: block; }
.wform .sb { border: 0; padding: 0; margin: 0; }

@media (max-width: 750px) {
  body { min-width: 0; }
  .mm-toggle { display: block; position: absolute; left: 199px; top: 198px; z-index: 1001; width: 50px; height: 50px; padding: 0; border: 0; background: none; cursor: pointer; }
  .mm-toggle span { position: absolute; left: 14px; width: 22px; height: 2px; background: #000; transition: transform .2s, opacity .2s, top .2s; }
  .mm-toggle span:nth-child(1) { top: 15px; }
  .mm-toggle span:nth-child(2) { top: 24px; }
  .mm-toggle span:nth-child(3) { top: 33px; }
  .mm-open .mm-toggle { position: fixed; }
  .mm-open .mm-toggle span:nth-child(1) { top: 24px; transform: rotate(45deg); }
  .mm-open .mm-toggle span:nth-child(2) { opacity: 0; }
  .mm-open .mm-toggle span:nth-child(3) { top: 24px; transform: rotate(-45deg); }
  .pg-arrow { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .pg-track { scroll-behavior: auto; }
}
