/* shared by every page: accessibility menu, cookie consent, WhatsApp button */
:root{--ds-gold:#d4af5f;--ds-gold2:#f3d98b;--ds-ink:#070707}

/* accessibility menu */
.a11y-btn{position:fixed;left:18px;bottom:18px;z-index:95;width:54px;height:54px;border-radius:50%;background:#1a56db;color:#fff;border:2px solid var(--ds-gold2);box-shadow:0 8px 24px rgba(0,0,0,.5);display:grid;place-items:center;cursor:pointer;transition:transform .3s}
.a11y-btn:hover{transform:scale(1.07)}
.a11y-btn svg{width:30px;height:30px}
.a11y-btn:focus-visible{outline:3px solid var(--ds-gold2);outline-offset:3px}
.a11y-panel{position:fixed;left:18px;bottom:84px;z-index:96;width:min(360px,calc(100vw - 36px));max-height:min(78vh,680px);overflow:auto;background:#fff;color:#111;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.55);padding:18px;font-family:Arial,Heebo,sans-serif;direction:rtl;display:none}
.a11y-panel.on{display:block}
.a11y-panel h2{font-size:1.15rem;margin:0 0 12px;display:flex;justify-content:space-between;align-items:center;font-family:inherit}
.a11y-panel h2 button{font-size:1.3rem;background:none;border:0;cursor:pointer;color:#111;width:40px;height:40px}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.a11y-grid button{min-height:64px;border:2px solid #d9d9d9;border-radius:12px;background:#f6f6f6;color:#111;font-size:.88rem;font-family:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px;line-height:1.25}
.a11y-grid button[aria-pressed="true"]{border-color:#1a56db;background:#e8efff;color:#0b3aa6;font-weight:700}
.a11y-panel button:focus-visible,.a11y-panel a:focus-visible{outline:3px solid #1a56db;outline-offset:2px}
.a11y-grid .ic{font-size:1.25rem;line-height:1}
.a11y-size{grid-column:1 / -1;display:flex;gap:8px;align-items:center;justify-content:space-between;border:2px solid #d9d9d9;border-radius:12px;padding:8px 12px;background:#f6f6f6}
.a11y-size button{min-height:40px;min-width:44px;border:2px solid #bbb;border-radius:10px;background:#fff;font-size:1.1rem;cursor:pointer;color:#111}
.a11y-foot{display:flex;justify-content:space-between;gap:8px;margin-top:12px}
.a11y-foot a,.a11y-foot button{flex:1;text-align:center;padding:10px;border-radius:10px;border:2px solid #111;background:#fff;color:#111;font-size:.9rem;text-decoration:none;cursor:pointer;font-family:inherit}
.a11y-guideline{position:fixed;left:0;right:0;height:14px;margin-top:-7px;background:rgba(26,86,219,.25);border-block:2px solid #1a56db;pointer-events:none;z-index:94;display:none}
html.a11y-guide .a11y-guideline{display:block}
html.a11y-contrast body{filter:contrast(1.5)}
html.a11y-invert body{filter:invert(1) hue-rotate(180deg)}
html.a11y-invert img,html.a11y-invert video,html.a11y-invert canvas{filter:invert(1) hue-rotate(180deg)}
html.a11y-gray body{filter:grayscale(1)}
html.a11y-light body,html.a11y-light section,html.a11y-light footer,html.a11y-light header,html.a11y-light main,html.a11y-light div:not(.a11y-panel *):not(.ck *):not(.ckd *){background:#fff!important;background-image:none!important;color:#111!important;-webkit-text-fill-color:#111!important;text-shadow:none!important}
html.a11y-light canvas,html.a11y-light .grain{display:none!important}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px;outline:2px dashed currentColor;outline-offset:2px}
html.a11y-font body,html.a11y-font body *{font-family:Arial,Helvetica,sans-serif!important;letter-spacing:0!important}
html.a11y-spacing body *{line-height:1.8!important;word-spacing:.14em!important;letter-spacing:.03em!important}
html.a11y-headings h1,html.a11y-headings h2,html.a11y-headings h3{outline:3px solid #1a56db;outline-offset:4px}
html.a11y-focus *:focus{outline:4px solid #ff0!important;outline-offset:3px!important;box-shadow:0 0 0 7px #1a56db!important}
html.a11y-align body *{text-align:right!important}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24'%3E%3Cpath d='M3 2l7 19 2.5-7.5L20 11z' fill='black' stroke='white' stroke-width='1.5'/%3E%3C/svg%3E") 4 2,auto!important}
html.a11y-cursor .cur,html.a11y-cursor .cur-dot{display:none!important}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none!important;transition:none!important}
html.a11y-still .grain,html.a11y-still .cur,html.a11y-still .cur-dot{display:none!important}
html.a11y-noimg img,html.a11y-noimg video,html.a11y-noimg canvas{visibility:hidden!important}

/* cookie consent */
.ck{position:fixed;z-index:92;bottom:92px;right:18px;width:min(400px,calc(100vw - 32px));translate:0 30px;opacity:0;flex-direction:column;align-items:stretch!important;transition:translate .8s cubic-bezier(.22,1,.36,1),opacity .6s,visibility .6s!important;background:rgba(14,13,11,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#f4efe4;border:1px solid rgba(212,175,95,.35);border-radius:22px;padding:18px 20px;display:flex;gap:16px;align-items:center;box-shadow:0 30px 80px rgba(0,0,0,.6);font-family:Heebo,Arial,sans-serif;direction:rtl;transition:translate .8s cubic-bezier(.22,1,.36,1);visibility:hidden}
.ck.on{translate:0 0;opacity:1;visibility:visible}
.ck .ck__ico{position:absolute;top:-22px;right:22px}.ck__txt{padding-top:10px}.ck__btns{justify-content:flex-start}
.ck__ico{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;color:var(--ds-ink);background:linear-gradient(135deg,#a07a2c,#f3d98b 55%,#c99a3a)}
.ck__ico svg{width:26px;height:26px}
.ck__txt b{display:block;font-weight:500;margin-bottom:2px}
.ck__txt p{margin:0;font-size:.9rem;color:#c9c3b6;line-height:1.5}
.ck__txt a{color:var(--ds-gold2);text-decoration:underline;text-underline-offset:3px}
.ck__btns{display:flex;gap:8px;flex:none;flex-wrap:wrap;justify-content:flex-end}
.ck__b{height:42px;padding:0 18px;border-radius:999px;border:1px solid rgba(244,239,228,.35);background:transparent;color:#f4efe4;font:inherit;font-size:.9rem;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.ck__b:hover{border-color:var(--ds-gold2);color:var(--ds-gold2)}
.ck__b--gold{background:linear-gradient(135deg,#b8892e,#f3d98b 55%,#c99a3a);color:var(--ds-ink);border:0;font-weight:500}
.ck__b--gold:hover{color:var(--ds-ink);filter:brightness(1.08)}
.ck__b--link{border:0;text-decoration:underline;text-underline-offset:4px;padding:0 8px}
.ck__b:focus-visible{outline:3px solid var(--ds-gold2);outline-offset:2px}
.ckd{position:fixed;inset:0;z-index:97;background:rgba(0,0,0,.7);display:grid;place-items:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .35s;font-family:Heebo,Arial,sans-serif;direction:rtl}
.ckd.on{opacity:1;pointer-events:auto}
.ckd__box{width:min(520px,100%);background:#0f0e0c;color:#f4efe4;border:1px solid rgba(212,175,95,.35);border-radius:22px;padding:26px}
.ckd__box h2{margin:0 0 8px;font-size:1.4rem;font-weight:500}
.ckd__box > p{margin:0 0 16px;color:#c9c3b6;font-size:.95rem}
.ckd__row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid rgba(212,175,95,.18);cursor:pointer;position:relative}
.ckd__row b{display:block;font-weight:500}
.ckd__row span{font-size:.85rem;color:#a8a294}
.ckd__on{flex:none;color:var(--ds-gold2)!important}
.ckd__row input{position:absolute;opacity:0;width:44px;height:26px;left:0}
.ckd__sw{flex:none;width:46px;height:26px;border-radius:99px;background:#3a3832;position:relative;transition:background .3s}
.ckd__sw::after{content:"";position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:#f4efe4;transition:transform .3s}
.ckd__row input:checked + .ckd__sw{background:var(--ds-gold)}
.ckd__row input:checked + .ckd__sw::after{transform:translateX(-20px)}
.ckd__row input:focus-visible + .ckd__sw{outline:3px solid var(--ds-gold2);outline-offset:2px}
.ckd__btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
@media (max-width:760px){.ck{right:12px;left:12px;width:auto;bottom:76px;padding:16px}.ck__ico{display:none}.ck__btns{justify-content:stretch}.ck__btns .ck__b{flex:1}}

/* floating WhatsApp */
.wa-fab{position:fixed;right:18px;bottom:18px;z-index:93;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px rgba(37,211,102,.35),0 0 0 2px rgba(243,217,139,.6);transition:transform .35s cubic-bezier(.22,1,.36,1)}
.wa-fab svg{width:32px;height:32px}
.wa-fab:hover{transform:scale(1.08) rotate(-6deg)}
.wa-fab::before,.wa-fab::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:wa-ring 2.6s cubic-bezier(.22,1,.36,1) infinite;pointer-events:none}
.wa-fab::after{animation-delay:1.3s}
@keyframes wa-ring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.8);opacity:0}}
.wa-fab__tip{position:absolute;right:72px;top:50%;translate:0 -50%;white-space:nowrap;background:#f4efe4;color:#111;font:500 .9rem Heebo,Arial,sans-serif;padding:8px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.35);opacity:0;transform:translateX(10px);transition:opacity .3s,transform .4s;pointer-events:none}
.wa-fab:hover .wa-fab__tip,.wa-fab:focus-visible .wa-fab__tip{opacity:1;transform:none}
.wa-fab:focus-visible{outline:3px solid var(--ds-gold2);outline-offset:4px}
@media (max-width:600px){.wa-fab{width:54px;height:54px;right:12px;bottom:12px}.a11y-btn{width:50px;height:50px;left:12px;bottom:12px}.a11y-panel{left:12px;bottom:72px}.wa-fab__tip{display:none}}
@media (prefers-reduced-motion:reduce){.wa-fab::before,.wa-fab::after{animation:none;opacity:0}}
html.a11y-still .wa-fab::before,html.a11y-still .wa-fab::after{display:none}
