@font-face { font-family:'Cinzel'; font-style:normal; font-weight:400; font-display:swap; src:url('/fonts/ek-tools/cinzel-regular.ttf') format('truetype'); }
@font-face { font-family:'Cinzel'; font-style:normal; font-weight:500; font-display:swap; src:url('/fonts/ek-tools/cinzel-medium.ttf') format('truetype'); }
@font-face { font-family:'El Messiri'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/fonts/ek-tools/el-messiri-arabic.woff2') format('woff2'); unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC; }
@font-face { font-family:'El Messiri'; font-style:normal; font-weight:400 700; font-display:swap; src:url('/fonts/ek-tools/el-messiri-latin.woff2') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@property --ek-frame { syntax:'<integer>'; inherits:false; initial-value:24; }
@property --pos { syntax:'<percentage>'; inherits:true; initial-value:50%; }

/* The archive is scoped to its own pages; the store keeps its existing identity. */
.ek-page { background:#0f0e0d; }
.ek-page .topbar { background:#181614; }
.ek-page .header { background:rgba(15,14,13,.97); }
.ek-page .footer { background:#11100e; }
.ek-page .footer__dunes { display:none; }
.nav__link--ek { color:#d8b47e; white-space:nowrap; }
.nav__link--ek::before { content:'✦'; font-size:.65rem; margin-inline-end:5px; }

/* Tokens */
.ek-world, .ek-teaser {
  --ek-bg:#0f0e0d; --ek-bg-2:#131110; --ek-panel:#17140f; --ek-gold:#c6a16b; --ek-gold-hi:#f0dbad; --ek-copper:#9b6b3d;
  --ek-ink:#f0e4cf; --ek-text:#cdbfa8; --ek-muted:#a99880; --ek-line:rgba(198,161,107,.22); --ek-line-strong:rgba(198,161,107,.5);
  --ek-ember:#e8a14c; --ek-moon:#bcd3d6; --ek-accent:var(--ek-gold);
  --ek-serif:'Cinzel',Georgia,serif; --ek-display:'El Messiri','IBM Plex Sans Arabic',sans-serif;
  --ek-ease:cubic-bezier(.2,.7,.2,1); --ek-dw:600;
}
/* English pages follow the store's Latin display face; brand names stay in Cinzel. */
html[dir='ltr'] .ek-world, html[dir='ltr'] .ek-teaser { --ek-display:'Playfair Display',Georgia,serif; --ek-dw:600; }
.ek-world { background:var(--ek-bg); color:var(--ek-text); isolation:isolate; overflow-x:clip; }
.ek-shell { max-width:1240px; width:calc(100% - 96px); margin-inline:auto; }
.ek-world a { text-decoration:none; }
.ek-world button, .ek-world a, .ek-world summary { -webkit-tap-highlight-color:transparent; }
.ek-world a:focus-visible, .ek-world button:focus-visible, .ek-world summary:focus-visible, .ek-teaser a:focus-visible { outline:2px solid var(--ek-gold-hi); outline-offset:6px; }
.ek-world [id] { scroll-margin-top:110px; }
.ek-sr { position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.ek-kicker { display:flex; gap:14px; align-items:center; font:500 11px/1.5 var(--ek-serif); letter-spacing:.22em; color:#d0ad77; }
html[dir='rtl'] .ek-kicker[dir='ltr'] { justify-content:flex-end; }
.ek-line { display:inline-block; width:38px; height:1px; background:var(--ek-copper); }
.ek-arrow { font-size:17px; line-height:1; transition:transform .35s var(--ek-ease); }

/* Buttons */
.ek-button { min-height:50px; padding:13px 24px; display:inline-flex; gap:16px; justify-content:center; align-items:center; border:1px solid #a17a45; font-size:14px; font-weight:500; border-radius:2px; position:relative; overflow:hidden; isolation:isolate; transition:background .3s,color .3s,box-shadow .3s,transform .3s var(--ek-ease); }
.ek-button--gold { color:#17130d; background:linear-gradient(120deg,#ead0a0,#c29660); box-shadow:inset 0 1px 0 #f3e2c1; }
.ek-button--gold::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(105deg,transparent 30%,rgba(255,250,235,.65) 50%,transparent 70%); transform:translateX(-120%); }
.ek-button--gold:hover { color:#17130d; box-shadow:0 10px 34px rgba(198,161,107,.22); transform:translateY(-2px); }
.ek-button--gold:hover::after { transform:translateX(120%); transition:transform .8s var(--ek-ease); }
.ek-button--line { background:rgba(15,14,13,.4); color:var(--ek-gold-hi); }
.ek-button--line:hover { background:#241c13; color:#f6ead1; transform:translateY(-2px); }
.ek-button:hover .ek-arrow { transform:translate(3px,-3px); }
[dir='rtl'] .ek-button:hover .ek-arrow { transform:translate(-3px,-3px); }
.ek-text-link { display:inline-flex; gap:14px; align-items:center; min-height:44px; color:#d9ba8a; font-size:13.5px; border-bottom:1px solid transparent; transition:color .3s,border-color .3s; }
.ek-text-link:hover { color:var(--ek-gold-hi); border-bottom-color:var(--ek-line-strong); }

/* Status */
.ek-status { display:inline-flex; align-items:center; gap:8px; color:#d2bd98; font-size:12px; padding:5px 11px; border:1px solid var(--ek-line); border-radius:99px; background:rgba(198,161,107,.06); white-space:nowrap; }
.ek-status > span { width:6px; height:6px; background:var(--ek-ember); border-radius:50%; box-shadow:0 0 0 0 rgba(232,161,76,.5); }
.ek-status--live > span { background:#9fd49a; }

/* Hero */
.ek-hero { min-height:720px; position:relative; isolation:isolate; overflow:hidden; background:#14110e; display:flex; flex-direction:column; }
.ek-hero--detail { min-height:660px; }
.ek-hero__media { position:absolute; inset:-4% 0 -8%; z-index:-4; transform:translate3d(0,calc(var(--ek-scroll,0) * .22px),0); will-change:transform; }
.ek-hero__image { width:100%; height:100%; object-fit:cover; object-position:center 50%; transform:scale(1.03); }
.ek-hero__shade { position:absolute; inset:0; z-index:-3; background:linear-gradient(90deg,rgba(8,8,7,.92) 0%,rgba(8,8,7,.78) 36%,rgba(8,8,7,.22) 72%),linear-gradient(0deg,#0f0e0d 0%,transparent 30%,rgba(10,9,8,.35) 100%); }
.ek-hero__beam { position:absolute; inset:0; z-index:-2; pointer-events:none; opacity:0; background:linear-gradient(105deg,transparent 36%,rgba(240,200,140,.07) 45%,rgba(255,226,170,.13) 50%,rgba(240,200,140,.07) 55%,transparent 64%); background-size:260% 100%; mix-blend-mode:screen; }
.ek-dust { position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; }
.ek-dust span { position:absolute; width:2px; height:2px; border-radius:50%; background:#e7bd7b; box-shadow:0 0 10px 1px rgba(227,170,73,.55); opacity:0; left:calc(4% + var(--i) * 5.3%); top:calc(10% + var(--i) * 4.4%); top:calc(48% + sin(calc(var(--i) * 1.9)) * 34%); }
.ek-dust span:nth-child(3n) { width:3px; height:3px; }
.ek-hero__top { display:flex; justify-content:space-between; align-items:center; padding-top:26px; gap:16px; z-index:2; }
.ek-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; font-size:12px; color:#b8aa94; }
.ek-breadcrumb a { color:#dac19a; }
.ek-breadcrumb a:hover { color:var(--ek-gold-hi); }
.ek-breadcrumb > span:not([aria-current]) { opacity:.45; }
.ek-motion { min-height:38px; border:1px solid rgba(198,161,107,.3); border-radius:99px; padding:7px 15px; background:rgba(15,14,13,.55); color:#d5c0a0; font:inherit; font-size:12px; display:flex; align-items:center; gap:9px; cursor:pointer; backdrop-filter:blur(8px); transition:border-color .3s; }
.ek-motion:hover { border-color:var(--ek-line-strong); }
.ek-motion[hidden] { display:none; }
.ek-motion:disabled { cursor:default; opacity:.8; }
.ek-motion__dot { height:6px; width:6px; background:#d0ad77; border-radius:50%; box-shadow:0 0 8px #c6a16b; }
.ek-motion[aria-pressed='true'] .ek-motion__dot { box-shadow:none; opacity:.5; }
.ek-hero__inner { flex:1; display:flex; align-items:center; justify-content:space-between; gap:50px; padding-block:46px; }
.ek-hero__copy { width:660px; max-width:62%; text-align:start; }
.ek-hero__copy[dir='rtl'] { text-align:right; }
.ek-hero__eyebrow { text-align:center; font:400 11px/1.5 var(--ek-serif); letter-spacing:.42em; margin-top:34px; color:#c5a574; }
.ek-hero__title { text-align:center; font:500 clamp(64px,7.4vw,112px)/1.12 var(--ek-serif); letter-spacing:-.04em; margin:10px -8px 4px; color:#d9b986; }
.ek-hero__title--product { font-size:clamp(42px,4.8vw,70px); letter-spacing:-.03em; }
html[dir] .ek-world .ek-hero__title, html[dir] .ek-world .ek-show__title { font-family:var(--ek-serif); font-weight:500; }
.ek-hero__letters { display:inline-block; perspective:700px; filter:drop-shadow(0 4px 22px rgba(0,0,0,.75)); }
.ek-ch { display:inline-block; padding-block:.05em; color:transparent; -webkit-text-fill-color:transparent;
  background-image:linear-gradient(100deg,transparent 42%,rgba(255,249,230,.95) 50%,transparent 58%),linear-gradient(175deg,#f7e9cd 8%,#cba670 40%,#8f6233 63%,#e3c89d 86%);
  background-size:300% 100%,100% 100%; background-position:160% 0,0 0; background-repeat:no-repeat; -webkit-background-clip:text; background-clip:text; }
.ek-ch--gap { width:.28em; }
.ek-ornament { display:flex; align-items:center; justify-content:center; gap:14px; width:88%; margin:8px auto 26px; color:#b58a4f; }
.ek-ornament span { height:1px; flex:1; background:linear-gradient(90deg,transparent,#9b6b3d); transform-origin:right center; }
.ek-ornament span:last-child { background:linear-gradient(270deg,transparent,#9b6b3d); transform-origin:left center; }
.ek-ornament b { font-size:13px; font-weight:400; }
.ek-hero__tagline { font:var(--ek-dw) clamp(28px,2.7vw,40px)/1.55 var(--ek-display); color:#f3e5ca; }
.ek-hero__lead { max-width:600px; margin-top:14px; font-size:15px; line-height:2; color:#d0c1a9; }
.ek-hero__actions { display:flex; align-items:center; flex-wrap:wrap; gap:26px; margin-top:30px; }
.ek-hero__seal { margin-inline-end:7%; margin-top:120px; flex-shrink:0; }
.ek-hero__bottom { display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid rgba(198,161,107,.24); padding:19px 0 22px; font-size:12px; color:#b8a58b; }
.ek-hero__bottom > span:first-child { letter-spacing:.22em; font:400 11px/1.5 var(--ek-serif); }
.ek-hero__bottom > a { display:grid; place-items:center; height:36px; width:36px; border:1px solid #785b35; border-radius:50%; color:#d6b788; font-size:17px; transition:background .3s,border-color .3s; }
.ek-hero__bottom > a:hover { background:#2a2016; border-color:var(--ek-gold); }

/* Seal */
.ek-seal { --size:132px; width:var(--size); height:var(--size); position:relative; display:grid; place-items:center; flex-shrink:0; border-radius:50%; background:radial-gradient(circle,rgba(20,17,13,.7) 55%,rgba(10,9,8,.35) 72%); box-shadow:0 0 50px rgba(198,161,107,.1); }
.ek-seal__ring { direction:ltr; position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.ek-seal__edge { fill:none; stroke:rgba(198,161,107,.5); stroke-width:.8; }
.ek-seal__inner { fill:none; stroke:rgba(198,161,107,.32); stroke-width:.7; }
.ek-seal text { fill:#cfae79; font:400 8.4px var(--ek-serif); letter-spacing:.06em; }
.ek-seal__mark { font:400 calc(var(--size) * .3)/1 var(--ek-serif); letter-spacing:-.08em; margin-inline-end:.08em; color:transparent; background:linear-gradient(170deg,#f6e6c6,#c9a26a 55%,#8c6031); -webkit-background-clip:text; background-clip:text; }
.ek-seal--large { --size:188px; }

/* Ribbon */
.ek-ribbon { border-block:1px solid var(--ek-line); background:var(--ek-bg-2); overflow:hidden; padding-block:17px; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.ek-ribbon__track { display:flex; width:max-content; }
.ek-ribbon__set { display:flex; align-items:center; gap:30px; padding-inline-end:30px; flex-shrink:0; }
.ek-ribbon__set span { font:500 17px/1.4 var(--ek-display); color:#dcc49d; white-space:nowrap; }
html[dir='ltr'] .ek-ribbon__set span { font:400 13px/1.4 var(--ek-serif); letter-spacing:.14em; text-transform:uppercase; }
.ek-ribbon__set b { color:var(--ek-copper); font-size:11px; font-weight:400; }

/* Section heads */
.ek-section-head { display:flex; gap:20px; justify-content:space-between; align-items:flex-end; margin-bottom:44px; }
.ek-section-head h2, .ek-faq h2, .ek-why h2, .ek-detail__copy > h2, .ek-cta h2 { color:var(--ek-ink); font:var(--ek-dw) clamp(30px,3.2vw,46px)/1.45 var(--ek-display); margin-top:12px; }
html[dir='ltr'] .ek-section-head h2, html[dir='ltr'] .ek-faq h2, html[dir='ltr'] .ek-why h2, html[dir='ltr'] .ek-detail__copy > h2, html[dir='ltr'] .ek-cta h2 { line-height:1.25; letter-spacing:-.01em; }
.ek-section-head__lead { margin-top:10px; max-width:560px; font-size:15px; line-height:1.9; color:var(--ek-muted); }
.ek-section-head__count { font:400 11px/1.6 var(--ek-serif); letter-spacing:.14em; color:#b69a74; margin-bottom:10px; white-space:nowrap; }

/* Collection / product showcase */
.ek-collection { padding-block:104px 30px; }
.ek-lineup { display:grid; gap:34px; }
.ek-show { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); border:1px solid var(--ek-line); background:linear-gradient(140deg,#1c1813,#13110e 65%); position:relative; isolation:isolate; overflow:hidden; transition:border-color .45s,box-shadow .45s; }
.ek-show--fps { --ek-accent:var(--ek-ember); }
.ek-show--studio { --ek-accent:var(--ek-moon); }
.ek-show::before, .ek-feature::before, .ek-detail__stage::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:0; transition:opacity .45s; background:radial-gradient(460px circle at var(--mx,50%) var(--my,50%),rgba(214,170,100,.11),transparent 62%); }
.ek-show:hover { border-color:rgba(198,161,107,.55); box-shadow:0 24px 70px rgba(0,0,0,.4); }
.ek-show:hover::before, .ek-feature:hover::before, .ek-detail__stage:hover::before { opacity:1; }
.ek-show__stage { display:flex; flex-direction:column; justify-content:center; padding:30px; border-inline-end:1px solid var(--ek-line); background:radial-gradient(ellipse at 50% 100%,rgba(129,82,31,.16),transparent 70%); }
.ek-show:nth-child(even) .ek-show__stage { order:2; border-inline-end:0; border-inline-start:1px solid var(--ek-line); }
.ek-show__info { padding:42px 46px 40px; display:flex; flex-direction:column; min-width:0; }
.ek-show__meta { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ek-show__meta > span:first-child { font:400 11px/1.5 var(--ek-serif); letter-spacing:.2em; color:#b99b6f; }
.ek-show__title { margin-top:18px; font:500 clamp(30px,3vw,42px)/1.25 var(--ek-serif); letter-spacing:-.01em; color:#f0dfbf; }
.ek-show__title a { color:inherit; transition:color .3s; }
.ek-show__title a:hover { color:var(--ek-gold-hi); }
.ek-show__tagline { margin-top:8px; font:var(--ek-dw) 21px/1.6 var(--ek-display); color:#dcb87f; }
html[dir='ltr'] .ek-show__tagline { font-size:16px; letter-spacing:.02em; }
.ek-show__summary { margin-top:12px; font-size:14.5px; line-height:1.95; color:var(--ek-text); }
.ek-show__points { list-style:none; margin:22px 0 0; padding:0; border-top:1px solid var(--ek-line); }
.ek-show__points li { display:flex; align-items:center; gap:14px; padding-block:11px; border-bottom:1px solid rgba(198,161,107,.12); color:var(--ek-ink); font-size:14px; }
.ek-show__points .ek-icon { width:22px; height:22px; flex-shrink:0; }
.ek-show__fit { margin-top:18px; font-size:13.5px; line-height:1.9; color:var(--ek-muted); padding-inline-start:14px; border-inline-start:2px solid var(--ek-copper); }
.ek-show__fit b, .ek-detail__fit b { display:block; color:#dcb87f; font-weight:500; font-size:12.5px; }
.ek-show__actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin-top:auto; padding-top:28px; }
.ek-show__price { color:var(--ek-ink); font-size:19px; }

/* Icons */
.ek-icon { width:26px; height:26px; fill:none; stroke:var(--ek-gold); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; overflow:visible; }
.ek-icon path { stroke-dasharray:1; stroke-dashoffset:0; }

/* Motion demo stage */
.ek-stage { position:relative; aspect-ratio:16/11; display:flex; flex-direction:column; padding:18px 20px 14px; border:1px solid rgba(198,161,107,.26); border-radius:3px; overflow:hidden; color:#b89a6d; background:radial-gradient(ellipse at 50% 0%,rgba(198,161,107,.08),transparent 60%),linear-gradient(160deg,#141210,#0b0a09); box-shadow:inset 0 0 0 1px rgba(0,0,0,.4),inset 0 0 60px rgba(0,0,0,.55),0 20px 50px rgba(0,0,0,.35); }
.ek-stage::before, .ek-stage::after { content:''; position:absolute; width:12px; height:12px; border:solid #b8905c; pointer-events:none; z-index:3; }
.ek-stage::before { top:6px; left:6px; border-width:1px 0 0 1px; }
.ek-stage::after { bottom:6px; right:6px; border-width:0 1px 1px 0; }
.ek-stage__bar { display:flex; align-items:center; justify-content:space-between; gap:12px; font:400 10px/1.5 var(--ek-serif); letter-spacing:.18em; }
.ek-stage__rec { display:inline-flex; align-items:center; gap:8px; }
.ek-stage__rec i { width:7px; height:7px; border-radius:50%; background:var(--ek-accent); box-shadow:0 0 10px var(--ek-accent); }
.ek-stage__counter b { color:#efd9ad; font-weight:400; font-variant-numeric:tabular-nums; }
.ek-frame { counter-reset:ekf var(--ek-frame); display:inline-block; min-width:2ch; }
.ek-frame::after { content:counter(ekf,decimal-leading-zero); }
.ek-stage__caption { margin-top:8px; text-align:right; font:400 11px/1.4 'IBM Plex Sans Arabic',sans-serif; color:#8f7f69; letter-spacing:0; }
.ek-lanes { flex:1; display:flex; flex-direction:column; justify-content:center; gap:34px; }
.ek-lane { display:grid; grid-template-columns:118px minmax(0,1fr); align-items:center; gap:14px; }
.ek-lane__label { font:500 11px/1.4 var(--ek-serif); letter-spacing:.12em; color:#d6bd92; }
.ek-lane__label em { display:block; font-style:normal; font-size:8.5px; letter-spacing:.16em; color:var(--ek-ember); margin-top:3px; }
.ek-lane__track { position:relative; height:46px; border-bottom:1px dashed rgba(198,161,107,.25); -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); }
.ek-runner { position:absolute; inset:0; width:100%; transform:translateX(calc(62% - 24px)); }
.ek-lane--choppy .ek-runner { transform:translateX(calc(41.6667% - 10px)); }
.ek-lane__frames { position:absolute; left:12px; right:12px; top:50%; display:flex; justify-content:space-between; }
.ek-lane__frames i { width:0; height:0; position:relative; }
.ek-lane__frames i::before { content:''; position:absolute; left:-3px; top:-3px; width:6px; height:6px; border-radius:50%; border:1px solid rgba(198,161,107,.45); }
.ek-puck { position:absolute; left:0; top:50%; width:24px; height:24px; margin-top:-12px; border-radius:50%; background:radial-gradient(circle at 35% 32%,#fff6dd,#e0ad64 52%,#8a5a26); box-shadow:0 0 18px rgba(232,161,76,.5); }
.ek-lane--choppy .ek-puck { filter:saturate(.6) brightness(.85); box-shadow:0 0 8px rgba(232,161,76,.25); }
.ek-puck__blur { position:absolute; right:55%; top:50%; width:96px; height:14px; margin-top:-7px; border-radius:99px; background:linear-gradient(90deg,transparent,rgba(232,161,76,.14) 35%,rgba(246,203,135,.65)); filter:blur(3px); }
.ek-ruler { position:relative; height:24px; margin-top:16px; background:repeating-linear-gradient(90deg,rgba(198,161,107,.32) 0 1px,transparent 1px 10px) bottom/100% 7px no-repeat,repeating-linear-gradient(90deg,rgba(198,161,107,.6) 0 1px,transparent 1px 50px) bottom/100% 14px no-repeat; border-bottom:1px solid rgba(198,161,107,.3); }
.ek-ruler__head { position:absolute; top:0; bottom:-1px; left:40%; width:2px; background:var(--ek-ember); box-shadow:0 0 12px var(--ek-ember); }
.ek-ruler__head::before { content:''; position:absolute; top:-4px; left:-4px; border:5px solid transparent; border-top-color:var(--ek-ember); }

/* Real program screenshot; its preview pane plays a real before/after clip */
.ek-stage.ek-stage--app, .ek-detail__stage .ek-stage.ek-stage--app { aspect-ratio:auto; }
.ek-app { position:relative; margin-top:14px; border:1px solid rgba(198,161,107,.24); background:#0b0a09; box-shadow:0 18px 50px rgba(0,0,0,.45); line-height:0; }
.ek-app__shot { display:block; width:100%; height:auto; }
.ek-app__pane { position:absolute; overflow:hidden; box-shadow:0 0 0 1px rgba(239,210,160,.5),0 0 28px rgba(239,210,160,.24); }
.ek-stage--plain .ek-stage__seal { flex:1; display:grid; place-items:center; }

/* 60FPS: the real clip between its two frame rates */
.ek-clipstage { flex:1; min-height:0; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); grid-template-rows:minmax(0,1fr); align-items:center; gap:18px; margin-top:14px; }
.ek-clipstage__phone { position:relative; height:100%; aspect-ratio:9/16; overflow:hidden; border-radius:12px; border:1px solid rgba(198,161,107,.36); background:#0b0a09; box-shadow:0 0 0 5px #14110e,0 0 0 6px rgba(198,161,107,.18),0 20px 50px rgba(0,0,0,.5); }
.ek-clipstage__side { text-align:center; font:400 10.5px/1.4 var(--ek-serif); letter-spacing:.2em; color:#9f8a6c; }
.ek-clipstage__side b { display:block; margin-bottom:4px; font:500 clamp(34px,4vw,54px)/1 var(--ek-serif); letter-spacing:-.03em; color:#7f6c52; }
.ek-clipstage__side--after b { color:transparent; background:linear-gradient(170deg,#f6e6c6,#c9a26a 55%,#8c6031); -webkit-background-clip:text; background-clip:text; }
.ek-clipstage__side--after { color:#d6b788; }
.ek-clipstage__side em { display:block; margin-top:8px; font:500 12px/1.4 var(--ek-display); letter-spacing:0; font-style:normal; }

/* Before / after clips: one silent video (before | after) split at --pos */
.ek-clip { margin:0; }
.ek-clip__screen { position:relative; aspect-ratio:9/16; overflow:hidden; isolation:isolate; border-radius:16px; background:#0b0a09; border:1px solid rgba(198,161,107,.34); box-shadow:0 0 0 6px #14110e,0 0 0 7px rgba(198,161,107,.2),0 34px 80px rgba(0,0,0,.5); cursor:ew-resize; touch-action:pan-y; -webkit-user-select:none; user-select:none; }
.ek-clip__layer { position:absolute; inset:0; overflow:hidden; }
.ek-clip__layer img, .ek-clip__video { position:absolute; top:0; left:0; width:200%; max-width:none; height:100%; object-fit:cover; pointer-events:none; }
.ek-clip__layer--after { clip-path:inset(0 0 0 var(--pos)); }
.ek-clip__layer--after img { left:-100%; }
.ek-clip__video { z-index:-1; }
.ek-clip__canvas { position:absolute; inset:0; width:100%; height:100%; opacity:0; transition:opacity .35s; pointer-events:none; }
.ek-clip.is-live .ek-clip__canvas { opacity:1; }
.ek-clip__tag { position:absolute; top:12px; z-index:2; padding:5px 12px; border-radius:99px; font:600 12.5px/1.4 var(--ek-display); color:#f0e4cf; background:rgba(10,9,8,.62); border:1px solid rgba(198,161,107,.32); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); pointer-events:none; }
html[dir='ltr'] .ek-clip__tag { font:500 10.5px/1.5 var(--ek-serif); letter-spacing:.14em; text-transform:uppercase; }
.ek-clip__tag--before { left:12px; }
.ek-clip__tag--after { right:12px; color:#17130d; background:linear-gradient(120deg,#ead0a0,#c29660); border-color:transparent; }
.ek-clip__handle { position:absolute; top:0; bottom:0; left:var(--pos); z-index:2; width:2px; margin-left:-1px; pointer-events:none; background:linear-gradient(180deg,rgba(239,210,160,.15),#efd2a0 16%,#efd2a0 84%,rgba(239,210,160,.15)); box-shadow:0 0 14px rgba(239,210,160,.65); }
.ek-clip__handle i { position:absolute; top:50%; left:50%; width:44px; height:44px; margin:-22px 0 0 -22px; display:grid; place-items:center; border-radius:50%; border:1px solid #efd2a0; background:rgba(14,12,10,.78); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); box-shadow:0 8px 22px rgba(0,0,0,.45); transition:transform .3s var(--ek-ease); }
.ek-clip__handle i::before { content:'‹ ›'; margin-top:-2px; color:#f3dcae; font:400 16px/1 var(--ek-serif); letter-spacing:.12em; }
.ek-clip__screen:hover .ek-clip__handle i, .ek-clip.is-dragging .ek-clip__handle i { transform:scale(1.08); }
.ek-clip__handle em { position:absolute; top:calc(50% + 32px); left:50%; transform:translateX(-50%); padding:3px 10px; border-radius:99px; background:rgba(10,9,8,.66); color:#f3dcae; font-style:normal; font-size:11.5px; white-space:nowrap; transition:opacity .4s; }
.ek-clip.is-touched .ek-clip__handle em { opacity:0; }
.ek-clip__range { position:absolute; left:0; right:0; bottom:0; width:100%; height:1px; margin:0; opacity:0; pointer-events:none; }
.ek-clip__screen:has(.ek-clip__range:focus-visible) { outline:2px solid var(--ek-gold-hi); outline-offset:9px; }
.ek-clip__toggle { position:absolute; right:12px; bottom:12px; z-index:3; width:40px; height:40px; display:grid; place-items:center; padding:0; border-radius:50%; border:1px solid rgba(239,210,160,.55); background:rgba(14,12,10,.72); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); cursor:pointer; transition:background .3s,border-color .3s; }
.ek-clip__toggle:hover { background:#2a2016; border-color:#efd2a0; }
.ek-clip__toggle[hidden] { display:none; }
.ek-clip__toggle span { width:12px; height:14px; margin-left:3px; background:#f3dcae; clip-path:polygon(0 0,100% 50%,0 100%); }
.ek-clip__toggle.is-playing span { width:11px; margin-left:0; background:none; clip-path:none; border-left:4px solid #f3dcae; border-right:4px solid #f3dcae; }
.ek-world .ek-clip__toggle:focus-visible { outline-offset:3px; }
.ek-clip__caption { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:4px 10px; margin-top:18px; padding-inline:4px; }
.ek-clip__program { flex-basis:100%; font:500 10.5px/1.5 var(--ek-serif); letter-spacing:.18em; text-transform:uppercase; color:#c6a16b; }
.ek-clip__caption > span[dir] { font:500 15px/1.4 var(--ek-serif); letter-spacing:.06em; color:#e8d3ac; }
.ek-clip__caption small { font:400 10.5px/1.4 var(--ek-serif); letter-spacing:.14em; color:#9f8a6c; }
.ek-clip--pane, .ek-clip--pane .ek-clip__screen { position:absolute; inset:0; }
.ek-clip--pane .ek-clip__screen { aspect-ratio:auto; border:0; border-radius:0; box-shadow:none; cursor:default; touch-action:auto; }
.ek-clip--pane .ek-clip__handle { width:1px; margin-left:0; box-shadow:0 0 8px rgba(239,210,160,.8); }
.ek-clip--pane .ek-clip__handle i { display:none; }

/* Results */
.ek-proof { position:relative; isolation:isolate; padding-block:104px 24px; }
.ek-proof::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(48% 60% at 30% 62%,rgba(155,107,61,.14),transparent 70%); }
html[dir='rtl'] .ek-proof::before { background:radial-gradient(48% 60% at 70% 62%,rgba(155,107,61,.14),transparent 70%); }
.ek-proof__grid { display:grid; grid-template-columns:repeat(2,minmax(0,340px)) minmax(0,1fr); gap:44px; align-items:center; }
.ek-proof__copy { padding-inline-start:12px; }
.ek-proof__points { list-style:none; margin:0; padding:0; border-top:1px solid var(--ek-line); }
.ek-proof__points li { display:grid; grid-template-columns:50px minmax(0,1fr); gap:18px; align-items:start; padding-block:20px; border-bottom:1px solid rgba(198,161,107,.13); }
.ek-proof__icon { width:50px; height:50px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(198,161,107,.32); background:radial-gradient(circle,rgba(198,161,107,.12),transparent 70%); }
.ek-proof__points h3 { color:var(--ek-ink); font:var(--ek-dw) 19px/1.55 var(--ek-display); }
html[dir='ltr'] .ek-proof__points h3 { font-size:16px; letter-spacing:.02em; }
.ek-proof__points p { margin-top:4px; color:#bfae95; font-size:14px; line-height:1.9; }
.ek-proof__note { margin-top:20px; color:#a99880; font-size:12.5px; line-height:1.9; }
.ek-proof__actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px 22px; margin-top:26px; }
.ek-proof__grid--1 { grid-template-columns:minmax(0,340px) minmax(0,640px); gap:72px; justify-content:center; }
.ek-proof__row { display:flex; flex-wrap:wrap; justify-content:center; gap:44px 34px; }
.ek-proof__row .ek-proof__clip { width:min(100%,340px); }
.ek-proof__foot { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px 32px; margin-top:44px; padding-top:26px; border-top:1px solid var(--ek-line); }
.ek-proof__foot .ek-proof__note { margin:0; max-width:620px; }
.ek-proof__foot .ek-proof__actions { margin:0; }

/* Program detail */
.ek-detail { padding-block:104px 10px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:64px; align-items:start; }
.ek-detail__stage { position:sticky; top:120px; isolation:isolate; }
.ek-detail__stage .ek-stage { aspect-ratio:16/11; }
.ek-detail__copy > p, .ek-detail__description { font-size:15px; margin-top:18px; line-height:2; color:var(--ek-text); }
.ek-detail__fit { margin-top:22px; padding:16px 18px; border-inline-start:2px solid var(--ek-copper); background:rgba(198,161,107,.05); font-size:14px; line-height:1.9; color:var(--ek-ink); }
.ek-specs { margin:26px 0 28px; border:1px solid var(--ek-line); background:linear-gradient(150deg,#1a1611,#12100d); }
.ek-specs__row { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:14px 18px; border-bottom:1px solid rgba(198,161,107,.13); }
.ek-specs__row:last-child { border-bottom:0; }
.ek-specs dt { color:var(--ek-muted); font-size:13px; }
.ek-specs dd { margin:0; color:var(--ek-ink); font-size:14px; text-align:end; }
.ek-detail__copy > .ek-detail__price { font-size:26px; color:var(--ek-ink); margin-bottom:20px; }
.ek-detail__copy > .ek-detail__note { margin-top:24px; font-size:12px; color:#b3a18a; }
.ek-detail__description ul { padding-inline-start:20px; }
.ek-detail__description img { max-width:100%; }
.ek-detail__description a { color:#e0be87; }

/* Features */
.ek-features { padding-top:110px; }
.ek-features__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.ek-features__grid--4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ek-features__grid > div { display:flex; }
.ek-feature { position:relative; isolation:isolate; overflow:hidden; flex:1; padding:30px 30px 32px; border:1px solid rgba(198,161,107,.2); background:linear-gradient(150deg,#1b1711,#12100d); transition:border-color .45s,transform .45s var(--ek-ease),box-shadow .45s; }
.ek-feature:hover { border-color:rgba(198,161,107,.5); transform:translateY(-4px); box-shadow:0 18px 50px rgba(0,0,0,.35); }
.ek-feature__icon { width:56px; height:56px; display:grid; place-items:center; border:1px solid rgba(198,161,107,.32); border-radius:50%; background:radial-gradient(circle,rgba(198,161,107,.12),transparent 70%); }
.ek-feature__mark { position:absolute; top:26px; right:26px; font:500 11px/1.5 var(--ek-serif); letter-spacing:.16em; color:#8f7553; }
html[dir='rtl'] .ek-feature__mark { right:auto; left:26px; }
.ek-feature h3 { margin-top:24px; color:var(--ek-ink); font:var(--ek-dw) 20px/1.6 var(--ek-display); }
html[dir='ltr'] .ek-feature h3 { font-size:16px; letter-spacing:.02em; }
.ek-feature p { margin-top:8px; color:#bfae95; font-size:14px; line-height:1.9; }
.ek-feature-note { font-size:12px; color:#b4a186; margin-top:22px; }

/* Why EK Tools */
.ek-why { margin-top:104px; border-block:1px solid rgba(198,161,107,.18); background:radial-gradient(ellipse at 85% 30%,rgba(155,107,61,.12),transparent 55%),#12100d; }
.ek-why__inner { padding-block:96px; }
.ek-why__head { display:grid; grid-template-columns:auto minmax(0,1fr); gap:64px; align-items:center; }
.ek-why__copy > p { margin-top:14px; max-width:700px; font-size:15.5px; line-height:2; color:var(--ek-text); }
.ek-pillars { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:70px; border-top:1px solid var(--ek-line); }
.ek-pillar { padding:36px 34px 4px; border-inline-start:1px solid var(--ek-line); }
.ek-pillar:first-child { border-inline-start:0; padding-inline-start:0; }
.ek-pillar__icon .ek-icon { width:34px; height:34px; }
.ek-pillar h3 { margin-top:18px; color:var(--ek-ink); font:var(--ek-dw) 21px/1.6 var(--ek-display); }
html[dir='ltr'] .ek-pillar h3 { font-size:16px; letter-spacing:.02em; }
.ek-pillar p { margin-top:8px; font-size:14px; line-height:1.9; color:#bfae95; }

/* FAQ */
.ek-faq { padding-block:104px 90px; display:grid; grid-template-columns:1fr 1.6fr; gap:90px; }
.ek-faq__intro > p { font-size:14px; color:#b2a18a; margin-top:10px; line-height:1.9; }
.ek-faq details { border-bottom:1px solid rgba(198,161,107,.23); }
.ek-faq details:first-child { border-top:1px solid rgba(198,161,107,.23); }
.ek-faq summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:25px; padding:22px 0; font-size:15.5px; color:#e3d0b1; transition:color .3s; }
.ek-faq summary:hover { color:var(--ek-gold-hi); }
.ek-faq summary::-webkit-details-marker { display:none; }
.ek-faq summary > span { font:300 24px/1 var(--ek-serif); color:var(--ek-gold); transition:transform .4s var(--ek-ease); flex-shrink:0; }
.ek-faq details[open] summary > span { transform:rotate(45deg); }
.ek-faq details p { font-size:14px; color:#bdac93; padding:0 0 24px; line-height:2; }
.ek-faq a, .ek-detail__note a { color:#e0be87; text-decoration:underline; text-underline-offset:4px; }

/* Closing call to action */
.ek-cta { position:relative; overflow:hidden; isolation:isolate; border-top:1px solid var(--ek-line); background:radial-gradient(60% 120% at 50% 110%,rgba(155,107,61,.24),transparent 70%),var(--ek-bg); }
.ek-cta::before { content:'EK'; position:absolute; z-index:-1; left:50%; top:52%; transform:translate(-50%,-50%); font:400 clamp(220px,30vw,420px)/1 var(--ek-serif); letter-spacing:-.08em; color:rgba(198,161,107,.045); pointer-events:none; }
.ek-cta__inner { padding-block:110px 100px; display:flex; flex-direction:column; align-items:center; text-align:center; }
html[dir] .ek-cta__inner .ek-kicker { justify-content:center; }
.ek-cta h2 { max-width:760px; }
.ek-cta p { margin-top:14px; max-width:620px; font-size:15.5px; line-height:2; color:var(--ek-text); }
.ek-cta__actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px 18px; margin-top:34px; }
.ek-endmark { display:flex; align-items:center; justify-content:center; gap:22px; padding:6px 24px 44px; }
.ek-endmark span { height:1px; width:92px; background:linear-gradient(90deg,transparent,#795832); }
.ek-endmark span:last-child { background:linear-gradient(270deg,transparent,#795832); }
.ek-endmark b { color:#957146; font:400 20px/1 var(--ek-serif); letter-spacing:-.08em; }
.ek-empty { padding:30px; border:1px solid var(--ek-line); text-align:center; }

/* ===== Motion (only when [data-motion='on']; content is fully visible otherwise) ===== */
.ek-world[data-motion='on'] [data-ek-reveal] { transition:opacity 1s var(--ek-ease) calc(var(--s,0) * 110ms),transform 1s var(--ek-ease) calc(var(--s,0) * 110ms),border-color .45s,box-shadow .45s; }
.ek-world[data-motion='on'] [data-ek-reveal]:not(.ek-visible) { opacity:0; transform:translateY(34px); }
.ek-world[data-motion='on'] [data-ek-reveal]:not(.ek-visible) .ek-icon path { stroke-dashoffset:1; }
.ek-world[data-motion='on'] .ek-visible .ek-icon path { animation:ek-draw 1.3s var(--ek-ease) both; animation-delay:calc(var(--p) * 160ms + var(--s,0) * 110ms + 250ms); }
.ek-world[data-motion='on'] .ek-feature:hover .ek-icon path, .ek-world[data-motion='on'] .ek-pillar:hover .ek-icon path { animation:ek-redraw 1s var(--ek-ease) both; animation-delay:calc(var(--p) * 120ms); }

/* Hero intro, played once per visit. */
.ek-world[data-motion='on']:not([data-intro='done']) .ek-hero__image { animation:ek-hero-in 2.4s var(--ek-ease) both; }
.ek-world[data-motion='on']:not([data-intro='done']) [data-ek-intro] { animation:ek-rise 1s var(--ek-ease) both; animation-delay:calc(var(--o) * 110ms + 300ms); }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-ornament { animation:none; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-ornament span { animation:ek-grow 1.2s var(--ek-ease) both; animation-delay:1.05s; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-ornament b { animation:ek-rise 1s var(--ek-ease) both; animation-delay:.95s; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-hero__tagline { animation:ek-wipe-rtl 1.3s var(--ek-ease) both; animation-delay:1.15s; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-hero__copy[dir='ltr'] .ek-hero__tagline { animation-name:ek-wipe-ltr; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-hero__seal { animation:ek-seal-in 1.6s var(--ek-ease) both; animation-delay:1.2s; }
.ek-world[data-motion='on']:not([data-intro='done']) .ek-ch { animation:ek-letter 1.1s var(--ek-ease) both,ek-shine 9s ease-in-out infinite; animation-delay:calc(var(--d) * 60ms + 420ms),calc(var(--d) * 55ms + 1.9s); }

/* Ambient motion */
.ek-world[data-motion='on'] .ek-ch { animation:ek-shine 9s ease-in-out infinite; animation-delay:calc(var(--d) * 55ms + 1.9s); }
.ek-world[data-motion='on'][data-intro='done'] .ek-hero__image { animation:ek-breathe 26s ease-in-out infinite alternate; }
.ek-world[data-motion='on'] .ek-hero__beam { animation:ek-beam 12s ease-in-out 2s infinite; }
.ek-world[data-motion='on'] .ek-dust span { animation:ek-ember calc(7s + var(--i) * .55s) linear infinite; animation-delay:calc(var(--i) * -.9s); }
.ek-world[data-motion='on'] .ek-seal__ring { animation:ek-spin 60s linear infinite; }
.ek-world[data-motion='on'] .ek-status > span { animation:ek-pulse 2.4s ease-out infinite; }
.ek-world[data-motion='on'] .ek-ribbon__track { animation:ek-marquee 46s linear infinite; }
html[dir='rtl'] .ek-world[data-motion='on'] .ek-ribbon__track { animation-name:ek-marquee-rtl; }
.ek-world[data-motion='on'] .ek-ribbon:hover .ek-ribbon__track { animation-play-state:paused; }
.ek-world[data-motion='on'] .ek-stage__rec i { animation:ek-blink 1.6s steps(2,jump-none) infinite; }
.ek-world[data-motion='on'] .ek-runner { animation:ek-run 3.2s linear infinite; }
.ek-world[data-motion='on'] .ek-lane--choppy .ek-runner { animation-timing-function:steps(12,jump-none); }
.ek-world[data-motion='on'] .ek-frame { animation:ek-frames 3.2s linear infinite; }
.ek-world[data-motion='on'] .ek-ruler__head { animation:ek-head 3.2s linear infinite; }
.ek-world [data-ek-stage]:not([data-live]), .ek-world [data-ek-stage]:not([data-live]) * { animation-play-state:paused!important; }
.ek-world[data-paused] *, .ek-world[data-paused] *::before, .ek-world[data-paused] *::after { animation-play-state:paused!important; }
.ek-world[data-motion='off'] *, .ek-world[data-motion='off'] *::before, .ek-world[data-motion='off'] *::after { animation:none!important; transition:none!important; }
.ek-world[data-motion='off'] .ek-ribbon__track { width:auto; justify-content:center; }
.ek-world[data-motion='off'] .ek-ribbon__set { flex-wrap:wrap; justify-content:center; row-gap:8px; flex-shrink:1; padding-inline:24px; }
.ek-world[data-motion='off'] .ek-ribbon__set + .ek-ribbon__set { display:none; }
.ek-world[data-motion='off'] .ek-ribbon { -webkit-mask-image:none; mask-image:none; }
.ek-world[data-motion='off'] .ek-feature:hover, .ek-world[data-motion='off'] .ek-button:hover { transform:none; }

@keyframes ek-hero-in { from { opacity:0; transform:scale(1.14); filter:brightness(.35); } to { opacity:1; transform:scale(1.03); filter:none; } }
@keyframes ek-breathe { from { transform:scale(1.03); } to { transform:scale(1.08); } }
@keyframes ek-rise { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes ek-grow { from { transform:scaleX(0); opacity:0; } to { transform:scaleX(1); opacity:1; } }
@keyframes ek-wipe-rtl { from { clip-path:inset(0 0 0 100%); opacity:.2; } to { clip-path:inset(0 0 0 0); opacity:1; } }
@keyframes ek-wipe-ltr { from { clip-path:inset(0 100% 0 0); opacity:.2; } to { clip-path:inset(0 0 0 0); opacity:1; } }
@keyframes ek-letter { from { opacity:0; transform:translateY(.45em) rotateX(-60deg); filter:blur(10px); } to { opacity:1; transform:none; filter:blur(0); } }
@keyframes ek-shine { 0% { background-position:160% 0,0 0; } 22%,100% { background-position:-60% 0,0 0; } }
@keyframes ek-seal-in { from { opacity:0; transform:rotate(-140deg) scale(.55); } to { opacity:1; transform:none; } }
@keyframes ek-beam { 0% { opacity:0; background-position:120% 0; } 15% { opacity:1; } 55% { opacity:1; } 70%,100% { opacity:0; background-position:-30% 0; } }
@keyframes ek-ember { 0% { opacity:0; transform:translate3d(0,110px,0); } 18%,65% { opacity:.6; } 100% { opacity:0; transform:translate3d(40px,-100px,0); } }
@keyframes ek-spin { to { transform:rotate(360deg); } }
@keyframes ek-pulse { 0% { box-shadow:0 0 0 0 rgba(232,161,76,.55); } 70%,100% { box-shadow:0 0 0 7px rgba(232,161,76,0); } }
@keyframes ek-marquee { to { transform:translateX(-50%); } }
@keyframes ek-marquee-rtl { to { transform:translateX(50%); } }
@keyframes ek-blink { 50% { opacity:.25; } }
@keyframes ek-run { from { transform:translateX(0); } to { transform:translateX(calc(100% - 24px)); } }
@keyframes ek-frames { from { --ek-frame:0; } to { --ek-frame:60; } }
@keyframes ek-head { from { left:0%; } to { left:100%; } }
@keyframes ek-draw { from { stroke-dashoffset:1; } to { stroke-dashoffset:0; } }
@keyframes ek-redraw { from { stroke-dashoffset:1; } to { stroke-dashoffset:0; } }
@keyframes ek-tick { 0%,100% { background:rgba(198,161,107,.14); } 8% { background:#e7c48c; box-shadow:0 0 10px rgba(231,196,140,.7); } 30% { background:rgba(198,161,107,.3); } }

/* Home teaser */
.ek-teaser { padding-top:48px; background:#0c0a0e; }
.ek-teaser__portal { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:34px; padding:34px 42px 38px; position:relative; overflow:hidden; isolation:isolate; border:1px solid rgba(198,161,107,.35); color:#d4c1a3; background:linear-gradient(90deg,rgba(11,10,8,.95),rgba(11,10,8,.84) 60%,rgba(11,10,8,.62)),url('/img/ek-tools/archive.webp') center 58%/cover; transition:border-color .35s,box-shadow .35s; }
[dir='rtl'] .ek-teaser__portal { background:linear-gradient(270deg,rgba(11,10,8,.95),rgba(11,10,8,.84) 60%,rgba(11,10,8,.62)),url('/img/ek-tools/archive.webp') center 58%/cover; }
.ek-teaser__portal::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(105deg,transparent 35%,rgba(240,205,150,.1) 50%,transparent 65%); transform:translateX(-100%); pointer-events:none; }
.ek-teaser__portal:hover { border-color:#c6a16b; color:#e7d5af; box-shadow:0 20px 60px rgba(0,0,0,.35); }
.ek-teaser__seal .ek-seal { --size:96px; }
.ek-teaser__copy { min-width:0; }
.ek-teaser__copy h2 { font:var(--ek-dw) clamp(25px,2.4vw,33px)/1.5 var(--ek-display); color:var(--ek-ink); margin-block:6px 4px; }
.ek-teaser__lead { display:block; font-size:14px; line-height:1.9; color:#c9b89c; max-width:620px; }
.ek-teaser__chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ek-teaser__chips span { padding:4px 10px; border:1px solid rgba(198,161,107,.3); font:400 10.5px/1.5 var(--ek-serif); letter-spacing:.12em; color:#dcc39b; background:rgba(15,13,10,.55); }
.ek-teaser__action { color:#e0c08d; font-size:14px; display:flex; align-items:center; gap:16px; white-space:nowrap; }
.ek-teaser__action > span { display:grid; place-items:center; width:40px; height:40px; border:1px solid #8a6a3f; border-radius:50%; font-size:18px; transition:background .3s,transform .4s var(--ek-ease); }
.ek-teaser__portal:hover .ek-teaser__action > span { background:#3b2b19; transform:rotate(-12deg); }
.ek-teaser__strip { position:absolute; left:0; right:0; bottom:0; height:3px; display:flex; gap:3px; }
.ek-teaser__strip i { flex:1; background:rgba(198,161,107,.14); }
@media (prefers-reduced-motion:no-preference) {
  .ek-teaser .ek-seal__ring { animation:ek-spin 60s linear infinite; }
  .ek-teaser__strip i { animation:ek-tick 3s ease-in-out infinite; animation-delay:calc(var(--i) * 120ms); }
  .ek-teaser__portal:hover::after { transform:translateX(100%); transition:transform 1.1s var(--ek-ease); }
}

/* Responsive */
@media(min-width:1500px) { .ek-hero { min-height:780px; } .ek-hero__inner { padding-block:72px; } }
@media(max-width:1100px) {
  .ek-shell { width:calc(100% - 64px); }
  .ek-hero__copy { max-width:76%; }
  .ek-hero__seal { margin-inline-end:0; }
  .ek-hero__title { font-size:78px; }
  .ek-hero__title--product { font-size:50px; }
  .ek-show { grid-template-columns:1fr; }
  .ek-show__stage, .ek-show:nth-child(even) .ek-show__stage { order:0; border-inline:0; border-bottom:1px solid var(--ek-line); }
  .ek-show__stage .ek-stage { width:100%; max-width:640px; margin-inline:auto; }
  .ek-detail { grid-template-columns:1fr; gap:44px; }
  .ek-detail__stage { position:relative; top:auto; max-width:680px; width:100%; margin-inline:auto; }
  .ek-features__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ek-why__head { gap:40px; }
  .ek-faq { gap:45px; }
  .ek-proof__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px 28px; }
  .ek-proof__clip { width:100%; max-width:340px; justify-self:center; }
  .ek-proof__copy { grid-column:1 / -1; padding-inline-start:0; max-width:720px; }
  .ek-proof__grid--1 { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:620px) {
  .ek-proof__grid { grid-template-columns:minmax(0,1fr); gap:36px; }
  .ek-proof__clip { max-width:330px; }
}
@media(max-width:760px) {
  .ek-proof { padding-block:64px 10px; }
  .ek-proof__points li { grid-template-columns:42px minmax(0,1fr); gap:14px; padding-block:16px; }
  .ek-proof__icon { width:42px; height:42px; }
  .ek-proof__points h3 { font-size:17px; }
  .ek-proof__actions .ek-button { width:100%; }
  .ek-shell { width:calc(100% - 32px); }
  .ek-hero, .ek-hero--detail { min-height:640px; }
  .ek-hero__top { padding-top:18px; }
  .ek-motion { padding:6px 11px; font-size:11px; }
  .ek-breadcrumb { gap:8px; font-size:11px; max-width:62%; }
  .ek-hero__image { object-position:60% 50%; }
  .ek-hero__shade { background:linear-gradient(90deg,rgba(8,8,7,.88),rgba(8,8,7,.64)),linear-gradient(0deg,#0f0e0d,transparent 50%); }
  .ek-hero__inner { padding:36px 0; }
  .ek-hero__copy { width:100%; max-width:none; }
  .ek-hero__seal { display:none; }
  .ek-kicker { font-size:9.5px; gap:9px; letter-spacing:.16em; }
  .ek-hero__eyebrow { font-size:9px; margin-top:28px; letter-spacing:.3em; }
  .ek-hero__title { font-size:clamp(50px,14vw,78px); margin-top:12px; letter-spacing:-.05em; }
  .ek-hero__title--product { font-size:clamp(32px,9.4vw,56px); }
  .ek-hero__tagline { font-size:25px; }
  .ek-hero__lead { font-size:14px; }
  .ek-hero__actions { gap:16px; margin-top:26px; }
  .ek-button { font-size:13.5px; padding:12px 18px; }
  .ek-hero__bottom { font-size:11px; gap:10px; }
  .ek-hero__bottom > span:first-child { letter-spacing:.1em; font-size:10px; }
  .ek-hero__bottom > span:nth-child(2) { max-width:52%; text-align:center; }
  .ek-ribbon { padding-block:13px; }
  .ek-ribbon__set span { font-size:14px; }
  .ek-section-head { align-items:flex-end; gap:14px; margin-bottom:28px; }
  .ek-section-head h2, .ek-faq h2, .ek-why h2, .ek-detail__copy > h2, .ek-cta h2 { font-size:27px; }
  .ek-section-head__lead { font-size:14px; }
  .ek-section-head__count { font-size:9.5px; }
  .ek-collection { padding-block:64px 20px; }
  .ek-lineup { gap:24px; }
  .ek-show__stage { padding:16px; }
  .ek-show__info { padding:26px 22px 28px; }
  .ek-show__title { font-size:30px; }
  .ek-show__tagline { font-size:18px; }
  .ek-stage { padding:14px 14px 10px; aspect-ratio:16/12; }
  .ek-stage.ek-stage--clip { aspect-ratio:1/1; }
  .ek-clipstage { gap:10px; }
  .ek-clipstage__side { font-size:9px; letter-spacing:.12em; }
  .ek-clipstage__side b { font-size:30px; }
  .ek-proof__row .ek-proof__clip { width:min(100%,320px); }
  .ek-stage__bar { font-size:9px; letter-spacing:.12em; }
  .ek-lanes { gap:18px; }
  .ek-lane { grid-template-columns:84px minmax(0,1fr); gap:10px; }
  .ek-lane__label { font-size:10px; }
  .ek-lane__label em { font-size:7.5px; }
  .ek-detail { padding-top:60px; gap:34px; }
  .ek-features { padding-top:70px; }
  .ek-features__grid, .ek-features__grid--4 { grid-template-columns:1fr; gap:14px; }
  .ek-feature { padding:24px 22px 26px; }
  .ek-feature h3 { font-size:18px; margin-top:18px; }
  .ek-why { margin-top:64px; }
  .ek-why__inner { padding-block:60px; }
  .ek-why__head { grid-template-columns:1fr; justify-items:center; text-align:center; gap:26px; }
  html[dir] .ek-why__copy .ek-kicker { justify-content:center; }
  .ek-seal--large { --size:130px; }
  .ek-pillars { grid-template-columns:1fr; margin-top:40px; }
  .ek-pillar, .ek-pillar:first-child { padding:26px 0; border-inline-start:0; border-bottom:1px solid var(--ek-line); }
  .ek-faq { padding-block:64px 56px; grid-template-columns:1fr; gap:24px; }
  .ek-faq summary { font-size:14.5px; }
  .ek-cta__inner { padding-block:70px 64px; }
  .ek-cta p { font-size:14.5px; }
  .ek-cta__actions .ek-button { width:100%; }
  .ek-teaser { padding-top:28px; }
  .ek-teaser__portal { grid-template-columns:auto minmax(0,1fr); padding:24px 20px 28px; gap:16px 18px; }
  .ek-teaser__seal .ek-seal { --size:64px; }
  .ek-teaser__seal .ek-seal text { display:none; }
  .ek-teaser__action { grid-column:1 / -1; }
  .ek-teaser .ek-kicker { font-size:8.5px; }
  .ek-teaser__copy h2 { font-size:22px; }
  .ek-teaser__lead { font-size:13px; }
}
@media(max-width:380px) {
  .ek-hero__actions { gap:10px; }
  .ek-text-link { font-size:12.5px; }
  .ek-section-head { align-items:flex-start; flex-direction:column; gap:4px; }
  .ek-section-head__count { margin-bottom:0; }
  .ek-lane { grid-template-columns:70px minmax(0,1fr); }
}
@media(prefers-reduced-motion:reduce) {
  .ek-world *, .ek-world *::before, .ek-world *::after, .ek-teaser *, .ek-teaser *::before, .ek-teaser *::after { animation:none!important; transition:none!important; }
  .ek-world [data-ek-reveal] { opacity:1!important; transform:none!important; }
}
