/* TRAVSCOPE V25.13 — premium responsive package listings.
   Scoped to packages.php. Display-only: do not modify price, supplier or hotel data.
   Loaded AFTER the V24.99 and V25.00 public styles to give stable card sizing. */
@media screen {
  .package-layout { grid-template-columns: 246px minmax(0,1fr); gap:25px; align-items:start; }
  .package-layout > main {min-width:0;}
  .results-top {margin-bottom:18px; align-items:center; gap:15px;}
  .results-top h2 {font-size:clamp(19px,1.65vw,25px);letter-spacing:-.55px;line-height:1.3;}
  .results-top p {font-size:13px;line-height:1.5;}
  .sort-box {min-height:43px;min-width:162px;border-radius:10px;font-size:13px;}

  /* Every package belongs to an explicit grid track — no content-width cards. */
  .packages-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-flow:row;
    align-items:stretch;
    gap:20px;
    width:100%;
    min-width:0;
  }
  .packages-grid > .package-card {
    display:flex;
    flex-direction:column;
    min-width:0;
    width:100%;
    max-width:none;
    height:100%;
    box-sizing:border-box;
    overflow:hidden;
    border:1px solid #e2e8f0 !important;
    border-radius:16px !important;
    background:#fff;
    box-shadow:0 4px 18px rgba(15,33,55,.055) !important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
  }
  .packages-grid > .package-card:hover {
    border-color:#bcd3f0 !important;
    transform:translateY(-3px);
    box-shadow:0 13px 32px rgba(15,33,55,.105) !important;
  }
  .packages-grid .package-image {position:relative;flex:none;height:auto;aspect-ratio:16/8.5;background:#edf3f8;overflow:hidden;}
  .packages-grid .package-image > a {display:block;width:100%;height:100%;}
  .packages-grid .package-image img {display:block;width:100%;height:100%;object-fit:cover;}
  .packages-grid .badges {top:13px;left:13px;gap:6px;}
  .packages-grid .badge {padding:6px 10px;font-size:10px !important;letter-spacing:.35px;background:rgba(9,31,54,.84);}
  .packages-grid .wishlist-button {width:38px;height:38px;}
  .packages-grid .package-body {display:flex;flex-direction:column;flex:1;min-width:0;padding:20px 21px 19px;}
  .packages-grid .location {color:#2464a4;font-size:11px !important;font-weight:800;letter-spacing:.15px;line-height:1.5;}
  .packages-grid .package-body h3 {min-height:0;margin:8px 0 0;font-size:20px !important;line-height:1.3;letter-spacing:-.35px;overflow-wrap:anywhere;}
  .packages-grid .package-body h3 a {color:#10243c;text-decoration:none;}
  .packages-grid .package-body h3 a:hover {color:#176dc8;}
  .packages-grid .package-description {
    height:auto;min-height:0;margin-top:8px;color:#617084;
    font-size:13px !important;line-height:1.55;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
    line-clamp:2;overflow:hidden;
  }
  .packages-grid .itinerary-preview {
    margin-top:15px;padding:12px 13px 11px;
    border:1px solid #e4ebf3;border-radius:11px;background:#f7faff;
  }
  .packages-grid .itinerary-preview-head {font-size:11px !important;font-weight:800;color:#244565;letter-spacing:.15px;}
  .packages-grid .itinerary-preview-days {margin-top:8px;gap:6px;}
  .packages-grid .itinerary-preview-day {min-width:0;gap:9px;align-items:baseline;font-size:12px !important;color:#596d83;}
  .packages-grid .itinerary-preview-day strong {min-width:39px;font-size:11px !important;color:#1561aa;}
  .packages-grid .itinerary-preview-day span {min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
  .packages-grid .itinerary-more {font-size:11px !important;color:#657990;}
  .packages-grid .package-meta {
    margin-top:auto;padding:15px 0 13px;border-top:0;border-bottom:1px solid #edf1f6;
    display:flex;flex-wrap:wrap;gap:9px 15px;color:#65758a;font-size:12px !important;
  }
  .packages-grid .package-meta span {gap:6px;}
  .packages-grid .package-bottom {
    display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;
    gap:14px;margin-top:16px;
  }
  .packages-grid .package-bottom > div:first-child {min-width:0;flex:1 1 155px;}
  .packages-grid .price-label {color:#64748b;font-size:11px !important;font-weight:700;letter-spacing:.1px;text-transform:none;}
  .packages-grid .old-price {margin-top:3px;color:#728096;font-size:11px !important;line-height:1.5;overflow-wrap:anywhere;text-decoration:none !important;}
  .packages-grid .current-price {margin-top:5px;color:#10243c;font-size:25px !important;line-height:1.2;font-weight:800;white-space:normal;}
  .packages-grid .current-price small {font-size:12px !important;white-space:nowrap;color:#728096;}
  .packages-grid .card-actions {display:flex;gap:9px;align-items:center;flex:0 0 auto;max-width:100%;}
  .packages-grid .details-button,.packages-grid .book-button {
    min-height:43px;padding:0 15px;border-radius:9px;
    text-decoration:none;font-size:12px !important;font-weight:800;white-space:nowrap;
  }
  .packages-grid .details-button {border:1px solid #ceddeb;color:#194a75;background:#fff;}
  .packages-grid .details-button:hover {background:#f1f7ff;border-color:#a7cbed;}
  .packages-grid .book-button {background:#166dd2;color:#fff;box-shadow:0 4px 10px rgba(22,109,210,.14);}
  .packages-grid .book-button:hover {background:#1055aa;}
  .packages-grid .details-button:focus-visible,.packages-grid .book-button:focus-visible,.packages-grid .wishlist-button:focus-visible {
    outline:3px solid #93c5fd !important;outline-offset:2px;
  }
}
@media screen and (max-width:1110px) {
  .package-layout {gap:20px;grid-template-columns:220px minmax(0,1fr);}
  .packages-grid {gap:15px;}
  .packages-grid .package-body {padding:17px;}
  .packages-grid .card-actions {width:100%;}
  .packages-grid .details-button,.packages-grid .book-button {flex:1;}
}
@media screen and (max-width:920px) {
  .package-layout {grid-template-columns:minmax(0,1fr);}
  .packages-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
  .packages-grid .card-actions {width:100%;}
}
@media screen and (max-width:670px) {
  .packages-grid {grid-template-columns:minmax(0,1fr);gap:16px;}
  .packages-grid .package-image {aspect-ratio:16/9;}
  .packages-grid .package-body {padding:17px;}
  .packages-grid .package-body h3 {font-size:19px !important;}
  .packages-grid .package-bottom {align-items:stretch;flex-direction:column;gap:14px;}
  .packages-grid .package-bottom > div:first-child {flex:0 1 auto;}
  .packages-grid .card-actions {width:100%;}
  .packages-grid .details-button,.packages-grid .book-button {flex:1;min-width:0;}
  .results-top {align-items:stretch;flex-direction:column;}
  .results-top .sort-box {width:100%;}
}
@media (prefers-reduced-motion:reduce) {
  .packages-grid > .package-card,.packages-grid .package-image img {transition:none !important;}
  .packages-grid > .package-card:hover {transform:none;}
}
