.cst-marketplace,.cst-product-page{background:var(--cst-color-surface,#f5f7fa);color:var(--cst-color-blue,#062b57)}
.cst-marketplace__container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.cst-marketplace__hero,.cst-product-page__hero{padding:clamp(56px,8vw,104px) 0;background:var(--cst-color-blue,#062b57);color:#fff}
.cst-marketplace__hero h1,.cst-product-page__hero h1{max-width:900px;margin:10px 0 18px;font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.05}
.cst-marketplace__hero p,.cst-product-page__lead{max-width:760px;font-size:clamp(1rem,2vw,1.25rem);line-height:1.65}
.cst-marketplace__eyebrow{color:var(--cst-color-gold,#d4af37);font-weight:800;letter-spacing:.12em}
.cst-marketplace__body{padding-block:42px 72px}
.cst-marketplace__filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:12px;align-items:end;padding:20px;background:#fff;border:1px solid #dbe4ed;border-radius:16px;box-shadow:0 10px 34px #062b5712}
.cst-marketplace__filters label{display:grid;gap:7px;font-weight:700}
.cst-marketplace__filters input,.cst-marketplace__filters select{min-height:46px;padding:9px 12px;border:1px solid #b8c5d1;border-radius:10px;background:#fff;color:#062b57}
.cst-marketplace__filters button,.cst-product-page__booking a{min-height:46px;padding:12px 18px;border:0;border-radius:10px;background:var(--cst-color-blue,#062b57);color:#fff;font-weight:800;text-decoration:none;cursor:pointer}
.cst-marketplace__result-head{margin:34px 0 18px}
.cst-marketplace__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cst-marketplace__grid--single{grid-template-columns:1fr}
.cst-product-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;background:#fff;border:1px solid #dbe4ed;border-radius:18px;box-shadow:0 10px 32px #062b5712}
.cst-product-card--horizontal{display:grid;grid-template-columns:minmax(220px,.8fr) 1.2fr}
.cst-product-card__media{aspect-ratio:16/9;background:#e7edf3;overflow:hidden}
.cst-product-card__media img{width:100%;height:100%;object-fit:cover}
.cst-product-card__body{display:flex;flex:1;flex-direction:column;padding:22px}
.cst-product-card__meta{display:flex;justify-content:space-between;gap:12px;color:#8a6819;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.cst-product-card__title{margin:10px 0;font-size:1.28rem;line-height:1.25}.cst-product-card__title a{color:inherit;text-decoration:none}
.cst-product-card__summary{color:#475569;line-height:1.55}
.cst-product-card__features{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;padding:0;list-style:none}.cst-product-card__features li{padding:7px 9px;border-radius:999px;background:#eef3f8;font-size:.82rem}
.cst-product-card__footer{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:18px;border-top:1px solid #e4eaf0}
.cst-product-card__price{display:grid;gap:3px}.cst-product-card__price small{color:#64748b}.cst-product-card__price strong{font-size:1.2rem}
.cst-product-card__action{font-weight:800;color:#062b57}
.cst-marketplace__empty{padding:54px;text-align:center;background:#fff;border:1px solid #dbe4ed;border-radius:18px}
.cst-marketplace__pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:34px}.cst-marketplace__pagination a{font-weight:800;color:#062b57}
.cst-marketplace :where(a,button,input,select):focus-visible,.cst-product-page :where(a,button,input,select):focus-visible{outline:3px solid var(--cst-color-gold,#d4af37);outline-offset:3px}
.cst-product-page__layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;padding-block:42px 72px;align-items:start}
.cst-product-page__content>section,.cst-product-page__booking{margin-bottom:20px;padding:28px;background:#fff;border:1px solid #dbe4ed;border-radius:18px;box-shadow:0 10px 32px #062b5712}
.cst-product-page__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cst-product-page__facts div{padding:14px;background:#f5f7fa;border-radius:10px}.cst-product-page__facts dt{font-size:.8rem;font-weight:800;text-transform:uppercase}.cst-product-page__facts dd{margin:5px 0 0}
.cst-product-page__columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cst-marketplace__preview,.cst-search__preview{margin-bottom:18px;padding:12px 16px;border-left:4px solid var(--cst-color-gold,#d4af37);background:#fff8dc;color:var(--cst-color-blue,#062b57)}
.cst-product-page__variant-list{display:grid;gap:14px}.cst-product-page__variant{padding:18px;border:1px solid #dbe4ed;border-radius:14px;background:#f8fafc}.cst-product-page__variant>div{display:flex;justify-content:space-between;gap:14px;align-items:start}.cst-product-page__variant code{font-size:.75rem}.cst-product-page__variant dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 0}.cst-product-page__variant dl div{min-width:0}.cst-product-page__variant dt{font-size:.75rem;font-weight:800;text-transform:uppercase}.cst-product-page__variant dd{margin:3px 0 0;overflow-wrap:anywhere}.cst-product-page__component-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cst-product-page__component-list article{display:grid;gap:6px;padding:16px;border-radius:12px;background:#f5f7fa}
.cst-product-page__booking{position:sticky;top:24px;display:grid;gap:14px}.cst-product-page__booking>strong{font-size:1.8rem}.cst-product-page__booking a{text-align:center}
@media(max-width:960px){.cst-marketplace__filters{grid-template-columns:1fr 1fr}.cst-marketplace__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cst-product-page__layout{grid-template-columns:1fr}.cst-product-page__booking{position:static}}
@media(max-width:640px){.cst-marketplace__container{width:min(100% - 28px,1180px)}.cst-marketplace__filters,.cst-marketplace__grid,.cst-product-card--horizontal,.cst-product-page__facts,.cst-product-page__columns,.cst-product-page__variant dl,.cst-product-page__component-list{grid-template-columns:1fr}.cst-product-page__variant>div{display:grid}.cst-marketplace__empty{padding:32px 20px}.cst-product-card__footer{align-items:start;flex-direction:column}.cst-marketplace__pagination{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.cst-marketplace *,.cst-product-page *{scroll-behavior:auto!important;transition:none!important}}
