
:root{--jr3-bg:#101212;--jr3-cream:#ededed;--jr3-blue:#1f5366;--jr3-light:#6fa7b8}.jr3-cabin{width:100%;max-width:100%;margin:0;background:var(--jr3-bg);color:var(--jr3-cream);overflow:hidden;font-family:inherit}.jr3-cabin *{box-sizing:border-box}.jr3-cabin h1,.jr3-cabin h2,.jr3-cabin h3,.jr3-cabin p{margin:0}.jr3-kicker{font:700 11px/1.2 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--jr3-light)}.jr3-media{position:relative;overflow:hidden;background:#111}.jr3-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),opacity .25s}.jr3-haze{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(5,12,14,.05),rgba(5,12,14,.08) 45%,rgba(5,12,14,.64)),linear-gradient(90deg,rgba(5,12,14,.26),transparent 50%,rgba(5,12,14,.13))}.jr3-hero{min-height:clamp(620px,88svh,940px);position:relative;display:flex;align-items:flex-end;padding:clamp(34px,8vw,130px);isolation:isolate}.jr3-hero__media{position:absolute;inset:0}.jr3-hero__media img{transform:scale(1.03)}.jr3-hero:hover img{transform:scale(1.07)}.jr3-hero__media .jr3-haze{background:linear-gradient(90deg,rgba(5,12,14,.82),rgba(5,12,14,.25) 68%),linear-gradient(0deg,rgba(5,12,14,.72),transparent 58%)}.jr3-hero__copy{position:relative;z-index:1;max-width:820px}.jr3-hero h1{font:500 clamp(64px,9.5vw,156px)/.84 Georgia,serif;letter-spacing:-.065em;margin-top:22px}.jr3-hero__copy>p:last-child{max-width:650px;margin-top:30px;font-size:clamp(18px,1.7vw,25px);line-height:1.48}.jr3-details{background:#101212;padding:clamp(64px,7vw,110px) clamp(24px,8vw,120px);border-top:1px solid rgba(111,167,184,.14)}.jr3-details__copy{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;color:rgba(237,237,237,.88)}.jr3-detail-card{position:relative;padding:clamp(28px,3vw,48px);background:linear-gradient(145deg,#172428,#101819 70%);border:1px solid rgba(111,167,184,.18);min-height:190px;box-shadow:0 18px 45px rgba(0,0,0,.18)}.jr3-detail-card:first-child{grid-column:1/-1;background:linear-gradient(110deg,#183746,#102228);min-height:230px}.jr3-detail-card:nth-last-child(1){grid-column:1/-1;background:#0d2229}.jr3-detail-card h3{margin:0 0 18px;color:#ededed;font:500 clamp(27px,2.6vw,42px)/1.04 Georgia,serif;letter-spacing:-.035em}.jr3-detail-card p{margin:0 0 15px;font-size:clamp(17px,1.2vw,20px);line-height:1.62}.jr3-detail-card ul{margin:12px 0 8px;padding:0;list-style:none;display:grid;gap:8px}.jr3-detail-card li{font-size:clamp(16px,1.1vw,19px);line-height:1.45;padding-left:20px;position:relative}.jr3-detail-card li:before{content:;position:absolute;left:0;color:#6fa7b8;font-weight:bold}.jr3-tour{display:block;padding:clamp(72px,10vw,145px) clamp(24px,8vw,130px)}.jr3-tour__intro{text-align:center;max-width:900px;margin:0 auto}.jr3-tour__intro h2,.jr3-reserve h2{font:500 clamp(42px,6vw,90px)/.93 Georgia,serif;letter-spacing:-.06em;margin-top:17px}.jr3-tour__intro>p:last-child{font-size:19px;line-height:1.6;color:rgba(237,237,237,.76);max-width:760px;margin:28px auto 0}.jr3-viewer{margin-top:58px}.jr3-viewer__stage{height:clamp(390px,50vw,650px)}.jr3-viewer__stage .jr3-media{height:100%}.jr3-viewer__stage img.jr3-changing{opacity:.25;transform:scale(1.03)}.jr3-viewer__caption{text-align:center;left:50%;transform:translateX(-50%);white-space:nowrap;position:absolute;bottom:22px;left:24px;z-index:2;font:700 11px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#fff}.jr3-viewer__thumbs{display:grid;grid-template-columns:repeat(8,1fr);gap:7px;margin-top:9px}.jr3-viewer__thumbs button{text-align:center;border:0;background:#171a1a;color:var(--jr3-cream);padding:0 0 9px;text-align:left;cursor:pointer;opacity:.58;transition:opacity .2s,transform .2s}.jr3-viewer__thumbs button:hover,.jr3-viewer__thumbs button.is-active{opacity:1;transform:translateY(-3px)}.jr3-viewer__thumbs img{height:70px;width:100%;object-fit:cover;display:block;margin-bottom:8px}.jr3-viewer__thumbs span{display:block;font:700 9px Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:0 5px}.jr3-reserve{text-align:center;display:block;background:#0d2229;min-height:0}.jr3-reserve__copy{max-width:980px;margin:0 auto;padding:clamp(64px,9vw,120px) clamp(24px,8vw,130px)clamp(62px,9vw,130px);display:flex;flex-direction:column;justify-content:center}.jr3-contact{text-align:left;display:grid;gap:15px;max-width:580px;margin-top:42px}.jr3-contact a{display:flex;gap:24px;align-items:baseline;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:15px;font-size:clamp(21px,2vw,32px);transition:transform .2s,color .2s}.jr3-contact a:hover{transform:translateX(8px);color:#b9d8df}.jr3-contact small{width:48px;color:var(--jr3-light);font:700 10px Arial,sans-serif;letter-spacing:.17em}.jr3-reserve__image{min-height:400px}.jr3-reserve__image img{filter:saturate(.82)}.jr3-cabin [data-jr3-reveal]{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.jr3-cabin [data-jr3-reveal].is-visible{opacity:1;transform:none}body:has(.jr3-cabin){overflow-x:hidden}body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin),body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin)>.sppb-row-container,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin)>.sppb-row-container>.sppb-row,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-row-column,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-column,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-column-addons,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-wrapper,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-module,body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-content{margin:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important}body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin)>.sppb-row-container{max-width:none!important;width:100%!important}
@media(max-width:760px){.jr3-details__copy{display:block}.jr3-detail-card,.jr3-detail-card:first-child,.jr3-detail-card:nth-last-child(1){min-height:0;margin-bottom:14px}.jr3-hero{min-height:650px;padding:30px 24px 72px}.jr3-hero h1{font-size:clamp(64px,18vw,105px)}.jr3-tour{display:block;padding:70px 20px}.jr3-tour__intro{margin-bottom:64px}.jr3-tour__intro h2{font-size:clamp(42px,13vw,64px);line-height:.96}.jr3-viewer__stage{height:340px}.jr3-viewer__thumbs{grid-template-columns:repeat(4,1fr)}.jr3-viewer__thumbs img{height:64px}.jr3-viewer__thumbs span{font-size:8px}.jr3-reserve{display:block}.jr3-reserve__copy{padding:70px 24px 78px}.jr3-reserve__image{height:300px;min-height:0}}
@media(prefers-reduced-motion:reduce){.jr3-cabin [data-jr3-reveal],.jr3-media img{transition:none}}
.jr3-detail-card{overflow:hidden;transition:transform .32s cubic-bezier(.23,1,.32,1),border-color .32s ease,box-shadow .32s ease,background .32s ease}.jr3-detail-card:after{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:#78b6c5;transform:scaleY(0);transform-origin:bottom;transition:transform .32s cubic-bezier(.23,1,.32,1);opacity:.9}.jr3-detail-card:hover,.jr3-detail-card:focus-within{transform:translateY(-7px);border-color:rgba(120,182,197,.55);box-shadow:0 26px 60px rgba(0,0,0,.34),0 0 0 1px rgba(120,182,197,.08) inset;background:linear-gradient(145deg,#1b3035,#101b1d 72%)}.jr3-detail-card:hover:after,.jr3-detail-card:focus-within:after{transform:scaleY(1)}.jr3-detail-card h3{transition:transform .32s cubic-bezier(.23,1,.32,1),color .32s ease}.jr3-detail-card:hover h3,.jr3-detail-card:focus-within h3{transform:translateX(8px);color:#b8dce3}.jr3-detail-card p,.jr3-detail-card li{transition:color .32s ease}.jr3-detail-card:hover p,.jr3-detail-card:hover li,.jr3-detail-card:focus-within p,.jr3-detail-card:focus-within li{color:rgba(245,248,248,.96)}.jr3-detail-card--rates:hover,.jr3-detail-card--plan:hover{background:linear-gradient(125deg,#123642,#0d252c)}.jr3-viewer__stage{transition:box-shadow .4s cubic-bezier(.23,1,.32,1),transform .4s cubic-bezier(.23,1,.32,1)}.jr3-viewer__stage:hover{transform:translateY(-5px);box-shadow:0 28px 70px rgba(0,0,0,.4)}.jr3-viewer__stage:hover img{transform:scale(1.045)}.jr3-viewer__stage img{transition:transform .8s cubic-bezier(.23,1,.32,1)}.jr3-viewer__thumbs button{transition:transform .24s cubic-bezier(.23,1,.32,1),border-color .24s ease,box-shadow .24s ease,opacity .24s ease}.jr3-viewer__thumbs button:hover,.jr3-viewer__thumbs button:focus-visible{transform:translateY(-6px);border-color:#78b6c5;box-shadow:0 12px 24px rgba(0,0,0,.3);opacity:1}.jr3-viewer__thumbs button:hover img,.jr3-viewer__thumbs button:focus-visible img{transform:scale(1.06)}.jr3-viewer__thumbs button img{transition:transform .35s cubic-bezier(.23,1,.32,1)}@media (prefers-reduced-motion:reduce){.jr3-detail-card,.jr3-detail-card:after,.jr3-detail-card h3,.jr3-detail-card p,.jr3-detail-card li,.jr3-viewer__stage,.jr3-viewer__stage img,.jr3-viewer__thumbs button,.jr3-viewer__thumbs button img{transition:none!important}.jr3-detail-card:hover,.jr3-detail-card:focus-within,.jr3-viewer__stage:hover,.jr3-viewer__thumbs button:hover,.jr3-viewer__thumbs button:focus-visible{transform:none!important}.jr3-viewer__stage:hover img,.jr3-viewer__thumbs button:hover img{transform:none!important}}body:has(.jr3-cabin){overflow-x:hidden}.jr3-cabin{width:100%;max-width:none!important}.jr3-cabin .jr3-hero{width:100vw;max-width:none!important;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}body:has(.jr3-cabin) .sppb-addon-module:has(.jr3-cabin),body:has(.jr3-cabin) .sppb-addon-content:has(.jr3-cabin){width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
/* v7 mobile repair: escape every SP Page Builder wrapper, not only the hero. */
html:has(.jr3-cabin),body:has(.jr3-cabin){width:100%;max-width:100%;overflow-x:hidden!important;}
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin),
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin)>.sppb-row-container,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin)>.sppb-row-container>.sppb-row,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-row-column,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-column,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-column-addons,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-wrapper,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-module,
body:has(.jr3-cabin) .sppb-section:has(.jr3-cabin) .sppb-addon-content{
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding-left:0!important;padding-right:0!important;
}
.jr3-cabin{display:block!important;box-sizing:border-box!important;width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;overflow:hidden!important;}
.jr3-cabin *{min-width:0;}
@media(max-width:760px){
  .jr3-hero{min-height:min(88svh,680px);padding:28px 20px 62px;}
  .jr3-hero h1{font-size:clamp(54px,17vw,80px);line-height:.88;margin-top:16px;}
  .jr3-hero__copy>p:last-child{font-size:17px;line-height:1.55;margin-top:22px;}
  .jr3-details{padding:54px 16px 18px;}
  .jr3-details__copy{width:100%;gap:12px;}
  .jr3-detail-card,.jr3-detail-card:first-child,.jr3-detail-card:nth-last-child(1){padding:25px 20px;min-height:0;margin-bottom:0;}
  .jr3-detail-card h3{font-size:clamp(25px,7.4vw,34px);line-height:1.02;margin-bottom:14px;}
  .jr3-detail-card p{font-size:16px;line-height:1.58;margin-bottom:12px;}
  .jr3-detail-card li{font-size:15px;line-height:1.45;}
  .jr3-tour{padding:62px 16px 70px;}
  .jr3-tour__intro{margin-bottom:42px;}
  .jr3-tour__intro h2{font-size:clamp(42px,13vw,62px);}
  .jr3-tour__intro>p:last-child{font-size:17px;line-height:1.58;margin-top:20px;}
  .jr3-viewer{margin-top:0;}
  .jr3-viewer__stage{height:min(92vw,380px);}
  .jr3-viewer__caption{left:18px;bottom:16px;white-space:normal;transform:none;font-size:10px;}
  .jr3-viewer__thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px;}
  .jr3-viewer__thumbs button{padding-bottom:9px;min-height:0;}
  .jr3-viewer__thumbs img{height:110px;margin-bottom:7px;}
  .jr3-viewer__thumbs span{font-size:10px;letter-spacing:.06em;padding:0 8px;}
  .jr3-reserve__copy{padding:58px 20px 68px;}
  .jr3-reserve__image{height:270px;min-height:0;}
}
@media(max-width:380px){
  .jr3-hero{padding-left:17px;padding-right:17px;}
  .jr3-hero h1{font-size:clamp(50px,16.5vw,68px);}
  .jr3-viewer__thumbs img{height:96px;}
}

/* v9 room presentation: make the three requested rooms visible and never crop their photos. */
.jr3-room-cards{background:#0d2229;padding:clamp(60px,8vw,120px) clamp(16px,6vw,90px);}
.jr3-room-cards__intro{max-width:900px;margin:0 auto clamp(32px,5vw,60px);text-align:center;}
.jr3-room-cards__intro h2{font:500 clamp(40px,5.5vw,78px)/.95 Georgia,serif;letter-spacing:-.055em;margin-top:16px;}
.jr3-room-cards__grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.jr3-room-card{margin:0;background:#101819;border:1px solid rgba(111,167,184,.25);overflow:hidden;}
.jr3-room-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#080d0e;}
.jr3-room-card figcaption{padding:17px 18px 20px;color:#ededed;font:500 21px/1.15 Georgia,serif;}
.jr3-viewer__stage{height:auto!important;aspect-ratio:4/3;background:#080d0e;}
.jr3-viewer__stage img{object-fit:contain!important;background:#080d0e;}
@media(max-width:760px){.jr3-room-cards{padding:58px 16px 64px}.jr3-room-cards__intro{text-align:left;margin-bottom:28px}.jr3-room-cards__intro h2{font-size:clamp(40px,12vw,60px)}.jr3-room-cards__grid{grid-template-columns:1fr;gap:12px}.jr3-room-card img{aspect-ratio:4/3}.jr3-room-card figcaption{font-size:20px}.jr3-viewer__stage{aspect-ratio:4/3;height:auto!important}}

/* v10: keep the existing gallery; preserve the complete room photos in its thumbnails. */
.jr3-viewer__thumbs button img{object-fit:contain!important;background:#080d0e;}
.jr3-viewer__thumbs button[data-jr3-photo="cabin-main-bedroom.jpg"] img{object-position:center center;}

/* v11 gallery balance: nine equal desktop cells, full image holders, intentional bedroom framing. */
.jr3-viewer__thumbs{grid-template-columns:repeat(9,minmax(0,1fr));gap:12px;align-items:stretch;}
.jr3-viewer__thumbs button{width:100%;min-width:0;display:block;overflow:hidden;}
.jr3-viewer__thumbs img{width:100%;height:clamp(120px,11vw,180px)!important;object-fit:cover!important;background:#101819;}
.jr3-viewer__thumbs button[data-jr3-photo="cabin-main-bedroom.jpg"] img{object-position:center 68%;}
.jr3-viewer__thumbs span{min-height:28px;display:flex;align-items:center;}
@media(max-width:1000px){.jr3-viewer__thumbs{grid-template-columns:repeat(5,minmax(0,1fr));}.jr3-viewer__thumbs img{height:110px!important;}}
@media(max-width:760px){.jr3-viewer__thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jr3-viewer__thumbs img{height:128px!important}.jr3-viewer__thumbs span{min-height:30px;font-size:10px;}}

/* v12: ten-room gallery — five balanced desktop columns across two rows. */
.jr3-viewer__thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:stretch;}
.jr3-viewer__thumbs img{height:clamp(150px,13vw,210px)!important;object-fit:cover!important;}
.jr3-viewer__thumbs button[data-jr3-photo="cabin-main-bedroom.jpg"] img{object-position:center 68%;}
@media(max-width:1000px){.jr3-viewer__thumbs{grid-template-columns:repeat(4,minmax(0,1fr));}.jr3-viewer__thumbs img{height:135px!important;}}
@media(max-width:760px){.jr3-viewer__thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jr3-viewer__thumbs img{height:128px!important;}}
