/* Yanix Designs Studio — shared styles */
@font-face{font-family:'Sora';src:url(../fonts/sora.woff) format('woff');font-weight:100 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url(../fonts/dmsans.woff) format('woff');font-weight:300 700;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(../fonts/jetbrainsmono.woff) format('woff');font-weight:100 800;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(../fonts/plexarabic-300.woff) format('woff');font-weight:300;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(../fonts/plexarabic-400.woff) format('woff');font-weight:400;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(../fonts/plexarabic-500.woff) format('woff');font-weight:500;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(../fonts/plexarabic-600.woff) format('woff');font-weight:600;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(../fonts/plexarabic-700.woff) format('woff');font-weight:700;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:#0c0c0c;color:#f6f3e4;font-family:'DM Sans',sans-serif;font-weight:300}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.fl:hover{color:#ff3b30}
.nav a:hover{color:#ff3b30}
.btn:hover{background:#f6f3e4}
.wrap{background:#0c0c0c;color:#f6f3e4;font-family:'DM Sans',sans-serif;font-weight:300;max-width:1440px;margin:0 auto;box-sizing:border-box;min-height:100vh}
.skip{position:absolute;left:16px;top:-80px;z-index:200;background:#ff2a2a;color:#0c0c0c;font-weight:600;padding:12px 18px;border-radius:999px}
.skip:focus{top:8px}
html,body{overflow-x:clip}
:focus-visible{outline:2px solid #ff3b30;outline-offset:3px}
[hidden]{display:none!important}

/* header */
.site-h{position:relative;z-index:50;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:20px 56px}
.site-h .logo{display:block;width:133px;height:48px}
.site-h .logo img{height:48px;width:auto;display:block}
.nav{display:flex;gap:32px;flex-wrap:wrap;font-size:15px;font-weight:400}
.nav a[aria-current="page"]{color:#ff3b30}
.hbtn{background:#ff2a2a;color:#0c0c0c;font-weight:600;padding:14px 24px;border-radius:999px;font-size:15px;min-height:44px;box-sizing:border-box;display:inline-flex;align-items:center}
@media(max-width:900px){
  .site-h{padding:16px 20px;display:grid;grid-template-columns:auto 1fr;row-gap:12px}
  .site-h .hdr-r{justify-self:end}
  .site-h .nav{grid-column:1/-1;order:3;flex-wrap:nowrap;overflow-x:auto;gap:22px;padding:6px 2px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .site-h .nav::-webkit-scrollbar{display:none}
  .site-h .nav a{flex:none;min-height:44px;display:flex;align-items:center}
  .site-h .nav a::after{bottom:4px}
}
@media(max-width:480px){.hbtn{padding:11px 14px;font-size:13px;white-space:nowrap}.site-h{column-gap:10px}.site-h .logo{width:96px;height:35px}.site-h .logo img{height:35px}.site-h .hdr-r{gap:8px}.lang summary{padding:0 10px;gap:6px}.site-h .nav{gap:18px;font-size:14px}}
@media(max-width:900px){.site-h .nav{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}[dir="rtl"] .site-h .nav{-webkit-mask-image:linear-gradient(270deg,#000 88%,transparent);mask-image:linear-gradient(270deg,#000 88%,transparent)}}

.hback{font-weight:400;min-height:44px;display:flex;align-items:center;gap:6px;white-space:nowrap;color:#cfcbbb}
.hback:hover{color:#ff6b60}
@media(max-width:900px){.site-h:has(.hback){grid-template-columns:auto auto}}
@media(max-width:480px){.hback{font-size:14px}}
@media(max-width:400px){.hback{font-size:13px}.hdr-r{gap:8px}.lang summary{padding:0 12px;gap:8px}}
@media(hover:none){.watip{display:none!important}}
@media(max-width:380px){.lang .chev{display:none}.site-h .logo{width:88px;height:32px}.site-h .logo img{height:32px}.hbtn{padding:11px 12px}}

/* footer */
.site-f{border-top:1px solid #2a2a2a;padding:48px 56px 28px;color:#a9a595;font-size:14px}
.site-f .fcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:32px;margin-bottom:40px}
.site-f h2{margin:0 0 14px;font-family:'Sora',sans-serif;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ff3b30}
.site-f ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.site-f a:hover{color:#ff3b30}
.site-f .fbot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:24px;border-top:1px solid #1f1f1f}
.site-f .fbrand p{margin:12px 0 0;line-height:1.6;max-width:300px}
@media(max-width:640px){.site-f{padding:40px 20px 24px}.site-f .fcols{grid-template-columns:1fr 1fr;gap:28px 20px}.site-f .fbrand,.site-f .fcols>div:last-child{grid-column:1/-1}.site-f .fbot{flex-direction:column;gap:6px}}

/* RTL + Arabic */
[dir="rtl"] body,[dir="rtl"] .wrap{font-family:'DM Sans','IBM Plex Sans Arabic',sans-serif}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] strong{font-family:'Sora','IBM Plex Sans Arabic',sans-serif!important;letter-spacing:0!important}
[dir="rtl"] *{letter-spacing:0!important}
[dir="rtl"] .nav a::after{transform-origin:right center}
.flip{margin-inline-start:.3em}
[dir="rtl"] .flip{display:inline-block;transform:scaleX(-1)}

/* language switcher */
.hdr-r{display:flex;align-items:center;gap:14px}
.lang{position:relative}
.lang summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border:1.5px solid #3a3a3a;border-radius:999px;cursor:pointer;font-size:15px;font-weight:500;color:#f6f3e4;transition:border-color .3s,color .3s;user-select:none}
.lang summary::-webkit-details-marker{display:none}
.lang summary:hover,.lang[open] summary{border-color:#ff3b30}
.lang summary:focus-visible{outline:2px solid #f6f3e4;outline-offset:3px}
.lang .chev{width:12px;height:12px;transition:rotate .3s}
.lang[open] .chev{rotate:180deg}
.flag{width:24px;height:16px;border-radius:3px;display:block;flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.lang-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:60;min-width:200px;margin:0;padding:8px;list-style:none;background:#141414;border:1px solid #2f2f2f;border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.55);animation:yRise .35s cubic-bezier(.2,.7,.3,1) both}
.lang-menu a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:10px;font-size:15px;font-weight:400;color:#f6f3e4}
.lang-menu a:hover,.lang-menu a:focus-visible{background:#1f1212;color:#ff6b60;outline:none}
.lang-menu a[aria-current="true"]{color:#ff3b30;font-weight:600}
.lang-menu a[aria-current="true"]::after{content:"✓";margin-inline-start:auto}
[dir="rtl"] .lang-menu{right:auto;left:0}
@media(max-width:640px){.lang summary .lname{display:none}}

/* motion */
@keyframes yRise{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@keyframes yFade{from{opacity:0}to{opacity:1}}
@keyframes yPop{from{opacity:0;scale:.94}to{opacity:1;scale:1}}
@keyframes yFloat{0%,100%{translate:0 0}50%{translate:0 -13px}}
@keyframes ySheen{from{background-position:-160% 0}to{background-position:260% 0}}
@keyframes yBreathe{0%,100%{opacity:.55}50%{opacity:1}}
.site-h{animation:yRise .85s cubic-bezier(.2,.7,.3,1) both}
.nav a{position:relative}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;border-radius:2px;background:#ff3b30;scale:0 1;transform-origin:left center;transition:scale .45s cubic-bezier(.2,.7,.3,1)}
.nav a:hover::after{scale:1 1}
.btn,.go,.cta,.bk,.pill,.edit,.rst,.pmb,.tab,.lbb,.hbtn{transition:transform .38s cubic-bezier(.2,.7,.3,1),box-shadow .38s ease,background .38s ease,border-color .38s ease,color .38s ease,filter .25s ease}
.btn:hover,.go:hover,.cta:hover,.hbtn:hover{transform:translateY(-3px)}
.hbtn:hover{background:#f6f3e4}
.btn:active,.go:active,.cta:active,.bk:active{transform:translateY(-1px) scale(.985)}
.btn,.go,.cta,.hbtn{position:relative;overflow:hidden}
.btn::after,.go::after,.cta::after,.hbtn::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 28%,rgba(255,255,255,.42) 50%,transparent 72%);background-size:260% 100%;background-position:-160% 0;opacity:0;pointer-events:none}
.btn:hover::after,.go:hover::after,.cta:hover::after,.hbtn:hover::after{opacity:1;animation:ySheen 1.05s ease-out}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
@media(max-width:340px){.hbtn{font-size:12px;padding:10px}.site-h .hdr-r{gap:6px}}
@media(max-width:640px){.hdr-r{position:relative}.lang{position:static}.lang-menu{top:calc(100% + 8px)}}
