/* section 4, destinations carousel */
.dest{border-bottom:1px solid var(--line);padding:clamp(56px,7vw,104px) 0}
.dest__head{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.dest__head .lead{margin-top:16px}
.dcar{position:relative;max-width:var(--wrap);margin:clamp(30px,4vw,52px) auto 0;padding:0 var(--gut)}
.dcar__mask{overflow:hidden}
.dcar__track{display:flex;gap:20px;transition:transform .65s cubic-bezier(.25,.8,.3,1);will-change:transform}
.dcard{flex:0 0 calc((100% - 60px) / 4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color .3s ease}
.dcard:hover{border-color:rgba(216,166,43,.5)}
.dcard__media{position:relative;aspect-ratio:3/2;overflow:hidden}
.dcard__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.3,1)}
.dcard:hover .dcard__media img{transform:scale(1.05)}
.dcard__n{position:absolute;right:12px;top:12px;z-index:2;font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.06em;color:#0C0C0D;background:var(--accent);border-radius:var(--r);padding:5px 9px}
.dcard__in{padding:18px 18px 22px;display:flex;flex-direction:column;gap:9px;flex:1}
.dcard__in h3{font-family:var(--display);font-weight:700;font-size:clamp(17px,1.5vw,19px);line-height:1.16;letter-spacing:-0.01em}
.dcard__in p{color:var(--muted);font-size:14.5px;line-height:1.5}
.dcard__link{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent)}
.dcard__link span{transition:transform .2s ease}
.dcard:hover .dcard__link span{transform:translateX(4px)}

.dcar__ui{display:flex;align-items:center;gap:16px;margin-top:26px}
.ddots{display:flex;gap:9px}
.ddot{width:30px;height:3px;padding:0;border:0;background:rgba(242,239,233,.24);cursor:pointer}
.ddot[aria-selected="true"]{background:var(--accent)}
.dnav{margin-left:auto;display:flex;gap:8px}
.dbtn{width:44px;height:44px;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:var(--r);cursor:pointer;font-size:17px;line-height:1;display:grid;place-content:center}
.dbtn:hover{border-color:var(--accent);color:var(--accent)}

.otherroutes{max-width:var(--wrap);margin:clamp(38px,5vw,64px) auto 0;padding:0 var(--gut)}
.otherroutes h3{font-family:var(--body);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.otherroutes ul{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0 28px;border-top:1px solid var(--line)}
.otherroutes li{border-bottom:1px solid var(--line)}
.otherroutes a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;color:var(--ink);font-weight:500;font-size:15.5px}
.otherroutes a:hover{color:var(--accent)}
.otherroutes a::after{content:'\2192';color:var(--muted);font-size:14px}
.otherroutes a:hover::after{color:var(--accent)}

@media (prefers-reduced-motion:reduce){.dcar__track{transition:none}.dcard__media img{transition:none}}
@media (max-width:1100px){.dcard{flex:0 0 calc((100% - 40px) / 3)}}
@media (max-width:860px){.dcard{flex:0 0 calc((100% - 20px) / 2)}}
@media (max-width:560px){.dcard{flex:0 0 100%}.dnav{display:none}}
