.stay-review-page .tl-stay-fee{margin:28px 0;padding:22px 24px;border:1px solid #d2ddcd;border-radius:12px;background:#f5f8ef}
.stay-review-page .tl-stay-fee h2{margin:0 0 12px;font-size:22px;color:#116944}
.stay-review-page .tl-stay-fee p{margin:8px 0;line-height:1.8}
.stay-review-page .tl-stay-fee-sample{font-size:13px;color:#655627}
.tl-stay-fee-sample strong{display:inline-block;padding:1px 8px;margin-right:8px;border-radius:4px;background:#f5e9ba;font-size:12px}
.stay-review-page .tl-stay-fee-price strong{font-size:24px;color:#173b29}
.tl-stay-fee-price span{font-size:14px}
.stay-review-page .tl-stay-fee-note{font-size:14px;overflow-wrap:anywhere}
.stay-review-page .tl-stay-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin:20px 0 26px}
.stay-review-page .tl-stay-photos[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.stay-review-page .tl-stay-photos[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:380px}
.stay-review-page .tl-stay-photo{min-width:0;margin:0}
.tl-stay-photo>a{display:block;position:relative;overflow:hidden;border-radius:8px;background:#f1f3ef;cursor:zoom-in}
.stay-review-page .tl-stay-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;border-radius:0;margin:0;transition:transform .2s}
.stay-review-page .tl-stay-photos[data-orientation="portrait"] img{aspect-ratio:3/4}
.tl-stay-photo>a:hover img{transform:scale(1.025)}
.tl-stay-photo>a:focus-visible{outline:3px solid #116944;outline-offset:4px}
.tl-stay-photo-zoom{position:absolute;right:7px;bottom:7px;padding:2px 8px;border-radius:4px;background:rgba(0,0,0,.64);color:#fff;font-size:11px;line-height:1.6}
.stay-review-page .tl-stay-photo figcaption{margin:8px 0 0;font-size:13px;line-height:1.65;color:#43564c;overflow-wrap:anywhere}
.tl-stay-photo-credit{display:block;font-size:11px;color:#66756c}
.tl-stay-lightbox{box-sizing:border-box;width:min(1120px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:16px;border:0;border-radius:12px;background:#fff;color:#23362a;overscroll-behavior:contain}
.tl-stay-lightbox::backdrop{background:rgba(10,22,15,.86)}
.tl-stay-lightbox-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px}
.tl-stay-lightbox button{border:1px solid #abc1ad;border-radius:6px;background:#f4f8f1;color:#163c29;padding:10px 16px;font:inherit;cursor:pointer;min-height:44px}
.tl-stay-lightbox button:focus-visible{outline:3px solid #116944;outline-offset:2px}
.tl-stay-lightbox-image{display:block;width:100%;height:min(68dvh,780px);object-fit:contain;background:#f6f7f4}
.tl-stay-lightbox-caption{white-space:pre-line;font-size:14px;line-height:1.7;margin:10px 0;overflow-wrap:anywhere}
.tl-stay-lightbox-controls{display:flex;justify-content:space-between;gap:12px}
.tl-stay-lightbox-controls[hidden]{display:none}
.tl-stay-lightbox button:disabled{opacity:.4;cursor:default}
@media(max-width:600px){
 .stay-review-page .tl-stay-fee{padding:18px 16px}
 .stay-review-page .tl-stay-fee h2{font-size:20px}
 .stay-review-page .tl-stay-photos,.stay-review-page .tl-stay-photos[data-count="3"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .stay-review-page .tl-stay-photos[data-count="1"]{grid-template-columns:minmax(0,1fr);max-width:280px}
 .stay-review-page .tl-stay-photo figcaption{font-size:12px}
 .tl-stay-lightbox{padding:12px}
 .tl-stay-lightbox-image{height:58dvh}
}
@media(prefers-reduced-motion:reduce){.stay-review-page .tl-stay-photo img{transition:none}.tl-stay-photo>a:hover img{transform:none}}
