.chuffed-catalogue{font-family:inherit;color:#16172e}.chuffed-catalogue *{box-sizing:border-box}.chuffed-catalogue-filters{display:grid;grid-template-columns:1.5fr 1.5fr 1fr;gap:12px;margin:0 0 12px;align-items:end}.chuffed-catalogue[data-mode="upgrade"] .chuffed-catalogue-filters{grid-template-columns:2fr 1.5fr 1fr 1fr 1fr}.chuffed-catalogue-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650;min-width:0}.chuffed-catalogue-filters input,.chuffed-catalogue-filters select{width:100%;height:44px;min-width:0;border:1px solid #e3e5ea;border-radius:8px;background:#fff;padding:0 12px;color:#333c4b;font:inherit;font-weight:400;box-shadow:0 2px 10px rgba(21,26,48,.03)}.chuffed-catalogue-filters input:focus,.chuffed-catalogue-filters select:focus{outline:2px solid #f6b6c7;outline-offset:1px}.cc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 17px}.cc-count{color:#68707b;font-size:13px}.cc-clear{border:0;background:transparent;color:#d72c57;cursor:pointer;text-decoration:none;font-weight:600;font-size:12px}.cc-grid{display:grid;grid-template-columns:repeat(var(--cc-columns,4),minmax(0,1fr));gap:16px;align-items:stretch}.cc-card{border:1px solid #eef0f3;border-radius:11px;overflow:hidden;background:#fff;color:#15172e;display:flex;flex-direction:column;min-width:0;box-shadow:0 5px 18px rgba(17,24,39,.045);transition:box-shadow .2s}.cc-card:hover{box-shadow:0 10px 25px rgba(17,24,39,.1)}.cc-image-wrap{position:relative;aspect-ratio:1.5;background:#eef0f3}.cc-image-wrap>a,.cc-image-wrap img{display:block;width:100%;height:100%}.cc-image-wrap img{object-fit:cover}.cc-placeholder{display:grid;place-items:center;height:100%;color:#777}.cc-featured{position:absolute;top:10px;left:10px;padding:5px 8px;border-radius:5px;background:#fffdfb;font-size:10px;font-weight:650;color:#3f4250;box-shadow:0 1px 4px #0001}.cc-heart{position:absolute;right:9px;top:9px;display:grid;place-items:center;width:32px;height:32px;border:1px solid #eceef2;border-radius:50%;background:#fff;color:#eb3b61;cursor:pointer;padding:0;box-shadow:0 1px 5px #0002}.cc-heart.is-saved{color:#ea345a;background:#fff0f4}.cc-heart.is-saved svg{fill:currentColor}.cc-card-body{padding:12px 13px 14px;display:flex;flex:1;flex-direction:column;gap:8px}.cc-meta{display:flex;gap:8px;flex-wrap:wrap;color:#777e88;font-size:11px}.cc-meta span+span:before{content:'·';padding-right:8px}.cc-card h3{font-size:14px;margin:0;line-height:1.35;font-weight:700;min-height:37px}.cc-card h3 a{color:inherit;text-decoration:none}.cc-card h3 a:hover{color:#e9345f}.cc-description{font-size:11px;color:#747b84;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cc-card-bottom{margin-top:auto;padding-top:8px}.cc-pax{font-size:11px;color:#717a84;padding-bottom:10px}.cc-pax:before{content:'♙';font-size:14px;padding-right:5px}.cc-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid #f1f2f4;padding-top:11px}.cc-card-footer strong{font-size:11px;font-weight:700}.cc-included{color:#208469}.cc-upgrade{color:#e83361}.cc-card-footer a{font-size:11px;color:#e83361;font-weight:650;text-decoration:none}.cc-pagination{text-align:center;margin:25px 0}.cc-load{border:0;background:#ec365e;color:#fff;border-radius:7px;padding:12px 26px;font-weight:650;cursor:pointer}.cc-load:disabled,.cc-heart:disabled{opacity:.5}.cc-status{font-size:13px;text-align:center;color:#656565}.cc-grid[aria-busy="true"]{opacity:.55}@media(max-width:1150px){.chuffed-catalogue[data-mode="upgrade"] .chuffed-catalogue-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.cc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.cc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chuffed-catalogue-filters,.chuffed-catalogue[data-mode="upgrade"] .chuffed-catalogue-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-search{grid-column:1/-1}}@media(max-width:520px){.cc-grid{gap:10px}.cc-card-body{padding:10px}.cc-card h3{font-size:12px;min-height:0}.cc-description{display:none}.cc-meta{font-size:10px}.cc-card-footer{align-items:start;flex-direction:column}.cc-image-wrap{aspect-ratio:1.25}.cc-featured{font-size:9px}.cc-heart{width:29px;height:29px}}

/* Protect the catalogue controls from Elementor Kit 6's global button styles. */
.elementor-kit-6 button.cc-heart,.chuffed-catalogue button.cc-heart{appearance:none;width:36px;height:36px;min-width:36px;padding:0;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;}
.cc-image-wrap>a,.cc-image-wrap img{aspect-ratio:6 / 4;}
.chuffed-catalogue .cc-image-wrap{aspect-ratio:6 / 4;}
.chuffed-catalogue .cc-image-wrap>a,.chuffed-catalogue .cc-image-wrap img{height:100%;}
.elementor-kit-6 .chuffed-catalogue button.cc-clear,.chuffed-catalogue button.cc-clear{border:0;border-radius:5px;background:transparent;color:#d72c57;padding:7px 10px;min-height:34px;}
.elementor-kit-6 .chuffed-catalogue button.cc-load,.chuffed-catalogue button.cc-load{border-radius:7px;padding:12px 26px;}
.chuffed-catalogue .cc-neutral{color:#667085;}

/* Respect the hidden attribute even when Elementor's global button rules apply. */
.elementor-kit-6 .chuffed-catalogue button[hidden],
.chuffed-catalogue button[hidden],
.chuffed-catalogue [hidden]{display:none!important;}

/* v0.1.6: concise full-width card status and upgrade treatment. */
.chuffed-catalogue .cc-card-footer{display:block;}
.chuffed-catalogue .cc-card-footer strong{display:block;width:100%;font-size:14px;font-weight:500;}
.chuffed-catalogue .cc-card-footer .cc-upgrade{color:#fff;background:#e83361;padding:10px 25px;border-radius:10px;text-align:center;}

/* v0.1.7: upgrade price is a full-width link to its WooCommerce product page. */
.chuffed-catalogue .cc-card-footer a.cc-upgrade{display:block;width:100%;color:#fff;background:#e83361;padding:10px 25px;border-radius:10px;text-align:center;font-size:14px;font-weight:500;line-height:1.5;text-decoration:none;transition:background .18s ease;}
.chuffed-catalogue .cc-card-footer a.cc-upgrade:hover,.chuffed-catalogue .cc-card-footer a.cc-upgrade:focus-visible{color:#fff;background:#cf254e;text-decoration:none;}

/* v0.1.8: safe single-product selection action and hidden related-preview chrome. */
.cc-choose-unavailable{display:inline-block;color:#6b7280;font-size:14px;}
.cc-choose-button{display:inline-block;background:#e83361;color:#fff!important;border-radius:10px;padding:14px 25px;text-align:center;text-decoration:none!important;font-weight:600;}
.cc-choose-button:hover,.cc-choose-button:focus-visible{background:#cf254e;color:#fff!important;}
.chuffed-catalogue[data-mode="related"] .cc-toolbar,.chuffed-catalogue[data-mode="related"] .cc-pagination{display:none!important;}

/* v0.2.8: included catalogue selection CTA, linking to the product page. */
.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick{display:block;width:100%;padding:10px 15px;border-radius:10px;background:#e83361;color:#fff;text-align:center;font-size:14px;font-weight:500;line-height:1.5;text-decoration:none;transition:background .18s ease;}
.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick:hover,.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick:focus-visible{background:#cf254e;color:#fff;text-decoration:none;}

/* v0.2.9: teal denotes included experiences; pink remains for paid upgrades. */
.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick {background:#168c88;color:#fff;}
.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick:hover,
.chuffed-catalogue[data-mode="included"] .cc-card-footer a.cc-pick:focus-visible {background:#0f716d;color:#fff;}
/* Included cards in wishlist / related views display as a full-width teal status. */
.chuffed-catalogue .cc-card-footer strong.cc-included {display:block;width:100%;padding:10px 15px;border-radius:10px;background:#168c88;color:#fff;text-align:center;font-size:14px;font-weight:500;line-height:1.5;}
/* The included-only single product selection action uses the same visual convention. */
.cc-choose-button {background:#168c88;color:#fff!important;}
.cc-choose-button:hover,.cc-choose-button:focus-visible {background:#0f716d;color:#fff!important;}

/* v0.2.10: standalone product CTA; override Elementor anchor/button styles. */
.elementor-kit-6 a.chuffed-choose-experience.cc-choose-button,
a.chuffed-choose-experience.cc-choose-button {
    display:inline-flex;align-items:center;justify-content:center;
    background-color:#168c88;color:#fff!important;border:0;
    border-radius:10px;padding:14px 25px;text-align:center;text-decoration:none!important;
    font-weight:600;transition:background-color .2s ease;
}
.elementor-kit-6 a.chuffed-choose-experience.cc-choose-button:hover,
.elementor-kit-6 a.chuffed-choose-experience.cc-choose-button:focus-visible,
a.chuffed-choose-experience.cc-choose-button:hover,
a.chuffed-choose-experience.cc-choose-button:focus-visible {background-color:#0f716d;color:#fff!important;}

/* v0.2.11: unobtrusive persistent shortlist. Isolated from Elementor kit button styles. */
.cc-wishlist-drawer [hidden],.elementor-kit-6 .cc-wishlist-drawer [hidden]{display:none!important}
.elementor-kit-6 .cc-wishlist-drawer button,.cc-wishlist-drawer button{font-family:inherit}
.elementor-kit-6 button.cc-wishlist-fab,.cc-wishlist-fab{position:fixed;right:24px;bottom:25px;z-index:10009;display:flex;align-items:center;gap:9px;background:#071447;color:#fff;border:0;border-radius:100px;padding:12px 16px;min-height:49px;box-shadow:0 8px 25px #0714473b;font-size:14px;font-weight:650;cursor:pointer}
.cc-wishlist-fab svg{flex:none}.cc-wishlist-count{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;border-radius:50px;background:#e83361;padding:2px 5px;font-size:12px;color:#fff}
.cc-wishlist-backdrop{position:fixed;inset:0;background:rgba(6,15,34,.42);z-index:10010}
.cc-wishlist-panel{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);z-index:10011;background:#fff;box-shadow:-12px 0 45px #07144725;display:flex;flex-direction:column;transform:translateX(103%);transition:transform .24s ease;color:#071447;visibility:hidden;overflow:hidden}
.cc-wishlist-drawer.is-open .cc-wishlist-panel{transform:translateX(0);visibility:visible}
.cc-wishlist-head{padding:25px 22px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid #e8eaee}
.cc-wishlist-head h2{font-size:22px;line-height:1.25;font-weight:750;color:#071447;margin:0 0 5px}.cc-wishlist-head h2 span{font-size:16px;color:#6b7280}.cc-wishlist-head p{margin:0;color:#697280;font-size:13px}
.elementor-kit-6 button.cc-wishlist-close,.cc-wishlist-close{appearance:none;display:grid;place-items:center;min-width:35px;width:35px;height:35px;padding:0;border:0;border-radius:50%;background:#f3f4f6;color:#071447;font-size:27px;line-height:1;cursor:pointer}
.cc-wishlist-items{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:8px 20px}
.cc-wishlist-item{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid #eef0f2}
.cc-wishlist-thumb{flex:0 0 82px;display:block;width:82px;height:74px;border-radius:8px;overflow:hidden;background:#f2f3f4}.cc-wishlist-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.cc-wishlist-item-copy{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.cc-wishlist-title{font-size:13px;line-height:1.4;font-weight:700;text-decoration:none;color:#071447}.cc-wishlist-title:hover{color:#e83361}.cc-wishlist-location{font-size:11px;color:#737d88}.cc-wishlist-price{font-size:12px;font-weight:650}.cc-wishlist-price.is-included{color:#168c88}.cc-wishlist-price.is-upgrade{color:#e83361}
.elementor-kit-6 button.cc-wishlist-remove,.cc-wishlist-remove{appearance:none;display:grid;place-items:center;min-width:27px;width:27px;height:27px;padding:0;border:0;background:transparent;color:#7b8491;font-size:21px;cursor:pointer}.cc-wishlist-remove:hover{color:#e83361}
.cc-wishlist-message,.cc-wishlist-empty{font-size:12px;line-height:1.5;color:#7b8491;margin:10px 20px}
.cc-wishlist-foot{margin-top:auto;padding:15px 20px 22px;border-top:1px solid #e8eaee;background:#fff}.cc-wishlist-foot p{font-size:12px;line-height:1.5;color:#707a86;margin:0 0 13px}
.cc-wishlist-all{display:block;border-radius:9px;background:#e83361;color:#fff!important;padding:12px 15px;text-decoration:none!important;text-align:center;font-weight:650;font-size:14px}.cc-wishlist-all:hover{background:#ce244e;color:#fff!important}
.cc-wishlist-flying-heart{position:fixed;pointer-events:none;z-index:10020;color:#e83361;width:24px;height:24px;filter:drop-shadow(0 3px 5px #e8336150)}.cc-wishlist-flying-heart svg{width:24px;height:24px;fill:currentColor}
.cc-wishlist-bump{animation:cc-fab-pop .3s ease-out}@keyframes cc-fab-pop{50%{transform:scale(1.1)}}
@media(max-width:767px){.elementor-kit-6 button.cc-wishlist-fab,.cc-wishlist-fab{right:14px;bottom:16px;padding:10px 13px;min-height:44px}.cc-wishlist-head{padding:20px 17px 15px}.cc-wishlist-items{padding:7px 15px}}
@media(prefers-reduced-motion:reduce){.cc-wishlist-panel{transition:none}.cc-wishlist-bump{animation:none}}

/* Explicit unavailable state for saved products that are not included and have no positive upgrade cost. */
.chuffed-catalogue .cc-card-footer strong.cc-neutral{display:block;width:100%;padding:10px 12px;background:#f1f3f5;border-radius:10px;color:#545d6b;text-align:center;font-size:13px;font-weight:500;line-height:1.5;}
.cc-wishlist-price.is-unavailable{color:#657080!important;font-weight:500;}
