:root{--ink:#0e0c09;--cream:#f5f0e8;--warm:#e8dece;--gold:#c9a84c;--rust:#8b4513;--green:#2d6a4f;--text:#2a2218;--muted:#7a6e62;--border:rgba(201,168,76,.22);--card:#fffdf9;--shadow:0 4px 24px rgba(14,12,9,.09);--radius:10px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--text)}.page-wrap{max-width:1160px;margin:0 auto;padding:2rem 1.5rem 5rem}.breadcrumb{font-size:.72rem;color:var(--muted);margin-bottom:1.2rem;display:flex;align-items:center;gap:.4rem}.breadcrumb a{color:var(--muted);text-decoration:none}.breadcrumb a:hover{color:var(--gold)}.breadcrumb i{font-size:.55rem}.content-grid{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start}@media(max-width:900px){.content-grid{grid-template-columns:1fr}.booking-panel{position:static;top:auto;margin-top:2.25rem}}.gallery{margin-bottom:1.8rem}.gallery-main{position:relative;border-radius:var(--radius);overflow:hidden;height:440px;background:var(--warm)}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-badge{position:absolute;top:1rem;left:1rem;background:var(--rust);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.28rem .7rem;border-radius:3px}.room-header{margin-bottom:1.4rem}.room-type-label{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.4rem}.room-title{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:400;color:var(--ink);line-height:1.15;margin-bottom:.8rem}.room-quick-facts{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:1rem}.fact-chip{display:flex;align-items:center;gap:.4rem;background:var(--warm);border-radius:100px;padding:.3rem .9rem;font-size:.75rem;color:var(--text)}.fact-chip i{color:var(--gold);font-size:.7rem}.section-divider{border:0;border-top:1px solid var(--border);margin:1.6rem 0}.section-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;color:var(--ink);margin-bottom:.8rem}.room-desc{font-size:.9rem;line-height:1.75;color:var(--muted)}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem}.amenity-item{display:flex;align-items:center;gap:.6rem;padding:.7rem .9rem;background:#fff;border:1px solid var(--border);border-radius:8px;font-size:.82rem;color:var(--text)}.amenity-item i{color:var(--gold);width:16px;text-align:center;font-size:.85rem}.policies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.policy-item{display:flex;gap:.7rem;align-items:flex-start}.policy-icon{width:36px;height:36px;border-radius:50%;background:rgba(201,168,76,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.policy-icon i{color:var(--gold);font-size:.85rem}.policy-text h6{font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:.15rem}.policy-text p{font-size:.75rem;color:var(--muted);line-height:1.4}.booking-panel{position:sticky;top:58px}.panel-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-head{background:linear-gradient(135deg,#d8b866,var(--gold) 55%,#b8944a);color:var(--ink);padding:1.3rem 1.4rem}.panel-head-eyebrow{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;opacity:.65;margin-bottom:.35rem;font-weight:700}.panel-price-row{display:flex;align-items:baseline;gap:.5rem}.panel-price{font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:600}.panel-price-unit{font-size:.75rem;opacity:.7}.panel-original{font-size:.85rem;text-decoration:line-through;opacity:.5;margin-top:.1rem}.panel-savings{display:inline-block;background:var(--rust);color:#fff;font-size:.62rem;font-weight:700;padding:.15rem .5rem;border-radius:3px;margin-top:.4rem;letter-spacing:.06em;text-transform:uppercase}.panel-body{padding:1.4rem}.panel-dates{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1rem}.panel-date-field{border:1.5px solid var(--border);border-radius:8px;padding:.7rem 1rem;cursor:pointer;transition:border-color .15s}.panel-date-field:hover{border-color:var(--gold)}.panel-date-label{font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.2rem}.panel-date-val{font-size:.88rem;font-weight:600;color:var(--ink)}.panel-date-val.empty{color:var(--muted);font-weight:400}.panel-nights-strip{text-align:center;font-size:.72rem;color:var(--muted);padding:.4rem;background:var(--warm);border-radius:6px;margin-bottom:1rem}.panel-guests{border:1.5px solid var(--border);border-radius:8px;padding:.7rem 1rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.panel-guests-label{font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.2rem}.panel-guests-val{font-size:.88rem;font-weight:600;color:var(--ink)}.kids-free-note{font-size:.68rem;color:var(--green);margin-top:.1rem}.price-breakdown{background:var(--warm);border-radius:8px;padding:1rem;margin-bottom:1rem;font-size:.82rem}.price-line{display:flex;justify-content:space-between;padding:.25rem 0;color:var(--text)}.price-line.sep{border-top:1px solid var(--border);margin-top:.4rem;padding-top:.6rem;font-weight:700;font-size:.9rem}.price-line.promo{color:var(--rust);font-weight:600}.price-line.extra{color:#2563eb}.extra-notice{background:rgba(37,99,235,.06);border:1px solid rgba(37,99,235,.2);border-radius:6px;padding:.6rem .8rem;font-size:.72rem;color:#1e40af;display:flex;gap:.5rem;align-items:flex-start;margin-bottom:.8rem}.btn-book-now{width:100%;padding:1rem;background:var(--gold);color:var(--ink);border:0;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .2s,transform .15s;display:flex;align-items:center;justify-content:center;gap:.6rem;text-decoration:none;margin-bottom:.7rem}.btn-book-now:hover{background:#d4aa40;transform:translateY(-1px)}.btn-contact{width:100%;padding:.75rem;background:transparent;color:var(--ink);border:1.5px solid var(--border);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;transition:border-color .15s;text-align:center;text-decoration:none;display:block}.btn-contact:hover{border-color:var(--gold)}.trust-row{display:flex;justify-content:center;gap:1.2rem;margin-top:.8rem;font-size:.65rem;color:var(--muted);flex-wrap:wrap}.trust-row span{display:flex;align-items:center;gap:.25rem}.trust-row i{color:var(--green);font-size:.7rem}.no-dates-prompt{text-align:center;padding:1.6rem 1.2rem;font-size:.85rem;color:var(--muted);background:var(--warm);border-radius:8px;margin-bottom:1rem}.no-dates-prompt p{margin:0 0 1rem}.no-dates-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.3rem;border:1.5px solid var(--gold);border-radius:8px;color:var(--ink);background:transparent;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-decoration:none;transition:background .2s,color .2s}.no-dates-btn:hover{background:var(--gold);color:var(--ink)}.other-rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.2rem;margin-top:1rem}.other-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--text);box-shadow:0 2px 10px rgba(14,12,9,.05);transition:transform .2s;display:block}.other-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.other-card img{width:100%;height:150px;object-fit:cover}.other-card-body{padding:.9rem}.other-card-name{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;margin-bottom:.25rem}.other-card-meta{font-size:.72rem;color:var(--muted)}.lightbox{display:none;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.92);align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox-img{max-width:92vw;max-height:88vh;border-radius:8px;object-fit:contain}.lightbox-close{position:absolute;top:1.2rem;right:1.5rem;color:#fff;font-size:1.6rem;cursor:pointer;opacity:.7;transition:opacity .15s}.lightbox-close:hover{opacity:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:2rem;cursor:pointer;opacity:.6;transition:opacity .15s;background:0;border:0;padding:.5rem 1rem}.lightbox-nav:hover{opacity:1}.lightbox-nav.prev{left:1rem}.lightbox-nav.next{right:1rem}.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);color:#fff;font-size:.78rem;opacity:.7}@media(max-width:768px){.gallery-main{height:280px}.gallery-thumbs{grid-template-columns:repeat(3,1fr)}.page-wrap{padding:1.2rem 1rem 4rem}.room-title{font-size:1.7rem}.site-header{padding:1rem 1.2rem}.amenities-grid{grid-template-columns:1fr 1fr}}
/* safety: the promo badge only belongs inside the photo; never let it float to the top of the page */
:not(.gallery-main)>.gallery-badge,body .gallery-badge:not(.gallery-main .gallery-badge){display:none!important}
