/* Egyptian Puzzlers design layer. Source: build/ep.src.css -> mu-plugin/ep-design/ep.css (build/make_css.py).
   Tokens: .elementor.elementor = .elementor, .elementor-heading-title = .elementor-heading-title, .elementor-button = .elementor-button.
   Everything is scoped to body.ep-design or an ep- class. Layout uses logical properties (RTL-ready). */

@font-face{font-family:"EP Kiona";src:url(fonts/Kiona-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"EP Kiona";src:url(fonts/Kiona-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"EP Kiona";src:url(fonts/Kiona-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"EP Kiona";src:url(fonts/Kiona-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"EP Archivo Narrow";src:url(fonts/ArchivoNarrow-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"EP Archivo Narrow";src:url(fonts/ArchivoNarrow-SemiBold.woff2) format("woff2");font-weight:600 700;font-display:swap}
@font-face{font-family:"EP Archivo Black";src:url(fonts/ArchivoBlack-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"EP Rage";src:url(fonts/RageItalic.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
  --ep-ink:#1d1852;--ep-deep:#120f38;--ep-rose:#e0002c;--ep-heart:#b80027;--ep-gold:#ff8d1b;--ep-paper:#f6f6fa;
  --ep-display:"EP Kiona","Arial Narrow",sans-serif;
  --ep-heavy:"EP Archivo Black","Arial Black",sans-serif;
  --ep-body:"EP Archivo Narrow",system-ui,sans-serif;
  --ep-snap:cubic-bezier(.18,.9,.22,1.02);--ep-paper-ease:cubic-bezier(.25,.8,.3,1);
  --ep-tilt:1;--ep-gx:20px;--ep-tear:clamp(16px,2.6vw,42px);
  --ep-torn-a:url(textures/torn-a.svg);--ep-torn-b:url(textures/torn-b.svg);--ep-torn-c:url(textures/torn-c.svg);
}
@media(min-width:640px){:root{--ep-gx:32px}}
@media(min-width:768px){:root{--ep-gx:clamp(20px,6vw,84px)}}
@media(max-width:767px){:root{--ep-tilt:.5}}

html:has(body.ep-design){background:#1d1852;overflow-x:clip;scroll-behavior:smooth}
body.ep-design{background:#1d1852;overflow-x:clip;color:#fff;font-family:var(--ep-body);-webkit-font-smoothing:antialiased;
  --bg:#1d1852;--fg:#fff;--fg-2:#d0cfe2;--fg-3:#9896b8;--rule:rgba(255,255,255,.18);--accent:#e0002c}
body.ep-design ::selection{background:#e0002c;color:#fff}
body.ep-design .elementor.elementor *,body.ep-design .elementor.elementor *::before,body.ep-design .elementor.elementor *::after{border-radius:0}
body.ep-design a{color:inherit;text-decoration:none}
body.ep-design .elementor.elementor :focus-visible{outline:2px solid var(--accent,#e0002c);outline-offset:3px}
body.ep-design .elementor.elementor .ep-tone-red :focus-visible{outline-color:#1d1852;box-shadow:0 0 0 4px rgba(255,255,255,.9)}
body.ep-design [id]{scroll-margin-top:72px}

/* tones */
.ep-tone-ink{--bg:#1d1852;--bgv:rgba(29,24,82,.91);--fg:#fff;--fg-2:#d0cfe2;--fg-3:#9896b8;--rule:rgba(255,255,255,.18);--accent:#e0002c}
.ep-tone-deep{--bg:#120f38;--bgv:rgba(18,15,56,.91);--fg:#fff;--fg-2:#d0cfe2;--fg-3:#9896b8;--rule:rgba(255,255,255,.16);--accent:#e0002c}
.ep-tone-red{--bg:#e0002c;--bgv:rgba(224,0,44,.91);--fg:#fff;--fg-2:#fff;--fg-3:rgba(255,255,255,.95);--rule:rgba(255,255,255,.34);--accent:#1d1852}
.ep-tone-white{--bg:#fff;--bgv:#fff;--fg:#1d1852;--fg-2:#4a476a;--fg-3:#67648a;--rule:rgba(29,24,82,.13);--accent:#e0002c}

/* container reset: Elementor's default 10px padding and 20px gaps off, layout comes from the classes below */
.elementor.elementor .e-con.ep-c{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;color:var(--fg)}
.elementor.elementor .ep-c .elementor-heading-title,.elementor.elementor .ep-c .elementor-widget-text-editor{font-family:var(--ep-body);font-weight:400;color:inherit;line-height:1.5;margin:0;padding:0;letter-spacing:normal;text-transform:none}
.elementor.elementor .ep-c .elementor-widget-text-editor p,.elementor.elementor .ep-c blockquote{margin:0;padding:0;border:0;font:inherit}
.elementor.elementor .ep-c .elementor-widget-text-editor{display:block}
.elementor.elementor .ep-c img{max-width:100%;height:auto;display:block}
.elementor.elementor .ep-photo img{filter:contrast(1.06) saturate(1.12);width:100%;height:100%;object-fit:cover}
.elementor.elementor .ep-accent{color:var(--accent)}
.elementor.elementor .ep-c .elementor-heading-title>span{display:block}

/* bands */
.elementor.elementor .e-con.ep-band{background-color:var(--bg);background-image:linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:auto,128px 128px;background-blend-mode:normal,overlay;padding:clamp(80px,11vw,156px) var(--ep-gx)}
.elementor.elementor .e-con.ep-band--tall{padding-block:clamp(96px,14vw,200px)}
.elementor.elementor .e-con.ep-band--v{padding-inline:0}
.elementor.elementor .e-con.ep-band--none{padding:0}
.elementor.elementor .e-con.ep-halftone{background-image:radial-gradient(circle at center,rgba(0,0,0,.06) 1px,transparent 1.2px),linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:7px 7px,auto,128px 128px;background-blend-mode:normal,normal,overlay}
.elementor.elementor .e-con[class*="ep-torn-"]::after{content:"";position:absolute;inset-inline:0;top:calc(-1*var(--ep-tear) + 1px);height:var(--ep-tear);background:inherit;-webkit-mask:var(--tear) 0 0/100% 100% no-repeat;mask:var(--tear) 0 0/100% 100% no-repeat;pointer-events:none;z-index:2}
.elementor.elementor .ep-torn-a{--tear:var(--ep-torn-a)}.elementor.elementor .ep-torn-b{--tear:var(--ep-torn-b)}.elementor.elementor .ep-torn-c{--tear:var(--ep-torn-c)}
.elementor.elementor .e-con.ep-wrap{max-width:1560px;margin-inline:auto;width:100%}
.elementor.elementor .e-con.ep-wrap--px{padding-inline:var(--ep-gx)}
.elementor.elementor .elementor-widget.ep-art{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.elementor.elementor .ep-band>.e-con,.elementor.elementor .ep-band>.elementor-widget:not(.ep-art){z-index:1}

/* type helpers */
.elementor.elementor .ep-mark{align-self:flex-start}
.elementor.elementor .ep-mark .elementor-heading-title{display:inline-flex;max-width:100%;border-bottom:2px solid var(--accent);padding-bottom:12px;font-family:var(--ep-display);font-size:clamp(14px,1.4vw,21px);text-transform:uppercase;line-height:1.15;letter-spacing:.08em;color:var(--fg)}
.elementor.elementor .ep-kicker .elementor-heading-title{font-weight:600;font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--fg-3)}
.elementor.elementor .elementor-widget.ep-note,.elementor.elementor .ep-note .elementor-heading-title{font-family:ui-monospace,"SFMono-Regular",Menlo,monospace;font-size:11px;letter-spacing:.04em;color:var(--fg-3);line-height:1.5}
.elementor.elementor .ep-h1 .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(34px,6.8vw,110px);line-height:.9;letter-spacing:-.015em}
.elementor.elementor .ep-h2 .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(34px,5.2vw,78px);line-height:.92;letter-spacing:-.015em}

/* stamps */
.elementor.elementor .ep-stamp{align-self:flex-start;flex:none}
.elementor.elementor .ep-stamp .elementor-heading-title{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;line-height:1;letter-spacing:.22em;padding:8px 12px}
.elementor.elementor .ep-stamp--banner{transform:skewX(-9deg);background:var(--ep-rose)}
.elementor.elementor .ep-stamp--banner .elementor-heading-title{padding:10px 20px;color:#fff;transform:skewX(9deg)}
.elementor.elementor .ep-stamp--gold .elementor-heading-title{background:var(--ep-gold);color:var(--ep-ink)}
.elementor.elementor .ep-stamp--outline .elementor-heading-title{border:1px solid var(--rule);color:var(--fg-2)}

/* buttons */
.elementor.elementor .ep-btn .elementor-button{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:13px;line-height:1.5;padding:16px 28px;background:var(--accent);color:#fff;fill:#fff;border:0;box-shadow:4px 4px 0 0 var(--fg);transition:transform .34s var(--ep-snap),box-shadow .34s var(--ep-snap),background-color .2s,color .2s,filter .2s;display:inline-flex;align-items:center}
.elementor.elementor .ep-btn .elementor-button:hover,.elementor.elementor .ep-btn .elementor-button:focus-visible{box-shadow:2px 2px 0 0 var(--fg);filter:brightness(1.1)}
.elementor.elementor .ep-btn--lg .elementor-button{padding:22px 36px;font-size:15px}
.elementor.elementor .ep-btn--sm .elementor-button{padding:12px 20px;font-size:11px;box-shadow:none}
.elementor.elementor .ep-btn--arrow .elementor-button::after{content:"\2192";margin-inline-start:12px;display:inline-block;transition:transform .3s var(--ep-snap)}
.elementor.elementor .ep-btn--arrow .elementor-button:hover::after{transform:translateX(4px)}
[dir="rtl"] .elementor.elementor .ep-btn--arrow .elementor-button::after{transform:rotate(180deg)}
.elementor.elementor .ep-btn--ghost .elementor-button{background:transparent;color:var(--fg);border:1px solid var(--fg);box-shadow:none}
.elementor.elementor .ep-btn--ghost .elementor-button:hover{background:var(--fg);color:var(--bg);filter:none;box-shadow:none}
.elementor.elementor .ep-btn--quiet .elementor-button{background:transparent;color:var(--fg-2);border:1px solid var(--rule);box-shadow:none}
.elementor.elementor .ep-btn--quiet .elementor-button:hover{border-color:var(--fg);color:var(--fg);filter:none;box-shadow:none}
.elementor.elementor .ep-btn{flex:none}

/* underline link */
.elementor.elementor .ep-navlink a,.elementor.elementor a.ep-navlink{position:relative;display:inline-block}
.elementor.elementor .ep-navlink a::after,.elementor.elementor a.ep-navlink::after{content:"";position:absolute;inset-inline-start:0;bottom:-3px;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .32s var(--ep-snap)}
[dir="rtl"] .elementor.elementor .ep-navlink a::after{transform-origin:right center}
.elementor.elementor .ep-navlink a:hover::after,.elementor.elementor .ep-navlink a:focus-visible::after,.elementor.elementor a.ep-navlink:hover::after{transform:scaleX(1)}

/* polaroid frames */
.elementor.elementor .e-con.ep-polaroid{background:var(--ep-paper);box-shadow:0 1px 1px rgba(29,24,82,.1),0 6px 14px rgba(29,24,82,.11),0 18px 34px rgba(29,24,82,.07)}

/* marquee */
.elementor.elementor .ep-marquee-w{overflow:hidden;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;color:var(--fg-2);letter-spacing:-.015em}
.ep-marquee{display:flex;width:max-content;white-space:nowrap;will-change:transform;animation:epMarquee 40s linear infinite}
.ep-marquee>span{display:flex}.ep-marquee i{font-style:normal;padding-inline:.35em}.ep-marquee b{font-weight:inherit;color:var(--accent);padding-inline:.5em}
[dir="rtl"] .ep-marquee{animation-name:epMarqueeRtl}
@keyframes epMarquee{to{transform:translate3d(-50%,0,0)}}
@keyframes epMarqueeRtl{to{transform:translate3d(50%,0,0)}}
@keyframes epFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes epPulse{0%,100%{opacity:1;transform:scaleY(1)}50%{opacity:.4;transform:scaleY(.6)}}
@keyframes epArrive{from{opacity:0;transform:translate3d(var(--ax,0),var(--ay,26px),0) rotate(var(--ar,0deg))}to{opacity:1;transform:none}}

/* reveal: only hidden once the script has confirmed it will reveal */
html.ep-js .ep-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
html.ep-js .ep-reveal.is-in{opacity:1;transform:none}

/* jigsaw pieces (built by ep.js) */
.ep-puzzle{position:relative;width:100%}
.ep-puzzle>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ep-puzzle.is-cut>img{display:none}
.ep-piece{position:absolute;will-change:transform;filter:drop-shadow(0 1px 0 rgba(29,24,82,.5)) drop-shadow(0 6px 10px rgba(29,24,82,.26));transition:opacity .4s var(--ep-paper-ease)}
.ep-piece>div{position:absolute;overflow:hidden}.ep-piece img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:contrast(1.06) saturate(1.12);max-width:none}
.ep-piece>span{position:absolute;inset:0;background:var(--ep-ink);opacity:0;transition:opacity .34s var(--ep-paper-ease);pointer-events:none}
.ep-socket{position:absolute;pointer-events:none}
.ep-crest{position:relative;perspective:900px}
.ep-crest__in{position:relative;width:100%;height:100%;transition:transform .25s ease-out;transform-style:preserve-3d}
.ep-crest img{position:absolute;user-select:none;-webkit-user-drag:none;will-change:transform;max-width:none}
.ep-crest>img.ep-crest__flat{position:static;width:100%;height:auto}
.ep-crest.is-cut>img.ep-crest__flat{display:none}

/* ---------- header ---------- */
.elementor.elementor .e-con.ep-header{position:fixed;inset-inline:0;top:var(--wp-admin--admin-bar--height,0px);z-index:120;flex-direction:row;align-items:center;gap:20px;padding:12px 16px;background:transparent;transition:background-color .3s,box-shadow .3s}
.elementor.elementor .e-con.ep-header.is-solid{background:#1d1852;box-shadow:0 1px 0 0 var(--rule)}
.elementor.elementor .ep-header>*{flex:none}
.elementor.elementor .ep-header__logo img{height:42px;width:44px;object-fit:contain}
.elementor.elementor .ep-header__name{display:none}
.elementor.elementor .ep-header__name .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:13px;line-height:1.05;letter-spacing:-.015em}
.elementor.elementor .ep-header__nav{display:none;margin-inline-end:auto}
.elementor.elementor .ep-header__nav .elementor-nav-menu{display:flex;gap:20px}
.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item{padding:10px 0;font-family:var(--ep-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;line-height:1.5;color:#fff;fill:#fff;position:relative;background:transparent}
.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item::after{content:"";position:absolute;inset-inline-start:0;bottom:3px;top:auto;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .32s var(--ep-snap);opacity:1}
.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item:hover::after,.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item:focus-visible::after{transform:scaleX(1)}
.elementor.elementor .ep-header__reg{display:none}
.elementor.elementor .ep-header__open{margin-inline-start:auto}
.elementor.elementor .ep-header__reg+.ep-header__open{margin-inline-start:0}
.elementor.elementor .ep-menubtn .elementor-button{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:-.015em;line-height:1.5;min-height:44px;padding:10px 14px;background:transparent;color:var(--fg);border:1px solid var(--fg);transition:background-color .2s,color .2s}
.elementor.elementor .ep-menubtn .elementor-button:hover{background:var(--fg);color:var(--bg)}
@media(min-width:640px){.elementor.elementor .ep-header__name{display:block}}
@media(min-width:768px){.elementor.elementor .e-con.ep-header{padding-inline:clamp(16px,4vw,48px)}.elementor.elementor .ep-header__reg{display:block;margin-inline-start:auto}}
@media(min-width:1280px){.elementor.elementor .ep-header__nav{display:block}.elementor.elementor .ep-header__open{display:none}.elementor.elementor .ep-header__reg{margin-inline-start:0}}

.elementor.elementor .e-con.ep-menu{position:fixed;inset:0;z-index:200;display:none;flex-direction:column;overflow-y:auto;padding:20px var(--ep-gx);background-color:var(--bg);background-image:linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:auto,128px 128px;background-blend-mode:normal,overlay}
.elementor.elementor .e-con.ep-menu.is-open{display:flex}
.elementor.elementor .e-con.ep-menu__top{flex-direction:row;align-items:center;justify-content:space-between}
.elementor.elementor .ep-menu__logo img{height:46px;width:auto}
.elementor.elementor .ep-menu__nav{margin-top:32px;flex:1;display:flex;flex-direction:column;justify-content:center}
.elementor.elementor .ep-menu__nav .elementor-nav-menu{display:block}
.elementor.elementor .ep-menu__nav .elementor-nav-menu a.elementor-item{display:block;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(26px,7.2vw,58px);line-height:1.02;letter-spacing:-.015em;color:#fff;border-bottom:1px solid var(--rule);padding:clamp(6px,1.4vh,14px) 0;transition:padding .3s var(--ep-snap);background:transparent;white-space:normal}
.elementor.elementor .ep-menu__nav .elementor-nav-menu a.elementor-item:hover{padding-inline-start:12px}
.elementor.elementor .ep-menu__nav .elementor-nav-menu a.elementor-item::after,.elementor.elementor .ep-menu__nav .elementor-nav-menu a.elementor-item::before{display:none}
.elementor.elementor .e-con.ep-menu__foot{margin-top:32px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px}
.elementor.elementor .ep-menu__mantra{display:none;margin-inline-start:auto}
.elementor.elementor .ep-menu__mantra .elementor-heading-title{font-family:var(--ep-display);font-weight:700;font-size:11px;letter-spacing:-.015em;text-transform:uppercase;opacity:.7}
@media(min-width:640px){.elementor.elementor .ep-menu__mantra{display:block}}
html.ep-lock{overflow:hidden}

/* ---------- hero ---------- */
.elementor.elementor .e-con.ep-hero{padding:0;min-height:100svh;overflow:hidden;isolation:isolate}
.elementor.elementor .e-con.ep-hero::after{content:"Egyptian\A Puzzlers";white-space:pre;position:absolute;inset-inline-start:-1%;bottom:6%;z-index:-1;pointer-events:none;font-family:"EP Rage",cursive;font-size:clamp(96px,14vw,230px);line-height:.95;color:rgba(10,6,40,.34);mix-blend-mode:multiply}
.elementor.elementor .e-con.ep-hero__inner{position:static;max-width:1680px;margin-inline:auto;min-height:100svh;justify-content:center;padding:96px var(--ep-gx) 80px}
.elementor.elementor .ep-hero__label{animation:epArrive .8s var(--ep-snap) both;margin-bottom:24px}
.elementor.elementor .ep-hero__label .elementor-heading-title{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.34em}
.elementor.elementor .ep-hero__label .elementor-heading-title::before{content:"";width:32px;height:1px;background:rgba(255,255,255,.5)}
.elementor.elementor .ep-hero__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(38px,5.9vw,90px);line-height:.88;letter-spacing:-.015em}
.elementor.elementor .ep-hero__title .elementor-heading-title>span{animation:epArrive .8s var(--ep-snap) both}
.elementor.elementor .ep-hero__title .elementor-heading-title>span:nth-child(1){--ax:18px;--ay:20px;--ar:1.2deg;animation-delay:.08s}
.elementor.elementor .ep-hero__title .elementor-heading-title>span:nth-child(2){padding-inline-start:.07em;--ax:-24px;--ay:24px;--ar:-1.2deg;animation-delay:.16s}
.elementor.elementor .ep-hero__title .elementor-heading-title>span:nth-child(3){padding-inline-start:.02em;--ax:30px;--ay:28px;--ar:1.2deg;animation-delay:.24s}
.elementor.elementor .ep-hero__title .elementor-heading-title>span:nth-child(4){padding-inline-start:.11em;--ax:-36px;--ay:32px;--ar:-1.2deg;animation-delay:.32s}
.elementor.elementor .ep-hero__title .elementor-heading-title>span:nth-child(5){padding-inline-start:.05em;--ax:42px;--ay:36px;--ar:1.2deg;animation-delay:.4s}
.elementor.elementor .elementor-widget.ep-hero__lede{margin-top:24px;max-width:46ch;font-size:clamp(16px,1.45vw,20px);line-height:1.5;color:var(--fg-2);animation:epArrive .8s var(--ep-snap) .46s both}
.elementor.elementor .e-con.ep-hero__proof{margin-top:28px;display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--rule);animation:epArrive .8s var(--ep-snap) .52s both}
.elementor.elementor .e-con.ep-proof{padding:14px 12px 14px 0;padding-inline:0 12px}
.elementor.elementor .e-con.ep-proof+.ep-proof{border-inline-start:1px solid var(--rule);padding-inline:12px 0}
.elementor.elementor .ep-proof__big .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(20px,2.2vw,34px);line-height:1}
.elementor.elementor .ep-proof:nth-child(3) .ep-proof__big .elementor-heading-title{color:var(--accent)}
.elementor.elementor .ep-proof__label{margin-top:8px}
.elementor.elementor .ep-proof__label .elementor-heading-title{font-size:10px;font-weight:600;text-transform:uppercase;line-height:1.35;letter-spacing:.12em;color:var(--fg-2)}
.elementor.elementor .elementor-widget.ep-hero__proofnote{margin-top:8px}
.elementor.elementor .e-con.ep-mantra{margin-top:32px;align-items:flex-start;gap:6px;animation:epArrive .8s var(--ep-snap) .5s both}
.elementor.elementor .ep-mantra__w{display:flex;align-items:center;gap:8px}
.elementor.elementor .ep-mantra__w .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;background:var(--ep-ink);color:#fff;padding:6px 10px;font-size:13px;letter-spacing:-.015em;line-height:1.5}
.elementor.elementor .ep-mantra__w::after{content:"";height:3px;background:rgba(255,255,255,.6);width:26px}
.elementor.elementor .ep-mantra__w:nth-child(2){padding-inline-start:14px}.elementor.elementor .ep-mantra__w:nth-child(2)::after{width:46px}
.elementor.elementor .ep-mantra__w:nth-child(3){padding-inline-start:28px}.elementor.elementor .ep-mantra__w:nth-child(3)::after{width:66px}
.elementor.elementor .e-con.ep-hero__cta{margin-top:28px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;animation:epArrive .8s var(--ep-snap) .58s both}
.elementor.elementor .e-con.ep-wjpf{flex-direction:row;align-items:center;gap:12px;width:auto}
.elementor.elementor .ep-wjpf__label .elementor-heading-title{font-size:10px;font-weight:600;text-transform:uppercase;line-height:1.35;letter-spacing:.14em;color:var(--fg-2)}
.elementor.elementor .ep-wjpf__logo{background:#fff;padding:6px 10px}
.elementor.elementor .ep-wjpf__logo img{height:38px;width:auto}
.elementor.elementor .e-con.ep-hero__crest{margin-top:40px;width:min(240px,54vw)}
.elementor.elementor .ep-hero__crest .ep-crest{animation:epFloat 7s ease-in-out infinite}
.elementor.elementor .e-con.ep-hero__collage{margin-top:40px}
.elementor.elementor .ep-hero__photo{aspect-ratio:16/10}
.elementor.elementor .e-con.ep-hero__polaroid{position:absolute;bottom:-24px;inset-inline-end:12px;width:38%;max-width:190px;transform:rotate(3deg);padding:6px 6px 20px;box-shadow:0 8px 20px rgba(29,24,82,.3)}
.elementor.elementor .ep-hero__polaroid .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-hero__polaroid .ep-note{display:none}
.elementor.elementor .e-con.ep-hero__foot{margin-top:40px;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:24px}
.elementor.elementor .ep-hero__foot .ep-note{max-width:46%}
.elementor.elementor .ep-hero__scroll{display:none}
.elementor.elementor .ep-hero__scroll .elementor-heading-title{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--fg-2)}
.elementor.elementor .ep-hero__scroll .elementor-heading-title::before{content:"";height:30px;width:1px;background:#fff;animation:epPulse 1.8s ease-in-out infinite}
.elementor.elementor .elementor-widget.ep-hero__marquee{position:absolute;inset-inline:0;bottom:0;z-index:2;border-top:1px solid rgba(255,255,255,.25);background:var(--bg);padding-block:10px;font-size:11px;letter-spacing:-.015em}
@media(min-width:640px){.elementor.elementor .ep-proof__label .elementor-heading-title{font-size:11px}.elementor.elementor .e-con.ep-proof{padding-inline:0 16px}.elementor.elementor .e-con.ep-proof+.ep-proof{padding-inline:16px 0}.elementor.elementor .ep-hero__scroll{display:block}}
@media(min-width:768px){
  .elementor.elementor .e-con.ep-hero__inner{padding-block:112px 96px}
  .elementor.elementor .elementor-widget.ep-hero__lede{max-width:34ch}
  .elementor.elementor .e-con.ep-hero__proof,.elementor.elementor .elementor-widget.ep-hero__proofnote{max-width:min(500px,40vw)}
  .elementor.elementor .e-con.ep-mantra{position:absolute;margin:0;width:auto;inset-inline-end:clamp(20px,4vw,64px);top:clamp(96px,13vh,140px);z-index:3;align-items:flex-end;animation-delay:.7s}
  .elementor.elementor .ep-mantra__w{flex-direction:row-reverse;padding-inline:0}
  .elementor.elementor .ep-mantra__w .elementor-heading-title{background:var(--ep-rose);padding:6px 12px;font-size:clamp(12px,1vw,15px);letter-spacing:.16em}
  .elementor.elementor .ep-mantra__w::after{height:4px;background:var(--ep-rose);width:34px}
  .elementor.elementor .ep-mantra__w:nth-child(2){padding-inline:0 12px}.elementor.elementor .ep-mantra__w:nth-child(2)::after{width:52px}
  .elementor.elementor .ep-mantra__w:nth-child(3){padding-inline:0 24px}.elementor.elementor .ep-mantra__w:nth-child(3)::after{width:70px}
  .elementor.elementor .e-con.ep-hero__crest{position:absolute;margin:0;bottom:13%;inset-inline-end:40%;z-index:3;width:auto;transform:rotate(-2.5deg);background:var(--ep-paper);padding:16px;box-shadow:0 14px 36px rgba(29,24,82,.4)}
  .elementor.elementor .ep-hero__crest .ep-crest{width:clamp(132px,13vw,190px)}
  .elementor.elementor .e-con.ep-hero__collage{position:absolute;margin:0;inset-block:0;inset-inline-end:0;width:46%;pointer-events:none}
  .elementor.elementor .ep-hero__collage::after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:clamp(10px,1vw,14px);z-index:1;background:repeating-linear-gradient(-50deg,#e0002c 0 12px,#1d1852 12px 24px)}
  .elementor.elementor .elementor-widget.ep-hero__photo{position:absolute;inset:0;aspect-ratio:auto}
  .elementor.elementor .ep-hero__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(29,24,82,0) 45%,rgba(29,24,82,.55))}
  .elementor.elementor .e-con.ep-hero__polaroid{display:none}
  .elementor.elementor .e-con.ep-hero__foot{margin-top:auto;padding-top:32px}
  .elementor.elementor .ep-hero__foot .ep-note{max-width:none}
}
@media(min-width:1280px){
  .elementor.elementor .e-con.ep-hero__polaroid{display:flex;bottom:auto;top:38%;inset-inline-end:13%;width:15vw;max-width:220px;padding:8px 8px 32px;box-shadow:0 10px 28px rgba(29,24,82,.3);z-index:2}
  .elementor.elementor .ep-hero__polaroid .ep-note{display:block;position:absolute;bottom:8px;inset-inline-start:12px;width:auto}
  .elementor.elementor .ep-hero__polaroid .ep-note .elementor-heading-title{color:rgba(29,24,82,.7)}
}

/* ---------- championship ---------- */
.elementor.elementor .e-con.ep-champ{min-height:100vh;justify-content:center;overflow:hidden;padding-block:clamp(88px,12vw,120px)}
.elementor.elementor .e-con.ep-champ::after{content:"2026";position:absolute;bottom:-6%;inset-inline-end:-2%;z-index:0;pointer-events:none;font-family:var(--ep-display);font-weight:700;font-size:clamp(72px,17vw,280px);line-height:1;letter-spacing:-.015em;color:transparent;-webkit-text-stroke:clamp(1px,.14vw,2.5px) #fff;opacity:var(--yr-o,1);transform:translate3d(0,var(--yr-y,0),0);will-change:transform}
.elementor.elementor .e-con.ep-champ__grid{max-width:1560px;margin-inline:auto;display:grid;gap:48px;align-items:center;z-index:1}
.elementor.elementor .e-con.ep-champ__copy,.elementor.elementor .ep-champ__title{min-width:min-content}
.elementor.elementor .e-con.ep-champ__kick{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px}
.elementor.elementor .ep-champ__patron .elementor-heading-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--fg-2)}
.elementor.elementor .ep-champ__title .elementor-heading-title .ep-champ__yr{margin-top:4px;font-size:1.42em;line-height:.82;color:var(--accent)}
.elementor.elementor .e-con.ep-facts{margin-top:36px;flex-direction:row;flex-wrap:wrap;gap:12px}
.elementor.elementor .e-con.ep-fact{min-width:140px;flex:1;width:auto;border:1px solid rgba(255,255,255,.3);padding:14px 16px;background:repeating-linear-gradient(90deg,transparent 0 7px,rgba(255,255,255,.09) 7px 8px)}
.elementor.elementor .ep-fact__k .elementor-heading-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3em;color:var(--fg-2)}
.elementor.elementor .ep-fact .ep-fact__k{margin-bottom:6px}
.elementor.elementor .ep-fact__v .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:19px}
.elementor.elementor .ep-fact__v--hot .elementor-heading-title{color:var(--ep-gold)}
.elementor.elementor .e-con.ep-cats{margin-top:24px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}
.elementor.elementor .ep-cats>*{flex:none;width:auto}
.elementor.elementor .ep-cats .ep-stamp:nth-child(2),.elementor.elementor .ep-cats .ep-stamp:nth-child(4){transform:rotate(1.4deg)}
.elementor.elementor .ep-cats .ep-stamp:nth-child(3){transform:rotate(-1.9deg)}
.elementor.elementor .e-con.ep-champ__end{margin-top:32px}
.elementor.elementor .e-con.ep-count{flex-direction:row;flex-wrap:wrap;gap:10px}
.elementor.elementor .e-con.ep-count__u{width:auto;border-bottom:3px solid var(--accent);padding:0 4px 8px}
.elementor.elementor .ep-count__n .elementor-heading-title{font-family:var(--ep-display);font-weight:700;font-size:clamp(38px,4.4vw,64px);line-height:1;font-variant-numeric:tabular-nums;color:rgba(224,0,44,.45);letter-spacing:-.015em}
.elementor.elementor .ep-count__u .ep-fact__k{margin-top:6px}
.elementor.elementor .ep-champ__end .ep-note{margin-top:12px}
.elementor.elementor .e-con.ep-champ__poster{width:auto;justify-self:center}
.elementor.elementor .e-con.ep-poster{padding:10px 10px 44px;box-shadow:0 14px 40px rgba(29,24,82,.34)}
.elementor.elementor .ep-poster .ep-puzzle{width:min(430px,82vw);aspect-ratio:4/5}
.elementor.elementor .e-con.ep-poster__cap{position:absolute;inset-inline:16px;bottom:12px;width:auto;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:12px}
.elementor.elementor .ep-poster__cap>*{width:auto}
.elementor.elementor .ep-poster__title .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:-.015em;color:var(--ep-ink)}
.elementor.elementor .ep-poster__cap .elementor-widget.ep-note{color:rgba(29,24,82,.55)}
.elementor.elementor .ep-poster__stamp{position:absolute;top:-16px;inset-inline-start:-16px;z-index:2;transform:rotate(-7deg)}
@media(min-width:768px){
  .elementor.elementor .e-con.ep-champ{padding-block:90px}
  .elementor.elementor .e-con.ep-champ__grid{grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,80px)}
  .elementor.elementor .e-con.ep-champ__poster{justify-self:end}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-pin--champ{height:250vh;display:block}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ{position:sticky;top:0;height:100vh;min-height:0}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-step{opacity:0;transform:translateY(22px);transition:opacity .5s var(--ep-paper-ease),transform .5s var(--ep-paper-ease)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-step.is-on{opacity:1;transform:none}
}

/* ---------- story ---------- */
.elementor.elementor .e-con.ep-story__grid{margin-top:48px;display:grid;gap:56px clamp(32px,6vw,110px);align-items:start}
.elementor.elementor .ep-story__title .elementor-heading-title{max-width:16ch}
.elementor.elementor .elementor-widget.ep-story__body{margin-top:32px;max-width:54ch;font-size:clamp(16px,1.35vw,19px);line-height:1.62;color:var(--fg-2)}
.elementor.elementor .e-con.ep-story__pics{padding:0 0 56px;padding-inline-start:16px}
.elementor.elementor .e-con.ep-story__p1{width:76%;transform:rotate(calc(-2deg*var(--ep-tilt)));background:#fff;padding:10px 10px 40px}
.elementor.elementor .ep-story__p1 .ep-photo{aspect-ratio:4/3}
.elementor.elementor .e-con.ep-story__p2{position:absolute;bottom:-4px;inset-inline-end:0;width:52%;transform:rotate(calc(3deg*var(--ep-tilt)));background:#fff;padding:8px 8px 32px}
.elementor.elementor .ep-story__p2 .ep-photo{aspect-ratio:1}
@media(min-width:640px){.elementor.elementor .e-con.ep-story__pics{padding-inline-start:40px}}
@media(min-width:768px){.elementor.elementor .e-con.ep-story__grid{grid-template-columns:1.05fr .95fr}}
.elementor.elementor .elementor-widget.ep-quote__text{max-width:1400px;margin-inline:auto;text-align:center;width:100%}
.elementor.elementor .ep-quote__text blockquote{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;max-width:17ch;margin-inline:auto;font-size:clamp(36px,6.6vw,108px);line-height:.9;color:#fff}
.elementor.elementor .ep-quote__text blockquote p+p{margin-top:12px;color:var(--ep-ink)}
.ep-phoenix{position:absolute;bottom:-14%;inset-inline-end:-7%;width:clamp(200px,30vw,480px);aspect-ratio:1100/1068;background:var(--ep-ink);-webkit-mask:url(textures/phoenix.png) center/contain no-repeat;mask:url(textures/phoenix.png) center/contain no-repeat;transform:scaleX(-1)}
[dir="rtl"] .ep-phoenix{transform:none}
.elementor.elementor .e-con.ep-stats__grid{display:grid;gap:48px 40px}
.elementor.elementor .ep-stat__big{margin-top:12px}
.elementor.elementor .ep-stat__big .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;line-height:.98;font-size:clamp(30px,3vw,46px)}
.elementor.elementor .ep-stat:first-child .ep-stat__big .elementor-heading-title{font-size:clamp(46px,5vw,76px);color:var(--accent)}
.elementor.elementor .ep-stat__label{margin-block:12px}
.elementor.elementor .ep-stat__label .elementor-heading-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.24em;color:var(--fg-2)}
.elementor.elementor .elementor-widget.ep-stat__desc{max-width:42ch;font-size:15px;line-height:1.6;color:var(--fg-2)}
@media(min-width:640px){.elementor.elementor .e-con.ep-stats__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-stats__grid{grid-template-columns:repeat(3,1fr)}}

/* ---------- community ---------- */
.elementor.elementor .e-con.ep-comm__card{margin-top:40px;min-height:clamp(420px,64vh,700px);justify-content:space-between;overflow:hidden;padding:clamp(22px,4vw,60px);background-color:var(--bg);background-image:linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:auto,128px 128px;background-blend-mode:normal,overlay}
.elementor.elementor .ep-comm__card>.elementor-widget:not(.ep-art){z-index:1}
.elementor.elementor .ep-comm__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;max-width:11ch;font-size:clamp(34px,6.6vw,104px);line-height:.88;letter-spacing:-.015em;color:var(--ep-ink)}
.elementor.elementor .elementor-widget.ep-comm__lede{margin-top:40px;max-width:30ch;font-size:clamp(13px,1.15vw,16px);font-weight:600;text-transform:uppercase;line-height:1.5;letter-spacing:.12em}
.ep-egypt{position:absolute;inset-block:8%;inset-inline-end:4%;height:84%;width:auto;color:#fff;opacity:.25}
.ep-corner{position:absolute;aspect-ratio:1;width:clamp(56px,7vw,104px);color:var(--ep-ink);display:none}
.ep-corner i{position:absolute;background:currentColor;transform:scale(.9)}
.ep-corner--tl{left:0;top:0}.ep-corner--br{right:0;bottom:0;transform:scale(-1)}
.ep-rail{position:absolute;inset-block:0;inset-inline-start:0;width:clamp(64px,6vw,104px);display:none;align-items:center;justify-content:center}
.ep-rail span{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:11px;letter-spacing:-.015em;writing-mode:vertical-rl;transform:rotate(180deg);color:#fff}
.elementor.elementor .e-con.ep-comm__text{margin-top:56px}
.elementor.elementor .elementor-widget.ep-comm__about,.elementor.elementor .elementor-widget.ep-comm__join{max-width:60ch;font-size:clamp(16px,1.4vw,19px);line-height:1.65}
.elementor.elementor .elementor-widget.ep-comm__join{margin-top:20px;color:var(--fg-2)}
.elementor.elementor .ep-comm__join a{color:var(--accent);font-weight:600}
@media(min-width:768px){.ep-egypt{opacity:1}.ep-corner{display:block}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-comm__card{padding-inline-start:clamp(64px,6vw,104px)}[dir="ltr"] .ep-rail,html:not([dir]) .ep-rail{display:flex}}

/* ---------- pillars ---------- */
.elementor.elementor .e-con.ep-pillars{padding-block:clamp(72px,12vw,110px)}
.elementor.elementor .ep-pillars__title{margin-top:24px}
.elementor.elementor .ep-pillars__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(34px,9vw,54px);line-height:.94;letter-spacing:-.015em}
.elementor.elementor .ep-pillars__title .elementor-heading-title>span+span{color:var(--ep-ink)}
.elementor.elementor .elementor-widget.ep-pillars__strip{margin-top:36px}
.elementor.elementor .ep-pillars__strip .ep-puzzle{max-width:1040px;margin-inline:auto;aspect-ratio:5/1.15}
.ep-ticks{display:none}
.elementor.elementor .e-con.ep-pillars__list{margin-top:48px;border-bottom:1px solid var(--rule)}
.elementor.elementor .e-con.ep-pillar{border-top:1px solid var(--rule);padding-block:28px}
.elementor.elementor .ep-pillar__name{margin-bottom:12px}
.elementor.elementor .ep-pillar__name .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(26px,7vw,36px);line-height:1;letter-spacing:-.015em;color:var(--ep-ink)}
.elementor.elementor .elementor-widget.ep-pillar__desc{margin-bottom:10px;font-size:15px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-pillar__stat .elementor-heading-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--fg)}
.elementor.elementor .elementor-widget.ep-pillars__note{margin-top:16px}
.ep-pindex{display:none}
@media(min-width:768px){
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pin--pillars{height:270vh;display:block}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars{position:sticky;top:0;height:100vh;justify-content:center;overflow:hidden;padding-block:clamp(60px,9vh,96px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars__wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);column-gap:clamp(28px,5vw,80px);grid-template-areas:"head head" "list index" "strip strip";align-items:start}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars__head{grid-area:head;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:32px}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars__head>*{width:auto}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars__title{margin:0}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars__title .elementor-heading-title{font-family:var(--ep-display);font-weight:700;font-size:13px;letter-spacing:-.015em;line-height:1.5;color:var(--fg-2)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars__title .elementor-heading-title>span{display:inline;color:inherit}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars__list{grid-area:list;margin-top:clamp(20px,4vh,48px);border:0;display:grid}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillar{grid-area:1/1;border:0;padding:0;opacity:0;visibility:hidden;transition:opacity .3s}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillar.is-active{opacity:1;visibility:visible}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__name{margin:0}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__name .elementor-heading-title{font-size:clamp(52px,7.4vw,124px);line-height:.86}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillar__desc{margin:24px 0 0;max-width:52ch;font-size:clamp(15px,1.3vw,18px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__stat{margin-top:20px}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__stat .elementor-heading-title{font-size:12px;letter-spacing:.24em}
  html.ep-motion:not(.ep-nopin-pillars) .ep-pindex{grid-area:index;margin:clamp(20px,4vh,48px) 0 0;padding:0;padding-inline-start:24px;list-style:none;display:flex;flex-direction:column;gap:10px;border-inline-start:1px solid var(--rule)}
  html.ep-motion:not(.ep-nopin-pillars) .ep-pindex li{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(15px,1.4vw,20px);letter-spacing:-.015em;opacity:.42;transition:opacity .24s var(--ep-snap),padding .24s var(--ep-snap)}
  html.ep-motion:not(.ep-nopin-pillars) .ep-pindex li.is-active{opacity:1;padding-inline-start:10px}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillars__strip{grid-area:strip;margin-top:clamp(24px,5vh,56px)}
  html.ep-motion:not(.ep-nopin-pillars) .ep-ticks{margin:28px auto 0;max-width:1040px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;direction:ltr}
  html.ep-motion:not(.ep-nopin-pillars) .ep-ticks span{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:-.015em;padding-top:12px;opacity:.5;transition:opacity .24s}
  html.ep-motion:not(.ep-nopin-pillars) .ep-ticks span.is-active{opacity:1}
  html.ep-motion:not(.ep-nopin-pillars) .ep-ticks b{display:block;height:2px;margin-bottom:8px;background:var(--rule)}
  html.ep-motion:not(.ep-nopin-pillars) .ep-ticks b i{display:block;height:100%;background:#fff;transform:scaleX(0);transform-origin:left;will-change:transform}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillars__note{display:none}
}

/* ---------- membership ---------- */
.elementor.elementor .e-con.ep-member__grid{margin-top:44px;display:grid;gap:64px clamp(32px,6vw,96px);align-items:center}
.elementor.elementor .ep-member__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(34px,4.6vw,72px);line-height:.94;letter-spacing:-.015em}
.elementor.elementor .e-con.ep-prices{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;column-gap:24px;border-block:1px solid var(--rule);padding-block:24px}
.elementor.elementor .e-con.ep-price+.ep-price{border-inline-start:1px solid var(--rule);padding-inline-start:24px}
.elementor.elementor .ep-price__n .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(44px,5.4vw,88px);line-height:.8;color:var(--accent);display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px}
.elementor.elementor .ep-price__n .elementor-heading-title>span{font-size:clamp(15px,1.5vw,22px);line-height:1.2;color:var(--fg)}
.elementor.elementor .ep-price__l{margin-top:12px}
.elementor.elementor .ep-price__l .elementor-heading-title{font-size:13px;font-weight:600;text-transform:uppercase;line-height:1.35;letter-spacing:.12em;color:var(--fg-2)}
.elementor.elementor .elementor-widget.ep-prices__note{margin-top:12px}
.elementor.elementor .e-con.ep-benefits{margin-top:40px;flex-direction:row;flex-wrap:wrap;gap:10px}
.elementor.elementor .ep-benefit{width:auto;max-width:100%;transform:rotate(calc(-.7deg*var(--ep-tilt)));transition:transform .62s var(--ep-paper-ease)}
.elementor.elementor .ep-benefit:nth-child(even){transform:rotate(calc(.7deg*var(--ep-tilt)))}
.elementor.elementor .ep-benefit .elementor-heading-title{border:1px solid var(--rule);padding:12px 16px;font-size:13px;line-height:1.25;color:var(--fg-2);transition:border-color .2s,color .2s}
.elementor.elementor .ep-benefit:hover .elementor-heading-title{border-color:var(--fg);color:var(--fg)}
.elementor.elementor .e-con.ep-family{margin-top:40px;border-top:1px solid var(--rule);padding-top:28px}
.elementor.elementor .ep-family .ep-kicker{margin-bottom:10px}
.elementor.elementor .elementor-widget.ep-family__t{max-width:58ch;font-size:15px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .e-con.ep-member__cta{margin-top:36px;align-items:flex-start}
.elementor.elementor .ep-member__cta .ep-note{margin-top:20px;max-width:62ch}
.elementor.elementor .e-con.ep-member__side{align-items:center;gap:48px}
.elementor.elementor .e-con.ep-cards{max-width:460px;gap:24px;perspective:1100px}
.elementor.elementor .ep-card{transition:transform .5s var(--ep-paper-ease)}
body.ep-design .elementor.elementor .ep-card img{width:100%;border-radius:4.5%/7%;box-shadow:0 26px 60px rgba(0,0,0,.55)}
.elementor.elementor .e-con.ep-tiers{max-width:460px}
.elementor.elementor .ep-tiers .ep-kicker{margin-bottom:20px}
.elementor.elementor .e-con.ep-tier{flex-direction:row;align-items:center;gap:16px;padding-block:16px;border-top:1px solid var(--rule);--tier:#fff}
.elementor.elementor .e-con.ep-tier:nth-child(3){--tier:#8c5a3b}.elementor.elementor .e-con.ep-tier:nth-child(4){--tier:#d1d4d5}
.elementor.elementor .e-con.ep-tier:last-child{--tier:#ff8d1b;border-top:2px solid var(--ep-gold)}
.elementor.elementor .ep-tier>*{width:auto}
.elementor.elementor .ep-tier__y{min-width:92px}
.elementor.elementor .ep-tier__y .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:-.015em;color:var(--fg-3)}
.elementor.elementor .ep-tier__n .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(17px,1.8vw,24px);padding-inline-start:34px;position:relative;line-height:1.2}
.elementor.elementor .ep-tier__n .elementor-heading-title::before{content:"";position:absolute;inset-inline-start:0;top:50%;margin-top:-9px;width:18px;height:18px;background:var(--tier)}
body.ep-design .elementor.elementor .ep-tier__n .elementor-heading-title::after{content:"";position:absolute;inset-inline-start:2px;top:50%;margin-top:-16px;width:14px;height:14px;border-radius:50%;background:var(--tier)}
.elementor.elementor .ep-tier:last-child .ep-tier__n .elementor-heading-title{color:var(--ep-gold)}
@media(min-width:1024px){.elementor.elementor .e-con.ep-member__grid{grid-template-columns:1fr .95fr}}

/* ---------- events ---------- */
.elementor.elementor .e-con.ep-events__head{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.elementor.elementor .ep-events__head>*{width:auto}
.elementor.elementor .ep-events__title{margin-top:24px}
.elementor.elementor .ep-events__drag{display:none;margin-bottom:8px}
.elementor.elementor .e-con.ep-dragrow{flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:24px;padding:56px var(--ep-gx);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;user-select:none}
.elementor.elementor .ep-dragrow::-webkit-scrollbar{display:none}
.elementor.elementor .e-con.ep-evcard{flex:0 0 var(--w,clamp(240px,24vw,340px));width:auto;margin-top:var(--o,0px);scroll-snap-align:center;background:#fff;padding:12px 12px 20px;box-shadow:0 1px 1px rgba(29,24,82,.1),0 6px 14px rgba(29,24,82,.11),0 18px 34px rgba(29,24,82,.07);--t:0deg;transform:rotate(calc(var(--t)*var(--ep-tilt)));transition:transform .62s var(--ep-paper-ease)}
.elementor.elementor .e-con.ep-evcard:hover,.elementor.elementor .e-con.ep-evcard:focus-within{--t:0deg !important}
.elementor.elementor .ep-evcard:nth-child(1){--w:clamp(300px,32vw,440px);--t:-1.5deg}.elementor.elementor .ep-evcard:nth-child(1) .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-evcard:nth-child(2){--o:38px;--t:2deg}.elementor.elementor .ep-evcard:nth-child(2) .ep-photo{aspect-ratio:3/4}
.elementor.elementor .ep-evcard:nth-child(3){--o:8px;--t:-2.5deg}.elementor.elementor .ep-evcard:nth-child(3) .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-evcard:nth-child(4){--w:clamp(220px,21vw,300px);--o:52px;--t:1.5deg}.elementor.elementor .ep-evcard:nth-child(4) .ep-photo{aspect-ratio:1}
.elementor.elementor .ep-evcard:nth-child(5){--w:clamp(250px,26vw,360px);--o:16px;--t:-1deg}.elementor.elementor .ep-evcard:nth-child(5) .ep-photo{aspect-ratio:5/4}
.elementor.elementor .ep-evcard:nth-child(6){--w:clamp(220px,21vw,300px);--o:44px;--t:2.5deg}.elementor.elementor .ep-evcard:nth-child(6) .ep-photo{aspect-ratio:3/4}
.elementor.elementor .ep-evcard:nth-child(7){--o:4px;--t:-2deg}.elementor.elementor .ep-evcard:nth-child(7) .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-evcard__pic .ep-stamp{position:absolute;top:-8px;inset-inline-start:12px;z-index:2}
.elementor.elementor .elementor-widget.ep-evcard__tag{margin:16px 0 8px}
.elementor.elementor .ep-evcard__tag .elementor-heading-title{color:var(--fg-2)}
.elementor.elementor .ep-evcard__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(16px,1.6vw,21px);line-height:1.05;color:var(--ep-ink)}
.elementor.elementor .ep-evcard--feat .ep-evcard__title .elementor-heading-title{font-size:clamp(20px,2.1vw,28px)}
.elementor.elementor .elementor-widget.ep-evcard__meta{margin-top:8px;font-size:14px;color:var(--fg-2)}
.elementor.elementor .ep-evcard__link{margin-top:16px}
.elementor.elementor .ep-evcard__link .elementor-heading-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--accent)}
@media(min-width:768px){.elementor.elementor .ep-events__drag{display:block}.elementor.elementor .e-con.ep-dragrow{scroll-snap-type:none}}

/* ---------- closing ---------- */
.elementor.elementor .e-con.ep-closing{align-items:center;justify-content:center;text-align:center;padding:clamp(80px,11vw,130px) var(--ep-gx) 0}
.elementor.elementor .e-con.ep-closing__inner{align-items:center;padding-bottom:clamp(64px,9vw,110px);z-index:1;margin-bottom:48px}
.elementor.elementor .ep-closing__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;max-width:16ch;font-size:clamp(32px,5.2vw,80px);line-height:.94;letter-spacing:-.015em}
.elementor.elementor .e-con.ep-closing__btns{margin-top:48px;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:16px}
.elementor.elementor .ep-closing__btns .elementor-button{height:100%}
.elementor.elementor .ep-closing__join{margin-top:32px}
.elementor.elementor .ep-closing__join .elementor-heading-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-3)}
.ep-closing__crest{position:absolute;bottom:-30%;inset-inline-end:-10%;width:min(560px,72vw);opacity:.42;aspect-ratio:1100/1068}
.elementor.elementor .elementor-widget.ep-closing__marquee{position:absolute;inset-inline:0;bottom:0;z-index:1;border-top:1px solid var(--rule);padding-block:12px;font-size:clamp(13px,1.6vw,20px);letter-spacing:-.015em}

/* ---------- footer ---------- */
.elementor.elementor .e-con.ep-footer{background:#1d1852;padding:0 var(--ep-gx)}
.elementor.elementor .e-con.ep-footer__grid{display:grid;gap:40px 48px;border-top:1px solid var(--rule);padding-block:48px}
.elementor.elementor .e-con.ep-footer__brand{flex-direction:row;align-items:center;gap:12px}
.elementor.elementor .ep-footer__brand>*{width:auto}
.elementor.elementor .ep-footer__brand img{height:40px;width:auto}
.elementor.elementor .ep-footer__name .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:-.015em}
.elementor.elementor .ep-footer__ut{margin-top:28px}
.elementor.elementor .ep-footer__ut .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:clamp(18px,1.6vw,22px);line-height:1.2}
.elementor.elementor .elementor-widget.ep-footer__ux{margin-top:6px;max-width:44ch;font-size:14px;line-height:1.6;color:var(--fg-3)}
.elementor.elementor .ep-footer .ep-note{margin-bottom:16px}
.elementor.elementor .ep-footer__nav .elementor-nav-menu{display:grid;grid-template-columns:1fr 1fr;gap:10px 32px}
.elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item{padding:0;display:inline-block;font-family:var(--ep-body);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;line-height:1.5;color:var(--fg-2);background:transparent;position:relative}
.elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item::after{content:"";position:absolute;inset-inline-start:0;bottom:-3px;top:auto;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .32s var(--ep-snap);opacity:1}
.elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item:hover::after{transform:scaleX(1)}
.elementor.elementor .elementor-widget.ep-footer__addr{font-size:14px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-footer__addr p+p{margin-top:6px}
.elementor.elementor .ep-footer__follow{margin-top:28px}
.elementor.elementor .ep-footer .ep-footer__follow.ep-note{margin-bottom:12px}
.elementor.elementor .ep-footer__social .elementor-social-icons-wrapper{display:flex;gap:8px;justify-content:flex-start}
.elementor.elementor .ep-footer__social .elementor-social-icon{width:44px;height:44px;background:transparent;border:1px solid var(--rule);color:var(--fg-2);font-size:18px;transition:background-color .2s,border-color .2s,color .2s;display:flex;align-items:center;justify-content:center}
.elementor.elementor .ep-footer__social .elementor-social-icon svg{fill:currentColor;width:18px;height:18px}
.elementor.elementor .ep-footer__social .elementor-social-icon i{color:inherit}
.elementor.elementor .ep-footer__social .elementor-social-icon:hover{background:var(--accent);border-color:var(--accent);color:#fff;opacity:1}
.elementor.elementor .e-con.ep-footer__base{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 32px;border-top:1px solid var(--rule);padding-block:20px}
.elementor.elementor .ep-footer__base>*{width:auto}
.elementor.elementor .elementor-widget.ep-footer__legal{font-size:11px;line-height:1.6;letter-spacing:.12em;color:var(--fg-3)}
@media(min-width:768px){.elementor.elementor .e-con.ep-footer__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-footer__grid{grid-template-columns:1.3fr 1fr .9fr}}

/* ---------- forms (Elementor Pro Form) ---------- */
.elementor.elementor .ep-form .elementor-field-group{margin-bottom:0}
.elementor.elementor .ep-form .elementor-field-label{font-family:var(--ep-body);font-weight:600;font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--fg-2);margin-bottom:8px;display:block}
.elementor.elementor .ep-form .elementor-field-textual,.elementor.elementor .ep-form .elementor-field-group select,.elementor.elementor .ep-form input[type="file"]{width:100%;min-height:44px;border:1px solid var(--rule);background:transparent;padding:13px 14px;font-family:var(--ep-body);font-size:15px;line-height:1.3;color:var(--fg)}
.elementor.elementor .ep-form .elementor-field-textual::placeholder{color:var(--fg-3);opacity:1}
.elementor.elementor .ep-form .elementor-field-textual:focus,.elementor.elementor .ep-form select:focus{border-color:var(--fg);outline:2px solid var(--accent);outline-offset:1px;box-shadow:none}
.elementor.elementor .ep-form select option{color:#1d1852}
.elementor.elementor .ep-form input[type="file"]::file-selector-button{margin-inline-end:12px;border:1px solid var(--rule);background:transparent;padding:6px 12px;font-family:var(--ep-body);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-2);cursor:pointer}
.elementor.elementor .ep-form .elementor-select-wrapper .select-caret-down-wrapper{color:var(--fg-2)}
.elementor.elementor .ep-form .elementor-button[type="submit"]{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:14px;line-height:1.5;min-height:44px;padding:18px 36px;background:var(--accent);color:#fff;border:0;box-shadow:4px 4px 0 0 var(--fg);transition:box-shadow .34s var(--ep-snap),filter .2s;flex-basis:auto;width:auto}
.elementor.elementor .ep-form .elementor-button[type="submit"]:hover{box-shadow:2px 2px 0 0 var(--fg);filter:brightness(1.1)}
.elementor.elementor .ep-form .elementor-message{font-family:ui-monospace,"SFMono-Regular",Menlo,monospace;font-size:11px;letter-spacing:.04em;margin-top:12px}
.elementor.elementor .ep-form .elementor-message.elementor-message-success{color:var(--ep-gold)}
.elementor.elementor .ep-form .elementor-message.elementor-message-danger,.elementor.elementor .ep-form .elementor-help-inline{color:#fff;background:var(--ep-heart);padding:6px 10px}
.elementor.elementor .ep-form .elementor-message::before{display:none}
.elementor.elementor .ep-form--signup{margin-top:20px;max-width:440px}
.elementor.elementor .ep-form--signup .elementor-form-fields-wrapper{flex-wrap:nowrap;margin:0}
.elementor.elementor .ep-form--signup .elementor-field-group{padding:0}
.elementor.elementor .ep-form--signup .elementor-field-type-email{flex:1;min-width:0}
.elementor.elementor .ep-form--signup .elementor-field-type-submit{flex:none;width:auto;max-width:none}
.elementor.elementor .ep-form--signup .elementor-field-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.elementor.elementor .ep-form--signup .elementor-field-textual{font-size:14px;padding:0 14px;height:44px}
.elementor.elementor .ep-form--signup .elementor-button[type="submit"]{font-size:12px;letter-spacing:.18em;padding:0 20px;height:44px;box-shadow:none}
.elementor.elementor .ep-form--signup .elementor-button[type="submit"]:hover{box-shadow:none}

/* ---------- membership popup ---------- */
.elementor-popup-modal .dialog-widget-content:has(.ep-popup){background:#120f38;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.elementor-popup-modal .dialog-close-button:has(~ .dialog-message .ep-popup),.elementor-popup-modal:has(.ep-popup) .dialog-close-button{color:#fff;font-size:22px;top:18px;inset-inline-end:18px}
.elementor-popup-modal:has(.ep-popup) .dialog-close-button svg{fill:#fff}
.elementor.elementor .e-con.ep-popup{padding:clamp(28px,5vw,56px);background:#120f38}
.elementor.elementor .ep-popup__title{margin-top:20px}
.elementor.elementor .ep-popup__title .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(28px,4vw,48px);line-height:.94;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-popup__lede{margin:16px 0 32px;max-width:58ch;font-size:15px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-popup .ep-form .elementor-form-fields-wrapper{row-gap:22px}
.elementor.elementor .ep-popup .ep-form .elementor-field-type-submit{margin-top:14px}

@media(prefers-reduced-motion:reduce){
  body.ep-design *,body.ep-design *::before,body.ep-design *::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  html:has(body.ep-design){scroll-behavior:auto}
}

/* ================= inner pages ================= */
/* shared */
.elementor.elementor .e-con.ep-wrap14{max-width:1400px;margin-inline:auto;width:100%}
.elementor.elementor .e-con.ep-wrap9{max-width:900px;margin-inline:auto;width:100%}
.elementor.elementor .e-con.ep-band--tight{padding-block:clamp(48px,7vw,88px)}
.elementor.elementor .e-con.ep-band--plain{background-image:none}
.elementor.elementor .e-con.ep-sheet{background:#fff;box-shadow:0 1px 1px rgba(29,24,82,.1),0 6px 14px rgba(29,24,82,.11),0 18px 34px rgba(29,24,82,.07);--t:0deg;transform:rotate(calc(var(--t)*var(--ep-tilt)));transition:transform .62s var(--ep-paper-ease)}
.elementor.elementor .e-con.ep-sheet:hover,.elementor.elementor .e-con.ep-sheet:focus-within{--t:0deg !important}
.elementor.elementor .ep-sheet .ep-photo{overflow:hidden}
.elementor.elementor .ep-sheet .ep-photo img{transition:transform .6s var(--ep-paper-ease)}
.elementor.elementor .ep-sheet:hover .ep-photo img{transform:scale(1.03)}
.elementor.elementor .ep-tlink .elementor-heading-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--accent)}
.elementor.elementor .ep-tlink .elementor-heading-title a::before{content:"";position:absolute;inset:0}
.elementor.elementor .ep-tlink--arrow .elementor-heading-title a::after,.elementor.elementor .ep-tlink--arrow .elementor-heading-title>span.a{content:"\2192"}
.elementor.elementor .ep-h3d .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(24px,2.6vw,38px);line-height:1.1;letter-spacing:-.015em}
.elementor.elementor .ep-h2f .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(32px,4.4vw,64px);line-height:.94;letter-spacing:-.015em}
.elementor.elementor .ep-dot .elementor-heading-title::after{content:".";color:var(--accent)}
.elementor.elementor .ep-rt{font-size:15px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-rt a{color:var(--accent);font-weight:700}
.elementor.elementor .ep-rt b,.elementor.elementor .ep-rt strong{color:var(--fg);font-weight:700}

/* page hero */
.elementor.elementor .e-con.ep-phero{min-height:62vh;justify-content:flex-end;overflow:hidden;isolation:isolate;padding-block:clamp(120px,16vh,180px) clamp(44px,6vw,80px)}
.elementor.elementor .e-con.ep-phero::after{content:"Egyptian Puzzlers";position:absolute;inset-inline-start:-1%;bottom:4%;z-index:-1;pointer-events:none;white-space:nowrap;font-family:"EP Rage",cursive;font-size:clamp(80px,11vw,190px);line-height:.95;color:rgba(10,6,40,.34);mix-blend-mode:multiply}
.elementor.elementor .e-con.ep-phero__pic{display:none}
.elementor.elementor .e-con.ep-phero__in{max-width:1400px;margin-inline:auto;z-index:1}
.elementor.elementor .ep-phero__k{margin-bottom:20px}
.elementor.elementor .ep-phero__k .elementor-heading-title{display:flex;align-items:center;gap:14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.32em}
.elementor.elementor .ep-phero__k .elementor-heading-title::before{content:"";flex:none;width:32px;height:1px;background:rgba(255,255,255,.45)}
.elementor.elementor .ep-phero__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(34px,7vw,110px);line-height:.9;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-phero__l{margin-top:28px;max-width:58ch;font-size:clamp(16px,1.5vw,20px);line-height:1.55;color:var(--fg-2)}
.elementor.elementor .e-con.ep-phero__x{margin-top:36px;flex-direction:row;flex-wrap:wrap;gap:12px}
.elementor.elementor .e-con.ep-emeta{gap:20px 40px}
.elementor.elementor .ep-emeta>.e-con{width:auto}
.elementor.elementor .ep-phero .ep-fact{flex:1;min-width:150px}
@media(min-width:768px){
  .elementor.elementor .e-con.ep-phero__pic{display:flex;position:absolute;inset-block:0;inset-inline-end:0;width:40%;pointer-events:none}
  .elementor.elementor .ep-phero__pic .ep-photo{position:absolute;inset:0}
  .elementor.elementor .ep-phero__pic .ep-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(200deg,rgba(29,24,82,0) 50%,rgba(29,24,82,.5))}
  .elementor.elementor .ep-phero__pic::after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:clamp(10px,1vw,14px);z-index:1;background:repeating-linear-gradient(-50deg,#e0002c 0 12px,#1d1852 12px 24px)}
  .elementor.elementor .elementor-widget.ep-phero__t{max-width:62%}
  .elementor.elementor .elementor-widget.ep-phero__l{max-width:42ch}
  .elementor.elementor .e-con.ep-phero__x--facts{max-width:56%}
}

/* about */
.elementor.elementor .e-con.ep-film{margin-top:48px;aspect-ratio:16/9;min-height:calc((100vw - 2*var(--ep-gx))*.5625);max-height:788px;overflow:hidden;align-items:center;justify-content:center;gap:clamp(12px,2vw,22px);text-align:center;padding-inline:24px}
@media(min-width:1568px){.elementor.elementor .e-con.ep-film{min-height:788px}}
.elementor.elementor .ep-film>.ep-photo{position:absolute;inset:0}
.elementor.elementor .ep-film>.ep-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(29,24,82,.15),rgba(29,24,82,.78))}
.elementor.elementor .ep-film::after{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:clamp(10px,1vw,14px);background:repeating-linear-gradient(-50deg,#e0002c 0 12px,#1d1852 12px 24px)}
.elementor.elementor .ep-film__t{z-index:1}
body.ep-design .elementor.elementor .ep-film__t::before{content:"\25B6";display:flex;align-items:center;justify-content:center;margin:0 auto clamp(12px,2vw,22px);width:clamp(56px,7vw,96px);height:clamp(56px,7vw,96px);border-radius:50%;background:var(--ep-rose);color:#fff;font-size:clamp(20px,2.4vw,32px)}
.elementor.elementor .ep-film__t .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(22px,3.4vw,52px);line-height:1;color:#fff;letter-spacing:-.015em}
.elementor.elementor .ep-film .ep-note{z-index:1;width:auto}
.elementor.elementor .ep-film .elementor-widget.ep-note{color:rgba(255,255,255,.8)}
.elementor.elementor .e-con.ep-chapters{gap:clamp(56px,8vw,120px)}
.elementor.elementor .e-con.ep-chapter{display:grid;gap:24px clamp(28px,5vw,80px);align-items:center}
.elementor.elementor .ep-chapter .ep-photo{aspect-ratio:3/2}
.elementor.elementor .ep-chapter--stripes .ep-chapter__pic{background:repeating-linear-gradient(-50deg,#e0002c 0 12px,#1d1852 12px 24px);padding:clamp(8px,1vw,14px)}
.elementor.elementor .ep-chapter__t{margin-top:16px}
.elementor.elementor .ep-chapter__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(28px,3.4vw,52px);line-height:.98;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-chapter__c{margin-top:16px;max-width:36ch;font-size:clamp(16px,1.4vw,19px);line-height:1.55;color:var(--fg-2)}
@media(min-width:768px){.elementor.elementor .e-con.ep-chapter{grid-template-columns:1.25fr .75fr}.elementor.elementor .e-con.ep-chapter:nth-child(even){grid-template-columns:.75fr 1.25fr}.elementor.elementor .ep-chapter:nth-child(even) .ep-chapter__pic{order:2}}
.elementor.elementor .e-con.ep-split{display:grid}
.elementor.elementor .e-con.ep-split__p{min-height:52vh;justify-content:flex-end;overflow:hidden;padding:clamp(56px,8vw,110px) clamp(24px,5vw,72px);background-color:var(--bg);background-image:linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:auto,128px 128px;background-blend-mode:normal,overlay}
.elementor.elementor .ep-split__p::after{content:attr(data-ghost);position:absolute;white-space:nowrap;pointer-events:none;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(90px,14vw,200px);line-height:1;color:transparent;-webkit-text-stroke:clamp(1px,.14vw,2.5px) #fff;opacity:.13;bottom:-6%;inset-inline-start:-5%;letter-spacing:-.015em}
.elementor.elementor .ep-split__p--b::after{bottom:auto;top:-4%;inset-inline-start:auto;inset-inline-end:-7%;opacity:.18}
.elementor.elementor .ep-split__p>*{z-index:1}
.elementor.elementor .ep-split__p .ep-kicker{margin-bottom:20px}
.elementor.elementor .ep-split__p .ep-kicker .elementor-heading-title{color:var(--fg-2)}
.elementor.elementor .ep-split__h .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(44px,6vw,92px);line-height:.9;letter-spacing:-.015em}
.elementor.elementor .ep-split__p--b .ep-split__h .elementor-heading-title{color:var(--ep-ink)}
.elementor.elementor .elementor-widget.ep-split__x{margin-top:28px;max-width:46ch;font-size:clamp(16px,1.45vw,21px);line-height:1.55}
.elementor.elementor .e-con.ep-split__p--b{text-align:end;align-items:flex-end}
@media(min-width:768px){.elementor.elementor .e-con.ep-split{grid-template-columns:1fr 1fr}.elementor.elementor .e-con.ep-split__p{min-height:64vh}}
.elementor.elementor .e-con.ep-future{margin-top:48px;border-bottom:1px solid var(--rule)}
.elementor.elementor .elementor-widget.ep-future__i{border-top:1px solid var(--rule);padding-block:32px;font-size:clamp(16px,1.4vw,19px);line-height:1.6}
.elementor.elementor .ep-future__i p{max-width:70ch}
.elementor.elementor .ep-ptitle{margin-top:24px}
.elementor.elementor .ep-ptitle .elementor-heading-title>span+span{color:var(--accent)}
.elementor.elementor .e-con.ep-ptabs{margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:32px 16px}
.elementor.elementor .e-con.ep-ptab{cursor:pointer;transition:opacity .3s}
html.ep-js .elementor.elementor .e-con.ep-ptab:not(.is-active){opacity:.6}
html.ep-js .elementor.elementor .e-con.ep-ptab:hover{opacity:1}
.elementor.elementor .ep-ptab .ep-photo{aspect-ratio:4/5}
.elementor.elementor .ep-ptab__n{margin-top:12px;padding-top:12px}
.elementor.elementor .ep-ptab__n::before{content:"";position:absolute;top:0;inset-inline:0;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.elementor.elementor .ep-ptab.is-active .ep-ptab__n::before{transform:scaleX(1)}
.elementor.elementor .ep-ptab__n .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(20px,2vw,28px);line-height:1.02;letter-spacing:-.015em}
.elementor.elementor .ep-ptab__s{margin-top:6px}
.elementor.elementor .ep-ptab__s .elementor-heading-title{font-size:13px;line-height:1.45;color:var(--fg-2)}
.elementor.elementor .e-con.ep-pdetail{margin-top:40px;border-top:2px solid var(--accent);padding-top:32px;gap:32px}
html.ep-js .elementor.elementor .e-con.ep-pdetail__i:not(.is-active){display:none}
.elementor.elementor .ep-pdetail__n .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(26px,3vw,44px);line-height:1;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-pdetail__x{margin-top:20px;max-width:70ch;font-size:clamp(16px,1.4vw,19px);line-height:1.65}
.elementor.elementor .ep-pnote{margin-top:32px}
@media(min-width:768px){.elementor.elementor .e-con.ep-ptabs{grid-template-columns:repeat(5,1fr)}}
.elementor.elementor .e-con.ep-cta2{display:grid;gap:48px;align-items:center}
.elementor.elementor .ep-cta2__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(30px,4.2vw,60px);line-height:.96;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-cta2__x{margin-top:28px;max-width:56ch;font-size:16px;line-height:1.7;color:var(--fg-2)}
.elementor.elementor .e-con.ep-btnrow{flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:16px}
.elementor.elementor .ep-btnrow .elementor-button{height:100%}
@media(min-width:768px){.elementor.elementor .e-con.ep-cta2{grid-template-columns:1fr 1fr}.elementor.elementor .ep-cta2 .ep-btnrow{justify-content:flex-end}}

/* founders */
.elementor.elementor .e-con.ep-groups{gap:96px}
.elementor.elementor .ep-group>.ep-mark{margin-bottom:40px}
.elementor.elementor .e-con.ep-people{display:grid;gap:56px 40px}
.elementor.elementor .e-con.ep-person{gap:20px}
.elementor.elementor .ep-person .ep-photo{aspect-ratio:4/5;overflow:hidden}
.elementor.elementor .ep-people--team .ep-person .ep-photo{aspect-ratio:1}
.elementor.elementor .ep-person .ep-photo img{object-position:50% 25%}
.elementor.elementor .ep-person .ep-kicker .elementor-heading-title{color:var(--accent)}
.elementor.elementor .ep-person__n{margin-top:12px}
.elementor.elementor .ep-person__n .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(24px,2.2vw,34px);line-height:1;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-person__b{margin-top:16px;max-width:46ch;font-size:16px;line-height:1.65;color:var(--fg-2)}
@media(min-width:640px){.elementor.elementor .e-con.ep-people{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-people{grid-template-columns:repeat(3,1fr)}.elementor.elementor .e-con.ep-people--team{grid-template-columns:repeat(4,1fr)}}

/* membership page, form bands */
.elementor.elementor .e-con.ep-mpage{display:grid;gap:clamp(36px,5vw,80px);align-items:start}
.elementor.elementor .ep-mpage .ep-prices{margin-top:0}
.elementor.elementor .ep-mpage .ep-benefit .elementor-heading-title{color:var(--fg)}
.elementor.elementor .ep-mpage .ep-tiers{margin-top:56px;max-width:none}
.elementor.elementor .ep-mpage .ep-cards{max-width:460px}
.elementor.elementor .elementor-widget.ep-tiers__note{margin-top:24px;max-width:52ch;font-size:14px;line-height:1.6;color:var(--fg-2)}
@media(min-width:1024px){.elementor.elementor .e-con.ep-mpage{grid-template-columns:1fr 1fr}}
.elementor.elementor .ep-formband .ep-form{margin-top:48px}
.elementor.elementor .ep-formband .elementor-widget.ep-note{margin-top:16px}
.elementor.elementor .ep-form .elementor-field-group textarea.elementor-field-textual{min-height:140px;resize:vertical}

/* championship page */
.elementor.elementor .e-con.ep-c3{margin-top:48px;display:grid;gap:48px clamp(28px,4vw,64px)}
.elementor.elementor .ep-c3 .ep-h3d{margin-bottom:24px}
.elementor.elementor .ep-c3 .ep-h3d--gold .elementor-heading-title::after{color:var(--ep-gold)}
.elementor.elementor .e-con.ep-stack3{align-items:flex-start;gap:12px}
.elementor.elementor .ep-stack3 .ep-stamp:nth-child(2){transform:rotate(-1.2deg)}.elementor.elementor .ep-stack3 .ep-stamp:nth-child(odd){transform:rotate(1deg)}
.elementor.elementor .ep-c3 .ep-count{gap:16px}
.elementor.elementor .ep-c3 .ep-count__n .elementor-heading-title{font-size:clamp(34px,3.6vw,52px)}
.elementor.elementor .ep-c3 .ep-note{margin-top:16px}
.elementor.elementor .e-con.ep-slots{gap:12px}
.elementor.elementor .ep-slot{margin:0 !important}
.elementor.elementor .ep-slot .elementor-heading-title{display:flex;height:64px;align-items:center;justify-content:center;border:1px solid var(--rule)}
.elementor.elementor .elementor-widget.ep-cnote{margin-top:48px;border-top:1px solid var(--rule);padding-top:28px}
.elementor.elementor .ep-cnote p{max-width:70ch}
@media(min-width:768px){.elementor.elementor .e-con.ep-c3{grid-template-columns:repeat(3,1fr)}}

/* contact */
.elementor.elementor .e-con.ep-contact{display:grid;gap:clamp(40px,6vw,90px);align-items:start}
.elementor.elementor .e-con.ep-cinfo{gap:36px}
.elementor.elementor .ep-cinfo .ep-kicker{margin-bottom:12px}
.elementor.elementor .ep-cinfo .ep-kicker .elementor-heading-title{color:var(--fg-2)}
.elementor.elementor .ep-cinfo__hq .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(20px,2.2vw,30px);line-height:1.15;letter-spacing:-.015em}
.elementor.elementor .ep-cinfo__mail .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(18px,1.8vw,24px);overflow-wrap:anywhere;letter-spacing:-.015em}
.elementor.elementor .e-con.ep-socials{flex-direction:row;flex-wrap:wrap;gap:12px}
.elementor.elementor .ep-socials .ep-btn--quiet .elementor-button{min-height:44px;padding:0 18px;font-family:var(--ep-body);font-size:12px;font-weight:700;letter-spacing:.18em}
.elementor.elementor .e-con.ep-csheet{padding:clamp(24px,3.2vw,48px);background-color:var(--bg);background-image:linear-gradient(var(--bgv),var(--bgv)),url(textures/grain.webp);background-size:auto,128px 128px;background-blend-mode:normal,overlay;box-shadow:0 1px 1px rgba(29,24,82,.1),0 6px 14px rgba(29,24,82,.11),0 18px 34px rgba(29,24,82,.07);transform:rotate(calc(-.6deg*var(--ep-tilt)))}
.elementor.elementor .ep-csheet .ep-h3d .elementor-heading-title{font-size:clamp(22px,2.4vw,34px)}
.elementor.elementor .elementor-widget.ep-csheet__x{margin:16px 0 32px;font-size:15px;line-height:1.6;color:var(--fg-2)}
@media(min-width:1024px){.elementor.elementor .e-con.ep-contact{grid-template-columns:.9fr 1.1fr}}

/* rooms list + more links */
.elementor.elementor .e-con.ep-comm__text{display:grid;gap:32px 48px}
.elementor.elementor .e-con.ep-rooms{border-top:1px solid var(--rule)}
.elementor.elementor .ep-room{border-bottom:1px solid var(--rule)}
.elementor.elementor .ep-room .elementor-heading-title a{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:16px;padding-block:20px;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(20px,1.9vw,28px);line-height:1.05;transition:color .2s;letter-spacing:-.015em}
.elementor.elementor .ep-room .elementor-heading-title a::after{content:"\2192";color:var(--accent);font-family:var(--ep-body);font-weight:400;transition:transform .2s}
.elementor.elementor .ep-room .elementor-heading-title a:hover{color:var(--accent)}
.elementor.elementor .ep-room .elementor-heading-title a:hover::after{transform:translateX(4px)}
@media(min-width:1024px){.elementor.elementor .e-con.ep-comm__text{grid-template-columns:1.1fr .9fr}}
.elementor.elementor .ep-more .ep-kicker{margin-bottom:24px}
.elementor.elementor .ep-more .ep-kicker .elementor-heading-title{color:var(--accent)}
.elementor.elementor .e-con.ep-more__grid{display:grid;border-top:1px solid var(--rule)}
.elementor.elementor .ep-more .ep-room .elementor-heading-title a{padding:24px 4px;font-size:clamp(18px,1.6vw,24px)}
@media(min-width:640px){.elementor.elementor .e-con.ep-more__grid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-more__grid{grid-template-columns:repeat(5,1fr)}.elementor.elementor .ep-more .ep-room{border-inline-end:1px solid var(--rule)}.elementor.elementor .ep-more .ep-room:last-child{border-inline-end:0}.elementor.elementor .ep-more .ep-room .elementor-heading-title a{padding-inline:20px}}

/* community page: gallery wall, swap, library */
.elementor.elementor .e-con.ep-community--page{padding-top:calc(72px + clamp(80px,11vw,156px))}
.elementor.elementor .e-con.ep-headrow{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.elementor.elementor .ep-headrow>*{width:auto}
.elementor.elementor .ep-headrow .ep-h2{margin-top:24px}
.elementor.elementor .ep-h2--2 .elementor-heading-title>span+span{color:var(--accent)}
.elementor.elementor .ep-h2.ep-mt{margin-top:24px}
.elementor.elementor .e-con.ep-wall{margin-top:56px;display:block;columns:1;column-gap:20px}
.elementor.elementor .ep-wall--top{margin-top:0}
.elementor.elementor .e-con.ep-gtile{break-inside:avoid;margin-bottom:20px;display:inline-flex;width:100%}
.elementor.elementor .e-con.ep-gtile__pic{overflow:hidden}
.elementor.elementor .ep-gtile__pic .ep-photo{aspect-ratio:var(--ar,4/3)}
.elementor.elementor .ep-gtile__pic .ep-photo img{transition:transform .6s var(--ep-paper-ease)}
.elementor.elementor .ep-gtile:hover .ep-photo img{transform:scale(1.04)}
.elementor.elementor .ep-gtile--stripes .ep-gtile__pic{background:repeating-linear-gradient(-50deg,#e0002c 0 12px,#1d1852 12px 24px);padding:clamp(8px,1vw,14px)}
.elementor.elementor .elementor-widget.ep-gtile__cap{position:absolute;inset-inline:0;bottom:0;z-index:3;transform:translateY(100%);background:rgba(29,24,82,.85);padding:12px 16px;color:#fff;font-size:12px;transition:transform .42s var(--ep-snap);pointer-events:none}
.elementor.elementor .ep-gtile__cap p:first-child{font-size:13px;font-weight:700;letter-spacing:.08em}
.elementor.elementor .ep-gtile__cap p+p{color:rgba(255,255,255,.7)}
.elementor.elementor .ep-gtile:hover .ep-gtile__cap,.elementor.elementor .ep-gtile:focus-within .ep-gtile__cap{transform:none}
.elementor.elementor .ep-gtile__vote{margin-top:12px;align-self:flex-start}
.elementor.elementor .ep-gtile__vote .elementor-heading-title{display:inline-flex;min-height:44px;align-items:center;gap:8px;border:1px solid var(--rule);padding:0 14px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--fg-2)}
@media(min-width:640px){.elementor.elementor .e-con.ep-wall{columns:2}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-wall{columns:3}}
.elementor.elementor .elementor-widget.ep-lede{margin-top:28px;max-width:62ch;font-size:clamp(15px,1.3vw,18px);line-height:1.6;color:var(--fg-2)}
.elementor.elementor .e-con.ep-filters{margin-top:40px;flex-direction:row;flex-wrap:wrap;gap:10px}
.elementor.elementor .ep-filters--top{margin-top:0;margin-bottom:44px}
.elementor.elementor .ep-filter{width:auto;cursor:pointer}
.elementor.elementor .ep-filter .elementor-heading-title{display:inline-flex;min-height:44px;align-items:center;border:1px solid var(--rule);padding:12px 20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--fg-2);transition:border-color .2s,color .2s,background-color .2s}
.elementor.elementor .ep-filter:hover .elementor-heading-title{border-color:var(--fg);color:var(--fg)}
.elementor.elementor .ep-filter.is-active .elementor-heading-title{border-color:var(--accent);background:var(--accent);color:#fff}
.elementor.elementor .ep-filter--d .elementor-heading-title{font-family:var(--ep-display);font-size:13px;letter-spacing:-.015em}
.elementor.elementor .e-con.ep-swapgrid{margin-top:44px;display:grid;gap:24px}
.elementor.elementor .ep-swapgrid--top{margin-top:0}
.elementor.elementor .ep-swapgrid>.is-hidden{display:none}
.elementor.elementor .e-con.ep-swapcard__top{flex-direction:row;border-bottom:3px solid var(--ep-ink);padding:12px 16px}
.elementor.elementor .e-con.ep-swapcard__body{padding:16px}
.elementor.elementor .ep-swapcard .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-swapcard__t{margin-top:16px}
.elementor.elementor .ep-swapcard__t .elementor-heading-title{font-size:15px;font-weight:700;line-height:1.25;color:var(--ep-ink)}
.elementor.elementor .ep-swapcard__m{margin-top:6px}
.elementor.elementor .ep-swapcard__m .elementor-heading-title{font-size:13px;color:var(--fg-3)}
.elementor.elementor .ep-swapcard__p{margin-top:14px}
.elementor.elementor .ep-swapcard__p .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:19px;color:var(--ep-ink);letter-spacing:-.015em}
.elementor.elementor .ep-tone-white .ep-stamp--outline .elementor-heading-title{border-color:rgba(29,24,82,.3);color:#4a476a}
.elementor.elementor .e-con.ep-reqcard{align-items:flex-start;justify-content:center;gap:16px;border:2px dashed var(--rule);padding:24px}
.elementor.elementor .ep-reqcard__t .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(18px,1.8vw,24px);line-height:1.15;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-pickup{margin-top:40px;max-width:74ch;font-size:15px;line-height:1.6;color:var(--fg-2)}
@media(min-width:640px){.elementor.elementor .e-con.ep-swapgrid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-swapgrid{grid-template-columns:repeat(4,1fr)}.elementor.elementor .e-con.ep-swapgrid--3{grid-template-columns:repeat(3,1fr)}}
.elementor.elementor .e-con.ep-shelves{margin-top:56px;display:grid;gap:48px 40px}
.elementor.elementor .ep-shelf .ep-kicker{margin-bottom:16px}
.elementor.elementor .ep-shelf .ep-kicker .elementor-heading-title{color:var(--accent)}
.elementor.elementor .e-con.ep-shelf__list{border-top:1px solid var(--rule)}
.elementor.elementor .e-con.ep-book{border-bottom:1px solid var(--rule);padding-block:20px}
.elementor.elementor .ep-book__t .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(18px,1.6vw,22px);line-height:1.15;letter-spacing:-.015em}
.elementor.elementor .ep-book__t .elementor-heading-title a::after{content:" \2197";color:var(--accent)}
.elementor.elementor .ep-book__by{margin-top:6px}
.elementor.elementor .ep-book__by .elementor-heading-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3)}
.elementor.elementor .elementor-widget.ep-book__x{margin-top:8px;font-size:15px;line-height:1.55;color:var(--fg-2)}
@media(min-width:768px){.elementor.elementor .e-con.ep-shelves{grid-template-columns:repeat(3,1fr)}}

/* events */
.elementor.elementor .e-con.ep-evnext{display:grid;--t:-1deg}
.elementor.elementor .e-con.ep-evnext__pic{padding:12px}
.elementor.elementor .ep-evnext__pic .ep-photo{aspect-ratio:4/3}
.elementor.elementor .ep-evnext__pic .ep-stamp{position:absolute;top:-8px;inset-inline-start:20px;z-index:2}
.elementor.elementor .e-con.ep-evnext__body{justify-content:center;padding:clamp(24px,3.4vw,52px)}
.elementor.elementor .ep-evnext__body .ep-note{margin-bottom:16px}
.elementor.elementor .ep-evnext__t{margin-bottom:16px}
.elementor.elementor .ep-evnext__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(26px,3.2vw,46px);line-height:.98;color:var(--ep-ink);letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-evnext__m{margin-bottom:24px;font-size:15px;color:var(--fg-2)}
.elementor.elementor .ep-evnext .ep-tlink,.elementor.elementor .ep-evtile .ep-tlink{position:static}
.elementor.elementor .ep-evnext__body,.elementor.elementor .ep-evtile__body{position:static}
@media(min-width:768px){.elementor.elementor .e-con.ep-evnext{grid-template-columns:1fr 1fr}}
.elementor.elementor .e-con.ep-evgrid{margin-top:56px;display:grid;gap:28px}
.elementor.elementor .e-con.ep-evtile{padding:12px 12px 24px;--t:-1.4deg}
.elementor.elementor .e-con.ep-evtile:nth-child(even){--t:1.4deg}
.elementor.elementor .ep-evtile .ep-photo{aspect-ratio:4/3}
.elementor.elementor .e-con.ep-evtile__body{margin-top:16px}
.elementor.elementor .ep-evtile .ep-note{margin-bottom:8px}
.elementor.elementor .ep-evtile__t{margin-bottom:16px}
.elementor.elementor .ep-evtile__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(17px,1.7vw,23px);line-height:1.05;color:var(--ep-ink);letter-spacing:-.015em}
@media(min-width:640px){.elementor.elementor .e-con.ep-evgrid{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-evgrid{grid-template-columns:repeat(3,1fr)}}
.elementor.elementor .ep-emeta .ep-fact__k{margin-bottom:6px}
.elementor.elementor .e-con.ep-recap{max-width:820px;margin-inline:auto}
.elementor.elementor .elementor-widget.ep-recap__x{font-size:17px;line-height:1.75;color:var(--fg-2)}
.elementor.elementor .ep-recap .elementor-widget-video{margin-top:48px;background:#000}
.elementor.elementor .ep-recap .elementor-widget-video video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.elementor.elementor .e-con.ep-novideo{margin-top:48px;aspect-ratio:16/9;min-height:300px;align-items:center;justify-content:center;gap:16px;border:1px dashed var(--rule)}
body.ep-design .elementor.elementor .ep-novideo::before{content:"\25B6";display:flex;width:64px;height:64px;align-items:center;justify-content:center;border:2px solid var(--accent);border-radius:50%;color:var(--accent);font-size:22px}
.elementor.elementor .ep-novideo .ep-note{width:auto}
.elementor.elementor .ep-floor{margin-bottom:40px}
.elementor.elementor .ep-floor .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(24px,3vw,44px);line-height:1.1;letter-spacing:-.015em}
.elementor.elementor .ep-egal .gallery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.elementor.elementor .ep-egal .gallery .gallery-item{margin:0;padding:0;max-width:none;width:auto;aspect-ratio:4/3;overflow:hidden;background:rgba(0,0,0,.2)}
.elementor.elementor .ep-egal .gallery .gallery-item:first-child{grid-column:span 2}
.elementor.elementor .ep-egal .gallery-icon,.elementor.elementor .ep-egal .gallery-icon a{display:block;width:100%;height:100%}
.elementor.elementor .ep-egal .gallery .gallery-item img{width:100%;height:100%;object-fit:cover;border:0;filter:contrast(1.06) saturate(1.12);transition:transform .6s var(--ep-paper-ease)}
.elementor.elementor .ep-egal .gallery .gallery-item:hover img{transform:scale(1.04)}
html.ep-js .elementor.elementor .ep-egal:not(.is-all) .gallery .gallery-item:nth-child(n+8){display:none}
.ep-egal__more{margin-top:40px;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:13px;padding:16px 28px;background:transparent;color:#fff;border:1px solid #fff;cursor:pointer;transition:background-color .2s,color .2s}
.ep-egal__more:hover{background:#fff;color:#120f38}
@media(min-width:768px){
  .elementor.elementor .ep-egal .gallery{grid-template-columns:repeat(4,1fr);grid-auto-rows:calc((min(760px,78vh) - 24px)/3);gap:12px}
  .elementor.elementor .ep-egal .gallery .gallery-item{aspect-ratio:auto}
  .elementor.elementor .ep-egal .gallery .gallery-item:first-child{grid-column:span 2;grid-row:span 2}
  .elementor.elementor .ep-egal .gallery .gallery-item:nth-child(6),.elementor.elementor .ep-egal .gallery .gallery-item:nth-child(7){grid-column:span 2}
  .elementor.elementor .ep-egal.is-all .gallery .gallery-item:nth-child(n+8){grid-column:span 1}
}
.elementor.elementor .e-con.ep-floorgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.elementor.elementor .e-con.ep-floortile{padding:10px 10px 24px;--t:-1.3deg}
.elementor.elementor .e-con.ep-floortile:nth-child(even){--t:1.3deg}
.elementor.elementor .ep-floortile .ep-photo{aspect-ratio:4/3}
@media(min-width:768px){.elementor.elementor .e-con.ep-floorgrid{grid-template-columns:repeat(3,1fr)}}
.elementor.elementor .e-con.ep-btnrow--mt{margin-top:56px}

/* ranking */
.elementor.elementor .e-con.ep-rankfilter{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:48px}
.elementor.elementor .ep-rankfilter>*{width:auto}
.elementor.elementor .ep-rankfilter .ep-kicker{margin-inline-end:8px}
.elementor.elementor .ep-rankfilter .ep-kicker .elementor-heading-title{color:var(--fg-2)}
.elementor.elementor .ep-rank .ep-note{margin-top:16px}
.elementor.elementor .e-con.ep-podium{margin-top:56px;gap:24px}
.elementor.elementor .e-con.ep-step3{flex:1;justify-content:flex-end;--ink:#fff}
.elementor.elementor .e-con.ep-step3--1{--ink:#ff8d1b}.elementor.elementor .e-con.ep-step3--3{--ink:#ff375e}
.elementor.elementor .e-con.ep-step3__head{padding-bottom:20px}
.elementor.elementor .e-con.ep-step3__row{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.elementor.elementor .ep-step3__row>*{width:auto}
.elementor.elementor .ep-step3__pos .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(46px,6vw,96px);line-height:.8;color:var(--ink);letter-spacing:-.015em}
.elementor.elementor .ep-step3--1 .ep-stamp{transform:rotate(-3deg)}
.elementor.elementor .ep-step3__player .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:20px;letter-spacing:-.015em}
.elementor.elementor .ep-step3--1 .ep-step3__player .elementor-heading-title{font-size:26px}
.elementor.elementor .ep-step3__meta{margin-top:4px}
.elementor.elementor .ep-step3__meta .elementor-heading-title{font-size:14px;color:var(--fg-2)}
.elementor.elementor .e-con.ep-step3__box{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:16px;overflow:hidden;border-top:3px solid var(--ink);padding:20px;height:74px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.02))}
.elementor.elementor .ep-step3--1 .ep-step3__box{background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.03))}
.elementor.elementor .ep-step3__box>*{width:auto;z-index:1}
.elementor.elementor .ep-step3__stats .elementor-heading-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--fg-2)}
.elementor.elementor .ep-step3__stats .elementor-heading-title b{color:#fff;font-weight:600;margin-inline-end:20px}
.elementor.elementor .ep-step3__move .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:11px;color:var(--fg-2);letter-spacing:-.015em}
.elementor.elementor .ep-step3--1 .ep-step3__move .elementor-heading-title{color:var(--ink)}
@media(min-width:1024px){
  .elementor.elementor .e-con.ep-podium{flex-direction:row;align-items:flex-end;gap:20px}
  .elementor.elementor .e-con.ep-step3--2{order:1}.elementor.elementor .e-con.ep-step3--1{order:2}.elementor.elementor .e-con.ep-step3--3{order:3}
  .elementor.elementor .e-con.ep-step3--2 .ep-step3__box{height:clamp(150px,17vw,210px)}.elementor.elementor .e-con.ep-step3--1 .ep-step3__box{height:clamp(200px,23vw,290px)}.elementor.elementor .e-con.ep-step3--3 .ep-step3__box{height:clamp(120px,14vw,170px)}
  .elementor.elementor .ep-step3__box::after{content:attr(data-n);position:absolute;bottom:-18%;left:50%;transform:translateX(-50%);z-index:0;pointer-events:none;font-family:var(--ep-display);font-weight:700;font-size:clamp(90px,11vw,190px);line-height:1;color:transparent;-webkit-text-stroke:clamp(1px,.14vw,2.5px) #fff;opacity:.3;letter-spacing:-.015em}
  .elementor.elementor .e-con.ep-step3--2 .ep-step3__box::after{content:"2"}.elementor.elementor .e-con.ep-step3--1 .ep-step3__box::after{content:"1"}.elementor.elementor .e-con.ep-step3--3 .ep-step3__box::after{content:"3"}
}
.elementor.elementor .elementor-widget.ep-table{overflow-x:auto;border:1px solid var(--rule)}
.elementor.elementor .ep-table table{width:100%;border-collapse:collapse;margin:0;text-align:start;font-size:14px;color:var(--fg-2);background:transparent}
.elementor.elementor .ep-table caption{caption-side:top;text-align:start;padding:20px 16px;font-weight:600;font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--fg-2)}
.elementor.elementor .ep-table th,.elementor.elementor .ep-table td{padding:14px 16px;text-align:start;border:0;border-bottom:1px solid var(--rule);background:transparent}
.elementor.elementor .ep-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--fg-2)}
.elementor.elementor .ep-table td:first-child{font-family:var(--ep-display);font-weight:700;color:#fff;letter-spacing:-.015em}
.elementor.elementor .ep-table td.up{color:#ff8d1b;font-weight:600}.elementor.elementor .ep-table td.dn{color:#ff375e;font-weight:600}.elementor.elementor .ep-table td.eq{font-weight:600}
.elementor.elementor .ep-table tbody tr:hover td,.elementor.elementor .ep-table tbody>tr:nth-child(odd)>td{background:transparent}
.elementor.elementor .elementor-widget.ep-rt--mt{margin-top:32px}

/* partners */
.elementor.elementor .e-con.ep-partners{display:grid;gap:48px 40px}
.elementor.elementor .e-con.ep-partner{gap:20px}
.elementor.elementor .ep-partner__logo{display:flex;height:120px;align-items:center;justify-content:center;background:#fff;padding:20px}
.elementor.elementor .ep-partner__logo img{height:64px;width:auto;object-fit:contain}
.elementor.elementor .ep-partner--main .ep-partner__logo{height:200px}
.elementor.elementor .ep-partner--main .ep-partner__logo img{height:150px}
.elementor.elementor .ep-partner .ep-slot .elementor-heading-title{height:120px;border-style:dashed}
.elementor.elementor .ep-partner .ep-kicker{margin-bottom:8px}
.elementor.elementor .ep-partner .ep-kicker .elementor-heading-title{color:var(--accent)}
.elementor.elementor .ep-partner__n .elementor-heading-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.2em}
.elementor.elementor .elementor-widget.ep-partner__d{margin-top:8px;font-size:14px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-partner .ep-tlink{margin-top:14px}
.elementor.elementor .ep-partner .ep-tlink .elementor-heading-title a::before{display:none}
.elementor.elementor .ep-partner .ep-tlink--ext .elementor-heading-title a::after{content:" \2197"}
.elementor.elementor .ep-partner .ep-tlink--arrow .elementor-heading-title a::after{content:" \2192"}
@media(min-width:640px){.elementor.elementor .e-con.ep-partners{grid-template-columns:1fr 1fr}}
@media(min-width:1024px){.elementor.elementor .e-con.ep-partners{grid-template-columns:repeat(4,1fr)}.elementor.elementor .e-con.ep-partner--main,.elementor.elementor .e-con.ep-partner--wide{grid-column:span 2}}
.elementor.elementor .e-con.ep-host{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px}
.elementor.elementor .ep-host>*{width:auto}
.elementor.elementor .ep-host__t .elementor-heading-title{font-family:var(--ep-heavy);text-transform:uppercase;font-size:clamp(30px,4.4vw,62px);line-height:.98;letter-spacing:-.015em}
.elementor.elementor .elementor-widget.ep-host__x{margin-top:20px;max-width:58ch;font-size:17px;line-height:1.65;color:var(--fg-2)}


/* ---------- fixes from the fidelity pass ---------- */
.elementor.elementor .ep-c .ep-puzzle>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.elementor.elementor .ep-c .ep-piece img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.elementor.elementor .ep-c .ep-crest img{max-width:none;height:auto}
.elementor.elementor .ep-c .ep-crest .ep-crest__in img{height:auto}
.elementor.elementor .e-con.ep-champ__poster{min-width:min-content}
.elementor.elementor .ep-events__drag .elementor-heading-title{white-space:nowrap}
.elementor.elementor .elementor-widget.ep-pillar__desc{max-width:78ch}
.elementor.elementor .e-con.ep-closing__inner{margin-bottom:0}
.elementor.elementor .ep-form .elementor-field-group .elementor-field.elementor-field-textual,.elementor.elementor .ep-form .elementor-field-group select.elementor-field-textual{background-color:transparent !important;border:1px solid var(--rule) !important;color:var(--fg) !important;border-radius:0 !important}
.elementor.elementor .ep-form .elementor-field-group .elementor-field.elementor-field-textual:focus{border-color:var(--fg) !important}
.elementor.elementor .ep-form--signup .elementor-button[type="submit"]{letter-spacing:-.015em}
.elementor.elementor .ep-c .ep-puzzle.is-cut>img{display:none}
.elementor.elementor .ep-c .ep-crest.is-cut>img.ep-crest__flat{display:none}
@media(min-width:768px){
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars__list{display:block;position:relative}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillar{position:absolute;top:0;inset-inline-start:0;width:100%}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillar.is-active{position:relative}
}
/* aspect-ratio boxes inside Elementor's flex widgets collapse to 0 height on phones: size them with a spacer instead */
.elementor.elementor .ep-pillars__strip .ep-puzzle{aspect-ratio:auto}
.elementor.elementor .ep-pillars__strip .ep-puzzle::before{content:"";display:block;padding-top:23%}
.elementor.elementor .ep-hero__crest .ep-crest.is-cut{aspect-ratio:auto !important}
.elementor.elementor .ep-hero__crest .ep-crest.is-cut::before{content:"";display:block;padding-top:97.09%}
.elementor.elementor .ep-hero__crest .ep-crest.is-cut .ep-crest__in{position:absolute;inset:0}
/* header on phones: Register stays visible and the buttons sit at the end, as in the reference */
.elementor.elementor .ep-header__reg{display:block;margin-inline-start:auto}
.elementor.elementor .ep-header__reg+.ep-header__open{margin-inline-start:0}
@media(max-width:420px){.elementor.elementor .e-con.ep-header{gap:10px}.elementor.elementor .ep-header .ep-btn--sm .elementor-button{padding:12px 12px}}
/* the flex parent cannot resolve those percentages while measuring, so state the heights in viewport units */
.elementor.elementor .elementor-widget.ep-pillars__strip{min-height:min(239px,calc((100vw - 2*var(--ep-gx))*.23))}
@media(max-width:767px){.elementor.elementor .e-con.ep-hero__crest{min-height:calc(min(240px,54vw)*.971)}.elementor.elementor .ep-hero__crest .elementor-widget-html{width:100%}}
@media(min-width:768px){html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillars__strip{min-height:0}}
.elementor.elementor .ep-form .elementor-field-group input[type="file"]{background-color:transparent !important;border:1px solid var(--rule) !important;color:var(--fg-2) !important;padding:9px 10px}
.elementor.elementor .ep-events__drag .elementor-heading-title>span{display:inline}
@media(min-width:768px){.elementor.elementor .e-con.ep-hero__cta{max-width:50%}}
/* inner pages, misc */
.elementor.elementor .ep-egal__btn{display:none;margin-top:40px}
html.ep-js .elementor.elementor .ep-egal__btn{display:block}
.elementor.elementor .ep-champ__reg{margin-top:28px}
.elementor.elementor .ep-evcard__link--v .elementor-heading-title{color:var(--fg)}
.elementor.elementor .ep-header__lang .elementor-heading-title a{display:flex;min-height:44px;align-items:center;border:1px solid var(--rule);padding:10px 14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;transition:border-color .2s}
.elementor.elementor .ep-header__lang .elementor-heading-title a:hover{border-color:#fff}
.elementor.elementor .ep-header__lang{margin-inline-start:auto}
.elementor.elementor .ep-header__lang+.ep-header__reg{margin-inline-start:0}
body.ep-design:not(.home) .elementor.elementor .e-con.ep-header{background:#1d1852;box-shadow:0 1px 0 0 var(--rule)}


/* ================= UI refresh 2026-11-10: same layout, content and brand; readability, contrast, states, RTL, themes ================= */

/* ---- colour tokens for small text: the reference brand red and gold (2026-11-11, client asked for the exact reference) ---- */
.ep-tone-ink,.ep-tone-deep,body.ep-design{--accent-t:#e0002c;--gold-t:#ff8d1b}
.ep-tone-red{--accent-t:#1d1852;--gold-t:#fff}
.ep-tone-white{--accent-t:#e0002c;--gold-t:#ff8d1b}
html{color-scheme:dark}
.elementor.elementor .ep-more .ep-kicker .elementor-heading-title,.elementor.elementor .ep-person .ep-kicker .elementor-heading-title,.elementor.elementor .ep-shelf .ep-kicker .elementor-heading-title,.elementor.elementor .ep-partner .ep-kicker .elementor-heading-title,.elementor.elementor .ep-tlink .elementor-heading-title,.elementor.elementor .ep-evcard__link .elementor-heading-title,.elementor.elementor .ep-comm__join a,.elementor.elementor .ep-rt a,.elementor.elementor .ep-closing__join .elementor-heading-title a:hover{color:var(--accent-t)}
.elementor.elementor .ep-evcard__link--v .elementor-heading-title{color:var(--fg)}
.elementor.elementor .ep-cinfo__mail .elementor-heading-title a:hover,.elementor.elementor .ep-book__t .elementor-heading-title a:hover{color:var(--accent-t)}
html.ep-js .elementor.elementor .e-con.ep-ptab:not(.is-active){opacity:1}
html.ep-js .elementor.elementor .e-con.ep-ptab:not(.is-active) .ep-photo{opacity:.62}
.elementor.elementor .ep-ptab .ep-photo{transition:opacity .3s}
.elementor.elementor .e-con.ep-ptab:hover .ep-photo{opacity:1 !important}

/* ---- typography: label sizes and tracking are the reference values (ep.src.css); 2026-11-11 the 12px floor was removed at the client's request ---- */
.elementor.elementor .ep-c .elementor-widget-text-editor p{overflow-wrap:break-word}
body.ep-design{text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale}
.elementor.elementor .ep-c .elementor-widget-text-editor p{text-wrap:pretty}
.elementor.elementor .ep-c h1.elementor-heading-title,.elementor.elementor .ep-c h2.elementor-heading-title,.elementor.elementor .ep-c h3.elementor-heading-title{text-wrap:balance}

/* ---- components: clear states ---- */
.elementor.elementor .ep-btn .elementor-button:active{transform:translate(2px,2px) !important;box-shadow:0 0 0 0 var(--fg);filter:brightness(.95)}
.elementor.elementor .ep-btn--ghost .elementor-button:active,.elementor.elementor .ep-btn--quiet .elementor-button:active,.elementor.elementor .ep-menubtn .elementor-button:active{transform:none !important;filter:none;opacity:.85}
body.ep-design .elementor.elementor :focus-visible{outline:2px solid #fff;outline-offset:3px;box-shadow:0 0 0 5px rgba(29,24,82,.9)}
body.ep-design .elementor.elementor .ep-tone-white :focus-visible{outline-color:#1d1852;box-shadow:0 0 0 5px rgba(255,255,255,.9)}
.elementor.elementor .ep-form .elementor-button[type="submit"]:active{box-shadow:0 0 0 0 var(--fg);transform:translate(2px,2px)}
.elementor.elementor .ep-form .elementor-button[type="submit"][disabled],.elementor.elementor .ep-form .elementor-form-waiting .elementor-button[type="submit"]{opacity:.6;cursor:progress;box-shadow:none}
.elementor.elementor .ep-form .elementor-field-group .elementor-field.elementor-field-textual:hover{border-color:color-mix(in srgb,var(--fg) 55%,transparent) !important}
.elementor.elementor .ep-form .elementor-field-group.elementor-error .elementor-field.elementor-field-textual,.elementor.elementor .ep-form .elementor-field-group .elementor-field.elementor-field-textual[aria-invalid="true"]{border-color:var(--accent-t) !important}
.elementor.elementor .ep-form .elementor-mark-required .elementor-field-label::after{color:var(--accent-t);content:"*";padding-inline-start:.3em}
.elementor.elementor .ep-form .elementor-field-group select.elementor-field-textual{appearance:none;-webkit-appearance:none;padding-inline-end:40px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%) !important;background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50% !important;background-size:6px 6px,6px 6px !important;background-repeat:no-repeat !important}
[dir="rtl"] .elementor.elementor .ep-form .elementor-field-group select.elementor-field-textual{background-position:20px 50%,14px 50% !important}
.elementor.elementor .ep-form .elementor-select-wrapper .select-caret-down-wrapper{display:none}
.elementor.elementor .ep-form .elementor-message{font-size:13px;letter-spacing:.02em}
.elementor.elementor .ep-form .elementor-message[role="alert"],.elementor.elementor .ep-form .elementor-message{scroll-margin-top:100px}
.elementor.elementor .ep-filter .elementor-heading-title{cursor:pointer}
.elementor.elementor .ep-filter:active .elementor-heading-title{opacity:.8}
.elementor.elementor .ep-sheet,.elementor.elementor .ep-evcard{will-change:transform}

/* ---- tap targets: at least 24px high without moving anything ---- */
.elementor.elementor .ep-navlink a,.elementor.elementor a.ep-navlink,.elementor.elementor .ep-tlink .elementor-heading-title a,.elementor.elementor .ep-evcard__link .elementor-heading-title a,.elementor.elementor .ep-closing__join .elementor-heading-title a{display:inline-block;padding-block:5px;margin-block:-5px}
.elementor.elementor .ep-navlink a::after,.elementor.elementor a.ep-navlink::after{bottom:2px}
.elementor.elementor .ep-footer__nav .elementor-nav-menu{row-gap:2px}
.elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item{padding-block:4px}
.elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item::after{bottom:1px}
.elementor.elementor .ep-filter .elementor-heading-title{position:relative}
.elementor.elementor .ep-filter .elementor-heading-title a::before{content:"";position:absolute;inset:0}
.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item{padding-block:12px}
.elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item::after{bottom:6px}

/* ---- spacing and alignment touch-ups ---- */
.elementor.elementor .e-con.ep-header{min-height:72px}
.elementor.elementor .ep-evcard__title .elementor-heading-title,.elementor.elementor .ep-evtile__t .elementor-heading-title{hyphens:manual}
.elementor.elementor .elementor-widget.ep-hero__lede,.elementor.elementor .elementor-widget.ep-phero__l{text-wrap:balance}
@media(max-width:767px){
  .elementor.elementor .e-con.ep-step3__box{flex-wrap:wrap;height:auto;min-height:74px}
  .elementor.elementor .ep-form .elementor-field-group.elementor-col-50{width:100%;max-width:100%}
}
@media(max-width:400px){.elementor.elementor .ep-header__name{display:none}.elementor.elementor .e-con.ep-header{gap:8px;padding-inline:12px}}

/* ---- imagery ---- */
.elementor.elementor .ep-photo{background:rgba(127,124,158,.18)}
.elementor.elementor .ep-c img{image-rendering:auto}
.elementor.elementor .ep-partner__logo img,.elementor.elementor .ep-wjpf__logo img{object-fit:contain}

/* ---- LTR / RTL ---- */
[dir="rtl"] .elementor.elementor .ep-header__nav .elementor-nav-menu a.elementor-item::after,[dir="rtl"] .elementor.elementor .ep-footer__nav .elementor-nav-menu a.elementor-item::after,[dir="rtl"] .elementor.elementor a.ep-navlink::after,[dir="rtl"] .elementor.elementor .ep-ptab__n::before{transform-origin:right center}
[dir="rtl"] .elementor.elementor .ep-btn--arrow .elementor-button:hover::after{transform:rotate(180deg) translateX(4px)}
[dir="rtl"] .elementor.elementor .ep-room .elementor-heading-title a::after,[dir="rtl"] .elementor.elementor .ep-book__t .elementor-heading-title a::after,[dir="rtl"] .elementor.elementor .ep-partner .ep-tlink--arrow .elementor-heading-title a::after{display:inline-block;transform:scaleX(-1)}
[dir="rtl"] .elementor.elementor .ep-room .elementor-heading-title a:hover::after{transform:scaleX(-1) translateX(4px)}
[dir="rtl"] .elementor.elementor .ep-tlink .elementor-heading-title span[aria-hidden],[dir="rtl"] .elementor.elementor .ep-events__drag .elementor-heading-title span[aria-hidden]{display:inline-block;transform:rotate(180deg)}
[dir="rtl"] .elementor.elementor .ep-hero__photo::after{background:linear-gradient(160deg,rgba(29,24,82,0) 45%,rgba(29,24,82,.55))}
[dir="rtl"] .elementor.elementor .ep-phero__pic .ep-photo::after{background:linear-gradient(160deg,rgba(29,24,82,0) 50%,rgba(29,24,82,.5))}
[dir="rtl"] .elementor.elementor .ep-c .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c .elementor-widget-text-editor,[dir="rtl"] .elementor.elementor .ep-c .elementor-button,[dir="rtl"] .elementor.elementor .ep-c .elementor-nav-menu a.elementor-item,[dir="rtl"] .ep-marquee,[dir="rtl"] .elementor.elementor .ep-form .elementor-field-label{letter-spacing:0 !important}
[dir="rtl"] .elementor.elementor .ep-hero__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-phero__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h1 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h2 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h2.elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h3.elementor-heading-title{line-height:1.12}
[dir="rtl"] .elementor.elementor .ep-form input[type="email"],[dir="rtl"] .elementor.elementor .ep-form input[type="tel"],[dir="rtl"] .elementor.elementor .ep-cinfo__mail{direction:ltr;text-align:end}
[dir="rtl"] .ep-rail{display:none !important}
[dir="rtl"] .elementor.elementor .ep-stamp--banner{transform:skewX(9deg)}
[dir="rtl"] .elementor.elementor .ep-stamp--banner .elementor-heading-title{transform:skewX(-9deg)}
[dir="rtl"] .elementor.elementor .ep-table table{direction:rtl}

/* ---- theme switch ---- */
.elementor.elementor .ep-themebtn{flex:none}
.elementor.elementor .ep-themebtn .elementor-button{position:relative;width:44px;height:44px;padding:0;background:transparent;border:1px solid var(--rule);color:#fff;font-size:0;line-height:0;justify-content:center;transition:border-color .2s,background-color .2s}
.elementor.elementor .ep-themebtn .elementor-button:hover{border-color:#fff}
.elementor.elementor .ep-themebtn .elementor-button .elementor-button-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
body.ep-design .elementor.elementor .ep-themebtn .elementor-button::before{content:"";width:16px;height:16px;border-radius:50%;background:linear-gradient(90deg,#fff 50%,transparent 50%);border:2px solid #fff}
.elementor.elementor .ep-header__theme{margin-inline-start:auto}
.elementor.elementor .ep-header__theme+.ep-header__reg,.elementor.elementor .ep-header__lang+.ep-header__theme{margin-inline-start:0}

/* ---- light theme: navy bands turn to brand paper; header, heroes, red bands and footer keep their colours ---- */
html[data-theme="light"]{color-scheme:light}
html[data-theme="light"],html[data-theme="light"] body.ep-design{background:#f6f6fa}
html[data-theme="light"] .ep-tone-ink:not(.ep-hero):not(.ep-header):not(.ep-phero):not(.ep-footer){--bg:#f6f6fa;--bgv:rgba(246,246,250,.94);--fg:#1d1852;--fg-2:#4a476a;--fg-3:#5f5c82;--rule:rgba(29,24,82,.18);--accent:#e0002c;--accent-t:#c40026;--gold-t:#964a00}
html[data-theme="light"] .ep-tone-deep:not(.ep-phero):not(.ep-popup){--bg:#eae9f3;--bgv:rgba(234,233,243,.94);--fg:#1d1852;--fg-2:#4a476a;--fg-3:#5a577c;--rule:rgba(29,24,82,.2);--accent:#e0002c;--accent-t:#bf0025;--gold-t:#8f4600}
html[data-theme="light"] .elementor.elementor .e-con.ep-band:not(.ep-tone-red):not(.ep-hero):not(.ep-phero),html[data-theme="light"] .elementor.elementor .e-con.ep-split__p:not(.ep-tone-red){background-blend-mode:normal,multiply}
html[data-theme="light"] .elementor.elementor .e-con.ep-champ::after,html[data-theme="light"] .elementor.elementor .ep-split__p:not(.ep-tone-red)::after,html[data-theme="light"] .elementor.elementor .ep-step3__box::after{-webkit-text-stroke-color:var(--fg)}
html[data-theme="light"] .elementor.elementor .e-con.ep-champ .ep-fact{border-color:rgba(29,24,82,.3);background:repeating-linear-gradient(90deg,transparent 0 7px,rgba(29,24,82,.07) 7px 8px)}
html[data-theme="light"] .elementor.elementor .e-con.ep-tier{--tier:#1d1852}
html[data-theme="light"] .elementor.elementor .e-con.ep-tier:nth-child(3){--tier:#8c5a3b}html[data-theme="light"] .elementor.elementor .e-con.ep-tier:nth-child(4){--tier:#8e9396}html[data-theme="light"] .elementor.elementor .e-con.ep-tier:last-child{--tier:#e07400}
html[data-theme="light"] .elementor.elementor .e-con.ep-step3{--ink:#1d1852}
html[data-theme="light"] .elementor.elementor .e-con.ep-step3--1{--ink:#c26000}html[data-theme="light"] .elementor.elementor .e-con.ep-step3--3{--ink:#d10029}
html[data-theme="light"] .elementor.elementor .e-con.ep-step3__box{background:linear-gradient(180deg,rgba(29,24,82,.1),rgba(29,24,82,.02))}
html[data-theme="light"] .elementor.elementor .ep-step3--1 .ep-step3__box{background:linear-gradient(180deg,rgba(29,24,82,.16),rgba(29,24,82,.03))}
html[data-theme="light"] .elementor.elementor .ep-step3__stats .elementor-heading-title b,html[data-theme="light"] .elementor.elementor .ep-table td:first-child{color:var(--fg)}
html[data-theme="light"] .elementor.elementor .ep-table td.dn{color:#c40026}
html[data-theme="light"] .ep-egal__more{color:#1d1852;border-color:#1d1852}
html[data-theme="light"] .elementor.elementor .e-con.ep-polaroid,html[data-theme="light"] .elementor.elementor .e-con.ep-story__p1,html[data-theme="light"] .elementor.elementor .e-con.ep-story__p2{background:#fff}
html[data-theme="light"] .elementor.elementor .ep-band:not(.ep-tone-red):not(.ep-hero):not(.ep-phero):not(.ep-footer) :focus-visible{outline-color:#1d1852;box-shadow:0 0 0 5px rgba(255,255,255,.95)}
html[data-theme="light"] .elementor.elementor .ep-card img{box-shadow:0 22px 48px rgba(29,24,82,.28)}
html[data-theme="light"] .elementor.elementor .ep-closing__crest{opacity:.5}
html[data-theme="light"] .elementor.elementor .ep-photo{background:rgba(29,24,82,.08)}
html[data-theme="light"] .elementor.elementor .ep-themebtn .elementor-button::before{background:linear-gradient(90deg,transparent 50%,#fff 50%)}
html[data-theme="light"] .elementor.elementor .ep-novideo{border-color:rgba(255,255,255,.5)}
@media(forced-colors:active){.elementor.elementor .ep-btn .elementor-button,.elementor.elementor .ep-form .elementor-button[type="submit"]{border:1px solid ButtonText}.elementor.elementor .ep-themebtn .elementor-button::before{forced-color-adjust:none}}
@media print{.ep-header,.ep-menu,.ep-marquee-w,.ep-art{display:none !important}.elementor.elementor .e-con.ep-band{background:#fff !important;color:#000}}
.elementor.elementor .ep-filter--d .elementor-heading-title{padding:0}
.elementor.elementor .ep-filter--d .elementor-heading-title a{display:flex;align-items:center;min-height:42px;padding:0 20px}
/* ep-themeicon-fix: the icon is a real box now (sun in dark, moon in light) */
.elementor.elementor .ep-themebtn .elementor-button{display:inline-flex;align-items:center;justify-content:center;border-color:rgba(255,255,255,.55)}
body.ep-design .elementor.elementor .ep-themebtn .elementor-button::before{content:"";display:block;flex:none;width:20px;height:20px;border:0;border-radius:0;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Cpath d='M12 1.5v3.4M12 19.1v3.4M1.5 12h3.4M19.1 12h3.4M4.6 4.6l2.4 2.4M17 17l2.4 2.4M4.6 19.4L7 17M17 7l2.4-2.4' stroke='%23000' stroke-width='2.2' stroke-linecap='round' fill='none'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Cpath d='M12 1.5v3.4M12 19.1v3.4M1.5 12h3.4M19.1 12h3.4M4.6 4.6l2.4 2.4M17 17l2.4 2.4M4.6 19.4L7 17M17 7l2.4-2.4' stroke='%23000' stroke-width='2.2' stroke-linecap='round' fill='none'/%3E%3C/svg%3E") center/contain no-repeat}
html[data-theme="light"] body.ep-design .elementor.elementor .ep-themebtn .elementor-button::before{background:#fff;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 14.6A8.6 8.6 0 0 1 9.4 3.5a8.6 8.6 0 1 0 11.1 11.1z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.5 14.6A8.6 8.6 0 0 1 9.4 3.5a8.6 8.6 0 1 0 11.1 11.1z'/%3E%3C/svg%3E")}

/* ---- Arabic: the client's Arabic face, sized up as in the reference; Latin words inside Arabic keep the Latin families ---- */
@font-face{font-family:"EP Arabic";src:url(fonts/MicrosoftUighur.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;size-adjust:145%;unicode-range:U+0600-06FF,U+0750-077F,U+0870-08FF,U+200C-200F,U+FB50-FDFF,U+FE70-FEFF}
:root{--ep-display:"EP Kiona","EP Arabic","Arial Narrow",sans-serif;--ep-heavy:"EP Archivo Black","EP Arabic","Arial Black",sans-serif;--ep-body:"EP Archivo Narrow","EP Arabic",system-ui,sans-serif}
[dir="rtl"] body.ep-design{--ep-display:"EP Arabic","EP Kiona",system-ui,sans-serif;--ep-heavy:"EP Arabic","EP Archivo Black",system-ui,sans-serif;--ep-body:"EP Arabic","EP Archivo Narrow",system-ui,sans-serif}
[dir="rtl"] .elementor.elementor .ep-c h1.elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h2.elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h3.elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-btn .elementor-button,[dir="rtl"] .elementor.elementor .ep-quote__text blockquote{font-weight:700}
[dir="rtl"] .elementor.elementor .elementor-widget.ep-note,[dir="rtl"] .elementor.elementor .ep-note .elementor-heading-title{font-family:ui-monospace,"SFMono-Regular",Menlo,"EP Arabic",monospace}
[dir="rtl"] .elementor.elementor .e-con.ep-hero::after,[dir="rtl"] .elementor.elementor .e-con.ep-phero::after{direction:ltr}
[dir="rtl"] .elementor.elementor .ep-hero__title .elementor-heading-title{font-size:clamp(32px,5.4vw,84px)}
.elementor.elementor .ep-header__lang .elementor-heading-title a{font-family:var(--ep-body)}
html[lang^="en"] .elementor.elementor .ep-header__lang .elementor-heading-title a{font-family:"EP Arabic",system-ui,sans-serif;font-size:15px}
/* phones: the theme button stays in the header; everything tightens a little to make room */
@media(max-width:480px){.elementor.elementor .e-con.ep-header{gap:6px;padding-inline:10px}.elementor.elementor .ep-header__theme{display:block}.elementor.elementor .ep-themebtn .elementor-button{width:40px;height:40px}.elementor.elementor .ep-header__lang .elementor-heading-title a{min-height:40px;padding:8px 9px}.elementor.elementor .ep-header .ep-btn--sm .elementor-button{padding:11px 9px;min-height:40px;letter-spacing:-.02em}.elementor.elementor .ep-header .ep-menubtn .elementor-button{min-height:40px;padding:8px 9px}.elementor.elementor .ep-header__logo img{width:40px;height:40px}}
@media(max-width:359px){.elementor.elementor .ep-header__lang{display:none}}

/* ================= shop (WooCommerce) ================= */
.elementor.elementor .elementor-widget.ep-shop__note{margin-bottom:40px}
.elementor.elementor .ep-shop__h{margin-bottom:32px}
.elementor.elementor .ep-shop__h .elementor-heading-title{font-size:clamp(22px,2.4vw,34px)}
.elementor.elementor .ep-products{margin-bottom:64px}
.elementor.elementor .ep-products .woocommerce ul.products{display:grid;grid-template-columns:1fr;gap:40px 20px;margin:0;padding:0;list-style:none}
.elementor.elementor .ep-products .woocommerce ul.products::before,.elementor.elementor .ep-products .woocommerce ul.products::after{display:none}
.elementor.elementor .ep-products .woocommerce ul.products li.product{width:auto;float:none;margin:0;padding:12px 12px 24px;background:#fff;color:#1d1852;position:relative;text-align:start;box-shadow:0 1px 1px rgba(29,24,82,.1),0 6px 14px rgba(29,24,82,.11),0 18px 34px rgba(29,24,82,.07);transform:rotate(calc(-1.2deg*var(--ep-tilt)));transition:transform .62s var(--ep-paper-ease)}
.elementor.elementor .ep-products .woocommerce ul.products li.product:nth-child(even){transform:rotate(calc(1.2deg*var(--ep-tilt)))}
.elementor.elementor .ep-products .woocommerce ul.products li.product:hover,.elementor.elementor .ep-products .woocommerce ul.products li.product:focus-within{transform:none}
.elementor.elementor .ep-products .woocommerce ul.products li.product a img{width:100%;aspect-ratio:1;object-fit:cover;margin:0;display:block}
.elementor.elementor .ep-products--4 .woocommerce ul.products li.product a img{object-fit:contain;padding:8%}
.elementor.elementor .ep-products .woocommerce ul.products li.product .woocommerce-loop-product__title{margin:0;padding:10px 0 0;font-family:var(--ep-body);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;line-height:1.4;color:#1d1852}
.elementor.elementor .ep-products .woocommerce ul.products li.product .price{position:absolute;bottom:-12px;inset-inline-end:8px;z-index:2;margin:0;background:#1d1852;color:#fff;font-family:var(--ep-body);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;line-height:1;padding:8px 12px;transform:rotate(5deg)}
.elementor.elementor .ep-products .woocommerce ul.products li.product:nth-child(even) .price{transform:rotate(-5deg)}
.elementor.elementor .ep-products .woocommerce ul.products li.product .button{display:inline-flex;align-items:center;min-height:40px;margin-top:12px;padding:0 16px;border-radius:0;background:#e0002c;color:#fff;font-family:var(--ep-display);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:-.015em;line-height:1}
.elementor.elementor .ep-products .woocommerce ul.products li.product .button:hover{filter:brightness(1.1)}
.elementor.elementor .ep-products .woocommerce ul.products li.product .added_to_cart{display:inline-block;margin-inline-start:10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#d10029}
.elementor.elementor .ep-products .woocommerce ul.products li.product .onsale{display:none}
@media(min-width:640px){.elementor.elementor .ep-products .woocommerce ul.products{grid-template-columns:1fr 1fr}}
@media(min-width:768px){.elementor.elementor .ep-products--3 .woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.elementor.elementor .ep-products--4 .woocommerce ul.products{grid-template-columns:repeat(4,1fr)}}
.elementor.elementor .e-con.ep-shop__ps{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;border:2px solid var(--accent);padding:clamp(20px,3vw,40px)}
.elementor.elementor .ep-shop__ps>*{width:auto}
.elementor.elementor .ep-shop__pst .elementor-heading-title{font-family:var(--ep-display);font-weight:700;text-transform:uppercase;font-size:clamp(22px,2.4vw,34px);line-height:1.05}
.elementor.elementor .elementor-widget.ep-shop__psx{margin-top:8px;max-width:56ch;font-size:15px;line-height:1.6;color:var(--fg-2)}
.elementor.elementor .ep-btn--ext .elementor-button{box-shadow:none;padding:12px 20px}
.elementor.elementor .ep-btn--ext .elementor-button::after{content:"\2197";margin-inline-start:8px}
.elementor.elementor .e-con.ep-shop__foot{margin-top:48px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--rule);padding-top:32px}
.elementor.elementor .ep-shop__foot>*{width:auto}

/* product, cart, checkout, account: WooCommerce's own screens on brand paper */
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(main.site-main,#primary){background:#f6f6fa;color:#1d1852;max-width:none;width:100%;margin:0;padding:132px var(--ep-gx) 88px;font-family:var(--ep-body);font-size:16px;line-height:1.6}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(main.site-main,#primary)>*{max-width:1200px;margin-inline:auto}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) #primary main.site-main{padding:0;background:transparent}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(h1,h2,h3){font-family:var(--ep-heavy);font-weight:400;text-transform:uppercase;letter-spacing:-.015em;line-height:1;color:#1d1852}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) main h1{font-size:clamp(32px,4.4vw,60px);margin:0 0 28px}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) main a:not(.button):not(.wc-block-components-button){color:#1d1852;text-decoration:underline;text-underline-offset:3px}
body.ep-design .woocommerce :is(a.button,button.button,input.button),body.ep-design .wc-block-components-button:not(.is-link),body.ep-design .woocommerce #respond input#submit{background:#e0002c;color:#fff;border:0;border-radius:0;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:14px;line-height:1.4;padding:16px 28px;min-height:48px;box-shadow:4px 4px 0 0 #1d1852;transition:box-shadow .3s,filter .2s}
body.ep-design .woocommerce :is(a.button,button.button,input.button):hover,body.ep-design .wc-block-components-button:not(.is-link):hover{background:#e0002c;color:#fff;filter:brightness(1.1);box-shadow:2px 2px 0 0 #1d1852}
body.ep-design .woocommerce div.product p.price,body.ep-design .woocommerce div.product span.price{color:#d10029;font-family:var(--ep-display);font-weight:700;font-size:28px}
body.ep-design .woocommerce div.product .woocommerce-tabs,body.ep-design .woocommerce .related{display:none}
body.ep-design .woocommerce .quantity .qty,body.ep-design .wc-block-components-text-input input,body.ep-design .woocommerce form .form-row :is(input.input-text,textarea,select),body.ep-design .wc-blocks-components-select .wc-blocks-components-select__select{border:1px solid rgba(29,24,82,.35);border-radius:0;background:#fff;color:#1d1852;min-height:48px}
body.ep-design .woocommerce-message,body.ep-design .woocommerce-info,body.ep-design .woocommerce-error,body.ep-design .wc-block-components-notice-banner{border-radius:0;background:#fff;color:#1d1852;border:1px solid rgba(29,24,82,.2);border-inline-start:4px solid #e0002c}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :focus-visible{outline:2px solid #1d1852;outline-offset:3px;box-shadow:0 0 0 5px rgba(255,255,255,.9)}
body.ep-design:is(.single-product,.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .ep-header{background:#1d1852}
[dir="rtl"] .elementor.elementor .e-con.ep-champ::after{content:"\0662\0660\0662\0666"}
body.ep-design.single-product .woocommerce-tabs,body.ep-design.single-product .related.products,body.ep-design.single-product .product_meta .posted_in,body.ep-design.single-product .woocommerce-breadcrumb{display:none}
body.ep-design.woocommerce :is(a.button,button.button,input.button),body.ep-design.woocommerce :is(a.button.alt,button.button.alt){background:#e0002c;color:#fff;border:0;border-radius:0;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:14px;line-height:1.4;padding:16px 28px;min-height:48px;box-shadow:4px 4px 0 0 #1d1852}
body.ep-design.woocommerce :is(a.button,button.button,a.button.alt,button.button.alt):hover{background:#e0002c;color:#fff;filter:brightness(1.1);box-shadow:2px 2px 0 0 #1d1852}
body.ep-design.single-product div.product :is(p.price,span.price){color:#d10029;font-family:var(--ep-display);font-weight:700;font-size:28px}
body.ep-design.single-product .quantity .qty{border:1px solid rgba(29,24,82,.35);border-radius:0;background:#fff;color:#1d1852;min-height:48px;width:72px}
body.ep-design.single-product div.product form.cart{display:flex;gap:12px;align-items:stretch}

/* ep-product-page-fix */
body.ep-design.single-product .woocommerce-tabs,body.ep-design.single-product .related.products,body.ep-design.single-product .woocommerce-breadcrumb{display:none}
body.ep-design.single-product :is(button.single_add_to_cart_button,.button.alt),body.ep-design.woocommerce-page :is(a.button,button.button,.button.alt){background:#e0002c !important;color:#fff !important;border:0;border-radius:0;font-family:var(--ep-display);font-weight:700;text-transform:uppercase;letter-spacing:-.015em;font-size:14px;padding:16px 28px;min-height:48px;box-shadow:4px 4px 0 0 #1d1852}
body.ep-design.single-product .quantity .qty{background:#fff;color:#1d1852;border:1px solid rgba(29,24,82,.35);min-height:48px;width:72px}
body.ep-design.single-product div.product{display:grid;gap:32px}
@media(min-width:768px){body.ep-design.single-product div.product{grid-template-columns:1fr 1fr;align-items:start}body.ep-design.single-product div.product>*{width:auto !important;float:none !important;margin:0}}

/* ep-arabic-weight-fix: Uighur ships one weight; the browser thickens it for 600/700, as the reference does */
[dir="rtl"] body.ep-design{font-synthesis:weight style}
[dir="rtl"] .elementor.elementor .ep-c .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c .elementor-button,[dir="rtl"] .elementor.elementor .ep-c .elementor-nav-menu a.elementor-item{font-synthesis:weight}
[dir="rtl"] .elementor.elementor .ep-hero__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-phero__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h1 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h2 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h2.elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-c h3.elementor-heading-title{line-height:1.06}
[dir="rtl"] .elementor.elementor .ep-kicker .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-hero__label .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-phero__k .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-fact__k .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-proof__label .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-stat__label .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-pillar__stat .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-tlink .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-evcard__link .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-stamp .elementor-heading-title{font-weight:700}

/* ep-divider-clearance: page-hero photo stops where the next section's torn edge starts, so the tear covers nothing */
@media(min-width:768px){.elementor.elementor .e-con.ep-phero__pic{inset-block-end:var(--ep-tear)}}
/* the falcon art in a quote band lifts by the tear height when the next section has a torn edge (phoenix clears the next tear) */
.elementor.elementor .e-con.ep-band:has(+ .e-con[class*="ep-torn-"])>.elementor-widget.ep-art{inset-block-end:var(--ep-tear)}

/* ep-champ-fit: title and poster share the row at any desktop width (no overflow off the right edge) */
@media(min-width:768px){
  .elementor.elementor .e-con.ep-champ__copy{min-width:0;container-type:inline-size}
  .elementor.elementor .ep-champ__title{min-width:0}
  .elementor.elementor .ep-champ__title .elementor-heading-title{font-size:min(clamp(34px,6.8vw,110px),11.2cqi)}
  .elementor.elementor .e-con.ep-champ__poster{min-width:0;width:100%;container-type:inline-size}
  .elementor.elementor .e-con.ep-poster{width:auto;align-self:flex-end}
  .elementor.elementor .ep-poster .ep-puzzle{width:min(430px,82vw,calc(100cqi - 20px))}
  .elementor.elementor .ep-poster__cap .elementor-widget.ep-note{text-align:end}
  /* the 2026 stamp sits on the poster corner, wherever the poster ends up in its column */
  .elementor.elementor .ep-champ__poster .ep-poster__stamp{inset-inline-start:calc(100cqi - min(450px,100cqi) - 16px)}
}
/* ep-touch-captions: gallery captions are a hover reveal; touch screens have no hover, so show them */
@media (hover:none){.elementor.elementor .elementor-widget.ep-gtile__cap{transform:none}}

/* ep-pillars-fit: the pinned Pillars design (one pillar at a time) sizes itself to the window height, so laptops keep it */
@media(min-width:768px){
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars{padding-block:max(88px,clamp(60px,9vh,96px)) clamp(44px,6vh,96px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__name .elementor-heading-title{font-size:clamp(40px,min(7.4vw,11vh),124px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillar__desc{margin-top:clamp(12px,2.4vh,24px);font-size:clamp(14px,min(1.3vw,2.1vh),18px);line-height:1.55;max-width:72ch}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillar__stat{margin-top:clamp(10px,2vh,20px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .e-con.ep-pillars__list,html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars .ep-pindex{margin-top:clamp(14px,3vh,48px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars .ep-pindex{gap:clamp(6px,1.2vh,10px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .elementor-widget.ep-pillars__strip{margin-top:clamp(16px,3.5vh,56px)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars__strip .ep-puzzle,html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars .ep-ticks{max-width:min(1040px,88vh)}
  html.ep-motion:not(.ep-nopin-pillars) .elementor.elementor .ep-pillars .ep-ticks{margin-top:clamp(12px,2.4vh,28px)}
}
/* ep-champ-pin-fit: the pinned Championship design sizes itself to the window height, so laptops keep it pinned */
@media(min-width:768px){
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ{padding-block:max(88px,10vh) clamp(44px,6vh,90px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-champ__title .elementor-heading-title{font-size:min(clamp(34px,6.8vw,110px),11.2cqi,7.6vh)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ__kick{margin-bottom:clamp(12px,2.4vh,24px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ .ep-facts{margin-top:clamp(18px,3.6vh,36px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ .ep-cats{margin-top:clamp(12px,2.4vh,24px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .e-con.ep-champ .ep-champ__end{margin-top:clamp(16px,3.2vh,32px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-champ .ep-count__n .elementor-heading-title{font-size:clamp(30px,min(4.4vw,6.4vh),64px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-champ .ep-champ__reg{margin-top:clamp(16px,2.8vh,28px)}
  html.ep-motion:not(.ep-nopin-champ) .elementor.elementor .ep-champ .ep-poster .ep-puzzle{width:min(430px,82vw,calc(100cqi - 20px),calc((100vh - 200px) * .8))}
}
/* ep-ref-match: discrepancies found in the 2026-11-11 reference comparison */
.elementor.elementor .ep-h3d .elementor-heading-title{font-family:var(--ep-heavy);font-weight:400}
.elementor.elementor #submit .ep-h2f .elementor-heading-title{font-size:clamp(28px,3.8vw,54px);line-height:.96}
.elementor.elementor .elementor-widget.ep-gnote{margin-bottom:40px}
.elementor.elementor .e-con.ep-quote:has(+ .ep-split) .ep-quote__text blockquote{font-size:clamp(34px,6vw,96px)}
.elementor.elementor .e-con.ep-quote:has(+ .ep-split) .elementor-widget.ep-quote__text{max-width:1200px}
.elementor.elementor .ep-mpage .ep-kicker .elementor-heading-title{color:var(--fg-2)}
.elementor.elementor .elementor-widget.ep-rt{color:var(--fg-2)}
.elementor.elementor .ep-form .elementor-field-group .elementor-field.elementor-field-textual{padding:14px;line-height:1.5}
.elementor.elementor .ep-form:not(.ep-form--signup) .elementor-form-fields-wrapper{row-gap:26px}
.elementor.elementor .ep-form:not(.ep-form--signup) .elementor-field-type-submit{margin-top:10px}
.elementor.elementor .ep-products .woocommerce ul.products li.product .ep-loop-note,.ep-loop-note{margin:4px 0 0;line-height:1.5;font-family:ui-monospace,"SFMono-Regular",Menlo,"EP Arabic",monospace;font-size:11px;letter-spacing:.04em;color:#67648a}
/* phones and tablets: the podium reads 1st, 2nd, 3rd top to bottom, as in the reference */
@media(max-width:1023px){.elementor.elementor .e-con.ep-step3--1{order:1}.elementor.elementor .e-con.ep-step3--2{order:2}.elementor.elementor .e-con.ep-step3--3{order:3}}
/* ep-ref-match-2 */
.elementor.elementor .ep-mpage .e-con.ep-tier{gap:20px;padding-block:20px}
.elementor.elementor .ep-mpage .ep-tier__n .elementor-heading-title{font-size:clamp(19px,2vw,28px)}
.elementor.elementor .ep-mpage .ep-tiers .ep-kicker{margin-bottom:28px}
.elementor.elementor .ep-filter--d .elementor-heading-title a{padding:0 16px}
.elementor.elementor .ep-filter.ep-filter--d .elementor-heading-title{font-size:13px;letter-spacing:-.015em}
/* ep-ar-match (2026-11-11): Arabic as in the reference — every display line at 1.06 (globals.css [dir=rtl] .ep-display), body copy keeps the Latin line-heights, form button at the start edge */
[dir="rtl"] .elementor.elementor .ep-h1 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h2 .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-hero__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-proof__big .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-fact__v .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-count__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-stat__big .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-comm__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-pillars__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-pillar__name .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-member__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-price__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-tier__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-evcard__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-closing__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-popup__title .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h3d .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-h2f .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-phero__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-film__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-chapter__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-split__h .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-ptab__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-pdetail__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-cta2__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-person__n .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-cinfo__hq .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-cinfo__mail .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-room .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-swapcard__p .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-reqcard__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-book__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-evnext__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-evtile__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-floor .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-step3__pos .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-step3__player .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-host__t .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-shop__pst .elementor-heading-title,[dir="rtl"] .elementor.elementor .ep-quote__text blockquote,[dir="rtl"] .elementor.elementor .ep-quote__text blockquote p{line-height:1.06}
[dir="rtl"] .elementor.elementor .ep-form .elementor-field-group.elementor-field-type-submit{justify-content:flex-start}
