 .wptbm-tour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px;margin:24px 0}.wptbm-tour-card{border:1px solid #eee;border-radius:4px;overflow:hidden;background:#fff;display:flex;flex-direction:column;height:100%}.wptbm-tour-thumb img{width:100%;display:block}.wptbm-tour-body{padding:16px;display:flex;flex-direction:column;flex:1}.wptbm-tour-title{margin:0 0 8px;font-size:18px}.wptbm-tour-meta{font-size:12px;color:#666;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.wptbm-tour-excerpt{font-size:14px;color:#444;margin-bottom:12px}.wptbm-tour-pricing{font-weight:600;margin-bottom:12px}.wptbm-tour-actions{margin-top:auto}.wptbm-tour-actions .button,.wptbm-btn-primary,.wptbm-btn-secondary,.wptbm-btn-submit{display:inline-block;padding:8px 14px;border-radius:3px;text-decoration:none;font-size:14px;cursor:pointer}.wptbm-btn-primary{background:#0073aa;color:#fff;border:none}.wptbm-btn-secondary{background:#fafafa;color:#333;border:1px solid #ddd}.wptbm-booking-wrapper{margin-top:24px;padding:16px;border:1px solid #eee;border-radius:4px}.wptbm-form-row{margin-bottom:12px}.wptbm-form-row label{display:block;font-weight:600;margin-bottom:4px}.wptbm-form-row input[type=text],.wptbm-form-row input[type=email],.wptbm-form-row input[type=number],.wptbm-form-row input[type=date],.wptbm-form-row textarea{width:100%;max-width:100%}.wptbm-form-row-inline{display:flex;gap:16px}.wptbm-form-row-inline>div{flex:1}.wptbm-notice{padding:10px 14px;border-radius:3px;margin-bottom:16px}.wptbm-notice-success{background:#edf7ed;border:1px solid #46b450}.wptbm-notice-error{background:#fbeaea;border:1px solid #d63638}.wptbm-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.wptbm-single-tour .wptbm-tour-header{display:flex;flex-wrap:wrap;gap:24px;margin-top:24px}.wptbm-single-tour .wptbm-tour-highlights{list-style:none;margin:0;padding:0}.wptbm-single-tour .wptbm-tour-highlights li{margin-bottom:4px}.wptbm-pricing-box{margin-left:auto;min-width:260px;border:1px solid #eee;border-radius:4px;padding:16px;background:#fafafa}.wptbm-cta-buttons a{margin-right:8px;margin-bottom:6px}.wptbm-section{margin-top:32px}.wptbm-itinerary-list{list-style:none;margin:0;padding:0}.wptbm-itinerary-item{margin-bottom:16px;border-left:3px solid #0073aa;padding-left:12px}.wptbm-availability-table-front{width:100%;border-collapse:collapse}.wptbm-availability-table-front th,.wptbm-availability-table-front td{border:1px solid #eee;padding:8px;text-align:left}.wptbm-map-embed iframe{max-width:100%}.wptbm-tour-search .wptbm-search-form{margin-bottom:24px}.wptbm-search-row{margin-bottom:12px}.wptbm-search-row-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.wptbm-featured-grid .wptbm-featured-card{border-color:#0073aa}.wptbm-no-results{margin-top:16px}.wptbm-pagination{margin-top:16px}.wptbm-pagination .page-numbers{margin-right:4px;padding:4px 8px;border:1px solid #ddd;text-decoration:none}.wptbm-pagination .current{background:#0073aa;color:#fff;border-color:#0073aa}

/* Member catalog header */
.wptbm-member-catalog{margin:0 auto 32px;width:100%;max-width:100%}
.wptbm-member-header{background:#fff;border-bottom:1px solid #e5e7f0;box-shadow:0 2px 4px rgba(15,23,42,.04);width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);position:relative}
.wptbm-member-header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 40px;max-width:1200px;margin:0 auto;min-height:80px}
.wptbm-member-logo-wrap{flex:0 0 auto;min-width:50px;min-height:50px}
.wptbm-member-logo{max-height:48px;width:auto;display:block}
.wptbm-member-logo-placeholder{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border:1px solid #ccc;border-radius:3px;font-weight:700;color:#444;background:#fff;text-transform:uppercase;font-size:20px}
.wptbm-member-info-main{flex:1 1 auto;display:flex;align-items:center;min-width:0}
.wptbm-member-name{margin:0;font-size:18px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wptbm-member-contact{flex:0 0 auto;text-align:right;font-size:13px;color:#374151}
.wptbm-member-contact-row{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.wptbm-member-contact-item{display:flex;align-items:center;gap:6px;margin:0}
.wptbm-member-contact-icon{color:#ef4444;font-size:14px;line-height:1}
.wptbm-member-contact a{color:#111827;text-decoration:none}
.wptbm-member-contact a:hover{text-decoration:underline}
.wptbm-member-banner-strip{width:100vw;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);position:relative}
.wptbm-member-banner-strip > img{width:100%;display:block;max-height:260px;object-fit:cover}
.wptbm-member-tours{width:100%;max-width:100%;margin:24px auto 32px;padding:0 24px}

body.wptbm-member-catalog-page{margin:0;background:#f4f6fb}
body.wptbm-member-catalog-page>header,
body.wptbm-member-catalog-page>.site-header,
body.wptbm-member-catalog-page>#masthead,
body.wptbm-member-catalog-page #page>header,
body.wptbm-member-catalog-page #page>.site-header,
body.wptbm-member-catalog-page #page>#masthead{display:none!important}

/* Tour catalog with sidebar filters */
.wptbm-tour-catalog{margin:24px 0 40px;padding:0 40px;display:flex;flex-direction:column;gap:24px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.wptbm-tour-catalog-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:flex-start}
.wptbm-tour-catalog-sidebar{background:#fff;border-radius:14px;border:1px solid #e5e7eb;padding:20px 20px 18px;position:sticky;top:80px;align-self:flex-start;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.wptbm-tour-catalog-main{display:flex;flex-direction:column;gap:10px;margin-top:-65px}
.wptbm-tour-catalog-header{display:flex;justify-content:space-between;align-items:center;gap:16px}
.wptbm-tour-count{font-weight:600;font-size:16px}
.wptbm-tour-sort select{min-width:160px}
.wptbm-view-toggle{display:inline-flex;align-items:center;gap:4px;margin-right:10px;margin-top:4px}
.wptbm-view-toggle-btn{width:28px;height:28px;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#6b7280;display:inline-flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;padding:0;line-height:1}
.wptbm-view-toggle-btn.wptbm-tour-catalog-sidebar{background:#fff;border-radius:14px;border:1px solid #e5e7eb;padding:20px 20px 18px;position:sticky;top:80px;align-self:flex-start;box-shadow:0 10px 30px rgba(15,23,42,.06)}
.wptbm-catalog-filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;border-top:4px solid #0073aa;padding-top:12px}
.wptbm-catalog-filter-header h2{margin:0;font-size:18px;font-weight:700;color:#111827}
.wptbm-catalog-filter-header h2 svg{margin-right:4px}
.wptbm-catalog-reset{font-size:11px;color:#fff;text-decoration:none;background:#ef4444;padding:6px 12px;border-radius:6px;font-weight:600;transition:all .2s;display:inline-flex;align-items:center;gap:4px;box-shadow:0 1px 2px rgba(0,0,0,.1)}
.wptbm-catalog-reset svg{margin-right:4px}
.wptbm-catalog-reset:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.15)}
.wptbm-catalog-filter-group{margin-bottom:18px}
.wptbm-catalog-filter-group h3{margin:0 0 8px;font-size:14px;font-weight:600;color:#374151}
.wptbm-catalog-filter-group ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.wptbm-catalog-filter-group label{font-size:14px;display:flex;align-items:center;gap:8px;color:#111827}
.wptbm-catalog-filter-group input[type=checkbox]{width:16px;height:16px}
.wptbm-catalog-apply{width:100%;margin-top:8px}
.wptbm-catalog-apply .button{width:100%;padding:12px 20px;background:#dc2626;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px rgba(220,38,38,.25)}
.wptbm-catalog-apply .button:hover{background:#b91c1c;box-shadow:0 6px 16px rgba(220,38,38,.35)}
.wptbm-tour-catalog .wptbm-tour-grid{display:flex;flex-direction:column;gap:18px;margin:0}
.wptbm-tour-catalog .wptbm-profile-banner-preview{margin-top:8px;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;background:#f3f4f6;height:120px;display:flex;align-items:center;justify-content:center}
.wptbm-profile-banner-preview img{width:100%;height:100%;object-fit:cover}
.wptbm-profile-banner-section{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}
.wptbm-profile-banner-section label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.wptbm-profile-banner-placeholder{color:#9ca3af;font-size:13px}
.wptbm-profile-select-btn{margin-top:8px;width:100%}
.wptbm-profile-left .wptbm-featured-image-remove{margin-top:8px;width:100%}
.wptbm-tour-catalog .wptbm-tour-thumb{flex:0 0 260px;max-width:260px;position:relative;display:block;overflow:hidden;aspect-ratio:4/3}
.wptbm-tour-catalog .wptbm-tour-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-tour-catalog .wptbm-tour-body{flex:1;padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.wptbm-tour-catalog .wptbm-tour-body-inner{display:flex;align-items:stretch;justify-content:space-between;gap:20px}
.wptbm-tour-catalog .wptbm-tour-body-main{flex:1;display:flex;flex-direction:column;gap:6px}
.wptbm-tour-catalog .wptbm-tour-title{margin-bottom:6px}
.wptbm-tour-catalog .wptbm-tour-title a{text-decoration:none;color:#111827}
.wptbm-tour-catalog .wptbm-tour-title a:hover{text-decoration:underline}
.wptbm-tour-catalog .wptbm-tour-meta{font-size:13px;color:#4b5563;display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.wptbm-tour-catalog .wptbm-tour-meta span{display:inline-flex;align-items:center;gap:4px}
.wptbm-tour-catalog .wptbm-tour-type:before{content:"\1F3F7";font-size:13px}
.wptbm-tour-catalog .wptbm-price-type-row{display:none;margin-top:4px;align-items:center;flex-wrap:wrap;gap:8px}
.wptbm-tour-catalog .wptbm-price-inline{display:inline-flex;align-items:baseline;gap:4px;margin-right:8px}
.wptbm-tour-catalog .wptbm-price-inline-amount{font-size:18px;font-weight:700;color:#f04438}
.wptbm-tour-catalog .wptbm-price-inline-unit{font-size:11px;font-weight:600;text-transform:uppercase;color:#6b7280}
.wptbm-tour-catalog .wptbm-price-inline-type{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#e5f0ff;color:#1f2937;font-size:11px;font-weight:600}
.wptbm-tour-catalog .wptbm-tour-author-line{font-size:13px;color:#6b7280;display:none;align-items:center;gap:6px;margin-bottom:4px}
.wptbm-tour-catalog .wptbm-tour-author-label:before{content:"\1F464";margin-right:4px}
.wptbm-tour-catalog .wptbm-tour-author-name{color:#2563eb;font-weight:500;text-decoration:none}
.wptbm-tour-catalog .wptbm-tour-author-name:hover{text-decoration:underline}
.wptbm-tour-catalog .wptbm-tour-excerpt{display:none}
.wptbm-tour-catalog .wptbm-tour-badges-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.wptbm-tour-catalog .wptbm-pill-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;color:#fff}
.wptbm-tour-catalog .wptbm-badge-verified{background:#2563eb}
.wptbm-tour-catalog .wptbm-badge-trustseal{background:#f97316}
.wptbm-tour-catalog .wptbm-badge-top-partner{background:#ef4444}
.wptbm-tour-catalog .wptbm-badge-expert{background:#facc15;color:#92400e}
.wptbm-tour-catalog .wptbm-tour-bottom-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:13px;color:#4b5563;border-top:1px solid #e5e7eb;padding-top:8px}
.wptbm-tour-catalog .wptbm-tour-location:before{content:"\1F4CD";margin-right:4px}
.wptbm-tour-catalog .wptbm-tour-bottom-duration:before{content:"\23F1";margin-right:4px}
.wptbm-tour-catalog .wptbm-tour-facilities{display:flex;flex-wrap:wrap;gap:14px;margin-top:6px;font-size:13px;color:#374151}
.wptbm-tour-catalog .wptbm-facility{display:inline-flex;align-items:center;gap:6px}
.wptbm-tour-catalog .wptbm-facility-icon{font-size:16px}
.wptbm-tour-catalog .wptbm-tour-price-box{flex:0 0 230px;background:#fee2e2;border-left:1px solid #fecaca;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:14px 18px;text-align:left}
.wptbm-tour-catalog .wptbm-price-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#9f1239;margin-bottom:4px}
.wptbm-tour-catalog .wptbm-price-main{font-size:22px;font-weight:700;color:#16a34a}
.wptbm-tour-catalog .wptbm-price-sub{font-size:12px;color:#6b7280}
.wptbm-tour-catalog .wptbm-price-cta{margin-top:10px}
.wptbm-tour-catalog .wptbm-btn-quote{display:inline-flex;align-items:center;justify-content:center;padding:9px 22px;border-radius:999px;background:#f04438;color:#fff!important;border:none;box-shadow:0 8px 20px rgba(220,38,38,.45);font-weight:600;text-decoration:none}
.wptbm-tour-catalog .wptbm-btn-quote:hover{background:#dc2626}
.wptbm-tour-catalog .wptbm-btn-primary{background:#f04438;color:#fff;border:none;border-radius:999px;font-weight:600;box-shadow:0 8px 20px rgba(220,38,38,.45)}
.wptbm-tour-catalog .wptbm-btn-primary:hover{background:#dc2626}
.wptbm-tour-catalog .wptbm-tour-ribbon{position:absolute;top:14px;left:-46px;background:#22c55e;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;padding:6px 40px;transform:rotate(-45deg);box-shadow:0 6px 16px rgba(22,163,74,.5)}
.wptbm-tour-catalog .wptbm-tour-rating-chip{position:absolute;top:14px;right:14px;background:#f97316;color:#fff;border-radius:999px;padding:4px 10px;display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;box-shadow:0 6px 16px rgba(249,115,22,.5)}
.wptbm-tour-catalog .wptbm-tour-rating-score{font-size:12px}
.wptbm-tour-catalog .wptbm-tour-rating-star{font-size:12px}
.wptbm-tour-catalog .wptbm-tour-rating-count{font-size:10px;opacity:.9}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-card{flex-direction:column}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-thumb{flex:0 0 auto;max-width:none}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-body-inner{flex-direction:column}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-body{padding-bottom:10px}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-price-box{display:none}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-badges-row{display:none}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-meta{display:none}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-price-type-row{display:flex}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-author-line{display:none}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-tour-facilities{display:none}
.wptbm-tour-catalog .wptbm-grid-actions{display:none;margin-top:6px;gap:8px}
.wptbm-tour-catalog .wptbm-btn-grid-quote,.wptbm-tour-catalog .wptbm-btn-grid-details{display:inline-flex;align-items:center;justify-content:center;padding:7px 16px;border-radius:3px;font-size:13px;text-decoration:none;cursor:pointer;border:none}
.wptbm-tour-catalog .wptbm-btn-grid-quote{background:#f59e0b;color:#fff;font-weight:600}
.wptbm-tour-catalog .wptbm-btn-grid-details{background:#4b5563;color:#fff}
.wptbm-tour-catalog .wptbm-grid-author{display:none;margin-top:4px;padding-top:4px;border-top:1px solid #e5e7eb;display:flex;align-items:center;gap:8px}
.wptbm-tour-catalog .wptbm-grid-author-logo{width:34px;height:34px;border-radius:4px;overflow:hidden;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:700;color:#374151;font-size:14px}
.wptbm-tour-catalog .wptbm-grid-author-logo img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-tour-catalog .wptbm-grid-author-initial{display:inline-block}
.wptbm-tour-catalog .wptbm-grid-author-name{font-size:13px;font-weight:600;color:#111827;text-decoration:none}
.wptbm-tour-catalog .wptbm-grid-author-name:hover{text-decoration:underline}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-grid-actions{display:flex}
.wptbm-tour-catalog.wptbm-view-grid .wptbm-grid-author{display:flex}
@media (max-width:768px){.wptbm-tour-catalog-layout{grid-template-columns:1fr}.wptbm-tour-catalog-sidebar{position:static;order:2}.wptbm-tour-catalog-main{order:1}.wptbm-tour-catalog .wptbm-tour-card{flex-direction:column}.wptbm-tour-catalog .wptbm-tour-thumb{max-width:none}}

/* Single tour modern detail layout */
.wptbm-single-tour-modern{max-width:1200px;margin:24px auto 40px;padding:0 24px}
body.single-tour_package .entry-title{display:none}
.wptbm-single-hero-wrap{background:#fff;border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 12px 30px rgba(15,23,42,.06);overflow:hidden}
.wptbm-single-hero-inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr);gap:0}
.wptbm-single-hero-media img,.wptbm-single-hero-placeholder{width:100%;height:100%;object-fit:cover;display:block;min-height:220px;background:#e5e7eb}
.wptbm-single-hero-main{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px}
.wptbm-single-title{margin:0 0 4px;font-size:24px;font-weight:700;color:#111827}
.wptbm-single-hero-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:#4b5563;margin-bottom:4px}
.wptbm-single-meta-item{display:inline-flex;align-items:center;gap:4px}
.wptbm-single-meta-location:before{content:"\1F4CD"}
.wptbm-single-meta-duration:before{content:"\23F1"}
.wptbm-single-meta-type:before{content:"\1F3F7"}
.wptbm-single-hero-summary{font-size:14px;color:#374151;margin-top:4px}
.wptbm-single-hero-price-row{margin-top:8px;display:flex;align-items:baseline;gap:8px}
.wptbm-single-price-main{font-size:24px;font-weight:700;color:#f04438}
.wptbm-single-price-label{font-size:12px;font-weight:600;text-transform:uppercase;color:#6b7280;letter-spacing:.04em}
.wptbm-single-hero-cta{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.wptbm-single-offline-note{margin-top:10px;font-size:13px;color:#6b7280;background:#fffbeb;border-radius:8px;padding:8px 10px;border:1px solid #facc15}
.wptbm-single-layout{display:grid;grid-template-columns:minmax(0,2.1fr) 320px;gap:24px;margin-top:24px;align-items:flex-start}
.wptbm-single-main-col{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:18px 20px;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.wptbm-single-sidebar{position:sticky;top:80px;align-self:flex-start}
.wptbm-single-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;border-bottom:1px solid #e5e7eb;padding-bottom:6px}
.wptbm-single-tab-btn{border:none;background:#f3f4f6;color:#4b5563;font-size:13px;font-weight:500;padding:6px 12px;border-radius:999px;cursor:pointer}
.wptbm-single-tab-btn.is-active{background:#f04438;color:#fff;box-shadow:0 4px 12px rgba(220,38,38,.35)}
.wptbm-single-tab-panels{font-size:14px;color:#374151}
.wptbm-single-tab-panel{display:none}
.wptbm-single-tab-panel.is-active{display:block}
.wptbm-single-overview-highlights{margin-top:18px}
.wptbm-single-overview-highlights h3{margin:0 0 8px;font-size:16px;font-weight:600}
.wptbm-single-overview-highlights ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 18px;font-size:13px}
.wptbm-single-overview-highlights li strong{font-weight:600;color:#111827}
.wptbm-itinerary-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.wptbm-itinerary-item h3{margin:0 0 4px;font-size:15px;font-weight:600;color:#111827}
.wptbm-itinerary-day{margin-right:6px;color:#f97316}
.wptbm-itinerary-description{font-size:14px;color:#374151}
.wptbm-inclusion-list,.wptbm-exclusion-list{list-style:disc;margin:8px 0 0 20px;padding:0;font-size:14px;color:#374151;display:flex;flex-direction:column;gap:4px}
.wptbm-single-rates-pricing{margin-bottom:14px}
.wptbm-single-rate-line{margin:0 0 4px}
.wptbm-offered-by-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:16px}
.wptbm-agent-main{display:flex;gap:12px;align-items:flex-start;margin-bottom:8px}
.wptbm-agent-logo-wrap{flex:0 0 auto}
.wptbm-agent-logo{width:48px;height:48px;border-radius:999px;object-fit:cover;display:block}
.wptbm-agent-logo-placeholder{width:48px;height:48px;border-radius:999px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-weight:700;color:#374151}
.wptbm-agent-info h3{margin:0 0 4px;font-size:16px;font-weight:600}
.wptbm-agent-link a{font-size:13px;color:#2563eb;text-decoration:none}
.wptbm-agent-link a:hover{text-decoration:underline}
.wptbm-agent-contact-list{margin:6px 0 0;padding:0;list-style:none;font-size:13px;color:#374151;display:flex;flex-direction:column;gap:4px}
.wptbm-agent-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 10px 24px rgba(15,23,42,.06);padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.wptbm-agent-card-header{border-bottom:1px solid #e5e7eb;padding-bottom:6px;margin-bottom:6px;font-size:12px;font-weight:600;text-transform:uppercase;color:#6b7280;letter-spacing:.06em}
.wptbm-agent-card-body{display:flex;gap:10px;align-items:center}
.wptbm-agent-card-info h3{margin:0 0 4px;font-size:15px;font-weight:600}
.wptbm-agent-view-more{display:inline-block;font-size:12px;color:#2563eb;text-decoration:none}
.wptbm-agent-view-more:hover{text-decoration:underline}
.wptbm-agent-card-contact{font-size:13px;color:#374151}
.wptbm-agent-card-contact p{margin:0 0 4px}
.wptbm-agent-card-actions{margin-top:6px;display:flex;flex-wrap:wrap;gap:8px}
@media (max-width:1024px){.wptbm-single-layout{grid-template-columns:1fr;gap:16px}.wptbm-single-sidebar{position:static}}
@media (max-width:768px){.wptbm-single-tour-modern{padding:0 16px}.wptbm-single-hero-inner{grid-template-columns:1fr}.wptbm-single-hero-main{padding:14px 16px 16px}}

/* Member login & dashboard */
.wptbm-member-login-wrap{max-width:700px;margin:40px auto;padding:0 24px}
.wptbm-member-dashboard-wrap{margin:24px auto 40px;max-width:1200px;padding:0 24px}
.wptbm-member-login-card,.wptbm-member-dashboard-card{background:#fff;border-radius:16px;border:1px solid #e5e7eb;box-shadow:0 10px 24px rgba(15,23,42,.06);padding:22px 24px}
.wptbm-member-login-title,.wptbm-member-dashboard-title{margin:0 0 12px;font-size:22px;font-weight:700;color:#111827}
.wptbm-member-login-errors{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:14px;color:#b91c1c}
.wptbm-member-login-form .wptbm-form-row label{font-size:14px;color:#374151}
.wptbm-member-login-form input[type=text],.wptbm-member-login-form input[type=password]{border-radius:8px;border:1px solid #d1d5db;padding:8px 10px}
.wptbm-member-login-meta{margin-top:4px;font-size:13px;color:#4b5563}
.wptbm-member-login-actions{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.wptbm-member-login-forgot{font-size:13px;color:#2563eb;text-decoration:none}
.wptbm-member-login-forgot:hover{text-decoration:underline}
.wptbm-member-login-notice{max-width:700px;margin:24px auto;padding:10px 12px;border-radius:8px;background:#ecfdf3;border:1px solid #bbf7d0;font-size:14px;color:#166534}

body.wptbm-member-dashboard-page{margin:0;background:#f4f6fb;min-height:100vh;height:100vh;overflow:hidden}
body.wptbm-member-dashboard-page>header,
body.wptbm-member-dashboard-page>.site-header,
body.wptbm-member-dashboard-page>#masthead,
body.wptbm-member-dashboard-page #page>header,
body.wptbm-member-dashboard-page #page>.site-header,
body.wptbm-member-dashboard-page #page>#masthead{display:none!important}
body.wptbm-member-dashboard-page>footer,
body.wptbm-member-dashboard-page>.site-footer,
body.wptbm-member-dashboard-page>#colophon,
body.wptbm-member-dashboard-page #page>footer,
body.wptbm-member-dashboard-page #page>.site-footer,
body.wptbm-member-dashboard-page #page>#colophon{display:none!important}
body.wptbm-member-dashboard-page #page,
body.wptbm-member-dashboard-page .site,
body.wptbm-member-dashboard-page main{margin:0;padding:0;width:100%;max-width:none;height:100vh;overflow:hidden}
body.wptbm-member-dashboard-page #wpadminbar{display:none!important}

.wptbm-member-dashboard-wrap{width:100%;max-width:none;margin:0;padding:0;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;overflow:hidden}

.wptbm-member-dashboard-shell{display:grid;grid-template-columns:200px 1fr;gap:0;align-items:stretch;height:100vh}
.wptbm-dashboard-sidebar{background:#1a1a1a;display:flex;flex-direction:column;align-items:center;padding:20px 0}
.wptbm-dashboard-sidebar-header{margin-bottom:40px}
.wptbm-dashboard-sidebar-title{color:#fff;font-size:12px;font-weight:600;text-align:center}
.wptbm-dashboard-sidebar-nav{display:flex;flex-direction:column;gap:20px;width:100%}
.wptbm-dashboard-nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;background:transparent;border:none;color:#9ca3af;cursor:pointer;transition:all .2s;text-align:left;text-decoration:none}
.wptbm-dashboard-nav-item:hover{background:#374151;color:#fff}
.wptbm-dashboard-nav-item.is-active{background:#3b82f6;color:#fff}
.wptbm-nav-icon{font-size:22px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.wptbm-nav-icon .dashicons{font-size:22px;width:22px;height:22px;line-height:22px}
.wptbm-dashboard-nav-item span:last-child{font-size:14px;font-weight:500}

.wptbm-member-dashboard-content{flex:1;display:flex;flex-direction:column;height:100vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
.wptbm-dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:20px 32px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:2}
.wptbm-dashboard-header-left h1{font-size:24px;font-weight:700;color:#111827;margin:0}
.wptbm-dashboard-header-right .wptbm-dashboard-user-info{display:flex;align-items:center;gap:12px}
.wptbm-dashboard-user-name{font-size:14px;font-weight:600;color:#111827}
.wptbm-dashboard-user-logo{width:40px;height:40px;border-radius:8px;overflow:hidden;background:#f3f4f6;display:flex;align-items:center;justify-content:center}
.wptbm-dashboard-user-logo img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-dashboard-user-logo-placeholder{font-size:16px;font-weight:600;color:#6b7280}

.wptbm-member-dashboard-main{display:none;padding:32px}
.wptbm-member-dashboard-main.is-active{display:block}
.wptbm-dashboard-card{background:#fff;border-radius:18px;border:1px solid #e5e7eb;box-shadow:0 10px 26px rgba(15,23,42,.05);padding:16px 18px}
.wptbm-dashboard-card-header h3{margin:0 0 8px;font-size:16px;font-weight:600;color:#111827}
.wptbm-dashboard-card-summary h3{margin:0 0 10px;font-size:16px;font-weight:600}
.wptbm-dashboard-summary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.wptbm-dashboard-summary-item{background:#f9fafb;border-radius:12px;padding:10px 12px}
.wptbm-dashboard-summary-label{display:block;font-size:12px;color:#6b7280;margin-bottom:4px}
.wptbm-dashboard-summary-value{font-size:18px;font-weight:700;color:#111827}

.wptbm-member-dashboard-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}
.wptbm-member-dashboard-table th,.wptbm-member-dashboard-table td{padding:8px 10px;border-bottom:1px solid #e5e7eb;text-align:left}
.wptbm-member-dashboard-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}
.wptbm-member-dashboard-table tbody tr:hover{background:#f9fafb}
.wptbm-status-published{background:#dcfce7;color:#15803d;display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600}
.wptbm-status-pending{background:#fef3c7;color:#92400e;display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600}
.wptbm-status-draft{background:#e5e7eb;color:#374151;display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600}
.wptbm-live-tour-btn{background:#22c55e;color:#fff;border:none;border-radius:3px;padding:4px 10px;font-size:10px;font-weight:600;cursor:pointer;text-transform:uppercase}
.wptbm-live-tour-btn:hover{background:#16a34a}
.wptbm-tour-limit-alert{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:16px 20px;margin-bottom:20px;color:#92400e}
.wptbm-tour-limit-alert strong{display:block;font-size:16px;margin-bottom:8px}
.wptbm-tour-limit-alert p{margin:0 0 12px;font-size:14px}
.wptbm-tour-limit-btn{display:inline-block;background:#f59e0b;color:#fff;padding:8px 16px;border-radius:4px;text-decoration:none;font-weight:600;font-size:13px}
.wptbm-tour-limit-btn:hover{background:#d97706;color:#fff}

.wptbm-dashboard-card-table-full{margin-top:16px}

.wptbm-dashboard-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.wptbm-dashboard-stat-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:16px;text-align:center;box-shadow:0 2px 8px rgba(15,23,42,.04)}
.wptbm-stat-value{font-size:28px;font-weight:700;color:#111827;margin-bottom:4px}
.wptbm-stat-label{font-size:13px;color:#6b7280}
.wptbm-stat-total{border-left:4px solid #3b82f6}
.wptbm-stat-published{border-left:4px solid #10b981}
.wptbm-stat-pending{border-left:4px solid #f59e0b}
.wptbm-stat-draft{border-left:4px solid #6b7280}

.wptbm-packages-page{width:100%}
.wptbm-packages-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.wptbm-packages-title{font-size:18px;font-weight:600;color:#111827}
.wptbm-packages-top-actions{display:flex;align-items:center;gap:10px}
.wptbm-packages-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:3px;font-size:13px;font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;background:#fff;color:#111827}
.wptbm-packages-btn-outline{border-color:#10b981;color:#10b981}
.wptbm-packages-btn-outline:hover{background:#ecfdf5}
.wptbm-packages-btn-primary{border-color:#8b5cf6;color:#8b5cf6}

.wptbm-gallery-card{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:16px 18px}
.wptbm-gallery-card-title{font-size:12px;font-weight:700;color:#111827;letter-spacing:.02em;margin-bottom:4px}
.wptbm-gallery-card-subtitle{font-size:12px;color:#6b7280;margin-bottom:10px}
.wptbm-gallery-actions{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.wptbm-gallery-upload-btn{display:inline-flex;align-items:center;justify-content:center;background:#16a34a;color:#fff;border-radius:3px;padding:6px 12px;font-size:13px;font-weight:700;cursor:pointer;user-select:none;text-decoration:none}
.wptbm-gallery-upload-btn:hover{background:#15803d}
.wptbm-gallery-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.wptbm-gallery-dropzone{border:2px dashed #cbd5e1;border-radius:14px;background:#fff;padding:28px 18px;text-align:center;color:#334155;transition:all .15s ease;margin-bottom:14px}
.wptbm-gallery-dropzone.is-dragging{border-color:#3b82f6;background:#eff6ff}
.wptbm-gallery-dropzone-title{font-size:16px;font-weight:700;margin-bottom:4px;color:#0f172a}
.wptbm-gallery-dropzone-sub{font-size:13px;color:#64748b}
.wptbm-gallery-status{margin:10px 0 14px;font-size:13px}
.wptbm-gallery-status.is-success{color:#15803d}
.wptbm-gallery-status.is-error{color:#b91c1c}
.wptbm-gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.wptbm-gallery-item{position:relative;display:block;border-radius:10px;overflow:hidden;background:#e5e7eb;border:1px solid #e5e7eb;aspect-ratio:1/1}
.wptbm-gallery-item-link{display:block;width:100%;height:100%}
.wptbm-gallery-item img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-gallery-delete-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;background:#ef4444;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;box-shadow:0 2px 4px rgba(0,0,0,.2)}
.wptbm-gallery-delete-btn:hover{background:#dc2626}
.wptbm-gallery-item:hover .wptbm-gallery-delete-btn{opacity:1}
.wptbm-gallery-delete-btn .dashicons{font-size:16px;width:16px;height:16px;line-height:16px}
.wptbm-gallery-empty{grid-column:1/-1;padding:14px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;color:#6b7280}

.wptbm-packages-filters{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:10px 0 14px}
.wptbm-packages-filter label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.wptbm-packages-filter-control{position:relative}
.wptbm-packages-filter-destination{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:10px 34px 10px 12px;font-size:13px;background:#fff}
.wptbm-packages-filter-status{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:10px 12px;font-size:13px;background:#fff}
.wptbm-packages-filter-caret{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #9ca3af;pointer-events:none}

.wptbm-packages-table{background:#fff;border-radius:6px;border:1px solid #e5e7eb;overflow:hidden}
.wptbm-packages-table-head{display:grid;grid-template-columns:60px minmax(280px,1fr) 100px 110px 120px 60px;gap:0;padding:12px 10px;border-bottom:1px solid #eef2f7;color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.wptbm-packages-row{display:grid;grid-template-columns:60px minmax(280px,1fr) 100px 110px 120px 60px;gap:0;padding:16px 10px;border-bottom:1px solid #f1f5f9;align-items:flex-start}
.wptbm-packages-row:last-child{border-bottom:none}
.wptbm-packages-col{display:flex;align-items:flex-start}
.wptbm-col-sn{justify-content:center;color:#374151;font-size:13px;padding-top:10px}
.wptbm-col-price,.wptbm-col-published{justify-content:center;color:#374151;font-size:13px;padding-top:10px}
.wptbm-col-created{justify-content:center;padding-top:6px;white-space:nowrap}
.wptbm-col-status{flex-direction:column;justify-content:center;align-items:center;gap:6px;padding-top:6px;min-width:120px}
.wptbm-col-delete{justify-content:center;padding-top:6px}

.wptbm-packages-title-cell{display:flex;gap:16px;align-items:flex-start}
.wptbm-packages-thumb{width:120px;height:78px;border-radius:3px;overflow:hidden;background:#e5e7eb;flex:0 0 auto}
.wptbm-packages-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-packages-thumb-placeholder{display:block;width:100%;height:100%}
.wptbm-packages-title-info{min-width:0}
.wptbm-packages-title-link{display:inline-block;color:#5b21b6;text-decoration:none;font-weight:600;font-size:13px;line-height:1.25;margin-bottom:2px}
.wptbm-packages-title-link:hover{text-decoration:underline}
.wptbm-packages-locations{font-size:12px;color:#6b7280;margin-bottom:8px}
.wptbm-packages-row-actions{display:flex;flex-wrap:wrap;gap:6px}
.wptbm-packages-action{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border:1px solid #d1d5db;border-radius:3px;background:#fff;color:#111827;font-size:12px;line-height:1;text-decoration:none;cursor:pointer}
.wptbm-packages-action:hover{background:#f3f4f6}
.wptbm-packages-action.wptbm-packages-share{appearance:none}

.wptbm-packages-date{display:flex;flex-direction:row;align-items:center;gap:4px;line-height:1.1}
.wptbm-packages-date-day{font-size:12px;color:#374151;white-space:nowrap}
.wptbm-packages-date-year{font-size:12px;color:#374151}

.wptbm-packages-delete{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:3px;color:#ef4444;text-decoration:none;background:transparent!important;border:none;cursor:pointer}
.wptbm-packages-delete .dashicons{font-size:16px;width:16px;height:16px}
.wptbm-packages-delete:hover{color:#dc2626;background:transparent!important}
.wptbm-packages-delete.is-disabled{opacity:.4;cursor:not-allowed}

.wptbm-packages-empty{padding:18px 14px;color:#6b7280;font-size:14px}

@media (max-width:1200px){
    .wptbm-packages-table-head,.wptbm-packages-row{grid-template-columns:50px minmax(200px,1fr) 80px 110px 120px 50px}
    .wptbm-packages-thumb{width:100px;height:65px}
}
@media (max-width:900px){
    .wptbm-packages-filters{grid-template-columns:1fr}
    .wptbm-packages-table-head{display:none}
    .wptbm-packages-row{grid-template-columns:1fr;gap:10px}
    .wptbm-col-sn{justify-content:flex-start;padding-top:0}
    .wptbm-col-price,.wptbm-col-created,.wptbm-col-published,.wptbm-col-delete{justify-content:flex-start;padding-top:0}
    .wptbm-col-status{flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:10px;padding-top:0}
}

.wptbm-dashboard-card-packages{box-shadow:none;border-radius:14px}
.wptbm-dashboard-table-packages th,.wptbm-dashboard-table-packages td{padding:9px 12px}
.wptbm-dashboard-table-packages td:first-child,.wptbm-dashboard-table-packages th:first-child{text-align:center;width:70px}
.wptbm-dashboard-table-packages td:last-child,.wptbm-dashboard-table-packages th:last-child{text-align:center;width:120px}
.wptbm-dashboard-table-link{color:#2563eb;text-decoration:none;font-weight:500}
.wptbm-dashboard-table-link:hover{text-decoration:underline}

/* Dropdown Menu Styles */
.wptbm-dropdown-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 30px rgba(15,23,42,.15);z-index:1000;max-height:300px;overflow-y:auto;margin-top:4px}
.wptbm-dropdown-menu.active{display:block}
.wptbm-dropdown-item{padding:10px 14px;cursor:pointer;transition:background .15s;border-bottom:1px solid #f3f4f6}
.wptbm-dropdown-item:hover{background:#f3f4f6}
.wptbm-dropdown-item:last-child{border-bottom:none}
.wptbm-dropdown-toggle{position:relative;cursor:pointer;user-select:none}
.wptbm-dropdown-wrapper{position:relative;width:100%}

.wptbm-dashboard-packages-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.wptbm-dashboard-package-row{display:flex;align-items:center;gap:14px;padding:10px 10px;border-radius:12px;border:1px solid #e5e7eb;background:#f9fafb}
.wptbm-dashboard-package-row:hover{background:#f3f4ff;border-color:#c7d2fe}
.wptbm-dashboard-package-thumb{flex:0 0 52px;height:52px;border-radius:12px;overflow:hidden;background:#e5e7eb;display:flex;align-items:center;justify-content:center}
.wptbm-dashboard-package-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-dashboard-package-thumb-placeholder{font-weight:700;color:#4b5563;font-size:18px}
.wptbm-dashboard-package-main{flex:1;min-width:0}
.wptbm-dashboard-package-title{font-size:15px;font-weight:600;color:#111827;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wptbm-dashboard-package-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:#6b7280}
.wptbm-dashboard-package-date{font-size:12px;color:#6b7280}
.wptbm-dashboard-package-actions{flex:0 0 auto}
.wptbm-dashboard-view-btn{font-size:13px;padding:6px 14px;border-radius:999px}

@media (max-width:1200px){.wptbm-member-dashboard-shell{grid-template-columns:220px minmax(0,1fr)}}
@media (max-width:1024px){.wptbm-member-dashboard-wrap{margin-top:16px}.wptbm-member-dashboard-shell{grid-template-columns:1fr}.wptbm-member-dashboard-sidebar{min-height:auto;flex-direction:row;align-items:center}.wptbm-dashboard-sidebar-user{border-top:none;border-left:1px solid #e5e7eb;margin-top:0;padding-top:0;padding-left:12px}}
@media (max-width:768px){.wptbm-member-login-wrap,.wptbm-member-dashboard-wrap{padding:0 16px}.wptbm-member-dashboard-sidebar{flex-direction:column;align-items:flex-start}.wptbm-member-dashboard-header{flex-direction:column;align-items:flex-start}.wptbm-member-dashboard-hero{flex-direction:column;align-items:flex-start}.wptbm-member-dashboard-grid{grid-template-columns:1fr}.wptbm-member-dashboard-main-packages{margin-top:12px}}

.wptbm-packages-modal{position:fixed;inset:0;display:none;z-index:100000}
.wptbm-packages-modal.is-open{display:block}
.wptbm-packages-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.45)}
.wptbm-packages-modal-dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:6px;box-shadow:0 20px 60px rgba(15,23,42,.2);width:min(520px,calc(100% - 32px));padding:28px 22px;text-align:center}
.wptbm-packages-modal-icon{width:62px;height:62px;border-radius:999px;border:3px solid #fdba74;color:#fdba74;font-weight:800;font-size:34px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.wptbm-packages-modal-title{font-size:28px;font-weight:700;color:#111827;margin-bottom:6px}
.wptbm-packages-modal-subtitle{font-size:14px;color:#6b7280;margin-bottom:18px}
.wptbm-packages-modal-actions{display:flex;align-items:center;justify-content:center;gap:10px}
.wptbm-packages-modal-btn{border:0;border-radius:3px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer}
.wptbm-packages-modal-btn-confirm{background:#2563eb;color:#fff}
.wptbm-packages-modal-btn-cancel{background:#ef4444;color:#fff}

.wptbm-packages-create,.wptbm-packages-edit{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:14px 16px}
.wptbm-packages-create-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.wptbm-packages-create-heading{font-size:16px;font-weight:700;color:#111827}
.wptbm-packages-create-back{border:1px solid #2563eb;background:#2563eb;color:#fff;border-radius:3px;padding:6px 10px;font-size:12px;cursor:pointer}
.wptbm-packages-section{margin-top:14px}
.wptbm-packages-section-title{font-size:13px;font-weight:700;color:#111827;margin:0 0 8px}
.wptbm-packages-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wptbm-packages-form-row label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.wptbm-packages-form-row input[type=text],
.wptbm-packages-form-row input[type=url],
.wptbm-packages-form-row input[type=number],
.wptbm-packages-form-row input[type=date],
.wptbm-packages-form-row textarea,
.wptbm-packages-form-row input[type=file]{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:9px 10px;font-size:13px;background:#fff}
.wptbm-packages-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.wptbm-packages-checklist{border:1px solid #e5e7eb;border-radius:3px;padding:8px 10px;max-height:160px;overflow:auto;background:#fff}
.wptbm-packages-checklist label{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:13px;color:#374151}
.wptbm-packages-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wptbm-packages-four-col{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.wptbm-packages-five-col{display:grid;grid-template-columns:repeat(5,20%);gap:12px;align-items:start}
.wptbm-form-section{margin-bottom:20px}
.wptbm-form-field{display:flex;flex-direction:column;min-width:0}
.wptbm-form-field label{display:block;font-size:12px;color:#374151;margin-bottom:6px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wptbm-form-field input[type=text],
.wptbm-form-field input[type=url],
.wptbm-form-field input[type=number],
.wptbm-form-field input[type=date],
.wptbm-form-field select,
.wptbm-form-field textarea{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:9px 10px;font-size:13px;background:#fff;box-sizing:border-box}
.wptbm-form-field .field-note{font-size:11px;color:#6b7280;margin-top:4px;font-style:italic}
@media (max-width:1200px){.wptbm-packages-five-col{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.wptbm-packages-four-col,.wptbm-packages-five-col{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.wptbm-packages-four-col,.wptbm-packages-five-col{grid-template-columns:1fr}}
.wptbm-packages-list-field{border:1px solid #e5e7eb;border-radius:6px;padding:10px 10px;background:#f9fafb}
.wptbm-packages-list-title{font-size:13px;font-weight:700;color:#111827;margin-bottom:8px}
.wptbm-packages-list-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}
.wptbm-packages-list-row input{flex:1}
.wptbm-packages-add-row{border:1px solid #d1d5db;background:#fff;border-radius:3px;padding:6px 10px;font-size:12px;cursor:pointer}
.wptbm-packages-itinerary-row,.wptbm-packages-availability-row{display:grid;grid-template-columns:120px 1fr 1fr 36px;gap:10px;align-items:start;margin-bottom:10px}
.wptbm-packages-availability-row{grid-template-columns:170px 150px 1fr 36px;align-items:center}
.wptbm-packages-itinerary-row>*{min-width:0}
.wptbm-packages-availability-row>*{min-width:0}
.wptbm-packages-remove-row{width:32px;height:32px;border-radius:3px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c;cursor:pointer;display:flex;align-items:center;justify-content:center;justify-self:end;align-self:start}
.wptbm-packages-add-itinerary,.wptbm-packages-add-availability{border:1px solid #d1d5db;background:#fff;border-radius:3px;padding:6px 10px;font-size:12px;cursor:pointer}
.wptbm-packages-form-actions{margin-top:16px}
.wptbm-packages-submit{background:#111827;color:#fff;border:0;border-radius:4px;padding:10px 14px;font-size:13px;font-weight:700;cursor:pointer}

.wptbm-packages-featured-preview{margin-top:8px;width:120px;height:78px;border-radius:3px;overflow:hidden;background:#e5e7eb}
.wptbm-packages-featured-preview img{width:100%;height:100%;object-fit:cover;display:block}

.wptbm-profile-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px 16px}
.wptbm-profile-grid{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:start}
.wptbm-profile-avatar{width:140px;height:140px;border-radius:10px;overflow:hidden;background:#e5e7eb;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.wptbm-profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-profile-avatar-placeholder{display:block;width:100%;height:100%}
.wptbm-profile-file label{display:block;font-size:12px;color:#6b7280;margin:10px 0 6px}
.wptbm-profile-file input[type=file]{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:9px 10px;font-size:13px;background:#fff}
.wptbm-profile-banner-section{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}
.wptbm-profile-banner-section label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.wptbm-profile-banner-placeholder{display:flex;align-items:center;justify-content:center;height:120px;color:#9ca3af;font-size:13px;background:#f9fafb}
.wptbm-profile-select-btn{margin-top:8px;width:100%}
.wptbm-profile-left .wptbm-featured-image-remove{margin-top:8px;width:100%}
.wptbm-profile-banner-preview img{width:100%;height:120px;object-fit:cover;display:block}
.wptbm-profile-view-catalog-btn{display:block;margin-top:12px;padding:10px 16px;background:#3b82f6;color:#fff;text-align:center;text-decoration:none;border-radius:6px;font-size:13px;font-weight:500;transition:background .15s}
.wptbm-profile-view-catalog-btn:hover{background:#2563eb}
.wptbm-catalog-view-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;padding:11px 19px;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);color:#fff;text-align:center;text-decoration:none;border-radius:8px;font-size:14px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 10px rgba(59,130,246,.3);border:1px solid transparent}
.wptbm-catalog-view-btn:hover{background:#fff;color:#2563eb;border-color:#2563eb;transform:translateY(-2px);box-shadow:0 6px 15px rgba(59,130,246,.2)}
.wptbm-catalog-view-btn .dashicons{font-size:18px;width:18px;height:18px}
.wptbm-profile-row{margin-bottom:12px}
.wptbm-profile-row label{display:block;font-size:12px;color:#6b7280;margin-bottom:6px}
.wptbm-profile-row input[type=text],
.wptbm-profile-row input[type=email],
.wptbm-profile-row input[type=password]{width:100%;border:1px solid #e5e7eb;border-radius:3px;padding:9px 10px;font-size:13px;background:#fff}
.wptbm-profile-row input[readonly]{background:#f9fafb;color:#6b7280;cursor:not-allowed}
.wptbm-profile-section-title{margin:14px 0 8px;font-size:13px;font-weight:700;color:#111827}
.wptbm-profile-actions{margin-top:8px}
.wptbm-profile-notice{padding:10px 12px;border-radius:8px;margin:0 0 12px;font-size:14px}
.wptbm-profile-notice-success{background:#ecfdf3;border:1px solid #bbf7d0;color:#166534}
.wptbm-profile-notice-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}

@media (max-width:900px){
    .wptbm-profile-grid{grid-template-columns:1fr}
}

.wptbm-profile-banner-preview img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    display: block;
}

/* ... */
.wptbm-tour-card-ribbon.is-bestseller{background:#f59e0b;box-shadow:0 4px 12px rgba(245,158,11,.4)}
.wptbm-tour-card-ribbon.is-popular{background:#ef4444;box-shadow:0 4px 12px rgba(239,68,68,.4)}
.wptbm-tour-card-rating{position:absolute;top:14px;right:14px;background:#f97316;color:#fff;border-radius:999px;padding:4px 10px;display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;box-shadow:0 4px 12px rgba(249,115,22,.4)}
.wptbm-tour-card-rating-star{font-size:12px;color:#fff}
.wptbm-tour-card-rating-count{font-size:10px;opacity:.9}
.wptbm-tour-card-body{padding:16px}
.wptbm-tour-card-title{margin:0 0 10px;font-size:16px;font-weight:700}
.wptbm-tour-card-title a{color:#111827;text-decoration:none}
.wptbm-tour-card-title a:hover{color:#2563eb}
.wptbm-tour-card-price-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.wptbm-tour-card-price{font-size:20px;font-weight:800;color:#ef4444}
.wptbm-tour-card-type{font-size:12px;padding:4px 10px;background:#dbeafe;color:#1d4ed8;border-radius:20px;font-weight:500}
.wptbm-tour-card-meta{display:flex;align-items:center;gap:12px;font-size:13px;color:#6b7280;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}
.wptbm-tour-card-location{display:flex;align-items:center;gap:4px}
.wptbm-tour-card-location:before{content:"\1F4CD";font-size:12px}
.wptbm-tour-card-duration{display:flex;align-items:center;gap:4px}
.wptbm-tour-card-duration:before{content:"\23F1";font-size:12px}
.wptbm-tour-card-actions{display:flex;gap:10px;margin-bottom:14px}
.wptbm-tour-card-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s}
.wptbm-tour-card-btn-quote{background:#f59e0b;color:#fff}
.wptbm-tour-card-btn-quote:hover{background:#d97706}
.wptbm-tour-card-btn-details{background:#374151;color:#fff}
.wptbm-tour-card-btn-details:hover{background:#1f2937}
.wptbm-tour-card-agent{display:flex;align-items:center;gap:10px;padding-top:12px;border-top:1px solid #e5e7eb}
.wptbm-tour-card-agent-logo{width:32px;height:32px;border-radius:6px;object-fit:cover}
.wptbm-tour-card-agent-initial{width:32px;height:32px;border-radius:6px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#374151}
.wptbm-tour-card-agent-name{font-size:13px;font-weight:600;color:#374151}
.wptbm-member-no-tours{padding:24px;text-align:center;color:#6b7280;background:#f9fafb;border-radius:8px}

/* Tour Grid and Card Styles */
.wptbm-member-tours-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:24px}
.wptbm-member-tour-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(15,23,42,.08);transition:transform .2s,box-shadow .2s}
.wptbm-member-tour-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(15,23,42,.12)}
.wptbm-tour-card-media{position:relative;height:200px;overflow:hidden;background:#e5e7eb}
.wptbm-tour-card-media img{width:100%;height:100%;object-fit:cover}
.wptbm-tour-card-ribbon{position:absolute;top:12px;left:0;background:#22c55e;color:#fff;padding:4px 12px;font-size:11px;font-weight:700;text-transform:uppercase;z-index:1}
@media (max-width:1200px){.wptbm-member-tours-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.wptbm-member-tours-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.wptbm-member-tours-grid{grid-template-columns:1fr}}

/* Featured Image Gallery Picker */
.wptbm-featured-image-picker{display:flex;flex-direction:column;gap:10px}
.wptbm-featured-image-preview{width:120px;height:78px;border-radius:3px;overflow:hidden;background:#e5e7eb;display:flex;align-items:center;justify-content:center}
.wptbm-featured-image-preview img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-featured-placeholder{color:#6b7280;font-size:12px;text-align:center;padding:10px}
.wptbm-featured-image-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.wptbm-featured-image-btn,.wptbm-featured-image-remove{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:3px;font-size:12px;font-weight:600;cursor:pointer;width:fit-content}
.wptbm-featured-image-btn{background:#3b82f6;color:#fff;border:none}
.wptbm-featured-image-btn:hover{background:#2563eb}
.wptbm-featured-image-upload-btn{background:#16a34a}
.wptbm-featured-image-upload-btn:hover{background:#15803d}
.wptbm-featured-image-gallery-btn{background:#3b82f6}
.wptbm-featured-image-gallery-btn:hover{background:#2563eb}
.wptbm-featured-image-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wptbm-featured-image-or{color:#6b7280;font-size:12px}
.wptbm-featured-image-remove{background:#ef4444;color:#fff;border:none}
.wptbm-featured-image-remove:hover{background:#dc2626}
.wptbm-featured-image-dropzone{border:2px dashed #cbd5e1;border-radius:6px;padding:12px 16px;text-align:center;color:#6b7280;font-size:13px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:8px;background:#f8fafc}
.wptbm-featured-image-dropzone:hover{border-color:#3b82f6;background:#eff6ff}
.wptbm-featured-image-dropzone.is-dragging{border-color:#3b82f6;background:#eff6ff}
.wptbm-featured-image-dropzone .dashicons{font-size:20px}

/* Gallery Picker Modal */
.wptbm-gallery-picker-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;align-items:center;justify-content:center}
.wptbm-gallery-picker-modal.is-open{display:flex!important}
.wptbm-gallery-picker-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.45)}
.wptbm-gallery-picker-content{position:relative;width:90%;max-width:800px;max-height:85vh;background:#fff;border-radius:6px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);display:flex;flex-direction:column;overflow:hidden}
.wptbm-gallery-picker-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#fff}
.wptbm-gallery-picker-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}
.wptbm-gallery-picker-header-actions{display:flex;align-items:center;gap:12px}
.wptbm-gallery-picker-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#16a34a;color:#fff;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer}
.wptbm-gallery-picker-upload-btn:hover{background:#15803d}
.wptbm-gallery-picker-upload-btn .dashicons{font-size:16px;width:auto;height:auto;line-height:1}
.wptbm-gallery-picker-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wptbm-gallery-picker-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;line-height:1}
.wptbm-gallery-picker-close:hover{color:#111827}
.wptbm-gallery-picker-body{flex:1;overflow-y:auto;padding:20px}
.wptbm-gallery-picker-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.wptbm-gallery-picker-item{aspect-ratio:1;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .15s;position:relative}
.wptbm-gallery-picker-item:hover{border-color:#3b82f6}
.wptbm-gallery-picker-item.is-selected{border-color:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.2)}
.wptbm-gallery-picker-item.is-selected::after{content:"✓";position:absolute;top:4px;right:4px;width:20px;height:20px;background:#22c55e;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.wptbm-gallery-picker-item img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.wptbm-gallery-picker-empty{text-align:center;color:#6b7280;padding:40px;font-size:14px}
.wptbm-gallery-picker-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e5e7eb}
.wptbm-gallery-picker-cancel,.wptbm-gallery-picker-select{padding:8px 16px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer}
.wptbm-gallery-picker-cancel{background:#fff;color:#374151;border:1px solid #d1d5db}
.wptbm-gallery-picker-cancel:hover{background:#f3f4f6}
.wptbm-gallery-picker-select{background:#3b82f6;color:#fff;border:none}
.wptbm-gallery-picker-select:hover{background:#2563eb}
.wptbm-gallery-picker-select:disabled{opacity:.5;cursor:not-allowed}

@media (max-width:768px){
.wptbm-gallery-picker-grid{grid-template-columns:repeat(3,1fr)}
}

/* Taxonomy Archive Styles */
.wptbm-taxonomy-archive{max-width:1200px;margin:0 auto;padding:24px}
.wptbm-taxonomy-header{margin-bottom:24px}
.wptbm-taxonomy-title{font-size:28px;font-weight:700;color:#0f172a;margin:0}

/* Tour Meta Labels & Values */
.wptbm-meta-content{display:flex;flex-direction:column;gap:1px}
.wptbm-meta-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:#94a3b8}
.wptbm-meta-value{font-size:14px;font-weight:600;color:#1e293b}
.wptbm-meta-star{display:inline-flex;align-items:center;gap:2px;margin-left:6px;padding:2px 8px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;font-size:11px;font-weight:700;border-radius:20px;box-shadow:0 1px 2px rgba(245,158,11,0.3)}
.wptbm-meta-hotel svg{color:#6366f1}
.wptbm-meta-vehicle svg{color:#059669}

/* Grid View - Uses wptbm-member-tours-grid classes */
.wptbm-taxonomy-tours{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* Responsive */
@media (max-width:1200px){.wptbm-taxonomy-tours{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.wptbm-taxonomy-tours{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.wptbm-taxonomy-tours{grid-template-columns:1fr}.wptbm-taxonomy-title{font-size:22px}}

/* Tour List View Styles - New Modern Design */
.wptbm-tour-list-view{display:flex;flex-direction:column;gap:20px}
.wptbm-tour-list-card{display:grid;grid-template-columns:240px 1fr 220px;background:#fff;border-radius:12px;box-shadow:0 2px 12px rgba(15,23,42,.08);overflow:hidden;transition:box-shadow .2s;border:2px solid #115986}
.wptbm-tour-list-card:hover{box-shadow:0 4px 20px rgba(220,38,38,.15)}
.wptbm-list-card-image{position:relative;height:100%;min-height:200px;overflow:hidden;background:#f3f4f6}
.wptbm-list-card-image img{width:100%;height:100%;object-fit:cover}
.wptbm-image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 60%,transparent 100%);padding:20px 12px 12px;color:#fff;z-index:2}
.wptbm-overlay-title{font-size:16px;font-weight:700;color:#fff;margin:0 0 4px 0;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.wptbm-overlay-duration{font-size:13px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.wptbm-list-premium-ribbon{position:absolute;top:12px;left:-30px;background:#f97316;color:#fff;padding:4px 35px;font-size:10px;font-weight:700;text-transform:uppercase;z-index:3;transform:rotate(-45deg)}
.wptbm-list-rating-badge{position:absolute;top:12px;right:12px;background:#dc2626;border-radius:20px;padding:4px 10px;display:flex;align-items:center;gap:4px;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.wptbm-list-rating-score{font-size:13px;font-weight:700;color:#fff}
.wptbm-list-rating-star{font-size:13px;color:#fff}
.wptbm-list-rating-count{font-size:11px;color:#fff;margin-left:4px}
.wptbm-list-card-info{padding:20px;display:flex;flex-direction:column;gap:12px}
.wptbm-list-tour-title{font-size:20px;font-weight:700;color:#0f172a;margin:0;display:flex;align-items:center;justify-content:space-between;gap:12px}
.wptbm-list-tour-title a{color:#0f172a;text-decoration:none}
.wptbm-list-tour-title a:hover{color:#2563eb}
.wptbm-list-share-icon{color:#94a3b8;cursor:pointer;transition:color .2s}
.wptbm-list-share-icon:hover{color:#2563eb}
.wptbm-list-tour-agent{display:flex;align-items:center;gap:6px;font-size:14px;margin-top:4px;font-weight:700}
.wptbm-list-agent-icon{font-size:16px;color:#64748b}
.wptbm-list-agent-label{color:#64748b;font-weight:600}
.wptbm-list-agent-name{color:#dc2626;font-weight:800;font-size:15px;text-decoration:none}
.wptbm-list-agent-name:hover{text-decoration:underline}
.wptbm-list-arrow-icon{color:#94a3b8;font-size:16px}
.wptbm-list-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.wptbm-list-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:0;font-size:11px;font-weight:600}
.wptbm-badge-verified{background:#2563eb;color:#fff}
.wptbm-badge-trustseal{background:#ea580c;color:#fff}
.wptbm-badge-expert{background:#facc15;color:#000}
.wptbm-list-location-duration{display:flex;gap:16px;flex-wrap:wrap;font-size:14px;color:#475569;margin-top:8px;padding-top:12px;border-top:1px solid #f1f5f9}
.wptbm-list-location,.wptbm-list-duration{display:flex;align-items:center;gap:6px;font-weight:600}
.wptbm-list-location svg,.wptbm-list-duration svg{width:18px;height:18px}
.wptbm-list-location svg{color:#dc2626}
.wptbm-list-duration svg{color:#64748b}
.wptbm-list-location a{color:#475569;text-decoration:none;transition:color .2s;font-size:14px}
.wptbm-list-location a:hover{color:#dc2626}
.wptbm-list-amenities{display:flex;gap:16px;margin-top:4px}
.wptbm-list-amenity{display:flex;align-items:center;gap:8px;font-size:14px;color:#475569;font-weight:600}
.wptbm-list-amenity svg{width:18px;height:18px;color:#22c55e}

/* Info Badges - Location, Duration, Tour Type, Hotel, Cab */
.wptbm-list-badges-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.wptbm-list-badges-row+.wptbm-list-badges-row{margin-top:6px}
.wptbm-info-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:0;font-size:11px;font-weight:600;text-decoration:none;transition:all .2s;color:#fff}
.wptbm-badge-location{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6;box-shadow:none}
.wptbm-badge-location:hover{background:#bfdbfe}
.wptbm-badge-duration{background:#fef3c7;color:#92400e;border:1px solid #f59e0b;box-shadow:none}
.wptbm-badge-tour-type{background:#fce7f3;color:#9d174d;border:1px solid #ec4899;box-shadow:none}
.wptbm-badge-tour-type:hover{background:#fbcfe8}
.wptbm-badge-hotel{background:#d1fae5;color:#065f46;border:1px solid #10b981;box-shadow:none}
.wptbm-badge-cab{background:#e0f2fe;color:#0c4a6e;border:1px solid #0ea5e9;box-shadow:none}
.wptbm-list-card-price{padding:20px;background:#1159860f;border-left:1px solid #115986ba;display:flex;flex-direction:column;justify-content:center;gap:4px}
.wptbm-list-price-header{font-size:10px;font-weight:600;color:#64748b;letter-spacing:.5px;text-transform:uppercase}
.wptbm-list-price-row{display:flex;align-items:center;gap:8px}
.wptbm-list-original-price{font-size:13px;color:#94a3b8;text-decoration:line-through}
.wptbm-list-discount{font-size:11px;font-weight:600;color:#fff;background:#dc2626;padding:2px 8px;border-radius:12px}
.wptbm-list-final-price{font-size:28px;font-weight:800;color:#0f172a}
.wptbm-list-price-per{font-size:11px;color:#64748b}
.wptbm-list-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding:12px 16px;background:#115986;color:#fff;font-size:13px;font-weight:700;text-decoration:none;border-radius:8px;box-shadow:0 2px 8px rgba(17,89,134,.3)}
.wptbm-list-btn-primary:hover,.wptbm-list-btn-primary:hover svg{background:#115986;color:#fff}
.wptbm-list-contact-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.wptbm-list-btn-call,.wptbm-list-btn-chat{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:12px;font-weight:600;text-decoration:none}
.wptbm-list-btn-call{background:#22c55e;border:1px solid #22c55e;color:#fff}
.wptbm-list-btn-call:hover,.wptbm-list-btn-call:hover svg{color:#fff}
.wptbm-list-btn-chat{background:#ff6e3f;border:1px solid #ff6e3f;color:#fff}
.wptbm-list-btn-chat:hover,.wptbm-list-btn-chat:hover svg{background:#ff6e3f;color:#fff}

/* Similar Packages - Fresh Design */
.wptbm-list-similar-packages{grid-column:1/-1;padding:24px;border-top:2px solid #115986ba;background:linear-gradient(135deg,#fff 0%,#1159860f 100%)}
.wptbm-similar-title{font-size:14px;font-weight:800;color:#dc2626;text-transform:uppercase;margin:0 0 16px 0;letter-spacing:1px;display:flex;align-items:center;gap:8px}
.wptbm-similar-title::before{content:"";display:inline-block;width:4px;height:20px;background:#dc2626;border-radius:2px}
.wptbm-similar-packages-grid{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:10px}
.wptbm-similar-packages-grid::-webkit-scrollbar{display:none}
.wptbm-similar-packages-grid .wptbm-similar-package-card{flex:0 0 calc(33.333% - 14px);min-width:200px;scroll-snap-align:start}
.wptbm-similar-package-card{border:1px solid #ddd;background:#fff;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.1)}
.wptbm-similar-link{display:block;text-decoration:none}
.wptbm-similar-content{display:flex;flex-direction:row}
.wptbm-similar-image-wrap{position:relative;width:50%;flex-shrink:0}
.wptbm-similar-image{position:relative;width:100%;height:140px;overflow:hidden}
.wptbm-similar-image img{width:100%;height:100%;object-fit:cover;display:block}
.wptbm-similar-duration-badge{position:absolute;top:8px;left:0;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#e85d04;color:#fff;font-size:11px;font-weight:600}
.wptbm-similar-duration-badge svg{width:12px;height:12px;color:#fff}
.wptbm-similar-no-image{width:100%;height:140px;background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%);display:flex;align-items:center;justify-content:center}
.wptbm-similar-no-image::before{content:"🏞️";font-size:32px}
.wptbm-similar-details{width:50%;padding:12px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.wptbm-similar-package-title{font-size:15px;font-weight:700;color:#333;margin:0;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.wptbm-similar-price-row{display:flex;flex-direction:column;gap:4px}
.wptbm-similar-price{color:#e85d04;font-size:14px;font-weight:700}
.wptbm-similar-price::before{content:"₹ ";font-size:13px}
.wptbm-similar-destination{color:#666;font-size:12px;display:flex;align-items:center;gap:4px}
.wptbm-similar-destination svg{width:12px;height:12px;color:#999;flex-shrink:0}
.wptbm-similar-view-more{display:inline-block;padding:6px 14px;background:#e85d04;color:#fff;font-size:11px;font-weight:700;text-decoration:none;text-transform:uppercase;margin-top:4px;width:fit-content}
.wptbm-similar-view-more:hover{background:#e85d04;color:#fff}
.wptbm-carousel-nav{display:none}
.wptbm-list-similar-packages{position:relative}
.wptbm-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#115986;color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:all .2s;line-height:1}
.wptbm-carousel-arrow:hover{background:#0d4566;transform:translateY(-50%) scale(1.1)}
.wptbm-carousel-prev{left:10px}
.wptbm-carousel-next{right:10px}

/* Grid View Styles */
.wptbm-tour-grid-view{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.wptbm-tour-grid-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(15,23,42,.08);transition:transform .2s,box-shadow .2s}
.wptbm-tour-grid-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(15,23,42,.12)}
.wptbm-grid-card-image{position:relative;height:180px;overflow:hidden;background:#f3f4f6}
.wptbm-grid-card-image img{width:100%;height:100%;object-fit:cover}
.wptbm-grid-ribbon{position:absolute;top:12px;left:0;background:#22c55e;color:#fff;padding:4px 12px;font-size:11px;font-weight:700;text-transform:uppercase;z-index:1}
.wptbm-grid-rating{position:absolute;bottom:12px;left:12px;background:#fff;border-radius:6px;padding:4px 8px;display:flex;align-items:center;gap:4px;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.wptbm-grid-rating-score{font-size:13px;font-weight:700;color:#0f172a}
.wptbm-grid-rating-star{font-size:13px;color:#f59e0b}
.wptbm-grid-card-body{padding:16px;display:flex;flex-direction:column;gap:10px}
.wptbm-grid-tour-title{font-size:16px;font-weight:700;color:#0f172a;margin:0;line-height:1.3}
.wptbm-grid-tour-title a{color:#0f172a;text-decoration:none}
.wptbm-grid-tour-title a:hover{color:#2563eb}
.wptbm-grid-tour-agent{font-size:12px;color:#64748b}
.wptbm-grid-badges{display:flex;gap:6px;flex-wrap:wrap}
.wptbm-grid-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:600;background:#dbeafe;color:#1e40af}
.wptbm-grid-location{font-size:12px;color:#475569;display:flex;align-items:center;gap:4px}
.wptbm-grid-location svg{color:#64748b}
.wptbm-grid-amenities{display:flex;gap:12px}
.wptbm-grid-amenity{font-size:11px;color:#64748b;display:flex;align-items:center;gap:4px}
.wptbm-grid-price-section{margin-top:8px;padding-top:12px;border-top:1px solid #e2e8f0}
.wptbm-grid-price-header{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.wptbm-grid-price-row{display:flex;align-items:center;gap:8px}
.wptbm-grid-original-price{font-size:12px;color:#94a3b8;text-decoration:line-through}
.wptbm-grid-discount{font-size:10px;font-weight:600;color:#dc2626;background:#fef2f2;padding:2px 6px;border-radius:4px}
.wptbm-grid-final-price{font-size:20px;font-weight:800;color:#0f172a}
.wptbm-grid-price-per{font-size:11px;color:#64748b}
.wptbm-grid-btn-quote{display:block;text-align:center;margin-top:12px;padding:10px 16px;background:#22c55e;color:#fff;font-size:12px;font-weight:700;text-decoration:none;border-radius:8px;transition:background .2s}
.wptbm-grid-btn-quote:hover{background:#16a34a}
.wptbm-grid-contact-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.wptbm-grid-btn-call,.wptbm-grid-btn-chat{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:600;text-decoration:none;transition:all .2s;background:#fff;border:1px solid #e2e8f0;color:#475569}
.wptbm-grid-btn-call:hover,.wptbm-grid-btn-chat:hover{background:#f1f5f9}

/* === NEW GRID VIEW DESIGN (Mobile Style Cards) === */
.wptbm-tour-grid-card-new{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px rgba(15,23,42,.12);transition:transform .2s,box-shadow .2s;border:1px solid #e5e7eb;max-width:320px;margin:0 auto}
.wptbm-tour-grid-card-new:hover .wptbm-grid-img{transform:scale(1.1)}
.wptbm-tour-grid-card-new:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(15,23,42,.18)}

/* Image Section with Overlay */
.wptbm-grid-card-image-new{position:relative;height:200px;overflow:hidden;border-radius:16px 16px 0 0}
.wptbm-grid-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.wptbm-no-image-new{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);height:100%}
.wptbm-grid-image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.5) 50%,transparent 100%);padding:16px 14px 14px}
.wptbm-grid-overlay-duration{color:#fff;font-size:13px;font-weight:600;line-height:1.4}

/* Card Body */
.wptbm-grid-card-body-new{padding:14px 16px 16px}

/* Price and Contact Row */
.wptbm-grid-price-contact-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px}
.wptbm-grid-price-box{display:flex;align-items:center;gap:4px;color:#dc2626;font-weight:700}
.wptbm-grid-currency{color:#dc2626;font-size:16px;font-weight:700}
.wptbm-grid-price-amount{color:#dc2626;font-size:20px;font-weight:800}
.wptbm-grid-price-suffix{color:#6b7280;font-size:13px;font-weight:600;margin-left:2px}
.wptbm-grid-contact-box{display:flex;align-items:center;gap:6px;color:#6b7280;font-size:13px;white-space:nowrap}
.wptbm-grid-contact-box svg{flex-shrink:0}
.wptbm-grid-contact-text{color:#6b7280;font-size:13px}

/* Star Rating */
.wptbm-grid-star-rating{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.wptbm-grid-stars{color:#f59e0b;font-size:14px;letter-spacing:1px}
.wptbm-grid-rating-text{color:#374151;font-size:13px;font-weight:500}

/* Budget Info */
.wptbm-grid-budget-info{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:13px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}
.wptbm-grid-divider{color:#9ca3af}

/* Offered By Section - New Style */
.wptbm-grid-offered-by-new{margin-bottom:12px}
.wptbm-grid-offered-label{font-size:12px;font-weight:600;color:#374151;margin-bottom:6px}
.wptbm-grid-agency-bar{display:flex;align-items:center;gap:10px;background:#0f172a;border-radius:0 20px 20px 0;padding:8px 14px 8px 10px;margin-left:-16px;margin-right:-16px;width:calc(100% + 32px)}
.wptbm-grid-agency-logo{width:28px;height:28px;background:#1e293b;border-radius:50%;display:flex;align-items:center;justify-content:center}
.wptbm-grid-agency-name{color:#fff;font-size:14px;font-weight:600;text-decoration:underline}

/* Badges Row */
.wptbm-grid-badges-row-new{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.wptbm-grid-badge-verified,.wptbm-grid-badge-premium{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:#f59e0b}
.wptbm-grid-badge-verified svg,.wptbm-grid-badge-premium svg{flex-shrink:0}

/* Trust Badges */
.wptbm-grid-trust-badges{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #e5e7eb}
.wptbm-grid-trust-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:#4b5563}
.wptbm-grid-trust-badge svg{flex-shrink:0}

/* Action Buttons */
.wptbm-grid-action-buttons{display:flex;gap:12px;justify-content:center}
.wptbm-grid-btn-quote-new,.wptbm-grid-btn-view{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:6px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;transition:all .2s;border:none;text-transform:uppercase}
.wptbm-grid-btn-quote-new{background:#1e3a5f;color:#fff}
.wptbm-grid-btn-quote-new:hover{background:#152a45}
.wptbm-grid-btn-view{background:#f97316;color:#fff}
.wptbm-grid-btn-view:hover{background:#ea580c}

/* View Toggle - Show/Hide based on parent class */
.wptbm-view-list .wptbm-tour-list-view{display:flex}
.wptbm-view-list .wptbm-tour-grid-view{display:none}
.wptbm-view-grid .wptbm-tour-list-view{display:none}
.wptbm-view-grid .wptbm-tour-grid-view{display:grid}

/* === MOBILE RESPONSIVE - Only Grid View & Filter on Top === */
@media (max-width:768px){
/* Full width container - aggressive reset */
.wptbm-tour-catalog{width:100%!important;padding:0!important;margin:0!important;max-width:100%!important;box-sizing:border-box!important}

/* Remove padding from common parent containers */
.wptbm-tour-catalog-layout{width:100%!important;padding:0!important;margin:0!important;max-width:100%!important}

/* Remove padding from WordPress theme containers */
.entry-content .wptbm-tour-catalog,.site-content .wptbm-tour-catalog,.container .wptbm-tour-catalog,.wrap .wptbm-tour-catalog{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important}

/* Force grid view only on mobile - hide list view */
.wptbm-tour-list-view{display:none!important}
.wptbm-tour-grid-view{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
.wptbm-view-toggle{display:none!important}

/* Hide Sort by on mobile */
.wptbm-tour-sort{display:none!important}

/* Move sidebar filter to top */
.wptbm-tour-catalog-layout{grid-template-columns:1fr!important;gap:16px!important}
.wptbm-tour-catalog-sidebar{position:static!important;order:0!important;width:100%!important;padding:20px 14px!important;background:linear-gradient(145deg,#ffffff 0%,#f8fafc 100%)!important;border-radius:16px!important;margin:0 0 40px!important;box-sizing:border-box!important;box-shadow:0 4px 24px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.8)!important;border:1px solid rgba(226,232,240,.8)!important;position:relative!important;z-index:100!important}
.wptbm-tour-catalog-main{order:1!important;margin-top:40px!important;padding:0 10px!important;box-sizing:border-box!important;position:relative!important;z-index:1!important}

/* Filter form layout */
.wptbm-tour-catalog-form{display:flex!important;flex-direction:column!important;gap:8px!important;padding:0!important}

/* Filter header always visible */
.wptbm-catalog-filter-header{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important;margin-bottom:16px!important;padding:0 4px 12px!important;border-bottom:1px solid #e2e8f0!important}
.wptbm-catalog-filter-header h2{font-size:16px!important;margin:0!important;font-weight:700!important;color:#1e293b!important;letter-spacing:-.3px!important;display:flex!important;align-items:center!important;gap:8px!important}
.wptbm-catalog-filter-header h2 svg{color:#3b82f6!important}
.wptbm-catalog-reset{font-size:11px!important;color:#fff!important;font-weight:600!important;text-decoration:none!important;transition:all .2s!important;display:inline-flex!important;align-items:center!important;gap:4px!important;background:#ef4444!important;padding:6px 12px!important;border-radius:6px!important;box-shadow:0 1px 2px rgba(0,0,0,.1)!important}
.wptbm-catalog-reset:hover{background:#dc2626!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px rgba(0,0,0,.15)!important}
.wptbm-catalog-reset svg{transition:transform .3s ease!important}
.wptbm-catalog-reset:hover svg{transform:rotate(-180deg)!important}

/* Hide desktop filter on mobile */
.wptbm-catalog-filter-desktop{display:none!important}

/* Show mobile filter as 3-column row */
.wptbm-catalog-filter-mobile{display:flex!important;gap:8px!important;width:100%!important;align-items:center!important;padding:0 4px!important;position:relative!important;z-index:60!important}

/* Mobile filter columns */
.wptbm-mobile-filter-col{flex:1!important;min-width:0!important}
.wptbm-mobile-filter-col-btn{flex:0 0 auto!important;align-self:center!important}

/* Mobile dropdown styling */
.wptbm-mobile-dropdown{position:relative!important;width:100%!important;z-index:10!important}
.wptbm-mobile-dropdown-toggle{width:100%!important;display:flex!important;align-items:center!important;gap:6px!important;padding:10px 12px!important;background:#fff!important;border:2px solid #e2e8f0!important;border-radius:8px!important;font-size:13px!important;font-weight:600!important;color:#334155!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;transition:all .2s ease!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important}
.wptbm-mobile-dropdown-toggle:hover{border-color:#cbd5e1!important;background:#f8fafc!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-toggle{border-color:#3b82f6!important;background:#eff6ff!important;color:#2563eb!important;box-shadow:0 0 0 3px rgba(59,130,246,.15)!important}
.wptbm-toggle-icon{display:flex!important;align-items:center!important;color:#64748b!important;transition:color .2s ease!important}
.wptbm-mobile-dropdown-toggle:hover .wptbm-toggle-icon,.wptbm-mobile-dropdown.is-open .wptbm-toggle-icon{color:#2563eb!important}
.wptbm-toggle-label{display:flex!important;align-items:center!important;gap:6px!important;flex:1!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.wptbm-mobile-dropdown-toggle svg:last-child{margin-left:auto!important;transition:transform .25s ease!important;color:#64748b!important;flex-shrink:0!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-toggle svg:last-child{transform:rotate(180deg)!important;color:#2563eb!important}

/* Dropdown menu */
.wptbm-mobile-dropdown-menu{display:none!important;position:absolute!important;top:calc(100% + 6px)!important;left:0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:6px!important;margin-top:0!important;max-height:320px!important;overflow-y:auto!important;z-index:100!important;box-shadow:0 10px 40px rgba(0,0,0,.15),0 4px 12px rgba(0,0,0,.08)!important;min-width:160px!important;width:auto!important;white-space:nowrap!important;padding:6px 0!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-menu{display:block!important}

/* Dropdown items */
.wptbm-mobile-dropdown-item{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 14px!important;font-size:12px!important;cursor:pointer!important;border-bottom:1px solid #f1f5f9!important;transition:all .15s ease!important;color:#475569!important;font-weight:500!important}
.wptbm-mobile-dropdown-item:last-child{border-bottom:none!important}
.wptbm-mobile-dropdown-item:hover{background:#f8fafc!important;color:#2563eb!important}
.wptbm-mobile-dropdown-item input[type=checkbox]{width:16px!important;height:16px!important;margin:0!important;flex-shrink:0!important;accent-color:#2563eb!important;border-radius:4px!important;border:2px solid #cbd5e1!important;cursor:pointer!important}

/* Apply button on mobile */
.wptbm-catalog-apply-desktop{display:none!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply{display:block!important;width:100%!important;padding:10px 16px!important;font-size:13px!important;font-weight:700!important;border-radius:8px!important;white-space:nowrap!important;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%)!important;color:#fff!important;border:none!important;box-shadow:0 4px 12px rgba(249,115,22,.35),0 2px 4px rgba(249,115,22,.2)!important;transition:all .2s ease!important;cursor:pointer!important;text-transform:uppercase!important;letter-spacing:.5px!important;position:relative!important;overflow:hidden!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply::before{content:''!important;position:absolute!important;top:0!important;left:-100%!important;width:100%!important;height:100%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)!important;transition:left .5s ease!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:hover::before{left:100%!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:hover,.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:active{background:linear-gradient(135deg,#ea580c 0%,#c2410c 100%)!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px rgba(249,115,22,.45),0 3px 6px rgba(249,115,22,.3)!important}
}

/* Desktop: Show desktop filter, hide mobile */
@media (min-width:769px){
.wptbm-catalog-filter-mobile{display:none!important}
.wptbm-catalog-filter-desktop{display:block!important}
.wptbm-catalog-apply-desktop{display:block!important}
.wptbm-tour-catalog-main{margin-top:-65px!important}
.wptbm-tour-catalog-sidebar{align-self:flex-start!important;position:sticky!important;top:80px!important}
}

/* Grid View Responsive */
@media (max-width:1024px){
.wptbm-tour-grid-view{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
.wptbm-tour-grid-view{grid-template-columns:1fr}
}

/* List View Responsive */
@media (max-width:1024px){
.wptbm-tour-list-card{grid-template-columns:200px 1fr 200px}
.wptbm-list-card-info{padding:16px}
.wptbm-list-card-price{padding:16px}
}
@media (max-width:768px){
.wptbm-tour-list-card{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}
.wptbm-list-card-image{min-height:180px}
.wptbm-list-card-price{border-left:none;border-top:1px solid #e2e8f0}
}

/* Member Catalog Header Premium Design */
.wptbm-member-header {
    background: #ffffff;
    padding: 20px 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    margin-bottom: 30px;
    border-bottom: 1px solid #f1f5f9;
}
.wptbm-member-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.wptbm-member-logo-wrap {
    flex-shrink: 0;
    display: flex;
    align-items: center;
}
.wptbm-member-logo {
    height: 70px;
    max-width: 160px;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
.wptbm-member-logo-placeholder {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    color: #fff;
    font-size: 32px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}
.wptbm-member-info-main {
    flex: 1;
    display: flex;
    align-items: center;
}
.wptbm-member-name {
    margin: 0;
    font-size: 26px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.5px;
}
.wptbm-member-contact {
    display: flex;
    align-items: center;
}
.wptbm-member-contact-row {
    display: flex;
    align-items: center;
    gap: 16px;
}
.wptbm-member-contact-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 50px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.wptbm-member-contact-item:hover {
    background: #ffffff;
    border-color: #3b82f6;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(59, 130, 246, 0.15);
}
.wptbm-grid-action-buttons{display:flex;gap:12px;justify-content:center}
.wptbm-grid-btn-quote-new,.wptbm-grid-btn-view{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:6px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;transition:all .2s;border:none;text-transform:uppercase}
.wptbm-grid-btn-quote-new{background:#1e3a5f;color:#fff}
.wptbm-grid-btn-quote-new:hover{background:#152a45}
.wptbm-grid-btn-view{background:#f97316;color:#fff}
.wptbm-grid-btn-view:hover{background:#ea580c}

/* View Toggle - Show/Hide based on parent class */
.wptbm-view-list .wptbm-tour-list-view{display:flex}
.wptbm-view-list .wptbm-tour-grid-view{display:none}
.wptbm-view-grid .wptbm-tour-list-view{display:none}
.wptbm-view-grid .wptbm-tour-grid-view{display:grid}

/* === MOBILE RESPONSIVE - Only Grid View & Filter on Top === */
@media (max-width:768px){
/* Full width container - aggressive reset */
.wptbm-tour-catalog{width:100%!important;padding:0!important;margin:0!important;max-width:100%!important;box-sizing:border-box!important}

/* Remove padding from common parent containers */
.wptbm-tour-catalog-layout{width:100%!important;padding:0!important;margin:0!important;max-width:100%!important}

/* Remove padding from WordPress theme containers */
.entry-content .wptbm-tour-catalog,.site-content .wptbm-tour-catalog,.container .wptbm-tour-catalog,.wrap .wptbm-tour-catalog{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important}

/* Force grid view only on mobile - hide list view */
.wptbm-tour-list-view{display:none!important}
.wptbm-tour-grid-view{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
.wptbm-view-toggle{display:none!important}

/* Hide Sort by on mobile */
.wptbm-tour-sort{display:none!important}

/* Move sidebar filter to top */
.wptbm-tour-catalog-layout{grid-template-columns:1fr!important;gap:16px!important}
.wptbm-tour-catalog-sidebar{position:static!important;order:0!important;width:100%!important;padding:20px 14px!important;background:linear-gradient(145deg,#ffffff 0%,#f8fafc 100%)!important;border-radius:16px!important;margin:0 0 40px!important;box-sizing:border-box!important;box-shadow:0 4px 24px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05),inset 0 1px 0 rgba(255,255,255,.8)!important;border:1px solid rgba(226,232,240,.8)!important;position:relative!important;z-index:100!important}
.wptbm-tour-catalog-main{order:1!important;margin-top:40px!important;padding:0 10px!important;box-sizing:border-box!important;position:relative!important;z-index:1!important}

/* Filter form layout */
.wptbm-tour-catalog-form{display:flex!important;flex-direction:column!important;gap:8px!important;padding:0!important}

/* Filter header always visible */
.wptbm-catalog-filter-header{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important;margin-bottom:16px!important;padding:0 4px 12px!important;border-bottom:1px solid #e2e8f0!important}
.wptbm-catalog-filter-header h2{font-size:16px!important;margin:0!important;font-weight:700!important;color:#1e293b!important;letter-spacing:-.3px!important;display:flex!important;align-items:center!important;gap:8px!important}
.wptbm-catalog-filter-header h2 svg{color:#3b82f6!important}
.wptbm-catalog-reset{font-size:11px!important;color:#fff!important;font-weight:600!important;text-decoration:none!important;transition:all .2s!important;display:inline-flex!important;align-items:center!important;gap:4px!important;background:#ef4444!important;padding:6px 12px!important;border-radius:6px!important;box-shadow:0 1px 2px rgba(0,0,0,.1)!important}
.wptbm-catalog-reset:hover{background:#dc2626!important;transform:translateY(-1px)!important;box-shadow:0 2px 4px rgba(0,0,0,.15)!important}
.wptbm-catalog-reset svg{transition:transform .3s ease!important}
.wptbm-catalog-reset:hover svg{transform:rotate(-180deg)!important}

/* Hide desktop filter on mobile */
.wptbm-catalog-filter-desktop{display:none!important}

/* Show mobile filter as 3-column row */
.wptbm-catalog-filter-mobile{display:flex!important;gap:8px!important;width:100%!important;align-items:center!important;padding:0 4px!important;position:relative!important;z-index:60!important}

/* Mobile filter columns */
.wptbm-mobile-filter-col{flex:1!important;min-width:0!important}
.wptbm-mobile-filter-col-btn{flex:0 0 auto!important;align-self:center!important}

/* Mobile dropdown styling */
.wptbm-mobile-dropdown{position:relative!important;width:100%!important;z-index:10!important}
.wptbm-mobile-dropdown-toggle{width:100%!important;display:flex!important;align-items:center!important;gap:6px!important;padding:10px 12px!important;background:#fff!important;border:2px solid #e2e8f0!important;border-radius:8px!important;font-size:13px!important;font-weight:600!important;color:#334155!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;transition:all .2s ease!important;box-shadow:0 1px 2px rgba(0,0,0,.05)!important}
.wptbm-mobile-dropdown-toggle:hover{border-color:#cbd5e1!important;background:#f8fafc!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-toggle{border-color:#3b82f6!important;background:#eff6ff!important;color:#2563eb!important;box-shadow:0 0 0 3px rgba(59,130,246,.15)!important}
.wptbm-toggle-icon{display:flex!important;align-items:center!important;color:#64748b!important;transition:color .2s ease!important}
.wptbm-mobile-dropdown-toggle:hover .wptbm-toggle-icon,.wptbm-mobile-dropdown.is-open .wptbm-toggle-icon{color:#2563eb!important}
.wptbm-toggle-label{display:flex!important;align-items:center!important;gap:6px!important;flex:1!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.wptbm-mobile-dropdown-toggle svg:last-child{margin-left:auto!important;transition:transform .25s ease!important;color:#64748b!important;flex-shrink:0!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-toggle svg:last-child{transform:rotate(180deg)!important;color:#2563eb!important}

/* Dropdown menu */
.wptbm-mobile-dropdown-menu{display:none!important;position:absolute!important;top:calc(100% + 6px)!important;left:0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:6px!important;margin-top:0!important;max-height:320px!important;overflow-y:auto!important;z-index:100!important;box-shadow:0 10px 40px rgba(0,0,0,.15),0 4px 12px rgba(0,0,0,.08)!important;min-width:160px!important;width:auto!important;white-space:nowrap!important;padding:6px 0!important}
.wptbm-mobile-dropdown.is-open .wptbm-mobile-dropdown-menu{display:block!important}

/* Dropdown items */
.wptbm-mobile-dropdown-item{display:flex!important;align-items:center!important;gap:10px!important;padding:10px 14px!important;font-size:12px!important;cursor:pointer!important;border-bottom:1px solid #f1f5f9!important;transition:all .15s ease!important;color:#475569!important;font-weight:500!important}
.wptbm-mobile-dropdown-item:last-child{border-bottom:none!important}
.wptbm-mobile-dropdown-item:hover{background:#f8fafc!important;color:#2563eb!important}
.wptbm-mobile-dropdown-item input[type=checkbox]{width:16px!important;height:16px!important;margin:0!important;flex-shrink:0!important;accent-color:#2563eb!important;border-radius:4px!important;border:2px solid #cbd5e1!important;cursor:pointer!important}

/* Apply button on mobile */
.wptbm-catalog-apply-desktop{display:none!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply{display:block!important;width:100%!important;padding:10px 16px!important;font-size:13px!important;font-weight:700!important;border-radius:8px!important;white-space:nowrap!important;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%)!important;color:#fff!important;border:none!important;box-shadow:0 4px 12px rgba(249,115,22,.35),0 2px 4px rgba(249,115,22,.2)!important;transition:all .2s ease!important;cursor:pointer!important;text-transform:uppercase!important;letter-spacing:.5px!important;position:relative!important;overflow:hidden!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply::before{content:''!important;position:absolute!important;top:0!important;left:-100%!important;width:100%!important;height:100%!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)!important;transition:left .5s ease!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:hover::before{left:100%!important}
.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:hover,.wptbm-mobile-filter-col-btn .wptbm-catalog-apply:active{background:linear-gradient(135deg,#ea580c 0%,#c2410c 100%)!important;transform:translateY(-2px)!important;box-shadow:0 6px 20px rgba(249,115,22,.45),0 3px 6px rgba(249,115,22,.3)!important}
}

/* Desktop: Show desktop filter, hide mobile */
@media (min-width:769px){
.wptbm-catalog-filter-mobile{display:none!important}
.wptbm-catalog-filter-desktop{display:block!important}
.wptbm-catalog-apply-desktop{display:block!important}
.wptbm-tour-catalog-main{margin-top:-65px!important}
.wptbm-tour-catalog-sidebar{align-self:flex-start!important;position:sticky!important;top:80px!important}
}

/* Grid View Responsive */
@media (max-width:1024px){
.wptbm-tour-grid-view{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
.wptbm-tour-grid-view{grid-template-columns:1fr}
}

/* List View Responsive */
@media (max-width:1024px){
.wptbm-tour-list-card{grid-template-columns:200px 1fr 200px}
.wptbm-list-card-info{padding:16px}
.wptbm-list-card-price{padding:16px}
}
@media (max-width:768px){
.wptbm-tour-list-card{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}
.wptbm-list-card-image{min-height:180px}
.wptbm-list-card-price{border-left:none;border-top:1px solid #e2e8f0}
}

/* Member Catalog Header Premium Design */
.wptbm-member-header {
    background: #ffffff;
    padding: 20px 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    margin-bottom: 30px;
    border-bottom: 1px solid #f1f5f9;
}
.wptbm-member-header-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.wptbm-member-logo-wrap {
    flex-shrink: 0;
    display: flex;
    align-items: center;
}
.wptbm-member-logo {
    height: 70px;
    max-width: 160px;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}
.wptbm-member-logo-placeholder {
    width: 70px;
    height: 70px;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    color: #fff;
    font-size: 32px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);
}
.wptbm-member-info-main {
    flex: 1;
    display: flex;
    align-items: center;
}
.wptbm-member-name {
    margin: 0;
    font-size: 26px;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.5px;
}
.wptbm-member-contact {
    display: flex;
    align-items: center;
}
.wptbm-member-contact-row {
    display: flex;
    align-items: center;
    gap: 16px;
}
.wptbm-member-contact-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 50px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.wptbm-member-contact-item:hover {
    background: #ffffff;
    border-color: #3b82f6;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(59, 130, 246, 0.15);
}
.wptbm-member-contact-icon {
    font-size: 16px;
    color: #3b82f6;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wptbm-member-contact-item a {
    font-size: 14px;
    font-weight: 600;
    color: #475569;
    text-decoration: none;
    transition: color 0.2s ease;
}
.wptbm-member-contact-item:hover a {
    color: #1d4ed8;
}
.wptbm-member-banner-strip {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 40px;
    height: 250px;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}
.wptbm-member-banner-strip > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
@media (max-width: 768px) {
    .wptbm-member-header-inner {
        flex-direction: column;
        text-align: center;
        gap: 16px;
    }
    .wptbm-member-info-main {
        justify-content: center;
    }
    .wptbm-member-contact-row {
        flex-direction: column;
        width: 100%;
        gap: 10px;
    }
    .wptbm-member-contact-item {
        width: 100%;
        justify-content: center;
    }
}

/* Updated Header and Banner Styles */
.wptbm-member-header {
    border-bottom: none;
    box-shadow: none;
    padding: 8px 30px !important;
}
.wptbm-member-logo {
    height: 40px !important;
}
.wptbm-member-contact-item {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
}
.wptbm-member-contact-item:hover {
    background: transparent !important;
    transform: none !important;
    box-shadow: none !important;
}
.wptbm-member-contact-icon {
    color: #ef4444 !important;
}
.wptbm-member-contact-item a {
    color: #1e293b !important;
    font-weight: 600 !important;
}
.wptbm-member-contact-item:hover a {
    color: #ef4444 !important;
}
.wptbm-member-banner-strip {
    position: relative;
    width: 100vw !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    max-width: none !important;
    height: 600px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin-bottom: 50px !important;
}
.wptbm-member-banner-strip::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.2) 60%, transparent 100%);
    z-index: 1;
}
.wptbm-member-banner-strip > img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}
.wptbm-member-banner-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 1200px;
    padding: 0 24px;
    z-index: 2;
    color: #fff;
    text-align: left;
}
.wptbm-member-banner-heading {
    font-size: 38px;
    font-weight: 800;
    margin: 0 0 16px 0;
    line-height: 1.1;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0,0,0,0.4);
}
.wptbm-member-banner-desc {
    font-size: 20px;
    font-weight: 500;
    max-width: 600px;
    margin: 0;
    color: #f8fafc;
    text-shadow: 0 1px 3px rgba(0,0,0,0.4);
    line-height: 1.6;
}

/* Force left and right padding on the member catalog page tour package grid */
body.wptbm-member-catalog-page .wptbm-member-tours {
    padding: 10px 60px 60px 60px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

body.wptbm-member-catalog-page .wptbm-tour-grid-view {
    grid-template-columns: repeat(3, 1fr) !important;
    padding: 0 80px !important;
    box-sizing: border-box !important;
}

@media (max-width: 991px) {
    body.wptbm-member-catalog-page .wptbm-member-header {
        padding: 20px 15px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-header-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-logo-wrap {
        margin-bottom: 4px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-logo {
        height: 60px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-info-main {
        margin-top: 0 !important;
        text-align: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-name {
        font-size: 28px !important;
        font-weight: 700 !important;
        white-space: normal !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact {
        margin-top: 4px !important;
        width: 100% !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact-item {
        justify-content: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-strip {
        height: auto !important;
        min-height: 350px !important;
        display: flex !important;
        align-items: center !important;
        padding: 60px 0 !important;
        margin-bottom: 30px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-content {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 32px !important;
        box-sizing: border-box !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-heading {
        font-size: 32px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-desc {
        font-size: 15px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-about-section {
        margin: 40px 20px !important;
        padding: 30px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-about-title {
        font-size: 28px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-tours {
        padding: 10px 30px 40px 30px !important;
    }
    body.wptbm-member-catalog-page .wptbm-tour-grid-view {
        grid-template-columns: repeat(2, 1fr) !important;
        padding: 0 40px !important;
    }
}

@media (max-width: 600px) {
    body.wptbm-member-catalog-page .wptbm-member-header {
        padding: 15px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-header-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-logo-wrap {
        margin-bottom: 2px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-logo {
        height: 50px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-info-main {
        margin-top: 0 !important;
        text-align: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-name {
        font-size: 22px !important;
        font-weight: 700 !important;
        white-space: normal !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact {
        margin-top: 2px !important;
        width: 100% !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact-row {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 6px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-contact-item {
        justify-content: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-strip {
        height: auto !important;
        min-height: 250px !important;
        display: flex !important;
        align-items: center !important;
        padding: 40px 0 !important;
        margin-bottom: 20px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-content {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 24px !important;
        box-sizing: border-box !important;
        text-align: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-heading {
        font-size: 24px !important;
        margin-bottom: 8px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-banner-desc {
        font-size: 13px !important;
        line-height: 1.5 !important;
        text-align: center !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-about-section {
        margin: 24px 15px !important;
        padding: 24px 20px !important;
        border-radius: 8px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-about-title {
        font-size: 22px !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-about-content {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }
    body.wptbm-member-catalog-page .wptbm-member-tours {
        padding: 10px 15px 30px 15px !important;
    }
    body.wptbm-member-catalog-page .wptbm-tour-grid-view {
        grid-template-columns: 1fr !important;
        padding: 0 !important;
    }
}

/* ==========================================================================
   TARGET TOUR CATALOG & GRID REDESIGN - HIGH-FIDELITY MATCH TO MOCKUP
   ========================================================================== */

/* Prevent horizontal scrollbars when 100vw breakout is active */
html, body {
    overflow-x: clip !important;
}

/* Ensure theme container does not constrain width or add unwanted top/bottom margins */
.wptbm-taxonomy-archive,
body:has(.wptbm-catalog-target-wrapper) .entry-header,
body:has(.wptbm-catalog-target-wrapper) .post-header,
body:has(.wptbm-catalog-target-wrapper) .entry-title:not(.wptbm-target-hero-title),
body:has(.wptbm-catalog-target-wrapper) .page-header,
body:has(.wptbm-catalog-target-wrapper) .ast-archive-description,
body:has(.wptbm-catalog-target-wrapper) .entry-meta,
body:has(.wptbm-catalog-target-wrapper) .post-meta,
body:has(.wptbm-catalog-target-wrapper) .entry-footer,
body:has(.wptbm-catalog-target-wrapper) .post-footer,
body.tax-tour_destination .entry-header,
body.tax-tour_destination .post-header,
body.tax-tour_destination .page-header,
body.tax-tour_destination .entry-title,
body.tax-tour_destination .ast-archive-description,
body.post-type-archive-tour_package .entry-header,
body.post-type-archive-tour_package .page-header,
body.post-type-archive-tour_package .page-title {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body:has(.wptbm-catalog-target-wrapper) #primary,
body:has(.wptbm-catalog-target-wrapper) #content,
body:has(.wptbm-catalog-target-wrapper) .site-content,
body:has(.wptbm-catalog-target-wrapper) .content-area,
body:has(.wptbm-catalog-target-wrapper) .ast-container,
body:has(.wptbm-catalog-target-wrapper) .ast-article-single,
body:has(.wptbm-catalog-target-wrapper) .ast-separate-container .ast-article-single,
body:has(.wptbm-catalog-target-wrapper) .container,
body:has(.wptbm-catalog-target-wrapper) article,
body:has(.wptbm-catalog-target-wrapper) .entry-content,
body:has(.wptbm-catalog-target-wrapper) #main,
body:has(.wptbm-catalog-target-wrapper) .site-main,
body.tax-tour_destination #primary,
body.tax-tour_destination #content,
body.tax-tour_destination .site-content,
body.tax-tour_destination .content-area,
body.tax-tour_destination .ast-container,
body.tax-tour_destination .ast-article-single,
body.tax-tour_destination .ast-separate-container .ast-article-single,
body.tax-tour_destination .container,
body.tax-tour_destination article,
body.tax-tour_destination .entry-content,
body.tax-tour_destination #main,
body.tax-tour_destination .site-main,
body.post-type-archive-tour_package #primary,
body.post-type-archive-tour_package #content,
body.post-type-archive-tour_package .site-content,
body.post-type-archive-tour_package .content-area,
body.post-type-archive-tour_package .ast-container,
body.post-type-archive-tour_package .container,
body.post-type-archive-tour_package article,
body.post-type-archive-tour_package .entry-content,
body.post-type-archive-tour_package #main,
body.post-type-archive-tour_package .site-main {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

/* 1. Full-Width Wrapper Breakout */
.wptbm-catalog-target-wrapper {
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    width: 100vw !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    background-color: #f8fafc !important;
    color: #1e293b !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 20px !important;
}

.wptbm-catalog-target-wrapper *,
.wptbm-catalog-target-wrapper *::before,
.wptbm-catalog-target-wrapper *::after {
    box-sizing: border-box !important;
}

/* 2. Top Hero Banner - Rich Alpine Landscape */
.wptbm-target-hero-banner {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    background-size: cover !important;
    background-position: center 30% !important;
    background-repeat: no-repeat !important;
    padding: 60px 48px 85px 48px !important;
    color: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    box-sizing: border-box !important;
}

.wptbm-target-hero-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

.wptbm-target-breadcrumb {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    margin-bottom: 22px !important;
    user-select: none !important;
}

.wptbm-target-breadcrumb a {
    color: #e2e8f0 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.wptbm-target-breadcrumb a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.wptbm-target-breadcrumb .wptbm-sep {
    color: #94a3b8 !important;
    font-size: 11px !important;
}

.wptbm-target-breadcrumb .wptbm-current {
    color: #ffffff !important;
    font-weight: 600 !important;
}

.wptbm-target-hero-content-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
}

.wptbm-target-hero-text {
    flex: 1 1 680px !important;
}

.wptbm-target-hero-title {
    font-size: 42px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.6px !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5) !important;
}

.wptbm-target-hero-subtitle {
    font-size: 15.5px !important;
    color: #f1f5f9 !important;
    margin: 0 0 22px 0 !important;
    max-width: 700px !important;
    line-height: 1.55 !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4) !important;
}

.wptbm-target-hero-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

.wptbm-hero-badge-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(0, 0, 0, 0.35) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    padding: 7px 18px !important;
    border-radius: 9999px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
    white-space: nowrap !important;
}

.wptbm-hero-badge-pill svg {
    flex-shrink: 0 !important;
}

.wptbm-target-hero-slogan {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    user-select: none !important;
    text-align: right !important;
}

.wptbm-slogan-script {
    font-family: 'Dancing Script', 'Brush Script MT', cursive, sans-serif !important;
    font-size: 32px !important;
    color: #fbd38d !important;
    line-height: 1.1 !important;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.6) !important;
}

.wptbm-slogan-main {
    font-family: 'Dancing Script', 'Brush Script MT', cursive, sans-serif !important;
    font-size: 44px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    color: #ffffff !important;
    text-shadow: 0 3px 12px rgba(0, 0, 0, 0.7) !important;
    line-height: 1.1 !important;
}

/* 3. Main Container */
.wptbm-target-main-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: -35px auto 15px auto !important;
    padding: 0 48px !important;
    position: relative !important;
    z-index: 10 !important;
    box-sizing: border-box !important;
}

.wptbm-target-grid-layout {
    display: grid !important;
    grid-template-columns: 290px 1fr !important;
    gap: 30px !important;
    align-items: start !important;
    width: 100% !important;
}

/* 4. Filter Sidebar (Sticky on Scroll) */
.wptbm-target-sidebar {
    width: 100% !important;
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 25px !important;
    align-self: start !important;
    z-index: 20 !important;
    max-height: calc(100vh - 40px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-width: thin !important;
    scrollbar-color: #cbd5e1 transparent !important;
}

.wptbm-target-sidebar::-webkit-scrollbar {
    width: 4px !important;
}
.wptbm-target-sidebar::-webkit-scrollbar-track {
    background: transparent !important;
}
.wptbm-target-sidebar::-webkit-scrollbar-thumb {
    background: #cbd5e1 !important;
    border-radius: 4px !important;
}
.wptbm-target-sidebar::-webkit-scrollbar-thumb:hover {
    background: #94a3b8 !important;
}

body.admin-bar .wptbm-target-sidebar {
    top: 55px !important;
    max-height: calc(100vh - 75px) !important;
}

/* Mobile Filter Toggle Button Bar */
.wptbm-mobile-filter-bar {
    display: none !important;
}
.wptbm-mobile-filter-toggle-btn {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #0f2942 !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}
.wptbm-mobile-filter-toggle-btn .wptbm-mft-left {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #0066cc !important;
}
.wptbm-mobile-filter-toggle-btn .wptbm-mft-title {
    color: #0f2942 !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}
.wptbm-mobile-filter-toggle-btn .wptbm-mft-count {
    background: #0066cc !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 7px !important;
    border-radius: 10px !important;
    line-height: 1 !important;
}
.wptbm-mobile-filter-toggle-btn .wptbm-mft-right {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12.5px !important;
    color: #64748b !important;
}
.wptbm-mobile-filter-toggle-btn .wptbm-mft-chevron {
    transition: transform 0.25s ease !important;
}
.wptbm-mobile-filter-toggle-btn.is-active {
    border-color: #0066cc !important;
    background: #f8fafc !important;
}
.wptbm-mobile-filter-toggle-btn.is-active .wptbm-mft-chevron {
    transform: rotate(180deg) !important;
    color: #0066cc !important;
}

.wptbm-filter-card {
    background: #ffffff !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 4px 16px -2px rgba(15, 23, 42, 0.05), 0 2px 6px -1px rgba(15, 23, 42, 0.03) !important;
    padding: 20px 18px !important;
}

.wptbm-filter-card-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1.5px solid #f1f5f9 !important;
    padding-bottom: 12px !important;
    margin-bottom: 16px !important;
}

.wptbm-filter-header-left {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.wptbm-filter-title {
    font-size: 16.5px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.wptbm-filter-reset-header-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #0066cc !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    padding: 3px 9px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.wptbm-filter-reset-header-btn:hover {
    background: #0066cc !important;
    color: #ffffff !important;
    border-color: #0066cc !important;
}

.wptbm-filter-section {
    border-bottom: 1px solid #f1f5f9 !important;
    padding-bottom: 14px !important;
    margin-bottom: 14px !important;
}

.wptbm-filter-section:last-of-type {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.wptbm-filter-heading {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 10px 0 !important;
}

.wptbm-filter-options-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

.wptbm-filter-checkbox-item {
    display: flex !important;
    align-items: center !important;
    font-size: 13px !important;
    color: #334155 !important;
    cursor: pointer !important;
    user-select: none !important;
    padding: 4px 6px !important;
    border-radius: 5px !important;
    transition: all 0.15s ease !important;
}

.wptbm-filter-checkbox-item:hover {
    color: #0f172a !important;
    background: #f8fafc !important;
}

/* Custom Checkbox Design matching Mockup */
.wptbm-filter-checkbox-item input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    display: inline-grid !important;
    place-content: center !important;
    margin: 0 9px 0 0 !important;
    transition: all 0.15s ease-in-out !important;
    flex-shrink: 0 !important;
}

.wptbm-filter-checkbox-item input[type="checkbox"]:checked {
    background-color: #0066cc !important;
    border-color: #0066cc !important;
}

.wptbm-filter-checkbox-item input[type="checkbox"]:checked::before {
    content: "" !important;
    width: 9px !important;
    height: 5px !important;
    border-left: 2px solid #ffffff !important;
    border-bottom: 2px solid #ffffff !important;
    transform: rotate(-45deg) translate(1px, -1px) !important;
}

.wptbm-filter-lbl {
    flex: 1 !important;
    font-weight: 500 !important;
}

.wptbm-filter-cnt {
    color: #94a3b8 !important;
    font-size: 11.5px !important;
    background: #f1f5f9 !important;
    padding: 1px 6px !important;
    border-radius: 10px !important;
}

/* Range Slider */
.wptbm-price-slider-wrap {
    padding-top: 2px !important;
}

.wptbm-price-range-labels {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 8px !important;
}

.wptbm-min-price-lbl {
    font-size: 12px !important;
    color: #64748b !important;
    font-weight: 600 !important;
}

.wptbm-max-price-badge {
    font-size: 12px !important;
    color: #0066cc !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    padding: 2px 8px !important;
    border-radius: 12px !important;
    font-weight: 600 !important;
}

.wptbm-max-price-badge strong {
    font-weight: 800 !important;
    color: #0066cc !important;
}

.wptbm-range-slider {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 100% !important;
    height: 6px !important;
    background: #0066cc !important;
    border-radius: 3px !important;
    outline: none !important;
    margin: 8px 0 6px 0 !important;
    cursor: pointer !important;
}

.wptbm-range-slider::-webkit-slider-thumb {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: #0066cc !important;
    cursor: pointer !important;
    border: 2.5px solid #ffffff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}

.wptbm-range-slider::-moz-range-thumb {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: #0066cc !important;
    cursor: pointer !important;
    border: 2.5px solid #ffffff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}

.wptbm-slider-values {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #0066cc !important;
    margin-bottom: 6px !important;
}

.wptbm-filter-actions-row,
.wptbm-filter-buttons-row {
    display: flex !important;
    gap: 8px !important;
    margin-top: 18px !important;
}

.wptbm-filter-apply-btn,
.wptbm-btn-apply-filter {
    flex: 1 1 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background: #ff5722 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    box-shadow: 0 2px 6px rgba(255, 87, 34, 0.25) !important;
    transition: all 0.2s ease !important;
}

.wptbm-filter-apply-btn:hover,
.wptbm-btn-apply-filter:hover {
    background: #e64a19 !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
}

.wptbm-filter-reset-btn,
.wptbm-btn-reset-filter {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.wptbm-filter-reset-btn:hover,
.wptbm-btn-reset-filter:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
}

/* 5. Results Header */
.wptbm-target-results-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    margin-bottom: 24px !important;
    background: #ffffff !important;
    padding: 16px 22px !important;
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
}

.wptbm-target-results-count {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    margin: 0 !important;
}

.wptbm-target-sort-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.wptbm-target-sort-wrap label {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin: 0 !important;
}

.wptbm-target-sort-wrap select {
    padding: 8px 16px !important;
    border-radius: 8px !important;
    border: 1px solid #cbd5e1 !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    background: #ffffff !important;
    cursor: pointer !important;
    outline: none !important;
}

.wptbm-target-sort-wrap select:focus {
    border-color: #0066cc !important;
    box-shadow: 0 0 0 2px rgba(0, 102, 204, 0.2) !important;
}

/* 6. 3 PACKAGES PER ROW GRID */
.wptbm-catalog-target-wrapper .wptbm-tour-grid-view,
.wptbm-target-cards-container .wptbm-tour-grid-view {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* 7. Tour Card Container */
.wptbm-target-tour-card {
    background: #ffffff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
    margin: 0 !important;
}

.wptbm-target-tour-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 14px 28px -4px rgba(15, 23, 42, 0.1), 0 6px 12px -3px rgba(15, 23, 42, 0.05) !important;
    border-color: #cbd5e1 !important;
}

/* 8. Card Media */
.wptbm-card-media-wrap {
    position: relative !important;
    width: 100% !important;
    height: 185px !important;
    overflow: hidden !important;
    background: #e2e8f0 !important;
}

.wptbm-card-media-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    text-decoration: none !important;
}

.wptbm-card-thumb-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
    display: block !important;
}

.wptbm-target-tour-card:hover .wptbm-card-thumb-img {
    transform: scale(1.06) !important;
}

.wptbm-card-thumb-placeholder {
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(135deg, #cbd5e1 0%, #94a3b8 100%) !important;
}

/* Badges on Image */
.wptbm-card-badge {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 4px 9px !important;
    border-radius: 5px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    color: #ffffff !important;
    z-index: 3 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
    line-height: 1 !important;
}

.wptbm-card-badge svg {
    flex-shrink: 0 !important;
}

.wptbm-badge-red     { background: #e11d48 !important; }
.wptbm-badge-pink    { background: #ec4899 !important; }
.wptbm-badge-purple  { background: #8b5cf6 !important; }
.wptbm-badge-green   { background: #059669 !important; }
.wptbm-badge-blue    { background: #0284c7 !important; }
.wptbm-badge-orange  { background: #ea580c !important; }
.wptbm-badge-magenta { background: #c026d3 !important; }
.wptbm-badge-coral   { background: #e05638 !important; }

/* Wishlist Heart Button - Hidden */
.wptbm-card-wishlist-btn {
    display: none !important;
}

/* 9. Card Content Body */
.wptbm-card-content-wrap {
    padding: 11px 13px 11px 13px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

.wptbm-card-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    margin: 0 0 6px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: auto !important;
}

.wptbm-card-title a {
    color: #0f2942 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.wptbm-card-title a:hover {
    color: #0066cc !important;
}

/* Duration & Route Unified Row */
.wptbm-card-meta-row {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-bottom: 7px !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

.wptbm-card-duration {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #0066cc !important;
    flex-shrink: 0 !important;
}

.wptbm-card-meta-dot {
    color: #cbd5e1 !important;
    font-size: 11px !important;
    flex-shrink: 0 !important;
}

.wptbm-card-route-text {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 11.5px !important;
    color: #64748b !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.wptbm-card-route-row {
    display: none !important;
}

/* Inclusions 2x2 Clean Grid */
.wptbm-card-inclusions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 4px 8px !important;
    padding: 6px 8px !important;
    background: #f8fafc !important;
    border: 1px solid #edf2f7 !important;
    border-radius: 6px !important;
    margin-bottom: 7px !important;
}

.wptbm-inc-pill {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 11.5px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.wptbm-inc-pill svg {
    flex-shrink: 0 !important;
    stroke: #0066cc !important;
    width: 12px !important;
    height: 12px !important;
}

/* Agent Box Row */
.wptbm-card-agent-row {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 6px 0 !important;
    border-top: 1px solid #f1f5f9 !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-top: auto !important;
    margin-bottom: 7px !important;
}

.wptbm-agent-left {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.wptbm-agent-pic,
.wptbm-agent-pic-fallback {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
}

.wptbm-agent-pic-fallback {
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15) !important;
}

.wptbm-agent-details {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    line-height: 1.15 !important;
    justify-content: center !important;
}

.wptbm-agent-offered-by {
    font-size: 9.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #0f172a !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin-bottom: 2px !important;
    display: block !important;
}

.wptbm-agent-name {
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 220px !important;
    line-height: 1.2 !important;
}

.wptbm-agent-city {
    display: none !important;
}

.wptbm-agent-stars,
.wptbm-verified-badge,
.wptbm-agent-right {
    display: none !important;
}

/* Price & CTAs Row */
.wptbm-card-footer {
    margin-top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

.wptbm-card-price-col {
    display: flex !important;
    align-items: baseline !important;
    gap: 5px !important;
}

.wptbm-card-price-main {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #d93829 !important;
    letter-spacing: -0.3px !important;
    line-height: 1.1 !important;
}

.wptbm-card-price-sub {
    font-size: 11px !important;
    color: #64748b !important;
    font-weight: 500 !important;
}

.wptbm-card-btns-col {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 6px !important;
}

.wptbm-card-btn-contact {
    background: #ff5722 !important;
    color: #ffffff !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    padding: 8px 4px !important;
    border-radius: 5px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background 0.2s ease, transform 0.1s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    cursor: pointer !important;
    font-family: inherit !important;
    line-height: normal !important;
    width: 100% !important;
    box-shadow: 0 1px 3px rgba(255, 87, 34, 0.25) !important;
}

.wptbm-card-btn-contact:hover {
    background: #e64a19 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

.wptbm-card-btn-details {
    background: #0066cc !important;
    color: #ffffff !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    padding: 8px 4px !important;
    border-radius: 5px !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background 0.2s ease, transform 0.1s ease !important;
    display: block !important;
    box-shadow: 0 1px 3px rgba(0, 102, 204, 0.25) !important;
}

.wptbm-card-btn-details:hover {
    background: #0052a3 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

/* 9.5 Modern Catalog Pagination */
.wptbm-pagination {
    margin: 32px 0 16px 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
}

.wptbm-pagination .page-numbers {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 14px !important;
    border-radius: 8px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #ffffff !important;
    color: #1e293b !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.2s ease !important;
}

.wptbm-pagination .page-numbers:hover {
    background: #f1f5f9 !important;
    border-color: #cbd5e1 !important;
    color: #0066cc !important;
    transform: translateY(-1px) !important;
}

.wptbm-pagination .page-numbers.current {
    background: #0066cc !important;
    border-color: #0066cc !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(0, 102, 204, 0.3) !important;
}

.wptbm-pagination .page-numbers.dots {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #94a3b8 !important;
    cursor: default !important;
}

.wptbm-pagination .page-numbers.prev,
.wptbm-pagination .page-numbers.next {
    font-weight: 700 !important;
    padding: 0 16px !important;
    gap: 4px !important;
}

/* 10. Bottom Trust Bar */
.wptbm-target-trust-section {
    margin-top: 25px !important;
    margin-bottom: 12px !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    border: 1px solid #e5e7eb !important;
    padding: 22px 20px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03) !important;
}

.wptbm-target-trust-title {
    text-align: center !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f2942 !important;
    margin: 0 0 20px 0 !important;
}

.wptbm-target-trust-row {
    display: flex !important;
    justify-content: space-around !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

.wptbm-trust-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 10px !important;
    flex: 1 1 160px !important;
}

.wptbm-trust-icon-box {
    width: 50px !important;
    height: 50px !important;
    border-radius: 50% !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 6px rgba(0, 102, 204, 0.1) !important;
}

.wptbm-trust-icon-box svg {
    stroke: #0066cc !important;
}

.wptbm-trust-lbl {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
}

/* 11. Responsive Breakpoints */
@keyframes wptbmFadeSlide {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 1200px) {
    .wptbm-target-hero-banner {
        padding: 45px 24px 65px 24px !important;
    }
    .wptbm-target-main-container {
        padding: 0 24px !important;
    }
    .wptbm-catalog-target-wrapper .wptbm-tour-grid-view,
    .wptbm-target-cards-container .wptbm-tour-grid-view {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 991px) {
    .wptbm-target-grid-layout {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .wptbm-target-sidebar {
        position: static !important;
        top: auto !important;
        max-height: none !important;
        overflow-y: visible !important;
        width: 100% !important;
        margin-bottom: 8px !important;
    }
    /* Off-Canvas Slide-In Filter Drawer & Horizontal Filter Bar for Mobile */
    .wptbm-mobile-filter-bar {
        display: block !important;
        position: relative !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 14px !important;
        padding: 5px 6px !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05) !important;
        margin-bottom: 12px !important;
        box-sizing: border-box !important;
        width: 100% !important;
        overflow: hidden !important;
    }
    .wptbm-mobile-filter-pills-row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 4px !important;
        width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .wptbm-mf-pill {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        padding: 6px 5px !important;
        border-radius: 30px !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        white-space: nowrap !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
        transition: all 0.2s ease !important;
        border: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
        color: #1e293b !important;
        box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
        line-height: 1 !important;
        outline: none !important;
        -webkit-tap-highlight-color: transparent !important;
        box-sizing: border-box !important;
    }
    .wptbm-mf-pill span {
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
    .wptbm-mf-pill:active {
        transform: scale(0.97) !important;
    }
    .wptbm-mf-pill-primary {
        flex: 1.25 1 0 !important;
        background: linear-gradient(135deg, #0080ff 0%, #0066cc 100%) !important;
        color: #ffffff !important;
        border: 1px solid #0066cc !important;
        box-shadow: 0 2px 8px rgba(0, 102, 204, 0.25) !important;
        font-weight: 700 !important;
    }
    .wptbm-mf-pill-primary svg {
        stroke: #ffffff !important;
        flex-shrink: 0 !important;
    }
    .wptbm-mf-pill-dest {
        flex: 1.05 1 0 !important;
    }
    .wptbm-mf-pill-dur {
        flex: 0.95 1 0 !important;
    }
    .wptbm-mf-pill-more {
        flex: 0.75 1 0 !important;
    }
    .wptbm-mf-pill svg {
        flex-shrink: 0 !important;
    }
    .wptbm-mf-pill.is-active {
        background: #eff6ff !important;
        border-color: #0066cc !important;
        color: #0066cc !important;
    }
    .wptbm-mf-badge {
        background: #0066cc !important;
        color: #ffffff !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        padding: 1px 4px !important;
        border-radius: 8px !important;
        line-height: 1.1 !important;
        margin-left: 1px !important;
        flex-shrink: 0 !important;
    }
    .wptbm-mf-pill-primary .wptbm-mf-badge {
        background: #ffffff !important;
        color: #0066cc !important;
    }
    .wptbm-mf-chevron {
        stroke: currentColor !important;
        margin-left: 1px !important;
        flex-shrink: 0 !important;
    }
    @media (max-width: 380px) {
        .wptbm-mobile-filter-bar {
            padding: 4px 3px !important;
        }
        .wptbm-mobile-filter-pills-row {
            gap: 2px !important;
        }
        .wptbm-mf-pill {
            font-size: 10px !important;
            padding: 5px 3px !important;
            gap: 2px !important;
        }
    }
    @media (max-width: 340px) {
        .wptbm-mf-pill {
            font-size: 9px !important;
            padding: 4px 2px !important;
            gap: 1px !important;
        }
    }
    .wptbm-filter-drawer-backdrop {
        display: none !important;
    }
    .wptbm-filter-card {
        display: flex !important;
        flex-direction: column !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100% !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        background: #ffffff !important;
        z-index: 999999999 !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        transform: translateX(100%) !important;
        transition: transform 0.28s ease !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }
    .wptbm-filter-card.is-mobile-open {
        transform: translateX(0) !important;
    }
    .wptbm-filter-card-header {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 16px 20px !important;
        border-bottom: 1px solid #e2e8f0 !important;
        background: #ffffff !important;
        flex-shrink: 0 !important;
        margin-bottom: 0 !important;
        box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
        z-index: 10 !important;
    }
    .wptbm-filter-drawer-badge {
        background: #0066cc !important;
        color: #ffffff !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        padding: 2px 8px !important;
        border-radius: 10px !important;
        line-height: 1.2 !important;
        margin-left: 6px !important;
    }
    .wptbm-filter-header-right {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
    }
    .wptbm-filter-drawer-close-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        border: 1px solid #e2e8f0 !important;
        color: #1e293b !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        padding: 0 !important;
    }
    .wptbm-filter-drawer-close-btn:hover {
        background: #e2e8f0 !important;
        color: #0f172a !important;
    }
    .wptbm-filter-card-body {
        flex: 1 1 auto !important;
        height: auto !important;
        max-height: calc(100vh - 140px) !important;
        max-height: calc(100dvh - 140px) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 18px 20px 30px 20px !important;
        background: #f8fafc !important;
        box-sizing: border-box !important;
    }
    /* Clean Cards for each Filter Section inside Mobile Drawer */
    .wptbm-filter-card .wptbm-filter-section {
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 12px !important;
        padding: 16px 18px !important;
        margin-bottom: 14px !important;
        box-shadow: 0 1px 3px rgba(15, 23, 42, 0.03) !important;
    }
    .wptbm-filter-actions-row {
        position: sticky !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        display: flex !important;
        gap: 12px !important;
        padding: 14px 20px !important;
        background: #ffffff !important;
        border-top: 1px solid #e2e8f0 !important;
        box-shadow: 0 -4px 16px rgba(15, 23, 42, 0.08) !important;
        flex-shrink: 0 !important;
        margin-top: 0 !important;
        z-index: 20 !important;
        box-sizing: border-box !important;
    }
    .wptbm-filter-actions-row .wptbm-filter-apply-btn {
        flex: 1 !important;
        height: 48px !important;
        padding: 0 16px !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        border-radius: 12px !important;
        background: linear-gradient(135deg, #0080ff 0%, #0066cc 100%) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(0, 102, 204, 0.3) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
    }
    .wptbm-filter-actions-row .wptbm-filter-reset-btn {
        flex: 0 0 auto !important;
        height: 48px !important;
        padding: 0 18px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        border-radius: 12px !important;
        background: #f1f5f9 !important;
        color: #475569 !important;
        border: 1px solid #cbd5e1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
    }
    .wptbm-target-sort-wrap {
        display: none !important;
    }
    .wptbm-target-results-header {
        justify-content: flex-start !important;
    }
    .wptbm-catalog-target-wrapper .wptbm-tour-grid-view,
    .wptbm-target-cards-container .wptbm-tour-grid-view {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .wptbm-target-hero-slogan {
        display: none !important;
    }
    .wptbm-target-hero-title {
        font-size: 30px !important;
    }
}

@media (max-width: 640px) {
    .wptbm-target-hero-banner {
        padding: 24px 14px 38px 14px !important;
    }
    .wptbm-target-hero-title {
        font-size: 22px !important;
        margin-bottom: 6px !important;
    }
    .wptbm-target-hero-subtitle {
        font-size: 13px !important;
        margin-bottom: 14px !important;
    }
    .wptbm-target-hero-badges {
        gap: 6px !important;
    }
    .wptbm-hero-badge-pill {
        font-size: 11px !important;
        padding: 5px 10px !important;
        white-space: normal !important;
    }
    .wptbm-target-main-container {
        padding: 0 12px !important;
        margin-top: -18px !important;
        margin-bottom: 15px !important;
    }
    .wptbm-target-results-header {
        padding: 10px 14px !important;
        margin-bottom: 14px !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        gap: 8px !important;
    }
    .wptbm-count-num {
        font-size: 15px !important;
    }
    .wptbm-count-text {
        font-size: 12.5px !important;
    }
    .wptbm-target-sort-wrap {
        display: none !important;
    }
    .wptbm-catalog-target-wrapper .wptbm-tour-grid-view,
    .wptbm-target-cards-container .wptbm-tour-grid-view {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .wptbm-card-media-wrap {
        height: 175px !important;
    }
    .wptbm-card-content-wrap {
        padding: 10px 12px !important;
    }
    .wptbm-card-title {
        font-size: 15px !important;
        margin-bottom: 5px !important;
    }
    .wptbm-card-meta-row {
        font-size: 11.5px !important;
        margin-bottom: 7px !important;
    }
    .wptbm-card-inclusions {
        gap: 5px !important;
        margin-bottom: 8px !important;
    }
    .wptbm-inc-pill {
        font-size: 10.5px !important;
        padding: 3px 6px !important;
    }
    .wptbm-card-agent-row {
        padding: 6px 0 !important;
        margin-bottom: 8px !important;
    }
    .wptbm-agent-name {
        font-size: 12px !important;
        max-width: 170px !important;
    }
    .wptbm-card-price-main {
        font-size: 16.5px !important;
    }
    .wptbm-card-price-sub {
        font-size: 10.5px !important;
    }
    .wptbm-card-btn-contact,
    .wptbm-card-btn-details {
        font-size: 11.5px !important;
        padding: 7px 6px !important;
    }
    .wptbm-target-trust-section {
        padding: 18px 12px !important;
        margin-top: 20px !important;
    }
    .wptbm-target-trust-title {
        font-size: 16px !important;
        margin-bottom: 16px !important;
    }
    .wptbm-target-trust-row {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
    .wptbm-trust-col {
        padding: 6px !important;
    }
    .wptbm-trust-icon-box {
        width: 38px !important;
        height: 38px !important;
    }
    .wptbm-trust-icon-box svg {
        width: 18px !important;
        height: 18px !important;
    }
    .wptbm-trust-lbl {
        font-size: 11.5px !important;
    }
}
/* ==========================================================================
   TARGET SINGLE TOUR PAGE REDESIGN - HIGH-FIDELITY MATCH TO MOCKUP
   ========================================================================== */

/* 1. Full-Width Wrapper Breakout */
.wptbm-single-target-wrapper {
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    width: 100vw !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
    background-color: #f8fafc !important;
    color: #1e293b !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 40px !important;
}

.wptbm-single-target-wrapper *,
.wptbm-single-target-wrapper *::before,
.wptbm-single-target-wrapper *::after {
    box-sizing: border-box !important;
}

/* Ensure theme post container does not restrict width & remove top/bottom theme gaps */
body.single-tour_package .entry-header,
body.single-tour_package .post-header,
body.single-tour_package .entry-title:not(.wptbm-st-hero-title),
body.single-tour_package .entry-meta,
body.single-tour_package .post-meta,
body.single-tour_package .post-navigation,
body.single-tour_package .navigation.post-navigation,
body.single-tour_package nav.post-navigation,
body.single-tour_package .ast-post-navigation,
body.single-tour_package .nav-links,
body.single-tour_package #nav-below,
body.single-tour_package .post-nav,
body.single-tour_package nav.navigation,
body.single-tour_package .entry-footer,
body.single-tour_package .post-footer,
body.single-tour_package .comments-area,
body.single-tour_package #comments,
body.single-tour_package .ast-single-post-order,
body.single-tour_package .related-posts,
body.single-tour_package .author-box {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-tour_package #primary,
body.single-tour_package .site-content,
body.single-tour_package #content,
body.single-tour_package .content-area,
body.single-tour_package .ast-container,
body.single-tour_package .container,
body.single-tour_package article.tour_package,
body.single-tour_package article.post,
body.single-tour_package .entry-content,
body.single-tour_package #main,
body.single-tour_package .site-main {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 2. Panoramic Hero Banner */
.wptbm-st-hero-banner {
    position: relative !important;
    width: 100% !important;
    background-size: cover !important;
    background-position: center 30% !important;
    background-repeat: no-repeat !important;
    padding: 60px 80px 95px 80px !important;
    color: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    box-sizing: border-box !important;
}

@media (min-width: 1400px) {
    .wptbm-st-hero-banner {
        padding: 65px 100px 105px 100px !important;
    }
}

.wptbm-st-hero-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

.wptbm-st-breadcrumb {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    margin-bottom: 20px !important;
    user-select: none !important;
}

.wptbm-st-breadcrumb a {
    color: #cbd5e1 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.wptbm-st-breadcrumb a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.wptbm-st-breadcrumb .wptbm-sep {
    color: #94a3b8 !important;
    font-size: 11px !important;
}

.wptbm-st-breadcrumb .wptbm-current {
    color: #ffffff !important;
    font-weight: 600 !important;
}

.wptbm-st-hero-content {
    max-width: 65% !important;
}

@media (max-width: 992px) {
    .wptbm-st-hero-content {
        max-width: 100% !important;
    }
}

.wptbm-st-hero-title {
    font-size: 38px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 8px 0 !important;
    line-height: 1.2 !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.5) !important;
}

.wptbm-st-hero-duration {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 6px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.4) !important;
}

.wptbm-st-hero-route {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: #f1f5f9 !important;
    margin-bottom: 22px !important;
}

.wptbm-st-hero-inclusions {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
    background: rgba(0, 0, 0, 0.42) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1px solid rgba(255, 255, 255, 0.25) !important;
    border-radius: 9999px !important;
    padding: 8px 22px !important;
    margin-top: 6px !important;
    max-width: 100% !important;
}

.wptbm-st-hero-inc-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
}

.wptbm-st-hero-inc-dot {
    color: rgba(255,255,255,0.4) !important;
    font-size: 14px !important;
}

/* 3. Main Container */
.wptbm-st-main-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: -35px auto 40px auto !important;
    padding: 0 80px !important;
    position: relative !important;
    z-index: 10 !important;
    box-sizing: border-box !important;
}

@media (min-width: 1400px) {
    .wptbm-st-main-container {
        padding: 0 100px !important;
    }
}

.wptbm-st-layout-grid {
    display: grid !important;
    grid-template-columns: 1fr 360px !important;
    gap: 32px !important;
    align-items: start !important;
    width: 100% !important;
}

/* 4. Right Sidebar (Sticky Booking / Quick Details) */
.wptbm-st-sidebar {
    width: 100% !important;
    position: sticky !important;
    top: 30px !important;
    z-index: 50 !important;
}

@media (min-width: 993px) {
    .wptbm-st-sidebar {
        margin-top: -280px !important;
    }
}

.wptbm-st-sticky-card {
    background: #ffffff !important;
    border-radius: 14px !important;
    border: 1px solid #e5e7eb !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06) !important;
    position: sticky !important;
    top: 20px !important;
}

.wptbm-st-featured-img-wrap {
    width: 100% !important;
    height: 230px !important;
    overflow: hidden !important;
    background: #e2e8f0 !important;
}

.wptbm-st-featured-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.wptbm-st-sticky-card:hover .wptbm-st-featured-img {
    transform: scale(1.05) !important;
}

.wptbm-st-price-ribbon {
    background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%) !important;
    color: #ffffff !important;
    padding: 12px 20px !important;
    display: flex !important;
    align-items: baseline !important;
    gap: 8px !important;
}

.wptbm-st-price-val {
    font-size: 26px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
}

.wptbm-st-price-unit {
    font-size: 13px !important;
    font-weight: 500 !important;
    opacity: 0.9 !important;
}

.wptbm-st-features-list {
    padding: 20px 22px 14px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.wptbm-st-feature-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.wptbm-st-feat-icon {
    width: 22px !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}

.wptbm-st-feat-icon svg {
    stroke: #0066cc !important;
}

.wptbm-st-feat-text {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.wptbm-st-feat-lbl {
    font-size: 11.5px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    color: #64748b !important;
    letter-spacing: 0.3px !important;
}

.wptbm-st-feat-val {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
}

.wptbm-st-btn-wrap {
    padding: 20px 22px 18px 22px !important;
}

.wptbm-st-enquire-btn {
    width: 100% !important;
    background: #ff5722 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 12px rgba(255, 87, 34, 0.35) !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

.wptbm-st-enquire-btn:hover {
    background: #e64a19 !important;
    transform: translateY(-1px) !important;
}

.wptbm-st-assistance-card {
    margin: 0 20px 20px 20px !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    border-radius: 10px !important;
    padding: 16px 18px !important;
}

.wptbm-st-assist-head {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 6px !important;
}

.wptbm-st-assist-icon-circle {
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: #dbeafe !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.wptbm-st-assist-icon-circle svg {
    stroke: #0066cc !important;
}

.wptbm-st-assist-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
}

.wptbm-st-assist-desc {
    font-size: 12px !important;
    color: #475569 !important;
    margin: 0 0 12px 0 !important;
    line-height: 1.4 !important;
}

.wptbm-st-assist-phone-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background: #0066cc !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 9px 12px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background 0.2s ease !important;
}

.wptbm-st-assist-phone-btn:hover {
    background: #0052a3 !important;
    color: #ffffff !important;
}

/* 5. Right Main Content Area */
.wptbm-st-main-content {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.wptbm-st-tabs-nav {
    position: sticky !important;
    top: 30px !important;
    z-index: 90 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 8px !important;
    margin-bottom: 28px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 6px 8px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08) !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
}

.wptbm-st-tabs-nav::-webkit-scrollbar {
    display: none !important;
}

.wptbm-st-tab-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    padding: 9px 12px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
    flex: 1 1 auto !important;
}

.wptbm-st-tab-btn svg {
    color: #0066cc !important;
    stroke: #0066cc !important;
    flex-shrink: 0 !important;
}

.wptbm-st-tab-btn:hover {
    background: #e0f2fe !important;
    border-color: #bae6fd !important;
    color: #0284c7 !important;
}

.wptbm-st-tab-btn.is-active {
    background: #0066cc !important;
    border-color: #0066cc !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(0, 102, 204, 0.3) !important;
}

.wptbm-st-tab-btn.is-active svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
}

/* All Sections Stacked */
.wptbm-st-content-section {
    margin-bottom: 40px !important;
    scroll-margin-top: 110px !important;
}

.wptbm-st-tab-panel {
    display: block !important;
}

/* Itinerary Panel */
.wptbm-st-itin-head {
    margin-bottom: 22px !important;
}

.wptbm-st-itin-title {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #0f2942 !important;
    margin: 0 0 4px 0 !important;
}

.wptbm-st-itin-sub {
    font-size: 14px !important;
    color: #64748b !important;
    margin: 0 !important;
}

.wptbm-st-itin-cards-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.wptbm-st-day-card {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 20px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

.wptbm-st-day-header-row {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

.wptbm-st-day-title-col {
    flex: 1 !important;
    min-width: 0 !important;
}

.wptbm-st-day-stay-preview {
    display: none !important;
}

.wptbm-st-day-toggle-col {
    display: none !important;
}

.wptbm-st-day-body {
    display: grid !important;
    grid-template-columns: 1fr 180px !important;
    gap: 18px !important;
    align-items: start !important;
    padding-left: 68px !important;
}

.wptbm-st-day-card.wptbm-no-img .wptbm-st-day-body {
    grid-template-columns: 1fr !important;
}

.wptbm-st-day-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08) !important;
    border-color: #cbd5e1 !important;
}

.wptbm-st-day-circle {
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15) !important;
}

.wptbm-st-dc-lbl {
    font-size: 10px !important;
    text-transform: uppercase !important;
    font-weight: 700 !important;
    opacity: 0.9 !important;
    line-height: 1 !important;
}

.wptbm-st-dc-num {
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
}

.wptbm-d-blue   { background: #0066cc !important; }
.wptbm-d-orange { background: #ea580c !important; }
.wptbm-d-green  { background: #059669 !important; }
.wptbm-d-purple { background: #9333ea !important; }
.wptbm-d-teal   { background: #0d9488 !important; }
.wptbm-d-pink   { background: #e11d48 !important; }

.wptbm-st-day-title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    margin: 0 0 6px 0 !important;
}

.wptbm-st-day-chips {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
    margin-bottom: 10px !important;
}

.wptbm-st-day-chip {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 3px 10px !important;
    border-radius: 6px !important;
    line-height: 1.4 !important;
}

.wptbm-chip-sightseeing {
    background: #f0fdf4 !important;
    color: #166534 !important;
    border: 1px solid #bbf7d0 !important;
}

.wptbm-chip-activity {
    background: #fff7ed !important;
    color: #9a3412 !important;
    border: 1px solid #fed7aa !important;
}

.wptbm-st-day-desc {
    font-size: 13.5px !important;
    color: #475569 !important;
    line-height: 1.6 !important;
    margin-bottom: 10px !important;
}

.wptbm-st-day-desc p {
    margin: 0 !important;
}

.wptbm-st-day-stay {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #0066cc !important;
    background: #eff6ff !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
}

.wptbm-st-day-img-col {
    width: 180px !important;
    height: 120px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #e2e8f0 !important;
    flex-shrink: 0 !important;
}

.wptbm-st-day-thumb {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.wptbm-st-tour-ends-banner {
    margin-top: 18px !important;
    background: #ffe4e6 !important;
    border: 1px dashed #f43f5e !important;
    border-radius: 10px !important;
    padding: 12px 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #be123c !important;
}

/* Other Tabs Content */
.wptbm-st-overview-body {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 24px !important;
    font-size: 14.5px !important;
    line-height: 1.7 !important;
    color: #334155 !important;
}

.wptbm-st-checklist-tab-inc,
.wptbm-st-checklist-tab-exc {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 24px !important;
    list-style: none !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.wptbm-st-checklist-tab-inc li,
.wptbm-st-checklist-tab-exc li {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 14px !important;
    color: #334155 !important;
}

.wptbm-st-hotel-card-box {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 24px !important;
    display: flex !important;
    gap: 18px !important;
    align-items: flex-start !important;
}

.wptbm-st-hotel-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.wptbm-st-hotel-details h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    margin: 0 0 6px 0 !important;
}

.wptbm-st-hotel-meta {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #0066cc !important;
    margin: 0 0 8px 0 !important;
}

.wptbm-st-hotel-desc {
    font-size: 13.5px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.wptbm-st-faq-list {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

.wptbm-st-faq-item h4 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #0f2942 !important;
    margin: 0 0 6px 0 !important;
}

.wptbm-st-faq-item p {
    font-size: 13.5px !important;
    color: #475569 !important;
    margin: 0 !important;
    line-height: 1.55 !important;
}

/* 6. Inclusions & Exclusions 2-Column Section */
.wptbm-st-inc-exc-section {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
    margin-top: 40px !important;
}

.wptbm-st-inc-card {
    background: #f0fdf4 !important;
    border: 1px solid #bbf7d0 !important;
    border-radius: 12px !important;
    padding: 24px !important;
}

.wptbm-st-exc-card {
    background: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    border-radius: 12px !important;
    padding: 24px !important;
}

.wptbm-st-ie-card-head {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
}

.wptbm-st-ie-icon-circle {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.wptbm-st-ie-icon-circle.is-inc {
    background: #dcfce7 !important;
}

.wptbm-st-ie-icon-circle.is-exc {
    background: #fee2e2 !important;
}

.wptbm-st-ie-title.is-inc {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #065f46 !important;
    margin: 0 !important;
}

.wptbm-st-ie-title.is-exc {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #991b1b !important;
    margin: 0 !important;
}

.wptbm-st-ie-checklist {
    list-style: none !important;
    list-style-type: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.wptbm-st-ie-checklist li {
    list-style: none !important;
    list-style-type: none !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    position: relative !important;
}

.wptbm-st-ie-checklist li::before,
.wptbm-st-ie-checklist li::after {
    display: none !important;
    content: none !important;
}

.wptbm-st-ie-checklist li svg {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    display: inline-block !important;
}

.wptbm-st-ie-checklist li span {
    flex: 1 1 auto !important;
}

.wptbm-st-ie-checklist.is-inc li span {
    color: #065f46 !important;
}

.wptbm-st-ie-checklist.is-exc li span {
    color: #991b1b !important;
}

.wptbm-st-checklist-tab-inc li svg,
.wptbm-st-checklist-tab-exc li svg {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
    display: inline-block !important;
}

/* 7. Tour Gallery Slider */
.wptbm-st-gallery-section {
    margin-top: 45px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    padding: 24px 28px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
}

.wptbm-st-gallery-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
}

.wptbm-st-gallery-title {
    font-size: 21px !important;
    font-weight: 800 !important;
    color: #0f2942 !important;
    margin: 0 0 4px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.wptbm-st-gallery-sub {
    font-size: 13.5px !important;
    color: #64748b !important;
    margin: 0 !important;
}

.wptbm-st-gallery-arrows {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.wptbm-st-gallery-arrow-btn {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    border: 1.5px solid #0066cc !important;
    background: #ffffff !important;
    color: #0066cc !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08) !important;
    padding: 0 !important;
}

.wptbm-st-gallery-arrow-btn:hover {
    background: #0066cc !important;
    border-color: #0066cc !important;
    color: #ffffff !important;
    transform: scale(1.06) !important;
}

.wptbm-st-gallery-arrow-btn svg {
    width: 18px !important;
    height: 18px !important;
    stroke: #0066cc !important;
    stroke-width: 2.8px !important;
    fill: none !important;
    display: block !important;
    transition: stroke 0.2s ease !important;
}

.wptbm-st-gallery-arrow-btn:hover svg {
    stroke: #ffffff !important;
}

.wptbm-st-gallery-slider-wrap {
    position: relative !important;
    width: 100% !important;
    overflow: hidden !important;
}

.wptbm-st-gallery-slider-track {
    display: flex !important;
    gap: 16px !important;
    overflow-x: auto !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 4px !important;
}

.wptbm-st-gallery-slider-track::-webkit-scrollbar {
    display: none !important;
}

.wptbm-st-gallery-slide {
    flex: 0 0 calc(25% - 12px) !important;
    min-width: 200px !important;
    height: 190px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
    background: #f1f5f9 !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.wptbm-st-gallery-slide:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12) !important;
}

.wptbm-st-gallery-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.wptbm-st-gallery-slide:hover img {
    transform: scale(1.06) !important;
}

/* 8. Bottom CTA Banner */
.wptbm-st-bottom-cta {
    margin-top: 45px !important;
    background: linear-gradient(135deg, #0a192f 0%, #1e3a8a 100%) !important;
    border-radius: 14px !important;
    padding: 35px 40px !important;
    color: #ffffff !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
    box-shadow: 0 8px 24px rgba(10, 25, 47, 0.2) !important;
}

.wptbm-st-cta-title {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.wptbm-st-cta-sub {
    font-size: 14px !important;
    color: #cbd5e1 !important;
    margin: 0 !important;
    max-width: 650px !important;
    line-height: 1.5 !important;
}

.wptbm-st-cta-actions {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.wptbm-st-cta-quote-btn {
    background: #ff5722 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 13px 24px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(255, 87, 34, 0.35) !important;
}

.wptbm-st-cta-quote-btn:hover {
    background: #e64a19 !important;
    transform: translateY(-1px) !important;
}

.wptbm-st-cta-talk-btn {
    background: transparent !important;
    color: #ffffff !important;
    border: 1.5px solid rgba(255, 255, 255, 0.4) !important;
    border-radius: 8px !important;
    padding: 12px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
}

.wptbm-st-cta-talk-btn:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: #ffffff !important;
    color: #ffffff !important;
}

/* 8.5. Related Tours Slider */
.wptbm-st-related-section {
    margin-top: 45px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    padding: 24px 28px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
}

.wptbm-st-related-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 20px !important;
    gap: 16px !important;
}

.wptbm-st-related-title {
    font-size: 21px !important;
    font-weight: 800 !important;
    color: #0f2942 !important;
    margin: 0 0 4px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.wptbm-st-related-sub {
    font-size: 13.5px !important;
    color: #64748b !important;
    margin: 0 !important;
}

.wptbm-st-related-slider-wrap {
    position: relative !important;
    width: 100% !important;
    overflow: hidden !important;
}

.wptbm-st-related-slider-track {
    display: flex !important;
    gap: 18px !important;
    overflow-x: auto !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding-bottom: 6px !important;
}

.wptbm-st-related-slider-track::-webkit-scrollbar {
    display: none !important;
}

.wptbm-st-related-card {
    flex: 0 0 calc(33.333% - 12px) !important;
    min-width: 270px !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    scroll-snap-align: start !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}

.wptbm-st-related-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.1) !important;
    border-color: #cbd5e1 !important;
}

.wptbm-st-rel-thumb-wrap {
    position: relative !important;
    width: 100% !important;
    height: 180px !important;
    overflow: hidden !important;
    background: #f1f5f9 !important;
}

.wptbm-st-rel-thumb-wrap a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.wptbm-st-rel-thumb-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.wptbm-st-related-card:hover .wptbm-st-rel-thumb-wrap img {
    transform: scale(1.06) !important;
}

.wptbm-st-rel-duration-badge {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    background: rgba(15, 41, 66, 0.85) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
    color: #ffffff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    letter-spacing: 0.3px !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2) !important;
}

.wptbm-st-rel-info {
    padding: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    justify-content: space-between !important;
    gap: 14px !important;
}

.wptbm-st-rel-card-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.wptbm-st-rel-card-title a {
    color: #0f2942 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.wptbm-st-rel-card-title a:hover {
    color: #0066cc !important;
}

.wptbm-st-rel-bottom {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-top: 12px !important;
    border-top: 1px solid #f1f5f9 !important;
    gap: 10px !important;
}

.wptbm-st-rel-price {
    display: flex !important;
    flex-direction: column !important;
}

.wptbm-st-rel-price-val {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #0066cc !important;
    line-height: 1.1 !important;
}

.wptbm-st-rel-price-unit {
    font-size: 11px !important;
    font-weight: 500 !important;
    color: #64748b !important;
}

.wptbm-st-rel-view-btn {
    background: #0066cc !important;
    color: #ffffff !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 7px 14px !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
}

.wptbm-st-rel-view-btn:hover {
    background: #0052a3 !important;
    color: #ffffff !important;
    transform: translateX(2px) !important;
}

/* 9. Sleek Enquiry Modal */
.wptbm-st-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(15, 23, 42, 0.65) !important;
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
}

.wptbm-st-modal-overlay.is-active {
    display: flex !important;
}

.wptbm-st-modal-dialog {
    background: #ffffff !important;
    border-radius: 14px !important;
    width: 540px !important;
    max-width: 100% !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    padding: 28px !important;
    position: relative !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25) !important;
}

.wptbm-st-modal-close {
    position: absolute !important;
    top: 14px !important;
    right: 18px !important;
    background: transparent !important;
    border: none !important;
    font-size: 28px !important;
    color: #64748b !important;
    cursor: pointer !important;
    line-height: 1 !important;
}

.wptbm-st-modal-close:hover {
    color: #0f172a !important;
}

.wptbm-st-modal-head {
    margin-bottom: 20px !important;
    padding-right: 20px !important;
}

.wptbm-st-modal-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0f2942 !important;
    margin: 0 0 6px 0 !important;
}

.wptbm-st-modal-sub {
    font-size: 13px !important;
    color: #64748b !important;
    margin: 0 !important;
    line-height: 1.45 !important;
}

.wptbm-st-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.wptbm-st-form-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
}

.wptbm-st-form-row label {
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #334155 !important;
}

.wptbm-st-form-row input,
.wptbm-st-form-row select,
.wptbm-st-form-row textarea {
    width: 100% !important;
    padding: 10px 12px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    font-size: 13.5px !important;
    color: #1e293b !important;
    background: #ffffff !important;
    outline: none !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
}

.wptbm-st-form-row input:focus,
.wptbm-st-form-row select:focus,
.wptbm-st-form-row textarea:focus {
    border-color: #0066cc !important;
    box-shadow: 0 0 0 2px rgba(0, 102, 204, 0.15) !important;
}

.wptbm-st-form-row-2 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
}

.wptbm-st-form-row-3 {
    display: grid !important;
    grid-template-columns: 1.2fr 1fr 1fr !important;
    gap: 10px !important;
}

.wptbm-st-form-submit {
    background: #ff5722 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 13px 20px !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background 0.2s ease !important;
    margin-top: 4px !important;
}

.wptbm-st-form-submit:hover {
    background: #e64a19 !important;
}

.wptbm-st-form-alert {
    padding: 10px 14px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-align: center !important;
}

.wptbm-st-form-alert.is-success {
    background: #ecfdf5 !important;
    color: #065f46 !important;
    border: 1px solid #a7f3d0 !important;
}

.wptbm-st-form-alert.is-error {
    background: #fef2f2 !important;
    color: #991b1b !important;
    border: 1px solid #fecaca !important;
}

/* 10. Complete Mobile Responsive Breakpoints */
@media (max-width: 1100px) {
    .wptbm-st-layout-grid {
        grid-template-columns: 1fr 320px !important;
        gap: 24px !important;
    }
    .wptbm-st-gallery-grid-6 {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 992px) {
    .wptbm-single-target-wrapper {
        left: 0 !important;
        right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .wptbm-st-main-container {
        margin: 20px auto 30px auto !important;
        padding: 0 16px !important;
    }
    .wptbm-st-layout-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
    .wptbm-st-sidebar {
        margin-top: 0 !important;
    }
    .wptbm-st-booking-card {
        position: static !important;
        max-width: 100% !important;
    }
    .wptbm-st-hero-banner {
        padding: 35px 20px 50px 20px !important;
    }
    .wptbm-st-hero-content {
        max-width: 100% !important;
    }
    .wptbm-st-hero-title {
        font-size: 28px !important;
    }
    .wptbm-st-inc-exc-section {
        grid-template-columns: 1fr !important;
    }
    .wptbm-st-related-card {
        flex: 0 0 calc(50% - 10px) !important;
    }
}

@media (max-width: 768px) {
    .wptbm-st-hero-banner {
        padding: 25px 16px 40px 16px !important;
    }
    .wptbm-st-hero-title {
        font-size: 24px !important;
        line-height: 1.25 !important;
    }
    .wptbm-st-hero-duration {
        font-size: 17px !important;
    }
    .wptbm-st-hero-route {
        font-size: 13px !important;
        margin-bottom: 14px !important;
    }
    .wptbm-st-hero-inclusions {
        padding: 6px 14px !important;
        gap: 8px !important;
    }
    .wptbm-st-hero-inc-item {
        font-size: 12px !important;
    }
    .wptbm-st-tabs-nav {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding: 6px 8px !important;
        gap: 8px !important;
        margin-bottom: 18px !important;
        scrollbar-width: none !important;
    }
    .wptbm-st-tab-btn {
        flex: 0 0 auto !important;
        padding: 8px 13px !important;
        font-size: 13px !important;
    }
    .wptbm-st-inc-exc-section {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
        margin-top: 24px !important;
    }
    .wptbm-st-inc-card,
    .wptbm-st-exc-card {
        padding: 18px 16px !important;
    }
    .wptbm-st-bottom-cta {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 26px 16px !important;
        gap: 18px !important;
        border-radius: 12px !important;
    }
    .wptbm-st-cta-title {
        font-size: 20px !important;
    }
    .wptbm-st-cta-sub {
        font-size: 13px !important;
    }
    .wptbm-st-cta-actions {
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
    }
    .wptbm-st-cta-quote-btn,
    .wptbm-st-cta-talk-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 12px 18px !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 580px) {
    .wptbm-st-day-card {
        grid-template-columns: 46px 1fr !important;
        gap: 12px !important;
        padding: 16px 14px !important;
    }
    .wptbm-st-day-img-col {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        height: 110px !important;
        margin-top: 6px !important;
    }
    .wptbm-st-day-circle {
        width: 36px !important;
        height: 36px !important;
    }
    .wptbm-st-dc-lbl {
        font-size: 7.5px !important;
    }
    .wptbm-st-dc-num {
        font-size: 13px !important;
    }
    .wptbm-st-day-title {
        font-size: 13.5px !important;
        line-height: 1.3 !important;
    }
    .wptbm-st-day-chips {
        font-size: 11.5px !important;
    }
    .wptbm-st-day-desc {
        font-size: 13px !important;
    }
    .wptbm-st-day-stay {
        font-size: 12px !important;
    }
    .wptbm-st-gallery-head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }
    .wptbm-st-gallery-slide {
        flex: 0 0 82% !important;
        min-width: 220px !important;
        height: 160px !important;
    }
    .wptbm-st-gallery-section {
        padding: 18px 16px !important;
    }
    .wptbm-st-related-head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }
    .wptbm-st-related-slide,
    .wptbm-st-related-card {
        flex: 0 0 85% !important;
        min-width: 230px !important;
    }
    .wptbm-st-related-section {
        padding: 18px 16px !important;
    }
    .wptbm-st-form-row-2,
    .wptbm-st-form-row-3 {
        grid-template-columns: 1fr !important;
    }
    .wptbm-st-modal-dialog {
        width: 95% !important;
        padding: 20px 16px !important;
    }
    .wptbm-st-modal-title {
        font-size: 17px !important;
    }
}

/* Agent / Author Details Box */
.wptbm-st-agent-card {
    padding: 16px 20px 14px 20px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.wptbm-st-agent-info {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.wptbm-st-agent-avatar-wrap {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 1.5px solid #e2e8f0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
}

.wptbm-st-agent-avatar {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.wptbm-st-agent-placeholder-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
}

.wptbm-st-agent-placeholder-icon svg {
    stroke: #64748b !important;
}

.wptbm-st-agent-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    min-width: 0 !important;
    flex: 1 !important;
}

.wptbm-st-agent-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #0284c7 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
}

.wptbm-st-agent-name {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.wptbm-st-contact-agent-btn {
    width: 100% !important;
    background: #ffffff !important;
    color: #0066cc !important;
    border: 1.5px solid #0066cc !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
}

.wptbm-st-contact-agent-btn:hover {
    background: #0066cc !important;
    color: #ffffff !important;
}

.wptbm-st-contact-agent-btn svg {
    transition: stroke 0.2s ease !important;
}


/* Terms & Conditions Section */
.wptbm-st-terms-cards-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    width: 100% !important;
}

.wptbm-st-terms-card {
    width: 100% !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 24px !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    display: flex !important;
    flex-direction: column !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.wptbm-st-terms-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08) !important;
}

.wptbm-st-terms-card.is-full-width {
    grid-column: 1 / -1 !important;
}

.wptbm-st-terms-card-head {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.wptbm-st-terms-icon-circle {
    width: 38px !important;
    height: 38px !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.wptbm-st-terms-icon-circle.is-payment {
    background: #e0f2fe !important;
    color: #0284c7 !important;
}

.wptbm-st-terms-icon-circle.is-cancel {
    background: #ffe4e6 !important;
    color: #e11d48 !important;
}

.wptbm-st-terms-icon-circle.is-other {
    background: #f3e8ff !important;
    color: #9333ea !important;
}

.wptbm-st-terms-card-title {
    margin: 0 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
}

.wptbm-st-terms-card-body {
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #334155 !important;
}

.wptbm-st-terms-intro {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    margin: 0 0 10px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}

.wptbm-st-terms-p {
    margin: 0 0 10px 0 !important;
    color: #334155 !important;
}

.wptbm-st-terms-p:last-child {
    margin-bottom: 0 !important;
}

.wptbm-st-terms-list {
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.wptbm-st-terms-list:last-child {
    margin-bottom: 0 !important;
}

.wptbm-st-terms-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: #334155 !important;
}

.wptbm-st-term-bullet {
    width: 6px !important;
    height: 6px !important;
    border-radius: 50% !important;
    background: #0284c7 !important;
    margin-top: 8px !important;
    flex-shrink: 0 !important;
}

.wptbm-st-terms-card:nth-child(2) .wptbm-st-term-bullet {
    background: #e11d48 !important;
}

.wptbm-st-term-num {
    font-weight: 700 !important;
    color: #0066cc !important;
    flex-shrink: 0 !important;
}

@media (max-width: 768px) {
    .wptbm-st-terms-cards-wrap {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }
    .wptbm-st-terms-card {
        padding: 18px 16px !important;
    }
}


/* ==========================================================================
   MOBILE STICKY BOTTOM BAR (Desktop hidden, Mobile visible)
   ========================================================================== */
.wptbm-st-mobile-sticky-bar {
    display: none !important;
}

@media (max-width: 768px) {
    .wptbm-single-tour-modern,
    .wptbm-single-target-wrapper {
        padding-bottom: 85px !important; /* Extra bottom clearance for sticky booking bar */
    }

    .wptbm-st-mobile-sticky-bar {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 99999 !important;
        background: #ffffff !important;
        border-top: 1px solid #e2e8f0 !important;
        box-shadow: 0 -4px 20px rgba(15, 23, 42, 0.12) !important;
        padding: 10px 16px !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .wptbm-st-msb-price-col {
        display: flex !important;
        flex-direction: column !important;
        gap: 1px !important;
    }

    .wptbm-st-msb-lbl {
        font-size: 10px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        color: #64748b !important;
        letter-spacing: 0.3px !important;
        line-height: 1 !important;
    }

    .wptbm-st-msb-price-row {
        display: flex !important;
        align-items: baseline !important;
        gap: 4px !important;
    }

    .wptbm-st-msb-price {
        font-size: 19px !important;
        font-weight: 800 !important;
        color: #ea580c !important;
        letter-spacing: -0.3px !important;
        line-height: 1.2 !important;
    }

    .wptbm-st-msb-unit {
        font-size: 11px !important;
        color: #64748b !important;
        font-weight: 500 !important;
    }

    .wptbm-st-msb-action-col {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    .wptbm-st-msb-enquire-btn {
        background: #ff5722 !important;
        color: #ffffff !important;
        border: none !important;
        border-radius: 8px !important;
        padding: 10px 18px !important;
        font-size: 13.5px !important;
        font-weight: 700 !important;
        cursor: pointer !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        box-shadow: 0 4px 12px rgba(255, 87, 34, 0.35) !important;
        line-height: 1.2 !important;
    }
}

/* ==========================================================================
   COMPREHENSIVE MOBILE RESPONSIVE ENGINE (Single Tour Page)
   ========================================================================== */
@media (max-width: 768px) {
    /* 1. Root & Outer Wrappers (Prevent blow-out and allow sticky header) */
    html, body {
        overflow-x: hidden !important;
        max-width: 100% !important;
    }

    body.single-tour_package,
    .wptbm-single-tour-modern,
    .wptbm-single-target-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        left: 0 !important;
        right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    /* 2. Hero Banner */
    .wptbm-st-hero-banner {
        padding: 20px 14px 28px 14px !important;
        background-position: center !important;
        background-size: cover !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-hero-inner {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-breadcrumbs {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        white-space: nowrap !important;
        font-size: 11px !important;
        margin-bottom: 10px !important;
        padding-bottom: 2px !important;
    }
    .wptbm-st-breadcrumbs::-webkit-scrollbar {
        display: none !important;
    }

    .wptbm-st-hero-title {
        font-size: 20px !important;
        line-height: 1.25 !important;
        margin: 0 0 5px 0 !important;
        word-break: break-word !important;
    }

    .wptbm-st-hero-duration {
        font-size: 13px !important;
        font-weight: 600 !important;
        margin-bottom: 10px !important;
    }

    .wptbm-st-hero-inclusions {
        display: flex !important;
        flex-wrap: wrap !important;
        border-radius: 8px !important;
        padding: 6px 10px !important;
        gap: 5px 8px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        margin-top: 4px !important;
        background: rgba(0, 0, 0, 0.45) !important;
        border: 1px solid rgba(255, 255, 255, 0.15) !important;
    }

    .wptbm-st-hero-inc-dot {
        display: none !important;
    }

    .wptbm-st-hero-inc-item {
        font-size: 11px !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        background: rgba(255, 255, 255, 0.08) !important;
        padding: 3px 7px !important;
        border-radius: 5px !important;
        color: #ffffff !important;
        white-space: nowrap !important;
    }

    .wptbm-st-hero-inc-item svg {
        width: 13px !important;
        height: 13px !important;
    }

    /* 3. Main Layout Grid & Containers (Airtight 100% Clamping, Visible for Sticky) */
    .wptbm-st-main-container {
        padding: 0 12px !important;
        margin: 12px auto 25px auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    .wptbm-st-layout-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    .wptbm-st-main-content {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        position: relative !important;
    }

    /* 4. Sticky Navigation Tabs (2-Column Grid, Fixed in Header on Scroll, No Sliding) */
    .wptbm-st-tabs-nav {
        position: -webkit-sticky !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 99999 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 6px !important;
        padding: 7px 8px !important;
        margin-bottom: 20px !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
        box-shadow: 0 4px 15px rgba(15, 23, 42, 0.12) !important;
        overflow: visible !important;
    }

    body.admin-bar .wptbm-st-tabs-nav {
        top: 46px !important;
    }
    @media (max-width: 600px) {
        body.admin-bar .wptbm-st-tabs-nav {
            top: 0 !important;
        }
    }

    .wptbm-st-tab-btn {
        width: 100% !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 5px !important;
        padding: 8px 6px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        border-radius: 6px !important;
        white-space: nowrap !important;
        line-height: 1.2 !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        color: #1e293b !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
    }

    .wptbm-st-tab-btn.is-active {
        background: #0066cc !important;
        color: #ffffff !important;
        border-color: #0066cc !important;
        box-shadow: 0 2px 6px rgba(0, 102, 204, 0.3) !important;
    }

    .wptbm-st-tab-btn.is-active svg {
        stroke: #ffffff !important;
    }

    .wptbm-st-tab-btn svg {
        width: 13.5px !important;
        height: 13.5px !important;
        flex-shrink: 0 !important;
    }

    /* 5. Section Heads */
    .wptbm-st-content-section {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        margin-bottom: 24px !important;
        scroll-margin-top: 130px !important;
    }

    .wptbm-st-itin-head {
        margin-bottom: 12px !important;
    }

    .wptbm-st-itin-title {
        font-size: 17.5px !important;
        font-weight: 800 !important;
        line-height: 1.3 !important;
        margin-bottom: 3px !important;
        color: #0f172a !important;
    }

    .wptbm-st-itin-sub {
        font-size: 11.5px !important;
        color: #64748b !important;
    }

    /* 6. Overview */
    .wptbm-st-overview-body {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 14px !important;
        font-size: 12.5px !important;
        line-height: 1.6 !important;
        border-radius: 10px !important;
        word-break: break-word !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
    }

    /* 7. Itinerary Day Cards (Accordion Expand & Collapse on Mobile) */
    .wptbm-st-itin-cards-list {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    .wptbm-st-day-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 12px 14px !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        border: 1.5px solid #e2e8f0 !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
        cursor: pointer !important;
        transition: all 0.25s ease !important;
        user-select: none !important;
        -webkit-user-select: none !important;
    }

    .wptbm-st-day-card.is-open {
        border-color: #93c5fd !important;
        box-shadow: 0 6px 18px rgba(37, 99, 235, 0.09) !important;
    }

    .wptbm-st-day-header-row {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        cursor: pointer !important;
    }

    .wptbm-st-day-badge-col {
        flex-shrink: 0 !important;
    }

    .wptbm-st-day-circle {
        width: 36px !important;
        height: 36px !important;
    }

    .wptbm-st-dc-lbl {
        font-size: 7.5px !important;
    }

    .wptbm-st-dc-num {
        font-size: 13px !important;
        font-weight: 800 !important;
    }

    .wptbm-st-day-title-col {
        flex: 1 !important;
        min-width: 0 !important;
    }

    .wptbm-st-day-title {
        font-size: 13.5px !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
        margin: 0 !important;
        color: #0f172a !important;
        word-break: break-word !important;
    }

    .wptbm-st-day-stay-preview {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        font-size: 10.5px !important;
        color: #64748b !important;
        margin-top: 2px !important;
    }

    .wptbm-st-day-toggle-col {
        display: flex !important;
        align-items: center !important;
        flex-shrink: 0 !important;
    }

    .wptbm-st-day-toggle-btn {
        width: 28px !important;
        height: 28px !important;
        border-radius: 50% !important;
        background: #f1f5f9 !important;
        color: #475569 !important;
        border: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        transition: all 0.25s ease !important;
    }

    .wptbm-st-day-chevron {
        transition: transform 0.25s ease !important;
        color: #64748b !important;
    }

    .wptbm-st-day-card.is-open .wptbm-st-day-toggle-btn {
        background: #eff6ff !important;
        color: #2563eb !important;
    }

    .wptbm-st-day-card.is-open .wptbm-st-day-chevron {
        transform: rotate(180deg) !important;
        color: #2563eb !important;
    }

    /* Collapsible Body on Mobile */
    .wptbm-st-day-card.is-collapsed .wptbm-st-day-body {
        display: none !important;
    }

    .wptbm-st-day-card.is-open .wptbm-st-day-body {
        display: block !important;
        padding-top: 12px !important;
        margin-top: 10px !important;
        border-top: 1px dashed #e2e8f0 !important;
    }

    .wptbm-st-day-card.is-open .wptbm-st-day-stay-preview {
        display: none !important;
    }

    .wptbm-st-day-info-col {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        word-break: break-word !important;
    }

    .wptbm-st-day-chips {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 4px !important;
        margin-bottom: 8px !important;
    }

    .wptbm-st-day-chip {
        font-size: 10.5px !important;
        padding: 2.5px 6px !important;
        border-radius: 4px !important;
    }

    .wptbm-st-day-desc {
        font-size: 12px !important;
        line-height: 1.55 !important;
        color: #334155 !important;
        word-break: break-word !important;
    }

    .wptbm-st-day-stay {
        font-size: 11px !important;
        padding: 4px 8px !important;
        margin-top: 6px !important;
        word-break: break-word !important;
    }

    .wptbm-st-day-img-col {
        width: 100% !important;
        max-width: 100% !important;
        height: 115px !important;
        max-height: 115px !important;
        margin-top: 8px !important;
        border-radius: 8px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-day-thumb {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .wptbm-st-tour-ends-banner {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 9px 12px !important;
        font-size: 12px !important;
        border-radius: 8px !important;
    }

    /* 8. Accommodation / Hotel */
    .wptbm-st-hotel-card-box {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        padding: 14px 12px !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        border: 1px solid #e2e8f0 !important;
    }

    .wptbm-st-hotel-icon {
        width: 34px !important;
        height: 34px !important;
    }

    .wptbm-st-hotel-details h3 {
        font-size: 14.5px !important;
        margin-bottom: 3px !important;
    }

    .wptbm-st-hotel-meta {
        font-size: 11.5px !important;
        margin-bottom: 5px !important;
        line-height: 1.4 !important;
    }

    .wptbm-st-hotel-desc {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    /* 9. Inclusions & Exclusions */
    .wptbm-st-inc-exc-section {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        margin-top: 12px !important;
    }

    .wptbm-st-inc-card,
    .wptbm-st-exc-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 14px 12px !important;
        border-radius: 10px !important;
    }

    .wptbm-st-ie-card-head {
        margin-bottom: 10px !important;
        gap: 7px !important;
    }

    .wptbm-st-ie-icon-circle {
        width: 26px !important;
        height: 26px !important;
    }

    .wptbm-st-ie-title {
        font-size: 14.5px !important;
    }

    .wptbm-st-ie-checklist {
        gap: 8px !important;
    }

    .wptbm-st-ie-checklist li {
        font-size: 12px !important;
        gap: 7px !important;
        line-height: 1.45 !important;
        align-items: flex-start !important;
        word-break: break-word !important;
    }

    .wptbm-st-ie-checklist li svg {
        width: 14px !important;
        height: 14px !important;
        margin-top: 2px !important;
        flex-shrink: 0 !important;
    }

    /* 10. Terms & Conditions */
    .wptbm-st-terms-cards-wrap {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    .wptbm-st-terms-card {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 14px 12px !important;
        border-radius: 10px !important;
    }

    .wptbm-st-terms-card-head {
        margin-bottom: 8px !important;
        padding-bottom: 7px !important;
        gap: 7px !important;
    }

    .wptbm-st-terms-icon-circle {
        width: 28px !important;
        height: 28px !important;
        border-radius: 6px !important;
    }

    .wptbm-st-terms-icon-circle svg {
        width: 15px !important;
        height: 15px !important;
    }

    .wptbm-st-terms-card-title {
        font-size: 14px !important;
    }

    .wptbm-st-terms-intro {
        font-size: 11px !important;
        margin-bottom: 5px !important;
    }

    .wptbm-st-terms-card-body {
        font-size: 12px !important;
        line-height: 1.5 !important;
        word-break: break-word !important;
    }

    .wptbm-st-terms-list {
        gap: 7px !important;
        margin-bottom: 6px !important;
    }

    .wptbm-st-terms-list li {
        font-size: 12px !important;
        gap: 7px !important;
        line-height: 1.45 !important;
        word-break: break-word !important;
    }

    /* 11. FAQ */
    .wptbm-st-faq-list {
        gap: 7px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-faq-item {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 12px 10px !important;
        border-radius: 8px !important;
    }

    .wptbm-st-faq-item h4 {
        font-size: 13.5px !important;
        margin-bottom: 3px !important;
    }

    .wptbm-st-faq-item p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    /* 12. Sliders (Gallery & Related Tours) */
    .wptbm-st-gallery-section,
    .wptbm-st-related-section {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding: 14px 10px !important;
        border-radius: 10px !important;
        margin-top: 18px !important;
    }

    .wptbm-st-gallery-head,
    .wptbm-st-related-head {
        margin-bottom: 10px !important;
    }

    .wptbm-st-gallery-title {
        font-size: 15px !important;
    }

    .wptbm-st-gallery-arrow-btn {
        width: 28px !important;
        height: 28px !important;
    }

    .wptbm-st-gallery-slide {
        flex: 0 0 75% !important;
        min-width: 190px !important;
        height: 140px !important;
        border-radius: 8px !important;
    }

    .wptbm-st-related-card {
        flex: 0 0 78% !important;
        min-width: 210px !important;
        border-radius: 10px !important;
    }

    .wptbm-st-rel-thumb-wrap {
        height: 125px !important;
    }

    .wptbm-st-rel-info {
        padding: 9px 10px !important;
    }

    .wptbm-st-rel-card-title {
        font-size: 13px !important;
    }

    .wptbm-st-rel-price-val {
        font-size: 15px !important;
    }

    .wptbm-st-rel-view-btn {
        padding: 5px 9px !important;
        font-size: 11px !important;
    }

    /* 13. CTA Box */
    .wptbm-st-bottom-cta {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        padding: 18px 12px !important;
        gap: 12px !important;
        border-radius: 10px !important;
        margin-top: 18px !important;
    }

    .wptbm-st-cta-title {
        font-size: 17px !important;
    }

    .wptbm-st-cta-sub {
        font-size: 12px !important;
    }

    .wptbm-st-cta-actions {
        flex-direction: column !important;
        width: 100% !important;
        gap: 8px !important;
    }

    .wptbm-st-cta-quote-btn,
    .wptbm-st-cta-talk-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 10px 14px !important;
        font-size: 13px !important;
    }

    /* 14. Right Sidebar on Mobile */
    .wptbm-st-sidebar {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 0 !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-sticky-card {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 10px !important;
        box-sizing: border-box !important;
    }

    .wptbm-st-featured-img-wrap {
        height: 180px !important;
    }

    .wptbm-st-price-ribbon {
        padding: 9px 12px !important;
    }

    .wptbm-st-price-val {
        font-size: 20px !important;
    }

    .wptbm-st-agent-card {
        padding: 12px !important;
        gap: 9px !important;
    }

    .wptbm-st-btn-wrap {
        padding: 12px !important;
    }

    .wptbm-st-enquire-btn {
        padding: 11px !important;
        font-size: 14px !important;
    }

    .wptbm-st-assistance-card {
        padding: 12px !important;
    }

    /* 15. Modal on Mobile */
    .wptbm-st-modal-overlay {
        padding: 10px !important;
        align-items: flex-end !important;
    }

    .wptbm-st-modal-dialog {
        width: 100% !important;
        max-width: 100% !important;
        max-height: 88vh !important;
        border-radius: 16px 16px 0 0 !important;
        padding: 16px 12px !important;
        overflow-y: auto !important;
    }

    .wptbm-st-modal-title {
        font-size: 15.5px !important;
    }

    .wptbm-st-modal-sub {
        font-size: 11.5px !important;
    }

    .wptbm-st-form-row-2,
    .wptbm-st-form-row-3 {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    .wptbm-st-form input,
    .wptbm-st-form select,
    .wptbm-st-form textarea {
        font-size: 14.5px !important;
        padding: 9px 11px !important;
    }
}

/* -------------------------------------------------------------
   Hero Floating Search Bar & Autocomplete Suggestions
   ------------------------------------------------------------- */
.wptbm-target-hero-search-wrap {
    margin-top: 28px !important;
    position: relative !important;
    z-index: 60 !important;
    width: 100% !important;
}

.wptbm-hero-search-bar {
    display: flex !important;
    align-items: center !important;
    background: #ffffff !important;
    border-radius: 50px !important;
    padding: 6px 8px 6px 20px !important;
    box-shadow: 0 14px 38px rgba(15, 23, 42, 0.22), 0 2px 6px rgba(0, 0, 0, 0.08) !important;
    max-width: 820px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    border: 1px solid rgba(255, 255, 255, 0.9) !important;
}

.wptbm-hsb-col {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    position: relative !important;
}

.wptbm-hsb-keyword-col {
    flex: 1 1 55% !important;
    position: relative !important;
}

.wptbm-hsb-nights-col {
    flex: 0 1 36% !important;
    padding-left: 18px !important;
    gap: 12px !important;
}

.wptbm-hsb-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #64748b !important;
    flex-shrink: 0 !important;
}

.wptbm-hsb-divider {
    width: 1px !important;
    height: 32px !important;
    background: #e2e8f0 !important;
    margin: 0 4px !important;
    flex-shrink: 0 !important;
}

.wptbm-hsb-input {
    width: 100% !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    color: #0f172a !important;
    padding: 8px 4px !important;
    line-height: 1.4 !important;
}

.wptbm-hsb-input::placeholder {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}

.wptbm-hsb-input:focus {
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

.wptbm-hsb-select {
    width: 100% !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    padding: 8px 24px 8px 14px !important;
    cursor: pointer !important;
    line-height: 1.4 !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 2px center !important;
}

.wptbm-hsb-select option {
    padding: 9px 16px !important;
    font-size: 14px !important;
    color: #1e293b !important;
    background: #ffffff !important;
}

.wptbm-hsb-select:focus {
    outline: none !important;
    box-shadow: none !important;
}

.wptbm-hsb-btn-col {
    flex-shrink: 0 !important;
    margin-left: 10px !important;
}

.wptbm-hsb-submit-btn {
    background: linear-gradient(135deg, #0080ff 0%, #0066cc 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 12px 30px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: all 0.22s ease !important;
    box-shadow: 0 4px 14px rgba(0, 102, 204, 0.35) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

.wptbm-hsb-submit-btn:hover {
    background: linear-gradient(135deg, #0066cc 0%, #004c99 100%) !important;
    box-shadow: 0 6px 18px rgba(0, 102, 204, 0.45) !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
}

/* Autocomplete Suggestions Box (Destinations Only) */
.wptbm-search-suggestions-box {
    position: absolute !important;
    top: calc(100% + 14px) !important;
    left: -12px !important;
    width: 420px !important;
    max-width: 92vw !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.18), 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #e2e8f0 !important;
    padding: 8px 0 !important;
    z-index: 1000 !important;
    max-height: 340px !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
}

.wptbm-sugg-group {
    padding: 6px 0 !important;
}

.wptbm-sugg-group:not(:last-child) {
    border-bottom: 1px solid #f1f5f9 !important;
}

.wptbm-sugg-group-title {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #94a3b8 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    padding: 6px 18px 4px 18px !important;
}

.wptbm-sugg-item {
    display: flex !important;
    align-items: center !important;
    padding: 9px 18px !important;
    text-decoration: none !important;
    color: inherit !important;
    cursor: pointer !important;
    transition: background 0.15s ease !important;
    gap: 12px !important;
}

.wptbm-sugg-item:hover {
    background: #f8fafc !important;
}

.wptbm-sugg-icon-wrap {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #eff6ff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.wptbm-sugg-dest-name {
    flex: 1 !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
}

.wptbm-sugg-pill {
    font-size: 11.5px !important;
    color: #64748b !important;
    background: #f1f5f9 !important;
    padding: 2px 9px !important;
    border-radius: 12px !important;
    font-weight: 500 !important;
}

.wptbm-sugg-tour-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 8px 18px !important;
}

.wptbm-sugg-tour-thumb {
    width: 46px !important;
    height: 46px !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    flex-shrink: 0 !important;
    border: 1px solid #e2e8f0 !important;
}

.wptbm-sugg-tour-thumb-ph {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f1f5f9 !important;
}

.wptbm-sugg-tour-details {
    flex: 1 !important;
    min-width: 0 !important;
}

.wptbm-sugg-tour-title {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.3 !important;
}

.wptbm-sugg-tour-meta {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 12px !important;
    margin-top: 3px !important;
}

.wptbm-sugg-tour-dur {
    color: #64748b !important;
    font-weight: 500 !important;
}

.wptbm-sugg-tour-price {
    color: #0066cc !important;
    font-weight: 700 !important;
}

.wptbm-sugg-empty {
    padding: 18px 20px !important;
    font-size: 13.5px !important;
    color: #64748b !important;
    text-align: center !important;
}

/* Base Desktop rules for Filter Drawer components */
.wptbm-filter-drawer-backdrop {
    display: none;
}
.wptbm-filter-drawer-close-btn {
    display: none;
}
.wptbm-filter-card-body {
    display: block;
}
body.wptbm-drawer-active {
    overflow: hidden !important;
    touch-action: none !important;
}
body.wptbm-drawer-active .wptbm-target-hero-banner,
body.wptbm-drawer-active .wptbm-target-hero-search-wrap,
body.wptbm-drawer-active .wptbm-hero-search-bar {
    z-index: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Mobile & Tablet Responsive for Search Bar */
@media (max-width: 768px) {
    .wptbm-target-hero-search-wrap {
        margin-top: 18px !important;
    }
    .wptbm-hero-search-bar {
        border-radius: 18px !important;
        flex-direction: column !important;
        padding: 12px !important;
        align-items: stretch !important;
        gap: 10px !important;
        background: #ffffff !important;
        box-shadow: 0 12px 32px rgba(15, 23, 42, 0.22) !important;
        border: 1px solid rgba(255, 255, 255, 0.9) !important;
    }
    .wptbm-hsb-divider {
        display: none !important;
    }
    .wptbm-hsb-col {
        position: relative !important;
    }
    .wptbm-hsb-keyword-col {
        width: 100% !important;
        flex: none !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 12px !important;
        padding: 0 14px !important;
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        box-sizing: border-box !important;
        gap: 10px !important;
    }
    .wptbm-hsb-nights-col {
        width: 100% !important;
        flex: none !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 12px !important;
        padding: 0 14px !important;
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        box-sizing: border-box !important;
        margin-top: 0 !important;
        gap: 10px !important;
    }
    .wptbm-hsb-input {
        padding: 0 !important;
        font-size: 15px !important;
        height: 100% !important;
    }
    .wptbm-hsb-select {
        padding: 0 24px 0 0 !important;
        font-size: 14.5px !important;
        height: 100% !important;
    }
    .wptbm-hsb-btn-col {
        margin-left: 0 !important;
        width: 100% !important;
        flex: none !important;
    }
    .wptbm-hsb-submit-btn {
        width: 100% !important;
        height: 48px !important;
        border-radius: 12px !important;
        padding: 0 20px !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        letter-spacing: 0.8px !important;
    }
    .wptbm-search-suggestions-box {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        top: calc(100% + 6px) !important;
        z-index: 999999 !important;
        box-shadow: 0 18px 40px rgba(15, 23, 42, 0.25) !important;
        border-radius: 14px !important;
    }
}