/* Package, hotel and cruise pages. They use the design's package-page
   pieces (.mast, .facts, .split, .itin, .ticks, .card); this file adds the
   travel details the original single-package pages did not have yet —
   price tiers, departure dates and questions — in the same visual language. */

/* price tiers */
.tripTable{overflow-x:auto;border-radius:14px;background:#fff;box-shadow:0 1px 2px rgb(var(--deep-rgb) / .05),0 14px 30px rgb(var(--deep-rgb) / .06)}
.tripTable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.tripTable table{width:100%;border-collapse:collapse;min-width:520px;font-size:13px}
.tripTable th,.tripTable td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid rgb(var(--deep-rgb) / .1)}
.tripTable thead th{font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.tripTable tbody th{font-weight:700;color:var(--ink)}
.tripTable tbody th small{display:block;margin-top:3px;font-weight:500;font-size:11.5px;color:var(--muted)}
.tripTable td{color:var(--muted-2)}
.tripTable td strong{color:var(--ink);font-size:14.5px}
.tripTable tbody tr:last-child th,.tripTable tbody tr:last-child td{border-bottom:0}
.tripNote{margin:0}

/* departures */
.tripDeps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.tripDeps__row{
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.8fr) minmax(0,.9fr) auto;align-items:center;gap:6px 18px;
  padding:16px 0;border-top:1px solid rgb(var(--deep-rgb) / .12);font-size:13.5px;color:var(--muted-2);
}
.tripDeps__row:last-child{border-bottom:1px solid rgb(var(--deep-rgb) / .12)}
.tripDeps__date{font-weight:700;color:var(--ink)}
.tripDeps__price{font-weight:700;color:var(--ink)}
.tripDeps__status{font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.tripDeps__row--limited .tripDeps__status{color:#B2551E}
.tripDeps__row--full{opacity:.5}
.tripDeps__row--full .tripDeps__status{color:var(--muted)}
.tripDeps__note{grid-column:1/-2;font-size:12px;color:var(--muted)}
.tripDeps__go{
  grid-row:1;grid-column:4;justify-self:end;padding:9px 16px;border-radius:999px;
  background:var(--deep);color:#fff;font-size:11px;font-weight:700;text-decoration:none;transition:opacity .3s var(--ease);
}
.tripDeps__go:hover{opacity:.88}
@media (max-width:640px){
  .tripDeps__row{grid-template-columns:1fr auto}
  .tripDeps__go{grid-row:1 / span 2;grid-column:2}
  .tripDeps__note{grid-column:1/-1}
}

/* questions */
.tripFaq{display:flex;flex-direction:column}
.tripFaq__item{border-top:1px solid rgb(var(--deep-rgb) / .12)}
.tripFaq__item:last-child{border-bottom:1px solid rgb(var(--deep-rgb) / .12)}
.tripFaq__item summary{
  list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:18px 0;font-size:15px;font-weight:700;color:var(--ink);
}
.tripFaq__item summary::-webkit-details-marker{display:none}
.tripFaq__item summary svg{width:16px;height:16px;flex:none;transition:transform .3s var(--ease)}
.tripFaq__item[open] summary svg{transform:rotate(180deg)}
.tripFaq__item .body{margin:0 0 18px;max-width:62ch}
