/*
 * Amwaj Tour on Divi 5: base layer.
 * Colors come from Divi's global colors (--gcid-amwaj-*), which the plugin switches for dark mode. The short aliases
 * below are for the plugin's own components. Glass blur is written as the literal standard property everywhere.
 */
:root {
  --gold: var(--gcid-amwaj-gold, #e5be77); --gold-hover: var(--gcid-amwaj-gold-hover, #d9ae62);
  --gold-700: var(--gcid-amwaj-gold-700, #8a6a2e); --gold-100: var(--gcid-amwaj-gold-100, #f7edda); --gold-50: var(--gcid-amwaj-gold-50, #fcf8f0);
  --sun: var(--gcid-amwaj-sun, #f2d49b); --dusk: var(--gcid-amwaj-dusk, #c9924a); --slate: var(--gcid-amwaj-slate, #5e6d77);
  --bg: var(--gcid-amwaj-bg, #fff); --surface: var(--gcid-amwaj-surface, #f3f3f1); --card: var(--gcid-amwaj-card, #fff);
  --text: var(--gcid-amwaj-text, #2a2a2a); --head: var(--gcid-amwaj-head, #000); --muted: var(--gcid-amwaj-muted, #5e6d77);
  --line: var(--gcid-amwaj-line, #e3e3df); --line-2: var(--gcid-amwaj-line-2, #cfcfc9); --accent-text: var(--gcid-amwaj-accent, #8a6a2e);
  --error: #b3261e;
  --glass: rgba(255, 255, 255, .14); --glass-dark: rgba(0, 0, 0, .28); --float: 0 24px 60px rgba(0, 0, 0, .22);
  --font-sans: Poppins, "Helvetica Neue", Arial, sans-serif; --font-hiero: "Amwaj Hieroglyphs", serif;
  --ease-out: cubic-bezier(.22, 1, .36, 1); --ease-inout: cubic-bezier(.65, 0, .35, 1);
  --r-input: 14px; --r-image: 18px; --r-tile: 22px; --r-card: 24px; --r-pill: 999px;
  --gutter: clamp(16px, 4vw, 48px); --section: clamp(64px, 9vw, 144px);
}
:root[data-theme="dark"] { --error: #f28b82; --float: 0 24px 60px rgba(0, 0, 0, .6); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --error: #f28b82; --float: 0 24px 60px rgba(0, 0, 0, .6); } }

/* ---- Page ground: the theme background, with sections see-through so the torch glows in empty space ---- */
body, body #page-container, body #main-content, body #et-main-area { background-color: var(--bg); color: var(--text); }
body { font-family: var(--font-sans); overflow-x: hidden; }
body #main-content, body .et-l--body > .et_builder_inner_content { background-color: transparent; }
body .et_pb_section { background-color: transparent; }
body #page-container { position: relative; z-index: 2; background: transparent; }
body h1, body h2, body h3, body h4, body h5, body h6 { color: var(--head); letter-spacing: -.02em; text-wrap: balance; }
body a { color: var(--accent-text); }
::selection { background: var(--gold); color: #000; }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; border-radius: 4px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ---- Glass (brand level 2). Add the class in Divi: Advanced > CSS Class ---- */
.amwaj-glass { background-color: var(--glass) !important; backdrop-filter: blur(32px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28); }
.amwaj-glass-dark { background-color: var(--glass-dark) !important; backdrop-filter: blur(32px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18); }

/* ---- Buttons for plugin markup (Divi buttons use the Amwaj button presets) ---- */
.amwaj .btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 48px; padding: 0 24px; border-radius: var(--r-pill); border: 0; font: 600 15px var(--font-sans); cursor: pointer; text-decoration: none; white-space: nowrap; transition: background-color .25s var(--ease-out), transform .25s var(--ease-out), box-shadow .25s; }
.amwaj .btn:active { transform: scale(.97); }
.amwaj .btn-sm { height: 42px; padding: 0 18px; font-size: 14px; }
.amwaj .btn-block { width: 100%; }
.amwaj .btn-primary { background: var(--gold); color: #000; }
.amwaj .btn-primary:hover { background: var(--gold-hover); }
.amwaj .btn-dark { background: var(--head); color: var(--bg); }
.amwaj .btn-ghost { background: transparent; color: var(--head); box-shadow: inset 0 0 0 1.5px var(--line-2); }
.amwaj .btn-ghost:hover { box-shadow: inset 0 0 0 1.5px var(--head); }
.amwaj .btn-outline { background: transparent; color: var(--head); box-shadow: inset 0 0 0 1px var(--head); font-weight: 500; }
.amwaj .btn-outline:hover { background: var(--head); color: var(--bg); }
.amwaj .btn-glass { background: var(--glass); color: #fff; backdrop-filter: blur(32px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28); }
.amwaj .muted { color: var(--muted); }

/* ---- Motion gating: hidden only until motion.js reveals them; shown after 2.5s if scripts fail ---- */
@media (prefers-reduced-motion: no-preference) {
  .amwaj-motion .amwaj-split, .amwaj-motion .amwaj-reveal, .amwaj-motion .amwaj-reveal-stagger, .amwaj-motion .amwaj-wipe,
  .amwaj-motion [data-split], .amwaj-motion [data-reveal], .amwaj-motion [data-wipe] { visibility: hidden; animation: amwaj-motion-fallback 0s 2.5s forwards; }
  .amwaj-motion-on .amwaj-split, .amwaj-motion-on .amwaj-reveal, .amwaj-motion-on .amwaj-reveal-stagger, .amwaj-motion-on .amwaj-wipe,
  .amwaj-motion-on [data-split], .amwaj-motion-on [data-reveal], .amwaj-motion-on [data-wipe] { animation: none; }
}
@keyframes amwaj-motion-fallback { to { visibility: visible; } }
.amwaj-split h1, .amwaj-split h2, .amwaj-split h3, [data-split] { text-wrap: wrap; }
.amwaj-split [style*="overflow"], [data-split] > div { padding-block: .1em .18em; margin-block: -.1em -.18em; }

/* ---- Candle torch over a wall of hieroglyphs (brand guide p.16), deliberately faint ---- */
.amwaj-torch { position: fixed; inset: 0; z-index: 1; pointer-events: none; --mx: 50vw; --my: 50vh; --r: 240px; --i: 1; --torch-glow: .42; --torch-ink: .12; --torch-halo: .5; opacity: 0; transition: opacity .8s; }
.amwaj-torch.live { opacity: 1; }
.amwaj-torch > i { position: absolute; inset: 0; display: block; }
.amwaj-torch .wall { overflow: hidden; font-family: var(--font-hiero); line-height: 1; white-space: nowrap; -webkit-mask-image: radial-gradient(circle var(--r) at var(--mx) var(--my), #000 0%, rgba(0, 0, 0, .55) 35%, rgba(0, 0, 0, .1) 72%, transparent 100%); mask-image: radial-gradient(circle var(--r) at var(--mx) var(--my), #000 0%, rgba(0, 0, 0, .55) 35%, rgba(0, 0, 0, .1) 72%, transparent 100%); }
.amwaj-torch .wall div { position: absolute; left: 0; letter-spacing: .35em; font-size: 20px; }
.amwaj-torch .dark { color: #e5be77; text-shadow: 1px 1px 0 #3e2c0e; mix-blend-mode: screen; opacity: calc(var(--torch-glow) * var(--i)); }
.amwaj-torch .light { color: #8a6a2e; mix-blend-mode: multiply; opacity: calc(var(--torch-ink) * var(--i)); }
.amwaj-torch .halo { background: radial-gradient(circle calc(var(--r) * 1.8) at var(--mx) var(--my), rgba(242, 212, 155, .3) 0%, rgba(229, 190, 119, .12) 30%, rgba(201, 146, 74, .04) 60%, transparent 100%); mix-blend-mode: screen; opacity: calc(var(--torch-halo) * var(--i)); }
.amwaj-torch .core { background: radial-gradient(circle calc(var(--r) * .45) at var(--mx) var(--my), rgba(255, 236, 196, .18) 0%, rgba(242, 212, 155, .06) 50%, transparent 100%); mix-blend-mode: screen; opacity: var(--i); }
.amwaj-torch .flame { position: absolute; left: var(--mx); top: var(--my); width: 4px; height: 4px; border-radius: 50%; background: #fff3d6; transform: translate(-50%, -50%) scale(var(--i)); box-shadow: 0 0 12px 4px rgba(242, 212, 155, .5); mix-blend-mode: screen; opacity: .55; }
:root[data-theme="dark"] .amwaj-torch { --torch-glow: .3; --torch-halo: .35; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .amwaj-torch { --torch-glow: .3; --torch-halo: .35; } }

/* ---- Light / dark switch, bottom centre ---- */
.amwaj-themetoggle { position: fixed; left: 50%; bottom: calc(env(safe-area-inset-bottom, 0px) + 20px); transform: translateX(-50%); z-index: 9990; display: flex; padding: 4px; border-radius: var(--r-pill); background: rgba(0, 0, 0, .32); backdrop-filter: blur(32px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22), 0 10px 30px rgba(0, 0, 0, .18); }
.amwaj-themetoggle button { position: relative; z-index: 1; width: 44px; height: 36px; padding: 0; border: 0; border-radius: var(--r-pill); background: transparent; color: rgba(255, 255, 255, .8); display: grid; place-items: center; cursor: pointer; transition: color .25s var(--ease-out); }
.amwaj-themetoggle button:hover { color: #fff; }
.amwaj-themetoggle button[aria-pressed="true"] { color: #000; }
.amwaj-themetoggle .thumb { position: absolute; top: 4px; left: 4px; width: 44px; height: 36px; border-radius: var(--r-pill); background: var(--gold); transition: transform .5s var(--ease-out); }
.amwaj-themetoggle .thumb[data-on="dark"] { transform: translateX(44px); }
@media (max-width: 980px) { body:has(.amwaj-bookbar) .amwaj-themetoggle { bottom: calc(env(safe-area-inset-bottom, 0px) + 88px); } }

/* ---- WhatsApp button ---- */
.amwaj-wa { position: fixed; right: 20px; bottom: calc(env(safe-area-inset-bottom, 0px) + 20px); width: 60px; height: 60px; border-radius: 50%; background: #000; color: var(--gold) !important; display: grid; place-items: center; box-shadow: var(--float); z-index: 9990; transition: transform .25s var(--ease-out); }
.amwaj-wa:hover { transform: scale(1.06); }

@media (prefers-reduced-motion: reduce) {
  .amwaj-torch { display: none; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ---- Glass header (brand guide p.13): a floating pill over the page. Built in Divi's Theme Builder. ---- */
.amwaj-header.et_pb_section { position: fixed !important; left: 0; right: 0; top: 0; z-index: 9980; padding: calc(env(safe-area-inset-top, 0px) + 12px) var(--gutter) 0 !important; background: transparent !important; pointer-events: none; }
body.admin-bar .amwaj-header.et_pb_section { top: 32px; }
.amwaj-header .amwaj-glassbar { pointer-events: auto; width: 100% !important; max-width: 1280px !important; height: 60px; margin: 0 auto; padding: 0 10px 0 20px !important; border-radius: var(--r-pill); background: rgba(0, 0, 0, .6); backdrop-filter: blur(32px) saturate(140%); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18); transition: background-color .4s; }
body.home .amwaj-header .amwaj-glassbar { background: var(--glass-dark); }
.amwaj-header .amwaj-glassbar > .et_pb_column { display: flex; flex-direction: row; align-items: center; gap: 16px; height: 100%; }
.amwaj-header .et_pb_image { flex: none; margin: 0 !important; }
.amwaj-header .et_pb_image img { height: 30px; width: auto; }
.amwaj-header .et_pb_menu { flex: 1; min-width: 0; background: transparent !important; margin: 0 !important; }
.amwaj-header .et_pb_menu .et-menu > li { padding: 0 9px; }
.amwaj-header .et_pb_menu .et-menu > li > a { color: #fff !important; opacity: .86; font: 400 14px var(--font-sans); padding: 20px 0 !important; }
.amwaj-header .et_pb_menu .et-menu > li > a:hover, .amwaj-header .et_pb_menu .et-menu > li.current-menu-item > a { opacity: 1; }
.amwaj-header .et_pb_menu .mobile_menu_bar::before { color: #fff !important; }
.amwaj-header .et_pb_text, .amwaj-header .amwaj_module { flex: none; margin: 0 !important; }
.amwaj-header .et_pb_button_module_wrapper { flex: none; margin: 0 !important; }
/* Inner pages start below the floating header. */
body:not(.home) #main-content { padding-top: calc(env(safe-area-inset-top, 0px) + 104px); }

.amwaj-langpick { position: relative; }
.amwaj-langpick summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px; border-radius: var(--r-pill); background: var(--glass); color: #fff; font: 500 13px var(--font-sans); }
.amwaj-langpick summary::-webkit-details-marker { display: none; }
.amwaj-langpick ul { position: absolute; right: 0; top: calc(100% + 10px); margin: 0; padding: 6px !important; list-style: none; min-width: 160px; background: var(--card); border-radius: 16px; box-shadow: var(--float); }
.amwaj-langpick li { list-style: none; }
.amwaj-langpick li a { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; border-radius: 10px; color: var(--head); text-decoration: none; font-size: 14px; }
.amwaj-langpick li a:hover { background: var(--surface); }
.amwaj-langpick li a[aria-current="true"] { font-weight: 600; }
.amwaj-langpick li a small { color: var(--muted); text-transform: uppercase; font-size: 11px; }

/* ---- Footer ---- */
.amwaj-social a { margin-right: 16px; text-decoration: none; }
.amwaj-footer a { color: #d9d9d6; text-decoration: none; }
.amwaj-footer a:hover { color: var(--gold); }

@media (max-width: 980px) {
  body.admin-bar .amwaj-header.et_pb_section { top: 46px; }
  .amwaj-header .amwaj-glassbar > .et_pb_column { gap: 10px; }
  .amwaj-header .et_pb_menu { order: 5; flex: none; }
  .amwaj-header .et_pb_menu .et_pb_menu__wrap { justify-content: flex-end; }
  .amwaj-header .et_pb_image { margin-right: auto !important; }
}

/* Divi's built-in heading/body/link colors follow the Amwaj theme colors, so default modules switch with dark mode. */
html:root { --gcid-heading-color: var(--gcid-amwaj-head); --gcid-body-color: var(--gcid-amwaj-text); --gcid-link-color: var(--gcid-amwaj-accent); }

/* ---- Divi-built parts of detail pages ---- */
/* A Divi group styled like the plugin's tour sections (hairline above, heading, content). */
.amwaj-tsec { margin-top: 48px !important; padding-top: 40px !important; border-top: 1px solid var(--line); }
.amwaj-tsec h2 { font-size: clamp(22px, 2.2vw, 28px) !important; letter-spacing: -.02em; }
.amwaj-prose p { max-width: 66ch; padding-bottom: 0; }
.amwaj-prose p + p { margin-top: 14px; }
/* Keeps a module (the booking panel) in view while its column scrolls past. */
.amwaj-sticky { position: sticky !important; top: 96px; }
@media (max-width: 980px) { .amwaj-sticky { position: static !important; } }
.amwaj-header .amwaj-glassbar.on-light { background: rgba(0, 0, 0, .6); }

/*
 * Candle wall visibility: the page colour lives on <html>/<body> only; Divi's page wrappers stay see-through so the
 * torch (fixed, z-index 1) shows in empty background space, while every section with its own colour or photo,
 * every card, form and text block sits above it (#page-container is z-index 2).
 */
html, body { background-color: var(--bg) !important; }
body #page-container, body #et-main-area, body #main-content, body .et-l--body, body .et-l--post, body .et_builder_inner_content { background-color: transparent !important; }

/*
 * FAQ accordions (any Divi Accordion with the CSS class "amwaj-faq"): glass items that follow light/dark mode,
 * a gold chevron that turns, and a gold hairline on the open question.
 */
.amwaj-faq { display: grid; gap: 10px; }
.amwaj-faq .et_pb_toggle { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 18px !important; overflow: hidden;
  background: color-mix(in srgb, var(--card) 72%, transparent) !important; backdrop-filter: blur(20px) saturate(160%);
  box-shadow: inset 0 0 0 1px var(--line), inset 0 1px 0 rgba(255, 255, 255, .08); transition: box-shadow .3s var(--ease-out), background-color .3s; }
.amwaj-faq .et_pb_toggle:hover { box-shadow: inset 0 0 0 1px var(--line-2), inset 0 1px 0 rgba(255, 255, 255, .08); }
.amwaj-faq .et_pb_toggle_open { background: color-mix(in srgb, var(--card) 88%, transparent) !important; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--gold) 55%, transparent), 0 18px 40px -24px rgba(0, 0, 0, .45); }
.amwaj-faq .et_pb_toggle_title, .amwaj-faq h5.et_pb_toggle_title { position: relative; margin: 0 !important; padding: 20px 60px 20px 22px !important; cursor: pointer; color: var(--head) !important; font: 500 17px/1.4 var(--font-sans) !important; letter-spacing: -.005em; }
/* Divi's +/− icon becomes a gold chevron in a soft circle. */
.amwaj-faq .et_pb_toggle_title::before { content: "" !important; position: absolute !important; right: 18px !important; left: auto !important; top: 50% !important; width: 30px; height: 30px; margin: -15px 0 0 !important; border-radius: 50%;
  background: color-mix(in srgb, var(--gold) 16%, transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e5be77' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") center / 16px no-repeat;
  font-size: 0 !important; color: transparent !important; transition: transform .35s var(--ease-out), background-color .3s; }
.amwaj-faq .et_pb_toggle_open .et_pb_toggle_title::before { transform: rotate(180deg); background-color: color-mix(in srgb, var(--gold) 28%, transparent); }
.amwaj-faq .et_pb_toggle_content { padding: 0 60px 22px 22px !important; border: 0 !important; color: var(--text) !important; }
.amwaj-faq .et_pb_toggle_content p { color: var(--text) !important; font-size: 15px; line-height: 1.7; max-width: 62ch; padding: 0; }
.amwaj-faq .et_pb_toggle_content a { color: var(--accent-text); }
@media (max-width: 600px) {
  .amwaj-faq .et_pb_toggle_title, .amwaj-faq h5.et_pb_toggle_title { padding: 18px 56px 18px 18px !important; font-size: 16px !important; }
  .amwaj-faq .et_pb_toggle_content { padding: 0 18px 18px !important; }
}
/* Header emblem (round logo): a touch larger than the old wordmark so the symbols read clearly. */
.amwaj-header .et_pb_image.amwaj-emblem { width: 44px !important; max-width: 44px !important; flex: 0 0 44px !important; }
.amwaj-header .et_pb_image.amwaj-emblem .et_pb_image_wrap, .amwaj-header .et_pb_image.amwaj-emblem a { display: block; width: 100%; }
.amwaj-header .et_pb_image.amwaj-emblem img { height: 44px; width: 44px; }
@media (max-width: 980px) { .amwaj-header .et_pb_image.amwaj-emblem { width: 40px !important; max-width: 40px !important; flex-basis: 40px !important; margin-right: auto !important; } .amwaj-header .et_pb_image.amwaj-emblem img { height: 40px; width: 40px; } }
.amwaj-footer .et_pb_text p a { margin-right: 16px; }
.co-privacy { margin: 10px 0 0; }
/* Plugin buttons keep their own text colour even inside Divi's header/footer link styles. */
.amwaj a.btn-primary, .amwaj a.btn-primary:hover { color: #000 !important; }
.amwaj a.btn-glass, .amwaj a.btn-glass:hover { color: #fff !important; }

/*
 * Global footer (sunset + footer bar) always sits on a black ground, in light and dark mode alike, so its text colours
 * are fixed here and must win over Divi's heading/link colours (which are stronger on archive pages).
 */
.et-l--footer .amwaj.close h2, .et-l--footer .amwaj.close h3 { color: #fff !important; }
.et-l--footer .amwaj.close .stage p { color: rgba(255, 255, 255, .78) !important; }
.et-l--footer .amwaj.close .contact small { color: #a3adb5 !important; }
.et-l--footer .amwaj.close .contact b { color: #fff !important; }
.et-l--footer .amwaj.close .copy { color: #fff !important; border-color: rgba(255, 255, 255, .3) !important; }
.et-l--footer .amwaj-footer, .et-l--footer .amwaj-footer p { color: #a3adb5 !important; }
.et-l--footer .amwaj-footer a { color: #d9d9d6 !important; }
.et-l--footer .amwaj-footer a:hover { color: var(--gold) !important; }

/* 404: "4 ☥ 4" with the emblem as the zero (light emblem in dark mode, normal emblem in light mode). */
.amwaj-404 { display: flex; align-items: center; justify-content: center; gap: clamp(8px, 2vw, 28px); line-height: 1; user-select: none; }
.amwaj-404 span { font: 600 clamp(110px, 20vw, 260px)/.9 var(--font-sans); letter-spacing: -.06em; color: transparent; -webkit-text-stroke: 2px var(--gold); background: linear-gradient(180deg, color-mix(in srgb, var(--gold) 55%, transparent), transparent 85%); -webkit-background-clip: text; background-clip: text; }
.amwaj-404 img { width: clamp(90px, 16vw, 210px); height: auto; filter: drop-shadow(0 0 18px rgba(229, 190, 119, .45)); animation: amwaj-404-glow 3.5s ease-in-out infinite alternate; }
.amwaj-404 .on-dark { display: none; }
:root[data-theme="dark"] .amwaj-404 .on-dark { display: block; } :root[data-theme="dark"] .amwaj-404 .on-light { display: none; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .amwaj-404 .on-dark { display: block; } :root:not([data-theme="light"]) .amwaj-404 .on-light { display: none; } }
@keyframes amwaj-404-glow { from { filter: drop-shadow(0 0 10px rgba(229, 190, 119, .25)); } to { filter: drop-shadow(0 0 30px rgba(229, 190, 119, .6)); } }
@media (prefers-reduced-motion: reduce) { .amwaj-404 img { animation: none; } }

/* ---- Footer bottom bar on phones and tablets: stack the columns full width, keep links whole ---- */
.amwaj-footer .et_pb_text p a { white-space: nowrap; }
@media (max-width: 980px) {
  .et-l--footer .amwaj-footer .et_pb_row { flex-direction: column !important; align-items: flex-start !important; row-gap: 22px !important; }
  .et-l--footer .amwaj-footer .et_pb_column { width: 100% !important; max-width: 100% !important; flex: 0 0 auto !important; margin: 0 !important; }
  .et-l--footer .amwaj-footer .et_pb_image { width: 150px !important; max-width: 60%; }
  .et-l--footer .amwaj-footer .et_pb_image img { width: 100% !important; height: auto !important; }
  .et-l--footer .amwaj-footer .et_pb_text p { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 0 0 14px; padding: 0; line-height: 1.5; }
  .et-l--footer .amwaj-footer .et_pb_text p a { margin: 0; }
  /* Room under the copyright line for the floating theme switch and WhatsApp button. */
  .et-l--footer .amwaj-footer { padding-bottom: 96px !important; }
}
@media (max-width: 980px) {
  .et-l--footer .amwaj-footer .amwaj-social { display: contents; }
}

/* Headings inside description text (tour, destination and transfer descriptions) */
.amwaj-prose h3 { margin: 34px 0 10px; }
.amwaj-prose h3:first-child { margin-top: 0; }

/* Links inside running text are underlined, not shown by colour alone (WCAG 1.4.1) */
.amwaj-prose p a, .amwaj-prose li a, .amwaj-legal p a, .amwaj-legal li a, .amwaj-legal td a,
.amwaj-article p a, .amwaj-article li a, .faqs details p a, .et_pb_toggle_content p a {
  text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px;
}
.amwaj-prose p a:hover, .amwaj-legal p a:hover, .amwaj-article p a:hover, .faqs details p a:hover { text-decoration-thickness: 2px; }

/* Touch screens: taller invisible tap areas on the footer links (no visual change) */
@media (pointer: coarse) {
  .et-l--footer .amwaj-footer p a { position: relative; }
  .et-l--footer .amwaj-footer p a::after { content: ""; position: absolute; inset: -8px -5px; }
}

/* Phones, pages with a booking bar: the switch slides away while reading (assets/js/chrome.js) */
.amwaj-themetoggle { transition: opacity .3s var(--ease-out), transform .3s var(--ease-out), visibility .3s; }
.amwaj-themetoggle.is-tucked { opacity: 0; visibility: hidden; transform: translate(-50%, 16px); pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .amwaj-themetoggle { transition: none; } }
