/* KTP /packages/ catalogue — builds on booking.css tokens (.bk-results) and facet styles (.bk-facet/.bk-opt). */
.pk [hidden]{display:none!important}
.pk-hero{padding:18px 0 20px;background:linear-gradient(180deg,#F6EFE6,var(--paper));border-bottom:1px solid var(--bd)}
.pk-hero .ktp-crumbs{margin-bottom:6px}
.pk-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:center}
.pk-hero__media{min-width:0}
.pk-hero__media picture,.pk-hero__media figure{display:block;margin:0}
.pk-hero__media img{display:block;width:100%;height:190px;object-fit:cover;border-radius:16px}
.pk-hero__media .ktp-credit{margin:4px 0 0;font-size:11px;line-height:15px}
.pk-eyebrow{margin:0;font:700 12px/1 Inter,system-ui,sans-serif;letter-spacing:.12em;color:var(--r)}
.pk-hero .bk-h1{margin:6px 0 4px}
.pk-hero .bk-intro{margin:0 0 14px;max-width:680px;font-size:16px;line-height:1.55}
.pk-hero__btns{display:flex;flex-wrap:wrap;gap:10px}
.pk-h2{font:600 clamp(22px,2.6vw,28px)/1.2 Fraunces,Georgia,serif;margin:0}

.pk-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;padding-top:22px;padding-bottom:48px;align-items:start}
.pk-filters{position:sticky;top:calc(88px + var(--ktp-admin-bar,0px));max-height:calc(100vh - 104px - var(--ktp-admin-bar,0px));overflow:auto;background:#fff;border:1px solid var(--bd);border-radius:16px;padding:6px 16px 14px}
.pk-filters__head{display:flex;justify-content:space-between;align-items:center;padding:8px 0 0}
.pk-filters__head h2{font:600 18px Fraunces,Georgia,serif;margin:0}
.pk-filters .bk-sheet-close{display:none}
.pk-filters .bk-facet:first-of-type{border-top:0}
.pk-filters__act{display:flex;gap:8px;margin-top:10px}
.pk-filters__act .bk-btn{flex:1}
.pk-more{margin-top:4px}
.pk-more summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--r);min-height:34px;display:flex;align-items:center}
.pk-on .pk-sortm{display:none}
.pk-on .pk-filters__act [data-pk-apply-btn]{display:none}
.pk-open,.pk-js{display:none}
.pk-on .pk-js{display:flex}

.pk-toolbar{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.pk-count{margin:4px 0 0;font-size:14px;color:var(--mut)}
.pk-count b{color:var(--ink)}
.pk-toolbar__act{display:flex;align-items:center;gap:8px}
.pk-sort{align-items:center;gap:6px;font-size:14px;color:var(--mut)}
.pk-sort select,.pk-sortm select{min-height:42px;border:1px solid var(--bd);border-radius:10px;padding:0 10px;font:500 14px Inter,system-ui,sans-serif;background:#fff}
.pk-sortm select{width:100%}
.pk-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.pk-chips:empty{display:none}
.pk-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff!important;font:600 13px Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer}
.pk-chip:hover{background:#000}
.pk-note{font-size:13px;color:var(--mut);margin:0 0 14px}
.pk-note a{color:var(--r)}

.pk-grid{list-style:none;margin:0;padding:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.pk-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--bd);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(31,30,29,.04)}
.pk-card__img{display:block;aspect-ratio:3/2;background:var(--sand);overflow:hidden}
.pk-card__img img{width:100%;height:100%;object-fit:cover;display:block}
.pk-card__body{padding:14px 16px 6px;display:flex;flex-direction:column;gap:8px;flex:1}
.pk-card__title{font:600 20px/1.25 Fraunces,Georgia,serif;margin:0}
.pk-card__title a{color:var(--ink);text-decoration:none}
.pk-card__title a:hover{color:var(--r)}
.pk-card__dur{margin:0;font-size:14px;color:var(--mut)}
.pk-card__dur b{color:var(--ink);font-size:15px}
.pk-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.pk-tags li{padding:2px 10px;border-radius:999px;background:var(--sand);font-size:12px;font-weight:600;color:var(--rd)}
.pk-stay{margin:0;padding:8px 0;list-style:none;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);display:grid;gap:4px}
.pk-stay li{display:flex;justify-content:space-between;gap:10px;font-size:14px}
.pk-stay b{font-weight:600}
.pk-card__sum{margin:0;font-size:14px;color:var(--ink)}
.pk-inc{margin:0;padding:0;list-style:none;display:grid;gap:3px;font-size:13px;color:var(--mut)}
.pk-inc li{display:flex;gap:8px}
.pk-inc li::before{content:"✓";color:var(--pine);font-weight:700;flex:none}
.pk-card__foot{padding:12px 16px 16px;border-top:1px solid var(--bd);display:grid;gap:10px}
.pk-price{min-height:64px}
.pk-price__on,.pk-price__quote{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px}
.pk-price__lbl,.pk-price__pp{font-size:13px;color:var(--mut)}
.pk-price b{font:600 24px/1.1 Fraunces,Georgia,serif;color:var(--r)}
.pk-price small{flex-basis:100%;font-size:12.5px;color:var(--mut)}
.pk-price .ktp-fx{flex-basis:100%;font-size:12px;color:var(--mut)}
.pk-card__act{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pk-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 12px;border:0;border-radius:12px;background:var(--r);color:#fff!important;font:600 14px/1.1 Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer;text-align:center}
.pk-btn:hover{background:var(--rd)}
.pk-btn--ghost{background:#fff;color:var(--r)!important;border:1.5px solid #C9A79F}
.pk-btn--ghost:hover{background:var(--paper);border-color:var(--r)}
.pk-btn--wa{background:#25D366;color:#0B3B21!important}
.pk-btn--wa:hover{background:#1FBE5B}
.pk-btn[disabled]{opacity:.5;cursor:default}
.pk-cmp{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-height:36px;font-size:14px;font-weight:600;cursor:pointer}
.pk-cmp input{width:18px;height:18px;accent-color:var(--r)}
.pk-link{background:none;border:0;padding:0;color:var(--r)!important;font:600 14px Inter,system-ui,sans-serif;text-decoration:underline;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.pk-link svg{display:none}

.pk-empty{padding:28px 24px;background:#fff;border:1px dashed #C9A79F;border-radius:16px}
.pk-empty h3{margin:0 0 6px;font:600 20px Fraunces,Georgia,serif}
.pk-empty__act{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.pk-empty .pk-btn{padding:0 18px}

/* compare tray + dialog */
.pk-tray{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;border-top:1px solid var(--bd);box-shadow:0 -8px 24px rgba(31,30,29,.14);padding:10px 0}
.pk-tray__in{display:flex;justify-content:space-between;align-items:center;gap:12px}
.pk-tray__in p{margin:0;font-weight:600}
.pk-tray__in>div{display:flex;align-items:center;gap:12px}
.pk-cmpbox{position:fixed;inset:0;z-index:130;background:rgba(20,18,16,.55);display:flex;align-items:center;justify-content:center;padding:20px}
.pk-cmpbox__in{background:#fff;border-radius:18px;width:min(1100px,100%);max-height:90vh;overflow:auto;padding:0 22px 22px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.pk-cmpbox__bar{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;padding:16px 0 10px;z-index:2}
.pk-cmpbox .bk-sheet-close{display:grid}
.pk-cmptable{width:100%;border-collapse:collapse;font-size:14px}
.pk-cmptable th,.pk-cmptable td{padding:10px 12px;border-top:1px solid var(--bd);text-align:left;vertical-align:top}
.pk-cmptable thead th{font:600 17px Fraunces,Georgia,serif;border-top:0}
.pk-cmptable thead a{color:var(--ink);text-decoration:none}
.pk-cmptable tbody th{width:150px;font-size:13px;color:var(--mut);font-weight:700}
.pk-cmptable ul,.pk-cmpitem ul{margin:0;padding-left:16px}
.pk-cmptable b.ktp-inr,.pk-cmpitem b.ktp-inr{font:600 20px Fraunces,Georgia,serif;color:var(--r)}
.pk-cmptable small,.pk-cmpitem small{display:block;color:var(--mut);font-size:12.5px}
.pk-cmpact{display:flex;flex-wrap:wrap;gap:8px}
.pk-cmpstack{display:none}
.pk-cmpitem{border:1px solid var(--bd);border-radius:14px;padding:14px;margin-bottom:12px}
.pk-cmpitem h3{margin:0 0 8px;font:600 18px Fraunces,Georgia,serif}
.pk-cmpitem h3 a{color:var(--ink);text-decoration:none}
.pk-cmpitem dt{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--mut);margin-top:10px}
.pk-cmpitem dd{margin:2px 0 0;font-size:14px}

/* below the results */
.pk-sec{padding:44px 0}
.pk-sec--sand{background:var(--sand)}
.pk-sec .bk-muted{max-width:720px}
.pk-guide{list-style:none;margin:18px 0 8px;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.pk-guide li{background:#fff;border:1px solid var(--bd);border-radius:14px;display:flex;flex-direction:column}
.pk-guide__a{display:flex;flex-direction:column;gap:3px;padding:14px 16px;text-decoration:none;color:var(--ink);flex:1}
.pk-guide__a:hover b{color:var(--r)}
.pk-guide__q{font-size:13px;color:var(--mut)}
.pk-guide__a b{font:600 18px Fraunces,Georgia,serif}
.pk-guide__a small{color:var(--r);font-weight:600;margin-top:4px}
.pk-guide__more{padding:0 16px 14px}
.pk-center{text-align:center;margin:18px 0 0}
.pk-cover{display:grid;gap:18px;grid-template-columns:1fr 1fr;margin:18px 0 12px}
.pk-cover__col{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:18px 20px}
.pk-cover__col--b{background:var(--paper)}
.pk-cover h3{margin:0 0 8px;font:600 19px Fraunces,Georgia,serif}
.pk-cover ul{margin:0;padding-left:18px;display:grid;gap:6px}
.pk-links{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.pk-links a{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;border:1px solid var(--bd);border-radius:999px;background:#fff;color:var(--ink);font-weight:600;text-decoration:none}
.pk-links a:hover{border-color:var(--r);color:var(--r)}

@media (max-width:899px){
  .pk-layout{grid-template-columns:1fr;padding-top:16px}
  .pk-open{display:inline-flex}
  .pk-on .pk-js{display:none}
  .pk-on .pk-sortm{display:block}
  .pk-on .pk-filters__act [data-pk-apply-btn]{display:inline-flex}
  .pk-filters{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:110;max-height:88vh;border-radius:18px 18px 0 0;transform:translateY(105%);transition:transform .25s;box-shadow:0 -10px 40px rgba(0,0,0,.25);visibility:hidden}
  .pk-filters.is-open{transform:none;visibility:visible}
  .pk-filters .bk-sheet-close{display:grid}
  .pk-filters__act{position:sticky;bottom:0;background:#fff;padding:10px 0 4px;border-top:1px solid var(--bd)}
  .pk-cover{grid-template-columns:1fr}
}
@media (max-width:759px){
  .pk-grid{grid-template-columns:1fr}
  .pk-cmpbox{padding:0;align-items:flex-end}
  .pk-cmpbox__in{border-radius:18px 18px 0 0;max-height:92vh;padding:0 14px 18px}
  .pk-cmptable{display:none}
  .pk-cmpstack{display:block}
  .pk-tray__in{flex-wrap:wrap}
  .pk-toolbar{align-items:center}
}
@media (max-width:899px) and (min-width:760px){.pk-filters{left:auto;right:0;width:420px;top:0;bottom:0;max-height:none;border-radius:18px 0 0 18px;transform:translateX(105%)}.pk-filters.is-open{transform:none}}
@media (prefers-reduced-motion:reduce){.pk-filters{transition:none}}

/* ---- catalogue v2 ---- */
.pk-search{padding:12px 0 4px;border-top:0}
.pk-search label{display:block;font-weight:700;font-size:14px;margin-bottom:6px}
.pk-search input{width:100%;min-height:44px;border:1px solid var(--bd);border-radius:10px;padding:0 12px;font:500 15px Inter,system-ui,sans-serif;background:#fff;color:var(--ink)}
.pk-match{display:grid;gap:2px;margin-top:8px}
.pk-match label{display:flex;align-items:center;gap:8px;min-height:36px;font-size:14px;cursor:pointer}
.pk-match input{width:18px;height:18px;accent-color:var(--r)}
.pk-clearall{display:inline-flex;align-items:center;min-height:36px;padding:0 6px;border:0;background:none;color:var(--r);font:600 13px Inter,system-ui,sans-serif;text-decoration:underline;cursor:pointer}
.pk-count b{font-weight:700}
.pk-h2:focus{outline:none}
.pk-h2:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.pk-error{margin:0 0 14px;padding:14px 16px;border:1px solid #D9A99E;background:#FBEDEA;border-radius:12px;font-size:14px}
.pk-error a{color:var(--r);font-weight:600}
.pk-pager{margin:22px 0 4px}
.pk-pager ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pk-pg{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--bd);border-radius:12px;background:#fff;color:var(--ink);font:600 14px Inter,system-ui,sans-serif;text-decoration:none}
.pk-pg:hover{border-color:var(--r);color:var(--r)}
.pk-pg.is-cur{background:var(--ink);border-color:var(--ink);color:#fff}
.pk-credits{margin:18px 0 0;font-size:12.5px;color:var(--mut)}
.pk-credits a{color:var(--r)}
.pk-empty__other{margin:10px 0 0;font-size:14px}
.pk-empty__other a{color:var(--r);font-weight:600}
.pk-basis{flex-basis:100%;margin-top:4px;font-size:12.5px}
.pk-basis summary{cursor:pointer;color:var(--r);font-weight:600;min-height:28px;display:flex;align-items:center}
.pk-basis ul{margin:4px 0 0;padding:10px 12px;list-style:none;display:grid;gap:5px;background:var(--paper);border:1px solid var(--bd);border-radius:10px;color:var(--ink)}
.pk-basis li b{font-weight:700}
.pk-price__quote small{flex-basis:100%}
.pk-card__sum{font-size:14px;line-height:1.5}
body.pk-tray-on{padding-bottom:76px}

.pk-more-link{margin:16px 0 0}
.pk-dur{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.pk-dur li{background:#fff;border:1px solid var(--bd);border-radius:14px}
.pk-dur__a{display:flex;flex-direction:column;gap:4px;padding:14px 16px;height:100%;text-decoration:none;color:var(--ink)}
.pk-dur__a:hover b{color:var(--r)}
.pk-dur__d{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pine)}
.pk-dur__a b{font:600 17px/1.25 Fraunces,Georgia,serif}
.pk-dur__a small{color:var(--mut);font-size:13px}
.pk-h3{font:600 20px Fraunces,Georgia,serif;margin:26px 0 0}
.pk-check{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px 28px;grid-template-columns:1fr 1fr;max-width:760px}
.pk-check li{display:flex;gap:10px;font-size:15px}
.pk-check li::before{content:"✓";color:var(--pine);font-weight:700;flex:none}
.pk-sec--pine{background:var(--pine);color:#fff}
.pk-sec--pine .pk-h2{color:#fff}
.pk-banner{display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.pk-banner p{margin:8px 0 0;max-width:640px;color:#E8EFEA;font-size:16px;line-height:1.55}
.pk-banner__btn{background:#fff;color:var(--r)!important}
.pk-banner__btn:hover{background:var(--sand)}
.pk-guides{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.pk-guides li{background:#fff;border:1px solid var(--bd);border-radius:14px}
.pk-guides .pk-guide__a{padding:14px 16px;height:100%}
.pk-guides .pk-guide__a b{font:600 16px/1.3 Fraunces,Georgia,serif}
.pk-guides .pk-guide__a small{color:var(--mut);font-weight:400;font-size:13px;margin-top:2px}
.pk-themes-h{margin:22px 0 0;font-weight:700;font-size:14px;color:var(--mut)}
.pk-themes-h+.pk-links{margin-top:8px}

.pk-diff{background:var(--paper);border:1px solid var(--bd);border-radius:12px;padding:12px 16px;margin:0 0 12px}
.pk-diff h3{margin:0 0 6px;font:600 17px Fraunces,Georgia,serif}
.pk-diff ul{margin:0;padding-left:18px;display:grid;gap:4px;font-size:14px}
.pk-cmpnote{font-size:13px;color:var(--mut);margin:0 0 12px}
.pk-cmpbar{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;padding:16px 0 10px;z-index:2}
.pk-rm{display:block;margin-top:6px;padding:0;border:0;background:none;color:var(--r);font:600 13px Inter,system-ui,sans-serif;text-decoration:underline;cursor:pointer;min-height:28px}
.pk-cmpfoot{margin:14px 0 0;text-align:right}
.pk-card :focus-visible,.pk-filters :focus-visible,.pk-cmpbox :focus-visible,.pk-pg:focus-visible,.pk-chip:focus-visible,.pk-clearall:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

@media (max-width:1099px){.pk-dur,.pk-guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:899px){
  .pk-hero__grid{grid-template-columns:1fr;gap:12px}
  .pk-hero__media img{height:120px}
}
@media (max-width:759px){
  .pk-dur,.pk-guides,.pk-check{grid-template-columns:1fr}
  .pk-banner__btn{width:100%}
}

.pk-note--more{margin:-6px 0 14px}
.pk-note--more summary{cursor:pointer;color:var(--r);font-weight:600;min-height:32px;display:flex;align-items:center}
.pk-note--more p{margin:4px 0 0}
.pk-sec .pk-h2{margin:0 0 8px}
.pk-sec .bk-muted{margin:0 0 4px}
.pk-h3{margin:34px 0 6px}
.pk-guides,.pk-dur{margin-top:18px}
.pk-more-link{margin:18px 0 0}
.pk-themes-h{margin:28px 0 0}
.pk-cmptable ul,.pk-cmpitem ul{list-style:disc}
.pk-note a,.pk-credits a,.pk-empty__other a,.pk-error a,.pk-more-link a{text-decoration:underline;text-underline-offset:2px}
.pk-road{margin:0;padding:6px 10px;border-left:3px solid var(--gold);background:var(--paper);font-size:13px}
