/*
 * Aswan Luxor Cruises — v3: itinerary pages.
 *
 * The rules this template adds on top of base.css, extracted from its mockup
 * as a set difference so nothing here is authored and nothing duplicated.
 */

  /* itineraries page */
  .cmp{overflow-x:auto; border:1.5px solid var(--line); border-radius:var(--r); background:#fff;}
  .cmp table{width:100%; border-collapse:collapse; min-width:720px; font-size:.88rem;}
  .cmp th{background:var(--petrol); color:#fff; text-align:start; padding:14px 16px; font-size:.7rem; text-transform:uppercase; letter-spacing:.08em;}
  .cmp th:first-child{width:160px;}
  .cmp td{padding:13px 16px; border-top:1px solid var(--line); color:var(--ink-soft); vertical-align:top;}
  .cmp td:first-child{font-weight:800; color:var(--ink); background:var(--bg-alt);}
  .cmp tr:hover td{background:var(--bg-alt);}
  .cmp td b{color:var(--petrol);}
  .cmp .hot{display:inline-block; background:var(--orange-soft); color:var(--orange-dark); font-size:.68rem; font-weight:800; padding:2px 8px; border-radius:99px; margin-inline-start:6px;}
  .stops{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
  @media(max-width:960px){ .stops{grid-template-columns:1fr 1fr;} }
  @media(max-width:600px){ .stops{grid-template-columns:1fr;} }
  .stop{background:#fff; border:1.5px solid var(--line); border-radius:var(--r); overflow:hidden; display:flex; flex-direction:column;}
  .stop .si{position:relative; height:150px; overflow:hidden;}
  .stop .si .tg{position:absolute; z-index:2; top:12px; inset-inline-start:12px; background:#fff; color:var(--petrol-dark); font-size:.68rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; padding:5px 10px; border-radius:99px;}
  .stop .sb{padding:14px 16px 16px; display:flex; flex-direction:column; gap:6px;}
  .stop h3{font-size:1rem;}
  .stop p{font-size:.84rem; color:var(--ink-soft);}
  .stop .sm{display:flex; gap:10px; flex-wrap:wrap; font-size:.72rem; font-weight:700; color:var(--muted); margin-top:4px;}
  .stop .sm span{display:inline-flex; align-items:center; gap:4px;}
  .stop .sm .ico{width:12px; height:12px; color:var(--teal);}
  .rs-head{display:flex; align-items:center; justify-content:space-between; gap:12px; margin:30px 0 14px; flex-wrap:wrap;}
  .rs-head h3{font-size:1.1rem;}
  .rs-head h3 span{color:var(--petrol);}
  @media(max-width:960px){ .jp-map,.sec .jp-map{position:static !important; top:auto; margin-bottom:16px;} .jp-map svg{max-height:none;} .jp-map .jm-desc{display:block;} }
  .jp-tabs[hidden]{display:none !important}
  .glance-wrap{margin-top:-8px;position:relative;z-index:2}
  .glance{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow)}
  @media(max-width:960px){.glance{grid-template-columns:1fr 1fr 1fr}}
  @media(max-width:600px){.glance{grid-template-columns:1fr 1fr}}
  .gl{padding:6px 10px;border-left:1.5px solid var(--line)}
  .gl:first-child{border-left:none}
  @media(max-width:960px){.gl{border-left:none}}
  .gl .ico{width:18px;height:18px;color:var(--petrol);margin-bottom:6px}
  .gl small{display:block;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
  .gl b{display:block;font-size:1.1rem;color:var(--ink);margin:1px 0 2px;letter-spacing:-.01em}
  .gl p{font-size:.76rem;color:var(--ink-soft);margin:0}
  .incl{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:860px){.incl{grid-template-columns:1fr}}
  .ic{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:20px 22px}
  .ic h3{display:flex;align-items:center;gap:8px;font-size:1rem;margin:0 0 12px}
  .ic h3 .ico{width:18px;height:18px;color:var(--petrol)}
  .ic h3.mt{margin-top:18px}
  .ic ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:.9rem;color:var(--ink-soft)}
  .ic li{display:flex;gap:9px;align-items:flex-start}
  .ic li .ico{width:15px;height:15px;color:var(--teal);flex:none;margin-top:4px}
  .ic li.bad .ico{color:var(--orange)}
  .addons{display:flex;flex-wrap:wrap;gap:8px}
  .addons span{font-size:.8rem;font-weight:700;padding:6px 10px;border-radius:999px;background:var(--petrol-soft);color:var(--petrol)}
  .othercats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
  @media(max-width:860px){.othercats{grid-template-columns:1fr 1fr}}
  @media(max-width:520px){.othercats{grid-template-columns:1fr}}
  .oc{background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:border-color .2s,box-shadow .2s}
  .oc:hover{border-color:var(--petrol);box-shadow:var(--shadow)}
  .oc b{display:block;font-size:.95rem}
  .oc small{font-size:.76rem;color:var(--muted);font-weight:600}
  .oc .ico{width:18px;height:18px;color:var(--petrol);flex:none}
  .oc.cur{border-color:var(--petrol);background:var(--petrol-soft)}
