/* visit.panmajack.com — the site for foreign visitors (pages rendered by functions/lib/visit.js) */
:root{--ink:#22302B;--muted:#5F6B66;--bg:#FAFAF7;--sand:#F3EEE5;--card:#fff;--line:#E6E1D7;--brand:#1F5E57;--brand2:#2A766D;--on-brand:#fff;--accent:#C9673F;--focus:#9CC9C2;--bad:#A23B2A;--ok:#1E7A4F;
  --head-bg:#fff;--head-ink:#22302B;--head-line:#E6E1D7;--head-hover:#F1EFE9;--lg-d:block;--lg-w:none;
  --hero-ink:#16302C;--hero-shadow:none;--btn2-bg:#fff;--btn2-ink:#1F5E57;--trust-bg:#F3EEE5;
  --sky1:#9FC9DB;--sky2:#DCE7E4;--sky3:#F1E4CC;--sun:#FFF4D9;--py1:#E2C391;--py1s:#C59E68;--py2:#D9B680;--py2s:#B88F5B;--dune1:#EBD5AC;--dune2:#E0C394;--dune3:#D7B783;
  --hero-veil:linear-gradient(90deg,rgba(250,250,247,.55),rgba(250,250,247,0) 60%);--tile1:linear-gradient(160deg,#4E8A83,#2E5E59);--tile2:linear-gradient(160deg,#B48F63,#7E6042);--tile3:linear-gradient(160deg,#5D86A8,#365C7A);
  --why-bg:#F3EEE5;--why-ink:#22302B;--why-card:#fff;--foot-bg:#1F2B29;--foot-ink:#D5DDDA;--chip-bg:rgba(31,94,87,.92);--price:#1F5E57;
  --r:14px;--sh:0 1px 2px rgba(30,40,35,.05),0 6px 20px rgba(30,40,35,.07);--serif:"Playfair Display",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans","Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans)}
body.l-ar{font-family:"Segoe UI",Tahoma,"Noto Sans Arabic",Arial,sans-serif}
img{max-width:100%;display:block}a{color:var(--brand2)}
h1,h2,h3{line-height:1.2;margin:0 0 .5em;font-weight:700}h1,h2{font-family:var(--serif)}
.l-zh h1,.l-zh h2,.l-ar h1,.l-ar h2{font-family:inherit}
h1{font-size:clamp(28px,4.5vw,44px)}h2{font-size:clamp(22px,3vw,30px)}h3{font-size:18px}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}.small{font-size:13px}.muted{color:var(--muted)}.lead{font-size:18px;color:var(--muted);max-width:760px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
/* header */
.top{background:var(--head-bg);color:var(--head-ink);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--head-line)}
.bar{display:flex;align-items:center;gap:16px;min-height:64px}.logo img{height:40px;width:auto}.logo .lg-d{display:var(--lg-d)}.logo .lg-w{display:var(--lg-w)}
.nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}.nav a{color:var(--head-ink);text-decoration:none;padding:8px 10px;border-radius:8px;font-size:15px;opacity:.88}
.nav a:hover,.nav a[aria-current]{background:var(--head-hover);opacity:1}
.tools{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.lang{position:relative}.lang summary{list-style:none;cursor:pointer;padding:7px 10px;border:1px solid var(--head-line);border-radius:8px;font-size:14px;white-space:nowrap}.lang summary::-webkit-details-marker{display:none}
.lang .menu{position:absolute;inset-inline-end:0;top:calc(100% + 6px);background:#fff;border-radius:10px;box-shadow:var(--sh);padding:6px;min-width:170px;display:grid;z-index:40}
.lang .menu a{color:var(--ink);text-decoration:none;padding:7px 10px;border-radius:6px;font-size:14px}.lang .menu a:hover,.lang .menu a[aria-current]{background:var(--sand)}
#cur{background:transparent;color:var(--head-ink);border:1px solid var(--head-line);border-radius:8px;padding:7px 6px;font:inherit;font-size:14px}#cur option{color:#000}
.burger{display:none;background:none;border:1px solid var(--head-line);color:var(--head-ink);border-radius:8px;font-size:20px;padding:4px 10px;cursor:pointer}
@media (max-width:960px){.burger{display:block}.nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--head-bg);flex-direction:column;padding:8px 16px 16px;box-shadow:0 10px 20px rgba(0,0,0,.12)}.nav.open{display:flex}.nav a{padding:12px 8px}}
/* hero */
.hero{position:relative;min-height:520px;display:flex;align-items:flex-end;color:var(--hero-ink);overflow:hidden;background:var(--sky2)}.hero.photo{color:#fff}.hero.photo h1,.hero.photo p{text-shadow:0 2px 14px rgba(0,0,0,.4)}
.hero.photo{background-size:cover;background-position:center}
.hero-art{position:absolute;inset:0;width:100%;height:100%}.hero:not(.photo)::after{content:"";position:absolute;inset:0;background:var(--hero-veil)}
.hero .in{position:relative;z-index:1;padding-bottom:56px;padding-top:80px;width:100%}
.hero h1{max-width:760px;text-shadow:var(--hero-shadow)}.hero p{max-width:640px;font-size:19px;text-shadow:var(--hero-shadow)}
.btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--brand);color:var(--on-brand);border:0;border-radius:10px;padding:12px 20px;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;min-height:46px}
.btn:hover{background:var(--brand2)}.btn.light{background:var(--btn2-bg);color:var(--btn2-ink);box-shadow:var(--sh)}.btn.light:hover{background:var(--btn2-bg)}.btn.ghost{background:transparent;color:var(--brand);border:1.5px solid var(--brand)}.btn.ghost:hover{background:var(--sand)}
.btn[disabled]{opacity:.6;cursor:wait}
.trust{background:var(--trust-bg);border-bottom:1px solid var(--line)}.trust .wrap{display:flex;flex-wrap:wrap;gap:10px 28px;padding:14px 16px;font-size:14px;justify-content:center}
.sec{padding:44px 16px}.sh{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.sh a{font-weight:600;text-decoration:none}
/* services */
.svc{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.svc a{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:4px;transition:transform .15s,box-shadow .15s}
.svc a:hover{transform:translateY(-2px);box-shadow:var(--sh)}.svc .ic{font-size:26px}.svc small{color:var(--muted);line-height:1.45}
/* cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.card{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:transform .15s}
.card:hover{transform:translateY(-3px)}.card .ph{position:relative;aspect-ratio:3/2;background:var(--sand)}.card .ph img{width:100%;height:100%;object-fit:cover}
.chip{position:absolute;top:10px;inset-inline-start:10px;background:var(--chip-bg);color:#fff;font-size:12px;padding:4px 10px;border-radius:99px}
.cb{padding:14px 16px 16px;display:flex;flex-direction:column;gap:4px;flex:1}.cb h3{margin:2px 0}.cb p{margin:0;color:var(--muted);font-size:14px}
.from{margin-top:auto;padding-top:8px;font-size:14px}.from b{font-size:20px;color:var(--price)}
.noimg{width:100%;height:100%;display:grid;place-items:center;font-size:54px;background:var(--sand)}.noimg.t-cruise,.noimg.t-transfer{background:#E7EEF0}
.noimg.big{aspect-ratio:16/9;border-radius:var(--r);font-size:80px}
/* destinations */
.dests{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.dests a{min-height:150px;border-radius:var(--r);padding:16px;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;background:var(--tile1);box-shadow:var(--sh)}
.dests b{font-size:20px;font-family:var(--serif)}.l-zh .dests b,.l-ar .dests b{font-family:inherit}.dests small{font-size:13px;line-height:1.4;opacity:.95}
.dests a:nth-child(3n+2),.dhero.d-giza,.dhero.d-alexandria,.dhero.d-siwa{background:var(--tile2)}.dests a:nth-child(3n),.dhero.d-luxor,.dhero.d-marsa-alam{background:var(--tile3)}
.dhero{background:var(--tile1)}.dhero.d-aswan,.dhero.d-dahab{background:var(--tile3)}.dhero.d-hurghada,.dhero.d-sharm-el-sheikh{background:var(--tile1)}
.dhero{color:#fff;padding:56px 0 44px}.dhero p{max-width:720px;font-size:18px}
/* why / faq */
.why{background:var(--why-bg);color:var(--why-ink);padding:44px 0}.why4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.why4 div{background:var(--why-card);border-radius:var(--r);padding:18px;box-shadow:var(--sh)}.why4 p{margin:.4em 0 0;opacity:.85}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:0 16px;margin-bottom:10px}.faq summary{cursor:pointer;padding:14px 0;font-weight:700}.faq p{margin:0 0 14px;color:var(--muted)}
/* lists */
.crumbs{padding-top:14px;font-size:13px;color:var(--muted)}.crumbs a{color:var(--muted)}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.filters a{padding:7px 14px;border-radius:99px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);font-size:14px}.filters a[aria-current]{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
.empty{background:var(--card);border:1px dashed var(--line);border-radius:var(--r);padding:28px;text-align:center}
/* tour page */
.tour{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:32px;padding-top:16px;padding-bottom:48px;align-items:start}
.gal{display:grid;gap:8px;margin-bottom:18px}.gal img{width:100%;border-radius:var(--r);aspect-ratio:3/2;object-fit:cover}
.gal.multi{grid-template-columns:2fr 1fr}.gal.multi img:first-child{grid-row:span 2;height:100%}.gal.multi img:nth-child(n+4){display:none}
.facts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.facts span{background:var(--sand);border-radius:99px;padding:5px 12px;font-size:14px}
.txt p{margin:0 0 1em}.ticks{padding-inline-start:0;list-style:none}.ticks li{padding-inline-start:26px;position:relative;margin:6px 0}.ticks li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--ok);font-weight:700}
.no .ticks li::before{content:"✕";color:var(--bad)}.ie{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.itin{padding-inline-start:20px}.itin li{margin:8px 0;padding-inline-start:4px}
.tside{position:sticky;top:80px}
@media (max-width:900px){.tour{grid-template-columns:1fr}.tside{position:static}.ie{grid-template-columns:1fr}}
/* forms */
.book{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);padding:18px;display:grid;gap:10px}.book.wide{max-width:760px}
.bp{font-size:15px}.bp b{font-size:26px;color:var(--price)}
.f{display:grid;gap:4px;font-size:14px;min-width:0}.f>span,.f legend{font-weight:600;color:var(--muted)}
.f input,.f select,.f textarea{width:100%;font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);min-height:44px}
.f input:focus,.f select:focus,.f textarea:focus{outline:3px solid var(--focus);border-color:var(--brand)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width:420px){.row2{grid-template-columns:1fr}}
.chips{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.chips legend{margin-bottom:6px}.chips label{border:1px solid var(--line);border-radius:99px;padding:6px 12px;font-size:14px;display:flex;gap:6px;align-items:center;cursor:pointer;background:#fff}
.sum{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:10px}.sum b{font-size:22px;color:var(--price)}
.msg{font-size:14px}.msg.bad{color:var(--bad)}.msg.ok{color:var(--ok);background:#EAF5EE;border-radius:10px;padding:12px}
.book .btns{margin-top:0}.book .btn{flex:1}
.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}@media (max-width:800px){.two{grid-template-columns:1fr}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px}.apres{margin-top:10px;font-size:15px}
/* hotels */
.hsearch{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);padding:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;align-items:end;margin-bottom:22px}
.hres{display:grid;gap:12px}.hcard{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);display:grid;grid-template-columns:200px 1fr auto;gap:14px;overflow:hidden;align-items:stretch}
.hcard img,.hcard .noimg{width:200px;height:100%;min-height:140px;object-fit:cover}.hcard .hb{padding:12px 0;display:flex;flex-direction:column;gap:4px}.hcard .hp2{padding:12px 16px;text-align:end;display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:170px}
.hcard .hp2 b{font-size:22px;color:var(--price)}.stars{color:var(--accent)}.hform{grid-column:1/-1;padding:0 16px 16px}
@media (max-width:700px){.hcard{grid-template-columns:1fr}.hcard img,.hcard .noimg{width:100%;height:180px}.hcard .hb{padding:0 16px}.hcard .hp2{text-align:start}}
/* footer, WhatsApp, consent */
.foot{background:var(--foot-bg);color:var(--foot-ink);padding:36px 0 90px;margin-top:40px}.foot a{color:#fff}.foot h4{color:#fff;margin:0 0 8px}.foot p{font-size:14px;line-height:1.7}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:24px}@media (max-width:800px){.foot .cols{grid-template-columns:1fr}}.foot .small{opacity:.7;margin-top:12px}
.wa{position:fixed;bottom:18px;inset-inline-end:18px;background:#25D366;color:#fff;border-radius:99px;padding:10px 16px 10px 12px;display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;box-shadow:0 6px 20px rgba(0,0,0,.25);z-index:50}
@media (max-width:600px){.wa span{display:none}.wa{padding:12px}}
.consent{position:fixed;bottom:0;left:0;right:0;background:#1C2420;color:#fff;padding:10px 16px;display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;z-index:60;font-size:14px}
.consent button{background:var(--brand);color:#fff;border:0;border-radius:8px;padding:7px 16px;font:inherit;cursor:pointer}.consent button.ghost{background:transparent;border:1px solid #fff}
.consent[hidden]{display:none}
.paid{text-align:center;min-height:50vh}
.row2:has(>:only-child){grid-template-columns:1fr}.tside .book .btns{flex-direction:column}
[dir=rtl] .hero:not(.photo)::after{transform:scaleX(-1)}
