/* Open destinations share the reef, rather than enclosing it in cards. */
body[data-ui=home][data-concept=expedition] #main{
  background:#07303c url('film/reef.jpg') center bottom/cover no-repeat;
}
body[data-ui=home][data-concept=expedition] #destinations{
  position:relative;
  inset:auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:0;
  padding:30px 5% 48px;
  overflow:visible;
  background:linear-gradient(180deg,transparent 0%,#061d2733 35%,#061d27b8 78%,#061d27e6 100%);
}
body[data-ui=home][data-concept=expedition] #destinations .destination{
  position:relative;
  inset:auto;
  order:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:auto;
  min-width:0;
  min-height:326px;
  padding:24px 24px 20px;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:var(--ui-text);
  text-align:center;
  text-decoration:none;
  transform:none;
  transition:none;
  pointer-events:auto;
  -webkit-tap-highlight-color:#e6c78826;
}
body[data-ui=home][data-concept=expedition] #destinations .destination+.destination{
  border-left:1px solid #d9e5ce26;
}
body[data-ui=home][data-concept=expedition] #destinations .destination::before,
body[data-ui=home][data-concept=expedition] #destinations .destination::after{
  display:none;
}
body[data-ui=home][data-concept=expedition] #destinations .destination-artwork{
  position:relative;
  display:block;
  flex:0 0 auto;
  width:100%;
  max-width:260px;
  height:195px;
  margin:0;
  isolation:isolate;
  transform-origin:50% 65%;
  transform:none;
  filter:drop-shadow(0 10px 12px #00172370);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),filter .3s ease;
  pointer-events:none;
}
body[data-ui=home][data-concept=expedition] #destinations .destination-artwork::before{
  content:'';
  position:absolute;
  inset:4% -3% -3%;
  z-index:-1;
  background:radial-gradient(ellipse,#f4d89438,transparent 68%);
  opacity:0;
  transition:opacity .3s ease;
  pointer-events:none;
}
/* Neutralize the aquarium's older, stronger treatment and animate one wrapper per link. */
body[data-ui=home][data-concept=expedition] #destinations .destination :is(.landmark,.aquarium-landmark){
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  min-width:0;
  max-width:none;
  height:100%;
  margin:0;
  padding:0;
  object-fit:contain;
  background:none;
  border:0;
  border-radius:0;
  box-shadow:none;
  filter:none;
  transform:none;
  transition:none;
}
body[data-ui=home][data-concept=expedition] #destinations :is(.landmark-prop,.aquarium-landmark>img){
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
body[data-ui=home][data-concept=expedition] #destinations .aquarium-landmark::before,
body[data-ui=home][data-concept=expedition] #destinations .aquarium-glint{
  display:none;
}
body[data-ui=home][data-concept=expedition] #destinations .studio-shark{
  position:absolute;
  inset:auto auto 0 0;
  display:block;
  width:37%;
  height:52%;
  max-width:none;
  margin:0;
  object-fit:contain;
  transform:none;
  filter:none;
  pointer-events:none;
}
body[data-ui=home][data-concept=expedition] #destinations .destination .destination-copy{
  position:relative;
  display:block;
  width:100%;
  max-width:30ch;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transition:none;
}
body[data-ui=home][data-concept=expedition] #destinations .destination strong{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:fit-content;
  margin:0 auto 14px;
  font-size:clamp(28px,2.25vw,32px);
  font-weight:550;
  line-height:1.15;
  letter-spacing:-.035em;
  color:#f2efdf;
  transform-origin:center;
  transition:color .25s ease,transform .3s ease;
}
body[data-ui=home][data-concept=expedition] #destinations .destination strong::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-8px;
  width:26px;
  height:2px;
  background:#e6c788;
  opacity:.8;
  transition:width .3s ease,opacity .25s ease;
}
body[data-ui=home][data-concept=expedition] #destinations .destination .destination-arrow{
  position:static;
  inset:auto;
  display:inline-block;
  flex:0 0 auto;
  width:auto;
  height:auto;
  margin:0;
  padding:0;
  border:0;
  background:none;
  font-size:22px;
  line-height:1;
  color:#e6c788;
  opacity:1;
  transform:none;
  transition:transform .3s ease,color .25s ease;
}
body[data-ui=home][data-concept=expedition] #destinations .destination-copy>span:last-child{
  display:block;
  max-width:28ch;
  margin:0 auto;
  font-size:14px;
  line-height:1.55;
  color:#cfddd6;
}
/* Identical feedback for pointer and keyboard, with no card or text-panel lift. */
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible){
  background:transparent;
  box-shadow:none;
  transform:none;
}
body[data-ui=home][data-concept=expedition] #destinations .destination:focus-visible{
  outline:2px solid #e6c788;
  outline-offset:3px;
}
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) .destination-artwork{
  transform:translateY(-10px) scale(1.10);
  filter:drop-shadow(0 12px 15px #00172380) drop-shadow(0 0 19px #f3d18a66);
}
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) .destination-artwork::before{
  opacity:1;
}
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) strong{
  color:#ffe8b5;
  transform:scale(1.045);
}
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) strong::after{
  width:100%;
  opacity:1;
}
body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) .destination-arrow{
  color:#ffe8b5;
  transform:translate(4px,-4px);
}
@media(min-width:601px) and (max-width:1000px){
  body[data-ui=home][data-concept=expedition] #destinations{padding-inline:3%}
  body[data-ui=home][data-concept=expedition] #destinations .destination{padding-inline:18px}
  body[data-ui=home][data-concept=expedition] #destinations .destination-artwork{height:180px}
}
@media(max-width:600px){
  body[data-ui=home][data-concept=expedition] .hero .keeper{top:54%}

  body[data-ui=home][data-concept=expedition] #destinations{
    grid-template-columns:minmax(0,1fr);
    padding:22px 20px 32px;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination{
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:18px;
    min-height:170px;
    padding:26px 8px;
    text-align:left;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination+.destination{
    border-left:0;
    border-top:1px solid #d9e5ce26;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination-artwork{
    width:clamp(100px,29vw,125px);
    height:clamp(100px,29vw,125px);
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination .destination-copy{
    flex:1 1 0;
    min-width:0;
    width:auto;
    max-width:none;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination strong{
    justify-content:flex-start;
    gap:9px;
    margin:0 0 14px;
    font-size:28px;
    transform-origin:left center;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination-copy>span:last-child{
    max-width:28ch;
    margin:0;
    font-size:13px;
    line-height:1.5;
  }
}
@media(max-width:350px){
  body[data-ui=home][data-concept=expedition] #destinations{padding-inline:16px}
  body[data-ui=home][data-concept=expedition] #destinations .destination{gap:14px;padding-inline:4px}
}
@media(prefers-reduced-motion:reduce){
  body[data-ui=home][data-concept=expedition] #destinations .destination,
  body[data-ui=home][data-concept=expedition] #destinations .destination *,
  body[data-ui=home][data-concept=expedition] #destinations .destination *::before,
  body[data-ui=home][data-concept=expedition] #destinations .destination *::after{
    animation:none;
    transition:none;
  }
  body[data-ui=home][data-concept=expedition] #destinations .destination:is(:hover,:focus-visible) :is(.destination-artwork,strong,.destination-arrow){
    transform:none;
  }
}

/* Give each opening thought its own line, with natural wrapping on small screens. */
body[data-ui=home][data-concept=expedition] .hero-description{max-width:100%}
body[data-ui=home] .hero-description>span{display:block}
