/* ============================================================
   Aegypten.de 2026 — design layer (SINGLE design stylesheet)
   Loaded AFTER the ts24 base (style.css); it overrides
   colors/typography and styles the [section] content components and
   the homepage/article templates. Source: prototype_homepage.html
   + prototype_article.html (signed off). See design_system.md.

   ONE THEME = ONE DESIGN STYLESHEET.
   The eleven former side-by-side layers (-type, -mobilefix, -modules,
   -cards, -type-boost, -news-fix, -navfix2, -navmenu, -newslist,
   -fm720, -urlaub) were folded in below, verbatim and in their exact
   former cascade order, and their enqueues removed. Each block is
   marked "MERGED LAYER nn/11". Add new rules to the matching block,
   or at the end - do NOT start another -fix/-boost file.

   2026-09-02 - DEAD-RULE PASS (rendering-neutral, verified computed-style
   identical on 7 templates x 19 viewport widths + the open mobile drawer):
   the consolidation exposed the same knob being re-set up to 8 times, so
   every rule whose declarations provably never win was deleted. Layer 06
   (-news-fix) is now empty; the -type / -type-boost / -navfix2 / -navmenu
   header rules were pruned down to the ones that actually render. The
   surviving nav owner is the navfix2 block, NOT navmenu - see the comments
   there before re-adding any ".aeg-menu"-only rule.

   Still separate on purpose:
     assets/aegypten-klima.css - loaded conditionally (destination and
     holiday pages only) and EARLIER in the cascade than this file.
   ============================================================ */

/* Only the tokens that the "Nachtblau & Gold" :root further down does NOT re-set
   survive here (cleaned 2026-09-02). The thirteen colour tokens it repeats -
   nil, nil-soft, sand, sand-light, sand-deep, terra, terra-deep, grey, grey-soft,
   bg, bg-warm, ink, white - were the pre-relaunch terracotta palette; both blocks
   are a plain unconditional ":root", so the later one always won and none of the
   thirteen ever reached a page. --nil-deep (the drawer background) is NOT repeated
   down there and stays. */
:root{
  --nil-deep:#0f2942;
  --shadow-sm:0 2px 8px rgba(60,42,20,.08); --shadow:0 12px 32px rgba(60,42,20,.14);
  --r:6px;
  --serif:'Playfair Display',Georgia,serif;
  --sans:'Source Sans 3',system-ui,-apple-system,sans-serif;
  --label:'Montserrat',sans-serif;
}

/* ---- Basics ---- */
body{ font-family:var(--sans); color:var(--ink); background:var(--bg); line-height:1.75; }
h1,h2,h3,h4,.h1,.h2,.h3{ font-family:var(--serif); color:var(--nil); font-weight:600; letter-spacing:-.01em; }
a{ color:var(--terra-deep); }
a:hover,a:focus{ color:var(--terra); }

/* ============================================================
   Content pages ([section class="section-text"])
   ============================================================ */
.section-text{ font-size:1.05rem; }
.section-text h2{ font-size:1.8rem; margin:2.4rem 0 1rem; }
.section-text h3{ font-size:1.28rem; color:var(--nil-soft); margin:1.6rem 0 .6rem; }
.section-text p{ margin-bottom:1.2rem; }
.section-text img.size-full{ border-radius:var(--r); box-shadow:var(--shadow-sm); margin-bottom:1.6rem; }

/* "Kurz erklaert" capsule (answer capsule) */
.section-text p.lead{
  font-family:var(--serif); font-style:italic; font-weight:500;
  font-size:1.24rem; line-height:1.6; color:var(--nil);
  border-left:4px solid var(--terra); padding:.2rem 0 .2rem 1.3rem;
  margin:0 0 1.6rem; background:none;
}
.section-text p.lead strong{ font-style:normal; color:var(--terra-deep); }

/* Byline */
.section-text p em:only-child{ color:var(--grey-soft); font-size:.92rem; }

/* Quick-facts box (table.table-striped) -> "Auf einen Blick" */
.section-text table.table-striped{
  width:100%; border-collapse:separate; border-spacing:0; margin:1.4rem 0 2rem;
  background:var(--white); border:1px solid var(--sand-deep);
  border-left:4px solid var(--terra); border-radius:var(--r);
  box-shadow:var(--shadow-sm); overflow:hidden;
}
.section-text table.table-striped td{ padding:.7rem 1rem; border-top:1px solid var(--bg-warm); vertical-align:top; }
.section-text table.table-striped tr:first-child td{ border-top:none; }
.section-text table.table-striped td:first-child{
  font-family:var(--label); font-size:.82rem; font-weight:600;
  color:var(--nil); width:40%; text-transform:none; letter-spacing:.02em;
}
.section-text table.table-striped tbody tr:nth-child(odd){ background:var(--bg-warm); }

/* FAQ block (h2 "Haeufige Fragen" + h3/p) */
.section-text h2 + h3{ margin-top:1rem; }
.section-text h3{ position:relative; }

/* Questions box (TOC of the question H2s, right after the quick facts).
   Was .aeg-fragenbox until the 2026-09-02 content migration. */
.section-text .aeg-questionbox{
  background:var(--bg-warm); border:1px solid var(--sand-deep); border-radius:var(--r);
  padding:18px 22px 14px; margin:1.6rem 0 2rem; box-shadow:none;
}
.section-text .aeg-questionbox > .panel-body{ padding:0; }
.section-text .aeg-questionbox p{ margin:0 0 .6rem; }
.section-text .aeg-questionbox p strong{ font-family:var(--label); letter-spacing:.04em;
  text-transform:uppercase; color:var(--terra-deep); }
.section-text .aeg-questionbox ul{ list-style:none; margin:0; padding:0;
  column-count:2; column-gap:30px; }
.section-text .aeg-questionbox li{ margin:.3rem 0; break-inside:avoid; }
.section-text .aeg-questionbox li a{ color:var(--nil-soft); font-weight:500; }
.section-text .aeg-questionbox li a:hover{ color:var(--terra); }
@media(max-width:600px){ .section-text .aeg-questionbox ul{ column-count:1; } }

/* CTA bridge to the region / money page */
.section-text .aeg-cta{
  background:linear-gradient(135deg,var(--nil) 0%,var(--nil-soft) 100%);
  border:none; border-radius:var(--r); margin:2rem 0; box-shadow:var(--shadow-sm);
}
.section-text .aeg-cta > .panel-body{ padding:20px 24px; color:var(--white); }
.section-text .aeg-cta a{ color:var(--sand); font-weight:600; text-decoration:underline; }
.section-text .aeg-cta a:hover{ color:var(--white); }

/* Anchor offset so jump targets do not end up under the sticky nav */
.section-text h2[id]{ scroll-margin-top:90px; }

/* ============================================================
   Homepage (front-page.php) — component classes from the prototype
   ============================================================ */
.aeg-hero{ position:relative; min-height:88vh; display:flex; align-items:flex-end; overflow:hidden; }
.aeg-hero__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.aeg-hero::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(15,41,66,.12) 0%,rgba(15,41,66,.78) 100%); }
.aeg-hero__in{ position:relative; z-index:2; max-width:1180px; margin:0 auto; padding:0 28px 8vh; width:100%; }
.aeg-hero h1{ color:var(--white); font-weight:700; max-width:16ch;
  text-shadow:0 2px 30px rgba(0,0,0,.35); }
.aeg-hero p{ color:rgba(255,253,249,.92); max-width:46ch; margin:1.2rem 0 2rem; }
.aeg-btn{ display:inline-block; font-family:var(--label); font-weight:600; letter-spacing:.04em;
  padding:.85rem 1.7rem; border-radius:var(--r); text-decoration:none; transition:transform .2s,background .2s; }
.aeg-btn--primary{ background:var(--terra); color:var(--white); }
.aeg-btn--primary:hover{ background:var(--terra-deep); color:var(--white); transform:translateY(-2px); }
.aeg-btn--ghost{ border:1.5px solid rgba(255,253,249,.7); color:var(--white); margin-left:.8rem; }
.aeg-btn--ghost:hover{ background:rgba(255,253,249,.12); color:var(--white); }

/* Destination cards */
.aeg-cards{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; max-width:1180px; margin:0 auto; padding:70px 28px; }
.aeg-card{ background:var(--white); border-radius:var(--r); overflow:hidden; box-shadow:var(--shadow-sm);
  transition:transform .35s,box-shadow .35s; }
.aeg-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow); }
.aeg-card__img{ aspect-ratio:4/3; width:100%; object-fit:cover; transition:transform .5s; }
.aeg-card:hover .aeg-card__img{ transform:scale(1.07); }
.aeg-card__body{ padding:18px 20px 22px; }
.aeg-card .tag,.aeg-mag .tag{ font-family:var(--label); font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:var(--terra); }
.aeg-card h3{ margin:.4rem 0; }

/* Highlight banner. Colours, padding and gap come from the "Nachtblau & Gold"
   re-tuning further down (sand ground, gold accent), which re-sets them with
   !important on the same selectors - the terracotta versions that used to sit
   here never rendered. */
.aeg-banner__in{ max-width:1180px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); }

/* ============================================================
   Article (single.php / page.php) — reading column + sticky sidebar
   ============================================================ */
.aeg-article{ max-width:740px; }
.aeg-shell{ max-width:1180px; margin:0 auto; padding:48px 28px 80px; }
@media(min-width:1200px){
  .aeg-shell{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:50px; }
  .aeg-side{ position:sticky; top:90px; align-self:start; }
}
.aeg-toc{ background:var(--white); border-radius:var(--r); padding:22px 24px; box-shadow:var(--shadow-sm); }
.aeg-toc a{ display:block; color:var(--nil-soft); padding-left:14px; border-left:2px solid var(--sand-deep);
  margin-bottom:9px; font-size:.92rem; }
.aeg-toc a:hover{ border-color:var(--terra); color:var(--terra); padding-left:18px; }

/* ---- Responsive ---- */
@media(max-width:980px){ .aeg-cards{ grid-template-columns:1fr 1fr; } .aeg-banner__in{ grid-template-columns:1fr; } }
@media(max-width:560px){ .aeg-cards{ grid-template-columns:1fr; } }

/* ============================================================
   Magazine navigation (replaces the ts24 header/navbar) — 2026-06-04
   aeg-prefixed; hooks: assets/aegypten-nav.js
   (body.aeg-scrolled, [data-aeg-nav-toggle]/[data-aeg-nav] .is-open)
   ============================================================ */

/* Neutralize the ts24 header wrapper (navbar.php renders inside it) */
#header{ background:none !important; border:none !important; box-shadow:none !important; min-height:0 !important; padding:0 !important; }
#header .container-fluid{ padding:0 !important; }
#header .searchmask_container,
.searchmask_container,
#section-search{ display:none !important; }

.aeg-nav{ position:fixed; top:0; left:0; right:0; z-index:1050; padding:20px 0;
  transition:background .4s, padding .4s, box-shadow .4s; }
body.aeg-scrolled .aeg-nav{ background:var(--white); box-shadow:0 4px 24px rgba(60,42,20,.1); padding:10px 0; }
.aeg-nav-in{ margin:0 auto; padding:0 24px; display:flex; align-items:center; justify-content:space-between; }
.aeg-logo{ font-family:var(--serif); font-weight:700; color:var(--white);
  letter-spacing:-.02em; text-decoration:none; transition:color .4s; }
.aeg-logo b{ color:var(--sand); }
/* Brand mark (pyramids & sun) left of the wordmark. Was an inline <style id="aeg-logo-mark">
   printed by inc/aegypten-theme.php; the url() is relative to this stylesheet's own folder. */
.aeg-logo::before{ content:""; display:inline-block; width:1.2em; height:1.2em; margin-right:.4em;
  vertical-align:-.22em; background:url(favicon/logo-mark.svg) center/contain no-repeat; }
body.aeg-scrolled .aeg-logo{ color:var(--nil); }
body.aeg-scrolled .aeg-logo b{ color:var(--terra); }
.aeg-menu{ display:flex; align-items:center; }
.aeg-menu a{ font-family:var(--label); font-size:.82rem; font-weight:600; letter-spacing:.04em;
  text-transform:uppercase; color:rgba(255,253,249,.92); position:relative; padding:4px 0;
  text-decoration:none; transition:color .3s; }
.aeg-menu a::after{ content:""; position:absolute; left:0; bottom:-2px; height:2px; width:0;
  background:var(--terra); transition:width .3s; }
.aeg-menu a:hover::after{ width:100%; }
body.aeg-scrolled .aeg-menu a{ color:var(--nil); }
.aeg-nav-right{ display:flex; align-items:center; gap:18px; }
.aeg-burger{ display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:6px; }
.aeg-burger span{ width:26px; height:2px; background:var(--white); display:block; transition:all .3s; }
body.aeg-scrolled .aeg-burger span{ background:var(--nil); }

@media (max-width:860px){
  .aeg-menu{ display:none; }
  .aeg-burger{ display:flex; }
  .aeg-nav-right{ position:relative; z-index:1071; }  /* Lift the burger above the drawer (1060) -> the X stays visible and clickable to close */
  /* NO gap and NO font-size here on purpose. This block used to carry "gap:28px" and
     "font-size:1.1rem"; neither ever rendered, because navfix2's
     ".aeg-nav .aeg-menu{gap:1.3rem !important}" (<=1080px) and
     ".aeg-nav .aeg-menu a{font-size:1.5rem !important}" beat them on !important, and
     the drawer link size is set by the 1.7rem rule in the dropdown block further down.
     Re-measured 2026-09-02 AFTER the panel was made scrollable (below), because the
     original rejection of 28px rested on the missing scrolling. 28px still loses, now
     for a sharper reason: beating the !important needs a new !important on a (0,3,0)
     selector (".aeg-nav .aeg-menu.is-open" - (0,2,0) only ties and loses on source
     order), and with it the six items grow from y 174-493 to y 137-530 at 375x667
     while the cookie banner starts at y=498, so "Reisefuehrer" lands underneath it.
     Scrolling does not rescue it: at 28px the content is 537px inside a 667px panel,
     so the panel never overflows and there is nothing to scroll. At 13px the last item
     ends at 493 and stays clear. Do not re-add a gap or a font-size here. */
  /* Scrollable panel (2026-09-02). This rule used to combine overflow:visible,
     position:fixed and justify-content:center: an expanded accordion at 375x667 put
     706px of content into a 667px box that could not be scrolled at all, and because
     it centred, the overflow was cut off at BOTH ends - the open item's own label was
     pushed off the top (y=-39) while "Reisefuehrer" fell off the bottom (y=668).
     - "safe center" keeps the short menu optically centred (identical to before at
       every tested viewport) but falls back to start-alignment as soon as the content
       is taller than the panel, so nothing is ever clipped at the top. Plain "center"
       makes the leading overflow unreachable even inside a scroll container.
     - max-height clamps the panel to the DYNAMIC viewport. 100vh is the LARGEST
       viewport on mobile Safari/Chrome and would hide the last rows behind the URL
       bar; the 100vh line is the fallback for engines without dvh, it is NOT a
       duplicate declaration - do not delete it.
     - overscroll-behavior:contain keeps a flick inside the drawer instead of scrolling
       the page behind it.
     - the 72px block padding clears the fixed burger/X (y 25-53) when the content is
       start-aligned; it is symmetric on purpose, so it does not move the centred
       layout by a single pixel. */
  .aeg-menu.is-open{ display:flex; position:fixed; top:0; right:0; bottom:0; width:78%; max-width:320px;
    background:var(--nil-deep); flex-direction:column; align-items:flex-start; justify-content:safe center;
    max-height:100vh; max-height:100dvh; overflow-y:auto; overscroll-behavior:contain;
    padding:72px 40px; z-index:1060; box-shadow:-10px 0 40px rgba(0,0,0,.3); }
  /* Page lock behind the open drawer (class set by assets/aegypten-nav.js).
     overscroll-behavior:contain above only stops scroll CHAINING once the drawer is
     itself scrollable; with the accordion closed the drawer has no overflow, and a
     flick over it would still scroll the page underneath (measured). */
  body.aeg-nav-open{ overflow:hidden; }
  .aeg-menu.is-open a{ color:var(--white) !important; }
  body.aeg-scrolled .aeg-menu.is-open a{ color:var(--white) !important; }
  .aeg-burger.is-open span{ background:var(--white); }
  .aeg-burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  .aeg-burger.is-open span:nth-child(2){ opacity:0; }
  .aeg-burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
}

/* ============================================================
   Header polish (2026-06-04, addendum):
   neutralize leftover ts24 backgrounds in the header area +
   secure the nav contrast against a light page top.
   ============================================================ */

/* 1) Force the header wrapper transparent (including the wrapping .tt) */
body header#header,
body .tt:has(> #header){
  background:transparent !important; background-image:none !important;
  box-shadow:none !important; border:0 !important; min-height:0 !important;
  height:auto !important; padding:0 !important;
}

/* 2) Force the magazine nav fixed + transparent (against ts24 specificity) */
body header#header nav.aeg-nav{
  position:fixed !important; top:0 !important; left:0 !important; right:0 !important;
  width:100% !important; background:transparent !important; background-image:none !important;
  box-shadow:none !important;
}
body.aeg-scrolled header#header nav.aeg-nav{
  background:var(--white) !important; box-shadow:0 4px 24px rgba(60,42,20,.1) !important;
}

/* 3) Readability scrim: a subtle dark gradient behind the transparent nav so that
      white logo/menu text stays readable against a light page top.
      Disappears as soon as the nav turns white on scroll. */
body header#header nav.aeg-nav::before{
  content:""; position:absolute; left:0; right:0; top:0; bottom:0; z-index:-1;
  background:linear-gradient(to bottom, rgba(15,41,66,.55), rgba(15,41,66,0));
  transition:opacity .4s; pointer-events:none;
}
body.aeg-scrolled header#header nav.aeg-nav::before{ opacity:0; }

/* ============================================================
   More compact article/news hero (2026-06-04 addendum):
   The full-screen hero (88vh) is meant for the front page only.
   Article/news/spot pages get a compact hero so readers
   reach the text quickly.
   ============================================================ */
.aeg-hero.aeg-hero--article{ min-height:42vh !important; max-height:480px; }
.aeg-hero.aeg-hero--article .aeg-hero__in{ padding-bottom:2.4rem; }

/* Without a featured image: an elegant Nile gradient instead of an empty area */
.aeg-hero.aeg-hero--plain{ min-height:32vh !important; max-height:360px;
  background:linear-gradient(135deg,var(--nil) 0%,var(--nil-deep) 100%); }
.aeg-hero.aeg-hero--plain::after{ background:linear-gradient(180deg,rgba(15,41,66,.1),rgba(15,41,66,.45)); }

/* ============================================================
   Breadcrumb (2026-06-04 addendum):
   Hide the top ts24 breadcrumb entirely — the hero already has
   its own readable breadcrumb (.aeg-crumb). That way the fixed
   nav no longer covers anything and the magazine layout stays
   clean (nav transparent over the hero, as on the front page).
   ============================================================ */
#content > #breadcrumbs,
#breadcrumbs,
.tt #breadcrumbs{ display:none !important; }

/* Additionally safeguard the readability of the transparent nav over the hero */
.aeg-hero .aeg-crumb a{ color:rgba(255,253,249,.95); }
.aeg-hero .aeg-crumb a:hover{ color:var(--sand); }

/* ============================================================
   Hero readability (2026-06-04 addendum):
   The editorial byline (.aeg-meta) + hero breadcrumb sit on top of
   the hero photo -> light text + text shadow, and the lower hero
   area gets a stronger overlay.
   ============================================================ */
.aeg-hero .aeg-meta{
  color:rgba(255,253,249,.94); font-family:var(--label); font-size:.9rem; font-weight:500;
  margin-top:.9rem; display:flex; flex-wrap:wrap; align-items:center; gap:.55rem;
  text-shadow:0 1px 14px rgba(0,0,0,.6), 0 1px 3px rgba(0,0,0,.5);
}
.aeg-hero .aeg-meta strong{ color:#fff; font-weight:700; }
.aeg-hero .aeg-meta .aeg-dot{
  width:4px; height:4px; border-radius:50%; background:var(--sand); display:inline-block; opacity:.85;
}
.aeg-hero .aeg-crumb{ text-shadow:0 1px 12px rgba(0,0,0,.55); }

/* Stronger overlay in the lower hero area (where the H1 + byline sit) */
.aeg-hero.aeg-hero--article::after{
  background:linear-gradient(180deg, rgba(15,41,66,.12) 0%, rgba(15,41,66,.5) 52%, rgba(15,41,66,.86) 100%) !important;
}

/* ============================================================
   More subtle highlight banner (2026-06-04 addendum):
   Instead of a large solid terracotta area -> a slim light
   stripe (desert sand) with terracotta only as an accent.
   ============================================================ */
.aeg-banner{ background:var(--bg-warm) !important; color:var(--grey) !important;
  border-top:3px solid var(--terra); }
.aeg-banner__in{ padding:26px 28px !important; gap:26px; }
.aeg-banner h3{ color:var(--terra-deep) !important; font-family:var(--label);
  font-size:1rem !important; text-transform:uppercase; letter-spacing:.04em; margin-bottom:.35rem; }
.aeg-banner p{ color:var(--grey) !important; line-height:1.55; margin:0; }

/* ============================================================
   REDESIGN 2026-06-04 — layout B · color world "Nachtblau & Gold" (night blue & gold)
   (chosen by the client). Overrides colors + content layout.
   ============================================================ */
:root{
  --nil:#1d2746; --nil2:#141b33; --nil-soft:#33406a;
  --sand:#e6d6ad; --sand-light:#efe7d4; --sand-deep:#d8c190;
  --terra:#bf9b4e; --terra-deep:#a07f33;     /* gold accent */
  --grey:#5e574a; --grey-soft:#8a8275;
  --bg:#faf6ec; --bg-warm:#f1ead9; --ink:#23201a; --white:#fffdf9;
  --sandbg:#f1ead9; --line:#e7ddc9;
}

/* ---- Breadcrumb band (Schema.org), directly below the fixed nav ---- */
body:not(.home) #content{ padding-top:0 !important; }
.aeg-bcband{ background:var(--sandbg); border-bottom:1px solid var(--line); margin-top:62px; }
.aeg-bc-in{ max-width:1200px; margin:0 auto; padding:11px 30px; }
.aeg-bc{ display:flex; align-items:center; flex-wrap:wrap; gap:6px; font-family:var(--label);
  font-weight:600; letter-spacing:.03em; color:var(--grey); }
.aeg-bc a{ text-decoration:none; color:var(--terra-deep); }
.aeg-bc a:hover{ color:var(--terra); }
.aeg-bc-cur span{ color:var(--nil); font-weight:700; }
.aeg-bc-sep{ width:14px; height:14px; fill:none; stroke:var(--sand-deep); stroke-width:2.4; flex:0 0 auto; }
.aeg-bc-home{ width:14px; height:14px; fill:none; stroke:var(--terra-deep); stroke-width:2; margin-right:2px; flex:0 0 auto; }

/* ---- Head: title + byline (compact) ---- */
.aeg-head{ max-width:1200px; margin:0 auto; padding:26px 30px 0; }
.aeg-head .aeg-eyebrow{ font-family:var(--label); font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--terra-deep); }
.aeg-head h1{ font-family:var(--serif); font-weight:700; color:var(--nil);
  margin:.25rem 0 .5rem; max-width:22ch; }
.aeg-head .aeg-meta{ font-family:var(--label); color:var(--grey);
  display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.aeg-head .aeg-dot{ width:4px; height:4px; border-radius:50%; background:var(--sand-deep); display:inline-block; }

/* ---- Header image ---- */
.aeg-figure{ max-width:1200px; margin:18px auto 0; padding:0 30px; }
.aeg-figure img{ width:100%; height:auto; max-height:420px; object-fit:cover; border-radius:8px; box-shadow:var(--shadow-sm); }

/* ---- Two-column layout: reading column (free, NO box) + sidebar ---- */
.content.aeg-page .aeg-shell{ max-width:1200px; margin:0 auto; padding:30px 30px 80px;
  display:block; }
@media(min-width:900px){
  .content.aeg-page .aeg-shell{ display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:54px; align-items:start; }
}
.content.aeg-page .aeg-article{ max-width:760px; background:none; box-shadow:none; padding:0; }
.aeg-article.section-text{ font-size:1.06rem; }
.aeg-article h2{ font-family:var(--serif); font-weight:700; color:var(--nil); font-size:1.7rem;
  line-height:1.2; margin:36px 0 12px; }
.aeg-article h2::before{ content:""; display:block; width:30px; height:2px; background:var(--terra); margin-bottom:12px; }
.aeg-article h3{ font-family:var(--serif); font-size:1.18rem; color:var(--nil-soft); margin:22px 0 6px; }
.aeg-article p{ margin-bottom:16px; } .aeg-article a{ color:var(--terra-deep); }
.aeg-article p.lead{ font-family:var(--serif); font-style:italic; font-weight:500; font-size:1.3rem;
  line-height:1.6; color:var(--nil); border:0; background:none; padding:0; margin-bottom:26px; }
.aeg-article p.lead strong{ font-style:normal; }

/* Hide the inline questions box (the sidebar contents replace it) */
.aeg-article .aeg-questionbox{ display:none !important; }
/* The CTA stays a colored block (no "text in a box" problem, intentional) */
.aeg-article .aeg-cta{ background:linear-gradient(135deg,var(--nil),var(--nil2)); color:#fff;
  border:0; border-radius:8px; padding:6px 4px; margin:34px 0; }
.aeg-article .aeg-cta .panel-body{ color:#fff; } .aeg-article .aeg-cta a{ color:var(--sand); font-weight:600; }

/* ---- Sidebar ---- */
.content.aeg-page .aeg-side{ position:sticky; top:84px; align-self:start; }
.aeg-side-card{ border-top:3px solid var(--terra); padding-top:14px; margin-bottom:26px; }
.aeg-side-t{ font-family:var(--label); font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; color:var(--nil); margin-bottom:10px; }
/* Quick-facts table in the sidebar: rows instead of a box */
.aeg-side-card table.table-striped{ width:100%; }
.aeg-side-card table.table-striped tr{ display:flex; flex-direction:column; padding:8px 0; border-bottom:1px solid var(--line); }
.aeg-side-card table.table-striped td{ border:0; padding:0; }
.aeg-side-card table.table-striped td:first-child{ font-family:var(--label); font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; color:var(--terra-deep); }
.aeg-side-card table.table-striped td:first-child strong{ font-weight:700; }
.aeg-side-card table.table-striped td:last-child{ color:var(--ink); }
.aeg-toc nav{ display:block; }
.aeg-toc nav a{ display:block; color:var(--nil); text-decoration:none;
  padding:6px 0 6px 14px; border-left:2px solid var(--sand-light); }
.aeg-toc nav a:hover{ border-color:var(--terra); color:var(--terra); }

@media(max-width:900px){ .content.aeg-page .aeg-side{ position:static; } }

/* ---- Do NOT set the content section off as a grey box (client request) ---- */
.aeg-article .section,
.aeg-article div.section-text{
  background:none !important; background-color:transparent !important;
  box-shadow:none !important; border:0 !important; padding:0 !important; margin:0 !important;
}

/* ---- Sidebar boxes without background/stripes (as in the mockup) ---- */
.aeg-side-card table,
.aeg-side-card table.table-striped,
.aeg-side-card table.table-striped tbody,
.aeg-side-card table.table-striped tr,
.aeg-side-card table.table-striped td{
  background:none !important; background-color:transparent !important; box-shadow:none !important;
}
.aeg-side .aeg-toc,
.aeg-side-card.aeg-toc{
  background:none !important; background-color:transparent !important; box-shadow:none !important;
  border-radius:0 !important; padding:14px 0 0 0 !important; border-top:3px solid var(--terra) !important;
}

/* ============================================================
   FRONT PAGE 2026 (night blue & gold) — hubs / destinations / band
   ============================================================ */
.aeg-hero--home .aeg-hero__eyebrow{ font-family:var(--label); font-size:.8rem; font-weight:700;
  letter-spacing:.22em; text-transform:uppercase; color:var(--terra); }
.aeg-hero--home::after{ background:linear-gradient(120deg,rgba(20,27,51,.82) 0%,rgba(20,27,51,.45) 55%,rgba(20,27,51,.22) 100%); }

.aeg-shell2{ max-width:1200px; margin:0 auto; padding:0 30px; }
.aeg-sec{ padding:76px 0; }
.aeg-sec-h{ text-align:center; margin-bottom:46px; }
.aeg-sec-h .aeg-eyebrow{ font-family:var(--label); font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--terra-deep); }
.aeg-sec-h h2{ font-family:var(--serif); font-weight:700; color:var(--nil); margin-top:.4rem; }
.aeg-sec-h p{ color:var(--grey); max-width:54ch; margin:.6rem auto 0; }

/* Hub grid */
.aeg-hubs{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.aeg-hub{ background:var(--white); border:1px solid #ece3d2; border-top:3px solid var(--terra); border-radius:8px;
  padding:30px 26px; text-decoration:none; color:var(--ink); transition:transform .2s,box-shadow .2s; display:block; }
.aeg-hub:hover{ transform:translateY(-4px); box-shadow:0 18px 40px rgba(60,42,20,.12); }
.aeg-hubico{ width:34px; height:34px; fill:none; stroke:var(--terra-deep); stroke-width:1.6; margin-bottom:14px; }
.aeg-hub h3{ font-family:var(--serif); color:var(--nil); margin-bottom:6px; }
.aeg-hub p{ color:var(--grey); margin-bottom:14px; }
.aeg-hublink{ font-family:var(--label); font-weight:700; letter-spacing:.04em;
  text-transform:uppercase; color:var(--terra-deep); }

/* Destinations (night-blue section) */
.aeg-sec--dark{ background:var(--nil); color:#fff; }
.aeg-sec--dark .aeg-sec-h h2{ color:#fff; }
.aeg-sec--dark .aeg-sec-h .aeg-eyebrow{ color:var(--terra); }
.aeg-sec--dark .aeg-sec-h p{ color:rgba(255,253,249,.8); }
.aeg-zgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.aeg-zcard{ border-radius:8px; overflow:hidden; text-decoration:none; background:var(--nil-soft);
  box-shadow:0 10px 30px rgba(0,0,0,.25); transition:transform .2s; }
.aeg-zcard:hover{ transform:translateY(-4px); }
.aeg-zimg{ height:150px; background-size:cover; background-position:center; }
.aeg-zbody{ padding:14px 16px; }
.aeg-ztag{ font-family:var(--label); font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--terra); }
.aeg-zbody h3{ font-family:var(--serif); color:#fff; margin-top:2px; }
.aeg-zmore{ text-align:center; margin-top:34px; }
.aeg-zmore a{ font-family:var(--label); font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--terra); text-decoration:none; border-bottom:2px solid var(--terra); padding-bottom:4px; }

/* Highlight band (gold) */
.aeg-band{ background:var(--terra); color:var(--nil2); }
.aeg-band__in{ max-width:1100px; margin:0 auto; padding:40px 30px; display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.aeg-band h3{ font-family:var(--serif); margin-bottom:4px; color:var(--nil2); }
.aeg-band p{ opacity:.85; }

/* Magazine */
.aeg-mag2{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.aeg-mcard{ border-radius:8px; overflow:hidden; text-decoration:none; background:var(--white); border:1px solid #ece3d2; display:block; }
.aeg-mcard:hover{ box-shadow:0 14px 32px rgba(60,42,20,.12); }
.aeg-mimg{ height:140px; background-size:cover; background-position:center; }
.aeg-mbody{ padding:14px 16px; }
.aeg-mtag{ font-family:var(--label); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--terra-deep); }
.aeg-mbody h3{ font-family:var(--serif); color:var(--nil); margin-top:3px; }

@media(max-width:900px){
  .aeg-hubs,.aeg-zgrid,.aeg-mag2{ grid-template-columns:1fr 1fr; }
  .aeg-band__in{ grid-template-columns:1fr; gap:20px; }
}

/* ============================================================
   Home: editorial text sections + FAQ  (2026-08, "Ägypten" optimization)
   ============================================================ */
.aeg-intro .aeg-prose{ margin:0 auto; }
.aeg-prose{ max-width:820px; }
.aeg-prose h2{ font-family:var(--serif); color:var(--nil); font-weight:700;
  font-size:clamp(1.7rem,3vw,2.2rem); margin:0 0 1.2rem; letter-spacing:-.01em; }
.aeg-prose .aeg-lead{ font-family:var(--serif); font-style:italic; font-weight:500;
  font-size:1.24rem; line-height:1.6; color:var(--nil);
  border-left:3px solid var(--terra); padding-left:1.15rem; margin:0 0 1.5rem; }
.aeg-prose p{ color:var(--grey); font-size:1.06rem; line-height:1.85; margin:0 0 1.2rem; }
.aeg-prose a{ color:var(--terra-deep); font-weight:600; text-decoration:none; }
.aeg-prose a:hover,.aeg-prose a:focus{ color:var(--terra); text-decoration:underline; }

.aeg-rich{ display:grid; grid-template-columns:repeat(2,1fr); gap:38px 48px; max-width:1040px; margin:0 auto; }
.aeg-rich h3{ font-family:var(--serif); color:var(--nil); font-weight:700; font-size:1.3rem; margin:0 0 .55rem; }
.aeg-rich p{ color:var(--grey); font-size:1.02rem; line-height:1.78; margin:0; }
.aeg-rich a{ color:var(--terra-deep); font-weight:600; text-decoration:none; }
.aeg-rich a:hover,.aeg-rich a:focus{ color:var(--terra); text-decoration:underline; }

.aeg-faq-sec{ background:var(--bg-warm); }
.aeg-faq{ max-width:840px; margin:0 auto; }
.aeg-faq-item{ border:1px solid var(--line); border-radius:var(--r); background:var(--white);
  margin-bottom:14px; box-shadow:var(--shadow-sm); overflow:hidden; }
.aeg-faq-item summary{ list-style:none; cursor:pointer; position:relative;
  padding:18px 54px 18px 22px; font-family:var(--serif); font-size:1.14rem; font-weight:600; color:var(--nil); }
.aeg-faq-item summary::-webkit-details-marker{ display:none; }
.aeg-faq-item summary::after{ content:""; position:absolute; right:24px; top:50%;
  width:10px; height:10px; border-right:2px solid var(--terra-deep); border-bottom:2px solid var(--terra-deep);
  transform:translateY(-70%) rotate(45deg); transition:transform .2s ease; }
.aeg-faq-item[open] summary::after{ transform:translateY(-30%) rotate(225deg); }
.aeg-faq-a{ padding:2px 22px 20px; color:var(--grey); line-height:1.8; }
.aeg-faq-a a{ color:var(--terra-deep); font-weight:600; text-decoration:none; }
.aeg-faq-a a:hover,.aeg-faq-a a:focus{ color:var(--terra); text-decoration:underline; }

@media (max-width:720px){
  .aeg-rich{ grid-template-columns:1fr; gap:28px; }
  .aeg-prose .aeg-lead{ font-size:1.14rem; }
}

/* ============================================================
   Classes for former inline style="" attributes (2026-09-02).
   Specificity, not !important, is what makes these win.
   ============================================================ */

/* Related posts under a single post. This .aeg-shell must stay a plain
   full-width block; .content.aeg-page .aeg-shell (0,3,0) turns every
   other shell into the 2-column article grid from 900px up, so these
   selectors carry four classes to outrank it. */
.content.aeg-page .aeg-mag .aeg-shell{ display:block; }
.content.aeg-page .aeg-mag .aeg-shell > h2{ font-size:1.7rem; margin-bottom:1.2rem; }
.content.aeg-page .aeg-mag .aeg-cards{ padding:0; }

/* [stadtkarte] shortcode. Qualified with figure/svg so the rules also
   outrank any single-class or bare-element reset that matches the same
   nodes. The caption colour stays inline (runtime palette). */
figure.aeg-stadtkarte{ margin:1.8em auto; max-width:660px; }
figure.aeg-stadtkarte svg{ width:100%; height:auto; display:block; border-radius:6px; }
figure.aeg-stadtkarte figcaption{ font:italic 14px Georgia,serif; text-align:center; margin-top:.5em; }


/* ============================================================
   MERGED LAYER 01/11 - was aegypten-type.css
   Formerly a separate stylesheet enqueued as 'aegypten-type' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — TYPOGRAPHY SCALING (2026-06-05)

   IMPORTANT: the ts24 parent theme sets html{font-size:62.5%},
   i.e. 1rem = 10px. The aegypten design layer, however, was written for a
   16px base — so the navigation, headings and body copy came out
   about 38% too small (nav 8px, body 10px, H2 17px).

   This layer corrects the visible typography to magazine level.
   Comparison (computed): National Geographic nav 16px / H2 up to 54px,
   GEO.de H1 32px / H2 30px / body 16px. Target values here in rem at
   1rem = 10px (rem number x 10 = px). Loaded AFTER aegypten-design.
   ============================================================ */

/* ---------- Header navigation ---------- */
/* Dead-rule cleanup 2026-09-02: this layer's nav font sizes never rendered.
   font-size:1.6rem, .aeg-logo{font-size:2.4rem} and
   @media(max-width:980px){.aeg-menu.is-open a{font-size:2rem!important}} were all
   re-set later with !important at equal or higher specificity and are removed.
   What wins: nav link 1.65rem from ".aeg-nav .aeg-menu a" (navfix2 block),
   logo 2.4rem from ".aeg-logo" (navmenu block). letter-spacing below still wins. */
.aeg-nav .aeg-menu a{ letter-spacing:.02em; }

/* ---------- Hero ---------- */
.aeg-hero h1{ line-height:1.08; }
.aeg-hero p{ font-size:2rem; line-height:1.5; }
.aeg-hero__eyebrow{ font-size:1.25rem !important; }

/* ---------- Breadcrumb + byline (head) ---------- */
.aeg-bc{ font-size:1.3rem; }
.aeg-head .aeg-eyebrow{ font-size:1.25rem; }
.aeg-head h1{ line-height:1.08; }
.aeg-head .aeg-meta{ font-size:1.35rem; }

/* ---------- Article: body copy + headings ---------- */
.content.aeg-page .aeg-article.section-text{ font-size:1.8rem; line-height:1.75; }
.content.aeg-page .aeg-article p{ font-size:1.8rem; line-height:1.75; }
.content.aeg-page .aeg-article li{ font-size:1.8rem; line-height:1.7; }
.content.aeg-page .aeg-article p.lead{ line-height:1.6; }
.content.aeg-page .aeg-article h2{ line-height:1.2; }
.content.aeg-page .aeg-article h3{ line-height:1.3; }
.section-text .aeg-cta > .panel-body,
.aeg-article .aeg-cta .panel-body{ font-size:1.7rem; line-height:1.6; }

/* ---------- Sidebar ---------- */
.aeg-side-t{ font-size:1.2rem; }
.aeg-side-card table.table-striped td:first-child{ font-size:1.2rem; }
.aeg-side-card table.table-striped td:last-child{ font-size:1.6rem; }
.aeg-toc nav a{ font-size:1.5rem; }

/* ---------- Front page: section headlines + cards ---------- */
.aeg-sec-h .aeg-eyebrow{ font-size:1.25rem; }
.aeg-sec-h p{ font-size:1.7rem; line-height:1.6; }
.aeg-hub p{ font-size:1.55rem; line-height:1.55; }
.aeg-zmore a{ font-size:1.25rem; }
.aeg-band p{ font-size:1.6rem; line-height:1.55; }

/* ---------- Responsive: dial things back a little on small screens ---------- */
@media(max-width:600px){
  .content.aeg-page .aeg-article.section-text,
  .content.aeg-page .aeg-article p,
  .content.aeg-page .aeg-article li{ font-size:1.7rem; }
  /* h2/h3/nav-a removed 2026-09-02 (dead): the type-boost layer re-sets all three
     later - h2 2.9rem / h3 2.15rem in its own max-width:600px block, nav link
     1.65rem !important unconditionally. */
}


/* ============================================================
   MERGED LAYER 02/11 - was aegypten-mobilefix.css
   Formerly a separate stylesheet enqueued as 'aegypten-mobilefix' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   Mobile fix (client request 2026-06-05) — applies to aegypten.de, marrakesch.com,
   nilkreuzfahrten.com (shared layout-B magazine layer).
   As soon as the screen is too narrow (<900px) to show the two sidebar boxes
   ("Auf einen Blick" + "Inhalt"/TOC) beside the text, the layout collapses
   into a single column. Previously the boxes slid to the END of the content.
   Now order:-1 places them ABOVE the body copy.
   (A separate file also cache-busts the W3TC/minify group.)
   ============================================================ */
@media(max-width:899px){
  .content.aeg-page .aeg-shell{ display:flex; flex-direction:column; }
  .content.aeg-page .aeg-side{ order:-1; margin-bottom:26px; }
  .content.aeg-page .aeg-article{ order:0; }
  /* Sidebar cards slightly more compact above the text in mobile mode */
  .content.aeg-page .aeg-side .aeg-side-card{ margin-bottom:18px; }
}


/* ============================================================
   MERGED LAYER 03/11 - was aegypten-modules.css
   Formerly a separate stylesheet enqueued as 'aegypten-modules' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* =========================================================================
   aegypten-de-2026 — adapt the plugin/module teasers to the theme palette
   Fixes the Bootstrap blue of:
   - the fm720 Reisepreisvergleich (price-comparison) teaser (.top-boxes .panel-primary / .btn-info)
   - the "Mehr zu <place>" related box (.same-destination)
   Palette: --nil #1d2746 · --sand #e6d6ad · --terra/gold #bf9b4e · --bg #faf6ec
   ========================================================================= */

/* ---------- fm720 Reisepreisvergleich (price-comparison) teaser ---------- */
.top-boxes .panel,
.t04 .panel { border-radius: var(--r, 6px); overflow: hidden; box-shadow: var(--shadow-sm, 0 2px 8px rgba(60,42,20,.08)); }

.top-boxes .panel-primary,
.t04 .panel-primary { border-color: var(--sand-deep, #d8c190) !important; }

.top-boxes .panel-primary > .panel-heading,
.top-boxes .panel-heading.link,
.t04 .panel-heading {
  background-color: var(--nil, #1d2746) !important;
  background-image: none !important;
  border-color: var(--nil, #1d2746) !important;
  color: var(--white, #fffdf9) !important;
}
.top-boxes .panel-heading.link:hover,
.top-boxes .panel-heading.link:focus { background-color: var(--nil-soft, #33406a) !important; }
.top-boxes .panel-heading .glyphicons,
.top-boxes .panel-heading .glyphicon { color: inherit !important; }

/* Buttons: Bootstrap cyan (.btn-info) becomes the theme gold */
.top-boxes .btn-info,
.t04 .btn-info,
.same-destination .btn-info {
  background-color: var(--terra, #bf9b4e) !important;
  border-color: var(--terra-deep, #a07f33) !important;
  color: #23201a !important;
}
.top-boxes .btn-info:hover,
.top-boxes .btn-info:focus,
.t04 .btn-info:hover,
.same-destination .btn-info:hover {
  background-color: var(--terra-deep, #a07f33) !important;
  border-color: var(--terra-deep, #a07f33) !important;
  color: var(--white, #fffdf9) !important;
}

/* ---------- "Mehr zu <place>" related box (.same-destination) ---------- */
.same-destination { background-color: var(--bg-warm, #f1ead9); }

.same-destination h2.hr,
.same-destination .hr { color: var(--nil, #1d2746) !important; }
.same-destination h2.hr::before,
.same-destination h2.hr::after { background-color: var(--terra, #bf9b4e) !important; border-color: var(--terra, #bf9b4e) !important; }

.same-destination .same-destination-item-inner {
  background-color: var(--white, #fffdf9);
  border: 1px solid var(--sand-deep, #d8c190);
  border-radius: var(--r, 6px);
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(60,42,20,.08));
  transition: box-shadow .2s ease, transform .2s ease;
}
.same-destination .same-destination-item:hover .same-destination-item-inner { box-shadow: var(--shadow, 0 12px 32px rgba(60,42,20,.14)); transform: translateY(-2px); }

.same-destination .same-destination-headline,
.same-destination .same-destination-item .h3,
.same-destination [data-mh="same-destination-headline"] { color: var(--terra-deep, #a07f33) !important; }

.same-destination a,
.same-destination .same-destination-item a { color: var(--nil, #1d2746); }
.same-destination a:hover,
.same-destination .same-destination-item a:hover { color: var(--terra-deep, #a07f33); }

.same-destination .btn,
.same-destination .btn-primary {
  background-color: var(--nil, #1d2746) !important;
  border-color: var(--nil, #1d2746) !important;
  color: var(--white, #fffdf9) !important;
}
.same-destination .btn:hover,
.same-destination .btn-primary:hover {
  background-color: var(--terra-deep, #a07f33) !important;
  border-color: var(--terra-deep, #a07f33) !important;
  color: var(--white, #fffdf9) !important;
}


/* ============================================================
   MERGED LAYER 04/11 - was aegypten-cards.css
   Formerly a separate stylesheet enqueued as 'aegypten-cards' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* aegypten-cards.css — home card / banner font sizes (supplement to aegypten-type.css) */

/* --- Home cards & banner: magazine scale (client request 2026-06-08, consistent with nilkreuzfahrten) --- */
.aeg-card h3{ font-size:1.65rem; line-height:1.22; }
.aeg-card .tag,.aeg-mag .tag{ font-size:1.02rem; }
.aeg-banner p{ font-size:1.2rem; }


/* ============================================================
   MERGED LAYER 05/11 - was aegypten-type-boost.css
   Formerly a separate stylesheet enqueued as 'aegypten-type-boost' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — TYPOGRAPHY BOOST (2026-06-08)
   Client request: the header (nav + logo) and the headings should be
   a little larger still. Loaded AFTER aegypten-type/-modules
   (a separate file = a fresh URL, bypassing the 24h gateway edge cache).
   Base is still 1rem = 10px (ts24 parent: html{font-size:62.5%}).
   ============================================================ */

/* ---------- Header ---------- */
/* Removed 2026-09-02 (dead): .aeg-nav .aeg-menu a{font-size:1.8rem},
   .aeg-logo{font-size:2.8rem} and
   @media(max-width:980px){.aeg-menu.is-open a{font-size:2.2rem!important}}.
   The header sizes that render come from the navfix2 and navmenu blocks below. */

/* ---------- Hero headlines ---------- */
.aeg-hero h1{ font-size:clamp(4rem,6vw,6.2rem) !important; }
.aeg-hero.aeg-hero--article h1{ font-size:clamp(3.2rem,4.4vw,4.4rem) !important; }

/* ---------- Article headings ---------- */
.aeg-head h1{ font-size:clamp(3.9rem,5.6vw,5.4rem) !important; }
.content.aeg-page .aeg-article h2{ font-size:3.3rem !important; }
.content.aeg-page .aeg-article h3{ font-size:2.3rem !important; }
.content.aeg-page .aeg-article p.lead{ font-size:2.35rem; }

/* ---------- Front page: section and card headlines ---------- */
.aeg-sec-h h2{ font-size:clamp(3.4rem,4.6vw,4.8rem) !important; }
.aeg-hub h3{ font-size:2.35rem; }
.aeg-zbody h3, .aeg-mbody h3{ font-size:2.1rem; }
.aeg-band h3{ font-size:2.3rem; }

/* ---------- Dial things back a little on mobile ---------- */
@media(max-width:600px){
  .content.aeg-page .aeg-article h2{ font-size:2.9rem !important; }
  .content.aeg-page .aeg-article h3{ font-size:2.15rem !important; }
  /* nav-a removed 2026-09-02 (dead): a normal declaration cannot beat the
     unconditional ".aeg-nav .aeg-menu a{font-size:1.65rem !important}" below. */
}

/* ---------- Readability: bump up components that render too small because of the 62.5% root (1rem=10px) (2026-08) ----------
   Cause: aegypten-design-2026.css is written against a 16px base (.aeg-btn .86rem etc.)
   while the root is 62.5% -> buttons/lead/contents links/FAQ render ~40% too small. */
.aeg-btn{ font-size:1.5rem !important; }
.aeg-sec p, .aeg-sec li, .aeg-sec a, .aeg-sec td{ font-size:1.7rem !important; }
.aeg-sec .aeg-lead, .aeg-lead{ font-size:2rem !important; line-height:1.55 !important; }
.aeg-faq-a, .aeg-faq-a p, .aeg-sec summary, .aeg-sec details summary{ font-size:1.7rem !important; }
.aeg-sec h3{ font-size:2rem !important; }
.aeg-mtag, .aeg-ztag, .aeg-hublink{ font-size:1.4rem !important; }
@media(max-width:600px){
  .aeg-sec p, .aeg-sec li, .aeg-sec a, .aeg-faq-a, .aeg-sec summary{ font-size:1.65rem !important; }
  .aeg-sec .aeg-lead, .aeg-lead{ font-size:1.9rem !important; }
}

/* Questions-box label "Diese Fragen beantworten wir dir" (design-2026.css .82rem=8px uppercase) raised to
   the theme's usual label size (~13px, like .aeg-eyebrow/.aeg-side-t) — affects ~75 pages. */
.section-text .aeg-questionbox p strong, .aeg-questionbox p strong{ font-size:1.3rem !important; }


/* ============================================================
   MERGED LAYER 06/11 - was aegypten-news-fix.css  --  DELETED 2026-09-02,
   the whole layer was dead. Kept as a marker so the numbering of the other
   merged layers still matches r179031.

   1) Header nav (nav a 1.75rem !important, .aeg-nav .aeg-menu gap 2.2rem,
      .aeg-nav-in max-width 1280px and the whole max-width:1120px block):
      every one of those is re-set later by the navfix2 block with !important
      at the same specificity, so none of them ever reached the page.
   2) News overview scoped on "body.page-id-744": that selector cannot match.
      Page 744 ("News") is the site's page_for_posts, so WordPress renders it
      through the posts index - body_class() emits "blog", never "page-id-744"
      (page-id-N is only added for is_singular()). The navfix2 author already
      spotted this and re-scoped the same design on body.blog; the newslist
      block (layer 09) is what actually styles /news/ today.
   ============================================================ */


/* ============================================================
   MERGED LAYER 07/11 - was aegypten-navfix2.css
   Formerly a separate stylesheet enqueued as 'aegypten-navfix2' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — single-line nav fix + news list design v2 (2026-06-08)

   1) NAV: the menu items wrapped ("TAUCHEN &" / "MEER") because
      white-space:nowrap was missing and the type was a touch too wide.
      -> force nowrap, dial the size back slightly (16.5px), tighten the gap,
         shrink the logo a little, widen the container -> 5 items on ONE line.

   2) NEWS OVERVIEW (/news/): the earlier scoping on body.page-id-744 was wrong
      — the page renders as body.blog (posts index) and the items are
      section.section-text > article.clearfix. Scope it correctly on body.blog here
      and bring it into the aegypten magazine look (serif headlines, terracotta accents,
      a gold button instead of ts24 red, separator rules).

   A separate, never-yet-shipped file = a fresh URL against the
   24h gateway edge cache. Base 1rem = 10px (ts24 parent html{font-size:62.5%}).
   ============================================================ */

/* ============ 1) Header nav: single line ============
   THIS is the block that decides the nav link size and the menu gap, despite the
   navmenu block below calling itself "authoritative": ".aeg-nav .aeg-menu a" is
   (0,2,1) and ".aeg-nav .aeg-menu" is (0,2,0), and both carry !important, so they
   outrank navmenu's ".aeg-menu > a" / ".aeg-menu" (0,1,1) / (0,1,0) no matter that
   navmenu comes later. Live values: nav link 16.5px, gap 17px (13px below 1080px).
   The .aeg-logo and .aeg-nav-in rules that used to sit here were the mirror image -
   same specificity as navmenu's but earlier, so they lost; deleted 2026-09-02.
   Logo and container width are owned by the navmenu block below. */
.aeg-nav .aeg-menu{ gap:1.7rem !important; flex-wrap:nowrap !important; }
.aeg-nav .aeg-menu a{ font-size:1.65rem !important; white-space:nowrap !important; }
@media(max-width:1080px){
  .aeg-nav .aeg-menu a{ font-size:1.5rem !important; }
  .aeg-nav .aeg-menu{ gap:1.3rem !important; }
}

/* ============ 2) News overview (body.blog) ============
   Deleted 2026-09-02: every body.blog rule that used to be here (article.clearfix
   separators, .h4.hr date label incl. its :before/:after, header.articleheader h2
   and its link, the teaser p / p a, img.wp-post-image) is repeated verbatim in the
   newslist block (layer 09) under the SAME body.blog selector, only widened with
   body.category-news. Identical selector, later in the file -> layer 09 always won.
   The two .btn rules below kept only their "span.btn.link" half (2026-09-02): the
   ".btn.btn-info" half was the same selector layer 09 repeats later with the same
   three !important declarations, so it never decided anything. Dropping a selector
   from a list is exactly equivalent to dropping the separate rule it stands for -
   each complex selector in a list is matched and weighted on its own. */

/* "Den ganzen Beitrag lesen": ts24 red/blue -> terracotta/gold */
body.blog .section-text span.btn.link{
  background:var(--terra) !important; border-color:var(--terra) !important; color:#fff !important; }
body.blog .section-text span.btn.link:hover{
  background:var(--terra-deep) !important; border-color:var(--terra-deep) !important; color:#fff !important; }
/* Recolor the dot/arrow element (btn-dot) too, in case it is colored separately */
body.blog .section-text .btn-dot:after,
body.blog .section-text .btn-dot i,
body.blog .section-text .btn-dot .ico{
  background:var(--terra-deep) !important; border-color:var(--terra-deep) !important; color:#fff !important; }


/* ============================================================
   MERGED LAYER 08/11 - was aegypten-navmenu.css
   Formerly a separate stylesheet enqueued as 'aegypten-navmenu' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — main navigation: single-line fix + expanding submenus
   (client request 2026-06-09: "Navi zum Ausklappen, Sehenswürdigkeiten + Reiseziele
   direkt ansteuerbar" — plus the nav on inner pages was broken).

   The original header claimed this file "loads LAST (after navfix2) -> it wins".
   CORRECTED 2026-09-02: loading last is not enough. Its menu rules were written
   as ".aeg-menu" (0,1,0) and ".aeg-menu > a" / ".aeg-item > a" (0,1,1), which lose
   to navfix2's ".aeg-nav .aeg-menu" (0,2,0) and ".aeg-nav .aeg-menu a" (0,2,1) -
   both !important, so specificity decides and source order never gets consulted.
   Those four rules (gap 2rem / 1.5rem, font-size 1.5rem / 1.38rem) are deleted;
   they never rendered. What this block DOES win: .aeg-nav-in and .aeg-logo, whose
   selectors are the same as the earlier layers' but come later.
   Base 1rem = 10px (ts24 parent 62.5%).
   ============================================================ */

/* ===== 1) Bar: container width + logo (the menu itself is owned by navfix2) ===== */
.aeg-nav-in{ max-width:1340px !important; padding-left:20px !important; padding-right:20px !important; gap:14px; }
.aeg-logo{ font-size:2.4rem !important; white-space:nowrap; }
@media (max-width:1180px){
  .aeg-logo{ font-size:2.2rem !important; }
}

/* ===== 2) Dropdown parents + caret ===== */
.aeg-item{ position:relative; display:flex; align-items:center; gap:.4rem; }
.aeg-caret{ background:none; border:0; cursor:pointer; padding:6px 2px; line-height:0;
  color:rgba(255,253,249,.92); display:inline-flex; align-items:center; }
body.aeg-scrolled .aeg-caret{ color:var(--nil); }
.aeg-caret::before{ content:""; width:.7rem; height:.7rem;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px); transition:transform .2s; opacity:.9; }

/* ===== 3) Dropdown panel ===== */
.aeg-sub{ position:absolute; top:calc(100% + 12px); left:0; min-width:240px;
  background:var(--white); border:1px solid var(--line, #e7ddc9); border-radius:10px;
  box-shadow:0 18px 44px rgba(20,27,51,.18); padding:8px;
  display:flex; flex-direction:column; gap:1px;
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s; z-index:1080; }
.aeg-sub::before{ content:""; position:absolute; top:-14px; left:0; right:0; height:14px; } /* hover bridge */
/* SPECIFICITY, deliberate (2026-09-02) - do not shorten these three selectors back
   to ".aeg-sub ...", they will stop rendering. The dropdown links sit inside
   .aeg-menu, so navfix2's ".aeg-nav .aeg-menu a" (0,2,1) !important matches them too;
   a plain ".aeg-sub a" is only (0,1,1) and lost, which is why these links used to
   render at the nav's 16.5px instead of the intended 14px. ".aeg-nav .aeg-sub a" ties
   navfix2 at (0,2,1) and sits later in the file, so it wins on source order - no new
   !important needed. The :hover and .aeg-sub-all rules are raised along with it
   because they used to outrank ".aeg-sub a" and must stay above it, otherwise
   "Alle ... ->" loses its bold gold and the hover colour stops applying.
   The mobile drawer overrides below are ".aeg-menu.is-open ..." (0,3,1)/(0,4,0) and
   still win, so this 14px is desktop-only (drawer sub-links stay 15px). */
.aeg-nav .aeg-sub a{ font-family:var(--sans) !important; text-transform:none !important; letter-spacing:0 !important;
  font-size:1.4rem !important; font-weight:500 !important; color:var(--nil, #1d2746) !important;
  padding:9px 14px !important; border-radius:7px; white-space:nowrap; }
.aeg-sub a::after{ display:none !important; }
.aeg-nav .aeg-sub a:hover{ background:var(--bg-warm, #f1ead9); color:var(--terra-deep, #a07f33) !important; }
.aeg-nav .aeg-sub .aeg-sub-all{ margin-top:4px; border-top:1px solid var(--line, #e7ddc9);
  border-radius:0 0 7px 7px; font-weight:700 !important; color:var(--terra-deep, #a07f33) !important; }

/* ===== 4) Desktop: hover/focus opens it ===== */
@media (min-width:861px){
  .aeg-has-sub:hover > .aeg-sub,
  .aeg-has-sub:focus-within > .aeg-sub{ opacity:1; visibility:visible; transform:translateY(0); }
  .aeg-has-sub:hover .aeg-caret::before{ transform:rotate(225deg) translateY(3px); }
  .aeg-caret{ pointer-events:none; } /* hover is enough; the caret is only an indicator, clicking the text goes to the hub */
}

/* ===== 5) Mobile: accordion inside the slide panel (≤860px) ===== */
@media (max-width:860px){
  .aeg-menu.is-open .aeg-item{ flex-direction:row; flex-wrap:wrap; align-items:center;
    width:100%; gap:0; position:relative; }
  /* Uniform font size for all top-level items in the burger menu
     (plain items + dropdown parents) — overrides type-boost 2.2rem.
     Sub-links are left untouched (line 66). */
  .aeg-menu.is-open > a,
  .aeg-menu.is-open .aeg-item > a{ font-size:1.7rem !important; }
  .aeg-menu.is-open .aeg-item > a{ flex:1 1 auto; }
  .aeg-menu.is-open .aeg-caret{ pointer-events:auto; padding:10px 6px; margin-left:auto; }
  .aeg-menu.is-open .aeg-caret::before{ border-color:#fff; }
  .aeg-menu.is-open .aeg-sub{ position:static; flex-basis:100%; width:100%;
    opacity:1; visibility:hidden; transform:none; height:0; overflow:hidden;
    background:transparent; border:0; box-shadow:none; padding:0; margin:0; min-width:0; }
  .aeg-menu.is-open .aeg-item.is-open > .aeg-sub{ visibility:visible; height:auto; padding:2px 0 10px 14px; }
  .aeg-menu.is-open .aeg-sub a{ color:#fff !important; font-size:1.5rem !important; line-height:1.35 !important; padding:8px 6px !important; }
  .aeg-menu.is-open .aeg-sub a:hover{ background:rgba(255,255,255,.08); color:#fff !important; }
  .aeg-menu.is-open .aeg-sub .aeg-sub-all{ border-top-color:rgba(255,255,255,.2); color:var(--sand, #e6d6ad) !important; }
  .aeg-menu.is-open .aeg-item.is-open .aeg-caret::before{ transform:rotate(225deg) translateY(3px); }
}


/* ============================================================
   MERGED LAYER 09/11 - was aegypten-newslist.css
   Formerly a separate stylesheet enqueued as 'aegypten-newslist' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — news list design (2026-06-12)
   Brings the news list into the aegypten magazine look on BOTH list templates:
     - /news/            = body.blog            (Posts-Index)
     - /category/news/   = body.category-news   (category archive)  <- requested by Mathias
   Markup of both: section.section-text > article.clearfix > header.articleheader
   (span.h4.hr date + h2 headline) + p teaser + img.wp-post-image + a.btn.btn-info.
   Differences accounted for: the category archive has a plain <h2> (without <a>) and
   the button as a.btn.btn-info.btn-block (full width).
   A separate, fresh file reliably busts the pagespeed/edge cache.
   Base 1rem = 10px (ts24 parent html{font-size:62.5%}).
   ============================================================ */

/* ---- Item separation ---- */
body.blog .section-text article.clearfix,
body.category-news .section-text article.clearfix{
  border-bottom:1px solid var(--line); padding-bottom:30px; margin-bottom:34px; }
body.blog .section-text article.clearfix:last-child,
body.category-news .section-text article.clearfix:last-child{ border-bottom:0; }

/* ---- Date (span.h4.hr) as a gold label, ts24 divider removed ----
   Font sizes deliberately in PX instead of rem: the category archive has a
   different rem base (16px) than /news/ (10px, ts24 62.5%) — px keeps both identical. */
body.blog .section-text .h4.hr,
body.category-news .section-text .h4.hr{
  font-family:var(--label); font-size:13px; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--terra-deep);
  border:0 !important; padding:0 !important; margin:0 0 5px !important; }
body.blog .section-text .h4.hr:before, body.blog .section-text .h4.hr:after,
body.category-news .section-text .h4.hr:before, body.category-news .section-text .h4.hr:after{ display:none !important; }

/* ---- Headline (Playfair/Nile) — with OR without <a> ---- */
body.blog .section-text header.articleheader h2,
body.category-news .section-text header.articleheader h2{
  font-family:var(--serif) !important; font-weight:700; font-size:26px !important;
  line-height:1.22; margin:1px 0 8px; color:var(--nil); }
body.blog .section-text header.articleheader h2 a,
body.category-news .section-text header.articleheader h2 a{ color:var(--nil) !important; text-decoration:none; }
body.blog .section-text header.articleheader h2 a:hover,
body.category-news .section-text header.articleheader h2 a:hover{ color:var(--terra-deep) !important; }

/* ---- Teaser / category text ---- */
body.blog .section-text article.clearfix p,
body.category-news .section-text article.clearfix p{ font-size:17px; line-height:1.7; color:var(--ink); }
body.blog .section-text article.clearfix p a,
body.category-news .section-text article.clearfix p a{ color:var(--terra-deep); }

/* ---- Intro lead of the category archive ("Kategorie News") ---- */
body.category-news .section-text .lead{ font-family:var(--serif); color:var(--nil); font-size:22px; }

/* ---- Featured image rounded ---- */
body.blog .section-text img.wp-post-image,
body.category-news .section-text img.wp-post-image{ border-radius:10px; height:auto; }

/* ---- Button: ts24 red/blue -> terracotta/gold (btn-block too) ---- */
body.blog .section-text .btn.btn-info,
body.category-news .section-text .btn.btn-info{
  background:var(--terra) !important; border-color:var(--terra) !important; color:#fff !important; }
body.blog .section-text .btn.btn-info:hover,
body.category-news .section-text .btn.btn-info:hover{
  background:var(--terra-deep) !important; border-color:var(--terra-deep) !important; color:#fff !important; }
/* Do not stretch btn-block (category archive) to full width — keep it compact, left aligned */
body.category-news .section-text .btn.btn-block{ display:inline-block; width:auto; }


/* ============================================================
   MERGED LAYER 10/11 - was aegypten-fm720.css
   Formerly a separate stylesheet enqueued as 'aegypten-fm720' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* ============================================================
   AEGYPTEN.DE 2026 — fm720 offer displays (2026-06-12)

   1) TOP-OFFERS BAND (.t04 / #top-boxes):
      ts24 puts margin-top:-300px on #top-boxes to pull the 3-deal box over the
      search mask in the ts24 template. The aegypten design hides that search
      mask -> the negative margin drags the cards behind the fixed nav (the
      "blue boxes" in the header). Fix: drop the negative margin and place them
      cleanly as an offers band below the nav (the cards themselves are already
      styled navy/sand in aegypten-modules.css).
   ============================================================ */

#content > #top-boxes{
  margin-top:0 !important;
  padding:92px 0 26px !important;
  background:var(--bg-warm, #f1ead9);
  border-bottom:1px solid var(--line, #e7ddc9);
}
/* Context label above the band */
#content > #top-boxes::before{
  content:"Top-Angebote f\00fcr \00c4gypten";
  display:block; max-width:1240px; margin:0 auto; padding:0 22px 12px;
  font-family:var(--label); font-size:13px; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--terra-deep);
}
#content > #top-boxes .top-boxes.section{ max-width:1240px; margin:0 auto; padding:0 22px; background:none !important; }
#content > #top-boxes .top-boxes-row{ margin:0 -10px; }

/* Mobile: a more compact nav -> less top padding */
@media(max-width:600px){
  #content > #top-boxes{ padding-top:74px !important; }
}

/* ============================================================
   2) SINGLE / DETAIL OFFERS (.t23 section-offer, .t12, [fm720]) — Mathias 2026-06-12:
   align the fm720 display on the subpages with the aegypten palette.
   ts24 uses `.btn-primary` here (cyan #00aeef) / red dot buttons -> switch to terracotta/gold.
   Scope: all fm720 blocks ([id^=fm720]) + .section-offer/.t23 -> affects ALL subpages.
   ============================================================ */
[id^="fm720"] .btn-primary,
.section-offer .btn-primary,
.t23 .btn-primary,
.t12 .btn-primary{
  background:var(--terra, #bf9b4e) !important;
  border-color:var(--terra, #bf9b4e) !important;
  color:#fff !important;
}
[id^="fm720"] .btn-primary:hover, [id^="fm720"] .btn-primary:focus,
.section-offer .btn-primary:hover, .t23 .btn-primary:hover, .t12 .btn-primary:hover{
  background:var(--terra-deep, #a07f33) !important;
  border-color:var(--terra-deep, #a07f33) !important; color:#fff !important;
}
/* round dot/arrow on the button (ts24 cyan/red) -> terra-deep */
[id^="fm720"] .btn-dot::after, .section-offer .btn-dot::after, .t23 .btn-dot::after,
[id^="fm720"] .btn-dot > .glyphicons, .section-offer .btn-dot > .glyphicons{
  background-color:var(--terra-deep, #a07f33) !important; color:#fff !important; border-color:var(--terra-deep, #a07f33) !important;
}
/* Price / accent figures (ts24 cyan) in terra-deep */
.section-offer .price .amount, .t23 .price .amount, [id^="fm720"] .price-big{ color:var(--terra-deep, #a07f33) !important; }

/* ============================================================
   3) INLINE THREE-UP BOX (.top-boxes.section via [fm720 id=..] in the content) — e.g. /reisefuehrer/:
   when the t04 three-up box sits IN the content via shortcode (not as the #top-boxes auto-injection),
   embed it cleanly as a block (centered, spaced, small label).
   ============================================================ */
.aeg-article .top-boxes.section,
.aeg-shell .top-boxes.section{ margin:14px 0 30px; }
.aeg-article .top-boxes.section .top-boxes-row,
.aeg-shell .top-boxes.section .top-boxes-row{ margin:0 -10px; }

/* ============================================================
   4) SINGLE-OFFER TEXT STOPPER (.aeg-offers via [fm720 id=..] in the content)
   The network-wide single-offer recipe (piloted on brasilien, live on marokko/ungarn),
   here in the terracotta/gold of the aegypten.de palette. 1 offer per box, 2-3 per page.
   Template: fm720/aeg-offers.template.php  (classes .aeg-*)
   ============================================================ */
.aeg-offers{background:linear-gradient(180deg,#fbf5e7,var(--bg-warm,#f1ead9));border:1px solid var(--line,#e7ddc9);border-radius:16px;padding:18px 20px;margin:30px 0;box-shadow:0 6px 20px rgba(58,42,23,.06)}
.aeg-offers-h{display:flex;align-items:center;gap:9px;font-family:var(--label);font-weight:700;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--terra-deep,#a07f33);margin:0 0 13px}
.aeg-offers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.aeg-offers-grid:has(.aeg-offer:only-child){justify-items:center}
.aeg-offers-grid:has(.aeg-offer:only-child) .aeg-offer{max-width:480px;width:100%}
.aeg-offer{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line,#e7ddc9);border-radius:12px;padding:15px 16px;text-decoration:none!important;color:#3a2a17!important;transition:.2s}
.aeg-offer:hover{box-shadow:0 8px 22px rgba(58,42,23,.13);transform:translateY(-3px);color:#3a2a17!important}
.aeg-offer-stars{color:var(--gold,#c9a227);font-size:13px;letter-spacing:1px}
.aeg-offer-name{font-family:var(--serif,Georgia,'Times New Roman',serif);font-weight:700;font-size:19px;color:#3a2a17;margin:3px 0 2px;line-height:1.25}
.aeg-offer-meta{font-size:13px;color:#7a6a55}
.aeg-offer-foot{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid var(--line,#e7ddc9)}
.aeg-offer-price{font-size:13.5px;color:#5a4a33}.aeg-offer-price strong{font-size:20px;color:var(--terra-deep,#a07f33)}
.aeg-offer-cta{font-family:var(--label);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--terra-deep,#a07f33);white-space:nowrap}
.aeg-offers-more{display:inline-block;margin-top:13px;color:var(--terra-deep,#a07f33)!important;font-weight:600;text-decoration:underline}
.aeg-offers-more:hover{color:#7c5f22!important}
.aeg-article h3.aeg-fm-so-h,h3.aeg-fm-so-h{font-family:var(--serif,Georgia,'Times New Roman',serif);color:#3a2a17;margin:32px 0 2px;font-size:22px}
@media(max-width:560px){.aeg-offers-grid{grid-template-columns:1fr}}


/* ============================================================
   MERGED LAYER 11/11 - was aegypten-urlaub.css
   Formerly a separate stylesheet enqueued as 'aegypten-urlaub' directly after the
   preceding layer. Folded in here verbatim, in the exact same cascade
   position, so one theme = one design stylesheet.
   ============================================================ */
/* =========================================================================
   aegypten-de-2026 — holiday pages: adapt the fm720 offers + "Mehr zum Thema" to
   the aegypten palette + the holiday search box (monetization via reise.de).
   Client request 2026-06-08.
   Palette: --nil #1d2746 · --sand #e6d6ad · Gold #bf9b4e/#a07f33 · --bg #faf6ec
   NEW file (new path) => busts the pagespeed / gateway bundle cache.
   ========================================================================= */

/* =========================================================================
   1) fm720 offers table (.section-offers-table / .t12) — drop the TS24 blue
   ========================================================================= */
.section-offers-table .image-content,
.t12 .offer-table-content .image-content {
  background-color: var(--nil, #1d2746) !important;
  background-image: none !important;
  color: var(--white, #fffdf9) !important;
  border-radius: var(--r, 6px);
  padding: 1.4rem 1.6rem;
}
.section-offers-table .image-content .h1,
.section-offers-table .image-content .h1 em,
.section-offers-table .offer-city,
.section-offers-table .offer-city li {
  color: var(--white, #fffdf9) !important;
  font-family: var(--serif, 'Playfair Display', Georgia, serif) !important;
  font-style: normal !important;
}
.section-offers-table .offer-city li::before,
.section-offers-table .icon.ok li::before { color: var(--terra, #bf9b4e) !important; }

/* Offers table: rules & hover in sand/gold instead of Bootstrap grey/blue */
.section-offers-table .offer-table { background: var(--white, #fffdf9); border-radius: var(--r, 6px); overflow: hidden; }
.section-offers-table .offer-table > tbody > tr > td,
.section-offers-table .offer-table > tbody > tr > th { border-color: var(--line, #e7ddc9) !important; vertical-align: middle; }
.section-offers-table .offer-table.table-striped > tbody > tr:nth-of-type(odd) > td { background-color: var(--bg-warm, #f1ead9) !important; }
.section-offers-table .offer-table.table-hover > tbody > tr:hover > td { background-color: #efe7d4 !important; }
.section-offers-table .price,
.section-offers-table .price .text-nowrap { color: var(--terra-deep, #a07f33) !important; font-weight: 700; }
.section-offers-table .offer-stars .text-warning { color: var(--terra, #bf9b4e) !important; }

/* CTA buttons: Bootstrap cyan (.btn-info) becomes the theme gold */
.section-offers-table .btn-info,
.t12 .btn-info,
.table-offer-button .btn-info {
  background-color: var(--terra, #bf9b4e) !important;
  border-color: var(--terra-deep, #a07f33) !important;
  color: #23201a !important;
  font-family: var(--label, 'Montserrat', sans-serif) !important;
  font-weight: 700;
}
.section-offers-table .btn-info:hover,
.section-offers-table .btn-info:focus,
.table-offer-button .btn-info:hover {
  background-color: var(--terra-deep, #a07f33) !important;
  border-color: var(--terra-deep, #a07f33) !important;
  color: var(--white, #fffdf9) !important;
}

/* =========================================================================
   2) "Mehr zum Thema …" related cards (.child-thumbs-box) — were not styled
      by the child theme so far => they fell back to TS24/reise.de.
   ========================================================================= */
.child-thumbs-box {
  background-color: var(--white, #fffdf9);
  border: 1px solid var(--sand-deep, #d8c190);
  border-radius: var(--r, 6px);
  overflow: hidden;
  box-shadow: var(--shadow-sm, 0 2px 8px rgba(60,42,20,.08));
  transition: box-shadow .2s ease, transform .2s ease;
}
.child-thumbs-box:hover { box-shadow: var(--shadow, 0 12px 32px rgba(60,42,20,.14)); transform: translateY(-2px); }
.child-thumbs-box img { display: block; width: 100%; height: auto; }
.child-thumbs-box a { color: var(--nil, #1d2746); }
.child-thumbs-box a:hover { color: var(--terra-deep, #a07f33); }
/* Heading of the related box ("Mehr zum Thema Urlaub Ägypten") */
.row.clearfix > span.h3,
.container-fluid .row > span.h3 {
  display: block;
  font-family: var(--serif, 'Playfair Display', Georgia, serif);
  color: var(--nil, #1d2746);
  font-size: 2.4rem;
  margin: 1.2rem 0 .6rem;
}

/* =========================================================================
   3) Holiday search box (.aeg-searchbox) — monetization via reise.de
      px values (not rem) because the ts24 parent sets 1rem=10px; px is
      unambiguous here and independent of the parent.
   ========================================================================= */
.aeg-searchbox {
  background: linear-gradient(135deg, #1d2746 0%, #141b33 100%);
  border: 1px solid #33406a;
  border-top: 3px solid #bf9b4e;
  border-radius: 12px;
  padding: 20px 22px;
  margin: 0 0 26px;
  box-shadow: 0 10px 28px rgba(20,27,51,.20);
}
.aeg-searchbox__head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.aeg-searchbox__title {
  font-family: 'Playfair Display', Georgia, serif;
  color: #fffdf9; font-size: 23px; line-height: 1.2; margin: 0; font-weight: 700;
}
.aeg-searchbox__sub { color: #e6d6ad; font-size: 14px; margin: 0; }
.aeg-searchbox form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.aeg-searchbox__field { display: flex; flex-direction: column; flex: 1 1 180px; min-width: 150px; }
.aeg-searchbox__field--small { flex: 0 1 130px; min-width: 110px; }
.aeg-searchbox label {
  font-family: 'Montserrat', sans-serif; text-transform: uppercase; letter-spacing: .04em;
  color: #e6d6ad; font-size: 11px; font-weight: 600; margin: 0 0 5px 2px;
}
.aeg-searchbox select {
  width: 100%; appearance: none; -webkit-appearance: none;
  background: #fffdf9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231d2746' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center;
  border: 1px solid #d8c190; border-radius: 7px; color: #23201a;
  font-size: 15px; font-family: 'Source Sans 3', system-ui, sans-serif;
  padding: 11px 32px 11px 12px; cursor: pointer;
}
.aeg-searchbox select:focus { outline: none; border-color: #bf9b4e; box-shadow: 0 0 0 3px rgba(191,155,78,.3); }
.aeg-searchbox__btn {
  flex: 0 0 auto; border: 0; cursor: pointer;
  background: #bf9b4e; color: #23201a;
  font-family: 'Montserrat', sans-serif; font-weight: 700; font-size: 15px;
  padding: 12px 22px; border-radius: 7px; line-height: 1.1;
  transition: background .15s ease, transform .15s ease;
}
.aeg-searchbox__btn:hover { background: #a07f33; color: #fffdf9; transform: translateY(-1px); }
.aeg-searchbox__note { color: #9aa3c2; font-size: 11.5px; margin: 11px 0 0; }
.aeg-searchbox__note a { color: #e6d6ad; text-decoration: underline; }

@media (max-width: 600px) {
  .aeg-searchbox__field, .aeg-searchbox__field--small { flex: 1 1 100%; }
  .aeg-searchbox__btn { width: 100%; }
}
