.tour-catalog-page{background:#f4f8fa;padding-bottom:4.5rem;color:#083248}.tour-catalog-hero{padding:3.1rem 0 5.6rem;background:linear-gradient(105deg,rgba(3,62,83,.96),rgba(0,120,142,.78)),url('/assets/karimunjawa-banner.webp') center/cover;color:#fff}.tour-catalog-hero h1{margin:.35rem 0 .55rem;font-size:clamp(2.1rem,4.4vw,3.8rem);line-height:1.03;letter-spacing:-.04em}.tour-catalog-hero p{max-width:760px;margin:0;color:#eafcff}.tour-catalog-wrap{margin-top:-3rem}.tour-search{display:grid;grid-template-columns:1.7fr 1fr 1fr auto;gap:.75rem;align-items:end;padding:1rem;box-shadow:0 18px 50px rgba(4,47,67,.16)}.tour-search label,.tour-results-head label{display:grid;gap:.3rem}.tour-search label>span,.tour-results-head label>span{font-size:.75rem;font-weight:800;color:#55717d}.tour-search input,.tour-search select,.tour-results-head select{width:100%;min-height:46px;border:1px solid #c6d9e0;border-radius:10px;background:#fff;padding:.65rem .75rem;color:#083248}.tour-search .button{min-height:46px;white-space:nowrap}.tour-catalog-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:1.2rem;margin-top:2.2rem;align-items:start}.tour-filter{padding:0;overflow:hidden;position:sticky;top:90px}.tour-filter-head{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid #dbe7eb}.tour-filter-head h2{font-size:1rem;margin:0}.tour-filter-head a{font-size:.78rem;font-weight:800;color:#087b83}.tour-filter form{display:grid}.tour-filter fieldset{display:grid;gap:.5rem;margin:0;padding:1rem;border:0;border-bottom:1px solid #e1eaed}.tour-filter legend{font-weight:800;margin-bottom:.5rem}.filter-option{display:flex;gap:.55rem;align-items:center;color:#496773;font-size:.88rem}.filter-option input{accent-color:#008b91}.tour-filter .button{margin:1rem}.tour-results-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem}.tour-results-head h2{margin:.2rem 0 0}.tour-results-head select{min-width:180px}.tour-result-list{display:grid;gap:1rem}.tour-list-card{display:grid;grid-template-columns:250px minmax(0,1fr) 190px;background:#fff;border:1px solid #d3e2e7;border-radius:15px;overflow:hidden;box-shadow:0 8px 24px rgba(5,55,75,.055);transition:.2s ease}.tour-list-card:hover{transform:translateY(-2px);border-color:#83c5c5;box-shadow:0 13px 32px rgba(5,55,75,.11)}.tour-list-photo{min-height:210px;background:linear-gradient(135deg,#dff2f3,#c4e4e8)}.tour-list-photo img{width:100%;height:100%;min-height:210px;object-fit:cover}.tour-list-photo.placeholder-photo{display:grid;place-items:center;color:#527681;font-weight:800}.tour-list-content{padding:1.15rem}.tour-list-meta,.tour-tags{display:flex;flex-wrap:wrap;gap:.4rem}.tour-list-meta span{padding:.25rem .52rem;border-radius:99px;background:#e8f7f5;color:#087477;font-size:.72rem;font-weight:800}.tour-list-content h3{margin:.55rem 0 .3rem;font-size:1.3rem}.tour-list-content h3 a{color:#083248}.tour-list-content>p{margin:.35rem 0;color:#58727d}.tour-list-content .tour-destination{font-weight:700;color:#087b83}.tour-tags{margin-top:.7rem}.tour-tags span{padding:.22rem .45rem;border:1px solid #d6e4e8;border-radius:6px;font-size:.72rem;color:#496873}.tour-list-action{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right;padding:1.15rem;border-left:1px solid #e1eaed}.tour-list-action small,.tour-list-action span{color:#607983}.tour-list-action strong{font-size:1.35rem;color:#006d77;margin:.2rem 0}.tour-list-action .button{width:100%;text-align:center;margin-top:.85rem}.tour-empty{text-align:center;padding:3rem}.tour-empty div{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap}.hotel-manual-notice{display:flex;gap:.8rem;align-items:flex-start;padding:1rem 1.15rem;margin:1rem 0;border:1px solid #f0d39a;border-radius:12px;background:#fff8e9;color:#614714}.hotel-manual-notice>span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#ffb32d;color:#173b4b;font-weight:900}.hotel-manual-notice strong{display:block;color:#173b4b}.hotel-manual-notice p{margin:.2rem 0 0}.hotel-confirm-note.important{padding:.85rem;border-radius:9px;background:#fff8e9;color:#614714;font-weight:700}
@media(max-width:1000px){.tour-catalog-layout{grid-template-columns:1fr}.tour-filter{position:static}.tour-filter form{grid-template-columns:repeat(3,1fr)}.tour-filter .button{align-self:end}.tour-list-card{grid-template-columns:220px minmax(0,1fr)}.tour-list-action{grid-column:2;border-left:0;border-top:1px solid #e1eaed;flex-direction:row;align-items:center;gap:.8rem}.tour-list-photo{grid-row:1/3}.tour-list-action .button{width:auto;margin:0 0 0 auto}}
@media(max-width:700px){.tour-catalog-hero{padding:2.4rem 0 4.7rem}.tour-catalog-wrap{margin-top:-2.4rem}.tour-search{grid-template-columns:1fr 1fr}.tour-search label:first-child,.tour-search .button{grid-column:1/-1}.tour-filter form{grid-template-columns:1fr}.tour-results-head{align-items:start;display:grid}.tour-list-card{grid-template-columns:1fr}.tour-list-photo,.tour-list-photo img{height:220px;min-height:220px}.tour-list-photo{grid-row:auto}.tour-list-action{grid-column:auto;display:grid;grid-template-columns:1fr auto;text-align:left}.tour-list-action span{grid-column:1}.tour-list-action .button{grid-column:2;grid-row:1/3}.hotel-manual-notice{font-size:.9rem}}
@media(max-width:460px){.tour-search{grid-template-columns:1fr}.tour-search label:first-child,.tour-search .button{grid-column:auto}.tour-list-action{grid-template-columns:1fr}.tour-list-action .button{grid-column:auto;grid-row:auto;width:100%;margin-top:.5rem}}

/* R16.5 — katalog ringkas, kontras kuat, dan penjagaan teks */
.tour-catalog-hero{position:relative;isolation:isolate;background-image:linear-gradient(105deg,rgba(2,48,67,.94),rgba(0,111,132,.82)),url('/assets/karimunjawa-banner.webp')}
.tour-catalog-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,28,45,.18),transparent 70%)}
.tour-catalog-hero .eyebrow{color:#ffd166!important;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.tour-catalog-hero h1{max-width:980px;color:#fff!important;text-shadow:0 2px 14px rgba(0,28,45,.38);overflow-wrap:anywhere}
.tour-catalog-hero p{color:#f1fdff!important;font-size:1.02rem;line-height:1.6;text-shadow:0 1px 5px rgba(0,28,45,.45);overflow-wrap:anywhere}
.tour-catalog-layout>*{min-width:0}.tour-filter{align-self:start;height:auto;max-height:none}.tour-filter form{display:block}.tour-filter fieldset{gap:.75rem}.filter-option{min-width:0;line-height:1.35}.filter-option span{min-width:0;overflow-wrap:anywhere}.tour-filter .button{display:block;width:calc(100% - 2rem)}
.tour-list-card>*{min-width:0}.tour-list-content{min-width:0;overflow:hidden}.tour-list-content h3,.tour-list-content h3 a,.tour-list-content p,.tour-tags span,.tour-list-meta span{max-width:100%;overflow-wrap:anywhere}.tour-list-content h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.25}.tour-list-content>p:not(.tour-destination){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;line-height:1.55}.tour-list-action{min-width:0}.tour-list-action strong{white-space:nowrap}.tour-list-action .button{white-space:normal;overflow-wrap:anywhere}
.product-card,.product-card *,.detail-page,.detail-page *,.hotel-detail-page,.hotel-detail-page *,.transport-detail-page,.transport-detail-page *{min-width:0}.product-card h3,.product-card p,.detail-page h1,.detail-page h2,.detail-page h3,.detail-page p,.hotel-detail-page h1,.hotel-detail-page h2,.hotel-detail-page h3,.hotel-detail-page p,.transport-detail-page h1,.transport-detail-page h2,.transport-detail-page h3,.transport-detail-page p{overflow-wrap:anywhere}.slug-input-prefix{display:flex;align-items:stretch;border:1px solid #c6d9e0;border-radius:10px;overflow:hidden;background:#f4f8fa}.slug-input-prefix>span{display:flex;align-items:center;padding:0 .75rem;color:#526f7c;font-weight:700;border-right:1px solid #c6d9e0;white-space:nowrap}.slug-input-prefix>input{border:0!important;border-radius:0!important;min-width:0}
@media(max-width:1000px){.tour-filter form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.tour-filter fieldset{border-bottom:0}.tour-filter .button{width:auto;min-width:160px}}
@media(max-width:700px){.tour-catalog-hero h1{font-size:clamp(2rem,9vw,3rem);line-height:1.08}.tour-filter form{grid-template-columns:1fr}.tour-filter .button{width:calc(100% - 2rem)}.tour-list-content h3{-webkit-line-clamp:3}.slug-input-prefix{display:grid}.slug-input-prefix>span{border-right:0;border-bottom:1px solid #c6d9e0;padding:.65rem .75rem;white-space:normal}}
