/* AlameinGo Guest Protection (public/guest-protection.js) and the footer's "Help & information" row.
   Page styles are scoped to .gp-view, the footer row to .footer-help, and the booking-box link to .gp-journey, so no
   other page changes. Brand: navy #203D4E, gold #C7A250 (accents, and text only on navy where it has enough contrast),
   background #F5F7F9, white cards. Arabic uses Cairo (the site's Arabic font); English headings use Playfair Display.
   Logical properties throughout so Arabic (RTL) and English (LTR) mirror; nothing wider than a 320px screen. */
.gp-view{
  --gp-navy:#203D4E;--gp-navy-2:#17303E;--gp-gold:#C7A250;--gp-gold-deep:#8A6B22;--gp-bg:#F5F7F9;--gp-card:#FFFFFF;
  --gp-text:#1F2D36;--gp-body:#44525C;--gp-line:#DFE5EA;--gp-soft:#EEF2F5;--gp-gold-soft:#F8F1E1;
  background:var(--gp-bg);color:var(--gp-body);overflow-x:clip;font-family:var(--body)
}
.gp-view *{box-sizing:border-box}
.gp-wrap{max-width:1200px;margin-inline:auto;padding-inline:32px}
.gp-narrow{max-width:920px}
.gp-ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
:root[dir="rtl"] .gp-view .gp-more .gp-ic{transform:scaleX(-1)}

/* type */
.gp-view h1,.gp-view h2,.gp-view h3{margin:0;color:var(--gp-text);letter-spacing:0}
.gp-view h1,.gp-view h2{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-weight:700}
:root[lang="ar"] .gp-view h1,:root[lang="ar"] .gp-view h2,:root[lang="ar"] .gp-view h3{font-family:"Cairo","Noto Sans Arabic",Tahoma,sans-serif;font-weight:700}
.gp-view h2{font-size:clamp(1.6rem,1.2rem + 1.4vw,2.25rem);line-height:1.25}
.gp-view h3{font-size:1.16rem;line-height:1.4;font-weight:700}
.gp-view p,.gp-view li,.gp-view dd{font-size:1rem;line-height:1.7}
:root[lang="ar"] .gp-view p,:root[lang="ar"] .gp-view li,:root[lang="ar"] .gp-view dd{line-height:1.9}
.gp-view a{color:var(--gp-navy)}
.gp-view a:focus-visible,.gp-view button:focus-visible,.gp-view summary:focus-visible{outline:3px solid var(--gp-gold);outline-offset:3px;border-radius:8px}

/* hero */
.gp-hero{background:radial-gradient(120% 140% at 100% 0%,#2C5267 0%,var(--gp-navy) 45%,var(--gp-navy-2) 100%);color:#E8EEF2;padding-block:72px 64px;position:relative}
.gp-hero::after{content:"";position:absolute;inset-inline:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--gp-gold),transparent)}
.gp-hero-in{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;align-items:center}
.gp-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;color:var(--gp-gold);font-weight:700;font-size:.86rem;letter-spacing:.12em;text-transform:uppercase}
:root[lang="ar"] .gp-eyebrow{letter-spacing:0;font-size:.95rem}
.gp-eyebrow .gp-ic{width:18px;height:18px}
.gp-hero h1{color:#fff;font-size:clamp(2rem,1.4rem + 2.4vw,3.25rem);line-height:1.15}
:root[lang="ar"] .gp-hero h1{line-height:1.4}
.gp-sub{color:#fff;font-size:clamp(1.08rem,1rem + .4vw,1.3rem)!important;margin:16px 0 0;font-weight:500}
.gp-intro{margin:12px 0 0;color:#C9D6DE;max-width:62ch}
.gp-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.gp-glance{list-style:none;margin:0;padding:22px;display:grid;gap:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:18px}
.gp-glance li{display:flex;gap:14px;align-items:flex-start}
.gp-glance b{display:block;color:#fff;font-size:1.02rem}
.gp-glance span{color:#C9D6DE;font-size:.95rem;line-height:1.6}
.gp-glance-ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(199,162,80,.16);color:var(--gp-gold);flex:none}

/* buttons: real links, 48px tall at least */
.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 20px;border-radius:12px;border:1.5px solid transparent;font:inherit;font-weight:700;font-size:1rem;line-height:1.3;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.gp-btn .gp-ic{width:20px;height:20px}
.gp-view a.gp-btn.is-gold{background:var(--gp-gold);color:#1B2A33;border-color:var(--gp-gold)}
.gp-view a.gp-btn.is-gold:hover{background:#D6B46A;border-color:#D6B46A}
.gp-hero a.gp-btn.is-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.gp-hero a.gp-btn.is-light:hover{background:rgba(255,255,255,.12);border-color:#fff}
.gp-help a.gp-btn.is-light{background:#fff;color:var(--gp-navy);border-color:var(--gp-line)}
.gp-help a.gp-btn.is-light:hover{border-color:var(--gp-navy);background:var(--gp-soft)}

/* jump bar */
.gp-jump{background:#fff;border-bottom:1px solid var(--gp-line)}
.gp-jump-in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-block:8px}
.gp-jump-in::-webkit-scrollbar{display:none}
.gp-jump button{flex:none;min-height:44px;padding:8px 16px;border-radius:999px;border:1px solid transparent;background:none;color:var(--gp-navy);font:inherit;font-weight:600;cursor:pointer}
.gp-jump button:hover{background:var(--gp-soft);border-color:var(--gp-line)}

/* sections */
.gp-sec{padding-block:64px;scroll-margin-top:80px}
.gp-sec:focus{outline:none}
.gp-sec-alt{background:#fff;border-block:1px solid var(--gp-line)}
.gp-sec-head{max-width:720px;margin-bottom:32px}
.gp-sec-head p{margin:10px 0 0}

/* protection cards */
.gp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.gp-card{background:var(--gp-card);border:1px solid var(--gp-line);border-radius:18px;padding:26px;display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(16,32,44,.04),0 8px 24px rgba(16,32,44,.04)}
.gp-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.gp-card-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--gp-navy);color:var(--gp-gold)}
.gp-card-ic .gp-ic{width:24px;height:24px}
.gp-card-letter{font-family:"Playfair Display",Georgia,serif;font-weight:700;font-size:1.5rem;color:var(--gp-gold-deep);opacity:.55}
:root[lang="ar"] .gp-card-letter{font-family:"Cairo","Noto Sans Arabic",sans-serif}
.gp-lede{margin:8px 0 0;color:var(--gp-text);font-weight:500}
.gp-label{margin:18px 0 6px!important;font-size:.8rem!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gp-gold-deep)}
:root[lang="ar"] .gp-label{letter-spacing:0;font-size:.9rem!important}
.gp-points{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.gp-points li{position:relative;padding-inline-start:22px}
.gp-points li::before{content:"";position:absolute;inset-inline-start:2px;top:.72em;width:8px;height:8px;border-radius:50%;background:var(--gp-gold)}
.gp-note{display:flex;gap:10px;margin-top:18px;padding:14px 16px;border-radius:12px;background:var(--gp-gold-soft);border:1px solid #EAD9AE}
.gp-note p{margin:0;font-size:.94rem!important;color:#4A3E22}
.gp-note-ic{color:var(--gp-gold-deep);padding-top:2px;flex:none;display:flex}
.gp-note-ic .gp-ic{width:20px;height:20px}
.gp-card-links{margin-top:auto;padding-top:16px;display:flex;flex-wrap:wrap;gap:6px 18px}
.gp-more{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;text-decoration:none;color:var(--gp-navy)}
.gp-more:hover{text-decoration:underline;text-underline-offset:4px}
.gp-more .gp-ic{width:18px;height:18px}

/* what happens if… */
.gp-faq{display:grid;gap:12px}
.gp-q{background:var(--gp-bg);border:1px solid var(--gp-line);border-radius:14px}
.gp-q[open]{background:#fff;border-color:#C9D3DA;box-shadow:0 8px 24px rgba(16,32,44,.06)}
.gp-q summary{list-style:none;display:flex;align-items:center;gap:14px;min-height:60px;padding:12px 18px;cursor:pointer;font-weight:700;color:var(--gp-text);font-size:1.05rem}
.gp-q summary::-webkit-details-marker{display:none}
.gp-q-n{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--gp-navy);color:var(--gp-gold);font-size:.9rem;flex:none}
.gp-q-t{flex:1}
.gp-q-chev{width:12px;height:12px;border-right:2px solid var(--gp-navy);border-bottom:2px solid var(--gp-navy);transform:rotate(45deg);margin-inline:6px;transition:transform .15s;flex:none}
.gp-q[open] .gp-q-chev{transform:rotate(225deg)}
.gp-q-body{margin:0;padding:4px 18px 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gp-q-body>div{background:var(--gp-bg);border-radius:12px;padding:14px 16px;border-inline-start:3px solid var(--gp-navy)}
.gp-q-body>div.is-limit{grid-column:1/-1;border-inline-start-color:var(--gp-gold);background:var(--gp-gold-soft)}
.gp-q-body dt{font-weight:700;color:var(--gp-navy);font-size:.92rem;margin-bottom:4px}
.gp-q-body dd{margin:0}

/* help panel */
.gp-help{background:var(--gp-navy);border-radius:22px;padding:36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:28px;align-items:center}
.gp-help h2{color:#fff}
.gp-help-copy p{color:#C9D6DE;margin:10px 0 0}
.gp-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.gp-help-grid .gp-btn{justify-content:flex-start;text-align:start}
.gp-legal{margin:22px 0 0;font-size:.92rem!important;color:var(--gp-body)}
.gp-legal a{font-weight:600;text-decoration:underline;text-underline-offset:3px}

@media (max-width:960px){
  .gp-hero-in,.gp-help{grid-template-columns:1fr}
  .gp-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .gp-wrap{padding-inline:16px}
  .gp-hero{padding-block:44px 40px}
  .gp-ctas .gp-btn{flex:1 1 100%}
  .gp-sec{padding-block:44px}
  .gp-card{padding:20px}
  .gp-q-body{grid-template-columns:1fr;padding:4px 12px 16px}
  .gp-q summary{padding:12px}
  .gp-help{padding:24px 18px;border-radius:18px}
  .gp-help-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.gp-btn,.gp-q-chev{transition:none}}

/* booking box: one quiet line under the booking buttons */
.gp-journey{display:inline-flex;align-items:center;gap:6px;min-height:40px;margin-top:6px;font-size:.86rem;font-weight:600;color:#203D4E;text-decoration:none}
.gp-journey:hover{text-decoration:underline;text-underline-offset:3px}
.gp-journey .gp-ic{width:18px;height:18px;color:#8A6B22}
.gp-journey:focus-visible{outline:3px solid #C7A250;outline-offset:2px;border-radius:6px}

/* footer: "Help & information" row, visible on every page that has the footer */
.footer-help{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 28px;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--line,#E3E8EC)}
.footer-help-title{margin:0;font-family:var(--body);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:inherit;opacity:.8}
:root[lang="ar"] .footer-help-title{letter-spacing:0;font-size:.9rem}
.footer-help-links{display:flex;flex-wrap:wrap;gap:2px 8px}
.site-footer .footer-help-links a{display:inline-flex;align-items:center;min-height:44px;padding-inline:10px;border-radius:8px;font-weight:600;text-decoration:none}
.site-footer .footer-help-links a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer .footer-help-links a:focus-visible{outline:3px solid #C7A250;outline-offset:1px}
.site-footer .footer-help-links a:first-child{margin-inline-start:-10px}
@media (max-width:640px){
  .footer-help{grid-template-columns:1fr}
  .footer-help-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px}
  .site-footer .footer-help-links a{margin-inline-start:-10px}
}
