/* Image-led activity detail, scoped to ordered day trips. */
.place-dialog:has(.trip-detail){width:min(960px,100vw);max-width:100vw;height:94dvh;max-height:100dvh;padding:0;overflow:auto;border:0;border-radius:22px;background:#fff;color:#172b49;overscroll-behavior:contain}
.place-dialog:has(.trip-detail)>.dialog-head{display:none}
.place-dialog:has(.trip-detail) .dialog-content,.place-dialog:has(.trip-detail) .place-card{padding:0!important;margin:0!important;border:0!important;background:white!important;border-radius:0!important}
.place-dialog .trip-detail{padding:0!important;margin:0;color:#172b49;font-family:inherit}
.trip-detail *{box-sizing:border-box}
.trip-toolbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:10px;height:66px;padding:10px 18px;background:#ffffffed;backdrop-filter:blur(14px);border-bottom:1px solid #edf0f4}
.trip-toolbar>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650}
.trip-toolbar>div{display:flex;gap:6px}
.trip-toolbar button{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #e5eaf0;border-radius:50%;background:#fff;color:#172b49;padding:10px;cursor:pointer}
.trip-toolbar svg{width:22px;height:22px}.trip-toolbar [aria-pressed=true]{color:#0875e7;background:#edf6ff}.trip-toolbar [aria-pressed=true] svg{fill:#0875e7}
.trip-hero{position:relative;margin:14px 18px 0}
.trip-hero-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:160px 160px;gap:7px}
.trip-hero-grid>button{padding:0;border:0;border-radius:12px;overflow:hidden;background:#e7edf1;cursor:zoom-in;min-width:0}
.trip-hero-grid>button:first-child{grid-row:span 2}
.trip-hero img{display:block;width:100%;height:100%;object-fit:cover}
.trip-photo-count{position:absolute;bottom:12px;right:12px;border:1px solid #ffffff90;background:#fffffff0;backdrop-filter:blur(8px);color:#172b49;border-radius:22px;padding:8px 12px;cursor:pointer;font-family:inherit;font-size:12px}
.trip-main{max-width:760px;margin:auto;padding:20px 24px 30px}
.trip-detail .trip-kicker{font-size:12px!important;color:#6b788c;margin:0 0 8px!important}
.trip-detail h4{font-size:28px!important;line-height:1.28!important;font-weight:750!important;margin:0 0 16px!important;letter-spacing:-.5px;color:#172b49}
.trip-detail .trip-intro{font-size:16px!important;line-height:1.7!important;margin:0 0 24px!important;color:#33465d}
.trip-facts{border-top:1px solid #e5e9ef;border-bottom:1px solid #e5e9ef;padding:18px 0;display:grid;gap:18px}
.trip-facts>div{display:flex;gap:14px;align-items:flex-start}
.trip-facts svg{flex:none;width:43px;height:43px;padding:10px;background:#f0f2f5;border-radius:13px}
.trip-facts strong{font-size:15px}.trip-facts p{margin:4px 0 0!important;font-size:13px!important;line-height:1.5!important;color:#6b788c}
.trip-detail .trip-options{margin:22px 0!important}.trip-options>p{font-size:13px!important;line-height:1.6!important;color:#69788b;margin:4px 0 12px!important}
.trip-options legend{font-size:19px!important;font-weight:750}
.trip-options label>span{font-size:13px!important;border-radius:13px;grid-template-columns:22px 1fr auto;line-height:1.5}
.trip-options label>span>.ru,.trip-options label>span>.zh{min-width:0}
.trip-options input:checked+span{border-color:#0074e7;background:#f0f7ff;box-shadow:0 0 0 1px #0074e7}
.trip-options input{accent-color:#0074e7}
.trip-section{border:0!important;border-bottom:1px solid #e3e8ee!important;border-radius:0!important;background:none!important;padding:0!important;margin:0!important}
.trip-section>summary{display:flex;align-items:center;gap:12px;list-style:none;padding:21px 0!important;font-size:19px!important;line-height:1.4;font-weight:750;color:#172b49;cursor:pointer}
.trip-section>summary::-webkit-details-marker{display:none}
.trip-section>summary:after{content:"";margin-left:auto;flex:none;width:8px;height:8px;border-right:2px solid #7b8696;border-bottom:2px solid #7b8696;transform:rotate(45deg);margin-right:4px}
.trip-section[open]>summary:after{transform:rotate(225deg)}
.trip-section>div{padding:0 0 20px}
.trip-section p,.trip-section li{font-size:15px!important;line-height:1.85!important;color:#33465d}
.trip-section p{margin:0 0 15px!important}.trip-section p:last-child{margin-bottom:0!important}
.trip-section ul{padding:0 0 0 20px;margin:0}.trip-section li{padding-left:4px;margin:0 0 8px}
.trip-section a{color:#0875e7;font-size:13px}
.trip-consult{padding:22px 0 0}.trip-consult h5{font-size:19px!important;margin:0 0 8px!important}.trip-consult p{font-size:13px!important;line-height:1.6;color:#6b788c}
.trip-consult-links{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.trip-consult-links a{padding:12px 5px!important;text-align:center;border:1px solid #dce5ef!important;border-radius:12px;background:#f5f8fc!important;color:#145b9f!important;text-decoration:none;font-size:12px;font-weight:600}
.trip-booking{position:sticky;bottom:0;z-index:9;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px max(14px,env(safe-area-inset-bottom));border-top:1px solid #e8edf3;background:#fffffffa;box-shadow:0 -4px 20px #1a2f4e08}
.trip-booking>div{display:flex;flex-direction:column;gap:5px;min-width:0}.trip-booking small{color:#718096;font-size:11px}.trip-booking strong{font-size:22px;font-weight:750;line-height:1.25;color:#c83149}
.trip-booking>button{border:0;border-radius:28px;padding:15px 22px;background:#0875e7;color:#fff;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}
.trip-feedback{font-size:12px;overflow-wrap:anywhere;color:#1871ae}
.trip-detail button:focus-visible,.trip-detail a:focus-visible,.trip-detail summary:focus-visible{outline:2px solid #0875e7;outline-offset:3px}
@media(max-width:760px){
.place-dialog:has(.trip-detail){width:100vw;height:100dvh;max-height:100dvh;margin:0;inset:0;border-radius:0}
.trip-toolbar{height:60px;padding:9px 14px}
.trip-hero{margin:8px 14px 0}
.trip-hero-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 110px;gap:6px}
.trip-hero-grid>button:first-child{grid-column:span 2;grid-row:auto}
.trip-hero-grid>button{border-radius:10px}
.trip-photo-count{bottom:9px;right:9px;font-size:11px;padding:7px 11px}
.trip-main{padding:20px 20px 24px}
.trip-detail h4{font-size:25px!important;line-height:1.35!important}
.trip-booking{padding:12px 18px max(12px,env(safe-area-inset-bottom))}
.trip-booking strong{font-size:21px}.trip-booking>button{max-width:52%;padding:14px 18px}
.trip-consult-links{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:360px){.trip-hero-grid{grid-template-rows:205px 96px}.trip-main{padding-left:16px;padding-right:16px}.trip-booking strong{font-size:18px}.trip-toolbar>span{font-size:12px}}

.trip-hero-grid{display:block}.trip-hero-grid>button:first-child{display:block;width:100%;aspect-ratio:1}.trip-hero-grid img{object-fit:contain}
.place-dialog[open] .trip-booking{position:fixed;bottom:3dvh;left:0;right:0;width:min(960px,100%);margin:0 auto}
.trip-main{padding-bottom:112px}
@media(max-width:760px){.place-dialog[open] .trip-booking{bottom:0;width:100%}.trip-main{padding-bottom:105px}}
.place-dialog[open] .trip-toolbar{position:fixed;top:3dvh;left:0;right:0;width:min(960px,100%);margin:0 auto}
.place-dialog .trip-detail{padding-top:66px!important}
.trip-section,.trip-options,.trip-consult{scroll-margin-top:76px}
@media(max-width:760px){.place-dialog[open] .trip-toolbar{top:0;width:100%}.place-dialog .trip-detail{padding-top:60px!important}}
@media(min-width:761px){.trip-hero{max-width:620px;margin-left:auto;margin-right:auto}}
/* Swipeable cover with a visible next frame and discreet pagination. */
.trip-hero{max-width:none!important;margin:8px 0 0!important;position:relative}
.trip-carousel{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:14px;padding:0 14px;scrollbar-width:none;touch-action:pan-x pan-y;overscroll-behavior-x:contain}
.trip-carousel::-webkit-scrollbar{display:none}
.trip-carousel:after{content:"";flex:0 0 14px}
.trip-carousel>button{display:block;flex:0 0 calc(100% - 14px);aspect-ratio:1;min-width:0;padding:0;border:0;border-radius:17px;overflow:hidden;scroll-snap-align:start;background:#edf1f5;cursor:grab}
.trip-carousel>button:active{cursor:grabbing}
.trip-carousel img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.trip-carousel>button:first-child img{object-fit:contain}
.trip-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:0;padding:2px 8px;background:#ffffffe6;backdrop-filter:blur(12px);border:1px solid #ffffffa0;border-radius:24px;box-shadow:0 2px 10px #102e4520}
.trip-dots button{display:grid;place-items:center;width:24px;height:28px;border:0;background:none;padding:0;cursor:pointer}
.trip-dots span{display:block;width:7px;height:7px;border-radius:7px;background:#a9b2c0;transition:width .15s}
.trip-dots button[aria-pressed=true]{width:35px}.trip-dots button[aria-pressed=true] span{width:25px;background:#172b49}
.place-dialog[open] .trip-toolbar{background:transparent;border:0;backdrop-filter:none;pointer-events:none;height:64px;padding:12px 24px}
.trip-toolbar>span{display:none}
.trip-toolbar>button,.trip-toolbar>div{pointer-events:auto;box-shadow:0 3px 18px #17344b14;background:#ffffffe0;backdrop-filter:blur(16px);border:1px solid #ffffffcc}
.trip-toolbar>div{display:flex;border-radius:28px;gap:0;padding:0 4px}
.trip-toolbar>div>button{border:0;background:none;box-shadow:none}
.trip-toolbar>button{border-radius:50%}
.place-dialog .trip-detail{padding-top:0!important}
@media(min-width:761px){.trip-hero{max-width:760px!important;margin:8px auto 0!important}.trip-carousel>button{flex-basis:calc(100% - 26px)}.trip-carousel{max-height:65dvh}.trip-carousel>button{aspect-ratio:1.3}.trip-carousel img{object-fit:contain;background:#edf1f5}}
