/* Photos retain the original four-column gallery scale. */
body{background:#fffaf4;color:#332419}
.photos-page{padding:32px 20px 35px}
.spa-day{width:min(100%,540px);margin:0 auto 32px;padding:28px 24px;background:#fff;border:1px solid #e2d7c6;border-radius:18px;text-align:center;box-shadow:0 4px 14px #3324190c}
.spa-copy h1{font:400 42px/1.1 Cottage,Gabriola,Georgia,serif;color:#332419;margin:0 0 10px}
.spa-copy p{margin:0 0 16px;font:16px/1.5 'Segoe UI',Arial,sans-serif}
.watch-reel{display:inline-flex;gap:10px;align-items:center;background:#697746;color:white;text-decoration:none;padding:10px 20px;border:1px solid #596334;border-radius:999px;font:600 14px/1.4 'Segoe UI',Arial,sans-serif}
.watch-reel:hover{background:#536030;color:white}
.pet-photos{max-width:980px;margin:auto;text-align:center}
.pet-photos h2{font:400 42px/1.15 Cottage,Gabriola,Georgia,serif;margin:0 0 8px;color:#332419}
.gallery-intro{font:16px/1.6 'Segoe UI',Arial,sans-serif;margin:0 auto 26px;max-width:850px}
.pet-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pet-photo{display:block;width:100%;margin:0;padding:5px;border:1px solid #e0d6c6;border-radius:16px;background:white;box-shadow:0 3px 9px #33241912;overflow:hidden;cursor:zoom-in;aspect-ratio:1}
.pet-photo img{width:100%;height:100%;object-fit:cover;border-radius:11px}
.pet-photo:hover{box-shadow:0 5px 14px #33241926;border-color:#a6af89}
.facebook-follow{margin:28px 0 0;font:400 30px/1.3 Cottage,Gabriola,Georgia,serif}
.facebook-follow a{color:#4c5a2c}
.photo-viewer{position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;padding:55px 70px 35px;background:#211a15f5;color:white}
.photo-viewer::backdrop{background:#211a15eb}
.photo-viewer[open]{display:flex;align-items:center;justify-content:center}
.photo-viewer figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;max-width:100%;justify-content:center}
.photo-viewer .full-photo{max-height:calc(100dvh - 125px);max-width:100%;object-fit:contain;border-radius:8px}
.photo-viewer figcaption{font:14px 'Segoe UI',Arial,sans-serif;color:#e6dfd3}
.photo-viewer button{position:absolute;display:grid;place-items:center;border:1px solid #ffffff60;border-radius:50%;background:#33241999;color:white;width:42px;height:42px;cursor:pointer;font:34px/1 Arial,sans-serif}
.close-viewer{right:18px;top:16px}.previous-photo{left:12px;top:50%}.next-photo{right:12px;top:50%}
.pet-photo:focus-visible,.watch-reel:focus-visible,.photo-viewer button:focus-visible{outline:3px solid #9da970;outline-offset:4px}
@media(max-width:680px){.photos-page{padding:22px 14px 28px}.spa-day{padding:24px 18px;margin-bottom:26px}.spa-copy h1{font-size:36px}.pet-photos h2{font-size:35px}.gallery-intro{font-size:15px}.pet-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.facebook-follow{font-size:27px}.photo-viewer{padding:55px 48px 25px}.photo-viewer button{width:35px;height:35px}.previous-photo{left:5px}.next-photo{right:5px}}

/* Local Maizy makeover video. */
.spa-day{width:min(100%,608px)}
.spa-video{display:block;width:100%;height:auto;max-height:500px;object-fit:contain;background:#17130f;border-radius:12px}

/* Crop the portrait export for horizontal page display, retaining the caption area. */
.spa-video{width:100%;height:auto;aspect-ratio:4/3;max-height:none;object-fit:cover;object-position:50% 35%;background:#000}

/* Facebook follow link and small circular icon. */
.facebook-follow a{color:#1877f2}
.facebook-follow a:hover{color:#145fca}
.facebook-round-icon{display:inline-block;width:24px;height:24px;vertical-align:middle;margin-right:7px;line-height:0}
.facebook-round-icon svg{display:block;width:100%;height:100%}
