:root{--ink:#0e0c09;--cream:#f5f0e8;--warm:#e8dece;--gold:#c9a84c;--gold-lt:#e8c96a;--rust:#8b4513;--gold-text:#7a5f16;--text:#2a2218;--muted:#6f6357;--green:#2d6a4f;--card-bg:#fffdf9;--border:rgba(201,168,76,.25);--shadow:0 8px 40px rgba(14,12,9,.12);--radius:10px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@font-face{font-family:'Font Awesome 6 Free';font-style:normal;font-weight:900;font-display:swap;src:url('../vendor/fontawesome/webfonts/fa-solid-900.woff2') format('woff2')}@font-face{font-family:'Font Awesome 6 Brands';font-style:normal;font-weight:400;font-display:swap;src:url('../vendor/fontawesome/webfonts/fa-brands-400.woff2') format('woff2')}body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--text);min-height:100vh;overflow-x:hidden}body::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3CsvgviewBox='00200200'xmlns='http://www.w3.org/2000/svg'%3E%3Cfilterid='n'%3E%3CfeTurbulencetype='fractalNoise'baseFrequency='.9'numOctaves='4'stitchTiles='stitch'/%3E%3C/filter%3E%3Crectwidth='100%25'height='100%25'filter='url(%23n)'opacity='.03'/%3E%3C/svg%3E");background-size:200px;opacity:.4}.ticker{background:var(--ink);color:var(--gold);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;overflow:hidden;height:34px;display:flex;align-items:center;position:relative;z-index:10}.ticker-inner{display:flex;white-space:nowrap;animation:ticker 30s linear infinite;will-change:transform;backface-visibility:hidden}.ticker-inner span{padding:0 3rem}.ticker-inner span::before{content:'';margin-right:.8rem;opacity:.6}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}.site-header{display:none}.hero-logo{position:absolute;top:1.4rem;left:2rem;z-index:10}.hero-logo img{height:54px;width:auto;filter:brightness(0) invert(1);opacity:.92}@media(max-width:600px){.hero-logo{top:1rem;left:1.2rem}.hero-logo img{height:40px}}#pre-search{display:block}#post-search{display:none}.hero{position:relative;z-index:1;text-align:center;padding:4rem 1.5rem 4.5rem;background:#0e0c09;overflow:hidden;min-height:clamp(520px,68vh,760px);display:flex;flex-direction:column;justify-content:center}.hero-bg{position:absolute;inset:0;z-index:0;background-image:radial-gradient(circle at 50% 30%,#2a2115 0,#0e0c09 70%),linear-gradient(135deg,#1a140b,#0e0c09);opacity:.9}.hero-content{position:relative;z-index:2}.hero-eyebrow{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem}.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4.2vw,3.4rem);font-weight:300;line-height:1.12;color:#fff;margin-bottom:.5rem}.hero h1 em{font-style:italic;color:var(--gold)}.hero-sub{font-size:.88rem;color:rgba(255,255,255,.72);margin-bottom:2.5rem}.hero-slide{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity 1.8s ease}.hero-slide.active{opacity:1}.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,12,9,.58) 0,rgba(14,12,9,.78) 100%),radial-gradient(ellipse at center,rgba(14,12,9,.3) 0%,rgba(14,12,9,0) 62%)}.hero-slide-text{display:none}.hero-slide-text.active{display:block;animation:heroFadeUp .7s ease}@keyframes heroFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-slide-btn{display:inline-block;margin-top:.5rem;background:var(--gold);color:var(--ink);padding:.7rem 1.7rem;border-radius:4px;text-decoration:none;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .2s}.hero-slide-btn:hover{background:var(--gold-lt)}.hero-dots{position:relative;z-index:2;display:flex;justify-content:center;gap:0;margin-top:1.2rem}.hero-dot{position:relative;width:24px;height:24px;background:none;border:0;cursor:pointer;padding:0}.hero-dot::before{content:"";position:absolute;top:8px;left:8px;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3);transition:background .2s,transform .2s}.hero-dot.active::before{background:var(--gold);transform:scale(1.3)}.search-widget{position:relative;z-index:20;max-width:1140px;margin:-5.5rem auto 0;padding:0 1.2rem 3rem}.search-card{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 48px rgba(14,12,9,.13);overflow:visible;position:relative}.search-grid{display:grid;grid-template-columns:1.1fr 1.1fr 1fr auto;align-items:stretch}.sf{display:flex;flex-direction:column;justify-content:center;padding:1.2rem 1.4rem;border-right:1px solid var(--border);cursor:pointer;position:relative;transition:background .15s;user-select:none}.sf:hover,.sf.sf-active{background:rgba(201,168,76,.05)}.sf.sf-active{box-shadow:inset 0 -3px 0 var(--gold)}.sf-label{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);font-weight:600;margin-bottom:.3rem;display:flex;align-items:center;gap:.35rem}.sf-value{font-size:.94rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sf-value.placeholder{color:var(--muted);font-weight:400}.sf-sub{font-size:.68rem;color:var(--muted);margin-top:.12rem;line-height:1.3;min-height:1.3em}.search-btn{background:var(--ink);color:var(--gold);border:0;padding:0 2rem;font-family:'DM Sans',sans-serif;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:background .2s,color .2s;white-space:nowrap;display:flex;align-items:center;gap:.6rem;min-width:130px;justify-content:center;border-radius:0 var(--radius) var(--radius) 0}.search-btn:hover{background:var(--gold);color:var(--ink)}.guest-panel{position:relative}.guest-dropdown{display:none;position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.2rem 1.4rem;width:270px;z-index:500}.guest-dropdown.open{display:block}.guest-row{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-bottom:1px solid rgba(201,168,76,.12)}.guest-row:last-of-type{border-bottom:0}.guest-info .guest-info-title{display:block;font-size:.85rem;font-weight:600;color:var(--ink);margin-bottom:.1rem}.guest-info small{font-size:.7rem;color:var(--muted)}.counter-btns{display:flex;align-items:center;gap:.65rem}.counter-btn{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--border);background:#fff;color:var(--ink);font-size:1rem;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;line-height:1}.counter-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.counter-btn:disabled{opacity:.3;cursor:not-allowed}.counter-num{font-size:.95rem;font-weight:700;min-width:20px;text-align:center}.kids-note{margin-top:.9rem;padding:.55rem .8rem;background:rgba(201,168,76,.08);border-radius:6px;font-size:.7rem;color:var(--muted);line-height:1.45}.kids-note strong{color:var(--rust)}.guest-done-btn{width:100%;margin-top:.9rem;padding:.55rem;background:var(--ink);color:var(--gold);border:0;border-radius:6px;cursor:pointer;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;transition:background .15s,color .15s}.guest-done-btn:hover{background:var(--gold);color:var(--ink)}.extra-guest-notice{border-top:1px solid rgba(139,69,19,.15);padding:.65rem 1.4rem;font-size:.74rem;color:var(--rust);display:none;align-items:center;gap:.5rem}.extra-guest-notice.show{display:flex}.promo-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem}.promo-pill{display:inline-flex;align-items:center;gap:.4rem;background:rgba(201,168,76,.1);border:1px solid rgba(201,168,76,.3);border-radius:100px;padding:.28rem .85rem;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rust);font-weight:500}.promo-pill i{font-size:.6rem;color:var(--gold)}.cal-panel{display:none;background:#fff;border:1.5px solid var(--border);border-top:0;box-shadow:0 24px 60px rgba(14,12,9,.18);padding:0}.cal-panel.open{display:block}#pre-search .cal-panel{position:absolute;top:100%;left:0;right:0;border-radius:0 0 var(--radius) var(--radius);z-index:300}#post-search .cal-panel{position:relative;border-radius:0;border-left:0;border-right:0}.cal-top-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.6rem .8rem;border-bottom:1px solid rgba(201,168,76,.15);background:var(--cream)}.cal-top-hint{font-size:.8rem;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:.5rem}.cal-top-hint i{color:var(--gold)}.cal-top-actions{display:flex;align-items:center;gap:.8rem}.cal-nav-pair{display:flex;gap:.3rem}.cal-nav{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.72rem;color:var(--muted);transition:all .15s}.cal-nav:hover{border-color:var(--gold);color:var(--gold);background:rgba(201,168,76,.06)}.cal-search-btn{background:var(--ink);color:var(--gold);border:0;border-radius:6px;padding:.5rem 1.2rem;font-family:'DM Sans',sans-serif;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:background .15s,color .15s;display:flex;align-items:center;gap:.4rem}.cal-search-btn:hover:not(:disabled){background:var(--gold);color:var(--ink)}.cal-search-btn:disabled{background:var(--warm);color:var(--muted);cursor:not-allowed}.cal-reset-link{font-size:.72rem;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.cal-reset-link:hover{color:var(--rust)}.cal-months-wrap{display:flex;gap:0;padding:1.2rem 1.6rem 1rem}.cal-month-grid{flex:1;padding:0 .8rem}.cal-month-grid:first-child{padding-left:0}.cal-month-grid:last-child{padding-right:0;border-left:1px solid rgba(201,168,76,.12)}.cal-month-title{text-align:center;font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;color:var(--ink);margin-bottom:.7rem;letter-spacing:.02em}.cal-days-head{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.cal-day-name{text-align:center;font-size:.6rem;color:var(--muted);font-weight:700;padding:.2rem 0;letter-spacing:.08em;text-transform:uppercase}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.82rem;color:var(--text);border-radius:50%;cursor:pointer;transition:all .1s;position:relative;min-height:36px;min-width:36px}.cal-day.empty{cursor:default;pointer-events:none}.cal-day.disabled{color:#ccc;cursor:not-allowed;pointer-events:none}.cal-day:hover:not(.disabled):not(.empty):not(.start):not(.end){background:rgba(201,168,76,.18);color:var(--ink);font-weight:600}.cal-day.today{font-weight:700}.cal-day.today::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:4px;height:4px;background:var(--gold);border-radius:50%}.cal-day.start{background:var(--ink);color:var(--gold);font-weight:700;border-radius:50% 0 0 50%;box-shadow:2px 0 0 var(--ink)}.cal-day.end{background:var(--ink);color:var(--gold);font-weight:700;border-radius:0 50% 50% 0;box-shadow:-2px 0 0 var(--ink)}.cal-day.start.end{border-radius:50%;box-shadow:none}.cal-day.in-range{background:rgba(14,12,9,.07);border-radius:0;color:var(--ink)}.cal-day.hover-range{background:rgba(201,168,76,.1);border-radius:0;color:var(--ink)}.cal-legend{display:flex;align-items:center;gap:1.5rem;padding:.7rem 1.6rem 1rem;border-top:1px solid rgba(201,168,76,.12);font-size:.68rem;color:var(--muted)}.cal-legend-item{display:flex;align-items:center;gap:.4rem}.cal-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.cal-legend-dot.sel{background:var(--ink)}.cal-legend-dot.range{background:rgba(14,12,9,.07);border:1px solid #ccc}.cal-legend-dot.today-dot{background:var(--gold)}#post-search .cal-months-wrap{flex-direction:column;padding:.8rem 1rem;gap:.4rem}#post-search .cal-month-grid{padding:0;border-left:none !important}#post-search .cal-month-grid+.cal-month-grid{border-top:1px solid rgba(201,168,76,.12);padding-top:.8rem}#post-search .cal-top-bar{padding:.7rem 1rem .6rem}#post-search .cal-legend{padding:.5rem 1rem .7rem}.engine-wrap{max-width:1260px;margin:0 auto;padding:1.5rem 1.5rem 5rem;display:grid;grid-template-columns:300px 1fr;gap:1.8rem;align-items:start}@media(max-width:960px){.engine-wrap{grid-template-columns:1fr}}.left-panel{position:sticky;top:72px}.left-card{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.left-card-head{background:var(--ink);color:var(--gold);padding:.9rem 1.2rem;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.lp-date-row{display:grid;grid-template-columns:1fr 1fr;gap:0}.lp-field{padding:.85rem 1rem;border-bottom:1px solid var(--border);border-right:1px solid var(--border);cursor:pointer;transition:background .15s}.lp-field:last-of-type{border-right:0}.lp-field:hover,.lp-field.lp-active{background:rgba(201,168,76,.05)}.lp-field.lp-active{box-shadow:inset 0 -2px 0 var(--gold)}.lp-label{font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);font-weight:700;margin-bottom:.2rem;display:flex;align-items:center;gap:.3rem}.lp-val{font-size:.88rem;font-weight:600;color:var(--ink)}.lp-val.empty{color:var(--muted);font-weight:400;font-style:italic}.lp-sub{font-size:.62rem;color:var(--muted);margin-top:.1rem;line-height:1.3;min-height:1.3em}.lp-nights-strip{text-align:center;padding:.45rem 1rem;background:var(--warm);font-size:.72rem;font-weight:600;color:var(--ink);border-bottom:1px solid var(--border);display:none}.lp-nights-strip.show{display:block}.lp-guest-section{padding:.8rem 1rem;border-bottom:1px solid var(--border)}.lp-guest-row{display:flex;align-items:center;justify-content:space-between;padding:.35rem 0}.lp-guest-label{font-size:.78rem;font-weight:500;color:var(--text)}.lp-guest-sub{font-size:.62rem;color:var(--muted)}.lp-counter{display:flex;align-items:center;gap:.5rem}.lp-btn{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border);background:#fff;color:var(--ink);font-size:.95rem;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;line-height:1}.lp-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.lp-btn:disabled{opacity:.3;cursor:not-allowed}.lp-count{font-size:.9rem;font-weight:700;min-width:20px;text-align:center}.lp-kids-note{font-size:.65rem;color:var(--green);margin-top:.5rem;display:flex;align-items:center;gap:.3rem}.lp-search-btn{display:block;width:100%;padding:.9rem;background:var(--gold);color:var(--ink);border:0;font-family:'DM Sans',sans-serif;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .2s}.lp-search-btn:hover{background:#d4aa40}.lp-promos{padding:.8rem 1rem 1rem;border-top:1px solid var(--border)}.lp-promo-label{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}.right-panel{min-width:0}.results-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.5rem}.results-topbar h2{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:400;color:var(--ink)}.results-meta-chips{display:flex;flex-wrap:wrap;gap:.4rem}.meta-chip-sm{display:inline-flex;align-items:center;gap:.3rem;background:var(--warm);border-radius:100px;padding:.2rem .7rem;font-size:.68rem;color:var(--text);font-weight:500}.meta-chip-sm i{color:var(--gold);font-size:.6rem}.state-box{text-align:center;padding:5rem 2rem}.state-box .icon{font-size:3rem;color:var(--border);margin-bottom:1rem}.state-box h3{font-family:'Cormorant Garamond',serif;font-size:1.6rem;margin-bottom:.4rem}.state-box p{color:var(--muted);font-size:.9rem}.price-filter{padding:.9rem 1rem 1rem;border-bottom:1px solid var(--border)}.price-filter-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem;gap:.5rem}.price-filter-label{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:.35rem}.price-filter-label i{color:var(--gold)}.price-filter-val{font-size:1rem;font-weight:700;color:var(--ink);font-family:'Cormorant Garamond',serif;white-space:nowrap}.price-filter input[type=range]{-webkit-appearance:none;appearance:none;display:block;width:100%;height:5px;border-radius:3px;outline:0;cursor:pointer;background:var(--border);margin:.35rem 0}.price-filter input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--gold);border:3px solid #fff;box-shadow:0 1px 5px rgba(14,12,9,.4);cursor:pointer;transition:transform .15s}.price-filter input[type=range]::-webkit-slider-thumb:active{transform:scale(1.15)}.price-filter input[type=range]::-moz-range-track{background:transparent;height:5px;border-radius:3px}.price-filter input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--gold);border:3px solid #fff;box-shadow:0 1px 5px rgba(14,12,9,.4);cursor:pointer}.price-filter-range{display:flex;justify-content:space-between;font-size:.64rem;color:var(--muted);margin-top:.15rem}.no-price-match{text-align:center;padding:3rem 1rem;color:var(--muted);font-size:.85rem}.room-result{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden;display:grid;grid-template-columns:220px 1fr auto;margin-bottom:1rem;box-shadow:0 2px 10px rgba(14,12,9,.05);transition:transform .18s;animation:fadeUp .35s ease both}.room-result:hover{box-shadow:0 8px 32px rgba(14,12,9,.12);transform:translateY(-2px)}@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.rr-img{position:relative;overflow:hidden}.rr-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s;display:block}.rr-img:hover img{transform:scale(1.04)}.rr-img-placeholder{width:100%;height:100%;min-height:180px;background:var(--warm);display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--border)}.rr-promo-badge{position:absolute;top:10px;left:10px;background:var(--rust);color:#fff;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .6rem;border-radius:3px}.rr-info{padding:1.2rem 1.4rem;display:flex;flex-direction:column;gap:.45rem;min-width:0}.rr-type{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-text);font-weight:600}.rr-name{font-family:'Cormorant Garamond',serif;font-size:1.22rem;font-weight:400;color:var(--ink);line-height:1.2}.rr-facts{display:flex;flex-wrap:wrap;gap:.45rem}.rr-fact{display:flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--muted)}.rr-fact i{color:var(--gold);font-size:.62rem}.rr-amenities{display:flex;flex-wrap:wrap;gap:.3rem}.rr-amenity{display:flex;align-items:center;gap:.25rem;font-size:.68rem;color:var(--muted);background:var(--warm);border-radius:100px;padding:.15rem .55rem}.rr-amenity i{color:var(--gold);font-size:.6rem}.rr-desc{font-size:.78rem;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rr-price-col{padding:1.2rem;border-left:1px solid var(--border);display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;min-width:260px}.rr-price-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%}.rr-price-main{text-align:left}.rr-price-side{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;flex-shrink:0}.rr-price-side .rr-incl{margin-top:0}.rr-scarcity{color:#c0392b;font-size:.72rem;font-weight:700;display:flex;align-items:center;gap:.3rem;white-space:nowrap}.rr-qty-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;padding:.5rem .6rem;margin:.7rem 0 0;background:var(--cream);border:1px solid var(--border);border-radius:6px}.rr-qty-label{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:.35rem;white-space:nowrap}.rr-qty-label i{color:var(--gold)}.rr-qty-select{border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif;font-size:.78rem;font-weight:600;padding:.3rem .5rem;cursor:pointer;outline:0}.rr-qty-select:focus{border-color:var(--gold)}.rr-starting{font-size:.6rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem}.rr-original{font-size:.8rem;color:var(--muted);text-decoration:line-through}.rr-disc-pct{font-size:.68rem;font-weight:700;color:var(--rust);background:rgba(139,69,19,.1);border-radius:3px;padding:.1rem .4rem;margin-left:.3rem}.rr-price{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:600;color:var(--ink);line-height:1}.rr-incl{font-size:.65rem;color:var(--green);font-weight:600;margin-top:.3rem}.rr-btn-book{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.68rem 1.2rem;background:var(--ink);color:var(--gold);border:0;border-radius:6px;text-decoration:none;font-family:'DM Sans',sans-serif;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:background .15s,color .15s;width:100%;margin-top:.8rem;text-align:center}.rr-btn-book:hover{background:var(--gold);color:var(--ink)}.rr-btn-details{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.52rem 1rem;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:6px;text-decoration:none;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;cursor:pointer;transition:border-color .15s,color .15s;width:100%;margin-top:.4rem;text-align:center}.rr-btn-details:hover{border-color:var(--gold);color:var(--gold)}.modal-overlay{display:none;position:fixed;inset:0;z-index:1000;background:rgba(14,12,9,.55);backdrop-filter:blur(3px);align-items:center;justify-content:center}.modal-overlay.active{display:flex}.modal{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:2.4rem 2.4rem 2rem;width:min(540px,95vw);box-shadow:0 24px 80px rgba(14,12,9,.25);animation:scaleIn .25s ease;position:relative}@keyframes scaleIn{from{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:0;border:0;cursor:pointer;font-size:1.1rem;color:var(--muted);transition:color .2s}.modal-close:hover{color:var(--ink)}.modal-eyebrow{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin-bottom:.6rem}.modal h3{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:400;margin-bottom:.4rem}.modal-room-name{font-size:.85rem;color:var(--muted);margin-bottom:1.6rem}.booking-summary{background:var(--warm);border-radius:6px;padding:1rem 1.2rem;margin-bottom:1.4rem;font-size:.83rem}.booking-summary-row{display:flex;justify-content:space-between;padding:.25rem 0;color:var(--text)}.booking-summary-row.total{border-top:1px solid var(--border);margin-top:.4rem;padding-top:.6rem;font-weight:600;font-family:'Cormorant Garamond',serif;font-size:1.05rem}.booking-summary-row .discount{color:var(--rust)}.coupon-row{display:flex;gap:.6rem;margin-bottom:1.2rem}.coupon-input{flex:1;border:1.5px solid var(--border);border-radius:4px;padding:.7rem 1rem;font-family:'DM Sans',sans-serif;font-size:.88rem;background:#fff;color:var(--ink);text-transform:uppercase;letter-spacing:.08em;outline:0;transition:border-color .2s}.coupon-input:focus{border-color:var(--gold)}.btn-apply{background:var(--gold);color:var(--ink);border:0;border-radius:4px;padding:.7rem 1.3rem;font-family:'DM Sans',sans-serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:background .2s}.btn-apply:hover{background:var(--gold-lt)}.coupon-msg{font-size:.78rem;margin-bottom:.8rem;min-height:1.2rem}.coupon-msg.ok{color:#2d6a4f}.coupon-msg.err{color:#c0392b}.btn-proceed{width:100%;padding:.9rem;background:var(--ink);color:var(--gold);border:0;border-radius:4px;font-family:'DM Sans',sans-serif;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:background .2s,color .2s;display:block;text-align:center;text-decoration:none}.btn-proceed:hover{background:var(--gold);color:var(--ink)}.auth-modal-overlay{display:none;position:fixed;inset:0;z-index:2000;background:rgba(14,12,9,.7);backdrop-filter:blur(5px);align-items:flex-start;justify-content:center;padding:1.2rem 1rem;overflow-y:auto}.auth-modal-overlay.open{display:flex}.auth-modal{background:#fffdf9;border:1.5px solid var(--border);border-radius:14px;width:min(400px,94vw);max-height:96vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 28px 80px rgba(14,12,9,.3);position:relative;animation:scaleIn .22s ease}.auth-modal-head{background:var(--ink);padding:.7rem 1.6rem .55rem;text-align:center;position:sticky;top:0;z-index:1}.auth-modal-head img{height:36px;filter:brightness(0) invert(1);opacity:.88;display:block;margin:0 auto 1rem}.auth-modal-eyebrow{font-size:.54rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin-bottom:.15rem}.auth-modal-head h3{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;color:#fff;line-height:1.2}.auth-modal-head p{font-size:.73rem;color:rgba(255,255,255,.42);margin-top:.35rem}.auth-modal-body{padding:.65rem 1.5rem .9rem}.auth-perks{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:1.4rem}.auth-perk{display:flex;align-items:center;gap:.5rem;background:var(--cream);border:1px solid var(--border);border-radius:8px;padding:.55rem .75rem;font-size:.74rem;color:var(--text);font-weight:500}.auth-perk i{color:var(--gold);font-size:.7rem;flex-shrink:0}.auth-google-wrap{text-align:center;margin-bottom:.45rem;overflow:hidden}.auth-divider{display:flex;align-items:center;gap:.8rem;margin-bottom:.5rem;font-size:.62rem;color:var(--muted)}.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:var(--border)}.auth-note{font-size:.6rem;color:var(--muted);text-align:center;line-height:1.35}.auth-note a{color:var(--gold-text);text-decoration:none}.auth-note a:hover{text-decoration:underline}.auth-tabs{display:flex;gap:.4rem;margin-bottom:.55rem;background:var(--cream);border-radius:8px;padding:.2rem}.auth-tab{flex:1;background:0;border:0;padding:.42rem;font-size:.7rem;font-weight:700;letter-spacing:.04em;color:var(--muted);cursor:pointer;border-radius:6px;transition:background .15s,color .15s}.auth-tab.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(14,12,9,.08)}.auth-email-form{display:flex;flex-direction:column;gap:.4rem}.auth-email-form input{width:100%;padding:.48rem .8rem;border:1px solid var(--border);border-radius:6px;font-size:.83rem;font-family:inherit;background:#fff;box-sizing:border-box}.auth-email-form input:focus{outline:0;border-color:var(--gold)}.auth-submit{width:100%;background:var(--ink);color:var(--gold);border:0;border-radius:6px;padding:.55rem;font-size:.73rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .15s}.auth-submit:hover{opacity:.88}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-msg{font-size:.76rem;padding:.6rem .8rem;border-radius:6px;margin-bottom:.9rem;text-align:center}.auth-msg.ok{background:rgba(45,106,79,.1);color:#2d6a4f}.auth-msg.err{background:rgba(165,68,43,.1);color:#a5442b}.auth-resend{font-size:.72rem;text-align:center;color:var(--muted);margin:0}.auth-resend a{color:var(--gold-text,var(--gold));text-decoration:underline;cursor:pointer}.auth-fine{font-size:.6rem;color:var(--muted);text-align:center;margin:0;line-height:1.3}.auth-modal-close{position:absolute;top:.9rem;right:1rem;background:0;border:0;color:rgba(255,255,255,.5);font-size:1rem;cursor:pointer;transition:color .2s;z-index:1}.auth-modal-close:hover{color:#fff}.sec-nav-member{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1rem;border:1px solid rgba(201,168,76,.35);border-radius:4px;font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);cursor:pointer;margin-left:.6rem;flex-shrink:0;transition:background .2s;background:transparent;text-decoration:none}.sec-nav-member:hover{background:rgba(201,168,76,.12)}.sec-nav-member img{width:22px;height:22px;border-radius:50%;object-fit:cover}.nav-member-wrap{position:relative;flex-shrink:0}.nav-member-wrap .sec-nav-member{margin-left:0}.member-name-display{text-transform:none;letter-spacing:.01em}.nav-member-dropdown{display:none;position:fixed;background:var(--ink);border:1px solid rgba(201,168,76,.3);border-radius:8px;box-shadow:0 16px 48px rgba(0,0,0,.45);min-width:180px;padding:.4rem;z-index:9999}.nav-member-dropdown::before{content:'';position:absolute;top:-6px;right:16px;width:11px;height:11px;background:var(--ink);border-left:1px solid rgba(201,168,76,.3);border-top:1px solid rgba(201,168,76,.3);transform:rotate(45deg);border-radius:2px 0 0 0}.nav-member-dropdown.open{display:block}.nav-member-dropdown-item{display:flex;align-items:center;justify-content:flex-start;text-align:left;width:100%;box-sizing:border-box;gap:.6rem;padding:.7rem .85rem;border-radius:6px;font-size:.74rem;font-weight:600;letter-spacing:.02em;text-transform:none;color:rgba(255,255,255,.82);text-decoration:none;transition:background .15s,color .15s}.nav-member-dropdown-item:hover{background:rgba(201,168,76,.14);color:#fff}.nav-member-dropdown-item i{color:var(--gold);width:14px;flex:0 0 14px;text-align:center;font-size:.8rem}.sec-nav-toggle-bar{display:block;position:absolute;left:50%;top:50%;width:18px;height:2px;background:#fff;border-radius:2px;transform:translate(-50%,-50%);transition:transform .3s ease,opacity .2s ease,margin-top .3s ease}.sec-nav-toggle-bar:nth-child(1){margin-top:-6px}.sec-nav-toggle-bar:nth-child(3){margin-top:6px}.sec-nav.nav-open .sec-nav-toggle-bar:nth-child(1){margin-top:0;transform:translate(-50%,-50%) rotate(45deg)}.sec-nav.nav-open .sec-nav-toggle-bar:nth-child(2){opacity:0;transform:translate(-50%,-50%) scale(0)}.sec-nav.nav-open .sec-nav-toggle-bar:nth-child(3){margin-top:0;transform:translate(-50%,-50%) rotate(-45deg)}@media(max-width:700px){.sec-nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:250;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s}.sec-nav.nav-open .sec-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .3s ease}.sec-nav-inner .sec-nav-toggle{display:flex}.sec-nav-inner .sec-nav-links{display:flex;position:fixed;top:0;right:0;bottom:0;width:min(86vw,380px);flex-direction:column;align-items:stretch;overflow-y:auto;background:var(--ink);z-index:260;padding:6rem 1rem 1rem;gap:.3rem;box-shadow:-8px 0 32px rgba(0,0,0,.35);border-radius:12px 0 0 0;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1)}.sec-nav-inner .sec-nav-actions{display:none}.sec-nav.nav-open .sec-nav-links{transform:translateX(0)}.sec-nav-inner .sec-nav-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.85rem 1rem;font-size:.72rem;border-radius:8px;color:rgba(255,255,255,.65);border-bottom:0;transition:background .15s,color .15s}.sec-nav-inner .sec-nav-item i{display:inline-block;width:16px;text-align:center;font-size:.78rem;color:var(--gold)}.sec-nav-inner .sec-nav-item:hover{background:rgba(255,255,255,.06);color:#fff}.sec-nav-inner .sec-nav-item.active{background:rgba(201,168,76,.12);color:#fff}.sec-nav-inner .sec-nav-social{display:flex;justify-content:center;gap:.6rem;padding:1rem 1rem .2rem;margin-top:.5rem;border-top:1px solid rgba(255,255,255,.1)}.sec-nav-inner .sec-nav-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;font-size:.95rem;text-decoration:none;transition:background .2s,color .2s}.sec-nav-inner .sec-nav-social a:hover{background:var(--gold);color:#0e0c09}}@media(max-width:600px){.hero{padding:2rem 1rem 3rem;min-height:clamp(380px,55vh,480px)}.hero-eyebrow{font-size:.6rem;margin-bottom:.6rem}.hero h1{font-size:1.7rem;margin-bottom:.4rem}.hero-sub{font-size:.8rem;margin-bottom:0}}@media(max-width:900px){.search-grid{grid-template-columns:1fr 1fr}.sf.guest-panel{border-top:1px solid var(--border);grid-column:1/-1}.search-btn{grid-column:1/-1;border-radius:0 0 var(--radius) var(--radius);padding:1.1rem;font-size:.8rem}}@media(max-width:540px){.search-widget{padding:0 .75rem 2rem;margin:-3.5rem auto 0}.search-card{border-radius:var(--radius)}.search-grid{grid-template-columns:1fr 1fr}.sf{padding:1rem 1rem}.sf-label{font-size:.55rem}.sf-value{font-size:.88rem}.search-btn{padding:1rem;font-size:.76rem;letter-spacing:.1em}.guest-dropdown{left:50%;transform:translateX(-50%);width:calc(100vw - 3rem);max-width:300px}}@media(max-width:380px){.search-grid{grid-template-columns:1fr}.sf{border-right:0;border-bottom:1px solid var(--border)}.sf:last-of-type{border-bottom:0}.search-btn{border-radius:0 0 var(--radius) var(--radius)}}@media(max-width:700px){.cal-months-wrap{flex-direction:column;padding:.8rem 1rem;gap:.5rem}.cal-month-grid{padding:0;border-left:none !important}.cal-month-grid+.cal-month-grid{border-top:1px solid rgba(201,168,76,.12);padding-top:.8rem}.cal-top-bar{padding:.7rem 1rem;flex-wrap:wrap;gap:.5rem}.cal-top-hint{font-size:.74rem;width:100%}.cal-top-actions{width:100%;justify-content:space-between}.cal-day{min-height:38px;min-width:38px;font-size:.8rem}.cal-legend{padding:.5rem 1rem .7rem;gap:.8rem;flex-wrap:wrap}}@media(max-width:540px){.promo-pills{gap:.35rem;margin-top:.7rem;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.15rem}.promo-pills::-webkit-scrollbar{display:none}.promo-pill{font-size:.6rem;padding:.2rem .6rem;flex-shrink:0;white-space:nowrap}}@media(max-width:960px){.left-panel{position:static}.engine-wrap{grid-template-columns:1fr;padding:1rem 1rem 3rem;gap:1rem}}@media(max-width:540px){.engine-wrap{padding:.75rem .75rem 3rem}}@media(max-width:760px){.room-result{grid-template-columns:1fr}.rr-img{height:210px}.rr-price-col{border-left:0;border-top:1px solid var(--border);flex-direction:row;align-items:center;flex-wrap:wrap;gap:.6rem;padding:1rem}.rr-price-row{flex-wrap:wrap}.rr-price-side{align-items:flex-start}.rr-btn-book,.rr-btn-details{width:auto;flex:1;margin-top:0}}@media(max-width:480px){.rr-img{height:180px}.rr-info{padding:.9rem 1rem}.rr-name{font-size:1.1rem}.rr-price-col{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.9rem 1rem}.rr-btn-book,.rr-btn-details{width:100%;flex:none}.rr-btn-details{margin-top:.35rem}}@media(max-width:700px){.rooms-showcase-grid{grid-template-columns:1fr 1fr;gap:.8rem;padding-bottom:2rem}.rs-img{height:140px}.rs-body{padding:.8rem .85rem 1rem}.rs-name{font-size:1rem}.rs-amens{display:none}}@media(max-width:420px){.rooms-showcase-grid{grid-template-columns:1fr}.rs-img{height:180px}.rs-amens{display:flex}}@media(max-width:540px){.state-box{padding:3rem 1.2rem}.state-box .icon{font-size:2.2rem}.state-box h3{font-size:1.3rem}.state-box p{font-size:.82rem}}@media(max-width:540px){.modal{padding:1.6rem 1.2rem 1.4rem;border-radius:var(--radius) var(--radius) 0 0}.modal-overlay.active{align-items:flex-end}.modal h3{font-size:1.3rem}.coupon-row{flex-direction:column}.btn-apply{width:100%;padding:.75rem}}@media(max-width:540px){.left-card-head{font-size:.62rem;padding:.8rem 1rem}.lp-field{padding:.75rem .85rem}.lp-val{font-size:.82rem}.lp-guest-section{padding:.7rem .85rem}.lp-search-btn{padding:.85rem;font-size:.74rem}.price-filter{padding:.85rem}.price-filter input[type=range]::-webkit-slider-thumb{width:24px;height:24px}.price-filter input[type=range]::-moz-range-thumb{width:24px;height:24px}}@media(max-width:540px){.results-topbar{flex-direction:column;align-items:flex-start;gap:.4rem;margin-bottom:.9rem}.results-topbar h2{font-size:1.2rem}}@media(max-width:760px){.counter-btn,.lp-btn{width:40px;height:40px;font-size:1.15rem}.cal-nav{width:40px;height:40px}.sec-nav-item{min-height:44px}}@media(max-width:540px){.ticker{height:30px;font-size:.62rem}.ticker-inner span{padding:0 2rem}}@media(max-width:540px){#roomsShowcase .lp-section-head{padding:2rem 0 1.2rem}#roomsShowcase .lp-title{font-size:1.6rem}#roomsShowcase .lp-desc{font-size:.8rem}}@media(max-width:540px){#roomsShowcase>div{padding:0 .85rem}[style*="max-width:1200px"][style*="padding:0 2rem"]{padding:0 .85rem !important}}@media(max-width:480px){.auth-perks{grid-template-columns:1fr}.auth-modal-body{padding:1.2rem 1.4rem 1.4rem}}.sec-nav{background:var(--ink);position:sticky;top:0;z-index:200;box-shadow:0 2px 16px rgba(14,12,9,.35)}.sec-nav-inner{max-width:1260px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.sec-nav-logo img{height:30px;filter:brightness(0) invert(1);opacity:.85}.sec-nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.sec-nav-toggle{display:none}.sec-nav-backdrop{display:none}.sec-nav-social{display:none}.sec-nav-links{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none}.sec-nav-links::-webkit-scrollbar{display:none}.sec-nav-item{display:inline-flex;align-items:center;gap:.4rem;padding:.9rem 1rem;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:rgba(255,255,255,.5);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;transition:color .18s,border-color .18s;cursor:pointer;flex-shrink:0}.sec-nav-item i{display:none}.sec-nav-item:hover{color:#fff}.sec-nav-item.active{color:#fff;border-bottom-color:var(--gold)}.sec-nav-book{background:var(--gold);color:var(--ink);padding:.5rem 1.1rem;border-radius:4px;font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;margin-left:1.2rem;transition:background .2s;flex-shrink:0;cursor:pointer}.sec-nav-book:hover{background:var(--gold-lt)}.rooms-showcase-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem;padding-bottom:3rem}.rs-card{display:block;color:inherit;text-decoration:none;background:#fff;border:1.5px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 10px rgba(14,12,9,.05);transition:transform .18s}.rs-card:hover{box-shadow:0 8px 32px rgba(14,12,9,.12);transform:translateY(-3px)}.rs-img{height:180px;position:relative;background-color:var(--warm)}.rs-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.rs-badge{position:absolute;top:10px;left:10px;background:var(--ink);color:var(--gold);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.22rem .65rem;border-radius:3px}.rs-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;flex:1}.rs-name{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:400;color:var(--ink);margin-bottom:.35rem;line-height:1.2}.rs-desc{font-size:.75rem;color:var(--muted);line-height:1.5;margin-bottom:.6rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rs-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.55rem}.rs-fact{display:flex;align-items:center;gap:.25rem;font-size:.68rem;color:var(--muted)}.rs-fact i{color:var(--gold);font-size:.58rem}.rs-amens{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.65rem}.rs-amen{display:flex;align-items:center;gap:.22rem;font-size:.66rem;color:var(--muted)}.rs-amen i{color:var(--green);font-size:.58rem}.rs-foot{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border-top:1px solid var(--border);padding-top:.65rem;margin-top:auto}.rs-price{font-size:.78rem;color:var(--muted)}.rs-price strong{font-family:'Cormorant Garamond',serif;font-size:1.1rem;color:var(--ink);font-weight:600}.rs-price-badge{position:absolute;bottom:10px;right:10px;background:rgba(14,12,9,.85);color:var(--gold);font-size:.68rem;font-weight:700;padding:.35rem .7rem;border-radius:4px;backdrop-filter:blur(4px)}.rs-price-badge strong{font-family:'Cormorant Garamond',serif;font-size:.88rem}.rs-view-btn{display:inline-flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:700;color:var(--gold-text);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;transition:gap .2s,color .2s;margin-left:auto}.rs-card:hover .rs-view-btn{gap:.55rem;color:var(--ink)}@media(max-width:600px){.rooms-showcase-grid{grid-template-columns:1fr 1fr}.rs-img{height:150px}}.rooms-showcase-grid--list{display:flex;flex-direction:column;gap:1.1rem}.rs-card--horizontal{display:flex;flex-direction:row;align-items:stretch}.rs-card--horizontal .rs-img{width:320px;height:auto;flex-shrink:0}.rs-card--horizontal .rs-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:1.3rem 1.6rem}.rs-card--horizontal .rs-desc{-webkit-line-clamp:2}@media(max-width:760px){.rs-card--horizontal{flex-direction:column}.rs-card--horizontal .rs-img{width:100%;height:190px}}@media(max-width:400px){.rooms-showcase-grid{grid-template-columns:1fr}}
.lp-container{max-width:1160px;margin:0 auto;padding:0 1.5rem}/* Footer styles - moved here from landing.css so pages that set skipLandingCss (blog, room detail, amenity, checkout, auth) still get a styled footer, since footer.php renders on every guest page regardless of that flag. */
.lp-footer{background:#080705;border-top:1px solid rgba(201,168,76,.12);padding:4rem 0 0}.lp-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:2.5rem;padding-bottom:3rem}@media(max-width:700px){.lp-footer-grid{grid-template-columns:1fr;gap:2rem}}.lp-footer-brand img{height:46px;width:auto;filter:brightness(0) invert(1);opacity:.8;margin-bottom:.8rem}.lp-footer-brand p{font-size:.8rem;color:rgba(255,255,255,.66);line-height:1.65;margin-bottom:.8rem}.lp-footer-eyebrow{font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem;font-weight:600}.lp-footer-heading{font-family:var(--serif,'Cormorant Garamond',serif);font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:.7rem}.lp-footer-social{display:flex;gap:.7rem;margin-top:1rem}.lp-footer-social a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.06);color:rgba(255,255,255,.6);font-size:.85rem;text-decoration:none;transition:background .2s,color .2s}.lp-footer-social a:hover{background:var(--gold);color:#0e0c09}.lp-footer-col strong{display:block;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem;font-weight:600}.lp-footer-col a{display:flex;align-items:center;gap:.55rem;font-size:.8rem;color:rgba(255,255,255,.66);text-decoration:none;margin-bottom:.55rem;transition:color .2s}.lp-footer-col a:hover{color:var(--gold)}.lp-footer-col i{width:14px;color:var(--gold);opacity:.65;flex-shrink:0}.lp-footer-copy{text-align:center;padding:1.3rem;border-top:1px solid rgba(201,168,76,.08);font-size:.7rem;color:rgba(255,255,255,.58)}
.dn-list{max-width:1180px;margin:0 auto;padding:3rem 2rem 4rem}.dn-row{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:3rem 0;border-bottom:1px solid var(--border)}.dn-row:first-child{padding-top:0}.dn-row:last-child{border-bottom:0}.dn-row--rev .dn-media{order:2}.dn-row--rev .dn-content{order:1}.dn-media{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 12px 32px rgba(14,12,9,.12)}.dn-media img{width:100%;height:420px;object-fit:cover;display:block;transition:transform .5s ease}.dn-row:hover .dn-media img{transform:scale(1.05)}.dn-media-placeholder{width:100%;height:420px;background:var(--warm);display:flex;align-items:center;justify-content:center}.dn-media-placeholder i{font-size:3rem;color:var(--border)}.dn-menu-chip{position:absolute;bottom:1rem;left:1rem;background:rgba(201,168,76,.95);color:#0e0c09;padding:.5rem 1rem;border-radius:100px;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:background .2s}.dn-menu-chip:hover{background:#fff}.dn-index{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem;color:var(--gold-text);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.dn-index i{font-size:1.5rem;color:var(--gold)}.dn-name{font-family:'Cormorant Garamond',serif;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:500;color:var(--ink);margin-bottom:1rem;line-height:1.15}.dn-desc{font-size:.92rem;color:var(--text);line-height:1.75;margin-bottom:1.3rem;max-width:46ch}.dn-meta{display:flex;flex-wrap:wrap;gap:1.2rem;margin-bottom:1.5rem}.dn-meta span{display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--muted)}.dn-meta i{color:var(--gold)}.dn-btn{display:inline-flex;align-items:center;gap:.6rem;background:var(--ink);color:var(--gold);padding:.8rem 1.6rem;border-radius:6px;text-decoration:none;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:background .2s}.dn-btn:hover{background:var(--gold);color:#0e0c09}
@media(max-width:820px){.dn-row{grid-template-columns:1fr;gap:1.4rem;padding:2rem 0}.dn-row--rev .dn-media{order:1}.dn-row--rev .dn-content{order:2}.dn-media img,.dn-media-placeholder{height:280px}}
.bc-section{background:var(--ink);padding:3rem 0 4rem}
.bc-container{max-width:1180px;margin:0 auto;padding:0 2rem}
.bc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;margin-bottom:2.5rem}
.bc-card{cursor:pointer;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:transform .2s,border-color .2s}
.bc-card:hover{transform:translateY(-4px);border-color:rgba(201,168,76,.35)}
.bc-card-media{position:relative;height:220px;overflow:hidden;background:var(--warm)}
.bc-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.bc-card:hover .bc-card-media img{transform:scale(1.06)}
.bc-play-btn{position:absolute;bottom:14px;right:14px;width:44px;height:44px;border-radius:50%;background:rgba(201,168,76,.92);display:flex;align-items:center;justify-content:center;color:#0e0c09;font-size:.9rem;transition:transform .2s,background .2s}
.bc-card:hover .bc-play-btn{background:var(--gold);transform:scale(1.08)}
.bc-card-body{padding:1.3rem 1.4rem}
.bc-card-body h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:.3rem;line-height:1.3}
.bc-card-subtitle{font-style:italic;color:var(--gold-lt);font-size:.8rem;margin-bottom:.6rem}
.bc-card-desc{font-size:.82rem;color:rgba(255,255,255,.62);line-height:1.6}
.bc-social-cta{display:flex;flex-direction:column;align-items:center;gap:.9rem;text-align:center;padding-top:1rem}
.bc-social-links{display:flex;gap:.8rem}
.bc-social-links a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.75);font-size:1rem;text-decoration:none;transition:background .2s,color .2s}
.bc-social-links a:hover{background:var(--gold);color:#0e0c09;border-color:var(--gold)}
.bc-social-cta p{color:rgba(255,255,255,.55);font-size:.8rem}
.bc-social-cta strong{color:var(--gold-lt);letter-spacing:.06em}
@media(max-width:820px){.bc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.bc-grid{grid-template-columns:1fr}.bc-card-media{height:190px}}

/* Rooms results view toggle (list / grid) - see resultsTopbar in
   lp-search-widget.php and setResultsView() in search-engine.js. */
.results-view-toggle{display:inline-flex;align-items:center;gap:.2rem;background:var(--cream);border:1px solid var(--border);border-radius:8px;padding:.2rem;flex-shrink:0}
.view-toggle-btn{-webkit-appearance:none;appearance:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin:0;border:0;outline:0;box-shadow:none;background:transparent;background-image:none;border-radius:6px;color:var(--muted);cursor:pointer;font-size:.85rem;line-height:1;font-family:inherit;transition:background .15s,color .15s}
.view-toggle-btn:hover{color:var(--ink)}
.view-toggle-btn:focus{outline:0}
.view-toggle-btn.active{background:var(--ink);color:var(--gold)}
.view-toggle-btn svg{display:block;pointer-events:none}
#roomsGrid.grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;align-items:stretch}
#roomsGrid.grid-view .room-result{grid-template-columns:1fr;margin-bottom:0;display:flex;flex-direction:column;height:100%}
#roomsGrid.grid-view .rr-img{height:190px;flex-shrink:0}
#roomsGrid.grid-view .rr-info{padding:.9rem 1rem;flex-shrink:0}
#roomsGrid.grid-view .rr-desc{-webkit-line-clamp:2}
#roomsGrid.grid-view .rr-amenities{min-height:1.6rem}
#roomsGrid.grid-view .rr-price-col{border-left:0;border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem;flex:1;justify-content:flex-end}
#roomsGrid.grid-view .rr-price-row{flex-wrap:wrap;width:100%}
#roomsGrid.grid-view .rr-price-side{align-items:flex-start}
#roomsGrid.grid-view .rr-btn-book,#roomsGrid.grid-view .rr-btn-details{width:100%;flex:none}
#roomsGrid.grid-view .rr-btn-details{margin-top:.35rem}
.rr-amenity-more{background:var(--ink);color:var(--gold);font-weight:700}
@media(max-width:700px){
  #roomsGrid.grid-view{grid-template-columns:repeat(2,1fr);gap:.7rem}
  #roomsGrid.grid-view .rr-img{height:130px}
  #roomsGrid.grid-view .rr-info{padding:.7rem .8rem;gap:.3rem}
  #roomsGrid.grid-view .rr-name{font-size:1rem}
  #roomsGrid.grid-view .rr-desc,#roomsGrid.grid-view .rr-amenities{display:none}
  #roomsGrid.grid-view .rr-facts{gap:.3rem}
  #roomsGrid.grid-view .rr-price-col{padding:.7rem .8rem;min-width:0}
  #roomsGrid.grid-view .rr-price{font-size:1.3rem}
  #roomsGrid.grid-view .rr-btn-book,#roomsGrid.grid-view .rr-btn-details{font-size:.62rem;padding:.55rem .8rem}
}
@media(max-width:340px){#roomsGrid.grid-view{grid-template-columns:1fr}}
/* == Global image loading placeholder (site-wide, no JS needed) ==
   Every <img> shows a soft shimmer as its own background until the real
   photo paints over it - so a slow or failing image is never a blank box.
   Runs continuously; once the photo loads it simply covers the shimmer.
   Excludes logo/icon images that use filter:invert() to go white on dark
   backgrounds - filter applies to the img's background too, so giving them
   an opaque background turns the whole box solid white instead of just the
   letters. Those already load instantly (small, first-paint assets), so no
   placeholder is needed for them anyway. */
img{
  background:linear-gradient(90deg,#d8d0bd 25%,#ece4d1 37%,#d8d0bd 63%);
  background-size:400% 100%;
  animation:img-shimmer 1.3s ease-in-out infinite;
}
.hero-logo img,.sec-nav-logo img,.auth-modal-head img,.lp-footer-brand img,.topbar-logo img,img[src*="logo.png"]{
  background:none;
  animation:none;
}
@keyframes img-shimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}
@keyframes img-blur-shine{0%{background-position:-60% 0,center}100%{background-position:160% 0,center}}

/* == Room popularity indicator (premium, understated social proof) == */
.rs-popular-ribbon{position:absolute;bottom:10px;left:10px;background:rgba(255,253,249,.96);color:var(--ink);font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.32rem .7rem;border-radius:100px;display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 2px 10px rgba(14,12,9,.18)}
.rs-popular-ribbon i{color:var(--gold);font-size:.62rem}
.rs-popularity{font-size:.68rem;color:var(--gold-text);font-weight:600;display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}
.rs-popularity i{color:var(--gold);font-size:.65rem}
.rr-popular-ribbon{position:absolute;bottom:10px;left:10px;background:rgba(255,253,249,.96);color:var(--ink);font-size:.6rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.32rem .7rem;border-radius:100px;display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 2px 10px rgba(14,12,9,.18)}
.rr-popular-ribbon i{color:var(--gold);font-size:.62rem}
.rr-popularity{font-size:.68rem;color:var(--gold-text);font-weight:600;display:flex;align-items:center;gap:.35rem}
.rr-popularity i{color:var(--gold);font-size:.65rem}

/* == PWA status-bar strip (iOS "black-translucent" fix) ==
   With apple-mobile-web-app-status-bar-style=black-translucent + viewport-fit=cover,
   iOS lets page content extend behind the notch/status bar - so the nav must
   pad itself down by that inset (not just get an overlay on top of it, which
   would clip the logo/hamburger instead of revealing them below the notch).
   Only applies once installed/opened as a standalone app; normal browser
   tabs are untouched. */
@media(display-mode:standalone),(display-mode:fullscreen){
  .sec-nav{padding-top:min(env(safe-area-inset-top),59px)}
}

/* Gift This Room (search results, left column) */
.rr-gift-area{margin-top:auto;padding-top:.3rem}
.rr-btn-gift{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem 1rem;background:#fff8e4;color:var(--ink);border:1.5px solid var(--gold);border-radius:6px;font-family:'DM Sans',sans-serif;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .15s}
.rr-btn-gift i{color:var(--gold-text)}
.rr-btn-gift:hover{background:var(--gold)}
.rr-btn-gift:disabled{opacity:.6;cursor:wait}
@media (max-width:640px){.rr-btn-gift{width:100%}}
#roomsGrid.grid-view .rr-btn-gift{width:100%;font-size:.62rem;padding:.5rem .8rem}

/* ===== Be Charmed page: News & Events + Guest Reviews ===== */
.ne-card{display:flex;flex-direction:column;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius,12px);overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 2px 10px rgba(14,12,9,.05);transition:transform .25s ease,box-shadow .25s ease}
a.ne-card:hover,a.ne-card:focus-visible{transform:translateY(-4px);box-shadow:var(--shadow)}
.ne-media{position:relative;aspect-ratio:3/2;background:var(--warm);overflow:hidden}
.ne-media img{width:100%;height:100%;object-fit:cover;display:block}
.ne-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem;color:var(--gold-text);opacity:.5}
.ne-date{position:absolute;top:.8rem;left:.8rem;background:var(--ink);color:var(--gold);border-radius:8px;padding:.35rem .6rem;text-align:center;font-size:.58rem;letter-spacing:.14em;line-height:1.1}
.ne-date b{display:block;font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:600;letter-spacing:0;color:#fff}
.ne-tag{position:absolute;top:.8rem;right:.8rem;background:rgba(255,255,255,.94);color:var(--ink);border-radius:99px;padding:.28rem .7rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ne-card.is-now .ne-tag{background:var(--green);color:#fff}
.ne-card.is-up .ne-tag{background:var(--gold);color:var(--ink)}
.ne-card.is-past .ne-media img{filter:grayscale(.35)}
.ne-body{padding:1.1rem 1.25rem 1.35rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.ne-body h3{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;line-height:1.2;color:var(--ink);margin:0 0 .15rem}
.ne-meta{font-size:.78rem;color:var(--muted);margin:0}.ne-meta i{width:1.1em;color:var(--gold-text);margin-right:.2rem}
.ne-excerpt{font-size:.85rem;line-height:1.6;color:var(--text);margin:.4rem 0 0}
.ne-more{margin-top:auto;padding-top:.8rem;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text)}
.sr-section .lp-eyebrow{color:var(--gold)}.sr-section .lp-title{color:#fff}.sr-section .lp-title em{color:var(--gold)}
.sr-lead{display:flex;flex-wrap:wrap;gap:.5rem .8rem;align-items:center;justify-content:center;color:rgba(255,255,255,.82)}
.sr-lead strong{font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600;color:#fff;line-height:1}
.sr-stars{display:inline-flex;gap:.12rem;font-size:.82rem}.sr-stars i{color:rgba(255,255,255,.25)}.sr-stars i.on{color:var(--gold)}
.sr-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:0 0 2rem}
.sr-tab{appearance:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.15rem;min-width:8.5rem;padding:.8rem 1.3rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.18);border-bottom:3px solid var(--pc,#c9a84c);border-radius:10px;color:#fff;font-family:inherit;transition:background .2s,border-color .2s}
.sr-tab:hover{background:rgba(255,255,255,.1)}.sr-tab.active{background:#fff;color:var(--ink);border-color:#fff;border-bottom-color:var(--pc,#c9a84c)}
.sr-tab-name{font-size:.78rem;font-weight:700;letter-spacing:.06em}
.sr-tab-score{font-size:.78rem}.sr-tab-score i{color:var(--gold);font-size:.7em}.sr-tab-score small{opacity:.7}
.sr-panel[hidden]{display:none}
.sr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.sr-card{margin:0;display:flex;flex-direction:column;gap:.75rem;background:#fff;color:var(--text);border-radius:14px;padding:1.4rem 1.4rem 1.2rem;border-top:4px solid var(--pc,#c9a84c)}
.sr-card-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.sr-card .sr-stars i{color:#e3dccd}.sr-card .sr-stars i.on{color:#c9a84c}
.sr-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:#fff;border:1px solid var(--pc,#6f6357);border-radius:99px;padding:.2rem .6rem}.sr-chip::before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--pc,#6f6357)}
.sr-card h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--ink);margin:0}
.sr-card blockquote{margin:0;font-size:.9rem;line-height:1.7;color:var(--text);flex:1}
.sr-tags{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0;padding:0}
.sr-tags li{font-size:.68rem;background:var(--cream);color:var(--gold-text);border:1px solid var(--border);border-radius:99px;padding:.2rem .6rem}
.sr-card figcaption{display:flex;align-items:center;gap:.7rem;padding-top:.85rem;border-top:1px solid var(--border)}
.sr-avatar{flex:0 0 2.4rem;height:2.4rem;border-radius:50%;background:var(--ink);color:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:700}
.sr-who{display:flex;flex-direction:column;min-width:0;flex:1}.sr-who strong{font-size:.86rem;color:var(--ink)}.sr-who strong i{color:var(--green);font-size:.8em}
.sr-who small{font-size:.72rem;color:var(--muted)}
.sr-orig{color:var(--muted);padding:.5rem;margin:-.5rem}.sr-orig:hover,.sr-orig:focus-visible{color:var(--gold-text)}
.sr-cta{text-align:center;margin:2rem 0 0}.sr-cta a{color:var(--gold);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.15rem}
@media(max-width:1000px){.sr-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.sr-grid{grid-template-columns:1fr}.sr-tab{min-width:calc(50% - .4rem);padding:.6rem .5rem}}

.lp-section--warm .lp-desc{color:#554a3f}
.bc-card-body h2{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;color:#fff;margin:0 0 .3rem;line-height:1.3}
.sr-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ne-card.is-mag .ne-tag{background:var(--ink);color:var(--gold)}
.ne-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2.5rem}
.ne-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--ink);color:var(--gold);border:1.5px solid var(--ink);padding:.85rem 2rem;border-radius:6px;text-decoration:none;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ne-btn-ghost{background:transparent;color:var(--ink)}
.ne-btn:hover,.ne-btn:focus-visible{background:var(--gold);border-color:var(--gold);color:var(--ink)}

/* ===== News & Events: featured layout (one large card + two side cards) ===== */
.nx-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:1.6rem;align-items:stretch}
.nx-grid.nx-solo{grid-template-columns:minmax(0,640px);justify-content:center}
.nx-stack{display:grid;grid-template-rows:1fr 1fr;gap:1.6rem}
.nx-card{position:relative;display:flex;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 18px rgba(14,12,9,.07);transition:transform .25s ease,box-shadow .25s ease}
a.nx-card:hover,a.nx-card:focus-visible{transform:translateY(-4px);box-shadow:var(--shadow)}
.nx-lead{flex-direction:column}.nx-side{flex-direction:row}
.nx-media{position:relative;background:var(--warm);overflow:hidden;flex-shrink:0}
.nx-lead .nx-media{aspect-ratio:16/9}.nx-side .nx-media{width:40%;min-height:150px}
.nx-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
a.nx-card:hover .nx-media img{transform:scale(1.04)}
.nx-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem;color:var(--gold-text);opacity:.5}
.nx-date{position:absolute;top:.9rem;left:.9rem;z-index:1;background:var(--gold);color:var(--ink);border-radius:12px;padding:.45rem .7rem;text-align:center;line-height:1.05;display:flex;flex-direction:column;gap:.05rem;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.nx-date small{font-size:.58rem;font-weight:700;letter-spacing:.14em}.nx-date b{font-size:1.45rem;font-weight:800}
.nx-side .nx-date{top:.6rem;left:.6rem;padding:.3rem .5rem;border-radius:9px}.nx-side .nx-date b{font-size:1.1rem}
.nx-tag{position:absolute;right:.9rem;bottom:.9rem;z-index:1;background:rgba(255,255,255,.95);color:var(--ink);border-radius:99px;padding:.28rem .7rem;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.nx-side .nx-tag{display:none}
.nx-card.is-now .nx-tag{background:var(--green);color:#fff}.nx-card.is-up .nx-tag{background:var(--gold);color:var(--ink)}.nx-card.is-mag .nx-tag{background:var(--ink);color:var(--gold)}
.nx-card.is-past .nx-media img{filter:grayscale(.35)}
.nx-body{padding:1.3rem 1.5rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:0}
.nx-side .nx-body{padding:1rem 1.1rem}
.nx-body h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:700;line-height:1.25;color:var(--ink);margin:0}
.nx-lead .nx-body h3{font-size:clamp(1.4rem,2.2vw,1.8rem)}
.nx-meta{display:flex;flex-wrap:wrap;gap:.2rem .9rem;font-size:.78rem;color:var(--muted);margin:0}.nx-meta i{color:var(--gold-text);margin-right:.25rem}
.nx-excerpt{font-size:.88rem;line-height:1.65;color:var(--text);margin:0}.nx-side .nx-excerpt{font-size:.8rem;line-height:1.55}
.nx-more{margin-top:auto;padding-top:.75rem;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-text)}
.nx-lead .nx-more{border-top:1px solid var(--border);margin-top:.6rem;padding-top:.9rem}
@media(max-width:900px){.nx-grid{grid-template-columns:1fr}.nx-stack{grid-template-rows:none}}
@media(max-width:560px){.nx-side{flex-direction:column}.nx-side .nx-media{width:100%;min-height:0;aspect-ratio:16/10}.nx-side .nx-tag{display:block}.nx-side .nx-date{top:.9rem;left:.9rem}}

/* Modify-search panel (post-search): tidy calendar header, room chips and legends */
.left-card .lp-nights-strip,.left-card .lp-nights-strip.show{display:none}
.left-card .cal-top-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem;padding:.8rem 1rem;background:var(--cream)}
.left-card .cal-top-hint{flex:1 1 100%;min-width:0;width:auto;font-size:.82rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.left-card .cal-top-actions{flex:1 1 100%;width:auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.left-card .cal-nav-pair{display:flex;gap:.5rem}
.left-card .cal-nav{width:36px;height:36px}
.left-card .cal-room-types{display:flex;flex-wrap:nowrap;gap:.45rem;overflow-x:auto;padding:.8rem 1rem .5rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.left-card .cal-room-types::-webkit-scrollbar{display:none}
.left-card .cal-chip{flex:0 0 auto;white-space:nowrap;padding:.35rem .85rem;font-size:.76rem}
.left-card .cal-legend{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;padding:.7rem 1rem .3rem;border-top:1px solid var(--border);font-size:.74rem}
.left-card .cal-rate-legend{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin:0;padding:.2rem 1rem .9rem;font-size:.72rem;line-height:1.4;color:var(--muted)}
.left-card .cal-rate-legend span:first-child{flex:1 1 100%}
@media(max-width:600px){.left-card .cal-day{min-height:50px}}

/* selected room category chip: clearly different from the others */
.cal-room-types .cal-chip{transition:background .2s,border-color .2s,box-shadow .2s}
.cal-room-types .cal-chip.on{background:var(--gold);color:var(--ink);border-color:var(--ink);font-weight:700;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--gold-text)}
.cal-room-types .cal-chip.on::before{content:"\2713";margin-right:.35rem;font-weight:700}

/* search result of the room category chosen in the calendar */
.room-result.rr-chosen{outline:3px solid var(--gold);outline-offset:-3px;box-shadow:0 12px 36px rgba(201,168,76,.35)}
.room-result .rr-img{position:relative}
.rr-chosen-tag{position:absolute;left:.7rem;top:.7rem;z-index:3;background:var(--gold);color:var(--ink);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px;box-shadow:0 2px 10px rgba(0,0,0,.25)}

/* login modal logo: keep the real proportions (the width attribute was stretching it) */
.auth-modal-head img{width:auto;height:auto;max-height:58px;max-width:70%;object-fit:contain}

/* Transparent menu bar over the photo hero (solid again after scrolling or when the mobile menu is open) */
.sec-nav.nav-over-hero{background:linear-gradient(to bottom,rgba(8,7,5,.6),rgba(8,7,5,0));box-shadow:none;transition:background-color .3s,box-shadow .3s}
.sec-nav.nav-over-hero.is-scrolled,.sec-nav.nav-over-hero.nav-open{background:rgba(14,12,9,.97);box-shadow:0 2px 16px rgba(14,12,9,.35)}
.sec-nav.nav-over-hero .sec-nav-item,.sec-nav.nav-over-hero .sec-nav-member{text-shadow:0 1px 8px rgba(0,0,0,.55)}
@media (prefers-reduced-motion:reduce){.sec-nav.nav-over-hero{transition:none}}

/* Transparent menu, applied before first paint where the browser supports :has() (no jump when the page loads). The script in header.php is the fallback. */
body:has(#main-content>.page-hero:first-child,#main-content>.hero:first-child) .sec-nav{margin-bottom:calc(-1 * var(--lc-nav-h,0px))}
body:has(#main-content>.page-hero:first-child,#main-content>.hero:first-child) .sec-nav:not(.is-scrolled):not(.nav-open){background:linear-gradient(to bottom,rgba(8,7,5,.6),rgba(8,7,5,0));box-shadow:none}
