/* EVER SUN TRAVEL — reusable discover-and-filter interface on /tours and /quote. */
.tour-finder{margin:25px 0 31px;min-width:0}
.tour-finder-shell{padding:22px;border-radius:20px;border:1px solid #e9e2db;background:linear-gradient(135deg,#fffdfa 0%,#f8f6f1 100%);box-shadow:0 12px 32px rgba(34,45,58,.055)}
.tour-finder-search label,.tour-finder-field>span{display:block;margin:0 0 8px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:750;letter-spacing:.01em;color:#3c4a54}
.tour-finder-search{position:relative}
.tour-finder-search input{display:block;box-sizing:border-box;width:100%;min-height:50px;padding:13px 16px 13px 42px;border:1px solid #d8dedf;border-radius:12px;background:#fff;color:#293846;font-size:14px;font-family:inherit;outline-offset:3px;box-shadow:none}
.tour-finder-search:after{content:"";width:14px;height:14px;border:2px solid #7f8991;border-radius:50%;position:absolute;left:17px;bottom:17px;pointer-events:none}
.tour-finder-search:before{content:"";position:absolute;left:30px;bottom:14px;width:8px;height:2px;background:#7f8991;transform:rotate(45deg);border-radius:1px;pointer-events:none}
.tour-finder-facets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.tour-finder-field{min-width:0;margin:0}
.tour-finder-field select{display:block;width:100%;max-width:100%;min-width:0;height:46px;box-sizing:border-box;padding:8px 29px 8px 11px;border:1px solid #d8dedf;border-radius:10px;background-color:#fff;color:#263b49;font-family:inherit;font-size:12px;font-weight:650;cursor:pointer;outline-offset:2px;appearance:auto}
.tour-finder-search input:focus-visible,.tour-finder-field select:focus-visible,.tour-reset:focus-visible,.tour-day-details summary:focus-visible{outline:3px solid #f4b525;outline-offset:2px}
.tour-finder-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}
.tour-found{font-size:13px;font-weight:700;color:#687887}
.tour-reset{border:0;background:none;font-family:inherit;font-weight:750;color:#bb3d38;font-size:12px;padding:10px 5px;cursor:pointer;min-height:44px}
.tour-reset:hover{text-decoration:underline}
.tour-no-results{grid-column:1/-1;padding:45px 20px;text-align:center;color:#687887;background:#f8fafb;border:1px dashed #d7e2e5;border-radius:17px;line-height:1.7;font-size:14px}
.tour-card-meta,.tour-card-topline{display:flex;align-items:center;flex-wrap:wrap;gap:7px 11px;margin:0 0 10px;color:#667783;font-size:10px;font-weight:780;text-transform:uppercase;letter-spacing:.065em}
.tour-pace{display:inline-flex;align-items:center;border-radius:30px;background:#eaf1f4;color:#496675;padding:5px 9px;font-size:10px;font-weight:750;letter-spacing:0;text-transform:none}
.tour-pace.relaxed{background:#e6f4ef;color:#276b57}
.tour-pace.packed{background:#fff0e4;color:#a04b22}
.tour-pace.balanced{background:#eaf1f4;color:#496675}
.tour-card .tour-intro,.route-card .tour-desc{font-size:13px;line-height:1.7;color:#697984;margin:8px 0 12px}
.tour-card .tour-intro{min-height:42px}
.tour-warning{font-size:12px;line-height:1.6;padding:10px 12px;border-radius:10px;margin:5px 17px 8px;background:#fff6e8;border:1px solid #f0e0c6;color:#83532b}
.tour-day-details{padding:0 16px 10px;margin:3px 0 0;min-width:0}
.tour-day-details summary{cursor:pointer;font-family:'DM Sans',sans-serif;color:#38566e;font-size:12px;font-weight:800;padding:10px 0;list-style-position:inside}
.tour-day-details summary:hover{color:#ba4c39}
.tour-day-details[open]{background:#fafbfb;border-top:1px solid #eef0f1;border-bottom:1px solid #eef0f1}
.tour-days{display:grid;gap:8px;padding:5px 0 11px}
.tour-day-row{display:grid;gap:6px;grid-template-columns:auto 1fr;align-items:start;font-size:12px;line-height:1.65;color:#546878}
.tour-day-row b{color:#2b5364;white-space:nowrap;font-weight:800}
.tour-day-row span{min-width:0;overflow-wrap:anywhere}
.route-card .tour-warning{margin:7px 0 9px}
.route-card .tour-day-details{padding:0 0 9px}
.route-card .tour-card-topline{margin-bottom:9px}
.route-card .tour-desc{min-height:39px}
.tour-results-grid .tour-card{height:100%;display:flex;flex-direction:column}
.tour-results-grid .tour-actions{margin-top:auto}
@media(max-width:1100px){.tour-finder-facets{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:730px){.tour-finder-shell{padding:17px;border-radius:15px}.tour-finder-facets{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.tour-finder-search input{font-size:16px}.tour-finder-field select{font-size:13px}.tour-card .tour-intro,.route-card .tour-desc{min-height:0}}
@media(max-width:410px){.tour-finder-facets{grid-template-columns:repeat(2,minmax(0,1fr))}.tour-finder-field>span{font-size:11px}.tour-finder-field select{font-size:12px;padding-left:8px}.tour-day-row{display:flex;flex-direction:column;gap:1px}}
@media(prefers-reduced-motion:reduce){.tour-card,.route-card{transition:none!important}}
