/* Swissulife Education — The Route, Passport Burgundy. Single committed light look: paper ground, burgundy bands, sky blue for the route's start and one action per screen. */
:root{
  --burgundy:#6E1E2C; --burgundy-2:#84303F; --sand:#EFE6D6; --paper:#FAF7F1; --sky:#7FB2E5; --sky-deep:#2F6DAE;
  --ink:#241417; --muted:#6E5F5A; --line:#E3D8C6; --card:#FFFFFF; --wa:#1F7A4D;
  --display:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --arabic:'Readex Pro','Geeza Pro','Noto Sans Arabic',Tahoma,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
  --radius:16px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--display);font-size:17px;line-height:1.55}
html.ar body{font-family:var(--arabic);font-size:17px;line-height:1.75}
html.en .ar, html.ar .en{display:none!important}
img,svg{max-width:100%}
a{color:var(--sky-deep)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--sky);outline-offset:2px}
.skip{position:absolute;top:8px;inset-inline-start:max(16px, env(safe-area-inset-left, 0px));background:var(--burgundy);color:var(--paper);padding:10px 14px;border-radius:8px;z-index:50;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.skip:focus{clip-path:none;width:auto;height:auto;overflow:visible}

.band{padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px));padding-block:80px}
.band.dark{background:var(--burgundy);color:var(--paper)}
.band.ice{background:var(--sand);color:var(--burgundy)}
.band.tight{padding-block:56px}
.wrap{max-width:1160px;margin:0 auto;display:flex;flex-direction:column;gap:36px}
h1,h2,h3{margin:0;font-weight:800;letter-spacing:-.025em;line-height:1.06;text-wrap:balance}
html.ar h1,html.ar h2,html.ar h3{letter-spacing:0;line-height:1.3;font-weight:700}
h1{font-size:clamp(40px,6.4vw,78px)}
h2{font-size:clamp(30px,4.4vw,52px)}
h3{font-size:22px;letter-spacing:-.01em}
p{margin:0;max-width:62ch}
.lede{font-size:clamp(18px,2vw,21px);color:var(--muted)}
.dark .lede{color:var(--sand)}
.ice .lede{color:var(--burgundy)}
.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:12px}
html.ar .eyebrow{font-family:var(--arabic);letter-spacing:0;font-size:15px}
.dark .eyebrow{color:var(--sand)}
.ice .eyebrow{color:var(--burgundy)}
.eyebrow .pin{width:10px;height:10px;border-radius:50%;background:var(--sky);flex:none}
.eyebrow .trail{width:80px;border-top:2px dotted currentColor;opacity:.6}
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.head-row > div{display:flex;flex-direction:column;gap:16px;min-width:0}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;font:inherit;font-weight:700;font-size:16px;text-decoration:none;cursor:pointer;border:2px solid transparent;transition:transform .15s ease, background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--sky);color:var(--ink)}
.btn.primary:hover{background:#9CC4EC}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}
.btn.solid{background:var(--burgundy);color:var(--paper)}
.btn.wa{background:var(--wa);color:#fff}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.arrow{display:inline-block;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor}
html.ar .arrow{border-left:0;border-right:9px solid currentColor}

/* header */
.site-head{position:sticky;top:env(safe-area-inset-top, 0px);z-index:20;background:rgba(250,247,241,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px))}
.site-head .bar{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;flex-wrap:wrap;padding-block:10px}
.logo{display:flex;align-items:center;text-decoration:none}
.logo img{height:46px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;padding:10px 12px;border-radius:999px}
.nav a:hover,.nav a[aria-current="page"]{background:var(--sand);color:var(--burgundy)}
.nav .lang{font-family:var(--arabic);border:1px solid var(--line)}
html.ar .nav .lang{font-family:var(--display)}
.nav .btn{min-height:42px;padding:8px 16px;font-size:15px}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:999px;min-height:44px;padding:0 16px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}
@media (max-width:900px){
  .logo img{height:40px}
  .menu-btn{display:inline-flex;align-items:center}
  .nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding-bottom:12px}
  .nav.open{display:flex}
  .nav a{padding:14px 12px}
  .logo img{height:38px}
}

/* hero */
.hero{padding-block:72px 88px}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:center}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}}
.hero-copy{display:flex;flex-direction:column;gap:24px;min-width:0}
.hero h1 .accent{color:var(--sand)}

/* boarding pass */
.pass{background:var(--paper);color:var(--burgundy);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:18px;position:relative;box-shadow:0 24px 48px -28px rgba(0,0,0,.55)}
.pass::before,.pass::after{content:"";position:absolute;width:26px;height:26px;border-radius:50%;background:var(--burgundy);top:calc(62% - 13px)}
.pass::before{left:-13px}.pass::after{right:-13px}
.pass .top{display:flex;justify-content:space-between;font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--muted)}
.pass .legs{display:flex;align-items:center;gap:14px;direction:ltr}
.pass .code{font-family:var(--display);font-size:clamp(40px,5vw,56px);font-weight:800;line-height:1;letter-spacing:-.02em}
.pass .city{font-family:var(--mono);font-size:12px;color:var(--muted)}
.pass .route{flex:1;height:6px;position:relative}
.pass .route svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pass .tear{border-top:2px dashed var(--line);margin-inline:-8px}
.pass .rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pass .rows div{display:flex;flex-direction:column;gap:2px;min-width:0}
.pass .rows span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--muted)}
.pass .rows b{font-size:15px}
html.ar .pass .rows span{font-family:var(--arabic);letter-spacing:0;font-size:12px}
.stamp{position:absolute;right:28px;bottom:-104px;width:112px;height:112px;border-radius:50%;border:3px solid var(--sky);color:var(--sky-deep);background:rgba(250,247,241,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-12deg);font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-align:center;line-height:1.3}
.stamp b{font-family:var(--display);font-size:17px;letter-spacing:0;line-height:1.1}
html.ar .stamp{right:auto;left:28px;font-family:var(--arabic);letter-spacing:0;font-size:11px}
html.ar .stamp b{font-family:var(--arabic)}
@media (prefers-reduced-motion:no-preference){
  .route-walk{stroke-dasharray:1 11;animation:walk 3.2s linear infinite}
  @keyframes walk{to{stroke-dashoffset:-48}}
}

/* pillars on a route */
.route-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px dotted var(--burgundy)}
@media (max-width:900px){.route-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.route-list{grid-template-columns:1fr;border-top:0;border-inline-start:2px dotted var(--burgundy);padding-inline-start:20px;gap:24px}}
.route-list li{position:relative;padding:24px 20px 0 0;display:flex;flex-direction:column;gap:8px;min-width:0}
html.ar .route-list li{padding:24px 0 0 20px}
.route-list li::before{content:"";position:absolute;top:-8px;inset-inline-start:0;width:14px;height:14px;border-radius:50%;background:var(--burgundy)}
.route-list li:last-child::before{background:var(--sky)}
@media (max-width:560px){.route-list li{padding:0!important}.route-list li::before{top:6px;inset-inline-start:-28px}}

/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;counter-reset:s}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}
.steps li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.steps .num{font-family:var(--mono);font-size:13px;letter-spacing:.12em;color:var(--sky-deep)}
.steps .when{font-family:var(--mono);font-size:12px;color:var(--muted);margin-top:auto}
html.ar .steps .num,html.ar .steps .when{font-family:var(--arabic);letter-spacing:0}

/* checker */
.checker{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:start}
@media (max-width:900px){.checker{grid-template-columns:1fr}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:18px;min-width:0}
.field{display:flex;flex-direction:column;gap:8px}
.field > span,.field legend{font-weight:700;font-size:15px}
fieldset{border:0;margin:0;padding:0;min-width:0}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{position:relative}
.opts input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opts label > span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:999px;background:var(--sand);color:var(--burgundy);font-weight:600;font-size:15px;border:2px solid transparent}
.opts input:checked + span{background:var(--burgundy);color:var(--paper)}
.opts input:focus-visible + span{outline:3px solid var(--sky);outline-offset:2px}
select,input[type=text],input[type=tel],input[type=email],textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:12px;min-height:48px;padding:10px 14px;width:100%}
textarea{min-height:96px;resize:vertical}
.result{background:var(--burgundy);color:var(--paper);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:16px;min-width:0}
.result h3{color:var(--paper)}
.result .rule{display:flex;flex-direction:column;gap:6px;padding-top:14px;border-top:2px dotted rgba(239,230,214,.4)}
.result .rule b{color:var(--sand);font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
html.ar .result .rule b{font-family:var(--arabic);letter-spacing:0;font-size:14px}
.result p{color:#F4ECE6}
.result .fine{font-size:13px;color:var(--sand)}
.result a{color:var(--sand)}

/* destinations */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips a,.chips span{display:inline-flex;align-items:center;min-height:44px;padding:8px 18px;border-radius:999px;background:var(--sand);color:var(--burgundy);font-weight:600;text-decoration:none}
.chips .on{background:var(--burgundy);color:var(--paper)}
.dest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
@media (max-width:800px){.dest-grid{grid-template-columns:1fr}}
.dest{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:14px;min-width:0}
.dest.sig{background:var(--burgundy);color:var(--paper);border-color:var(--burgundy);grid-column:1 / -1}
.dest .codes{font-family:var(--mono);font-size:13px;letter-spacing:.12em;color:var(--sky-deep);direction:ltr;text-align:start}
.dest.sig .codes{color:var(--sky)}
.dest ul{margin:0;padding-inline-start:20px;display:flex;flex-direction:column;gap:6px}
.dest.sig p,.dest.sig li{color:#F4ECE6}

/* packages */
.pkg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1060px){.pkg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.pkg-grid{grid-template-columns:1fr}}
.pkg{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:14px;min-width:0}
.pkg.feature{background:var(--burgundy);color:var(--paper);border-color:var(--burgundy)}
.pkg .tier{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
html.ar .pkg .tier{font-family:var(--arabic);letter-spacing:0;font-size:14px}
.pkg.feature .tier{color:var(--sand)}
.pkg .price{font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}
.pkg .price small{font-size:14px;font-weight:600;letter-spacing:0;color:var(--muted)}
.pkg.feature .price small{color:var(--sand)}
.pkg ul{margin:0;padding-inline-start:20px;display:flex;flex-direction:column;gap:6px;font-size:15px}
.pkg .btn{margin-top:auto}
.pkg .note{font-size:13px;color:var(--muted)}
.pkg.feature .note{color:var(--sand)}
.addons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.addon{border-top:2px dotted var(--burgundy);padding-top:14px;display:flex;flex-direction:column;gap:4px}
.addon b{font-variant-numeric:tabular-nums}

/* parents */
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.report{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:16px;color:var(--ink)}
.report .lbl{font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--muted)}
html.ar .report .lbl{font-family:var(--arabic);letter-spacing:0;font-size:13px}
.progress{display:flex;align-items:center;direction:ltr}
html.ar .progress{direction:rtl}
.progress i{width:16px;height:16px;border-radius:50%;flex:none}
.progress .done{background:var(--sky)}
.progress .todo{border:2px solid var(--burgundy)}
.progress .solid{flex:1;border-top:3px solid var(--sky)}
.progress .dot{flex:1;border-top:3px dotted var(--burgundy)}
.steps-lbl{display:grid;grid-template-columns:repeat(4,1fr);font-family:var(--mono);font-size:12px;color:var(--muted)}
html.ar .steps-lbl{font-family:var(--arabic);font-size:13px}
.steps-lbl span:last-child{text-align:end}
.ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.ticks li{display:flex;gap:14px;align-items:flex-start}
.ticks li::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--sky);flex:none;margin-top:8px}

/* faq */
.faq{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:700;font-size:18px;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--sky-deep);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{padding-bottom:20px;color:var(--muted)}

/* contact + book */
.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr}}
.contact-grid .panel b{font-size:19px;overflow-wrap:anywhere}
.lbl-mono{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
html.ar .lbl-mono{font-family:var(--arabic);letter-spacing:0;font-size:13px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}
.form-grid .full{grid-column:1 / -1}
.preview-msg{white-space:pre-wrap;background:var(--paper);border:1px dashed var(--line);border-radius:12px;padding:14px;font-size:15px;color:var(--ink)}
.notice{background:#FFF4E8;border:1px solid #F3C9A6;color:#6B3412;border-radius:12px;padding:12px 14px;font-size:14px}
.hint{font-size:14px;color:var(--muted)}

/* footer */
.site-foot{background:var(--burgundy);color:var(--sand);padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px));padding-block:56px 40px}
.site-foot .wrap{gap:28px}
.foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:28px}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}
.site-foot a{color:var(--paper);text-decoration:none}
.site-foot a:hover{text-decoration:underline}
.site-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.site-foot .legal{font-family:var(--mono);font-size:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--burgundy-2);padding-top:20px}
html.ar .site-foot .legal{font-family:var(--arabic)}
.site-foot img{height:56px;width:auto}

/* views */
[data-view]{display:block}
.view-hidden{display:none!important}

/* floating WhatsApp */
.wa-float{position:fixed;right:calc(16px + env(safe-area-inset-right, 0px));bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:30;background:var(--wa);color:#fff;border-radius:999px;min-height:52px;padding:0 20px;display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;box-shadow:0 12px 28px -12px rgba(0,0,0,.5)}
html.ar .wa-float{right:auto;left:calc(16px + env(safe-area-inset-left, 0px))}
.wa-float svg{width:22px;height:22px}

/* simple legal pages */
.doc{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
.doc h2{font-size:26px;margin-top:16px}
.doc ul{margin:0;padding-inline-start:22px;display:flex;flex-direction:column;gap:6px}

[hidden]{display:none!important}
[id]{scroll-margin-top:96px}
.site-foot .foot-grid > div{align-items:flex-start}

/* trust strip */
.trust-strip{background:var(--card);border-bottom:1px solid var(--line);padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px));padding-block:20px}
.trust-strip ul{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 24px}
@media (max-width:900px){.trust-strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.trust-strip ul{grid-template-columns:1fr}}
.trust-strip li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.4;min-width:0}
.trust-strip .tick{width:18px;height:18px;border-radius:50%;background:var(--burgundy);flex:none;margin-top:2px;position:relative}
.trust-strip .tick::after{content:"";position:absolute;left:5px;top:4px;width:6px;height:9px;border:solid var(--paper);border-width:0 2px 2px 0;transform:rotate(45deg)}
.proof-row{margin-top:16px!important;border-top:2px dotted var(--line);padding-top:16px!important}
.proof-row li{flex-direction:column;gap:0}
.proof-row b{font-size:32px;font-weight:800;line-height:1;color:var(--burgundy);font-variant-numeric:tabular-nums}

/* founder passport page */
.founder{align-items:center}
.passport{background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 24px 48px -32px rgba(36,20,23,.6);min-width:0;background-image:repeating-linear-gradient(135deg,rgba(110,30,44,.035) 0 2px,transparent 2px 10px)}
.pp-head{background:var(--burgundy);color:var(--sand);display:flex;justify-content:space-between;padding:14px 20px;font-family:var(--mono);font-size:12px;letter-spacing:.16em}
html.ar .pp-head{font-family:var(--arabic);letter-spacing:0;font-size:13px}
.pp-body{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:22px;padding:22px 20px}
@media (max-width:520px){.pp-body{grid-template-columns:1fr}}
.pp-photo{aspect-ratio:4/5;max-width:100%;border-radius:10px;overflow:hidden;background:var(--sand);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}
.pp-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.95)}
.pp-photo .ph{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-align:center;padding:12px}
.pp-photo .ph svg{width:72px;height:72px}
.pp-data{margin:0;display:flex;flex-direction:column;gap:14px}
.pp-data dt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
html.ar .pp-data dt{font-family:var(--arabic);letter-spacing:0;font-size:12px}
.pp-data dd{margin:2px 0 0;font-weight:700;font-size:17px;color:var(--ink)}
.pp-mrz{font-family:var(--mono);font-size:13px;letter-spacing:.12em;color:var(--burgundy);background:rgba(239,230,214,.7);padding:12px 20px;line-height:1.6;direction:ltr;text-align:left;overflow:hidden;white-space:nowrap}
.letter{display:flex;flex-direction:column;gap:20px;min-width:0}
.letter-body{display:flex;flex-direction:column;gap:14px;font-size:18px}
.placeholder-note{color:var(--sky-deep);font-style:italic}
.sign{display:flex;flex-direction:column;gap:2px;border-top:2px dotted var(--line);padding-top:16px}
.sig-name{font-size:22px;font-weight:800;color:var(--burgundy)}
.sig-role{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--muted)}
html.ar .sig-role{font-family:var(--arabic);letter-spacing:0;font-size:14px}

/* stories */
.stories{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}
.story-card{background:var(--card);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px;margin:0}
.story-card blockquote{margin:0;font-size:18px;line-height:1.5}
.story-card figcaption{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.06em}

/* commitments */
.commit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:900px){.commit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.commit-grid{grid-template-columns:1fr}}
.commit{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.stamp-sm{width:48px;height:48px;border-radius:50%;border:2px solid var(--sky-deep);color:var(--sky-deep);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;transform:rotate(-10deg)}
@media (max-width:520px){.pp-photo{max-width:200px}}

/* google rating */
.stars{display:inline-flex;gap:2px;vertical-align:middle}
.stars svg{width:16px;height:16px;fill:#F4B400}
.g-chip{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--paper);text-decoration:none;font-size:15px;background:rgba(250,247,241,.08);border:1px solid rgba(239,230,214,.25);border-radius:999px;padding:8px 16px;align-self:flex-start}
.g-chip:hover{background:rgba(250,247,241,.14)}
.g-chip b{font-size:17px}
.trust-strip ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))!important}
.g-item a{display:flex;flex-direction:column;gap:4px;color:var(--ink);text-decoration:none}
.g-item a:hover b{text-decoration:underline}
.reviews-band{background:var(--card);border-block:1px solid var(--line)}
.reviews-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:40px;align-items:start}
.reviews-head:has(.g-live[hidden]){grid-template-columns:1fr}
@media (max-width:900px){.reviews-head{grid-template-columns:1fr}}
.score{display:flex;flex-direction:column;gap:18px;min-width:0}
.big-score{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.big-score b{font-size:clamp(64px,9vw,104px);font-weight:800;letter-spacing:-.04em;line-height:.9;color:var(--burgundy);font-variant-numeric:tabular-nums}
.big-score .stars svg{width:30px;height:30px}
.g-live{display:flex;flex-direction:column;gap:10px;min-width:0}
.g-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.g-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:10px;margin:0;min-width:0}
.g-card blockquote{margin:0;font-size:15px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.g-card figcaption{display:flex;align-items:center;gap:10px;font-size:14px}
.g-card figcaption img{width:32px;height:32px;border-radius:50%}
.g-card figcaption a{color:var(--ink);font-weight:700;text-decoration:none}
.g-card time{font-family:var(--mono);font-size:12px;color:var(--muted)}
.g-attr{font-size:12px;color:var(--muted)}
.reviews-band{padding-block:56px}

/* welcome video bubble */
.welcome{position:fixed;left:calc(16px + env(safe-area-inset-left, 0px));bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:31;display:flex;flex-direction:column;align-items:center;gap:6px}
html.ar .welcome{left:auto;right:calc(16px + env(safe-area-inset-right, 0px))}
.welcome-bubble{width:112px;height:112px;border-radius:50%;padding:0;border:4px solid var(--paper);box-shadow:0 0 0 3px var(--sky),0 18px 36px -14px rgba(36,20,23,.7);overflow:hidden;cursor:pointer;background:var(--burgundy);position:relative;transition:transform .2s ease}
.welcome-bubble:hover{transform:scale(1.06)}
.welcome-bubble video{width:100%;height:100%;object-fit:cover;display:block}
.welcome-play{position:absolute;right:6px;bottom:6px;width:30px;height:30px;border-radius:50%;background:var(--sky);display:flex;align-items:center;justify-content:center}
.welcome-play svg{width:16px;height:16px;fill:var(--ink)}
.welcome-label{background:var(--burgundy);color:var(--paper);font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}
.welcome-x{position:absolute;top:-6px;right:-6px;width:28px;height:28px;border-radius:50%;border:0;background:var(--ink);color:var(--paper);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
html.ar .welcome-x{right:auto;left:-6px}
.welcome-x svg,.wm-close svg{width:14px;height:14px;stroke:currentColor;stroke-width:2.5;fill:none}
@media (max-width:560px){.welcome-bubble{width:86px;height:86px}.welcome-label{font-size:11px}}
@media (prefers-reduced-motion:no-preference){.welcome:not([hidden]){animation:wIn .5s cubic-bezier(.2,.9,.3,1.2) both}@keyframes wIn{from{transform:translateY(24px) scale(.8);opacity:0}}}
.welcome-modal{border:0;padding:0;background:transparent;max-width:min(94vw,480px);width:100%}
.welcome-modal::backdrop{background:rgba(36,20,23,.78)}
.wm-inner{background:var(--burgundy);border-radius:20px;overflow:hidden;position:relative;display:flex;flex-direction:column}
.wm-inner video{width:100%;max-height:72vh;aspect-ratio:4/5;object-fit:contain;background:#000;display:block}
.wm-close{position:absolute;top:10px;right:10px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:rgba(36,20,23,.7);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}
.wm-close svg{width:18px;height:18px}
.wm-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;color:var(--paper);flex-wrap:wrap}
.wm-foot > div{display:flex;flex-direction:column}
.wm-foot .hint{color:var(--sand)}
.watch-btn{align-self:flex-start;gap:10px}

/* rotating boarding pass */
.pass-wrap{display:flex;flex-direction:column;gap:112px;min-width:0}
.pass-wrap .pass{transition:transform .35s ease, opacity .35s ease}
.pass.printing{transform:translateY(10px) rotate(-.6deg);opacity:0}
.pass .code,.pass .city,.pass .rows b{transition:opacity .25s ease}
.pass-cta{align-self:flex-start;min-height:44px;padding:8px 18px;font-size:15px}
.pass-ctrl{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pass-label{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--sand)}
html.ar .pass-label{font-family:var(--arabic);letter-spacing:0;font-size:13px}
.pass-btns{display:flex;gap:8px}
.pass-btns button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(239,230,214,.4);background:transparent;color:var(--paper);cursor:pointer;display:flex;align-items:center;justify-content:center}
.pass-btns button:hover{background:rgba(250,247,241,.12)}
.pass-btns svg{width:18px;height:18px;stroke:currentColor;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
html.ar .pass-btns{flex-direction:row-reverse}
.pass .code.q{color:var(--sky-deep)}
@media (prefers-reduced-motion:reduce){.pass-wrap .pass{transition:none}}

.hero-trust{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.founder-chip{display:inline-flex;align-items:center;gap:12px;color:var(--paper);text-decoration:none;padding:6px 18px 6px 6px;border-radius:999px;background:rgba(250,247,241,.08);border:1px solid rgba(239,230,214,.25)}
html.ar .founder-chip{padding:6px 6px 6px 18px}
.founder-chip:hover{background:rgba(250,247,241,.14)}
.founder-chip > span:last-child{display:flex;flex-direction:column;line-height:1.2}
.fc-small{font-size:12px;color:var(--sand)}
.fc-photo{width:44px;height:44px;border-radius:50%;overflow:hidden;background:var(--sand);color:var(--burgundy);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;border:2px solid var(--sky);flex:none}
.fc-photo img{width:100%;height:100%;object-fit:cover}
.hero-trust .g-chip{align-self:center}

#pNum{direction:ltr;unicode-bidi:isolate}
html.ar .pass .city{font-family:var(--arabic);font-size:13px}

.li-link{display:inline-flex;align-items:center;gap:8px;color:#0A66C2;font-weight:700;text-decoration:none;font-size:15px}
.li-link:hover{text-decoration:underline}
.socials{display:flex;gap:10px}
.socials a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(239,230,214,.35);display:inline-flex;align-items:center;justify-content:center;color:var(--paper)}
.socials a:hover{background:rgba(250,247,241,.12)}

/* ===== Calmer scale (14 Oct, Bakri: smaller fonts, less happening at once) ===== */
body{font-size:16px}
html.ar body{font-size:16px}
h1{font-size:clamp(32px,4.4vw,54px)}
h2{font-size:clamp(25px,3vw,36px)}
h3{font-size:18px}
.lede{font-size:clamp(16px,1.4vw,18px)}
.band{padding-block:64px}
.band.tight{padding-block:44px}
.hero{padding-block:56px 64px}
.hero .wrap{gap:40px}
.hero-copy{gap:20px}
.eyebrow{font-size:12px}
html.ar .eyebrow{font-size:14px}
.btn{min-height:44px;padding:10px 20px;font-size:15px}
.pass{padding:20px;gap:14px}
.pass .code{font-size:clamp(32px,3.6vw,42px)}
.pass .rows b{font-size:14px}
.stamp{width:96px;height:96px;font-size:9px;bottom:-92px}
.stamp b{font-size:15px}
.pass-wrap{gap:96px}
.route-walk{animation:none!important}
.pass .route svg line{transition:stroke-dashoffset .9s ease}
.g-chip,.founder-chip{font-size:14px}
.g-chip b{font-size:15px}
.fc-photo{width:38px;height:38px}
.steps li,.pkg,.dest,.panel,.commit{padding:22px}
.dest{--dest-pad:22px}
.pkg .price{font-size:28px}
.big-score b{font-size:clamp(52px,6vw,72px)}
.big-score .stars svg{width:24px;height:24px}
.letter-body{font-size:16px}
.sig-name{font-size:19px}
.pp-data dd{font-size:15px}
.faq summary{font-size:16px;padding:16px 0}
.trust-strip li{font-size:14px}
.welcome-bubble{width:92px;height:92px}
@media (max-width:560px){.welcome-bubble{width:76px;height:76px}}
.trust-strip .g-item{display:none!important}
.proof-row b{font-size:22px}
.proof-row{margin-top:12px!important;padding-top:12px!important}

/* ===== 15 Oct 2026: booking email, partners, programmes and guides ===== */
.hp{position:absolute!important;top:0;inset-inline-start:0;width:1px!important;height:1px!important;min-width:0!important;padding:0!important;border:0!important;margin:0!important;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}
.fine{font-size:14px;color:var(--muted);margin-top:14px}
.fine a{color:inherit}
.panel.booked{display:flex;flex-direction:column;gap:14px}
.panel.booked h2{margin:0}
.partner-list{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.partner-list li{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-weight:600;font-size:15px;color:var(--burgundy)}
.prose{max-width:760px;margin-inline:auto}
.prose h2{font-size:clamp(23px,2.6vw,30px);margin:44px 0 12px;line-height:1.2}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{font-size:18px;line-height:1.7;color:var(--ink)}
html.ar .prose p,html.ar .prose li{font-size:18px;line-height:1.9}
.prose ul,.prose ol{padding-inline-start:22px;display:flex;flex-direction:column;gap:8px}
.prose a{color:var(--sky-deep)}
.prose .byline{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase;margin-bottom:28px}
html.ar .prose .byline{font-family:var(--arabic);letter-spacing:0;font-size:14px}
.prose .note{background:var(--sand);border-radius:14px;padding:16px 18px;font-size:16px;color:var(--burgundy)}
.prose .sources{border-top:1px solid var(--line);margin-top:44px;padding-top:18px;font-size:15px;color:var(--muted)}
.prose .sources li{font-size:15px}
.prose .cta-box{background:var(--burgundy);color:var(--paper);border-radius:20px;padding:26px 24px;margin-top:40px;display:flex;flex-direction:column;gap:14px}
.prose .cta-box p{color:var(--paper);margin:0}
.prose .cta-box h3{margin:0;font-size:24px}
.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.guide-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink)}
.guide-card:hover{border-color:var(--burgundy)}
.guide-card h3{margin:0;font-size:21px;color:var(--burgundy);line-height:1.25}
.guide-card p{margin:0;color:var(--muted);font-size:16px}
.guide-card .lbl-mono{font-size:12px}
.crumbs{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(239,230,214,.8);margin-bottom:14px}
html.ar .crumbs{font-family:var(--arabic);letter-spacing:0;font-size:14px}
.crumbs a{color:inherit}
/* SEO: H1 kicker, static NAP */
h1 .h1-kicker{display:flex;margin-bottom:18px;font-size:13px;font-weight:500;line-height:1.4;color:var(--sand);letter-spacing:.14em}
html.ar h1 .h1-kicker{font-size:15px;letter-spacing:0}
.nap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:24px}
.panel.nap p{margin:0}
.panel.nap address{font-style:normal;font-weight:600;color:var(--burgundy)}
.panel.nap a{color:var(--burgundy)}
.panel.nap .btn{color:inherit}
.foot-nap{display:flex;flex-direction:column;gap:6px;font-size:14px;opacity:.9}
.foot-nap a{color:inherit}
.h1like{font-size:clamp(30px,4vw,44px);line-height:1.1;margin:0}
#emailText{font-size:17px;overflow-wrap:anywhere}
.prose .faq{margin-top:4px}.prose .faq summary{font-size:17px}
/* photo heroes */
.band.has-photo{position:relative;overflow:hidden;isolation:isolate;padding-top:clamp(72px,10vw,140px);padding-bottom:clamp(72px,10vw,140px)}
.has-photo .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.has-photo::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(74,18,29,.94) 0%,rgba(110,30,44,.80) 42%,rgba(36,20,23,.30) 100%)}
html.ar .has-photo::before{background:linear-gradient(270deg,rgba(74,18,29,.94) 0%,rgba(110,30,44,.80) 42%,rgba(36,20,23,.30) 100%)}
@media (max-width:760px){.has-photo::before{background:linear-gradient(180deg,rgba(74,18,29,.55) 0%,rgba(110,30,44,.90) 55%,rgba(74,18,29,.96) 100%)}html.ar .has-photo::before{background:linear-gradient(180deg,rgba(74,18,29,.55) 0%,rgba(110,30,44,.90) 55%,rgba(74,18,29,.96) 100%)}}

/* destination photos */
.dest .dest-photo{display:block;width:calc(100% + 2*var(--dest-pad,28px));max-width:none;height:auto;aspect-ratio:960/557;object-fit:cover;margin:calc(-1*var(--dest-pad,28px)) calc(-1*var(--dest-pad,28px)) 18px;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0}
.dest .dest-photo{max-height:320px}
