
:root{--gold:#947810;--gold2:#b1983f;--ink:#202020;--muted:#6e6b65;--paper:#fff;--soft:#f7f5ef;--line:#ddd8ca;--black:#111315}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.7}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;color:#181818}p{margin:0 0 1.15em}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.kicker{font-size:11px;letter-spacing:.23em;text-transform:uppercase;color:#777;margin:0 0 10px}.rule-title{text-align:center;margin:0 0 42px}.rule-title h2{font-size:clamp(38px,5vw,62px);margin:0 0 7px}.rule-title:after{content:"";display:block;width:62px;height:1px;background:var(--gold);margin:19px auto 0}.button{display:inline-flex;align-items:center;gap:14px;border:1px solid #bbb6aa;padding:13px 24px;background:#fff;text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:#65615c;transition:.2s}.button:hover{border-color:var(--gold);color:#111}.button.dark{background:var(--black);border-color:var(--black);color:#fff}.button.dark:hover{background:#25282a}
.site-header{height:88px;background:#fff;position:sticky;top:0;z-index:50;border-bottom:2px solid var(--gold);box-shadow:0 5px 18px #00000012}.header-inner{height:100%;position:relative;display:flex;align-items:center;justify-content:center}.crest{position:absolute;left:-28px;top:-3px;width:132px;height:132px;border-radius:50%;background:#111;border:2px solid var(--gold);box-shadow:0 8px 18px #0003;display:flex;align-items:center;justify-content:center;padding:3px;z-index:3}.crest img{width:100%;height:100%;object-fit:contain;border-radius:50%}.desktop-nav{display:flex;align-items:center;gap:42px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#4c4a46}.desktop-nav a:hover{color:var(--gold)}.desktop-nav .book-link{font-weight:700;color:#1f1f1f}
.booking-bar{background:#141618;color:#fff;border-bottom:1px solid #4f4216}.booking-inner{min-height:56px;display:flex;align-items:center;justify-content:flex-end;gap:30px;padding-left:115px}.booking-item{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.booking-item span{font-size:9px;letter-spacing:.2em;color:#bdbbb4;text-transform:uppercase}.booking-item strong{font-family:Georgia,serif;font-size:13px;font-weight:400;color:#fff}.booking-action{margin-left:8px;padding:8px 0 8px 24px;border-left:1px solid #5e5226;color:#d4bd6a;font-size:10px;letter-spacing:.17em;text-transform:uppercase}
.hero{position:relative;height:min(690px,76vh);min-height:500px;background:#111;overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 56%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#00000012 35%,#00000070 100%)}.hero-caption{position:absolute;left:50%;bottom:38px;transform:translateX(-50%);z-index:2;background:#ffffffeb;border-top:2px solid var(--gold);padding:23px 34px;text-align:center;width:min(610px,calc(100% - 36px));box-shadow:0 8px 30px #0003}.hero-caption .kicker{color:#7d6c31;margin-bottom:5px}.hero-caption h1{font-size:clamp(31px,4.2vw,50px);margin:0;color:#1d1d1d}.hero-caption p{font-size:13px;letter-spacing:.11em;text-transform:uppercase;color:#68645d;margin:8px 0 0}
main{position:relative;background:#fff}.welcome{padding:100px 0 90px;background:linear-gradient(90deg,#f6f4ee 0,#fff 9%,#fff 91%,#f6f4ee 100%)}.welcome-grid{display:grid;grid-template-columns:.9fr 1.25fr;gap:80px;align-items:center}.welcome-copy{padding:20px 5px 20px 25px}.welcome-copy h2{font-size:clamp(45px,5.4vw,70px);margin:0 0 22px}.welcome-copy p{color:#55524d;font-size:16px}.welcome-copy .button{margin-top:10px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.photo-grid img{aspect-ratio:1.2/1;height:100%;object-fit:cover}.photo-grid img:nth-child(2),.photo-grid img:nth-child(5),.photo-grid img:nth-child(8){aspect-ratio:1/1}.grid-cta{text-align:center;margin-top:32px}
.transform{padding:88px 0 105px;border-top:1px solid #eee9df;background:#fff}.transform-head{margin-bottom:54px}.transform-head h2{font-size:clamp(42px,5vw,63px);margin:0}.transform-head .kicker{margin:8px 0 0 80px;color:#6e6a62}.transform-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:72px;align-items:start}.transform-copy{padding-left:30px;color:#4c4a46}.transform-copy p{font-size:16px}.transform-media{position:relative}.transform-media img{aspect-ratio:1.16/1;object-fit:cover}.transform-media:before{content:"THE QUEEN'S INN · GORE BAY";position:absolute;z-index:2;bottom:16px;left:18px;color:#fff;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:#0008;padding:7px 10px}
.rooms-section{padding:96px 0 110px;background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rooms-intro{max-width:650px;margin:0 auto 48px;text-align:center;color:#66625c}.rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.room{background:#fff;border:1px solid #ded9ce;transition:transform .2s,box-shadow .2s}.room:hover{transform:translateY(-3px);box-shadow:0 12px 28px #00000012}.room img{aspect-ratio:1/1.08;object-fit:cover}.room-copy{padding:20px 18px 22px;text-align:center}.room-copy small{display:block;text-transform:uppercase;letter-spacing:.17em;color:#9a8440;font-size:9px;margin-bottom:5px}.room-copy h3{font-size:29px;margin:0 0 7px}.room-copy p{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#75716a;margin:0}.rooms-book{text-align:center;margin-top:45px}
.feature{display:grid;grid-template-columns:1fr 1fr;min-height:620px;background:#fff}.feature.reverse{direction:rtl}.feature.reverse>*{direction:ltr}.feature-photo{min-height:560px}.feature-photo img{height:100%;object-fit:cover}.feature-copy{padding:80px 9vw;display:flex;justify-content:center;flex-direction:column}.feature-copy h2{font-size:clamp(42px,5vw,66px);margin:0 0 20px}.feature-copy p{color:#57534e;font-size:16px}.feature-copy .button{align-self:flex-start;margin-top:9px}.feature.gold{background:#f2eee2}
.gallery{padding:100px 0;background:#fff;border-top:1px solid #eee9df}.mosaic{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:135px;gap:9px}.mosaic figure{margin:0;overflow:hidden}.mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.mosaic figure:hover img{transform:scale(1.025)}.mosaic figure:nth-child(1){grid-column:span 5;grid-row:span 3}.mosaic figure:nth-child(2){grid-column:span 3;grid-row:span 2}.mosaic figure:nth-child(3){grid-column:span 4;grid-row:span 2}.mosaic figure:nth-child(4){grid-column:span 3;grid-row:span 2}.mosaic figure:nth-child(5){grid-column:span 4;grid-row:span 3}.mosaic figure:nth-child(6){grid-column:span 5;grid-row:span 2}
.island{padding:92px 0;background:#16181a;color:#eee;text-align:center}.island h2{font-size:clamp(42px,5vw,67px);color:#fff;margin:0 0 18px}.island p{max-width:780px;margin:0 auto 28px;color:#c9c7c1}.island .kicker{color:#c7a94b}.island .button{background:transparent;border-color:#8c7940;color:#fff}
.contact{padding:90px 0;text-align:center;background:#fff}.contact h2{font-size:clamp(40px,5vw,62px);margin:0 0 16px}.contact p{color:#6c6861}.contact-lines{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin:28px 0 34px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#555}.contact-lines span+span{border-left:1px solid #bbb;padding-left:22px}
footer{background:#111315;color:#cfcfc9;border-top:3px solid var(--gold);padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:160px 1fr 1.2fr;gap:48px;align-items:start}footer .footer-logo{width:130px;height:130px;object-fit:contain;border-radius:50%;border:1px solid #8c7320;background:#111}footer h3{color:#fff;font-size:27px;margin:5px 0 9px}footer a{display:block;color:#e5e3dc;font-size:13px}.land{font-size:12px;color:#aaa8a1;max-width:560px;margin:5px 0 0}.copyright{border-top:1px solid #33363a;margin-top:35px;padding-top:19px;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#777;text-align:center}
@media(max-width:1050px){.crest{left:0}.desktop-nav{gap:24px;font-size:11px}.booking-inner{padding-left:125px}.rooms{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.wrap{width:min(100% - 30px,680px)}.hero{height:65vh;min-height:460px}.hero img{object-position:center}.hero-caption{bottom:22px;padding:18px 18px}.hero-caption h1{font-size:33px}.welcome{padding:72px 0}.welcome-grid{grid-template-columns:1fr;gap:45px}.welcome-copy{padding:0;text-align:center}.welcome-copy .button{margin-top:0}.photo-grid{gap:6px}.transform{padding:68px 0}.transform-head{text-align:center;margin-bottom:35px}.transform-head .kicker{margin:8px 0 0}.transform-grid{grid-template-columns:1fr;gap:35px}.transform-copy{padding:0}.transform-media img{aspect-ratio:1.2/1}.rooms-section{padding:70px 0}.rooms{grid-template-columns:1fr 1fr;gap:10px}.room-copy{padding:15px 10px 17px}.room-copy h3{font-size:24px}.room-copy p{font-size:9px}.feature,.feature.reverse{grid-template-columns:1fr;direction:ltr}.feature-photo{min-height:390px}.feature-copy{padding:60px 22px}.feature-copy h2{font-size:44px}.gallery{padding:70px 0}.mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.mosaic figure,.mosaic figure:nth-child(n){grid-column:auto;grid-row:auto}.mosaic figure:nth-child(1),.mosaic figure:nth-child(5){grid-column:1/-1}.island,.contact{padding:70px 15px}.contact-lines{flex-direction:column;gap:8px}.contact-lines span+span{border:0;padding-left:0}.footer-grid{grid-template-columns:95px 1fr;gap:22px}.footer-grid .land{grid-column:1/-1}footer .footer-logo{width:90px;height:90px}}
@media(max-width:480px){.rooms{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr}.photo-grid img:nth-child(9){display:none}.mosaic{grid-template-columns:1fr;grid-auto-rows:270px}.mosaic figure:nth-child(1),.mosaic figure:nth-child(5){grid-column:auto}}


:root{--gold:#947810;--gold2:#b1983f;--ink:#202020;--soft:#f7f5ef;--line:#ded8ca;--black:#111315}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.7}img{display:block;width:100%}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.kicker{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#8f7a39}.button{display:inline-flex;padding:14px 21px;border:1px solid #aaa59a;text-transform:uppercase;letter-spacing:.16em;font-size:10px}.button.dark{background:#111315;color:#fff;border-color:#111315}.site-header{height:88px;background:#fff;position:sticky;top:0;z-index:50;border-bottom:2px solid var(--gold);box-shadow:0 5px 18px #00000012}.header-inner{height:100%;position:relative;display:flex;align-items:center;justify-content:center}.crest{position:absolute;left:-28px;top:-3px;width:132px;height:132px;border-radius:50%;background:#111;border:2px solid var(--gold);box-shadow:0 8px 18px #0003;padding:3px;z-index:3}.crest img{height:100%;object-fit:contain;border-radius:50%}.desktop-nav{display:flex;align-items:center;gap:38px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:#4c4a46}.book-link{font-weight:700}.booking-bar{background:#141618;color:#fff}.booking-inner{min-height:56px;display:flex;justify-content:flex-end;align-items:center;gap:28px;padding-left:115px}.booking-item{display:flex;gap:7px;align-items:baseline}.booking-item span{font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:#aaa}.booking-item strong{font:400 13px Georgia,serif}.booking-action{padding-left:22px;border-left:1px solid #5e5226;color:#d4bd6a;font-size:9px;letter-spacing:.17em;text-transform:uppercase}.room-hero{display:grid;grid-template-columns:1.18fr .82fr;min-height:610px;background:#f5f2e9}.room-hero-photo img{height:100%;object-fit:cover}.room-hero-copy{padding:80px 8vw 65px 6vw;display:flex;justify-content:center;flex-direction:column}.room-hero-copy h1{font-size:clamp(52px,6vw,80px);margin:8px 0 16px}.room-hero-copy .lead{font:italic 21px Georgia,serif;color:#615b50}.facts{display:flex;gap:0;flex-wrap:wrap;margin:25px 0}.facts span{padding:8px 13px;border:1px solid #d7d0c0;margin:-1px 0 0 -1px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#676159}.room-body{padding:90px 0}.room-copy-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px}.room-copy-grid h2,.amenity-section h2,.other h2{font-size:44px;margin:0 0 24px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenities span{padding:11px 13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}.gallery{padding:0 0 95px}.room-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:145px;gap:9px}.room-gallery figure{margin:0;overflow:hidden}.room-gallery img{height:100%;object-fit:cover}.room-gallery figure:nth-child(1){grid-column:span 7;grid-row:span 3}.room-gallery figure:nth-child(2){grid-column:span 5;grid-row:span 2}.room-gallery figure:nth-child(3){grid-column:span 5;grid-row:span 2}.room-gallery figure:nth-child(n+4){grid-column:span 4;grid-row:span 2}.amenity-section{background:#f5f2e9;padding:85px 0}.inn-list{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9d2c2;border:1px solid #d9d2c2}.inn-list span{background:#fff;padding:14px;font-size:11px}.other{padding:90px 0}.other-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.other-card{position:relative;height:270px;overflow:hidden;color:#fff}.other-card img{height:100%;object-fit:cover}.other-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#000d)}.other-card div{position:absolute;z-index:2;bottom:18px;left:18px}.other-card h3{margin:0;font-size:27px}.other-card small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#d4bd6a}footer{background:#111315;color:#aaa;padding:50px 0 28px;border-top:3px solid var(--gold)}.footer-grid{display:grid;grid-template-columns:130px 1fr 1.2fr;gap:40px}.footer-logo{width:110px;height:110px;object-fit:contain;border-radius:50%;border:1px solid #8c7320}.footer-grid h3{color:#fff;margin:4px 0 8px;font-size:25px}.footer-grid a{display:block;color:#ddd;font-size:12px}.land{font-size:11px}.copyright{text-align:center;border-top:1px solid #333;margin-top:30px;padding-top:18px;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:900px){.room-hero{grid-template-columns:1fr}.room-hero-photo{height:56vh;min-height:390px}.room-hero-copy{padding:60px 25px}.room-copy-grid{grid-template-columns:1fr;gap:55px}.other-grid{grid-template-columns:1fr 1fr}.inn-list{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.wrap{width:min(100% - 30px,680px)}.room-hero-copy h1{font-size:50px}.booking-inner{padding:9px 0 9px 90px}.booking-item{display:none}.booking-action{border:0}.room-body{padding:65px 0}.room-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:230px}.room-gallery figure,.room-gallery figure:nth-child(n){grid-column:auto;grid-row:auto}.room-gallery figure:first-child{grid-column:1/-1}.amenity-section,.other{padding:65px 0}.other-card{height:230px}.footer-grid{grid-template-columns:90px 1fr}.footer-grid .land{grid-column:1/-1}}
@media(max-width:460px){.amenities,.inn-list,.other-grid{grid-template-columns:1fr}.room-gallery{grid-template-columns:1fr;grid-auto-rows:280px}.room-gallery figure:first-child{grid-column:auto}}


/* Guest review band */
.guest-love{position:relative;isolation:isolate;padding:76px 0;background-image:linear-gradient(#17140fd1,#17140fd1),url('/images/welcome/queens-148.webp');background-size:cover;background-position:center 48%;color:#fff;border-top:1px solid #9b8340}
.guest-love-inner{display:grid;grid-template-columns:245px minmax(0,760px);justify-content:center;gap:34px;align-items:center}
.google-review-summary{background:#121312e8;border:1px solid #b49a45;padding:28px 24px;text-align:center;box-shadow:0 12px 30px #0003}
.google-review-summary .kicker{color:#d9c98c;margin-bottom:9px}.review-stars{color:#d8ba56;letter-spacing:.12em;font-size:18px;line-height:1;margin-bottom:11px}
.google-review-summary strong{display:block;color:#fff;font:400 26px/1.2 Georgia,serif}.google-review-summary span{display:block;color:#d7d1c6;font-size:12px;margin:5px 0 18px}
.google-review-summary a{display:inline-block;color:#ecd88f;font-size:10px;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid #8e7a3c;padding-bottom:3px}
.testimonial-slider{text-align:center}.testimonial-slider>h2{color:#fff;font-size:clamp(32px,4vw,48px);margin:0 0 22px}
.testimonial-viewport{position:relative;min-height:220px}.testimonial-slide{display:none;background:#fff;color:#28251f;padding:30px 38px 26px;border-top:2px solid #b49a45;box-shadow:0 14px 35px #0005}
.testimonial-slide.is-active{display:block}.testimonial-slide>p{font:400 17px/1.75 Georgia,serif;margin:0 auto 22px;max-width:650px}.testimonial-author{background:none;border:0;padding:0;color:#645d52}
.testimonial-author strong{display:block;font:700 11px/1.5 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#2e2922}.testimonial-author span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8d8273;margin-top:3px}
.testimonial-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:18px}.testimonial-controls>button{width:38px;height:38px;border:1px solid #c8b675;background:#171817cc;color:#fff;cursor:pointer}
.testimonial-dots{display:flex;gap:7px}.testimonial-dots button{width:8px;height:8px;padding:0;border:1px solid #d5c57d;border-radius:50%;background:transparent;cursor:pointer}.testimonial-dots button.is-active{background:#d5c57d}
.gathering-photo{display:block;min-width:0}.gathering-photo figure{height:100%}.gatherings-filmstrip .gathering-photo img{height:150px}.gatherings-mosaic{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:145px}.gatherings-mosaic .gathering-photo,.gatherings-mosaic .gathering-photo figure{height:100%}.gatherings-mosaic .gathering-photo img{height:100%;object-fit:cover}
.gatherings-mosaic figure:nth-child(1),.gatherings-mosaic figure:nth-child(4),.gatherings-mosaic figure:nth-child(7){grid-column:auto;grid-row:auto}
@media(max-width:780px){.guest-love{padding:52px 0}.guest-love-inner{grid-template-columns:1fr;gap:20px}.google-review-summary{max-width:340px;margin:auto;width:100%}.testimonial-viewport{min-height:250px}.testimonial-slide{padding:25px 22px}.gatherings-filmstrip .gathering-photo img{height:96px}.gatherings-mosaic{grid-auto-rows:110px}}
@media(max-width:440px){.testimonial-slide>p{font-size:16px}.gatherings-filmstrip .gathering-photo img{height:82px}.gatherings-mosaic{grid-auto-rows:94px}}




/* Queen's Inn footer: dark heritage treatment with one oversized crest watermark */
footer{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:430px;
  padding:96px 0 38px;
  background:#111315;
  background-image:none;
  color:#d7d4cc;
  border-top:2px solid #8f792f;
}
footer::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:min(650px,60vw);
  aspect-ratio:1;
  left:50%;
  top:50%;
  transform:translate(-50%,-48%);
  background:url('/images/logo/royal-elegance-of-the-queen-s-inn.webp') center/contain no-repeat;
  opacity:.08;
  filter:grayscale(1) brightness(2.2);
  pointer-events:none;
}
footer .footer-grid{
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:80px;
  align-items:start;
  position:relative;
  z-index:1;
}
footer .footer-logo{display:none}
footer h3{color:#fff;font-size:34px;margin:0 0 16px}
footer a{color:#ece8dc}
footer .footer-grid a{font-size:14px}
footer .footer-grid span{color:#c9c4b9}
footer .land{color:#c5c0b5;font-size:13px;line-height:1.9;margin:0}
footer .footer-nav{
  position:relative;
  z-index:1;
  margin-top:70px;
  padding-top:30px;
  border-top:1px solid #3a3a36;
}
footer .footer-nav a{color:#d4bd6a}
footer .copyright{
  position:relative;
  z-index:1;
  color:#8f8b82;
  border-top:1px solid #333532;
  margin-top:28px;
}
footer .mm-credit{
  position:relative;
  z-index:1;
  color:#9e9a91;
}
footer .mm-credit a{color:#d4bd6a}

/* Subtle parallax on every primary hero image */
.hero,.page-hero,.gatherings-hero,.room-hero-photo{overflow:hidden}
.hero>img,.page-hero>img,.gatherings-hero>img,.room-hero-photo>img{
  will-change:transform;
  transform-origin:center center;
  backface-visibility:hidden;
}
@media(max-width:780px){
  footer{min-height:0;padding:72px 0 30px}
  footer::before{width:520px;max-width:105vw;top:44%;opacity:.065}
  footer .footer-grid{grid-template-columns:1fr;gap:30px}
  footer .footer-grid .land{grid-column:auto}
  footer .footer-nav{margin-top:48px;padding-top:24px}
}
@media(prefers-reduced-motion:reduce){
  .hero>img,.page-hero>img,.gatherings-hero>img,.room-hero-photo>img{transform:none!important;will-change:auto}
}


/* Site-wide thumbnail lightbox affordance */
.photo-grid img,.mosaic img,.room-gallery img,.journey-photos img{
  cursor:zoom-in;
  transition:transform .3s ease,filter .3s ease;
}
.photo-grid img:hover,.mosaic img:hover,.room-gallery img:hover,.journey-photos img:hover{
  transform:scale(1.018);
  filter:brightness(.96);
}
.global-gallery-lightbox .lightbox-image{max-width:100%;object-fit:contain}
@media(prefers-reduced-motion:reduce){
  .photo-grid img,.mosaic img,.room-gallery img,.journey-photos img{transition:none}
}

/* Live-site homepage parity pass */
.journey-single-photo{
  display:block!important;
  min-width:0;
  overflow:hidden;
  background:#111;
}
.journey-single-photo img{
  width:100%!important;
  height:100%!important;
  min-height:470px;
  object-fit:cover!important;
  object-position:center!important;
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.journey-inn .journey-single-photo img{object-position:center 52%!important}
.journey-dining .journey-single-photo img{object-position:center 50%!important}
.journey-island .journey-single-photo img{object-position:center 48%!important}

.meet-host{
  padding:100px 0;
  background:#f5f1e7;
  border-top:1px solid #ded8ca;
}
.meet-host-inner{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);
  gap:78px;
  align-items:center;
}
.meet-host-copy{max-width:720px}
.meet-host-copy h2{
  font-size:clamp(46px,5.4vw,72px);
  margin:0 0 28px;
}
.meet-host-copy p{
  color:#4e4a43;
  font-size:15px;
  line-height:1.9;
}
.meet-host-photo{
  margin:0;
  position:relative;
}
.meet-host-photo:before{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  border:1px solid #a58d39;
  z-index:0;
}
.meet-host-photo img{
  position:relative;
  z-index:1;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center top;
  opacity:1!important;
  filter:none!important;
}
@media(max-width:820px){
  .journey-single-photo img{min-height:340px}
  .meet-host{padding:72px 0}
  .meet-host-inner{grid-template-columns:1fr;gap:38px}
  .meet-host-photo{max-width:560px;margin:auto}
}


/* Shared guest reviews: a moving image layer with a stationary readable overlay. */
.guest-love{overflow:hidden;background-image:none}
.guest-love::before{content:"";position:absolute;inset:-100px 0;z-index:-1;pointer-events:none;background:linear-gradient(#17140fd1,#17140fd1),url('/images/welcome/queens-148.webp') center 48%/cover no-repeat;transform:translate3d(0,var(--review-image-shift,0px),0)}
.testimonial-controls>button{width:44px;height:44px;display:grid;place-items:center}
.testimonial-controls>button svg{width:22px;height:22px}
.testimonial-dots button{min-width:44px;min-height:44px;border:0;background:transparent;position:relative}
.testimonial-dots button::after{content:"";position:absolute;width:7px;height:7px;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid #c8b675;border-radius:50%}
.testimonial-dots button.is-active::after{background:#c8b675}
.testimonial-controls button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.guest-love::before{transform:none!important}}
.testimonial-dots button.is-active{background:transparent}
.testimonial-dots{gap:0}
@media(max-width:780px){.guest-love .guest-love-inner{width:calc(100% - 24px);max-width:none}.testimonial-controls{gap:8px}}
