.saved-counter{cursor:pointer;transition:.2s}.saved-counter:hover,.saved-counter:focus{background:#dcebe4;outline:2px solid #2a7c5c;outline-offset:2px}.favorites-overlay{position:fixed;z-index:100000;inset:0;background:rgba(5,17,12,.62);opacity:0;visibility:hidden;transition:.25s}.favorites-overlay.is-open{opacity:1;visibility:visible}.favorites-drawer{position:absolute;right:0;top:0;bottom:0;width:min(520px,100%);background:#f5f7f6;transform:translateX(100%);transition:.3s;display:grid;grid-template-rows:auto 1fr auto;box-shadow:-25px 0 70px rgba(0,0,0,.25)}.favorites-overlay.is-open .favorites-drawer{transform:none}.favorites-open{overflow:hidden}.favorites-drawer>header{display:flex;justify-content:space-between;align-items:center;padding:25px 25px 18px;background:#123c2f;color:#fff}.favorites-drawer header small{color:#83c7a9;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.favorites-drawer h2{color:#fff;margin:3px 0;font-size:2rem}.favorites-close{width:38px;height:38px;border-radius:50%;padding:0;background:rgba(255,255,255,.15);font-size:24px}.favorites-list{overflow:auto;padding:18px}.favorite-item{display:grid;grid-template-columns:105px 1fr 30px;gap:14px;position:relative;background:#fff;border:1px solid #dce4e0;border-radius:9px;padding:12px;margin-bottom:12px}.favorite-visual{height:105px;padding:10px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,#75a390,#183e30);color:#fff;border-radius:6px;text-decoration:none}.favorite-visual span{font-size:.62rem;text-transform:uppercase}.favorite-visual b{font-size:.85rem}.favorite-item small a,.favorite-item h3 a{text-decoration:none;color:inherit}.favorite-item h3{margin:2px 0;font-size:1.15rem}.favorite-item p{margin:4px 0;color:#6e7975;font-size:.78rem}.favorite-item>div>strong{color:#174c39}.favorite-remove{width:28px;height:28px;padding:0;background:#edf3f0;color:#325547;border-radius:50%;font-size:18px}.favorites-drawer>footer{padding:16px 20px;background:#fff;border-top:1px solid #dbe4df;display:flex;justify-content:space-between;align-items:center;gap:12px}.favorites-clear{background:transparent;color:#7b3f3f;padding:9px}.favorites-empty{text-align:center;padding:80px 25px}.favorites-empty>span{display:block;font-size:4rem;color:#6fa58e}.favorites-empty h3{font-size:1.5rem;margin:8px}.favorites-empty p{color:#6d7974;max-width:320px;margin:0 auto 22px}.favorites-loading{text-align:center;padding:60px;color:#6d7974}.favorites-unavailable-section{margin-top:18px;padding-top:15px;border-top:1px solid #d8e2dd}.favorites-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.favorites-section-heading h3{margin:0;color:#43524b;font-size:.95rem}.favorites-remove-unavailable{background:#fff;color:#7b3f3f;border:1px solid #decaca;padding:7px 10px;border-radius:999px;font-size:.75rem}.favorite-unavailable{background:#fbfbfa;border-style:dashed;opacity:.92}.favorite-visual-disabled{background:linear-gradient(145deg,#dfe7e3,#aab8b1)!important;color:#203a30}.favorite-status-tag{display:inline-flex;width:max-content;padding:4px 9px;border-radius:999px;background:#f0e5d9!important;color:#744d21!important;font-size:.72rem}.shortlist-note{margin:8px 0 0;color:#75562e;font-size:.86rem}@media(max-width:560px){.favorites-drawer>footer{display:grid}.favorites-contact{text-align:center}.favorite-item{grid-template-columns:80px 1fr 28px}.favorite-visual{height:90px}.favorites-section-heading{display:grid}.favorites-remove-unavailable{width:100%}}.favorite-status-pills{display:flex;flex-wrap:wrap;gap:5px;margin:5px 0 4px}.favorite-special-status{display:inline-flex;align-items:center;gap:3px;width:max-content;max-width:100%;padding:3px 7px;border-radius:999px;background:var(--cre-status-bg,#123c2f);color:var(--cre-status-color,#fff);font-size:.58rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;line-height:1.25}.favorite-special-status i{font-style:normal;line-height:1}@media(max-width:560px){.favorite-status-pills{gap:4px}.favorite-special-status{font-size:.54rem;padding:3px 6px}}
