/* ELÉNE shared page styles. One copy for every page; each page keeps only what is specific to it.
   Generated from the nodes that were identical in all 11 pages (7 Oct 2026 refactor). */
:root{
  /* Colour — CHROME palette (header/footer/drawer/cookie-bar/note strip). These stay exactly
     the original navy scheme, unchanged — per the partner's explicit "keep the header and
     footer in the same dark blue" instruction (22 Sep 2026 pass). */
  --ground:#1B2D42;      /* 85% of any surface */
  --silver:#E8EBE8;      /* the brand colour. 11.7:1 on ground */
  --depth:#141F2E;       /* where one blue surface meets another */
  --bone:#EFEAE1;        /* sparing. small type, accents */
  --muted:#8FA0B4;       /* secondary text. 4.9:1 on ground */
  --line:#2E4258;        /* hairlines only */
  --line-strong:#5A7B96; /* interactive-control borders — 3.14:1 on ground, 3.72:1 on depth; --line alone fails 1.4.11 */

  /* Colour — BODY palette (everything between the header and footer). This is the reversed
     scheme the partner approved from elene-home-color-preview.html, with the ink one step
     darker per her follow-up note. --page matches the preview's --ground value exactly. */
  --page:#E8EBE8;         /* body/content background — exact match to elene-home-color-preview.html's ground (2026-09-22 correction, reverted from a bone experiment) */
  --ink:#182838;          /* primary body text — 12.5:1 on --page, ~1 step darker than the preview's #1B2D42 */
  --ink-muted:#243646;    /* secondary body text — darkened 22 Sep 2026 for readability, 10.3:1 on --page (was 7.5:1) */
  --panel:#DEE2DD;        /* recessed panel bg within the body (cards, table rows, etc.) */
  --panel-line:#D3D8D2;   /* hairlines within the body */

  /* Type */
  --display:"Cormorant Garamond",Georgia,serif;
  --ui:"IBM Plex Sans",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --track:.34em;         /* the wordmark's tracking, used as structure */

  /* Space — 8px rhythm */
  --s1:8px; --s2:16px; --s3:24px; --s4:40px; --s5:64px; --s6:104px; --s7:160px;

  /* Motion */
  --ease:cubic-bezier(.22,.61,.36,1);
}
html[dir="rtl"]{
  --display:"Amiri",serif;
  --ui:"IBM Plex Sans Arabic",-apple-system,sans-serif;
  --track:0;             /* Arabic is never letter-spaced */
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--bone);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;inset-inline-start:var(--s2);top:-60px;z-index:50;background:var(--bone);color:var(--ground);padding:10px 16px;font-size:14px}
.skip:focus{top:var(--s2)}
.shell{max-width:1280px;margin:0 auto;padding-inline:var(--s3)}
@media(min-width:900px){.shell{padding-inline:var(--s4)}}
html[dir="rtl"] .label{letter-spacing:0;font-size:13px;text-transform:none}
.ftr{padding-block:var(--s5) var(--s4); background:var(--ground); color:var(--silver)}
.ftr-in{display:grid;gap:var(--s4)}
@media(min-width:760px){.ftr-in{grid-template-columns:2fr 1fr 1fr}}
.ftr h2{margin-bottom:var(--s2)}
.ftr ul{list-style:none;display:grid;gap:0;font-size:14px;color:var(--muted)}
.ftr li a{display:flex;align-items:center;min-height:44px}
.ftr a:hover{color:var(--silver)}
.ftr-note{font-size:14px;color:var(--muted);max-width:40ch;margin-top:var(--s2)}
.wa-fab{
  position:fixed; inset-inline-end:var(--s3); bottom:var(--s3); z-index:30;
  width:56px;height:56px;border-radius:50%;
  background:var(--bone);color:var(--ground);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.35);
  transition:transform .2s var(--ease), background .2s var(--ease);
}
.wa-fab:hover{background:var(--silver);transform:translateY(-2px)}
.wa-fab:focus-visible{outline:2px solid var(--bone);outline-offset:3px}
.wa-fab svg{width:26px;height:26px}
.cookie-bar{
  position:fixed; inset-inline:0; bottom:0; z-index:40;
  background:var(--depth); border-top:1px solid var(--line-strong);
  padding:var(--s3); display:none;
}
.cookie-bar.show{display:block}
.cookie-bar-in{
  max-width:1280px; margin:0 auto;
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--s3);
}
.cookie-text{color:var(--muted); font-size:13px; max-width:56ch; line-height:1.6}
.cookie-text a{color:var(--silver); text-decoration:underline; text-underline-offset:2px; margin-inline-start:6px}
.cookie-actions{display:flex; gap:var(--s2); flex-wrap:wrap}
.cookie-btn{
  min-height:44px; padding-inline:var(--s3); border:1px solid var(--line-strong); color:var(--silver); /* explicit — body ink is dark now; without this "Essential only" was navy-on-navy (25 Sep 2026) */
  font-size:12.5px; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap;
  transition:border-color .2s var(--ease), background .2s var(--ease), color .2s var(--ease);
}
html[dir="rtl"] .cookie-btn{letter-spacing:0; text-transform:none; font-size:14px}
.cookie-btn:hover{border-color:var(--muted)}
.cookie-btn.primary{background:var(--bone); color:var(--ground); border-color:var(--bone)}
.cookie-btn.primary:hover{background:var(--silver); border-color:var(--silver)}
.ftr-base a{display:inline-flex;align-items:center;min-height:44px}
.cookie-manage-link{background:none;border:0;color:var(--muted);font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:2px;cursor:pointer;display:inline-flex;align-items:center;min-height:44px}
.cookie-manage-link:hover{color:var(--silver)}
