/* Photo-led amenity guide; scoped to its own route so homepage and Gallery styles stay independent. */
.amenity-guide-page{background:#f3f5f5}
.amenity-guide-page .site-header{background:#f3f5f5}
.amenity-guide-page .guide-active{color:#23282d;font-weight:700}
.amenity-guide-main{padding:0 0 48px}
.guide-hero{padding:42px 0 22px;border-bottom:1px solid #dce2e4}
.guide-kicker,.guide-eyebrow,.guide-floor-label{margin:0;color:#7a858b;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.guide-hero h1{margin:7px 0 5px;color:#20262a;font-size:clamp(34px,4vw,46px);font-weight:680;letter-spacing:-.05em;line-height:1.08}
.guide-deck{max-width:700px;margin:0;color:#5c686e;font-size:15px;line-height:1.55}
.guide-jump-nav{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 25px;padding:0 0 16px;border-bottom:1px solid #dce2e4}
.guide-jump-nav a{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border:1px solid #d6dddf;border-radius:999px;background:#fff;color:#34434a;font-size:10px;font-weight:620;white-space:nowrap}
.guide-jump-nav a:hover{border-color:#aebbc0;background:#f8f9f9}
.guide-basics{margin:0 0 36px;padding:21px;border:1px solid #dbe1e3;border-radius:10px;background:#fff}
.guide-section-heading,.guide-level-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}
.guide-section-heading h2,.guide-level-heading h2{margin:4px 0 0;color:#20262a;font-size:clamp(22px,2.4vw,28px);font-weight:610;letter-spacing:-.04em;line-height:1.18}
.guide-section-heading>p,.guide-level-heading>p{max-width:420px;margin:0;color:#778187;font-size:11px;line-height:1.5;text-align:right}
.guide-basics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.guide-basic-card{display:grid;grid-template-columns:27px minmax(0,1fr);gap:10px;align-content:start;min-width:0;padding:14px;border:1px solid #e1e6e7;border-radius:7px;background:#fafbfb}
.guide-number{color:#869197;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}
.guide-basic-card h3{margin:0 0 5px;color:#28343a;font-size:13px;font-weight:680;letter-spacing:-.02em}
.guide-basic-card p{margin:0;color:#606c72;font-size:10.5px;line-height:1.55}
.guide-basic-card p+p{margin-top:7px}
.guide-basic-card a,.guide-contact-note a,.guide-fitness-note a{color:#236c9f;font-weight:650;text-decoration:underline;text-underline-offset:2px}
.guide-contact{font-variant-numeric:tabular-nums}
.guide-level{margin-top:35px;scroll-margin-top:20px}
.guide-level-heading{align-items:end;margin-bottom:13px;padding-bottom:10px;border-bottom:1px solid #dce2e4}
.guide-level-heading h2{font-size:24px}
.guide-level-heading .guide-eyebrow{color:#6f7b81}
.guide-room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.guide-room{min-width:0;padding:16px 17px 15px;border:1px solid #dfe4e6;border-radius:8px;background:#fff;scroll-margin-top:18px}
.guide-room-wide,.guide-room-detailed{grid-column:1/-1}
.guide-room-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.guide-room-heading>div{min-width:0}
.guide-floor-label{display:block;margin-bottom:4px;font-size:7.5px;color:#899398}
.guide-room-heading h3{margin:0;color:#242d32;font-size:17px;font-weight:650;letter-spacing:-.035em;line-height:1.22}
.guide-status{display:inline-flex;align-items:center;flex:none;padding:4px 8px;border:1px solid #d9e0e1;border-radius:999px;color:#48565d;background:#f7f8f8;font-size:8px;font-weight:650;line-height:1.2;white-space:nowrap}
.guide-status-dropin{border-color:#d8e3db;background:#f1f6f2;color:#4a5c50}
.guide-status-reserved{border-color:#d6e0e4;background:#f2f6f7;color:#465b65}
.guide-room-lede{margin:-5px 0 12px;color:#5c686e;font-size:10px;font-weight:620;letter-spacing:.01em}
.guide-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 13px;margin:0}
.guide-facts>div{min-width:0;padding:8px 9px;border-radius:5px;background:#f6f8f8}
.guide-facts dt{margin:0 0 3px;color:#849096;font-size:8px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.guide-facts dd{margin:0;color:#455159;font-size:10px;line-height:1.5}
.guide-facts dd strong{color:#29363c;font-weight:700}
.guide-rules{margin:10px 0 0;padding-left:16px;color:#59666d;font-size:10px;line-height:1.55}
.guide-rules li+li{margin-top:4px}
.guide-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.guide-detail-grid section{min-width:0;padding:11px 12px;border:1px solid #e5e9ea;border-radius:6px;background:#fbfcfc}
.guide-detail-grid h4{margin:0;color:#334149;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.guide-detail-grid .guide-rules{margin-top:6px}
.guide-contact-note{margin:0;color:#4e5b62;font-size:12px;line-height:1.6}
.guide-unlisted-note{margin:8px 0 0;color:#778187;font-size:9px;line-height:1.5}
.guide-fitness{margin-top:42px}
.guide-fitness-note{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 12px;padding:13px 15px;border:1px solid #dfe5e7;border-radius:7px;background:#fff}
.guide-fitness-note p{margin:0;color:#58666d;font-size:10.5px;line-height:1.58}
.guide-fitness-note strong{color:#303c42;font-weight:680}
.guide-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.guide-class{min-width:0;padding:13px 14px;border:1px solid #e0e5e7;border-radius:7px;background:#fff}
.guide-class header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.guide-class h3{margin:0;color:#2b363c;font-size:12px;font-weight:680;line-height:1.35}
.guide-class header span{flex:none;color:#768288;font-size:8px;font-weight:600;white-space:nowrap}
.guide-class p{margin:7px 0 0;color:#606c72;font-size:10px;line-height:1.55}
.guide-source-note{margin-top:28px;padding:13px 15px;border-left:2px solid #bdcbd1;background:#edf1f2;color:#5e6a70;font-size:10px;line-height:1.6}
.guide-source-note strong{color:#354249}
.guide-back-link{margin:16px 0 0;font-size:10px}
.guide-back-link a{color:#286f9d;font-weight:650;text-decoration:underline;text-underline-offset:2px}
.guide-footer{margin-top:0}
@media(max-width:840px){
  .guide-basics-grid{grid-template-columns:1fr}
  .guide-basic-card{grid-template-columns:25px minmax(0,1fr)}
}
@media(max-width:620px){
  .amenity-guide-main{padding-bottom:28px}
  .guide-hero{padding:27px 0 17px}
  .guide-hero h1{font-size:32px}
  .guide-deck{font-size:12px}
  .guide-jump-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:12px;scrollbar-width:thin}
  .guide-jump-nav a{min-height:30px;padding:0 9px;font-size:9px}
  .guide-basics{margin-bottom:27px;padding:14px}
  .guide-section-heading,.guide-level-heading{align-items:flex-start;flex-direction:column;gap:5px}
  .guide-section-heading>p,.guide-level-heading>p{font-size:10px;text-align:left}
  .guide-level{margin-top:28px}
  .guide-level-heading h2{font-size:21px}
  .guide-room-list{grid-template-columns:minmax(0,1fr);gap:9px}
  .guide-room-wide,.guide-room-detailed{grid-column:auto}
  .guide-room{padding:13px 12px}
  .guide-room-heading{align-items:flex-start;margin-bottom:10px;gap:7px}
  .guide-room-heading h3{font-size:15px}
  .guide-status{padding:4px 6px;font-size:7px}
  .guide-facts{grid-template-columns:minmax(0,1fr);gap:6px}
  .guide-facts>div{padding:7px 8px}
  .guide-facts dd,.guide-rules{font-size:10px}
  .guide-detail-grid{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:9px}
  .guide-fitness{margin-top:31px}
  .guide-fitness-note{grid-template-columns:minmax(0,1fr);gap:8px;padding:11px 12px}
  .guide-class-grid{grid-template-columns:minmax(0,1fr);gap:8px}
  .guide-class{padding:11px 12px}
  .guide-class h3{font-size:11px}
  .guide-class p{font-size:9.5px}
  .guide-source-note{margin-top:22px;font-size:9px}
}
@media print{
  .amenity-guide-page{background:#fff}
  .site-header,.guide-jump-nav,.guide-back-link,.site-footer{display:none!important}
  .amenity-guide-main{width:100%;padding:0}
  .guide-room,.guide-class,.guide-basic-card{break-inside:avoid;box-shadow:none}
  .guide-level{break-before:auto}
  .guide-room-list,.guide-class-grid{gap:7px}
  a{color:inherit;text-decoration:none}
}

/* Match the homepage: on mobile keep every navigation action visible. */
@media(max-width:620px){
  .amenity-guide-page .site-header{min-height:0;flex-wrap:wrap;justify-content:flex-start;gap:5px;padding:8px 0 7px}
  .amenity-guide-page .brand{flex:0 0 100%;margin-bottom:1px}
  .amenity-guide-page .primary-nav{width:100%;max-width:none;flex:0 0 100%;justify-content:flex-start;gap:10px;overflow:visible;font-size:8px}
  .amenity-guide-page .primary-nav a{flex:0 0 auto;white-space:nowrap;font-size:8px}
  .amenity-guide-page .primary-nav .portal-link{font-size:7.5px!important}
  .amenity-guide-page .primary-nav .gallery-nav-link{padding:4px 6px!important;font-size:7px!important}
}
@media(max-width:370px){
  .amenity-guide-page .primary-nav{gap:7px}
  .amenity-guide-page .primary-nav a{font-size:7px}
  .amenity-guide-page .primary-nav .portal-link{font-size:6.7px!important}
  .amenity-guide-page .primary-nav .gallery-nav-link{padding:3px 4px!important;font-size:6.2px!important}
}


/* Each amenity guide card pairs a consistently cropped property photo with its rules. */
.guide-room{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(0,1.28fr);column-gap:14px;row-gap:0;align-items:start}
.guide-room-heading{grid-column:1/-1;margin-bottom:10px}
.guide-room-media{grid-column:1;grid-row:2;display:block;width:100%;aspect-ratio:1.35/1;margin:0;overflow:hidden;border-radius:6px;background:#edf1f2}
.guide-room-media img{display:block;width:100%;height:100%;object-fit:cover}
.guide-room-content{grid-column:2;grid-row:2;min-width:0}
.guide-room-content .guide-facts{grid-template-columns:minmax(0,1fr)}
.guide-room-detailed .guide-room-content .guide-facts,.guide-room-wide .guide-room-content .guide-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.guide-room-media--aquatic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1.15fr .85fr;gap:4px}
.guide-room-media--aquatic img:first-child{grid-column:1/-1}
@media(max-width:920px){
  .guide-room-list{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:620px){
  .guide-room{grid-template-columns:minmax(0,1fr);row-gap:0}
  .guide-room-heading{grid-column:1;grid-row:auto}
  .guide-room-media{grid-column:1;grid-row:auto;aspect-ratio:16/9;margin:0 0 11px}
  .guide-room-content{grid-column:1;grid-row:auto}
  .guide-room-detailed .guide-room-content .guide-facts,.guide-room-wide .guide-room-content .guide-facts{grid-template-columns:minmax(0,1fr)}
  .guide-room-media--aquatic{aspect-ratio:16/10}
}
@media print{
  .guide-room-media{break-inside:avoid}
}

@media(min-width:621px){.guide-room{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:1050px){.guide-room-list{grid-template-columns:minmax(0,1fr)}}


/* Consolidate amenity facts into one calm panel instead of a stack of boxed tiles. */
.guide-room-content .guide-facts{
  gap:0;
  padding:8px 10px;
  border:1px solid #e2e7e9;
  border-radius:6px;
  background:#f8f9f9;
}
.guide-room-content .guide-facts>div{padding:5px 0;border-radius:0;background:transparent}
.guide-room-content .guide-facts>div+div{border-top:1px solid #e5eaeb}
.guide-room-content .guide-facts dt{margin:0 0 2px;font-size:7.5px;line-height:1.2}
.guide-room-content .guide-facts dd{font-size:10px;line-height:1.35}
.guide-room-detailed .guide-room-content .guide-facts>div+div,
.guide-room-wide .guide-room-content .guide-facts>div+div{border-top:0}
.guide-room-detailed .guide-room-content .guide-facts>div:nth-child(2n),
.guide-room-wide .guide-room-content .guide-facts>div:nth-child(2n){padding-left:12px;border-left:1px solid #e5eaeb}
.guide-room-detailed .guide-room-content .guide-facts>div:nth-child(n+3),
.guide-room-wide .guide-room-content .guide-facts>div:nth-child(n+3){padding-top:7px;border-top:1px solid #e5eaeb}

/* Wide private-room cards use one information panel with quiet internal separators. */
.guide-room-detailed .guide-room-content{padding:8px 10px;border:1px solid #e2e7e9;border-radius:6px;background:#f8f9f9}
.guide-room-detailed .guide-room-content .guide-facts{padding:0 0 8px;border:0;border-radius:0;background:transparent}
.guide-detail-grid{gap:0;margin-top:0;padding:8px 0 0;border:0;border-top:1px solid #e5eaeb;border-radius:0;background:transparent}
.guide-detail-grid section{padding:0;border:0;background:transparent}
.guide-detail-grid section+section{padding-left:13px;border-left:1px solid #e5eaeb}
.guide-detail-grid h4{font-size:9px}
.guide-detail-grid .guide-rules{margin-top:5px;line-height:1.42}
.guide-detail-grid .guide-rules li+li{margin-top:3px}

@media(max-width:620px){
  .guide-room-content .guide-facts{padding:7px 9px}
  .guide-room-content .guide-facts>div{padding:4px 0}
  .guide-room-content .guide-facts dd{font-size:10px;line-height:1.4}
  .guide-room-detailed .guide-room-content .guide-facts>div+div,
  .guide-room-wide .guide-room-content .guide-facts>div+div{padding-top:4px;border-top:1px solid #e5eaeb}
  .guide-room-detailed .guide-room-content .guide-facts>div:nth-child(2n),
  .guide-room-wide .guide-room-content .guide-facts>div:nth-child(2n){padding-left:0;border-left:0}
  .guide-room-detailed .guide-room-content .guide-facts>div:nth-child(n+3),
  .guide-room-wide .guide-room-content .guide-facts>div:nth-child(n+3){padding-top:4px}
  .guide-room-detailed .guide-room-content{padding:7px 9px}
  .guide-room-detailed .guide-room-content .guide-facts{padding-bottom:7px}
  .guide-detail-grid{grid-template-columns:minmax(0,1fr);padding:7px 0 0}
  .guide-detail-grid section+section{margin-top:8px;padding:8px 0 0;border-top:1px solid #e5eaeb;border-left:0}
}
