/* טליק · בית הפקה — שפה עיצובית שנגזרת מהלוגו המקורי: מניפת הנקודות והספקטרום שלה */
:root{
  --bg:#0d0614; --bg2:#130a1d; --panel:#1a0f28; --ink:#f7f2fb; --muted:#b4a8c4; --line:rgba(255,255,255,.1);
  --yellow:#f7c92b; --teal:#12b8d0; --pink:#e62e75; --violet:#963c8c; --plum:#2a1038;
  --spec:linear-gradient(100deg,#f7c92b 0%,#a0c482 22%,#12b8d0 44%,#d65a8c 72%,#e62e75 88%,#963c8c 100%); /* brand spectrum: decoration only */
  --spec-ui:linear-gradient(100deg,#f7c92b 0%,#a0c482 22%,#12b8d0 44%,#f06ca4 72%,#ff7ab5 88%,#d46fc4 100%); /* text and buttons: AA contrast */
  --line-ui:rgba(255,255,255,.5); /* borders that identify a control: 3:1 */
  --ease:cubic-bezier(.22,1,.36,1);
  --display:'Rubik','Heebo',system-ui,sans-serif; --body:'Heebo',system-ui,sans-serif;
  --pad:max(clamp(1.25rem,4vw,3.5rem),env(safe-area-inset-left),env(safe-area-inset-right));
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:4.5rem}
body{background:var(--bg);color:var(--ink);font:400 1.0625rem/1.75 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
body.is-loading{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ol,ul{list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}
.skip{position:absolute;inset-inline-start:1rem;top:-5rem;background:var(--yellow);color:#1a1004;padding:.7rem 1.1rem;border-radius:99px;z-index:300;font-weight:700}
.skip:focus{top:1rem}
body.is-loading .skip{visibility:hidden}
main:focus{outline:0}
.rail:focus-visible,.vrail:focus-visible{outline-offset:-3px}
.wrap{width:min(100% - 2*var(--pad),78rem);margin-inline:auto}
.muted{color:var(--muted)}

em{font-style:normal;background:var(--spec-ui);background-size:160% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shift 9s ease-in-out infinite alternate}
@keyframes shift{to{background-position:100% 0}}
.eyebrow{display:flex;align-items:center;gap:.8rem;font:500 .86rem var(--display);letter-spacing:.14em;color:var(--yellow);margin-bottom:1.1rem}
.eyebrow::before{content:"";width:2.4rem;height:2px;background:var(--spec);border-radius:2px}
.h2{font:800 clamp(2rem,5vw,4.1rem)/1.08 var(--display);letter-spacing:-.025em;text-wrap:balance}
.h2--xl{font-size:clamp(2.4rem,7vw,5.8rem);line-height:1}
.lead{font-size:clamp(1.05rem,1.5vw,1.28rem);color:#d9cfe6;font-weight:300;max-width:35rem}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- intro ---------- */
.intro{position:fixed;inset:0;z-index:400;background:var(--bg);display:grid;place-content:center;justify-items:center;gap:2rem;
  transition:transform 1.1s var(--ease) .15s,opacity .6s ease .7s;will-change:transform}
.intro__logo{width:min(56vw,300px);opacity:0;transform:scale(.92);animation:logoIn 1.1s var(--ease) .1s forwards}
@keyframes logoIn{to{opacity:1;transform:none}}
.intro__bar{width:min(46vw,200px);height:2px;background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.intro__bar i{display:block;height:100%;width:100%;background:var(--spec);transform:scaleX(0);transform-origin:right;animation:bar 1.4s var(--ease) .2s forwards}
@keyframes bar{to{transform:scaleX(1)}}
body:not(.is-loading) .intro{transform:translateY(-101%);opacity:0;pointer-events:none;visibility:hidden;transition:transform 1.1s var(--ease),opacity .5s ease .7s,visibility 0s 1.3s}

/* ---------- cursor ---------- */
.cursor{position:fixed;inset:0 auto auto 0;width:36px;height:36px;border:1.5px solid var(--yellow);border-radius:50%;z-index:250;pointer-events:none;opacity:0;
  transform:translate(-50%,-50%);transition:width .35s var(--ease),height .35s var(--ease),background .3s,opacity .3s,border-color .3s}
.cursor.on{opacity:.9}.cursor.big{width:82px;height:82px;background:rgba(247,201,43,.12);border-color:transparent}
@media(hover:none),(pointer:coarse){.cursor{display:none}}

/* ---------- nav ---------- */
.nav{position:fixed;top:0;inset-inline:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.1rem var(--pad);
  transition:padding .4s var(--ease)}
.nav::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:rgba(13,6,20,.78);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);
  border-bottom:1px solid var(--line);opacity:0;transition:opacity .4s}
.nav.scrolled::before{opacity:1}
.nav.scrolled{padding-block:.65rem}
.brand{display:flex;align-items:center}
.brand__logo{height:64px;width:auto;transition:height .4s var(--ease),transform .8s var(--ease)}
.nav.scrolled .brand__logo{height:52px}
.brand:hover .brand__logo{transform:scale(1.04)}
.nav nav{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.2rem);font-size:.95rem}
.nav nav>a:not(.btn){position:relative;color:#e4dbf0;padding-block:.3rem}
.nav nav>a:not(.btn)::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--spec);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav nav>a:not(.btn):hover::after{transform:scaleX(1)}
.burger{display:none;width:46px;height:46px;position:relative;z-index:120}
/* social links: after the menu on desktop, beside the burger on mobile */
.nav{justify-content:flex-start}.nav nav{margin-inline-start:auto}
.nav__soc{display:flex;align-items:center;gap:.1rem;margin-inline-start:clamp(.8rem,1.6vw,1.5rem);padding-inline-start:clamp(.8rem,1.6vw,1.5rem);border-inline-start:1px solid var(--line)}
.nav__soc a{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#e4dbf0;transition:color .3s,background .3s,transform .4s var(--ease)}
.nav__soc svg{width:18px;height:18px}
.nav__soc a:hover{color:var(--yellow);background:rgba(255,255,255,.06);transform:translateY(-2px)}
.burger b{position:absolute;inset-inline:11px;height:2px;background:var(--ink);border-radius:2px;transition:.45s var(--ease)}
.burger b:first-child{top:19px}.burger b:last-child{top:27px}
.burger[aria-expanded=true] b:first-child{top:23px;transform:rotate(45deg)}.burger[aria-expanded=true] b:last-child{top:23px;transform:rotate(-45deg)}

/* header accessibility controls: icon buttons below 1240px, with text beyond it */
.nav__a11y{display:flex;align-items:center;gap:.1rem;margin-inline-start:.4rem}
.a11y-btn,.a11y-link{display:inline-flex;align-items:center;gap:.5rem;min-width:40px;height:40px;justify-content:center;border-radius:99px;color:#e4dbf0;font:500 .85rem var(--display);padding-inline:.5rem;transition:color .3s,background .3s}
.a11y-btn:hover,.a11y-link:hover{color:var(--yellow);background:rgba(255,255,255,.06)}
.a11y-btn svg,.a11y-link svg{width:20px;height:20px;flex:none}
.a11y-btn__t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.a11y-btn .i-play,.a11y-btn[aria-pressed=true] .i-pause{display:none}
.a11y-btn[aria-pressed=true] .i-play{display:block}
.a11y-btn[aria-pressed=true]{color:var(--yellow)}
@media(min-width:1240px){.a11y-btn__t{position:static;width:auto;height:auto;clip:auto;overflow:visible}.a11y-btn,.a11y-link{padding-inline:.8rem}}
.nav__a11y-m{display:none}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.9rem;border-radius:99px;font:700 1rem var(--display);color:#1a0b1f;text-align:center;
  background:var(--spec-ui);background-size:180% 100%;box-shadow:0 12px 40px -12px rgba(230,46,117,.7);transition:box-shadow .4s,background-position .8s var(--ease),transform .4s var(--ease)}
.btn:hover{background-position:100% 0;box-shadow:0 18px 56px -10px rgba(230,46,117,.95)}
.btn--sm{padding:.55rem 1.25rem;font-size:.9rem}
.btn--lg{padding:1.2rem 2rem;font-size:1.15rem;width:100%}
.btn--wa{background:#25d366;color:#05230f;box-shadow:0 12px 40px -14px rgba(37,211,102,.8)}
.arr{font-style:normal;display:inline-block;transition:transform .45s var(--ease)}
.btn:hover .arr,a:hover>.go .arr,.go:hover .arr,.world:hover .go .arr{transform:translateX(-7px)}
.play{display:inline-flex;align-items:center;gap:.85rem;font:500 1rem var(--display);color:#efe7f8}
.play__ico{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1.5px solid rgba(255,255,255,.45);backdrop-filter:blur(6px);background:rgba(255,255,255,.08);transition:.45s var(--ease)}
.play:hover .play__ico{background:var(--yellow);color:#1a1004;border-color:var(--yellow);transform:scale(1.1)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;padding-block:7rem 5.5rem}
.hero__media{position:absolute;inset:0;z-index:-3;background:#05020a}
.hero__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;transform:scale(1.06);animation:drift 22s ease-in-out infinite alternate}
@keyframes drift{to{transform:scale(1.14) translate(-1.5%,1%)}}
.hero__video{position:absolute;inset:0;opacity:0;transition:opacity 1.6s ease;overflow:hidden}
.hero__video.on{opacity:.7}
.hero__video iframe{position:absolute;top:50%;left:50%;width:max(138%,245vh);height:max(138%,77.6vw);transform:translate(-50%,-50%);border:0;pointer-events:none}
.hero__shade{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(13,6,20,.72) 0%,rgba(13,6,20,.35) 32%,rgba(13,6,20,.72) 66%,var(--bg) 100%),
  radial-gradient(90% 70% at 85% 50%,rgba(13,6,20,.65),transparent 70%)}
.hero__fan{position:absolute;inset:auto 0 0;height:46%;z-index:-1;pointer-events:none;mix-blend-mode:screen;opacity:.55;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 30%);mask-image:linear-gradient(180deg,transparent,#000 30%)}
.hero__fan canvas{width:100%;height:100%;display:block}
.hero__in{width:min(100% - 2*var(--pad),78rem);margin-inline:auto;position:relative}
.kicker{display:inline-flex;align-items:center;gap:.7rem;font:500 .9rem var(--display);letter-spacing:.1em;color:#e8dff4;padding:.45rem 1rem;border:1px solid rgba(255,255,255,.2);border-radius:99px;background:rgba(255,255,255,.06);backdrop-filter:blur(8px);margin-bottom:1.6rem}
.kicker .dot{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 0 rgba(230,46,117,.7);animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 12px rgba(230,46,117,0)}100%{box-shadow:0 0 0 0 rgba(230,46,117,0)}}
.display{font:900 clamp(3.6rem,12.5vw,11.5rem)/.9 var(--display);letter-spacing:-.045em;margin-bottom:1.8rem}
.ln{display:block;overflow:hidden;padding-block:.06em .1em;margin-block:-.06em -.1em}
.ln>span{display:block}
.js .ln>span{transform:translateY(112%) rotate(2deg);transform-origin:right bottom;transition:transform 1.4s var(--ease)}
body:not(.is-loading) .ln>span{transform:none}
body:not(.is-loading) .ln:nth-child(1)>span{transition-delay:.55s}
body:not(.is-loading) .ln:nth-child(2)>span{transition-delay:.72s}
.hero .lead{margin-bottom:2.2rem}
.hero__cta{display:flex;align-items:center;gap:1.8rem;flex-wrap:wrap}
.hero__meta{position:absolute;bottom:1.4rem;inset-inline-end:var(--pad);display:flex;align-items:center;gap:.8rem;font:500 .75rem var(--display);letter-spacing:.2em;color:var(--muted);writing-mode:horizontal-tb}
.hero__meta i{width:56px;height:1px;background:var(--line);position:relative;overflow:hidden}
.hero__meta i::after{content:"";position:absolute;inset:0;background:var(--yellow);transform:translateX(100%);animation:run 2.2s var(--ease) infinite}
@keyframes run{50%{transform:none}100%{transform:translateX(-100%)}}

/* reveal */
.rv{transition:opacity 1s var(--ease) var(--d,0s),transform 1.1s var(--ease) var(--d,0s)}
.js .rv{opacity:0;transform:translateY(36px)}
.js .rv.in{opacity:1;transform:none}
.hero .rv{transition-delay:calc(.9s + var(--d,0s))}
body.is-loading .hero .rv{opacity:0!important}

/* ---------- trust ---------- */
.trust{padding-block:2.4rem 2.2rem;border-block:1px solid var(--line);background:var(--bg2)}
.trust__t{text-align:center;font:500 .85rem var(--display);letter-spacing:.14em;color:var(--muted);margin-bottom:1.5rem}
.trust__rail{overflow:hidden;direction:ltr;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.trust__track{display:flex;width:max-content;animation:mq var(--mq,38s) linear infinite}
.trust__track>figure{padding-inline-end:1.4rem}
.trust__rail:hover .trust__track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.tile{display:grid;place-items:center;width:112px;height:112px;border-radius:22px;background:#fff;padding:10px;box-shadow:0 10px 30px -12px rgba(0,0,0,.6);transition:transform .5s var(--ease)}
.tile:hover{transform:translateY(-6px) rotate(-2deg)}
.tile img{width:100%;height:100%;object-fit:contain}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);padding-block:clamp(4rem,9vw,8rem)}
.stat{padding:.5rem 1.6rem;border-inline-start:1px solid var(--line)}
.stat:first-child{border:0;padding-inline-start:0}
.stat b{display:block;overflow-wrap:anywhere;font:900 clamp(2.4rem,7.4vw,6.4rem)/1 var(--display);letter-spacing:-.04em;background:var(--spec-ui);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:300% 100%}
.stat:nth-child(2) b{background-position:35% 0}.stat:nth-child(3) b{background-position:70% 0}.stat:nth-child(4) b{background-position:100% 0}
.stat b bdi{display:inline-block}
.stat sup{font-size:.45em;vertical-align:top;position:relative;top:.15em;margin-inline-start:.04em}
.stat__w{font-size:clamp(2.2rem,6vw,5.2rem)!important}
.stat{min-width:0}
.stat__l{display:block;color:var(--muted);font-size:.98rem;margin-top:.5rem}

/* ---------- worlds ---------- */
.head{margin-bottom:clamp(2rem,4vw,3.5rem)}
.head--row{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.worlds{padding-block:clamp(1.5rem,3vw,2.5rem) clamp(4rem,9vw,8rem)}
.worlds__grid{display:flex;gap:1rem;width:min(100% - 2*var(--pad),84rem);margin-inline:auto;height:min(80vh,700px)}
.world{position:relative;flex:1;border-radius:2.2rem;overflow:hidden;isolation:isolate;display:flex;align-items:flex-end;border:1px solid var(--line);transition:flex 1.1s var(--ease)}
.worlds__grid:hover .world{flex:.78}.worlds__grid .world:hover{flex:1.4}
.world img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.6s var(--ease),filter .8s;filter:saturate(1.05)}
.world:hover img{transform:scale(1.07)}
.world__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,6,20,.1) 30%,rgba(13,6,20,.9) 100%)}
.world--edu .world__shade{background:linear-gradient(180deg,rgba(60,10,70,.05) 15%,rgba(30,6,40,.72) 48%,rgba(30,6,40,.95) 100%)}
.world--biz .world__shade{background:linear-gradient(180deg,rgba(5,30,60,.05) 15%,rgba(6,18,40,.72) 48%,rgba(6,18,40,.95) 100%)}
.world__body{padding:clamp(1.5rem,3vw,2.6rem);width:100%}
.chip{display:inline-block;font:700 .85rem var(--display);letter-spacing:.2em;color:#fff;padding:.3rem .8rem;border-radius:99px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);margin-bottom:1rem}
.world h3{font:900 clamp(2rem,4.2vw,3.8rem)/1 var(--display);letter-spacing:-.03em}
.world p{max-width:30rem;color:#e1d6ee;margin-top:.8rem}
.go{display:inline-flex;gap:.6rem;margin-top:1.3rem;font:700 1rem var(--display);color:var(--yellow)}

/* ---------- acts ---------- */
.act{padding-block:clamp(4rem,9vw,8rem);position:relative}
.act--edu{background:radial-gradient(60% 40% at 90% 0%,rgba(230,46,117,.14),transparent 70%),var(--bg2);border-block:1px solid var(--line)}
.act--biz{background:radial-gradient(60% 40% at 10% 0%,rgba(18,184,208,.15),transparent 70%),var(--bg)}
.act__top{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:end;margin-bottom:clamp(2rem,4vw,3.5rem)}
.act__txt p{color:#d3c8e0;font-weight:300;font-size:1.1rem}.act__txt p+p{margin-top:1rem}
.bento{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(150px,19vw,270px);gap:.9rem}
.b{position:relative;border-radius:1.6rem;overflow:hidden;background:var(--panel);isolation:isolate}
.b img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
.b:hover img{transform:scale(1.07)}
.b figcaption{position:absolute;inset:auto auto 1rem 1rem;max-width:calc(100% - 2rem);font:500 .85rem var(--display);padding:.4rem .95rem;border-radius:99px;background:rgba(13,6,20,.6);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.18)}
.bento--edu .b1{grid-column:span 7;grid-row:span 2}.bento--edu .b2{grid-column:span 5}.bento--edu .b3{grid-column:span 5}
.bento--edu .b4{grid-column:span 7}.bento--edu .b5{grid-column:span 5}
.bento--biz .b1{grid-column:span 7;grid-row:span 2}.bento--biz .b2{grid-column:span 5}.bento--biz .b3{grid-column:span 5}
.bento--biz .b4{grid-column:span 5}.bento--biz .b5{grid-column:span 7}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.pillar{padding:2rem;border-radius:1.8rem;border:1px solid var(--line);background:linear-gradient(165deg,rgba(255,255,255,.05),rgba(255,255,255,.01));transition:opacity 1s var(--ease) var(--d,0s),transform 1.1s var(--ease) var(--d,0s),border-color .5s}
.pillar.in:hover{transform:translateY(-8px);border-color:rgba(247,201,43,.5)}
.pillar__n{font:800 .9rem var(--display);letter-spacing:.2em;color:#ff5c97}
.pillar h3{font:800 1.7rem var(--display);margin:.6rem 0 .5rem;letter-spacing:-.02em}
.pillar p{color:var(--muted)}
.offer{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:1rem;padding:clamp(1.6rem,3vw,2.6rem);border-radius:2rem;
  background:linear-gradient(120deg,rgba(18,184,208,.18),rgba(150,60,140,.2));border:1px solid rgba(255,255,255,.14);flex-wrap:wrap}
.offer h3{font:800 clamp(1.4rem,2.6vw,2.1rem)/1.15 var(--display);letter-spacing:-.02em;margin-bottom:.5rem}
.offer p{color:#d9cfe6;max-width:40rem}

/* ---------- services ---------- */
.services{padding-block:clamp(4rem,9vw,8rem);background:var(--bg2);border-top:1px solid var(--line)}
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:2rem;overflow:hidden}
.svc__c{background:var(--bg2);padding:2.2rem 2rem;position:relative;transition:opacity 1s var(--ease) var(--d,0s),transform 1.1s var(--ease) var(--d,0s),background .5s}
.svc__c:hover{background:var(--panel)}
.svc__i{display:block;font-size:1.4rem;background:var(--spec-ui);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1.2rem;transition:transform .7s var(--ease)}
.svc__c:hover .svc__i{transform:rotate(180deg) scale(1.3)}
.svc__c h3{font:700 1.35rem var(--display);margin-bottom:.4rem;letter-spacing:-.01em}.svc__c p{color:var(--muted);font-size:1rem}

/* ---------- gallery ---------- */
.gallery{padding-block:clamp(4rem,9vw,8rem) clamp(3rem,6vw,5rem);overflow:hidden}
.filters{display:flex;gap:.5rem;flex-wrap:wrap}
.f{padding:.55rem 1.2rem;border-radius:99px;border:1px solid var(--line-ui);font:500 .92rem var(--display);color:#d8cde6;transition:.4s var(--ease)}
.f:hover{border-color:rgba(255,255,255,.4)}.f.is-on{background:var(--ink);color:#150a1d;border-color:var(--ink)}
.rail{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x proximity;padding-inline:var(--pad);padding-block:.5rem;scrollbar-width:none;cursor:grab}
.rail::-webkit-scrollbar{display:none}.rail.drag{cursor:grabbing;scroll-snap-type:none}
.g{flex:none;height:clamp(300px,44vw,540px);aspect-ratio:4/5;border-radius:1.6rem;overflow:hidden;scroll-snap-align:center;position:relative;background:var(--panel);transition:transform .7s var(--ease),opacity .5s}
.g:nth-child(4n+2){aspect-ratio:3/2}.g:nth-child(4n+3){aspect-ratio:1}.g:nth-child(4n){aspect-ratio:16/11}
.g img{width:100%;height:100%;object-fit:cover;transition:transform 1.3s var(--ease);pointer-events:none}
.g::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(13,6,20,.6));opacity:0;transition:opacity .5s}
.g:hover img{transform:scale(1.08)}.g:hover::after{opacity:1}
.g[hidden]{display:none}
.rail__ctl{display:flex;align-items:center;gap:1.2rem;margin-top:1.6rem}
.rail__p{flex:1;height:2px;background:var(--line);border-radius:2px;overflow:hidden}
.rail__p i{display:block;height:100%;width:20%;background:var(--spec);border-radius:2px;transform-origin:right;transition:width .3s}
.rail__b{width:52px;height:52px;border-radius:50%;border:1px solid var(--line-ui);display:grid;place-items:center;font-size:1.2rem;transition:.4s var(--ease)}
.rail__b:hover{background:var(--ink);color:#150a1d;border-color:var(--ink)}
.vctl{display:flex;gap:.6rem}

/* ---------- voices ---------- */
.voices{padding-block:clamp(3rem,6vw,5rem) clamp(4rem,9vw,8rem);background:radial-gradient(70% 60% at 50% 100%,rgba(150,60,140,.2),transparent 70%)}
.vrail{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.5rem var(--pad) 1rem;scrollbar-width:none}
.vrail::-webkit-scrollbar{display:none}
.q{flex:none;width:min(86vw,470px);scroll-snap-align:center;padding:3.4rem 2rem 1.8rem;border-radius:2rem;border:1px solid var(--line);background:linear-gradient(165deg,rgba(255,255,255,.06),rgba(255,255,255,.015));display:flex;flex-direction:column;justify-content:space-between;gap:1.6rem;position:relative;transition:transform .7s var(--ease),border-color .5s}
.q:hover{transform:translateY(-6px);border-color:rgba(247,201,43,.45)}
.q::before{content:"”";content:"”" / "";position:absolute;top:.3rem;inset-inline-end:1.4rem;font:900 6rem/1 var(--display);background:var(--spec-ui);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.55}
.q--biz::before{background:linear-gradient(120deg,var(--teal),var(--violet));-webkit-background-clip:text;background-clip:text}
.q p{font:500 1.22rem/1.65 var(--display);letter-spacing:-.005em;color:#f1eaf8;position:relative}
.q footer{display:flex;flex-direction:column;gap:.15rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.q footer b{font:700 1rem var(--display)}.q footer span{color:var(--muted);font-size:.9rem}

/* ---------- process ---------- */
.process{padding-block:clamp(4rem,9vw,8rem);background:var(--bg2);border-block:1px solid var(--line)}
.process__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,7rem);align-items:start}
.process__l{position:sticky;top:7rem}
.process__l .muted{margin-top:1.4rem;max-width:30rem}
.steps{position:relative}
.steps::before{content:"";position:absolute;inset-inline-start:27px;top:28px;bottom:28px;width:2px;background:var(--line)}
.steps::after{content:"";position:absolute;inset-inline-start:27px;top:28px;width:2px;height:calc((100% - 56px) * var(--p,0));background:linear-gradient(var(--yellow),var(--pink),var(--violet));border-radius:2px}
.step{display:flex;gap:1.8rem;padding-block:1.7rem}
.step:not(.on) h3{color:var(--muted)}
.step h3{transition:color .6s}
.step__n{position:relative;z-index:1;flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font:800 1.3rem var(--display);background:var(--bg2);border:1.5px solid var(--line);transition:.6s var(--ease)}
.step.on .step__n{background:var(--yellow);color:#1a1004;border-color:var(--yellow);box-shadow:0 0 44px rgba(247,201,43,.5)}
.step h3{font:800 clamp(1.5rem,2.6vw,2.2rem) var(--display);letter-spacing:-.02em}.step p{color:var(--muted);max-width:32rem}

/* ---------- about ---------- */
.about{padding-block:clamp(4rem,9vw,8rem)}
.about__grid{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.about__ph{position:relative;width:min(100%,280px);margin-inline:auto}
.about__ph::before{content:"";position:absolute;inset:-14px;border-radius:2.4rem;background:var(--spec);filter:blur(34px);opacity:.5;z-index:-1}
.about__ph img{width:100%;height:auto;border-radius:2rem;border:1px solid rgba(255,255,255,.2);aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.about__tag{position:absolute;inset:auto 1rem 1rem 1rem;padding:.9rem 1.1rem;border-radius:1.2rem;background:rgba(13,6,20,.84);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column}
.about__tag b{font:800 1.15rem var(--display)}.about__tag span{color:var(--muted);font-size:.88rem}
.reveal-words{font:300 clamp(1.15rem,2vw,1.55rem)/1.85 var(--body);margin-top:1.8rem;max-width:46rem}
.reveal-words .w{opacity:.58;transition:opacity .5s}.reveal-words .w.lit{opacity:1}
.bio{margin-top:2rem;display:grid;gap:.7rem;max-width:42rem}
.bio li{position:relative;padding-inline-start:1.6rem;color:#d3c8e0}
.bio li::before{content:"✦";content:"✦" / "";position:absolute;inset-inline-start:0;top:0;background:var(--spec-ui);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- contact ---------- */
.contact{position:relative;padding-block:clamp(4.5rem,10vw,9rem);overflow:hidden;isolation:isolate;background:radial-gradient(80% 70% at 15% 0%,#2c1250,transparent 70%),#0a0410;border-top:1px solid var(--line)}
.contact__fan{position:absolute;inset:0;z-index:-1;opacity:.55;pointer-events:none}
.contact__fan canvas{width:100%;height:100%;display:block}
.contact__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.contact__grid>*{min-width:0}
.contact .lead{margin-top:1.4rem}
.reach{margin-top:2.2rem;display:grid;gap:1.2rem}
.reach li{display:flex;flex-direction:column}.reach span{color:var(--muted);font:500 .8rem var(--display);letter-spacing:.14em}
.reach a{font:800 clamp(1.15rem,5.6vw,2.3rem) var(--display);letter-spacing:-.02em;width:fit-content;max-width:100%;overflow-wrap:anywhere;transition:color .3s}.reach a:hover{color:var(--yellow)}
.reach__cta{margin-top:1.8rem}
.form{display:grid;gap:1.1rem;padding:clamp(1.5rem,3vw,2.5rem);border-radius:2.2rem;border:1px solid rgba(255,255,255,.16);background:rgba(13,6,20,.72);backdrop-filter:blur(16px);box-shadow:0 40px 100px -40px rgba(0,0,0,.9)}
.fld{position:relative;display:block}
.fld input,.fld textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line-ui);border-radius:0;padding:1.55rem 0 .6rem;color:var(--ink);font:inherit;font-size:1.1rem;transition:border-color .3s;resize:none}
.fld input:focus,.fld textarea:focus{outline:0;border-color:var(--yellow)}
.fld input:focus-visible,.fld textarea:focus-visible{outline:2px solid var(--yellow);outline-offset:6px;border-radius:6px}
.fld>span{position:absolute;inset-inline-start:0;top:1.25rem;color:var(--muted);pointer-events:none;transition:.4s var(--ease)}
.fld input:focus+span,.fld input:not(:placeholder-shown)+span,.fld input:-webkit-autofill+span,.fld textarea:focus+span,.fld textarea:not(:placeholder-shown)+span{top:.1rem;font-size:.78rem;color:var(--yellow)}
.fld .bad{border-color:var(--pink)}
.chips{border:0;display:flex;gap:.6rem;flex-wrap:wrap;margin-block:.3rem}
.chips legend{color:var(--muted);font-size:.85rem;margin-bottom:.6rem;padding:0}
.chips label{cursor:pointer}.chips input{position:absolute;opacity:0}
.chips span{display:block;padding:.6rem 1.25rem;border-radius:99px;border:1px solid var(--line-ui);transition:.4s var(--ease);font-weight:500}
.chips input:checked+span{background:var(--ink);color:#150a1d;border-color:var(--ink);font-weight:700}
.chips input:focus-visible+span{outline:2px solid var(--yellow);outline-offset:3px}
.form__ok{color:var(--yellow);text-align:center;font-weight:700;min-height:1.6em}
.err{display:block;color:#ff7aa6;font-size:.86rem;margin-top:-.7rem}
.form__errs{color:#ff7aa6;font-weight:700;font-size:.95rem}
.form__errs:empty{display:none}
.form__req,.form__wa{color:var(--muted);font-size:.82rem;line-height:1.5;text-align:center}
.fld>span i{font-style:normal}
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;pointer-events:none} /* מלכודת לבוטים: מחוץ למסך, לא בטאב */
.form__legal{color:var(--muted);font-size:.8rem;line-height:1.5;text-align:center;margin-top:-.2rem}
.form__alt{color:var(--muted);font-size:.88rem;text-align:center}
.form__alt a{color:var(--yellow);font-weight:700;text-decoration:underline;text-underline-offset:4px;transition:color .3s}
.form__alt a:hover{color:var(--ink)}

/* ---------- footer ---------- */
.foot{padding-block:4rem 1.6rem;border-top:1px solid var(--line);background:#07030b}
.foot__grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:3rem}
.foot__brand img{width:170px;margin-bottom:1rem}.foot__brand p{color:var(--muted);max-width:22rem}
.foot__h{font:700 .85rem var(--display);letter-spacing:.14em;color:var(--yellow);margin-bottom:1rem}
.foot__nav,.foot__contact{display:flex;flex-direction:column;gap:.55rem;align-items:flex-start}
.foot__nav a,.foot__contact>a{color:#d8cde6;transition:color .3s}.foot__nav a:hover,.foot__contact>a:hover{color:var(--yellow)}
.soc{display:flex;gap:.6rem;margin-top:.8rem}
.soc a{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:.4s var(--ease)}
.soc svg{width:20px;height:20px}.soc a:hover{background:var(--ink);color:#150a1d;transform:translateY(-4px)}
.foot__bar{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
.concept{opacity:.7}
.foot__bar a{text-decoration:underline;text-underline-offset:4px}.foot__bar a:hover{color:var(--yellow)}
.foot__credit{display:flex;justify-content:center;margin-top:1.4rem}
.fynn{display:inline-flex;align-items:center;gap:.7rem;flex-wrap:wrap;justify-content:center;color:var(--muted);font-size:.85rem;padding:.55rem 1.1rem;border:1px solid var(--line);border-radius:99px;transition:border-color .4s,color .4s}
.fynn:hover{border-color:#c69227;color:var(--ink)}
.fynn__logo{display:inline-flex;align-items:center;gap:.45rem}
.fynn__logo b{font:800 1.15rem/1 Assistant,Heebo,sans-serif;color:var(--ink);letter-spacing:-.01em}
.fynn__logo i{font-style:normal;color:#c69227}

/* ---------- dock (mobile) ---------- */
.dock{position:fixed;inset:auto 0 max(14px,env(safe-area-inset-bottom)) 0;margin-inline:auto;width:fit-content;display:none;gap:.5rem;padding:.4rem;border-radius:99px;background:rgba(13,6,20,.82);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.16);z-index:90;box-shadow:0 20px 50px -10px rgba(0,0,0,.8);transform:translateY(160%);transition:transform .7s var(--ease)}
.dock.on{transform:none}
.dock:not(.on){visibility:hidden;transition:transform .7s var(--ease),visibility 0s .7s}
.dock.on{visibility:visible;transition:transform .7s var(--ease),visibility 0s 0s}
.dock__b{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.4rem;border-radius:99px;font:700 .95rem var(--display);color:#1a0b1f;background:var(--spec-ui)}
.dock__b--wa{background:#25d366;color:#05230f}

/* ---------- modal + lightbox ---------- */
dialog{border:0;background:transparent;color:inherit;max-width:none;max-height:none;margin:0;padding:0}
dialog::backdrop{background:rgba(6,2,10,.9);backdrop-filter:blur(8px)}
.modal{width:min(94vw,1200px,calc((100dvh - 7rem) * 16 / 9));margin:auto;position:fixed;inset:0;height:fit-content;overflow:visible}
.modal__frame{aspect-ratio:16/9;border-radius:1.4rem;overflow:hidden;background:#000;box-shadow:0 40px 120px -20px rgba(0,0,0,.9)}
.modal__frame iframe{width:100%;height:100%;border:0}
.modal__x,.lb__x{position:fixed;top:max(.9rem,env(safe-area-inset-top));inset-inline-end:max(.9rem,env(safe-area-inset-right));z-index:5;background:rgba(13,6,20,.6);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center;font-size:1.1rem;color:#fff}
.lb{width:100vw;height:100dvh;position:fixed;inset:0}
.lb[open]{display:grid;place-items:center}
.lb img{max-width:min(92vw,1500px);max-height:84dvh;border-radius:1.2rem;box-shadow:0 40px 120px -20px #000;animation:lbIn .6s var(--ease)}
@keyframes lbIn{from{opacity:0;transform:scale(.96)}}
.lb__n{position:absolute;top:50%;translate:0 -50%;width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center;font-size:1.3rem;color:#fff;background:rgba(13,6,20,.5);transition:.3s}
.lb__n:hover{background:var(--ink);color:#150a1d}.lb__n--p{inset-inline-start:1.2rem}.lb__n--n{inset-inline-end:1.2rem}
.lb__c{position:absolute;bottom:1.2rem;inset-inline:0;text-align:center;color:var(--muted);font:500 .9rem var(--display);letter-spacing:.14em}

/* ---------- responsive ---------- */
@media(max-width:980px){
  .about__ph{width:min(66%,240px)}
  .about__tag{inset:auto .6rem .6rem .6rem;padding:.55rem .75rem}.about__tag b{font-size:1rem}.about__tag span{font-size:.78rem}
  .act__top,.process__grid,.about__grid,.contact__grid{grid-template-columns:1fr}
  .process__l{position:static}
  .svc{grid-template-columns:1fr 1fr}
  .foot__grid{grid-template-columns:1fr 1fr}.foot__brand{grid-column:1/-1}
}
@media(min-width:861px) and (max-width:1000px){.nav__soc{display:none}.nav nav{gap:1rem}.nav nav>a{white-space:nowrap}}
@media(max-height:560px) and (max-width:860px){.nav nav{font-size:1.4rem;gap:.8rem;padding-top:4.5rem}}
@media(max-width:860px){
  .burger{display:block}
  .nav{flex-wrap:wrap;row-gap:.4rem}
  .nav nav{position:fixed;inset:0;background:var(--bg);flex-direction:column;justify-content:flex-start;gap:1.6rem;font:800 2rem var(--display);transform:translateY(-100%);transition:transform .8s var(--ease);z-index:110;visibility:hidden;overflow-y:auto;overscroll-behavior:contain;padding:5.5rem 1.25rem calc(2rem + env(safe-area-inset-bottom));text-align:center}
  .nav nav>:first-child{margin-top:auto}.nav nav>:last-child{margin-bottom:auto}
  .nav nav.open{transform:none;visibility:visible}
  .nav nav .btn{font-size:1.1rem;padding:.9rem 1.8rem;margin-top:.6rem}
  .brand{position:relative;z-index:120}
  .nav nav{margin:0}
  .nav__soc{margin-inline-start:auto;padding-inline-start:0;border:0;position:relative;z-index:120}
  .nav__soc a{width:36px;height:36px}
  .nav__a11y{margin-inline-start:.1rem;position:relative;z-index:120}.a11y-btn,.a11y-link{min-width:38px;height:38px}
  .nav nav .nav__a11y-m{display:block;font:500 1rem var(--body);margin-top:1.2rem;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
  html{scroll-padding-bottom:6rem}
  .dock{display:flex}
  .foot{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}
  .contact__fan{inset:auto 0 0;height:min(100%,520px)}
  .stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,8.5rem),1fr));gap:2rem 0}.stat:nth-child(3){border:0;padding-inline-start:0}
  .worlds__grid{flex-direction:column;height:auto}
  .world{min-height:440px}.worlds__grid:hover .world,.worlds__grid .world:hover{flex:1}
  .bento{grid-template-columns:1fr 1fr;grid-auto-rows:clamp(150px,42vw,230px)}
  .bento .b,.bento--edu .b2,.bento--edu .b3,.bento--edu .b4,.bento--edu .b5,.bento--biz .b2,.bento--biz .b3,.bento--biz .b4,.bento--biz .b5{grid-column:span 1;grid-row:span 1}
  .bento--edu .b1,.bento--biz .b1{grid-column:span 2;grid-row:span 2}
  .bento .b1{grid-column:span 2;grid-row:span 2}
  .pillars{grid-template-columns:1fr}
  .offer{flex-direction:column;align-items:flex-start}.offer .btn{width:100%}
  .hero{padding-block:6.5rem 4.5rem}.hero__meta{display:none}
  .tile{width:92px;height:92px}
  .brand__logo{height:54px}.nav.scrolled .brand__logo{height:46px}
}
@media(max-width:420px){.nav__a11y .a11y-link{display:none}.nav__soc a{width:34px;height:34px}}
@media(max-width:560px){
  .svc{grid-template-columns:1fr}
  .foot__grid{grid-template-columns:1fr}
  .hero__cta{gap:1.2rem}.hero__cta .btn{width:100%}
  .q p{font-size:1.1rem}
}
html.calm{scroll-behavior:auto!important}
html.calm .intro{display:none}
html.calm *,html.calm *::before,html.calm *::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
html.calm .hero__video,html.calm .cursor{display:none}
html.calm .step h3{color:inherit}html.calm .rv{opacity:1;transform:none}html.calm .ln>span{transform:none}html.calm .reveal-words .w{opacity:1}html.calm .step{opacity:1}
html.calm .trust__track{width:auto;flex-wrap:wrap;justify-content:center;transform:none}html.calm .trust__track>[aria-hidden]{display:none}
@media(prefers-reduced-motion:reduce){
  .trust__track{width:auto;flex-wrap:wrap;justify-content:center;transform:none}.trust__track>[aria-hidden]{display:none}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
  .intro{display:none}.js .rv{opacity:1;transform:none}.js .ln>span{transform:none}.reveal-words .w{opacity:1}.step{opacity:1}
}

html:not(.js) form .fld,html:not(.js) form .chips,html:not(.js) form button[type=submit]{display:none}

/* Windows high-contrast / forced colors: gradients and shadows disappear, so give controls real borders */
@media(forced-colors:active){
  em,.stat b,.svc__i,.bio li::before,.q::before,.ticks li::before,.lp-stat b{color:CanvasText;background:none;-webkit-text-fill-color:CanvasText}
  .nav{background:Canvas}
  .btn,.dock__b,.skip,.f,.rail__b,.a11y-btn,.a11y-link{border:2px solid ButtonText}
  .chips input:checked+span{border:3px solid Highlight}
}
