/* =========================================================================
   Egypt Shali Travel — global-operator design language
   Clean white ground, Plus Jakarta Sans, generous air, 18px radii, soft
   layered shadows, horizontal scroll rows, and one warm brand orange.
   ========================================================================= */

:root{
  --ink:#0F1B2D;            /* headings / primary text */
  --body-c:#3D4A5C;         /* body text */
  --mute:#71809A;           /* secondary */
  --brand:#F5821F;          /* CTA orange from the logo */
  --brand-deep:#E06E0C;
  --navy:#123A5C;           /* logo blue */
  --navy-deep:#0C2A45;
  --gold:#C79A3E;
  --gold-bright:#E8C46A;
  --teal:#149A8C;
  --red:#D0452E;
  --bg:#FFFFFF;
  --soft:#F5F7FA;           /* alternating band */
  --soft-2:#EDF1F6;
  --line:#E4E9F0;
  --line-2:#D3DBE6;

  --font:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;

  --wrap:1240px;
  --gut:clamp(1rem,4vw,2.5rem);
  --r:18px;                 /* card radius */
  --r-sm:12px;
  --sh-sm:0 1px 2px rgba(15,27,45,.06),0 4px 12px -4px rgba(15,27,45,.08);
  --sh-md:0 2px 4px rgba(15,27,45,.05),0 16px 32px -12px rgba(15,27,45,.16);
  --sh-lg:0 24px 60px -20px rgba(15,27,45,.28);
  --t:.25s cubic-bezier(.3,.7,.4,1);
}
html[lang="zh"] body{--font:'Noto Sans SC','Plus Jakarta Sans',sans-serif}
html[lang="ko"] body{--font:'Noto Sans KR','Plus Jakarta Sans',sans-serif}
html[dir="rtl"] body{--font:'IBM Plex Sans Arabic','Plus Jakarta Sans',sans-serif}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--body-c);font-family:var(--font);
  font-size:16.5px;line-height:1.68;font-weight:400;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;max-width:100%}
img{max-width:100%;display:block}
a{color:var(--navy);text-decoration:none;transition:color var(--t)}
a:hover{color:var(--brand)}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}
h1,h2,h3,h4{color:var(--ink);font-weight:800;line-height:1.15;margin:0 0 .5em;letter-spacing:-.02em}
h1{font-size:clamp(2.1rem,5vw,3.6rem)}
h2{font-size:clamp(1.55rem,3.2vw,2.35rem)}
h3{font-size:clamp(1.1rem,1.8vw,1.3rem);font-weight:700;letter-spacing:-.01em}
p{margin:0 0 1.1em}
.muted{color:var(--mute)}
.wrap{width:min(100% - (var(--gut) * 2),var(--wrap));margin-inline:auto}
.wrap-flush{width:min(100%,calc(var(--wrap) + var(--gut) * 2));padding-inline:var(--gut)}
.narrow{width:min(100% - (var(--gut) * 2),820px);margin-inline:auto}
.center{text-align:center}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0;background:var(--brand);color:#fff;padding:.8rem 1.2rem;z-index:999;border-radius:0 0 var(--r-sm) 0}
.skip:focus{left:0}

.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;transform:scaleX(0);transform-origin:left;background:var(--brand);will-change:transform}
html[dir="rtl"] .scroll-progress{transform-origin:right}

/* eyebrow: small bold uppercase in brand orange, the global-site register */
.eyebrow{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:.35rem}
.eyebrow--light{color:#FFC48A}
.cartouche{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:.35rem}
.cartouche--on-dark,.cartouche--light{color:#FFC48A}
.register{display:none}
.divider{display:none}
.chip{display:inline-block;background:rgba(255,255,255,.92);color:var(--ink);font-size:.74rem;font-weight:700;padding:.35rem .8rem;border-radius:999px}

/* ------------------------------------------------------------------ buttons */
.btn{display:inline-flex;align-items:center;gap:.55rem;font-family:inherit;font-weight:700;font-size:.95rem;
  padding:.9rem 1.7rem;border:2px solid transparent;cursor:pointer;border-radius:999px;
  transition:background var(--t),color var(--t),border-color var(--t),transform var(--t),box-shadow var(--t)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn .ico{transition:transform var(--t)}
.btn:hover .ico{transform:translateX(3px)}
.btn-brand,.btn-sun,.btn-primary{background:var(--brand);color:#fff;box-shadow:0 8px 20px -8px rgba(245,130,31,.55)}
.btn-brand:hover,.btn-sun:hover,.btn-primary:hover{background:var(--brand-deep);color:#fff;box-shadow:0 12px 26px -8px rgba(245,130,31,.6)}
.btn-navy{background:var(--navy);color:#fff;box-shadow:0 8px 20px -8px rgba(18,58,92,.5)}
.btn-navy:hover{background:var(--navy-deep);color:#fff}
.btn-outline,.btn-ghost{border-color:var(--line-2);color:var(--ink);background:#fff}
.btn-outline:hover,.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}
.btn-glass,.btn-light{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(6px)}
.btn-glass:hover,.btn-light:hover{background:#fff;color:var(--ink)}
.btn-block{width:100%;justify-content:center}
.btn-sm{padding:.6rem 1.15rem;font-size:.85rem}

/* ------------------------------------------------------------------ topbar */
.topbar{background:var(--navy-deep);color:#B9C9DA;font-size:.82rem}
.topbar .wrap{display:flex;gap:1.4rem;align-items:center;justify-content:space-between;min-height:40px;flex-wrap:wrap}
.topbar a{color:#B9C9DA}
.topbar a:hover{color:#fff}
.topbar-contacts{display:flex;gap:1.3rem;align-items:center;flex-wrap:wrap}
.topbar-contacts span,.topbar-contacts a{display:inline-flex;align-items:center;gap:.45rem}
.topbar-right{display:flex;gap:1rem;align-items:center}
.social-row{display:flex;gap:.3rem}
.social-row a{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;color:#B9C9DA;transition:all var(--t)}
.social-row a:hover{background:rgba(255,255,255,.12);color:#fff}

.langpick{position:relative}
.langpick summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .75rem;border:1px solid rgba(255,255,255,.25);border-radius:999px}
.langpick summary::-webkit-details-marker{display:none}
.langpick[open] summary{background:rgba(255,255,255,.1)}
.langpick-menu{position:absolute;top:calc(100% + 10px);inset-inline-end:0;background:#fff;min-width:200px;border:1px solid var(--line);box-shadow:var(--sh-md);z-index:70;padding:.4rem;border-radius:var(--r-sm)}
.langpick-menu a{display:flex;gap:.6rem;align-items:center;padding:.6rem .85rem;color:var(--ink);font-size:.9rem;font-weight:600;border-radius:8px}
.langpick-menu a:hover{background:var(--soft)}
.langpick-menu a[aria-current]{color:var(--brand)}

/* ---------------------------------------------------------------- masthead */
.masthead{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:box-shadow var(--t)}
.masthead.is-stuck{box-shadow:var(--sh-sm)}
.masthead .wrap{display:flex;align-items:center;gap:1.4rem;min-height:78px}
.brand{display:flex;align-items:center;gap:.75rem;flex-shrink:0;max-width:52%}
.brand img{height:52px;width:auto;flex-shrink:0}
.brand-text{font-weight:800;font-size:clamp(1rem,2.2vw,1.18rem);color:var(--ink);line-height:1.15;letter-spacing:-.01em;white-space:nowrap}
.brand-text small{display:block;font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);white-space:normal;margin-top:.1rem}

.nav{margin-inline-start:auto;display:flex;align-items:center;gap:.1rem}
.nav a{position:relative;padding:.55rem .85rem;color:var(--ink);font-weight:600;font-size:.94rem;white-space:nowrap;border-radius:999px;transition:background var(--t),color var(--t)}
.nav a::after{display:none}
.nav a:hover{background:var(--soft)}
.nav a.is-current{color:var(--brand)}
.nav-cta{margin-inline-start:.7rem}
.nav-close{display:none}
.burger{display:none;margin-inline-start:auto;background:#fff;border:1px solid var(--line-2);padding:.6rem;color:var(--ink);cursor:pointer;border-radius:var(--r-sm)}

/* --------------------------------------------------------------------- hero */
.hero{position:relative;min-height:min(88vh,780px);display:flex;align-items:center;background:var(--navy-deep);color:#fff;overflow:hidden;isolation:isolate}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;background-size:cover;background-position:center;transform:scale(1.04);animation:heroPan 18s ease-out both}
.hero-slide.is-on{opacity:1}
@keyframes heroPan{from{transform:scale(1.1)}to{transform:scale(1.01)}}
.hero::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(8,20,34,.82) 0%,rgba(8,20,34,.55) 45%,rgba(8,20,34,.15) 100%),
             linear-gradient(0deg,rgba(8,20,34,.6) 0%,transparent 30%)}
.hero-inner{position:relative;z-index:2;padding:clamp(4rem,9vw,6rem) 0;max-width:720px}
.hero .eyebrow,.hero .cartouche{color:#FFC48A}
.hero h1{color:#fff;margin:.4em 0 .4em;font-size:clamp(2.3rem,5.6vw,4rem);line-height:1.08;letter-spacing:-.025em;text-shadow:0 2px 24px rgba(0,0,0,.3)}
.hero h1 em{font-style:normal;color:var(--brand)}
.hero p.lead{font-size:clamp(1.05rem,1.7vw,1.3rem);color:#E7EEF5;max-width:54ch;font-weight:400;line-height:1.6}
.hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}
.hero-motes,.hero-rays,.hero-scroll{display:none}
.hero-dots{position:absolute;z-index:3;bottom:1.8rem;inset-inline-start:var(--gut);display:flex;gap:.45rem}
.hero-dots button{width:26px;height:4px;border:0;border-radius:99px;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:all var(--t)}
.hero-dots button[aria-current="true"]{background:var(--brand);width:38px}

/* quickbar: white floating card of four services with sub-lines */
.quickbar{position:relative;z-index:5;background:#fff;box-shadow:var(--sh-lg);
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:-52px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.quickbar a{display:flex;align-items:center;gap:.9rem;padding:1.3rem 1.4rem;color:var(--ink);border-inline-end:1px solid var(--line);transition:background var(--t)}
.quickbar a:last-child{border-inline-end:0}
.quickbar a:hover{background:var(--soft)}
.quickbar a b{display:block;font-weight:700;font-size:.95rem}
.quickbar a small{display:block;color:var(--mute);font-size:.78rem;margin-top:.1rem}
.qb-ico{flex-shrink:0;width:48px;height:48px;display:grid;place-items:center;border-radius:var(--r-sm);background:#FFF1E3;color:var(--brand);transition:all var(--t)}
.quickbar a:hover .qb-ico{background:var(--brand);color:#fff}
.quickbar .ico{flex-shrink:0}

/* trust strip */
.trustbar{padding:2.6rem 0 0}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.trust-item{text-align:center;padding:.5rem 1rem}
.trust-item b{display:block;font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:800;color:var(--ink);line-height:1;margin-bottom:.35rem;letter-spacing:-.02em}
.trust-item span{font-size:.86rem;font-weight:600;color:var(--mute)}

/* ----------------------------------------------------------------- sections */
.section{padding:clamp(3.4rem,7vw,5.8rem) 0}
.section--soft,.section--tint,.section--lapis{background:var(--soft)}
.section--lapis h2{color:var(--ink)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem;flex-wrap:wrap}
.section-head--center{justify-content:center;text-align:center}
.section-head h2{margin:.15rem 0 0}
.section-head p{color:var(--mute);max-width:58ch;margin:.55rem 0 0}
.row-nav{display:flex;gap:.5rem;align-items:center}
.row-btn{width:44px;height:44px;border-radius:999px;border:1px solid var(--line-2);background:#fff;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:all var(--t)}
.row-btn:hover{border-color:var(--ink)}
.row-btn .ico{transform:rotate(90deg)}
.row-btn-next .ico{transform:rotate(-90deg)}
html[dir="rtl"] .row-btn .ico{transform:rotate(-90deg)}
html[dir="rtl"] .row-btn-next .ico{transform:rotate(90deg)}

.grid{display:grid;gap:1.5rem}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}

/* horizontal scroll rows (Airbnb-style) */
.hscroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,340px);gap:1.3rem;
  overflow-x:auto;scroll-snap-type:x mandatory;padding:.4rem .2rem 1.4rem;scrollbar-width:none}
.hscroll::-webkit-scrollbar{display:none}
.hscroll>*{scroll-snap-align:start}
.hscroll-gallery{grid-auto-columns:minmax(240px,300px)}

/* ------------------------------------------------------------------- cards */
.card{position:relative;background:#fff;display:flex;flex-direction:column;
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  box-shadow:var(--sh-sm);transition:transform var(--t),box-shadow var(--t)}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh-md)}
.card-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--soft-2)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.3,.7,.4,1)}
.card:hover .card-media img{transform:scale(1.06)}
.card-tag{position:absolute;top:.9rem;inset-inline-start:.9rem;z-index:2;
  background:rgba(255,255,255,.94);color:var(--ink);font-size:.72rem;font-weight:700;
  padding:.4rem .85rem;border-radius:999px;box-shadow:var(--sh-sm)}
.card-body{padding:1.25rem 1.35rem 1.35rem;display:flex;flex-direction:column;flex:1}
.card-body h3{margin:0 0 .4rem;font-size:1.12rem}
.card-body h3 a{color:var(--ink)}
.card-body h3 a:hover{color:var(--brand)}
.card-sum{color:var(--mute);font-size:.92rem;margin:0 0 1rem;flex:1;line-height:1.55}
.card-meta{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;font-size:.83rem;color:var(--mute);font-weight:600;margin-bottom:1rem}
.card-meta span{display:inline-flex;align-items:center;gap:.4rem}
.card-meta .ico{color:var(--brand)}
.card-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1rem;margin-top:auto}
.price{font-size:1.25rem;color:var(--ink);font-weight:800;line-height:1.1;letter-spacing:-.01em}
.price small{display:block;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.card-link{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.86rem;color:var(--brand);transition:gap var(--t)}
.card-link:hover{gap:.7rem;color:var(--brand-deep)}

/* featured program split */
.prog-split{display:grid;grid-template-columns:1.35fr 1fr;gap:1.5rem;align-items:stretch}
.prog-feature{position:relative;display:flex;align-items:flex-end;min-height:460px;border-radius:var(--r);overflow:hidden;
  background-size:cover;background-position:center;box-shadow:var(--sh-md);transition:transform var(--t),box-shadow var(--t)}
.prog-feature::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,20,34,.88),rgba(8,20,34,.15) 55%,transparent)}
.prog-feature:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}
.prog-feature-body{position:relative;z-index:1;padding:1.8rem;color:#fff;width:100%}
.prog-feature-body h3{color:#fff;font-size:1.5rem;margin:.7rem 0 .4rem}
.prog-feature-body p{color:#D9E3EC;font-size:.95rem;margin:0 0 1rem;max-width:52ch}
.prog-feature-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.prog-feature-foot .meta{display:inline-flex;align-items:center;gap:.45rem;font-size:.86rem;font-weight:600;color:#CFE0EE}
.prog-feature-foot .price{color:#fff}
.prog-feature-foot .price small{color:#B9C9DA}
.prog-side{display:grid;gap:1.5rem;grid-template-rows:1fr 1fr}
.prog-side .card-media{aspect-ratio:16/8}

/* activities */
.act{display:flex;gap:1.1rem;align-items:flex-start;background:#fff;padding:1.3rem;position:relative;
  border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-sm);transition:transform var(--t),box-shadow var(--t)}
.act:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.act-ico{flex-shrink:0;width:52px;height:52px;display:grid;place-items:center;color:var(--brand);border-radius:var(--r-sm);background:#FFF1E3;transition:all var(--t)}
.act:hover .act-ico{background:var(--brand);color:#fff}
.act h3{font-size:1.06rem;margin:.1rem 0 .3rem}
.act p{font-size:.9rem;color:var(--mute);margin:0 0 .55rem}

/* flight banner */
.flight-banner{display:grid;grid-template-columns:1.4fr .8fr;gap:2rem;align-items:center;
  background:linear-gradient(120deg,var(--navy),var(--navy-deep));border-radius:calc(var(--r) + 6px);
  padding:clamp(2rem,5vw,3.4rem);color:#fff;box-shadow:var(--sh-md);overflow:hidden;position:relative}
.flight-banner h2{color:#fff}
.flight-banner p{color:#C4D4E4;max-width:56ch}
.flight-banner .eyebrow{color:#FFC48A}
.flight-banner-text{position:relative;z-index:1}
.flight-banner-art{color:rgba(255,255,255,.14);display:grid;place-items:center;transform:rotate(-8deg)}

/* gallery cards */
.gcard{position:relative;display:flex;align-items:flex-end;aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;
  background-size:cover;background-position:center;box-shadow:var(--sh-sm);transition:transform var(--t),box-shadow var(--t)}
.gcard::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,20,34,.75),transparent 50%)}
.gcard:hover{transform:translateY(-5px);box-shadow:var(--sh-md)}
.gcard span{position:relative;z-index:1;padding:1.1rem 1.2rem;color:#fff;font-weight:700;font-size:1.02rem}

/* features */
.feats{align-items:stretch}
.feat{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;box-shadow:var(--sh-sm);transition:transform var(--t),box-shadow var(--t)}
.feat:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.feat .ico-wrap{width:50px;height:50px;display:grid;place-items:center;border-radius:var(--r-sm);background:#FFF1E3;color:var(--brand);margin-bottom:1rem;transition:all var(--t)}
.feat:hover .ico-wrap{background:var(--brand);color:#fff}
.feat h3{font-size:1.05rem;margin-bottom:.35rem}
.feat p{font-size:.9rem;color:var(--mute);margin:0}

/* CTA banner with image */
.cta-banner{position:relative;background:var(--navy-deep);background-size:cover;background-position:center;color:#fff;padding:clamp(4rem,9vw,6.5rem) 0;isolation:isolate}
.cta-banner::before{content:"";position:absolute;inset:0;background:rgba(8,20,34,.78);z-index:0}
.cta-banner-inner{position:relative;z-index:1;max-width:640px}
.cta-banner h2{color:#fff}
.cta-banner p{color:#DCE6EF}

/* --------------------------------------------------------- page hero (inner) */
.pagehead{position:relative;background:var(--navy-deep);color:#fff;padding:clamp(2.8rem,6vw,4.4rem) 0;overflow:hidden;isolation:isolate}
.pagehead::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(8,20,34,.9),rgba(8,20,34,.55))}
.pagehead::after{content:"";position:absolute;inset:0;background-size:cover;background-position:center;opacity:.85;z-index:0}
.pagehead.has-img::after{background-image:var(--head-img)}
.pagehead .wrap{position:relative;z-index:2}
.pagehead h1{color:#fff;margin:.5rem 0 .3rem}
.pagehead p{color:#CFDCE8;max-width:60ch;margin:0}
.crumbs{font-size:.8rem;font-weight:600;color:#9FB6CC;margin-bottom:.2rem}
.crumbs a{color:#9FB6CC}
.crumbs a:hover{color:#fff}

/* --------------------------------------------------------------- detail page */
.detail{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:2.4rem;align-items:start}
.detail-media{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-md);border:1px solid var(--line)}
.detail-media img{width:100%;aspect-ratio:16/9;object-fit:cover}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:.5rem;padding:.6rem}
.thumbs img{aspect-ratio:1;object-fit:cover;cursor:pointer;border:2px solid transparent;border-radius:10px;transition:all var(--t)}
.thumbs img:hover{border-color:var(--brand)}
.prose{font-size:1.02rem;line-height:1.75}
.prose h2{font-size:1.45rem;margin-top:1.8em}
.prose h3{font-size:1.18rem;margin-top:1.5em}
.prose ul,.prose ol{padding-inline-start:1.3rem}
.prose li{margin-bottom:.4em}
.prose img{margin:1.4rem 0;border-radius:var(--r-sm)}
.prose a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}

.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin:1.8rem 0}
.facts div{background:var(--soft);border-radius:var(--r-sm);padding:1rem 1.15rem}
.facts dt{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:.25rem}
.facts dd{margin:0;font-size:1.08rem;color:var(--ink);font-weight:800}

.inc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin:2rem 0}
.inc h3{font-size:1.02rem;display:flex;align-items:center;gap:.5rem;margin-bottom:.7rem}
.inc ul{list-style:none;margin:0;padding:0}
.inc li{display:flex;gap:.6rem;align-items:flex-start;font-size:.93rem;margin-bottom:.5rem}
.inc li .ico{flex-shrink:0;margin-top:.2rem}
.inc--yes li .ico{color:var(--teal)}
.inc--no li .ico{color:var(--red)}

.registers{border-top:1px solid var(--line)}
.reg{display:grid;grid-template-columns:96px minmax(0,1fr);gap:1.5rem;padding:1.7rem 0;border-bottom:1px solid var(--line)}
.reg-no{line-height:1}
.reg-no b{display:block;font-size:2.2rem;color:var(--brand);font-weight:800;letter-spacing:-.02em}
.reg-no span{font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.reg h3{font-size:1.14rem;margin-bottom:.35rem}
.reg p{margin:0;color:var(--mute)}
.reg img{margin-top:1rem;max-width:340px;border-radius:var(--r-sm)}

.panel{background:#fff;padding:1.5rem;position:sticky;top:104px;border-radius:var(--r);border:1px solid var(--line);box-shadow:var(--sh-md)}
.panel--flat{position:static}
.panel h3{font-size:1.15rem;margin-bottom:.2rem}
.panel .price{font-size:1.9rem}
.panel .hint{font-size:.84rem;color:var(--mute);margin-bottom:1.1rem}
.panel-contact{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--line);font-size:.9rem}
.panel-contact a{display:flex;align-items:center;gap:.55rem;color:var(--ink);font-weight:600;padding:.3rem 0}
.panel-contact a:hover{color:var(--brand)}

/* --------------------------------------------------------------------- forms */
.field{margin-bottom:1.05rem}
.field label{display:block;font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:.35rem}
.field input,.field select,.field textarea{width:100%;padding:.82rem 1rem;border:1.5px solid var(--line-2);background:#fff;color:var(--ink);
  font-family:inherit;font-size:.98rem;border-radius:var(--r-sm);transition:border-color var(--t),box-shadow var(--t)}
.field input::placeholder,.field textarea::placeholder{color:#A6B2C4}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(245,130,31,.14);outline:none}
.field textarea{min-height:130px;resize:vertical}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.field-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.hp{position:absolute;left:-9999px}
.radio-pills{display:flex;gap:.5rem;flex-wrap:wrap}
.radio-pills label{display:inline-flex;align-items:center;gap:.45rem;border:1.5px solid var(--line-2);padding:.55rem 1.05rem;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--ink);margin:0;border-radius:999px;transition:all var(--t)}
.radio-pills input{position:absolute;opacity:0}
.radio-pills label:has(input:checked){background:var(--navy);color:#fff;border-color:var(--navy)}
.form-note{font-size:.84rem;color:var(--mute)}
.hint{font-size:.84rem;color:var(--mute)}

.alert{padding:.9rem 1.1rem;margin-bottom:1.2rem;border-radius:var(--r-sm);font-size:.92rem;font-weight:500}
.alert-success{background:#E4F6F1;color:#0E6B5C}
.alert-error{background:#FCEBE7;color:#A33520}

.flight-form{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.7rem;box-shadow:var(--sh-md)}
.flight-swap{display:grid;grid-template-columns:1fr auto 1fr;gap:.8rem;align-items:end}
.swap-btn{background:var(--soft);border:1.5px solid var(--line-2);color:var(--ink);width:44px;height:44px;border-radius:999px;cursor:pointer;display:grid;place-items:center;margin-bottom:1.1rem;transition:all var(--t)}
.swap-btn:hover{transform:rotate(180deg);border-color:var(--brand);color:var(--brand)}

/* filters + pager */
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.8rem;align-items:center}
.filters a{padding:.5rem 1.05rem;border:1.5px solid var(--line-2);border-radius:999px;color:var(--ink);font-size:.86rem;font-weight:600}
.filters a:hover{border-color:var(--ink)}
.filters a.on{background:var(--navy);border-color:var(--navy);color:#fff}
.pager{display:flex;gap:.4rem;margin-top:2.2rem;justify-content:center}
.pager a,.pager span{min-width:40px;text-align:center;padding:.5rem .7rem;border:1.5px solid var(--line);color:var(--ink);font-weight:600;border-radius:var(--r-sm)}
.pager a:hover{border-color:var(--ink)}
.pager .on{background:var(--brand);border-color:var(--brand);color:#fff}
.empty{padding:3.5rem 1rem;text-align:center;color:var(--mute);background:var(--soft);border-radius:var(--r)}

/* gallery masonry + lightbox */
.masonry{columns:3;column-gap:1rem}
.masonry a{display:block;margin-bottom:1rem;break-inside:avoid;border-radius:var(--r-sm);overflow:hidden;position:relative;box-shadow:var(--sh-sm)}
.masonry img{width:100%;transition:transform .6s cubic-bezier(.3,.7,.4,1)}
.masonry a:hover img{transform:scale(1.05)}
.lightbox{position:fixed;inset:0;background:rgba(8,14,22,.94);display:none;place-items:center;z-index:200;padding:2rem}
.lightbox.is-on{display:grid}
.lightbox img{max-width:min(1100px,92vw);max-height:86vh;object-fit:contain;border-radius:var(--r-sm)}
.lightbox button{position:absolute;top:1.2rem;inset-inline-end:1.4rem;background:none;border:0;color:#fff;cursor:pointer}

/* ------------------------------------------------------------------- footer */
.footer{background:var(--navy-deep);color:#AFC2D4;position:relative;overflow:hidden}
.footer-rays{display:none}
.footer-top{position:relative;z-index:1;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2.4rem;padding:clamp(2.8rem,6vw,4.4rem) 0 2.6rem}
.footer h4{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin:0 0 1.15rem}
.footer a{color:#AFC2D4}
.footer a:hover{color:#fff}
.footer ul{list-style:none;margin:0;padding:0}
.footer li{margin-bottom:.55rem}
.footer .brand-text{color:#fff}
.footer .brand-text small{color:#FFC48A}
.footer-brand img{height:56px;margin-bottom:1rem;background:#fff;padding:.45rem;border-radius:var(--r-sm)}
.footer-contact li{display:flex;gap:.6rem;align-items:flex-start}
.footer-contact .ico{color:var(--brand);flex-shrink:0;margin-top:.2rem}
.footer .social-row{margin-top:1rem}
.footer .social-row a{border:1px solid rgba(255,255,255,.2)}
.footer-bottom{position:relative;z-index:1;border-top:1px solid rgba(255,255,255,.12);padding:1.2rem 0;font-size:.82rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}

.wa-float{position:fixed;inset-inline-end:1.1rem;bottom:1.1rem;z-index:90;width:56px;height:56px;border-radius:999px;
  display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:0 10px 28px -8px rgba(37,211,102,.55);transition:transform var(--t)}
.wa-float:hover{color:#fff;transform:translateY(-3px) scale(1.05)}

/* coming soon */
.soon{min-height:100vh;display:grid;place-items:center;background:var(--navy-deep);color:#fff;text-align:center;padding:2rem}
.soon-rays{display:none}
.soon-inner{position:relative;z-index:1;max-width:600px}
.soon-inner img{height:100px;margin:0 auto 1.5rem;background:#fff;padding:.6rem;border-radius:var(--r-sm)}
.soon-inner h1{color:#fff}
.soon-inner p{color:#C4D4E4}
.soon .contacts{display:flex;gap:1.4rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem;font-size:.92rem}
.soon .contacts a{display:inline-flex;align-items:center;gap:.5rem;color:#DCE6EF}
.soon .contacts a:hover{color:#fff}

/* ------------------------------------------------------------- animation */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s cubic-bezier(.3,.7,.4,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-in{opacity:1;transform:none}
@keyframes riseIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.hero-inner>*{animation:riseIn .7s cubic-bezier(.3,.7,.4,1) both}
.hero-inner>*:nth-child(2){animation-delay:.08s}
.hero-inner>*:nth-child(3){animation-delay:.16s}
.hero-inner>*:nth-child(4){animation-delay:.24s}

/* ------------------------------------------------------------- responsive */

/* ============================================================ Cruises + Hotels
   بطاقات النجوم وشبكة المرافق للقسمين الجديدين.                                */
.card-stars{display:inline-flex;gap:2px;align-items:center;color:var(--gold);background:rgba(255,255,255,.95)}
.card-stars .ico{color:var(--gold)}
.stars-dd{display:inline-flex;gap:2px;color:var(--gold)}
.stars-dd .ico{color:var(--gold)}
.amenity-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1.4rem}
.amenity-grid li{display:flex;gap:.55rem;align-items:flex-start;font-size:.94rem;color:var(--body-c)}
.amenity-grid li .ico{color:var(--teal);flex-shrink:0;margin-top:.2rem}
.pill-info{background:#E8F0FB;color:#1B4B7E}

/* ========================================================= PHARAONIC LAYER
   طبقة فرعونية غنية: رسومات هندسية ورموز ومعالم جنب الكروت وكخلفيات.
   كل الرسومات SVG مضمّنة — مفيش صور خارجية.
   ========================================================================= */

:root{
  --papyrus:#FBF6EC;
  --papyrus-2:#F6EEDD;
  --gold-2:#B8862B;
  --gold-line:rgba(199,154,62,.5);
  --hiero:rgba(199,154,62,.9);
}

/* ---------- إفريز فرعوني متكرر (يُستخدم في الهيدر/الهيرو/الفوتر/الأقسام) ---- */
/* شريط رموز متتابعة: عنخ · عين · جعران · لوتس */
:root{
  --frieze:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='34' viewBox='0 0 240 34' fill='none' stroke='%23C79A3E' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg%3E%3Cellipse cx='24' cy='11' rx='5' ry='6.5'/%3E%3Cline x1='24' y1='17' x2='24' y2='30'/%3E%3Cline x1='17' y1='21' x2='31' y2='21'/%3E%3Cpath d='M50 15c6-5 14-4 19 1M56 15a4 4 0 108 0'/%3E%3Cellipse cx='96' cy='16' rx='6' ry='8'/%3E%3Cpath d='M96 8v-3M90 11l-4-3M102 11l4-3'/%3E%3Cline x1='96' y1='9' x2='96' y2='28'/%3E%3Cpath d='M128 30V17M124 17c0-5 8-5 8 0M122 17h12M126 17c0-4 4-4 4 0'/%3E%3Cellipse cx='168' cy='11' rx='5' ry='6.5'/%3E%3Cline x1='168' y1='17' x2='168' y2='30'/%3E%3Cline x1='161' y1='21' x2='175' y2='21'/%3E%3Cpath d='M194 15c6-5 14-4 19 1M200 15a4 4 0 108 0'/%3E%3C/g%3E%3C/svg%3E");
}
.frieze,.pharaoh-frieze{height:34px;background:var(--frieze) repeat-x center/240px 34px;opacity:.55}

/* خلفية بردية منقوشة رقيقة للموقع كله */
body{
  background-color:var(--bg);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='%23C79A3E' stroke-width='1' opacity='0.045'%3E%3Cellipse cx='24' cy='20' rx='6' ry='8'/%3E%3Cline x1='24' y1='28' x2='24' y2='42'/%3E%3Cline x1='17' y1='33' x2='31' y2='33'/%3E%3Ccircle cx='72' cy='24' r='6'/%3E%3Cpath d='M62 34c4-8 16-8 20 0'/%3E%3Cpath d='M108 14l14 24h-28z'/%3E%3Cpath d='M108 14v24'/%3E%3Cpath d='M30 74v18M24 78h12'/%3E%3Cellipse cx='74' cy='80' rx='7' ry='9'/%3E%3Cline x1='74' y1='71' x2='74' y2='98'/%3E%3Cpath d='M100 104c10 6 22 6 32 0'/%3E%3Cpath d='M106 104l1-5h18l1 5'/%3E%3Cline x1='116' y1='99' x2='116' y2='86'/%3E%3Cpath d='M28 116c4-8 16-8 20 0'/%3E%3Ccircle cx='74' cy='120' r='6'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:repeat;background-size:280px 280px;
}

/* ---------- eyebrow كارتوش ذهبي ---------- */
.eyebrow,.cartouche{position:relative;padding:.3rem 1rem .55rem;display:inline-block}
.eyebrow::before,.cartouche::before{content:"";position:absolute;inset:0 0 .3rem 0;border:1px solid var(--gold-line);border-radius:999px;opacity:.55}
.eyebrow::after,.cartouche::after{content:"";position:absolute;inset-inline-start:50%;transform:translateX(-50%);bottom:0;width:70px;height:20px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 20' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 10h66' stroke-dasharray='3 3'/%3E%3Cpath d='M35 4l4 6-4 6-4-6z' fill='%23C79A3E' stroke='none'/%3E%3C/svg%3E") no-repeat center/70px 20px;opacity:.9}
.eyebrow--light::before{border-color:rgba(232,196,106,.6)}

/* ---------- فاصل كارتوش وسط الأقسام ---------- */
.pharaoh-rule{display:flex;align-items:center;justify-content:center;gap:1rem;margin:.9rem 0 0}
.pharaoh-rule::before,.pharaoh-rule::after{content:"";height:2px;width:min(160px,24vw);background:linear-gradient(90deg,transparent,var(--gold))}
.pharaoh-rule::after{background:linear-gradient(90deg,var(--gold),transparent)}
.pharaoh-rule i{position:relative;width:34px;height:34px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='16' rx='9' ry='11'/%3E%3Cline x1='30' y1='27' x2='30' y2='52'/%3E%3Cline x1='18' y1='34' x2='42' y2='34'/%3E%3C/svg%3E") no-repeat center/contain;transform:none;opacity:.85}
.pharaoh-rule i:nth-child(2){width:40px;height:40px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='22' r='6.5' fill='%23C79A3E' stroke='none'/%3E%3Cpath d='M23 24C14 24 6 28 2 32M37 24C46 24 54 28 58 32'/%3E%3Cpath d='M24 27C17 28 11 31 7 35M36 27C43 28 49 31 53 35'/%3E%3C/svg%3E") no-repeat center/contain;opacity:1}
.pharaoh-rule i:nth-child(3){background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M30 50V32M30 32C30 22 22 14 14 14C14 26 20 32 30 34C40 32 46 26 46 14C38 14 30 22 30 32Z'/%3E%3Cpath d='M30 34C26 30 20 30 16 34M30 34C34 30 40 30 44 34'/%3E%3C/svg%3E") no-repeat center/contain}
.pharaoh-rule i:first-child{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='34' rx='11' ry='14'/%3E%3Cpath d='M30 20v-6M22 23l-6-5M38 23l6-5'/%3E%3Cpath d='M19 31l-8-3M41 31l8-3M19 40l-8 4M41 40l8 4'/%3E%3Cline x1='30' y1='21' x2='30' y2='48'/%3E%3C/svg%3E") no-repeat center/contain}

/* ---------- الهيدر: إفريز ذهبي أسفل الماستهيد ---------- */
.masthead{border-bottom:2px solid var(--gold-line)}

/* ---------- الهيرو: إفريز سفلي + قرص شمس مجنّح خلفي ---------- */
.hero{border-bottom:3px solid var(--gold)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30px;z-index:3;
  background:var(--frieze) repeat-x center/260px 30px;opacity:.7}
.hero-rays{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23E8C46A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='22' r='6.5' fill='%23C79A3E' stroke='none'/%3E%3Cpath d='M23 24C14 24 6 28 2 32M37 24C46 24 54 28 58 32'/%3E%3Cpath d='M24 27C17 28 11 31 7 35M36 27C43 28 49 31 53 35'/%3E%3C/svg%3E") no-repeat center/contain !important;opacity:.12 !important}
.hero-inner::before{content:"";display:block;width:56px;height:56px;margin-bottom:1rem;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23E8C46A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='16' rx='9' ry='11'/%3E%3Cline x1='30' y1='27' x2='30' y2='52'/%3E%3Cline x1='18' y1='34' x2='42' y2='34'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.9}

/* ================= رسومات جنب الكروت (كل نوع برمز مختلف) ================= */
.card{border:1px solid var(--gold-line);position:relative;overflow:hidden}
.card::after{opacity:1;background:linear-gradient(90deg,var(--gold),var(--gold-bright) 50%,var(--gold));z-index:5}
/* الرسمة الفرعونية جنب/أعلى كل كارت */
.card-media::after{content:"";position:absolute;bottom:12px;inset-inline-end:12px;width:46px;height:46px;z-index:4;
  background-color:rgba(251,246,236,.97);border:1.5px solid var(--gold);border-radius:999px;
  background-repeat:no-repeat;background-position:center;background-size:27px 27px;
  box-shadow:0 4px 12px -3px rgba(15,27,45,.4);pointer-events:none}
/* رمز افتراضي: عنخ */
.card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='16' rx='9' ry='11'/%3E%3Cline x1='30' y1='27' x2='30' y2='52'/%3E%3Cline x1='18' y1='34' x2='42' y2='34'/%3E%3C/svg%3E")}

/* رموز مخصّصة حسب نوع البطاقة (نستهدف partial المختلفة عبر حاويات الأقسام) */
.card-tour .card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='22' r='6.5' fill='%23C79A3E' stroke='none'/%3E%3Cpath d='M23 24C14 24 6 28 2 32M37 24C46 24 54 28 58 32'/%3E%3Cpath d='M24 27C17 28 11 31 7 35M36 27C43 28 49 31 53 35'/%3E%3C/svg%3E")}
.card-program .card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M30 12L50 46H10Z'/%3E%3Cpath d='M30 12V46M30 46L19 34M30 46L41 34M19 34h22'/%3E%3C/svg%3E")}
.card-cruise .card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 40C18 47 42 47 52 40'/%3E%3Cpath d='M13 40L15 32H45L47 40'/%3E%3Cline x1='30' y1='32' x2='30' y2='14'/%3E%3Cpath d='M30 16L43 25H30Z' fill='%23C79A3E' stroke='none'/%3E%3C/svg%3E")}
.card-hotel .card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 50V24M37 50V24M21 24C21 17 39 17 39 24M19 24h22M25 24C25 15 35 15 35 24'/%3E%3Cpath d='M21 50h18'/%3E%3Cpath d='M27 24v26M33 24v26M30 24v26'/%3E%3C/svg%3E")}
.card-activity .card-media::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='34' rx='11' ry='14'/%3E%3Cpath d='M30 20v-6M22 23l-6-5M38 23l6-5'/%3E%3Cpath d='M19 31l-8-3M41 31l8-3M19 40l-8 4M41 40l8 4'/%3E%3Cline x1='30' y1='21' x2='30' y2='48'/%3E%3C/svg%3E")}

/* أركان زخرفية على صورة الكارت */
.card-media::before{content:"";position:absolute;top:.5rem;inset-inline-start:.5rem;width:20px;height:20px;z-index:3;
  border-top:2px solid var(--gold-bright);border-inline-start:2px solid var(--gold-bright);opacity:.9}

/* ================= خلفيات فرعونية كبيرة في الأقسام ================= */
.section{position:relative}
.section--soft,.section--tint,.section--lapis{background:var(--papyrus)}
/* هرم كبير خلفي شفاف في زاوية القسم */
.section::after{content:"";position:absolute;bottom:0;inset-inline-end:0;width:min(340px,40vw);height:min(340px,40vw);z-index:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M30 12L50 46H10Z'/%3E%3Cpath d='M30 12V46M30 46L19 34M30 46L41 34M19 34h22'/%3E%3C/svg%3E") no-repeat bottom right/contain;opacity:.05}
.section .wrap{position:relative;z-index:1}
/* قسم متبادل: مركب النيل بدل الهرم */
.section--soft::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 40C18 47 42 47 52 40'/%3E%3Cpath d='M13 40L15 32H45L47 40'/%3E%3Cline x1='30' y1='32' x2='30' y2='14'/%3E%3Cpath d='M30 16L43 25H30Z' fill='%23C79A3E' stroke='none'/%3E%3C/svg%3E");opacity:.05}
#cruises::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 40C18 47 42 47 52 40'/%3E%3Cpath d='M13 40L15 32H45L47 40'/%3E%3Cline x1='30' y1='32' x2='30' y2='14'/%3E%3Cpath d='M30 16L43 25H30Z' fill='%23C79A3E' stroke='none'/%3E%3C/svg%3E");opacity:.06}
#hotels::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 50V24M37 50V24M21 24C21 17 39 17 39 24M19 24h22M25 24C25 15 35 15 35 24'/%3E%3Cpath d='M21 50h18'/%3E%3Cpath d='M27 24v26M33 24v26M30 24v26'/%3E%3C/svg%3E");opacity:.06}

/* شريط إفريز أعلى الأقسام الملوّنة */
.section--soft::before,.section--tint::before,.section--lapis::before{content:"";position:absolute;top:0;left:0;right:0;height:20px;z-index:1;
  background:var(--frieze) repeat-x center/220px 20px;opacity:.4}

/* ================= شريط الثقة: أعمدة معبد ================= */
.trustbar{background:linear-gradient(180deg,var(--papyrus),var(--papyrus-2));border-block:2px solid var(--gold-line);position:relative}
.trustbar::before{content:"";position:absolute;top:0;left:0;right:0;height:20px;background:var(--frieze) repeat-x center/220px 20px;opacity:.45}
.trust-item{position:relative}
.trust-item+.trust-item::before{content:"";position:absolute;inset-inline-start:0;top:10%;bottom:10%;width:26px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M23 50V24M37 50V24M21 24C21 17 39 17 39 24M19 24h22M25 24C25 15 35 15 35 24'/%3E%3Cpath d='M21 50h18'/%3E%3Cpath d='M27 24v26M33 24v26M30 24v26'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.25}
.trust-item b{color:var(--gold-2)!important}

/* ================= الأيقونات الدائرية: قرص شمس ================= */
.qb-ico,.act-ico,.feat .ico-wrap{position:relative;
  background:radial-gradient(circle at 32% 28%,#FFF6E6,#FDEBCF)!important;color:var(--gold-2)!important;border:1px solid var(--gold-line)}
.qb-ico::after,.act-ico::after,.feat .ico-wrap::after{content:"";position:absolute;inset:-5px;border-radius:inherit;border:1px solid var(--gold-line);opacity:.55;transition:opacity var(--t),inset var(--t)}
.quickbar a:hover .qb-ico,.act:hover .act-ico,.feat:hover .ico-wrap{background:var(--gold)!important;color:#1A1206!important}
.quickbar a:hover .qb-ico::after,.act:hover .act-ico::after,.feat:hover .ico-wrap::after{opacity:1;inset:-7px}

/* ================= الفوتر: إفريز علوي + عنخ ================= */
.footer{border-top:3px solid var(--gold);position:relative}
.footer::before{content:"";position:absolute;top:0;left:0;right:0;height:26px;z-index:2;background:var(--frieze) repeat-x center/240px 26px;opacity:.5}
.footer h4{position:relative;padding-inline-start:1.3rem}
.footer h4::before{content:"";position:absolute;inset-inline-start:0;top:50%;width:16px;height:16px;transform:translateY(-50%);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23E8C46A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='16' rx='9' ry='11'/%3E%3Cline x1='30' y1='27' x2='30' y2='52'/%3E%3Cline x1='18' y1='34' x2='42' y2='34'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.8}

/* ================= صفحة التفاصيل ================= */
.pagehead{border-bottom:3px solid var(--gold);position:relative}
.pagehead-frieze{position:absolute;left:0;right:0;bottom:0;height:22px;z-index:4;background:var(--frieze) repeat-x center/220px 22px;opacity:.6;pointer-events:none}
.pagehead::before{background:linear-gradient(100deg,rgba(8,20,34,.82),rgba(8,20,34,.42))}
.panel{border:1px solid var(--gold-line);border-top:3px solid var(--gold);position:relative}
.panel::before{content:"";display:block;width:40px;height:40px;margin:0 auto 1rem;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='30' cy='16' rx='9' ry='11'/%3E%3Cline x1='30' y1='27' x2='30' y2='52'/%3E%3Cline x1='18' y1='34' x2='42' y2='34'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.85}
.facts div{border-inline-start:2px solid var(--gold-line)}
.facts dd{color:var(--gold-2)}
.reg-no b{color:var(--gold-2)!important}
.reg{position:relative;padding-inline-start:1.4rem}
.reg::before{content:"";position:absolute;inset-inline-start:2px;top:.2rem;width:20px;height:20px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60' fill='none' stroke='%23C79A3E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='30' cy='22' r='6.5' fill='%23C79A3E' stroke='none'/%3E%3Cpath d='M23 24C14 24 6 28 2 32M37 24C46 24 54 28 58 32'/%3E%3Cpath d='M24 27C17 28 11 31 7 35M36 27C43 28 49 31 53 35'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.4}

/* ================= CTA banner ================= */
.cta-banner{border-block:3px solid var(--gold)}
.cta-banner::after{content:"";position:absolute;top:0;left:0;right:0;height:24px;z-index:1;background:var(--frieze) repeat-x center/240px 24px;opacity:.6}

/* أزرار البراند: بريق ذهبي */
.btn-brand::before,.btn-sun::before,.btn-primary::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold-bright),transparent);opacity:.9}
.btn-brand,.btn-sun,.btn-primary{position:relative;overflow:hidden}

/* ===================================================== Cruise categories
   بطاقات التصنيفات الثلاثة في صفحة Nile Cruises الرئيسية.                */
.cat-grid{gap:1.8rem}
.cat-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gold-line,rgba(199,154,62,.5));
  border-radius:var(--r,18px);overflow:hidden;box-shadow:var(--sh-sm);transition:transform var(--t),box-shadow var(--t);position:relative}
.cat-card:hover{transform:translateY(-6px);box-shadow:var(--sh-md)}
.cat-card::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:2;
  background:linear-gradient(90deg,var(--gold,#C79A3E),var(--gold-bright,#E8C46A) 50%,var(--gold,#C79A3E))}
.cat-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--navy-deep,#0C2A45)}
.cat-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.3,.7,.4,1)}
.cat-card:hover .cat-card-media img{transform:scale(1.06)}
.cat-card-media::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(to top,rgba(8,20,34,.78),rgba(8,20,34,.15) 55%,transparent)}
.cat-card-ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(232,196,106,.5)}
.cat-card-body{padding:1.4rem 1.5rem 1.6rem;display:flex;flex-direction:column;gap:.5rem;position:relative}
.cat-card-body h3{margin:0;font-size:1.3rem;color:var(--ink,#0F1B2D)}
.cat-count{font-size:.86rem;font-weight:700;color:var(--gold-2,#B8862B)}
.cat-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.4rem;font-weight:700;font-size:.86rem;
  color:var(--brand,#F5821F);transition:gap var(--t)}
.cat-card:hover .cat-link{gap:.75rem}

@media (max-width:1080px){
  .burger{display:grid}
  .nav{position:fixed;inset:0;width:100%;background:#fff;flex-direction:column;align-items:stretch;justify-content:flex-start;
    gap:.1rem;padding:5.2rem 1.4rem 2rem;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;z-index:80;overflow-y:auto}
  .nav.is-open{opacity:1;visibility:visible}
  .nav a{padding:1rem .6rem;border-bottom:1px solid var(--line);font-size:1.1rem;font-weight:700;border-radius:0;color:var(--ink)}
  .nav a:hover{background:none;color:var(--brand)}
  .nav-cta{margin:1.4rem 0 0;border-radius:999px !important;justify-content:center}
  .nav-close{display:grid;position:absolute;top:1.2rem;inset-inline-end:1.2rem;background:var(--soft);border:0;border-radius:999px;width:44px;height:44px;place-items:center;color:var(--ink);cursor:pointer;z-index:81}
  .topbar-contacts{display:none}
}
@media (max-width:1024px){
  .detail{grid-template-columns:1fr}
  .panel{position:static}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr 1fr}
  .quickbar{grid-template-columns:1fr 1fr}
  .quickbar a:nth-child(2){border-inline-end:0}
  .masonry{columns:2}
  .prog-split{grid-template-columns:1fr}
  .prog-feature{min-height:380px}
  .prog-side{grid-template-rows:none;grid-template-columns:1fr 1fr}
  .flight-banner{grid-template-columns:1fr}
  .flight-banner-art{display:none}
}
@media (max-width:820px){
  body{font-size:16px}
  .grid-3,.grid-2{grid-template-columns:1fr}
  .inc-grid{grid-template-columns:1fr}
  .reg{grid-template-columns:1fr;gap:.5rem}
  .reg-no{display:flex;align-items:baseline;gap:.6rem}
  .reg-no b{font-size:1.5rem}
  .flight-swap{grid-template-columns:1fr}
  .swap-btn{display:none}
  .hero{min-height:auto}
  .hero-inner{padding:clamp(3.6rem,13vw,5rem) 0 clamp(4.2rem,12vw,5.6rem)}
  .prog-side{grid-template-columns:1fr}
  .row-nav .row-btn{display:none}
  .hscroll{grid-auto-columns:minmax(270px,300px)}
  .section-head{margin-bottom:1.6rem}
}
@media (max-width:560px){
  .grid-4{grid-template-columns:1fr}
  .trust-grid{grid-template-columns:1fr 1fr;gap:1.4rem .6rem}
  .quickbar{grid-template-columns:1fr;margin-top:-30px}
  .quickbar a{border-inline-end:0;border-bottom:1px solid var(--line)}
  .quickbar a:last-child{border-bottom:0}
  .field-row,.field-row-3{grid-template-columns:1fr}
  .footer-top{grid-template-columns:1fr}
  .masonry{columns:1}
  .facts{grid-template-columns:1fr 1fr}
  .brand img{height:42px}
  .brand-text{font-size:.95rem}
  .brand-text small{display:none}
  .hero-actions .btn{width:100%;justify-content:center}
  /* تخفيف الزخارف الفرعونية على الموبايل عشان النظافة */
  body{background-size:auto,220px 220px}
  .hero::after,.section--soft::before,.section--tint::before,.section--lapis::before,
  .section--soft::after,.footer::before,.cta-banner::after,.trustbar::before{height:3px}
  .card-media::before{width:16px;height:16px}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .reveal{opacity:1;transform:none}
  .scroll-progress{display:none}
}
@media print{
  .masthead,.topbar,.footer,.wa-float,.panel,.hero-dots,.scroll-progress{display:none}
  body{background:#fff}
}