.directions__labels{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  margin:0 0 14px;
  color:var(--muted);
}
.directions__label{
  padding-bottom:4px;
  border-bottom:2px solid transparent;
  white-space:nowrap;
}
.directions__label.is-active{color:var(--text); font-weight:600; border-bottom-color:var(--accent);}
.directions__stage{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  align-items:center;
}
.directions__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  background:rgba(5,25,43,.55);
  color:#fff;
  border-radius:50%;
  cursor:pointer;
}
.directions__arrow[hidden]{display:none;}
.directions__arrow[data-direction-prev]{left:12px;}
.directions__arrow[data-direction-next]{right:12px;}
.directions__arrow:hover{background:rgba(5,25,43,.8); color:#fff;}
.directions button:focus-visible,.directions a:focus-visible{outline:2px solid var(--accent); outline-offset:3px;}
.directions .directions__arrow:focus-visible{outline-color:#fff;}
.directions__slides{display:grid; min-width:0;}
.directions__slide{
  grid-area:1 / 1;
  position:relative;
  isolation:isolate;
  display:grid;
  align-items:end;
  min-width:0;
  min-height:clamp(420px, 38vw, 500px);
  border-radius:var(--radius);
  overflow:hidden;
  background:#17334b;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .35s ease, visibility .35s;
}
.directions__slide.is-active{opacity:1; visibility:visible; pointer-events:auto;}
.directions__art{
  position:absolute;
  inset:0;
  z-index:-2;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.directions__slide::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg, rgba(5,25,43,0) 0%, rgba(5,25,43,.12) 22%, rgba(5,25,43,.78) 60%, rgba(5,25,43,.95) 100%);
  pointer-events:none;
}
.directions__text{min-width:0; padding:36px 68px; color:#fff;}
.directions__title{margin:0 0 12px; max-width:24ch; font-size:clamp(26px, 3vw, 38px); line-height:1.2; overflow-wrap:break-word;}
.directions__description{margin:0 0 22px; max-width:65ch; color:rgba(255,255,255,.94);}
.directions__text .btn{max-width:100%; min-height:44px; text-align:center;}
.directions__text a:focus-visible{outline-color:#fff; outline-offset:4px;}
@media (max-width:700px){
  .directions__labels{gap:6px; margin-bottom:12px; font-size:clamp(13px, 3.6vw, 14px);}
  .directions__slide{min-height:460px; grid-template-rows:1fr 1fr;}
  .directions__text{grid-row:2; padding:28px 20px 20px;}
  .directions__title{margin-bottom:10px; font-size:clamp(24px, 6.5vw, 26px);}
  .directions__description{margin-bottom:18px;}
  .directions__arrow[data-direction-prev]{left:6px;}
  .directions__arrow[data-direction-next]{right:6px;}
}
@media (prefers-reduced-motion:reduce){
  .directions__slide{transition:none;}
}
