1<!DOCTYPE html> 2<html lang="en-US" prefix="og: https://ogp.me/ns#"> 3<head> 4<meta charset="UTF-8"> 5<meta name="viewport" content="width=device-width, initial-scale=1"> 6 <link rel="profile" href="https://gmpg.org/xfn/11"> 7 <style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style> 8 9 <!-- This site is optimized with the Yoast SEO plugin v28.1 - https://yoast.com/product/yoast-seo-wordpress/ --> 10 <title>Home - Magic Maker Ai</title> 11 <link rel="canonical" href="https://cinemagicmaker.ai/" /> 12 <meta property="og:locale" content="en_US" /> 13 <meta property="og:type" content="website" /> 14 <meta property="og:title" content="Home - Magic Maker Ai" /> 15 <meta property="og:url" content="https://cinemagicmaker.ai/" /> 16 <meta property="og:site_name" content="Magic Maker Ai" /> 17 <meta property="article:publisher" content="https://www.facebook.com/Cinemagics/" /> 18 <meta property="article:modified_time" content="2026-05-06T09:58:10+00:00" /> 19 <meta property="og:image" content="https://cinemagicmaker.ai/wp-content/uploads/2025/01/c85f68_b4f4607772ec48f08e068d5a123fb610mv2.png" /> 20 <meta property="og:image:width" content="1452" /> 21 <meta property="og:image:height" content="242" /> 22 <meta property="og:image:type" content="image/png" /> 23 <meta name="twitter:card" content="summary_large_image" /> 24 <meta name="twitter:site" content="@cinemagics" /> 25
25<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/cinemagicmaker.ai\/","url":"https:\/\/cinemagicmaker.ai\/","name":"Home - Magic Maker Ai","isPartOf":{"@id":"https:\/\/cinemagicmaker.ai\/#website"},"about":{"@id":"https:\/\/cinemagicmaker.ai\/#organization"},"datePublished":"2025-10-23T06:56:44+00:00","dateModified":"2026-05-06T09:58:10+00:00","breadcrumb":{"@id":"https:\/\/cinemagicmaker.ai\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cinemagicmaker.ai\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/cinemagicmaker.ai\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home"}]},{"@type":"WebSite","@id":"https:\/\/cinemagicmaker.ai\/#website","url":"https:\/\/cinemagicmaker.ai\/","name":"Magicmaker Ai","description":"Magic Maker is our AI engine connecting you to top creative models for image, video, and design â turning ideas into cinematic realities that blend human...","publisher":{"@id":"https:\/\/cinemagicmaker.ai\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cinemagicmaker.ai\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cinemagicmaker.ai\/#organization","name":"%%sitename%%","url":"https:\/\/cinemagicmaker.ai\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cinemagicmaker.ai\/#\/schema\/logo\/image\/","url":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2024\/10\/cinemagic-video-production-company-logo.webp","contentUrl":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2024\/10\/cinemagic-video-production-company-logo.webp","width":454,"height":454,"caption":"%%sitename%%"},"image":{"@id":"https:\/\/cinemagicmaker.ai\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Cinemagics\/","https:\/\/x.com\/cinemagics","https:\/\/www.youtube.com\/cinemagics","https:\/\/www.linkedin.com\/company\/cinemagics","https:\/\/vimeo.com\/cinemagics","https:\/\/news.google.com\/publications\/CAAqBwgKMIOC9Qowsq7bAg?hl=en-US&gl=US&ceid=USen","https:\/\/g.page\/cinemagic-kuwait-ltd-?share"]}]}</script>
25 26 <meta name="google-site-verification" content="KXnF2Y1jN5rpmOTsaNOKudlzKZnf446jIdExhYbpbT4" /> 27 <!-- / Yoast SEO plugin. --> 28 29 30 31<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ --> 32<title>Home - Magic Maker Ai</title> 33<meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> 34<link rel="canonical" href="https://cinemagicmaker.ai/" /> 35<meta property="og:locale" content="en_US" /> 36<meta property="og:type" content="website" /> 37<meta property="og:title" content="Home - Magic Maker Ai" /> 38<meta property="og:url" content="https://cinemagicmaker.ai/" /> 39<meta property="og:site_name" content="Magic Maker Ai" /> 40<meta property="og:updated_time" content="2026-05-06T12:58:10+03:00" /> 41<meta property="article:published_time" content="2025-10-23T09:56:44+03:00" /> 42<meta property="article:modified_time" content="2026-05-06T12:58:10+03:00" /> 43<meta name="twitter:card" content="summary_large_image" /> 44<meta name="twitter:title" content="Home - Magic Maker Ai" /> 45<meta name="twitter:site" content="@cinemagics" /> 46<meta name="twitter:creator" content="@cinemagics" /> 47<meta name="twitter:label1" content="Written by" /> 48<meta name="twitter:data1" content="Arek" /> 49<meta name="twitter:label2" content="Time to read" /> 50<meta name="twitter:data2" content="Less than a minute" />
51<script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://cinemagicmaker.ai/#organization","name":"Magic Maker Ai","url":"https://cinemagicmaker.ai","sameAs":["https://www.facebook.com/Cinemagics/","https://twitter.com/cinemagics","https://www.youtube.com/cinemagics","https://www.linkedin.com/company/cinemagics","https://vimeo.com/cinemagics","https://news.google.com/publications/CAAqBwgKMIOC9Qowsq7bAg?hl=en-US&gl=US&ceid=USen","https://g.page/cinemagic-kuwait-ltd-?share"],"logo":{"@type":"ImageObject","@id":"https://cinemagicmaker.ai/#logo","url":"https://cinemagicmaker.ai/wp-content/uploads/2025/10/CMM_AI_01.png","contentUrl":"https://cinemagicmaker.ai/wp-content/uploads/2025/10/CMM_AI_01.png","caption":"Magic Maker Ai","inLanguage":"en-US","width":"2166","height":"1440"}},{"@type":"WebSite","@id":"https://cinemagicmaker.ai/#website","url":"https://cinemagicmaker.ai","name":"Magic Maker Ai","publisher":{"@id":"https://cinemagicmaker.ai/#organization"},"inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":"https://cinemagicmaker.ai/?s={search_term_string}","query-input":"required name=search_term_string"}},{"@type":"WebPage","@id":"https://cinemagicmaker.ai/#webpage","url":"https://cinemagicmaker.ai/","name":"Home - Magic Maker Ai","datePublished":"2025-10-23T09:56:44+03:00","dateModified":"2026-05-06T12:58:10+03:00","about":{"@id":"https://cinemagicmaker.ai/#organization"},"isPartOf":{"@id":"https://cinemagicmaker.ai/#website"},"inLanguage":"en-US"},{"@type":"Person","@id":"https://cinemagicmaker.ai/author/arek/","name":"Arek","url":"https://cinemagicmaker.ai/author/arek/","image":{"@type":"ImageObject","@id":"https://secure.gravatar.com/avatar/4dd25e6ab8c9a5a5acd3069fd2ee124a16fe6dfc7b8a3791f7f310b2dc298468?s=96&d=mm&r=pg","url":"https://secure.gravatar.com/avatar/4dd25e6ab8c9a5a5acd3069fd2ee124a16fe6dfc7b8a3791f7f310b2dc298468?s=96&d=mm&r=pg","caption":"Arek","inLanguage":"en-US"},"worksFor":{"@id":"https://cinemagicmaker.ai/#organization"}},{"@type":"Article","headline":"Home - Magic Maker Ai","datePublished":"2025-10-23T09:56:44+03:00","dateModified":"2026-05-06T12:58:10+03:00","author":{"@id":"https://cinemagicmaker.ai/author/arek/","name":"Arek"},"publisher":{"@id":"https://cinemagicmaker.ai/#organization"},"name":"Home - Magic Maker Ai","@id":"https://cinemagicmaker.ai/#richSnippet","isPartOf":{"@id":"https://cinemagicmaker.ai/#webpage"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://cinemagicmaker.ai/#webpage"}}]}</script>
51 52<meta name="google-site-verification" content="KXnF2Y1jN5rpmOTsaNOKudlzKZnf446jIdExhYbpbT4" /> 53<!-- /Rank Math WordPress SEO plugin --> 54
55<script type='application/javascript' id='pys-version-script'>console.log('PixelYourSite Free version 11.4.2');</script>
55 56<link rel='dns-prefetch' href='//cdn-reach.hostinger.com' /> 57<link rel='dns-prefetch' href='//www.googletagmanager.com' /> 58<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 59 60 61<link rel="alternate" type="application/rss+xml" title="Magic Maker Ai » Feed" href="https://cinemagicmaker.ai/feed/" /> 62<link rel="alternate" type="application/rss+xml" title="Magic Maker Ai » Comments Feed" href="https://cinemagicmaker.ai/comments/feed/" />
63<script> 64window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/cinemagicmaker.ai\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.8.10"}}; 65/*! This file is auto-generated */ 66!function(s,n){var o,i,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),a=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===a[t]})}function u(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);for(var n=e.getImageData(16,16,1,1),a=0;a<n.data.length;a++)if(0!==n.data[a])return!1;return!0}function f(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\udedf")}return!1}function g(e,t,n,a){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):s.createElement("canvas"),o=r.getContext("2d",{willReadFrequently:!0}),i=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(function(e){i[e]=t(o,e,n,a)}),i}function t(e){var t=s.createElement("script");t.src=e,t.defer=!0,s.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",i=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){s.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+g.toString()+"("+[JSON.stringify(i),f.toString(),p.toString(),u.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"}),r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=function(e){c(n=e.data),r.terminate(),t(n)})}catch(e){}c(n=g(i,f,p,u))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); 67</script>
67 68<link rel='stylesheet' id='astra-theme-css-css' href='https://cinemagicmaker.ai/wp-content/themes/astra/assets/css/minified/main.min.css?ver=4.14.0' media='all' /> 69<style id='astra-theme-css-inline-css'> 70:root{--ast-post-nav-space:0;--ast-container-default-xlg-padding:6.67em;--ast-container-default-lg-padding:5.67em;--ast-container-default-slg-padding:4.34em;--ast-container-default-md-padding:3.34em;--ast-container-default-sm-padding:6.67em;--ast-container-default-xs-padding:2.4em;--ast-container-default-xxs-padding:1.4em;--ast-code-block-background:#EEEEEE;--ast-comment-inputs-background:#FAFAFA;--ast-normal-container-width:1200px;--ast-narrow-container-width:750px;--ast-blog-title-font-weight:normal;--ast-blog-meta-weight:inherit;--ast-global-color-primary:var(--ast-global-color-5);--ast-global-color-secondary:var(--ast-global-color-4);--ast-global-color-alternate-background:var(--ast-global-color-7);--ast-global-color-subtle-background:var(--ast-global-color-6);--ast-bg-style-guide:var( --ast-global-color-secondary,var(--ast-global-color-5) );--ast-shadow-style-guide:0px 0px 4px 0 #00000057;--ast-global-dark-bg-style:#fff;--ast-global-dark-lfs:#fbfbfb;--ast-widget-bg-color:#fafafa;--ast-wc-container-head-bg-color:#fbfbfb;--ast-title-layout-bg:#eeeeee;--ast-search-border-color:#e7e7e7;--ast-lifter-hover-bg:#e6e6e6;--ast-gallery-block-color:#000;--srfm-color-input-label:var(--ast-global-color-2);}html{font-size:100%;}a,.page-title{color:var(--ast-global-color-0);}a:hover,a:focus{color:var(--ast-global-color-1);}body,button,input,select,textarea,.ast-button,.ast-custom-button{font-family:'Cairo',sans-serif;font-weight:400;font-size:16px;font-size:1rem;}blockquote{color:var(--ast-global-color-3);}p,.entry-content p{margin-bottom:1em;}h1,h2,h3,h4,h5,h6,.entry-content :where(h1,h2,h3,h4,h5,h6),.entry-content :where(h1,h2,h3,h4,h5,h6) a,.site-title,.site-title a{font-family:'Cairo',sans-serif;font-weight:600;line-height:1.2em;text-transform:capitalize;}.site-title{font-size:35px;font-size:2.1875rem;display:none;}
70header .custom-logo-link img{max-width:245px;width:245px;}.astra-logo-svg{width:245px;}.site-header .site-description{font-size:15px;font-size:0.9375rem;display:none;}.entry-title{font-size:30px;font-size:1.875rem;}.archive .ast-article-post .ast-article-inner,.blog .ast-article-post .ast-article-inner,.archive .ast-article-post .ast-article-inner:hover,.blog .ast-article-post .ast-article-inner:hover{overflow:hidden;}h1,.entry-content :where(h1),.entry-content :where(h1) a{font-size:64px;font-size:4rem;font-family:'Cairo',sans-serif;line-height:1.4em;text-transform:capitalize;}h2,.entry-content :where(h2),.entry-content :where(h2) a{font-size:40px;font-size:2.5rem;font-family:'Cairo',sans-serif;line-height:1.3em;text-transform:capitalize;}h3,.entry-content :where(h3),.entry-content :where(h3) a{font-size:32px;font-size:2rem;font-family:'Cairo',sans-serif;line-height:1.3em;text-transform:capitalize;}h4,.entry-content :where(h4),.entry-content :where(h4) a{font-size:24px;font-size:1.5rem;line-height:1.2em;font-family:'Cairo',sans-serif;text-transform:capitalize;}h5,.entry-content :where(h5),.entry-content :where(h5) a{font-size:20px;font-size:1.25rem;line-height:1.2em;font-family:'Cairo',sans-serif;text-transform:capitalize;}h6,.entry-content :where(h6),.entry-content :where(h6) a{font-size:16px;font-size:1rem;line-height:1.25em;font-family:'Cairo',sans-serif;text-transform:capitalize;}::selection{background-color:var(--ast-global-color-0);color:#ffffff;}body,h1,h2,h3,h4,h5,h6,.entry-title a,.entry-content :where(h1,h2,h3,h4,h5,h6),.entry-content :where(h1,h2,h3,h4,h5,h6) a{color:var(--ast-global-color-3);}.tagcloud a:hover,.tagcloud a:focus,.tagcloud a.current-item{color:#ffffff;border-color:var(--ast-global-color-0);background-color:var(--ast-global-color-0);}input:focus,input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="reset"]:focus,input[type="search"]:focus,textarea:focus{border-color:var(--ast-global-color-0);}input[type="radio"]:checked,input[type=reset],input[type="checkbox"]:checked,input[type="checkbox"]:hover:checked,input[type="checkbox"]:focus:checked,input[type=range]::-webkit-slider-thumb{border-color:var(--ast-global-color-0);background-color:var(--ast-global-color-0);box-shadow:none;}.site-footer a:hover + .post-count,.site-footer a:focus + .post-count{background:var(--ast-global-color-0);border-color:var(--ast-global-color-0);}.single .nav-links .nav-previous,.single .nav-links .nav-next{color:var(--ast-global-color-0);}.entry-meta,.entry-meta *{line-height:1.45;color:var(--ast-global-color-0);}.entry-meta a:not(.ast-button):hover,.entry-meta a:not(.ast-button):hover *,.entry-meta a:not(.ast-button):focus,.entry-meta a:not(.ast-button):focus *,.page-links > .page-link,.page-links .page-link:hover,.post-navigation a:hover{color:var(--ast-global-color-1);}#cat option,.secondary .calendar_wrap thead a,.secondary .calendar_wrap thead a:visited{color:var(--ast-global-color-0);}.secondary .calendar_wrap #today,.ast-progress-val span{background:var(--ast-global-color-0);}.secondary a:hover + .post-count,.secondary a:focus + .post-count{background:var(--ast-global-color-0);border-color:var(--ast-global-color-0);}.calendar_wrap #today > a{color:#ffffff;}.page-links .page-link,.single .post-navigation a{color:var(--ast-global-color-0);}.ast-search-menu-icon .search-form button.search-submit{padding:0 4px;}.ast-search-menu-icon form.search-form{padding-right:0;}.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-form,.ast-header-search .ast-search-menu-icon.ast-dropdown-active .search-field:focus{transition:all 0.2s;}.search-form input.search-field:focus{outline:none;}.ast-mobile-header-content .ast-builder-layout-element:not(.ast-builder-menu):not(.ast-header-divider-element),.ast-mobile-popup-content .ast-builder-layout-element:not(.ast-builder-menu):not(.ast-header-divider-element){padding:15px 20px;}.ast-blog-layout-6-grid .ast-article-inner .post-thumb::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:;;}.wp-block-latest-posts > li > a{color:var(--ast-global-color-2);}.widget-title,.widget .wp-block-heading{font-size:22px;font-size:1.375rem;color:var(--ast-global-color-3);}.ast-search-menu-icon.slide-search a:focus-visible:focus-visible,.astra-search-icon:focus-visible,#close:focus-visible,a:focus-visible,.ast-menu-toggle:focus-visible,.site .skip-link:focus-visible,.wp-block-loginout input:focus-visible,.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper,.ast-header-navigation-arrow:focus-visible,.ast-orders-table__row .ast-orders-table__cell:focus-visible,a#ast-apply-coupon:focus-visible,#ast-apply-coupon:focus-visible,#close:focus-visible,.button.search-submit:focus-visible,#search_submit:focus,.normal-search:focus-visible,.ast-header-account-wrap:focus-visible,.astra-cart-drawer-close
70:focus,.ast-single-variation:focus,.ast-button:focus,.ast-builder-button-wrap:has(.ast-custom-button-link:focus),.ast-builder-button-wrap .ast-custom-button-link:focus{outline-style:dotted;outline-color:inherit;outline-width:thin;}input:focus,input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="reset"]:focus,input[type="search"]:focus,input[type="number"]:focus,textarea:focus,.wp-block-search__input:focus,[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus,.ast-mobile-popup-drawer.active .menu-toggle-close:focus,#ast-scroll-top:focus,#coupon_code:focus,#ast-coupon-code:focus{border-style:dotted;border-color:inherit;border-width:thin;}input{outline:none;}.site-logo-img img{ transition:all 0.2s linear;}body .ast-oembed-container *{position:absolute;top:0;width:100%;height:100%;left:0;}body .wp-block-embed-pocket-casts .ast-oembed-container *{position:unset;}.ast-single-post-featured-section + article {margin-top: 2em;}.site-content .ast-single-post-featured-section img {width: 100%;overflow: hidden;object-fit: cover;}.site > .ast-single-related-posts-container {margin-top: 0;}@media (min-width: 769px) {.ast-desktop .ast-container--narrow {max-width: var(--ast-narrow-container-width);margin: 0 auto;}}.ast-page-builder-template .hentry {margin: 0;}.ast-page-builder-template .site-content > .ast-container {max-width: 100%;padding: 0;}.ast-page-builder-template .site .site-content #primary {padding: 0;margin: 0;}.ast-page-builder-template .no-results {text-align: center;margin: 4em auto;}.ast-page-builder-template .ast-pagination {padding: 2em;}.ast-page-builder-template .entry-header.ast-no-title.ast-no-thumbnail {margin-top: 0;}.ast-page-builder-template .entry-header.ast-header-without-markup {margin-top: 0;margin-bottom: 0;}.ast-page-builder-template .entry-header.ast-no-title.ast-no-meta {margin-bottom: 0;}.ast-page-builder-template.single .post-navigation {padding-bottom: 2em;}.ast-page-builder-template.single-post .site-content > .ast-container {max-width: 100%;}.ast-page-builder-template .entry-header {margin-top: 4em;margin-left: auto;margin-right: auto;padding-left: 20px;padding-right: 20px;}.single.ast-page-builder-template .entry-header {padding-left: 20px;padding-right: 20px;}.ast-page-builder-template .ast-archive-description {margin: 4em auto 0;padding-left: 20px;padding-right: 20px;}.ast-page-builder-template.ast-no-sidebar .entry-content .alignwide {margin-left: 0;margin-right: 0;}@media (max-width:768.99px){#ast-desktop-header{display:none;}}@media (min-width:769px){#ast-mobile-header{display:none;}}.wp-block-buttons.aligncenter{justify-content:center;}.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button,.ast-outline-button,.wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button{border-color:var(--ast-global-color-0);border-top-width:0px;border-right-width:0px;border-bottom-width:0px;border-left-width:0px;font-family:inherit;font-weight:600;font-size:14px;font-size:0.875rem;line-height:1em;padding-top:18px;padding-right:22px;padding-bottom:18px;padding-left:22px;border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px;}.wp-block-button.is-style-outline .wp-block-button__link:hover,.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:focus,.wp-block-buttons .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover,.wp-block-buttons .wp-block-button.wp-block-button__link.is-style-outline:not(.has-text-color):hover,.ast-outline-button:hover,.ast-outline-button:focus,.wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button:hover,.wp-block-uagb-buttons-child .uagb-buttons-repeater.ast-outline-button:focus{background-color:var(--ast-global-color-0);}.wp-block-button .wp-block-button__link.wp-element-button.is-style-outline:not(.has-background),.wp-block-button.is-style-outline>.wp-block-button__link.wp-element-button:not(.has-background),.ast-outline-button{background-color:var(--ast-global-color-0);}.wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline:not(.has-background),.wp-block-buttons .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background),.ast-outline-button{background-color:var(--ast-global-color-0);color:#ffffff;}.entry-content[data-ast-blocks-layout] > figure{margin-bottom:1em;}.elementor-widget-container .elementor-loop-container .e-loop-item[data-elementor-type="loop-item"]{width:100%;}@media (max-width:768px){.ast-left-sidebar #content > .ast-container{display:flex;flex-direction:column-reverse;width:100%;}.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single{padding:1.5em 2.14em;}.ast-author-box img.avatar{margin:20px 0 0 0;}}@media (min-width:769px){.ast-separate-container.ast-right-sidebar #primary,.ast-separate-container.ast-left-sidebar #primary{border:0;}.search-no-results.ast-separate-container #primary{margin-bottom:4em;}}.elementor-widget-button .elementor-button{border-style:solid;text-decoration:none;border-top-width:0px;border-right-width:0px;border-left-width:0px;border-bottom-width:0px;}body .elementor-button.elementor-size-sm,body .elementor-button.elementor-size-xs,body .elementor-button.elementor-size-md,body .elementor-button.elementor-size-lg,body .elementor-button.elementor-size-xl,body .elementor-button{border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px;padding-top:18px;padding-right:22px;padding-bottom:18px;padding-left:22px;}.wp-block-button .wp-block-button__link ,.elementor-widget-button .elementor-button,.elementor-widget-button .elementor-button:visited{color:var(--ast-global-color-5);}.elementor-widget-button .elementor-button{border-color:var(--ast-global-color-0);background-color:var(--ast-global-color-0);}.elementor-widget-button .elementor-button:hover,.elementor-widget-button .elementor-button:focus{color:var(--ast-global-color-5);background-color:var(--ast-global-color-0);border-color:var(--ast-global-color-0);}.elementor-widget-button .elementor-button{font-weight:600;font-size:14px;font-size:0.875rem;line-height:1em;text-transform:capitalize;letter-spacing:0.5px;}body .elementor-button.elementor-size-sm,body .elementor-button.elementor-size-xs,body .elementor-button.elementor-size-md,body .elementor-button.elementor-size-lg,body .elementor-button.elementor-size-xl,body .elementor-button{font-size:14px;font-size:0.875rem;}.wp-block-button .wp-block-button__link:hover,.wp-block-button .wp-block-button__link:focus{color:var(--ast-global-color-5);background-color:var(--ast-global-color-0);border-color:var(--ast-global-color-0);}.elementor-widget-heading h1.elementor-heading-title{line-height:1.4em;}.elementor-widget-heading h2.elementor-heading-title{line-height:1.3em;}.elementor-widget-heading h3.elementor-heading-title{line-height:1.3em;}.elementor-widget-heading h4.elementor-heading-title{line-height:1.2em;}.elementor-widget-heading h5.elementor-heading-title{line-height:1.2em;}.elementor-widget-heading h6.elementor-heading-title{line-height:1.25em;}.wp-block-button .wp-block-button__link,.wp-block-search .wp-block-search__button,body .wp-block-file .wp-block-file__button{border-style:solid;border-top-width:0px;border-right-width:0px;border-left-width:0px;border-bottom-width:0px;border-color:var(--ast-global-color-0);background-color:var(--ast-global-color-0);color:var(--ast-global-color-5);font-family:inherit;font-weight:600;line-height:1em;text-transform:capitalize;letter-spacing:0.5px;font-size:14px;font-size:0.875rem;border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px;padding-top:18px;padding-right:22px;padding-bottom:18px;padding-left:22px;}.menu-toggle,button,.ast-button,.ast-custom-button,.button,input#submit,input[type="button"],input[type="submit"],input[type="reset"],form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button,body .wp-block-file .wp-block-file__button{border-style:solid;border-top-width:0px;border-right-width:0px;border-left-width:0px;border-bottom-width:0px;color:var(--ast-global-color-5);border-color:var(--ast-global-color-0);background-color:var(--ast-global-color-0);padding-top:18px;padding-right:22px;padding-bottom:18px;padding-left:22px;font-family:inherit;font-weight:600;font-size:14px;font-size:0.875rem;line-height:1em;text-transform:capitalize;letter-spacing:0.5px;border-top-left-radius:6px;border-top-right-radius:6px;border-bottom-right-radius:6px;border-bottom-left-radius:6px;}button:focus,.menu-toggle:hover,button:hover,.ast-button:hover,.ast-custom-button:hover .button:hover,.ast-custom-button:hover ,input[type=reset]:hover,input[type=reset]:focus,input#submit:hover,input#submit:focus,input[type="button"]:hover,input[type="button"]:focus,input[type="submit"]:hover,input[type="submit"]:focus,form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:hover,form[CLASS*="wp-block-search__"].wp-block-search .wp-block-search__inside-wrapper .wp-block-search__button:focus,body .wp-block-file .wp-block-file__button:hover,body .wp-block-file .wp-block-file__button:focus{color:var(--ast-global-color-5);background-color:var(--ast-global-color-0);border-color:var(--ast-global-color-0);}@media (max-width:768px){.ast-mobile-header-stack .main-header-bar .ast-search-menu-icon{display:inline-block;}.ast-header-break-point.ast-header-custom-item-outside .ast-mobile-header-stack .main-header-bar .ast-search-icon{margin:0;}.ast-comment-avatar-wrap img{max-width:2.5em;}.ast-comment-meta{padding:0 1.8888em 1.3333em;}.ast-separate-container .ast-comment-list li.depth-1{padding:1.5em 2.14em;}.ast-separate-container .comment-respond{padding:2em 2.14em;}}@media (min-width:544px){.ast-container{max-width:100%;}}@media (max-width:544px){.ast-separate-container .ast-article-post,.ast-separate-container .ast-article-single,.ast-separate-container .comments-title,.ast-separate-container .ast-archive-description{padding:1.5em 1em;}.ast-separate-container #content .ast-container{padding-left:0.54em;padding-right:0.54em;}.ast-separate-container .ast-comment-list .bypostauthor{padding:.5em;}.ast-search-menu-icon.ast-dropdown-active .search-field{width:170px;}} #ast-mobile-header .ast-site-header-cart-li a{pointer-events:none;}
70@media (min-width:545px){.ast-page-builder-template .comments-area,.single.ast-page-builder-template .entry-header,.single.ast-page-builder-template .post-navigation,.single.ast-page-builder-template .ast-single-related-posts-container{max-width:1240px;margin-left:auto;margin-right:auto;}}body,.ast-separate-container{background-color:var(--ast-global-color-4);background-image:none;}@media (max-width:768px){.site-title{display:none;}.site-header .site-description{display:none;}h1,.entry-content :where(h1),.entry-content :where(h1) a{font-size:56px;}h2,.entry-content :where(h2),.entry-content :where(h2) a{font-size:32px;}h3,.entry-content :where(h3),.entry-content :where(h3) a{font-size:28px;}h4,.entry-content :where(h4),.entry-content :where(h4) a{font-size:24px;font-size:1.5rem;}h5,.entry-content :where(h5),.entry-content :where(h5) a{font-size:20px;font-size:1.25rem;}h6,.entry-content :where(h6),.entry-content :where(h6) a{font-size:16px;font-size:1rem;}}@media (max-width:544px){.site-title{display:none;}.site-header .site-description{display:none;}
70h1,.entry-content :where(h1),.entry-content :where(h1) a{font-size:32px;}h2,.entry-content :where(h2),.entry-content :where(h2) a{font-size:24px;}h3,.entry-content :where(h3),.entry-content :where(h3) a{font-size:22px;}h4,.entry-content :where(h4),.entry-content :where(h4) a{font-size:20px;font-size:1.25rem;}h5,.entry-content :where(h5),.entry-content :where(h5) a{font-size:18px;font-size:1.125rem;}h6,.entry-content :where(h6),.entry-content :where(h6) a{font-size:15px;font-size:0.9375rem;}}@media (max-width:768px){html{font-size:91.2%;}}@media (max-width:544px){html{font-size:91.2%;}}@media (min-width:769px){.ast-container{max-width:1240px;}}@media (min-width:769px){.site-content .ast-container{display:flex;}}@media (max-width:768px){.site-content .ast-container{flex-direction:column;}}@media (min-width:769px){.main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu:hover > .sub-menu,.main-header-menu .sub-menu .menu-item.ast-left-align-sub-menu.focus > .sub-menu{margin-left:-2px;}}.site .comments-area{padding-bottom:3em;}.footer-widget-area[data-section^="section-fb-html-"] .ast-builder-html-element{text-align:center;}.wp-block-file {display: flex;align-items: center;flex-wrap: wrap;justify-content: space-between;}.wp-block-pullquote {border: none;}.wp-block-pullquote blockquote::before {content: "\201D";font-family: "Helvetica",sans-serif;display: flex;transform: rotate( 180deg );font-size: 6rem;font-style: normal;line-height: 1;font-weight: bold;align-items: center;justify-content: center;}.has-text-align-right > blockquote::before {justify-content: flex-start;}.has-text-align-left > blockquote::before {justify-content: flex-end;}figure.wp-block-pullquote.is-style-solid-color blockquote {max-width: 100%;text-align: inherit;}:root {--wp--custom--ast-default-block-top-padding: 3em;--wp--custom--ast-default-block-right-padding: 3em;--wp--custom--ast-default-block-bottom-padding: 3em;--wp--custom--ast-default-block-left-padding: 3em;--wp--custom--ast-container-width: 1200px;--wp--custom--ast-content-width-size: 1200px;--wp--custom--ast-wide-width-size: calc(1200px + var(--wp--custom--ast-default-block-left-padding) + var(--wp--custom--ast-default-block-right-padding));}.ast-narrow-container {--wp--custom--ast-content-width-size: 750px;--wp--custom--ast-wide-width-size: 750px;}@media(max-width: 768px) {:root {--wp--custom--ast-default-block-top-padding: 3em;--wp--custom--ast-default-block-right-padding: 2em;--wp--custom--ast-default-block-bottom-padding: 3em;--wp--custom--ast-default-block-left-padding: 2em;}}@media(max-width: 544px) {:root {--wp--custom--ast-default-block-top-padding: 3em;--wp--custom--ast-default-block-right-padding: 1.5em;--wp--custom--ast-default-block-bottom-padding: 3em;--wp--custom--ast-default-block-left-padding: 1.5em;}}.entry-content > .wp-block-group,.entry-content > .wp-block-cover,.entry-content > .wp-block-columns {padding-top: var(--wp--custom--ast-default-block-top-padding);padding-right: var(--wp--custom--ast-default-block-right-padding);padding-bottom: var(--wp--custom--ast-default-block-bottom-padding);padding-left: var(--wp--custom--ast-default-block-left-padding);}.ast-plain-container.ast-no-sidebar .entry-content > .alignfull,.ast-page-builder-template .ast-no-sidebar .entry-content > .alignfull {margin-left: calc( -50vw + 50%);margin-right: calc( -50vw + 50%);max-width: 100vw;width: 100vw;}.ast-plain-container.ast-no-sidebar .entry-content .alignfull .alignfull,.ast-page-builder-template.ast-no-sidebar .entry-content .alignfull .alignfull,.ast-plain-container.ast-no-sidebar .entry-content .alignfull .alignwide,.ast-page-builder-template.ast-no-sidebar .entry-content .alignfull .alignwide,.ast-plain-container.ast-no-sidebar .entry-content .alignwide .alignfull,.ast-page-builder-template.ast-no-sidebar .entry-content .alignwide .alignfull,.ast-plain-container.ast-no-sidebar .entry-content .alignwide .alignwide,.ast-page-builder-template.ast-no-sidebar .entry-content .alignwide .alignwide,.ast-plain-container.ast-no-sidebar .entry-content .wp-block-column .alignfull,.ast-page-builder
70-template.ast-no-sidebar .entry-content .wp-block-column .alignfull,.ast-plain-container.ast-no-sidebar .entry-content .wp-block-column .alignwide,.ast-page-builder-template.ast-no-sidebar .entry-content .wp-block-column .alignwide {margin-left: auto;margin-right: auto;width: 100%;}[data-ast-blocks-layout] .wp-block-separator:not(.is-style-dots) {height: 0;}[data-ast-blocks-layout] .wp-block-separator {margin: 20px auto;}[data-ast-blocks-layout] .wp-block-separator:not(.is-style-wide):not(.is-style-dots) {max-width: 100px;}[data-ast-blocks-layout] .wp-block-separator.has-background {padding: 0;}.entry-content[data-ast-blocks-layout] > * {max-width: var(--wp--custom--ast-content-width-size);margin-left: auto;margin-right: auto;}.entry-content[data-ast-blocks-layout] > .alignwide {max-width: var(--wp--custom--ast-wide-width-size);}.entry-content[data-ast-blocks-layout] .alignfull {max-width: none;}.entry-content .wp-block-columns {margin-bottom: 0;}blockquote {margin: 1.5em;border-color: rgba(0,0,0,0.05);}.wp-block-quote:not(.has-text-align-right):not(.has-text-align-center) {border-left: 5px solid rgba(0,0,0,0.05);}.has-text-align-right > blockquote,blockquote.has-text-align-right {border-right: 5px solid rgba(0,0,0,0.05);}.has-text-align-left > blockquote,blockquote.has-text-align-left {border-left: 5px solid rgba(0,0,0,0.05);}.wp-block-site-tagline,.wp-block-latest-posts .read-more {margin-top: 15px;}.wp-block-loginout p label {display: block;}.wp-block-loginout p:not(.login-remember):not(.login-submit) input {width: 100%;}.wp-block-loginout input:focus {border-color: transparent;}.wp-block-loginout input:focus {outline: thin dotted;}.entry-content .wp-block-media-text .wp-block-media-text__content {padding: 0 0 0 8%;}.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {padding: 0 8% 0 0;}.entry-content .wp-block-media-text.has-background .wp-block-media-text__content {padding: 8%;}.entry-content .wp-block-cover:not([class*="background-color"]):not(.has-text-color.has-link-color) .wp-block-cover__inner-container,.entry-content .wp-block-cover:not([class*="background-color"]) .wp-block-cover-image-text,.entry-content .wp-block-cover:not([class*="background-color"]) .wp-block-cover-text,.entry-content .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover__inner-container,.entry-content .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover-image-text,.entry-content .wp-block-cover-image:not([class*="background-color"]) .wp-block-cover-text {color: var(--ast-global-color-primary,var(--ast-global-color-5));}.wp-block-loginout .login-remember input {width: 1.1rem;height: 1.1rem;margin: 0 5px 4px 0;vertical-align: middle;}.wp-block-latest-posts > li > *:first-child,.wp-block-latest-posts:not(.is-grid) > li:first-child {margin-top: 0;}.entry-content > .wp-block-buttons,.entry-content > .wp-block-uagb-buttons {margin-bottom: 1.5em;}.wp-block-search__inside-wrapper .wp-block-search__input {padding: 0 10px;color: var(--ast-global-color-3);background: var(--ast-global-color-primary,var(--ast-global-color-5));border-color: var(--ast-border-color);}.wp-block-latest-posts .read-more {margin-bottom: 1.5em;}.wp-block-search__no-button .wp-block-search__inside-wrapper .wp-block-search__input {padding-top: 5px;padding-bottom: 5px;}.wp-block-latest-posts .wp-block-latest-posts__post-date,.wp-block-latest-posts .wp-block-latest-posts__post-author {font-size: 1rem;}.wp-block-latest-posts > li > *,.wp-block-latest-posts:not(.is-grid) > li {margin-top: 12px;margin-bottom: 12px;}.ast-page-builder-template .entry-content[data-ast-blocks-layout] > .alignwide:where(:not(.uagb-is-root-container):not(.spectra-is-root-container)) > * {max-width: var(--wp--custom--ast-wide-width-size);}.ast-page-builder-template .entry-content[data-ast-blocks-layout] > .inherit-container-width > *,.ast-page-builder-template .entry-content[data-ast-blocks-layout] > *:not(.wp-block-group):where(:not(.uagb-is-root-container):not(.spectra-is-root-container)) > *,.entry-content[data-ast-blocks-layout] > .wp-block-cover .wp-block-cover__inner-container {max-width: var(--wp--custom--ast-content-width-size) ;margin-left: auto;margin-right: auto;}
70.ast-page-builder-template .entry-content[data-ast-blocks-layout] > *,.ast-page-builder-template .entry-content[data-ast-blocks-layout] > .alignfull:where(:not(.wp-block-group):not(.uagb-is-root-container):not(.spectra-is-root-container)) > * {max-width: none;}.entry-content[data-ast-blocks-layout] .wp-block-cover:not(.alignleft):not(.alignright) {width: auto;}@media(max-width: 1200px) {.ast-separate-container .entry-content > .alignfull,.ast-separate-container .entry-content[data-ast-blocks-layout] > .alignwide,.ast-plain-container .entry-content[data-ast-blocks-layout] > .alignwide,.ast-plain-container .entry-content .alignfull {margin-left: calc(-1 * min(var(--ast-container-default-xlg-padding),20px)) ;margin-right: calc(-1 * min(var(--ast-container-default-xlg-padding),20px));}}@media(min-width: 1201px) {.ast-separate-container .entry-content > .alignfull {margin-left: calc(-1 * var(--ast-container-default-xlg-padding) );margin-right: calc(-1 * var(--ast-container-default-xlg-padding) );}.ast-separate-container .entry-content[data-ast-blocks-layout] > .alignwide,.ast-plain-container .entry-content[data-ast-blocks-layout] > .alignwide {margin-left: calc(-1 * var(--wp--custom--ast-default-block-left-padding) );margin-right: calc(-1 * var(--wp--custom--ast-default-block-right-padding) );}}@media(min-width: 768px) {.ast-separate-container .entry-content .wp-block-group.alignwide:not(.inherit-container-width) > :where(:not(.alignleft):not(.alignright)),.ast-plain-container .entry-content .wp-block-group.alignwide:not(.inherit-container-width) > :where(:not(.alignleft):not(.alignright)) {max-width: calc( var(--wp--custom--ast-content-width-size) + 80px );}.ast-plain-container.ast-right-sidebar .entry-content[data-ast-blocks-layout] .alignfull,.ast-plain-container.ast-left-sidebar .entry-content[data-ast-blocks-layout] .alignfull {margin-left: -60px;margin-right: -60px;}}@media(min-width: 544px) {.entry-content > .alignleft {margin-right: 20px;}.entry-content > .alignright {margin-left: 20px;}}@media (max-width:544px){.wp-block-columns .wp-block-column:not(:last-child){margin-bottom:20px;}.wp-block-latest-posts{margin:0;}}@media( max-width: 600px ) {.entry-content .wp-block-media-text .wp-block-media-text__content,.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {padding: 8% 0 0;}.entry-content .wp-block-media-text.has-background .wp-block-media-text__content {padding: 8%;}}.ast-page-builder-template .entry-header {padding-left: 0;}.ast-narrow-container .site-content .wp-block-uagb-image--align-full .wp-block-uagb-image__figure {max-width: 100%;margin-left: auto;margin-right: auto;}:root .has-ast-global-color-0-color{color:var(--ast-global-color-0);}:root .has-ast-global-color-0-background-color{background-color:var(--ast-global-color-0);}:root .wp-block-button .has-ast-global-color-0-color{color:var(--ast-global-color-0);}:root .wp-block-button .has-ast-global-color-0-background-color{background-color:var(--ast-global-color-0);}:root .has-ast-global-color-1-color{color:var(--ast-global-color-1);}:root .has-ast-global-color-1-background-color{background-color:var(--ast-global-color-1);}:root .wp-block-button .has-ast-global-color-1-color{color:var(--ast-global-color-1);}:root .wp-block-button .has-ast-global-color-1-background-color{background-color:var(--ast-global-color-1);}:root .has-ast-global-color-2-color{color:var(--ast-global-color-2);}:root .has-ast-global-color-2-background-color{background-color:var(--ast-global-color-2);}:root .wp-block-button .has-ast-global-color-2-color{color:var(--ast-global-color-2);}:root .wp-block-button .has-ast-global-color-2-background-color{background-color:var(--ast-global-color-2);}:root .has-ast-global-color-3-color{color:var(--ast-global-color-3);}:root .has-ast-global-color-3-background-color{background-color:var(--ast-global-color-3);}:root .wp-block-button .has-ast-global-color-3-color{color:var(--ast-global-color-3);}:root .wp-block-button .has-ast-global-color-3-background-color{background-color:var(--ast-global-color-3);}:root .has-ast-global-color-4-color{color:var(--ast-global-color-4);}:root .has-ast-global-color-4-background-color{background-color:var(--ast-global-color-4);}:root .wp-block-button .has-ast-global-color-4-color{color:var(--ast-global-color-4);}:root .wp-block-button .has-ast-global-color-4-background-color{background-color:var(--ast-global-color-4);}:root .has-ast-global-color-5-color{color:var(--ast-global-color-5);}:root .has-ast-global-color-5-background-color{background-color:var(--ast-global-color-5);}:root .wp-block-button .has-ast-global-color-5-color{color:var(--ast-global-color-5);}:root .wp-block-button .has-ast-global-color-5-background-color{background-color:var(--ast-global-color-5);}:root .has-ast-global-color-6-color{color:var(--ast-global-color-6);}:root .has-ast-global-color-6-background-color{background-color:var(--ast-global-color-6);}:root .wp-block-button .has-ast-global-color-6-color{color:var(--ast-global-color-6);}:root .wp-block-button .has-ast-global-color-6-background-color{background-color:var(--ast-global-color-6);}:root .has-ast-global-color-7-color{color:var(--ast-global-color-7);}:root .has-ast-global-color-7-background-color{background-color:var(--ast-global-color-7);}:root .wp-block-button .has-ast-global-color-7-color{color:var(--ast-global-color-7);}:root .wp-block-button .has-ast-global-color-7-background-color{background-color:var(--ast-global-color-7);}:root .has-ast-global-color-8-color{color:var(--ast-global-color-8);}:root .has-ast-global-color-8-background-color{background-color:var(--ast-global-color-8);}:root .wp-block-button .has-ast-global-color-8-color{color:var(--ast-global-color-8);}:root .wp-block-button .has-ast-global-color-8-background-color{background-color:var(--ast-global-color-8);}:root{--ast-global-color-0:#3b4fe4;--ast-global-color-1:#243673;--ast-global-color-2:#1a1a1a;--ast-global-color-3:#6e7180;--ast-global-color-4:#e2e5e7;--ast-global-color-5:#ffffff;--ast-global-color-6:#3c3c3c;--ast-global-color-7:#1a1a1a;--ast-global-color-8:#000000;}:root {--ast-border-color : #dddddd;}.ast-single-entry-banner {-js-display: flex;display: flex;flex-direction: column;justify-content: center;text-align: center;position: relative;background: var(--ast-title-layout-bg);}.ast-single-entry-banner[data-banner-layout="layout-1"] {max-width: 1200px;background: inherit;padding: 20px 0;}.ast-single-entry-banner[data-banner-width-type="custom"] {margin: 0 auto;width: 100%;}.ast-single-entry-banner + .site-content .entry-header {margin-bottom: 0;}.site .ast-author-avatar {--ast-author-avatar-size: ;}a.ast-underline-text {text-decoration: underline;}.ast-container > .ast-terms-link {position: relative;display: block;}a.ast-button.ast-badge-tax {padding: 4px 8px;border-radius: 3px;font-size: inherit;}header.entry-header:not(.related-entry-header){text-align:left;}header.entry-header:not(.related-entry-header) .entry-title{font-size:30px;font-size:1.875rem;}header.entry-header:not(.related-entry-header) > *:not(:last-child){margin-bottom:10px;}@media (max-width:768px){header.entry-header:not(.related-entry-header){text-align:left;}}@media (max-width:544px){header.entry-header:not(.related-entry-header){text-align:left;}}.ast-archive-entry-banner {-js-display: flex;display: flex;flex-direction: column;justify-content: center;text-align: center;position: relative;background: var(--ast-title-layout-bg);}.ast-archive-entry-banner[data-banner-width-type="custom"] {margin: 0 auto;width: 100%;}.ast-archive-entry-banner[data-banner-layout="layout-1"] {background: inherit;padding: 20px 0;text-align: left;}body.archive .ast-archive-description{max-width:1200px;width:100%;text-align:left;padding-top:3em;padding-right:3em;padding-bottom:3em;padding-left:3em;}body.archive .ast-archive-description .ast-archive-title,body.archive .ast-archive-description .ast-archive-title *{font-size:40px;font-size:2.5rem;}body.archive .ast-archive-description > *:not(:last-child){margin-bottom:10px;}@media (max-width:768px){body.archive .ast-archive-description{text-align:left;}}@media (max-width:544px){body.archive .ast-archive-description{text-align:left;}}.ast-breadcrumbs .trail-browse,.ast-breadcrumbs .trail-items,.ast-breadcrumbs .trail-items li{display:inline-block;margin:0;padding:0;border:none;background:inherit;text-indent:0;text-decoration:none;}.ast-breadcrumbs .trail-browse{font-size:inherit;font-style:inherit;font-weight:inherit;color:inherit;}.ast-breadcrumbs .trail-items{list-style:none;}.trail-items li::after{padding:0 0.3em;content:"\00bb";}.trail-items li:last-of-type::after{display:none;}
70h1,h2,h3,h4,h5,h6,.entry-content :where(h1,h2,h3,h4,h5,h6){color:var(--ast-global-color-2);}@media (max-width:768px){.ast-builder-grid-row-container.ast-builder-grid-row-tablet-3-firstrow .ast-builder-grid-row > *:first-child,.ast-builder-grid-row-container.ast-builder-grid-row-tablet-3-lastrow .ast-builder-grid-row > *:last-child{grid-column:1 / -1;}}@media (max-width:544px){.ast-builder-grid-row-container.ast-builder-grid-row-mobile-3-firstrow .ast-builder-grid-row > *:first-child,.ast-builder-grid-row-container.ast-builder-grid-row-mobile-3-lastrow .ast-builder-grid-row > *:last-child{grid-column:1 / -1;}}.ast-builder-layout-element[data-section="title_tagline"]{display:flex;}@media (max-width:768.99px){.ast-header-break-point .ast-builder-layout-element[data-section="title_tagline"]{display:flex;}}@media (max-width:544px){.ast-header-break-point .ast-builder-layout-element[data-section="title_tagline"]{display:flex;}}.ast-builder-menu-1{font-family:inherit;font-weight:inherit;}.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link,.ast-builder-menu-1 .inline-on-mobile .menu-item.current-menu-item > .ast-menu-toggle,.ast-builder-menu-1 .current-menu-ancestor > .menu-link{background:var(--ast-global-color-3);}.ast-builder-menu-1 .sub-menu,.ast-builder-menu-1 .inline-on-mobile .sub-menu{border-top-width:1px;border-bottom-width:1px;border-right-width:1px;border-left-width:1px;border-color:var(--ast-global-color-5);border-style:solid;}.ast-builder-menu-1 .sub-menu .sub-menu{top:-1px;}.ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu,.ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper{margin-top:0px;}.ast-desktop .ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu:before,.ast-desktop .ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper:before{height:calc( 0px + 1px + 5px );}.ast-desktop .ast-builder-menu-1 .menu-item .sub-menu .menu-link{border-style:none;}@media (max-width:768px){.ast-header-break-point .ast-builder-menu-1 .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}.ast-builder-menu-1 .inline-on-mobile .menu-item.menu-item-has-children > .ast-menu-toggle{right:-15px;}.ast-builder-menu-1 .menu-item-has-children > .menu-link:after{content:unset;}.ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu,.ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper{margin-top:0;}}@media (max-width:544px){.ast-header-break-point .ast-builder-menu-1 .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}.ast-builder-menu-1 .main-header-menu > .menu-item > .sub-menu,.ast-builder-menu-1 .main-header-menu > .menu-item > .astra-full-megamenu-wrapper{margin-top:0;}}.ast-builder-menu-1{display:flex;}@media (max-width:768.99px){.ast-header-break-point .ast-builder-menu-1{display:flex;}}@media (max-width:544px){.ast-header-break-point .ast-builder-menu-1{display:flex;}}.ast-desktop .ast-menu-hover-style-underline > .menu-item > .menu-link:before,.ast-desktop .ast-menu-hover-style-overline > .menu-item > .menu-link:before {content: "";position: absolute;width: 100%;right: 50%;height: 1px;background-color: transparent;transform: scale(0,0) translate(-50%,0);transition: transform .3s ease-in-out,color .0s ease-in-out;}.ast-desktop .ast-menu-hover-style-underline > .menu-item:hover > .menu-link:before,.ast-desktop .ast-menu-hover-style-overline > .menu-item:hover > .menu-link:before {width: calc(100% - 1.2em);background-color: currentColor;transform: scale(1,1) translate(50%,0);}.ast-desktop .ast-menu-hover-style-underline > .menu-item > .menu-link:before {bottom: 0;}.ast-desktop .ast-menu-hover-style-overline > .menu-item > .menu-link:before {top: 0;}.ast-desktop .ast-menu-hover-style-zoom > .menu-item > .menu-link:hover {transition: all .3s ease;transform: scale(1.2);}.ast-social-stack-desktop .ast-builder-social-element,.ast-social-stack-tablet .ast-builder-social-element,.ast-social-stack-mobile .ast-builder-social-element {margin-top: 6px;margin-bottom: 6px;}.social-show-label-true .ast-builder-social-element {width: auto;padding: 0 0.4em;}[data-section^="section-fb-social-icons-"] .footer-social-inner-wrap {text-align: center;}.ast-footer-social-wrap {width: 100%;}
70.ast-footer-social-wrap .ast-builder-social-element:first-child {margin-left: 0;}.ast-footer-social-wrap .ast-builder-social-element:last-child {margin-right: 0;}.ast-header-social-wrap .ast-builder-social-element:first-child {margin-left: 0;}.ast-header-social-wrap .ast-builder-social-element:last-child {margin-right: 0;}.ast-builder-social-element {line-height: 1;color: var(--ast-global-color-2);background: transparent;vertical-align: middle;transition: all 0.01s;margin-left: 6px;margin-right: 6px;justify-content: center;align-items: center;}.ast-builder-social-element .social-item-label {padding-left: 6px;}.ast-header-social-1-wrap .ast-builder-social-element,.ast-header-social-1-wrap .social-show-label-true .ast-builder-social-element{margin-left:15px;margin-right:15px;}.ast-header-social-1-wrap .ast-builder-social-element svg{width:18px;height:18px;}.ast-header-social-1-wrap .ast-social-color-type-custom .social-item-label{color:#ff4d4d;}.ast-header-social-1-wrap .ast-builder-social-element:hover .social-item-label{color:var(--ast-global-color-0);}@media (max-width:768px){.ast-header-social-1-wrap .ast-builder-social-element{margin-left:15px;margin-right:15px;}.ast-header-social-1-wrap{margin-top:20px;margin-bottom:20px;margin-left:20px;margin-right:20px;}.ast-header-social-1-wrap .ast-social-color-type-custom svg{fill:var(--ast-global-color-2);}.ast-header-social-1-wrap .ast-social-color-type-custom .ast-builder-social-element:hover{color:var(--ast-global-color-0);}.ast-header-social-1-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg{fill:var(--ast-global-color-0);}.ast-header-social-1-wrap .ast-social-color-type-custom .social-item-label{color:var(--ast-global-color-2);}.ast-header-social-1-wrap .ast-builder-social-element:hover .social-item-label{color:var(--ast-global-color-0);}}.ast-builder-layout-element[data-section="section-hb-social-icons-1"]{display:flex;}@media (max-width:768.99px){.ast-header-break-point .ast-builder-layout-element[data-section="section-hb-social-icons-1"]{display:flex;}}@media (max-width:544px){.ast-header-break-point .ast-builder-layout-element[data-section="section-hb-social-icons-1"]{display:flex;}}.site-below-footer-wrap{padding-top:20px;padding-bottom:20px;}.site-below-footer-wrap[data-section="section-below-footer-builder"]{background-image:none;min-height:30px;border-style:solid;border-width:0px;border-top-width:1px;border-top-color:var(--ast-global-color-3);}.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row{max-width:1200px;min-height:30px;margin-left:auto;margin-right:auto;}.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row,.site-below-footer-wrap[data-section="section-below-footer-builder"] .site-footer-section{align-items:center;}.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-inline .site-footer-section{display:flex;margin-bottom:0;}.ast-builder-grid-row-2-equal .ast-builder-grid-row{grid-template-columns:repeat( 2,1fr );}@media (max-width:768px){.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-tablet-inline .site-footer-section{display:flex;margin-bottom:0;}.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-tablet-stack .site-footer-section{display:block;margin-bottom:10px;}.ast-builder-grid-row-container.ast-builder-grid-row-tablet-2-equal .ast-builder-grid-row{grid-template-columns:repeat( 2,1fr );}}@media (max-width:544px){.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-mobile-inline .site-footer-section{display:flex;margin-bottom:0;}.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-mobile-stack .site-footer-section{display:block;margin-bottom:10px;}.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row{grid-template-columns:1fr;}}.site-below-footer-wrap[data-section="section-below-footer-builder"]{padding-top:30px;padding-bottom:30px;}@media (max-width:768px){.site-below-footer-wrap[data-section="section-below-footer-builder"]{padding-left:30px;padding-right:30px;}}.site-below-footer-wrap[data-section="section-below-footer-builder"]{display:grid;}@media (max-width:768.99px){.ast-header-break-point .site-below-footer-wrap[data-section="section-below-footer-builder"]{display:grid;}}@media (max-width:544px){.ast-header-break-point .site-below-footer-wrap[data-section="section-below-footer-builder"]{display:grid;}}
70.ast-builder-html-element img.alignnone{display:inline-block;}.ast-builder-html-element p:first-child{margin-top:0;}.ast-builder-html-element p:last-child{margin-bottom:0;}.ast-header-break-point .main-header-bar .ast-builder-html-element{line-height:1.85714285714286;}.footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element{color:var(--ast-global-color-4);font-size:14px;font-size:0.875rem;}.footer-widget-area[data-section="section-fb-html-1"]{font-size:14px;font-size:0.875rem;}.footer-widget-area[data-section="section-fb-html-1"]{display:block;}@media (max-width:768.99px){.ast-header-break-point .footer-widget-area[data-section="section-fb-html-1"]{display:block;}}@media (max-width:544px){.ast-header-break-point .footer-widget-area[data-section="section-fb-html-1"]{display:block;}}.footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element{text-align:right;}@media (max-width:768px){.footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element{text-align:right;}}@media (max-width:544px){.footer-widget-area[data-section="section-fb-html-1"] .ast-builder-html-element{text-align:center;}}.ast-footer-copyright{text-align:left;}.ast-footer-copyright.site-footer-focus-item {color:var(--ast-global-color-4);}@media (max-width:768px){.ast-footer-copyright{text-align:left;}}@media (max-width:544px){.ast-footer-copyright{text-align:center;}}.ast-footer-copyright.site-footer-focus-item {font-size:14px;font-size:0.875rem;}.ast-footer-copyright.ast-builder-layout-element{display:flex;}@media (max-width:768.99px){.ast-header-break-point .ast-footer-copyright.ast-builder-layout-element{display:flex;}}@media (max-width:544px){.ast-header-break-point .ast-footer-copyright.ast-builder-layout-element{display:flex;}}.ast-social-stack-desktop .ast-builder-social-element,.ast-social-stack-tablet .ast-builder-social-element,.ast-social-stack-mobile .ast-builder-social-element {margin-top: 6px;margin-bottom: 6px;}.social-show-label-true .ast-builder-social-element {width: auto;padding: 0 0.4em;}[data-section^="section-fb-social-icons-"] .footer-social-inner-wrap {text-align: center;}.ast-footer-social-wrap {width: 100%;}.ast-footer-social-wrap .ast-builder-social-element:first-child {margin-left: 0;}.ast-footer-social-wrap .ast-builder-social-element:last-child {margin-right: 0;}.ast-header-social-wrap .ast-builder-social-element:first-child {margin-left: 0;}.ast-header-social-wrap .ast-builder-social-element:last-child {margin-right: 0;}.ast-builder-social-element {line-height: 1;color: var(--ast-global-color-2);background: transparent;vertical-align: middle;transition: all 0.01s;margin-left: 6px;margin-right: 6px;justify-content: center;align-items: center;}.ast-builder-social-element .social-item-label {padding-left: 6px;}.ast-footer-social-1-wrap .ast-builder-social-element,.ast-footer-social-1-wrap .social-show-label-true .ast-builder-social-element{margin-left:7px;margin-right:7px;padding:8px;}.ast-footer-social-1-wrap .ast-builder-social-element svg{width:18px;height:18px;}.ast-footer-social-1-wrap .ast-social-icon-image-wrap{margin:8px;}.ast-footer-social-1-wrap .ast-social-color-type-custom svg{fill:var(--ast-global-color-5);}.ast-footer-social-1-wrap .ast-social-color-type-custom .ast-builder-social-element{background:var(--ast-global-color-0);}.ast-footer-social-1-wrap .ast-social-color-type-custom .ast-builder-social-element:hover{color:var(--ast-global-color-5);background:var(--ast-global-color-1);}.ast-footer-social-1-wrap .ast-social-color-type-custom .ast-builder-social-element:hover svg{fill:var(--ast-global-color-5);}.ast-footer-social-1-wrap .ast-social-color-type-custom .social-item-label{color:var(--ast-global-color-5);}.ast-footer-social-1-wrap .ast-builder-social-element:hover .social-item-label{color:var(--ast-global-color-5);}[data-section="section-fb-social-icons-1"] .footer-social-inner-wrap{text-align:left;}@media (max-width:768px){.ast-footer-social-1-wrap{margin-left:0px;}[data-section="section-fb-social-icons-1"] .footer-social-inner-wrap{text-align:left;}}@media (max-width:544px){.ast-footer-social-1-wrap{margin-left:0px;}[data-section="section-fb-social-icons-1"] .footer-social-inner-wrap{text-align:left;}}
70.ast-builder-layout-element[data-section="section-fb-social-icons-1"]{display:flex;}@media (max-width:768.99px){.ast-header-break-point .ast-builder-layout-element[data-section="section-fb-social-icons-1"]{display:flex;}}@media (max-width:544px){.ast-header-break-point .ast-builder-layout-element[data-section="section-fb-social-icons-1"]{display:flex;}}.site-footer{background-color:var(--ast-global-color-8);background-image:none;}.site-primary-footer-wrap{padding-top:45px;padding-bottom:45px;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"]{background-image:none;border-style:solid;border-width:0px;border-top-width:1px;border-top-color:#e6e6e6;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row{max-width:1200px;margin-left:auto;margin-right:auto;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row,.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .site-footer-section{align-items:flex-start;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-inline .site-footer-section{display:flex;margin-bottom:0;}.ast-builder-grid-row-4-equal .ast-builder-grid-row{grid-template-columns:repeat( 4,1fr );}@media (max-width:768px){.site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-tablet-inline .site-footer-section{display:flex;margin-bottom:0;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-tablet-stack .site-footer-section{display:block;margin-bottom:10px;}.ast-builder-grid-row-container.ast-builder-grid-row-tablet-2-equal .ast-builder-grid-row{grid-template-columns:repeat( 2,1fr );}}@media (max-width:544px){.site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-mobile-inline .site-footer-section{display:flex;margin-bottom:0;}.site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-mobile-stack .site-footer-section{display:block;margin-bottom:10px;}.ast-builder-grid-row-container.ast-builder-grid-row-mobile-full .ast-builder-grid-row{grid-template-columns:1fr;}}.site-primary-footer-wrap[data-section="section-primary-footer-builder"]{padding-top:80px;padding-bottom:80px;}@media (max-width:768px){.site-primary-footer-wrap[data-section="section-primary-footer-builder"]{padding-top:50px;padding-bottom:50px;padding-left:30px;padding-right:60px;}}.site-primary-footer-wrap[data-section="section-primary-footer-builder"]{display:grid;}@media (max-width:768.99px){.ast-header-break-point .site-primary-footer-wrap[data-section="section-primary-footer-builder"]{display:grid;}}@media (max-width:544px){.ast-header-break-point .site-primary-footer-wrap[data-section="section-primary-footer-builder"]{display:grid;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner{text-align:left;}@media (max-width:768px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner{text-align:left;}}@media (max-width:544px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner{text-align:left;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner{text-align:left;}@media (max-width:768px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner{text-align:left;}}@media (max-width:544px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner{text-align:left;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner{text-align:left;}@media (max-width:768px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner{text-align:left;}}@media (max-width:544px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner{text-align:left;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner{text-align:left;}@media (max-width:768px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner{text-align:left;}}@media (max-width:544px){.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner{text-align:left;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner{color:var(--ast-global-color-5);font-size:14px;font-size:0.875rem;}.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"]{display:block;}@media (max-width:768.99px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"]{display:block;}}@media (max-width:544px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-1"]{display:block;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner a{color:var(--ast-global-color-5);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner a:hover{color:var(--ast-global-color-4);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-title,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] h6,.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] .widget-area h6{color:var(--ast-global-color-5);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"]{display:block;}@media (max-width:768.99px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"]{display:block;}}@media (max-width:544px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"]{display:block;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner a{color:var(--ast-global-color-5);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner a:hover{color:var(--ast-global-color-4);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-title,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] h6,.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"] .widget-area h6{color:var(--ast-global-color-5);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{display:block;}@media (max-width:768.99px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{display:block;}}@media (max-width:544px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-3"]{display:block;}}.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner{color:var(--ast-global-color-4);font-size:14px;font-size:0.875rem;}.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-title,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h1,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h2,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h3,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h4,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h5,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] h6,.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"] .widget-area h6{color:var(--ast-global-color-5);}.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"]{display:block;}@media (max-width:768.99px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-4"]{display:block;}}@media (max-width:544px){.ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-4"]{display:block;}}.elementor-widget-heading .elementor-heading-title{margin:0;}.elementor-page .ast-menu-toggle{color:unset;background:unset;}.elementor-post.elementor-grid-item.hentry{margin-bottom:0;}.woocommerce div.product .elementor-element.elementor-products-grid .related.products ul.products li.product,.elementor-element .elementor-wc-products .woocommerce[class*='columns-'] ul.products li.product{width:auto;margin:0;float:none;}body .elementor hr{background-color:#ccc;margin:0;}.ast-left-sidebar .elementor-section.elementor-section-stretched,.ast-right-sidebar .elementor-section.elementor-section-stretched{max-width:100%;left:0 !important;}.elementor-posts-container [CLASS*="ast-width-"]{width:100%;}.elementor-template-full-width .ast-container{display:block;}.elementor-screen-only,.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{top:0 !important;}@media (max-width:544px){.elementor-element .elementor-wc-products .woocommerce[class*="columns-"] ul.products li.product{width:auto;margin:0;}.elementor-element .woocommerce .woocommerce-result-count{float:none;}}.ast-header-break-point .main-header-bar{border-bottom-width:0px;}@media (min-width:769px){.main-header-bar{border-bottom-width:0px;}}.ast-flex{-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;}.main-header-bar{padding:1em 0;}.ast-site-identity{padding:0;}.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container{-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;}.header-main-layout-1 .ast-flex.main-header-container, .header-main-layout-3 .ast-flex.main-header-container{-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;}.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type svg{top:.2em;margin-top:0px;margin-left:0px;width:.65em;transform:translate(0, -2px) rotateZ(270deg);}.ast-mobile-popup-content .ast-submenu-expanded > .ast-menu-toggle{transform:rotateX(180deg);overflow-y:auto;}
70@media (min-width:769px){.ast-builder-menu .main-navigation > ul > li:last-child a{margin-right:0;}}.ast-separate-container .ast-article-inner{background-color:var(--ast-global-color-5);background-image:none;}.ast-separate-container .ast-article-single:not(.ast-related-post), .ast-separate-container .error-404, .ast-separate-container .no-results, .single.ast-separate-container .ast-author-meta, .ast-separate-container .related-posts-title-wrapper, .ast-separate-container .comments-count-wrapper, .ast-box-layout.ast-plain-container .site-content, .ast-padded-layout.ast-plain-container .site-content, .ast-separate-container .ast-archive-description, .ast-separate-container .comments-area .comment-respond, .ast-separate-container .comments-area .ast-comment-list li, .ast-separate-container .comments-area .comments-title{background-color:var(--ast-global-color-5);background-image:none;}.ast-separate-container.ast-two-container #secondary .widget{background-color:var(--ast-global-color-5);background-image:none;} 71 #ast-scroll-top { 72 display: none; 73 position: fixed; 74 text-align: center; 75 cursor: pointer; 76 z-index: 99; 77 width: 2.1em; 78 height: 2.1em; 79 line-height: 2.1; 80 color: #ffffff; 81 border-radius: 2px; 82 content: ""; 83 outline: inherit; 84 } 85 @media (min-width: 769px) { 86 #ast-scroll-top { 87 content: "769"; 88 } 89 } 90 #ast-scroll-top .ast-icon.icon-arrow svg { 91 margin-left: 0px; 92 vertical-align: middle; 93 transform: translate(0, -20%) rotate(180deg); 94 width: 1.6em; 95 } 96 .ast-scroll-to-top-right { 97 right: 30px; 98 bottom: 30px; 99 } 100 .ast-scroll-to-top-left { 101 left: 30px; 102 bottom: 30px; 103 } 104 #ast-scroll-top{color:var(--ast-global-color-5);background-color:var(--ast-global-color-8);font-size:15px;border-top-left-radius:30px;border-top-right-radius:30px;border-bottom-right-radius:30px;border-bottom-left-radius:30px;}#ast-scroll-top:hover{color:var(--ast-global-color-5);background-color:#000000;}@media (max-width:768px){#ast-scroll-top .ast-icon.icon-arrow svg{width:1em;}}.ast-mobile-header-content > *,.ast-desktop-header-content > * {padding: 10px 0;height: auto;}.ast-mobile-header-content > *:first-child,.ast-desktop-header-content > *:first-child {padding-top: 10px;}.ast-mobile-header-content > .ast-builder-menu,.ast-desktop-header-content > .ast-builder-menu {padding-top: 0;}.ast-mobile-header-content > *:last-child,.ast-desktop-header-content > *:last-child {padding-bottom: 0;}.ast-mobile-header-content .ast-search-menu-icon.ast-inline-search label,.ast-desktop-header-content .ast-search-menu-icon.ast-inline-search label {width: 100%;}.ast-desktop-header-content .main-header-bar-navigation .ast-submenu-expanded > .ast-menu-toggle::before {transform: rotateX(180deg);}#ast-desktop-header .ast-desktop-header-content,.ast-mobile-header-content .ast-search-icon,.ast-desktop-header-content .ast-search-icon,.ast-mobile-header-wrap .ast-mobile-header-content,.ast-main-header-nav-open.ast-popup-nav-open .ast-mobile-header-wrap .ast-mobile-header-content,.ast-main-header-nav-open.ast-popup-nav-open .ast-desktop-header-content {display: none;}.ast-main-header-nav-open.ast-header-break-point #ast-desktop-header .ast-desktop-header-content,.ast-main-header-nav-open.ast-header-break-point .ast-mobile-header-wrap .ast-mobile-header-content {display: block;}.ast-desktop .ast-desktop-header-content .astra-menu-animation-slide-up > .menu-item > .sub-menu,.ast-desktop .ast-desktop-header-content .astra-menu-animation-slide-up > .menu-item .menu-item > .sub-menu,.ast-desktop .ast-desktop-header-content .astra-menu-animation-slide-down > .menu-item > .sub-menu,.ast-desktop .ast-desktop-header-content .astra-menu-animation-slide-down > .menu-item .menu-item > .sub-menu,.ast-desktop .ast-desktop-header-content .astra-menu-animation-fade > .menu-item > .sub-menu,.ast-desktop .ast-desktop-header-content .astra-menu-animation-fade > .menu-item .menu-item > .sub-menu {opacity: 1;visibility: visible;}.ast-hfb-header.ast-default-menu-enable.ast-header-break-point .ast-mobile-header-wrap .ast-mobile-header-content .main-header-bar-navigation {width: unset;margin: unset;}.ast-mobile-header-content.content-align-flex-end .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle,.ast-desktop-header-content.content-align-flex-end .main-header-bar-navigation .menu-item-has-children > .ast-menu-toggle {left: calc( 20px - 0.907em);right: auto;}.ast-mobile-header-content .ast-search-menu-icon,.ast-mobile-header-content .ast-search-menu-icon.slide-search,.ast-desktop-header-content .ast-search-menu-icon,.ast-desktop-header-content .ast-search-menu-icon.slide-search {width: 100%;position: relative;display: block;right: auto;transform: none;}.ast-mobile-header-content .ast-search-menu-icon.slide-search .search-form,.ast-mobile-header-content .ast-search-menu-icon .search-form,.ast-desktop-header-content .ast-search-menu-icon.slide-search .search-form,.ast-desktop-header-content .ast-search-menu-icon .search-form {right: 0;visibility: visible;opacity: 1;position: relative;top: auto;transform: none;padding: 0;display: block;overflow: hidden;}.ast-mobile-header-content .ast-search-menu-icon.ast-inline-search .search-field,.ast-mobile-header-content .ast-search-menu-icon .search-field,.ast-desktop-header-content .ast-search-menu-icon.ast-inline-search .search-field,.ast-desktop-header-content .ast-search-menu-icon .search-field {width: 100%;padding-right: 5.5em;}.ast-mobile-header-content .ast-search-menu-icon .search-submit,.ast-desktop-header-content .ast-search-menu-icon .search-submit {display: block;position: absolute;height: 100%;top: 0;right: 0;padding: 0 1em;border-radius: 0;}.ast-hfb-header.ast-default-menu-enable.ast-header-break-point .ast-mobile-header-wrap .ast-mobile-header-content .main-header-bar-navigation ul .sub-menu .menu-link {padding-left: 30px;}.ast-hfb-header.ast-default-menu-enable.ast-header-break-point .ast-mobile-header-wrap .ast-mobile-header-content .main-header-bar-navigation .sub-menu .menu-item .menu-item .menu-link {padding-left: 40px;}.ast-mobile-popup-drawer.active .ast-mobile-popup-inner{background-color:;;}.ast-mobile-header-wrap .ast-mobile-header-content, .ast-desktop-header-content{background-color:;;}.ast-mobile-popup-content > *, .ast-mobile-header-content > *, .ast-desktop-popup-content > *, .ast-desktop-header-content > *{padding-top:0px;padding-bottom:0px;}
104.content-align-flex-start .ast-builder-layout-element{justify-content:flex-start;}.content-align-flex-start .main-header-menu{text-align:left;}.ast-mobile-popup-drawer.active .menu-toggle-close{color:#3a3a3a;}.ast-mobile-header-wrap .ast-primary-header-bar,.ast-primary-header-bar .site-primary-header-wrap{min-height:80px;}.ast-desktop:not(:has(.ast-header-sticked)) .ast-primary-header-bar .main-header-menu > .menu-item{line-height:80px;}.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar,.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-below-header-bar,.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-above-header-bar{padding-left:20px;padding-right:20px;}.ast-header-break-point .ast-primary-header-bar{border-bottom-width:0px;border-bottom-style:solid;}@media (min-width:769px){.ast-primary-header-bar{border-bottom-width:0px;border-bottom-style:solid;}}.ast-primary-header-bar{display:block;}@media (max-width:768.99px){.ast-header-break-point .ast-primary-header-bar{display:grid;}}@media (max-width:544px){.ast-header-break-point .ast-primary-header-bar{display:grid;}}[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill{color:var(--ast-global-color-5);border:none;background:var(--ast-global-color-0);}[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg{width:20px;height:20px;
104fill:var(--ast-global-color-5);}[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-wrap .mobile-menu{color:var(--ast-global-color-5);}.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}.ast-builder-menu-mobile .main-navigation .menu-item-has-children > .menu-link:after{content:unset;}.ast-hfb-header .ast-builder-menu-mobile .main-header-menu, .ast-hfb-header .ast-builder-menu-mobile .main-navigation .menu-item .menu-link, .ast-hfb-header .ast-builder-menu-mobile .main-navigation .menu-item .sub-menu .menu-link{border-style:none;}.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}@media (max-width:768px){.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}.ast-builder-menu-mobile .main-navigation .menu-item-has-children > .menu-link:after{content:unset;}}@media (max-width:544px){.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle{top:0;}}.ast-builder-menu-mobile .main-navigation{display:block;}@media (max-width:768.99px){.ast-header-break-point .ast-builder-menu-mobile .main-navigation{display:block;}}@media (max-width:544px){.ast-header-break-point .ast-builder-menu-mobile .main-navigation{display:block;}}:root{--e-global-color-astglobalcolor0:#3b4fe4;--e-global-color-astglobalcolor1:#243673;--e-global-color-astglobalcolor2:#1a1a1a;--e-global-color-astglobalcolor3:#6e7180;--e-global-color-astglobalcolor4:#e2e5e7;--e-global-color-astglobalcolor5:#ffffff;--e-global-color-astglobalcolor6:#3c3c3c;--e-global-color-astglobalcolor7:#1a1a1a;--e-global-color-astglobalcolor8:#000000;} 105</style> 106<style type="text/css">@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/s/cairo/5.2.7/latin/400/normal.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;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/s/cairo/5.2.7/latin-ext/400/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/s/cairo/5.2.7/arabic/400/normal.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,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:600;src:url(/cf-fonts/s/cairo/5.2.7/latin/600/normal.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;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:600;src:url(/cf-fonts/s/cairo/5.2.7/arabic/600/normal.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,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:600;src:url(/cf-fonts/s/cairo/5.2.7/latin-ext/600/normal.woff2);
106unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}</style> 107<link rel='stylesheet' id='astra-menu-animation-css' href='https://cinemagicmaker.ai/wp-content/themes/astra/assets/css/minified/menu-animation.min.css?ver=4.14.0' media='all' /> 108<style id='wp-emoji-styles-inline-css'> 109 110 img.wp-smiley, img.emoji { 111 display: inline !important; 112 border: none !important; 113 box-shadow: none !important; 114 height: 1em !important; 115 width: 1em !important; 116 margin: 0 0.07em !important; 117 vertical-align: -0.1em !important; 118 background: none !important; 119 padding: 0 !important; 120 } 121</style> 122<link rel='stylesheet' id='hostinger-reach-subscription-block-css' href='https://cinemagicmaker.ai/wp-content/plugins/hostinger-reach/frontend/dist/blocks/subscription.css?ver=1790821913' media='all' /> 123<style id='global-styles-inline-css'> 124:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--ast-global-color-0: var(--ast-global-color-0);--wp--preset--color--ast-global-color-1: var(--ast-global-color-1);--wp--preset--color--ast-global-color-2: var(--ast-global-color-2);--wp--preset--color--ast-global-color-3: var(--ast-global-color-3);--wp--preset--color--ast-global-color-4: var(--ast-global-color-4);--wp--preset--color--ast-global-color-5: var(--ast-global-color-5);--wp--preset--color--ast-global-color-6: var(--ast-global-color-6);--wp--preset--color--ast-global-color-7: var(--ast-global-color-7);--wp--preset--color--ast-global-color-8: var(--ast-global-color-8);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
124--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:root { --wp--style--global--content-size: var(--wp--custom--ast-content-width-size);--wp--style--global--wide-size: var(--wp--custom--ast-wide-width-size); }:where(body) { margin: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 24px; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 24px; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 24px;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 24px;}:root :where(.is-layout-grid){gap: 24px;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}a:where(:not(.wp-element-button)){text-decoration: none;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;line-height: inherit;padding: calc(0.667em + 2px) calc(1.333em + 2px);text-decoration: none;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-ast-global-color-0-color{color: var(--wp--preset--color--ast-global-color-0) !important;}.has-ast-global-color-1-color{color: var(--wp--preset--color--ast-global-color-1) !important;}.has-ast-global-color-2-color{color: var(--wp--preset--color--ast-global-color-2) !important;}.has-ast-global-color-3-color{color: var(--wp--preset--color--ast-global-color-3) !important;}.has-ast-global-color-4-color{color: var(--wp--preset--color--ast-global-color-4) !important;}.has-ast-global-color-5-color{color: var(--wp--preset--color--ast-global-color-5) !important;}.has-ast-global-color-6-color{color: var(--wp--preset--color--ast-global-color-6) !important;}.has-ast-global-color-7-color{color: var(--wp--preset--color--ast-global-color-7) !important;}.has-ast-global-color-8-color{color: var(--wp--preset--color--ast-global-color-8) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-ast-global-color-0-background-color{background-color: var(--wp--preset--color--ast-global-color-0) !important;}.has-ast-global-color-1-background-color{background-color: var(--wp--preset--color--ast-global-color-1) !important;}.has-ast-global-color-2-background-color{background-color: var(--wp--preset--color--ast-global-color-2) !important;}.has-ast-global-color-3-background-color{background-color: var(--wp--preset--color--ast-global-color-3) !important;}.has-ast-global-color-4-background-color{background-color: var(--wp--preset--color--ast-global-color-4) !important;}.has-ast-global-color-5-background-color{background-color: var(--wp--preset--color--ast-global-color-5) !important;}.has-ast-global-color-6-background-color{background-color: var(--wp--preset--color--ast-global-color-6) !important;}.has-ast-global-color-7-background-color{background-color: var(--wp--preset--color--ast-global-color-7) !important;}.has-ast-global-color-8-background-color{background-color: var(--wp--preset--color--ast-global-color-8) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-ast-global-color-0-border-color{border-color: var(--wp--preset--color--ast-global-color-0) !important;}.has-ast-global-color-1-border-color{border-color: var(--wp--preset--color--ast-global-color-1) !important;}.has-ast-global-color-2-border-color{border-color: var(--wp--preset--color--ast-global-color-2) !important;}.has-ast-global-color-3-border-color{border-color: var(--wp--preset--color--ast-global-color-3) !important;}.has-ast-global-color-4-border-color{border-color: var(--wp--preset--color--ast-global-color-4) !important;}.has-ast-global-color-5-border-color{border-color: var(--wp--preset--color--ast-global-color-5) !important;}.has-ast-global-color-6-border-color{border-color: var(--wp--preset--color--ast-global-color-6) !important;}.has-ast-global-color-7-border-color{border-color: var(--wp--preset--color--ast-global-color-7) !important;}.has-ast-global-color-8-border-color{border-color: var(--wp--preset--color--ast-global-color-8) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
124.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 125:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} 126</style> 127<style id='tpae-display-conditions-inline-css'> 128*:not(.elementor-editor-active) .plus-conditions--hidden { display: none; } 129</style> 130<link rel='stylesheet' id='elementor-frontend-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/frontend.min.css?ver=4.1.4' media='all' /> 131<link rel='stylesheet' id='widget-image-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/widget-image.min.css?ver=4.1.4' media='all' /> 132<link rel='stylesheet' id='widget-nav-menu-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/widget-nav-menu.min.css?ver=4.2.2' media='all' /> 133<link rel='stylesheet' id='widget-heading-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/widget-heading.min.css?ver=4.1.4' media='all' /> 134<link rel='stylesheet' id='elementor-post-532-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-532.css?ver=1790995027' media='all' /> 135<link rel='stylesheet' id='font-awesome-5-all-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/font-awesome/css/all.min.css?ver=4.1.4' media='all' /> 136<link rel='stylesheet' id='font-awesome-4-shim-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/font-awesome/css/v4-shims.min.css?ver=4.1.4' media='all' /> 137<link rel='stylesheet' id='e-motion-fx-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/modules/motion-fx.min.css?ver=4.2.2' media='all' /> 138<link rel='stylesheet' id='elementor-post-8826-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-8826.css?ver=1790995027' media='all' /> 139<link rel='stylesheet' id='elementor-post-7385-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-7385.css?ver=1790995027' media='all' /> 140<link rel='stylesheet' id='elementor-post-8444-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-8444.css?ver=1790995027' media='all' /> 141<link rel='stylesheet' id='trp-language-switcher-v2-css' href='https://cinemagicmaker.ai/wp-content/plugins/translatepress-multilingual/assets/css/trp-language-switcher-v2.css?ver=3.3.7' media='all' /> 142<style id='elementor-pro-custom-fonts-inline-css'> 143@font-face { 144 font-family: 'Neulis'; 145 font-style: normal; 146 font-weight: 100; 147 font-display: auto; 148 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/53814.ttf') format('truetype'); 149} 150@font-face { 151 font-family: 'Neulis'; 152 font-style: normal; 153 font-weight: 200; 154 font-display: auto; 155 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/53806.ttf') format('truetype'); 156} 157@font-face { 158 font-family: 'Neulis'; 159 font-style: normal; 160 font-weight: 300; 161 font-display: auto; 162 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Light.ttf') format('truetype'); 163} 164@font-face { 165 font-family: 'Neulis'; 166 font-style: normal; 167 font-weight: 400; 168 font-display: auto; 169 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Normal.ttf') format('truetype'); 170} 171@font-face { 172 font-family: 'Neulis'; 173 font-style: normal; 174 font-weight: 500; 175 font-display: auto; 176 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/medium.ttf') format('truetype'); 177} 178@font-face { 179 font-family: 'Neulis'; 180 font-style: normal; 181 font-weight: 600; 182 font-display: auto; 183 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/SemiBold.ttf') format('truetype'); 184} 185@font-face { 186 font-family: 'Neulis'; 187 font-style: normal; 188 font-weight: 700; 189 font-display: auto; 190 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Bold.ttf') format('truetype'); 191} 192@font-face { 193 font-family: 'Neulis'; 194 font-style: normal; 195 font-weight: 800; 196 font-display: auto; 197 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/EBold.ttf') format('truetype'); 198} 199@font-face { 200 font-family: 'Neulis'; 201 font-style: normal; 202 font-weight: 900; 203 font-display: auto; 204 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Black.ttf') format('truetype'); 205} 206 207</style> 208<link rel='stylesheet' id='eael-general-css' href='https://cinemagicmaker.ai/wp-content/plugins/essential-addons-for-elementor-lite/assets/front-end/css/view/general.min.css?ver=6.8.5' media='all' /> 209<style type="text/css">@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/v/cairo/5.2.7/latin/wght/normal.woff2);
209unicode-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;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/v/cairo/5.2.7/latin-ext/wght/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:400;src:url(/cf-fonts/v/cairo/5.2.7/arabic/wght/normal.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,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:700;src:url(/cf-fonts/v/cairo/5.2.7/arabic/wght/normal.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,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:700;src:url(/cf-fonts/v/cairo/5.2.7/latin/wght/normal.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;font-display:swap;}@font-face {font-family:'Cairo';font-style:normal;font-weight:700;src:url(/cf-fonts/v/cairo/5.2.7/latin-ext/wght/normal.woff2);unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-display:swap;}</style>
210<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/js/page-transitions.min.js?ver=4.2.2" id="page-transitions-js"></script>
vendor: 1 bytes, line 210
210
211<script id="jquery-core-js-extra"> 212var pysFacebookRest = {"restApiUrl":"https:\/\/cinemagicmaker.ai\/wp-json\/pys-facebook\/v1\/event","debug":""}; 213</script>
vendor: 1 bytes, line 213
213
214<script src="https://cinemagicmaker.ai/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
vendor: 1 bytes, line 214
214
215<script src="https://cinemagicmaker.ai/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
vendor: 1 bytes, line 215
215
216<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/font-awesome/js/v4-shims.min.js?ver=4.1.4" id="font-awesome-4-shim-js"></script>
vendor: 1 bytes, line 216
216
217<script src="https://cinemagicmaker.ai/wp-content/plugins/translatepress-multilingual/assets/js/trp-frontend-language-switcher.js?ver=3.3.7" id="trp-language-switcher-js-v2-js"></script>
217 218 219<!-- Google tag (gtag.js) snippet added by Site Kit --> 220<!-- Google Analytics snippet added by Site Kit -->
vendor: 58 bytes, lines 220-221
220 221<script src="https://www.googletagmanager.com/gtag/js?id=
221GT-TB64BCG
vendor: 40 bytes, line 221
221" id="google_gtagjs-js" async></script>
222<script id="google_gtagjs-js-after"> 223window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);} 224gtag("set","linker",{"domains":["cinemagicmaker.ai"]}); 225gtag("js", new Date()); 226gtag("set", "developer_id.dZTNiMT", true); 227gtag("config", "GT-TB64BCG", {"googlesitekit_post_type":"page"}); 228 window._googlesitekit = window._googlesitekit || {}; window._googlesitekit.throttledEvents = []; window._googlesitekit.gtagEvent = (name, data) => { var key = JSON.stringify( { name, data } ); if ( !! window._googlesitekit.throttledEvents[ key ] ) { return; } window._googlesitekit.throttledEvents[ key ] = true; setTimeout( () => { delete window._googlesitekit.throttledEvents[ key ]; }, 5 ); gtag( "event", name, { ...data, event_source: "site-kit" } ); }; 229</script>
229 230<link rel="https://api.w.org/" href="https://cinemagicmaker.ai/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://cinemagicmaker.ai/wp-json/wp/v2/pages/8826" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://cinemagicmaker.ai/xmlrpc.php?rsd" /> 231<meta name="generator" content="WordPress 6.8.10" /> 232<link rel='shortlink' href='https://cinemagicmaker.ai/' /> 233<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://cinemagicmaker.ai/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcinemagicmaker.ai%2F" /> 234<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://cinemagicmaker.ai/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fcinemagicmaker.ai%2F&format=xml" /> 235<meta name="generator" content="Site Kit by Google 1.187.0" />
235<script src="https://analytics.ahrefs.com/analytics.js" data-key="tgAseXOCr25EjtPoO0MNSw" async></script>
vendor: 2 bytes, line 235
235
236<script src="https://d2mvefebd70kbz.cloudfront.net/scripts/019edf42-0a72-7aaf-bce3-27d6ae6ae125.js" async></script>
236<link rel="alternate" hreflang="en-US" href="https://cinemagicmaker.ai/"/> 237<link rel="alternate" hreflang="ar" href="https://cinemagicmaker.ai/ar/"/> 238<link rel="alternate" hreflang="en" href="https://cinemagicmaker.ai/"/> 239<meta name="google-site-verification" content="OAXxr3VtNx65a8u_PViaQI6xa4t0GL7xKzLD1drNGu0"><meta name="generator" content="Elementor 4.1.4; features: e_font_icon_svg, additional_custom_breakpoints; settings: css_print_method-external, google_font-enabled, font_display-swap">
240<script> 241 (function () { 242 // tylko desktop: szerokoÅÄ okna co najmniej 1025px 243 if (!window.matchMedia("(min-width: 1025px)").matches) return; 244 245 function loadScript(src) { 246 return new Promise(function (resolve, reject) { 247 var s = document.createElement("script"); 248 s.src = src; 249 s.onload = resolve; 250 s.onerror = reject; 251 document.head.appendChild(s); 252 }); 253 } 254 255 // kolejnoÅÄ ma znaczenie: najpierw GSAP, potem pluginy 256 loadScript("https://cdn.jsdelivr.net/npm/[email protected]/dist/gsap.min.js") 257 .then(function () { 258 return loadScript("https://cdn.jsdelivr.net/npm/[email protected]/dist/ScrollTrigger.min.js"); 259 }) 260 .then(function () { 261 return loadScript("https://cdn.jsdelivr.net/npm/[email protected]/dist/SplitText.min.js"); 262 }) 263 .then(function () { 264 // tutaj możesz odpaliÄ swój kod GSAP/ScrollTrigger/SplitText 265 // initGSAPAnimations(); 266 }) 267 .catch(function (err) { 268 console.error("Problem z Åadowaniem GSAP:", err); 269 }); 270 })(); 271</script>
271 272 273 <style> 274 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload), 275 .e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * { 276 background-image: none !important; 277 } 278 @media screen and (max-height: 1024px) { 279 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload), 280 .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * { 281 background-image: none !important; 282 } 283 } 284 @media screen and (max-height: 640px) { 285 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload), 286 .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * { 287 background-image: none !important; 288 } 289 } 290 </style> 291 <style class="wpcode-css-snippet">/* ============================================================ 292 Cinemagic Inspire â WordPress Page Styles 293 Matches cinemagicmaker.ai design system 294 Primary: #3b4fe4 | Secondary: #243673 295 Font: Cairo (Google Fonts) + system fallbacks 296 ============================================================ */ 297 298/* ---------- Google Font ---------- */ 299/* Cairo is already loaded by the Astra/Elementor theme on cinemagicmaker.ai. 300 If deploying on a different site that doesn't load Cairo, uncomment below: 301 @import url('https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700;800&display=swap'); 302*/ 303 304/* ---------- Reset (scoped) ---------- */ 305.ci-inspire *, .ci-inspire *::before, .ci-inspire *::after { 306 box-sizing: border-box; 307 margin: 0; 308 padding: 0; 309} 310 311.ci-inspire { 312 font-family: 'Cairo', sans-serif; 313 background: #080808; 314 color: #6e7180; 315 line-height: 1.6; 316 -webkit-font-smoothing: antialiased; 317 -moz-osx-font-smoothing: grayscale; 318} 319 320/* ---------- Hero Section ---------- */ 321.ci-hero { 322 position: relative; 323 min-height: 95vh; 324 display: flex; 325 flex-direction: column; 326 align-items: center; 327 justify-content: center; 328 overflow: hidden; 329 background: #000; 330 padding: 9rem 1.5rem; 331} 332 333.ci-hero__particles { 334 position: absolute; 335 inset: 0; 336 width: 100%; 337 height: 100%; 338 border: 0; 339 z-index: 0; 340 pointer-events: none; 341} 342 343/* Hide 3D particles on mobile â prevents touch blocking and saves performance */ 344/* @media (max-width: 768px) { 345 .ci-hero__particles { display: none; } 346} */ 347 348.ci-hero__overlay { 349 position: absolute; 350 inset: 0; 351 background: rgba(0, 0, 0, 0.4); 352 pointer-events: none; 353 z-index: 1; 354} 355 356.ci-hero__content { 357 position: relative; 358 z-index: 10; 359 text-align: center; 360 max-width: 56rem; 361 margin: 0 auto; 362 pointer-events: none; 363 opacity: 0; 364 transform: translateY(2rem); 365 transition: opacity 1s ease, transform 1s ease; 366} 367 368.ci-hero__content.ci-visible { 369 opacity: 1; 370 transform: translateY(0); 371} 372 373/* Brand badge */ 374.ci-hero__badge { 375 display: inline-flex; 376 align-items: center; 377 gap: 0.5rem; 378 margin-bottom: 2rem; 379 padding: 0.375rem 1rem; 380 border-radius: 9999px; 381 border: 1px solid rgba(255, 255, 255, 0.1); 382 background: rgba(255, 255, 255, 0.05); 383 backdrop-filter: blur(8px); 384 -webkit-backdrop-filter: blur(8px); 385} 386 387.ci-hero__badge-dot { 388 width: 6px; 389 height: 6px; 390 border-radius: 50%; 391 background: #3b4fe4; 392 animation: ci-pulse 2s ease-in-out infinite; 393} 394 395@keyframes ci-pulse { 396 0%, 100% { opacity: 1; } 397 50% { opacity: 0.4; } 398} 399 400.ci-hero__badge-text { 401 font-size: 0.6875rem; 402 font-weight: 600; 403 letter-spacing: 0.2em; 404 text-transform: uppercase; 405 color: rgba(255, 255, 255, 0.5); 406} 407 408/* Title */ 409.ci-hero__title { 410 font-family: 'Cairo', sans-serif; 411 font-size: clamp(2.25rem, 5vw, 4.5rem); 412 font-weight: 700; 413 color: #f2f2f2; 414 margin-bottom: 1.5rem; 415 line-height: 1.15; 416 letter-spacing: -0.02em; 417} 418 419.ci-hero__title-gradient { 420 background-image: linear-gradient(135deg, #3b4fe4 0%, #6b7ff0 50%, #243673 100%); 421 -webkit-background-clip: text; 422 background-clip: text; 423 -webkit-text-fill-color: transparent; 424} 425 426/* Subtitle */ 427.ci-hero__subtitle { 428 font-size: clamp(1rem, 1.5vw, 1.25rem); 429 color: rgba(255, 255, 255, 0.4); 430 line-height: 1.7; 431 max-width: 42rem; 432 margin: 0 auto 3rem; 433 font-weight: 300; 434} 435 436/* Stats */ 437.ci-hero__stats { 438 display: flex; 439 align-items: center; 440 justify-content: center; 441 gap: 2rem; 442} 443 444@media (min-width: 768px) { 445 .ci-hero__stats { gap: 4rem; } 446} 447 448.ci-hero__stat-value { 449 font-size: clamp(1.5rem, 2vw, 1.875rem); 450 font-weight: 700;
451 color: #f2f2f2; 452} 453 454.ci-hero__stat-label { 455 font-size: 0.6875rem; 456 color: rgba(255, 255, 255, 0.3); 457 font-weight: 500; 458 letter-spacing: 0.05em; 459 text-transform: uppercase; 460 margin-top: 0.25rem; 461} 462 463/* Hero bottom fade */ 464.ci-hero__fade { 465 position: absolute; 466 bottom: 0; 467 left: 0; 468 right: 0; 469 height: 8rem; 470 background: linear-gradient(to top, #080808, transparent); 471 pointer-events: none; 472 z-index: 2; 473} 474 475/* ---------- Filters Bar ---------- */ 476.ci-filters { 477 position: sticky; 478 top: 0; 479 z-index: 10010; /* above Elementor fixed header (9999) */ 480 background: rgba(8, 8, 8, 0.8); 481 backdrop-filter: blur(24px); 482 -webkit-backdrop-filter: blur(24px); 483 border-bottom: 1px solid rgba(255, 255, 255, 0.06); 484 padding: 0.75rem 1rem; 485} 486 487.ci-filters__inner { 488 max-width: 80rem; 489 margin: 0 auto; 490} 491 492/* Search input */ 493.ci-filters__search-wrap { 494 position: relative; 495 margin-bottom: 0.75rem; 496} 497 498.ci-filters__search-icon { 499 position: absolute; 500 left: 1rem; 501 top: 50%; 502 transform: translateY(-50%); 503 width: 1rem; 504 height: 1rem; 505 color: rgba(255, 255, 255, 0.2); 506 pointer-events: none; 507} 508 509.ci-filters__search { 510 width: 100%; 511 background: rgba(255, 255, 255, 0.03); 512 border: 1px solid rgba(255, 255, 255, 0.08); 513 border-radius: 0.5rem; 514 padding: 0.625rem 3.5rem 0.625rem 2.75rem; 515 font-family: 'Cairo', sans-serif; 516 font-size: 0.875rem; 517 color: #f2f2f2; 518 outline: none; 519 transition: border-color 0.2s, background 0.2s; 520} 521 522.ci-filters__search::placeholder { color: rgba(255, 255, 255, 0.2); } 523 524.ci-filters__search:focus { 525 border-color: rgba(59, 79, 228, 0.6); 526 background: rgba(255, 255, 255, 0.05); 527} 528 529.ci-filters__count { 530 position: absolute; 531 right: 1rem; 532 top: 50%; 533 transform: translateY(-50%); 534 font-size: 0.75rem; 535 color: rgba(255, 255, 255, 0.2); 536 pointer-events: none; 537} 538 539/* Category pills */ 540.ci-filters__pills { 541 display: flex; 542 gap: 0.5rem; 543 overflow-x: auto; 544 padding-bottom: 0.25rem; 545 -ms-overflow-style: none; 546 scrollbar-width: none; 547} 548 549.ci-filters__pills::-webkit-scrollbar { display: none; } 550 551.ci-filters__pill { 552 flex-shrink: 0; 553 padding: 0.375rem 1rem; 554 border-radius: 0.375rem; 555 font-family: 'Cairo', sans-serif; 556 font-size: 0.75rem; 557 font-weight: 600; 558 letter-spacing: 0.02em; 559 cursor: pointer; 560 border: 1px solid rgba(255, 255, 255, 0.07); 561 background: rgba(255, 255, 255, 0.03); 562 color: rgba(255, 255, 255, 0.4); 563 transition: all 0.2s; 564} 565 566.ci-filters__pill:hover { 567 background: rgba(255, 255, 255, 0.07); 568 color: rgba(255, 255, 255, 0.7); 569} 570 571.ci-filters__pill.ci-active { 572 background: #3b4fe4; 573 color: #fff; 574 border-color: rgba(59, 79, 228, 0.6); 575} 576 577/* ---------- Grid ---------- */ 578.ci-grid-section { 579 max-width: 80rem; 580 margin: 0 auto; 581 padding: 2.5rem 1rem; 582} 583 584.ci-grid { 585 display: grid; 586 grid-template-columns: repeat(2, 1fr); 587 gap: 1rem; 588} 589 590@media (min-width: 768px) { .ci-grid { grid-template-columns: repeat(3, 1fr); } } 591@media (min-width: 1024px) { .ci-grid { grid-template-columns: repeat(4, 1fr); } } 592@media (min-width: 1280px) { .ci-grid { grid-template-columns: repeat(5, 1fr); } } 593 594/* ---------- Prompt Card ---------- */ 595.ci-card { 596 position: relative; 597 background: #0e0e0e; 598 border-radius: 0.75rem; 599 overflow: hidden; 600 border: 1px solid rgba(255, 255, 255, 0.07); 601 cursor: pointer; 602 transition: transform 0.3s, border-color 0.3s, box-shadow 0.3s; 603} 604 605.ci-card:hover { 606 transform: translateY(-4px); 607 border-color: rgba(59, 79, 228, 0.4); 608 box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); 609} 610 611/* Card image */ 612.ci-card__img-wrap { 613 position: relative; 614 aspect-ratio: 1 / 1; 615 overflow: hidden; 616 background: rgba(255, 255, 255, 0.05); 617} 618 619.ci-card__img { 620 width: 100%; 621 height: 100%; 622 object-fit: cover; 623 transition: opacity 0.5s, transform 0.5s; 624} 625 626.ci-card__img.ci-loading { opacity: 0; } 627.ci-card__img.ci-loaded { opacity: 1; } 628.ci-card:hover .ci-card__img { transform: scale(1.05); } 629 630.ci-card__img-placeholder { 631 position: absolute; 632 inset: 0; 633 display: flex; 634 align-items: center; 635 justify-content: center; 636 color: rgba(255, 255, 255, 0.1); 637} 638 639.ci-card__img-skeleton { 640 position: absolute; 641 inset: 0; 642 background: rgba(255, 255, 255, 0.05); 643 animation: ci-shimmer 1.5s ease-in-out infinite; 644} 645 646@keyframes ci-shimmer { 647 0%, 100% { opacity: 1; } 648 50% { opacity: 0.5; } 649} 650 651/* Hover gradient overlay */ 652.ci-card__hover-overlay { 653 position: absolute; 654 inset: 0; 655 background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent, transparent); 656 opacity: 0; 657 transition: opacity 0.3s; 658} 659 660.ci-card:hover .ci-card__hover-overlay { opacity: 1; } 661 662/* Likes badge on hover */ 663.ci-card__likes { 664 position: absolute; 665 top: 0.75rem; 666 right: 0.75rem; 667 display: flex; 668 align-items: center; 669 gap: 0.25rem; 670 background: rgba(0, 0, 0, 0.6); 671 backdrop-filter: blur(8px); 672 -webkit-backdrop-filter: blur(8px); 673 color: rgba(255, 255, 255, 0.8); 674 font-size: 0.75rem; 675 padding: 0.25rem 0.5rem; 676 border-radius: 9999px; 677 opacity: 0; 678 transition: opacity 0.3s; 679} 680 681.ci-card:hover .ci-card__likes { opacity: 1; } 682 683.ci-card__likes svg { width: 0.75rem; height: 0.75rem; color: #f87171; } 684 685/* Image nav arrows */ 686.ci-card__nav-btn { 687 position: absolute; 688 top: 50%; 689 transform: translateY(-50%); 690 width: 1.75rem; 691 height: 1.75rem; 692 display: flex; 693 align-items: center; 694 justify-content: center; 695 border-radius: 50%; 696 background: rgba(0, 0, 0, 0.6); 697 backdrop-filter: blur(8px); 698 color: #fff; 699 border: none; 700 cursor: pointer; 701 opacity: 0; 702 transition: opacity 0.3s, background 0.2s; 703 z-index: 5; 704} 705 706.ci-card__nav-btn svg { width: 0.75rem; height: 0.75rem; } 707.ci-card:hover .ci-card__nav-btn { opacity: 1; } 708.ci-card__nav-btn:hover { background: rgba(0, 0, 0, 0.8); }
709.ci-card__nav-prev { left: 0.5rem; } 710.ci-card__nav-next { right: 0.5rem; } 711 712/* Image dots */ 713.ci-card__dots { 714 position: absolute; 715 bottom: 0.5rem; 716 left: 50%; 717 transform: translateX(-50%); 718 display: flex; 719 gap: 0.25rem; 720 opacity: 0; 721 transition: opacity 0.3s; 722 z-index: 5; 723} 724 725.ci-card:hover .ci-card__dots { opacity: 1; } 726 727.ci-card__dot { 728 width: 6px; 729 height: 6px; 730 border-radius: 50%; 731 background: rgba(255, 255, 255, 0.4); 732 border: none; 733 cursor: pointer; 734 padding: 0; 735 transition: all 0.2s; 736} 737 738.ci-card__dot.ci-active { 739 background: #fff; 740 transform: scale(1.25); 741} 742 743/* Category badge */ 744.ci-card__category { 745 position: absolute; 746 bottom: 0.75rem; 747 left: 0.75rem; 748 font-size: 0.75rem; 749 padding: 0.125rem 0.5rem; 750 border-radius: 0.25rem; 751 font-weight: 600; 752 color: #fff; 753 background: #3b4fe4; 754 opacity: 0; 755 transition: opacity 0.3s; 756} 757 758.ci-card:hover .ci-card__category { opacity: 1; } 759 760/* Card content */ 761.ci-card__body { 762 padding: 0.75rem; 763} 764 765.ci-card__text { 766 font-size: 0.75rem; 767 color: rgba(255, 255, 255, 0.5); 768 line-height: 1.5; 769 display: -webkit-box; 770 -webkit-line-clamp: 2; 771 -webkit-box-orient: vertical; 772 overflow: hidden; 773 margin-bottom: 0.75rem; 774} 775 776.ci-card__footer { 777 display: flex; 778 align-items: center; 779 justify-content: space-between; 780 gap: 0.5rem; 781} 782 783.ci-card__author { 784 display: flex; 785 align-items: center; 786 gap: 0.375rem; 787 min-width: 0; 788} 789 790.ci-card__avatar { 791 width: 1.25rem; 792 height: 1.25rem; 793 border-radius: 50%; 794 display: flex; 795 align-items: center; 796 justify-content: center; 797 flex-shrink: 0; 798 background: linear-gradient(135deg, #3b4fe4, #243673); 799 color: #fff; 800 font-size: 0.625rem; 801 font-weight: 700; 802} 803 804.ci-card__author-name { 805 font-size: 0.75rem; 806 color: rgba(255, 255, 255, 0.3); 807 overflow: hidden; 808 text-overflow: ellipsis; 809 white-space: nowrap; 810} 811 812.ci-card__try-btn { 813 flex-shrink: 0; 814 background: #3b4fe4; 815 color: #fff; 816 font-family: 'Cairo', sans-serif; 817 font-size: 0.75rem; 818 font-weight: 700; 819 padding: 0.375rem 0.75rem; 820 border-radius: 0.375rem; 821 border: none; 822 cursor: pointer; 823 transition: opacity 0.2s; 824} 825 826.ci-card__try-btn:hover { opacity: 0.9; } 827 828/* ---------- Skeleton Loader ---------- */ 829.ci-skeleton { 830 background: #0e0e0e; 831 border-radius: 0.75rem; 832 overflow: hidden; 833 border: 1px solid rgba(255, 255, 255, 0.05); 834} 835 836.ci-skeleton__img { 837 aspect-ratio: 1 / 1; 838 background: rgba(255, 255, 255, 0.05); 839 animation: ci-shimmer 1.5s ease-in-out infinite; 840} 841 842.ci-skeleton__body { padding: 0.75rem; } 843 844.ci-skeleton__line { 845 height: 0.625rem; 846 background: rgba(255, 255, 255, 0.05); 847 border-radius: 0.25rem; 848 margin-bottom: 0.5rem; 849 animation: ci-shimmer 1.5s ease-in-out infinite; 850} 851 852.ci-skeleton__line--short { width: 75%; } 853 854.ci-skeleton__footer { 855 display: flex; 856 justify-content: space-between; 857 align-items: center; 858 margin-top: 0.75rem; 859} 860 861.ci-skeleton__pill { 862 height: 1.25rem; 863 width: 4rem; 864 background: rgba(255, 255, 255, 0.05); 865 border-radius: 9999px; 866 animation: ci-shimmer 1.5s ease-in-out infinite; 867} 868 869.ci-skeleton__btn { 870 height: 1.5rem; 871 width: 4rem; 872 background: rgba(255, 255, 255, 0.05); 873 border-radius: 0.25rem; 874 animation: ci-shimmer 1.5s ease-in-out infinite; 875} 876 877/* ---------- Empty State ---------- */ 878.ci-empty { 879 text-align: center; 880 padding: 6rem 1rem; 881} 882 883.ci-empty__icon { 884 font-size: 3rem; 885 color: rgba(255, 255, 255, 0.1); 886 margin-bottom: 1rem; 887} 888 889.ci-empty__text { 890 font-size: 1.125rem; 891 font-weight: 500; 892 color: rgba(255, 255, 255, 0.3); 893} 894 895/* ---------- Pagination ---------- */ 896.ci-pagination { 897 display: flex; 898 flex-wrap: wrap; 899 justify-content: center; 900 align-items: center; 901 gap: 0.5rem; 902 padding: 2.5rem 0; 903} 904 905.ci-pagination__btn { 906 display: flex; 907 align-items: center; 908 justify-content: center; 909 min-width: 2.25rem; 910 height: 2.25rem; 911 padding: 0 0.75rem; 912 border-radius: 0.5rem; 913 font-family: 'Cairo', sans-serif; 914 font-size: 0.875rem; 915 font-weight: 600; 916 border: none; 917 cursor: pointer; 918 transition: background 0.2s, color 0.2s; 919 background: rgba(255, 255, 255, 0.05); 920 color: rgba(255, 255, 255, 0.5); 921} 922 923.ci-pagination__btn:hover { background: rgba(255, 255, 255, 0.1); } 924 925.ci-pagination__btn:disabled { 926 opacity: 0.3;
927 cursor: not-allowed; 928} 929 930.ci-pagination__btn.ci-active { 931 background: #3b4fe4; 932 color: #fff; 933} 934 935.ci-pagination__dots { 936 color: rgba(255, 255, 255, 0.2); 937 padding: 0 0.5rem; 938 font-size: 0.875rem; 939} 940 941/* ---------- Modal ---------- */ 942.ci-modal-backdrop { 943 position: fixed; 944 inset: 0; 945 z-index: 10050; /* above everything on the page */ 946 display: flex; 947 align-items: center; 948 justify-content: center; 949 padding: 1rem; 950 opacity: 0; 951 visibility: hidden; 952 transition: opacity 0.3s, visibility 0.3s; 953} 954 955.ci-modal-backdrop.ci-open { 956 opacity: 1; 957 visibility: visible; 958} 959 960.ci-modal-backdrop__bg { 961 position: absolute; 962 inset: 0; 963 background: rgba(0, 0, 0, 0.85); 964 backdrop-filter: blur(24px); 965 -webkit-backdrop-filter: blur(24px); 966} 967 968.ci-modal { 969 position: relative; 970 width: 100%; 971 max-width: 64rem; 972 max-height: 90vh; 973 background: #0e0e0e; 974 border: 1px solid rgba(255, 255, 255, 0.1); 975 border-radius: 1rem; 976 overflow: hidden; 977 display: flex; 978 flex-direction: column; 979 transform: translateY(1rem); 980 transition: transform 0.3s; 981} 982 983.ci-modal-backdrop.ci-open .ci-modal { 984 transform: translateY(0); 985} 986 987@media (min-width: 768px) { 988 .ci-modal { flex-direction: row; } 989} 990 991/* Close button */ 992.ci-modal__close { 993 position: absolute; 994 top: 1rem; 995 right: 1rem; 996 z-index: 10; 997 width: 2rem; 998 height: 2rem; 999 display: flex; 1000 align-items: center; 1001 justify-content: center; 1002 border-radius: 50%; 1003 background: rgba(255, 255, 255, 0.1); 1004 color: #fff; 1005 border: none; 1006 cursor: pointer; 1007 transition: background 0.2s; 1008} 1009 1010.ci-modal__close:hover { background: rgba(255, 255, 255, 0.2); } 1011.ci-modal__close svg { width: 1rem; height: 1rem; } 1012 1013/* Admin: Delete button in modal */ 1014.ci-modal__delete { 1015 position: absolute; 1016 top: 1rem; 1017 right: 3.5rem; 1018 z-index: 10; 1019 width: 2rem; 1020 height: 2rem; 1021 display: flex; 1022 align-items: center; 1023 justify-content: center; 1024 border-radius: 50%; 1025 background: rgba(220, 38, 38, 0.8); 1026 color: #fff; 1027 border: none; 1028 cursor: pointer; 1029 transition: background 0.2s, opacity 0.2s, transform 0.2s; 1030 opacity: 0; 1031} 1032 1033.ci-modal:hover .ci-modal__delete { opacity: 1; } 1034.ci-modal__delete:hover { 1035 background: #dc2626; 1036 transform: scale(1.1); 1037} 1038.ci-modal__delete svg { width: 0.875rem; height: 0.875rem; } 1039 1040/* Modal image */ 1041.ci-modal__image-section { 1042 width: 100%; 1043 flex-shrink: 0; 1044 background: #000; 1045} 1046 1047@media (min-width: 768px) { 1048 .ci-modal__image-section { width: 40%; } 1049} 1050 1051.ci-modal__image-main { 1052 aspect-ratio: 1 / 1; 1053 width: 100%; 1054 overflow: hidden; 1055} 1056 1057.ci-modal__image-main img { 1058 width: 100%; 1059 height: 100%; 1060 object-fit: contain; 1061} 1062 1063.ci-modal__thumbnails { 1064 display: flex; 1065 gap: 0.5rem; 1066 padding: 0.75rem; 1067 overflow-x: auto; 1068} 1069 1070.ci-modal__thumb { 1071 flex-shrink: 0; 1072 width: 3.5rem; 1073 height: 3.5rem; 1074 border-radius: 0.5rem; 1075 overflow: hidden; 1076 border: 2px solid transparent; 1077 cursor: pointer; 1078 transition: all 0.2s; 1079 opacity: 0.5; 1080} 1081 1082.ci-modal__thumb:hover { opacity: 0.75; } 1083 1084.ci-modal__thumb.ci-active { 1085 border-color: #3b4fe4; 1086 opacity: 1; 1087} 1088 1089.ci-modal__thumb img { 1090 width: 100%; 1091 height: 100%; 1092 object-fit: cover; 1093} 1094 1095/* Modal content */ 1096.ci-modal__content { 1097 flex: 1; 1098 overflow-y: auto; 1099 padding: 1.5rem; 1100 display: flex; 1101 flex-direction: column; 1102 gap: 1.25rem; 1103} 1104 1105@media (min-width: 768px) { 1106 .ci-modal__content { width: 60%; } 1107} 1108 1109/* Author row */ 1110.ci-modal__author { 1111 display: flex; 1112 align-items: center; 1113 gap: 0.75rem; 1114} 1115 1116.ci-modal__author-avatar { 1117 width: 2.25rem; 1118 height: 2.25rem; 1119 border-radius: 50%; 1120 display: flex; 1121 align-items: center; 1122 justify-content: center; 1123 flex-shrink: 0; 1124 background: linear-gradient(135deg, #3b4fe4, #243673); 1125 color: #fff; 1126 font-size: 0.875rem; 1127 font-weight: 700; 1128} 1129 1130.ci-modal__author-name { 1131 font-weight: 600; 1132 font-size: 0.875rem; 1133 color: #f2f2f2; 1134} 1135 1136.ci-modal__author-handle { 1137 font-size: 0.75rem; 1138 color: rgba(255, 255, 255, 0.3); 1139} 1140 1141.ci-modal__meta { 1142 margin-left: auto; 1143 display: flex; 1144 align-items: center; 1145 gap: 0.75rem; 1146 font-size: 0.75rem; 1147 color: rgba(255, 255, 255, 0.3); 1148 flex-shrink: 0; 1149} 1150 1151.ci-modal__meta-likes { 1152 display: flex; 1153 align-items: center; 1154 gap: 0.25rem; 1155} 1156 1157.ci-modal__meta-likes svg { width: 0.875rem; height: 0.875rem; color: #f87171; } 1158 1159/* Categories */ 1160.ci-modal__categories { 1161 display: flex; 1162 flex-wrap: wrap; 1163 gap: 0.375rem; 1164} 1165 1166.ci-modal__cat-tag { 1167 font-size: 0.75rem; 1168 color: rgba(255, 255, 255, 0.6); 1169 padding: 0.125rem 0.625rem; 1170 border-radius: 0.25rem; 1171 border: 1px solid rgba(255, 255, 255, 0.1); 1172 background: rgba(255, 255, 255, 0.05); 1173} 1174 1175/* Prompt section */ 1176.ci-modal__section-header { 1177 display: flex; 1178 align-items: center; 1179 justify-content: space-between; 1180 margin-bottom: 0.5rem; 1181} 1182 1183.ci-modal__section-label { 1184 font-size: 0.75rem; 1185 font-weight: 600; 1186 text-transform: uppercase; 1187 letter-spacing: 0.1em; 1188 color: rgba(255, 255, 255, 0.3); 1189} 1190 1191.ci-modal__copy-btn { 1192 display: flex; 1193 align-items: center; 1194 gap: 0.375rem; 1195 font-family: 'Cairo', sans-serif; 1196 font-size: 0.75rem; 1197 color: rgba(255, 255, 255, 0.4); 1198 background: none; 1199 border: none; 1200 cursor: pointer; 1201 transition: color 0.2s; 1202} 1203 1204.ci-modal__copy-btn:hover { color: rgba(255, 255, 255, 0.8); } 1205.ci-modal__copy-btn svg { width: 0.875rem; height: 0.875rem; } 1206.ci-modal__copy-btn.ci-copied { color: #4ade80; } 1207 1208.ci-modal__prompt-box { 1209 background: rgba(255, 255, 255, 0.03); 1210 border: 1px solid rgba(255, 255, 255, 0.07); 1211 border-radius: 0.75rem; 1212 padding: 1rem; 1213 max-height: 10rem; 1214 overflow-y: auto; 1215} 1216 1217.ci-modal__prompt-text { 1218 font-family: 'Cairo', sans-serif; 1219 font-size: 0.75rem; 1220 color: rgba(255, 255, 255, 0.6); 1221 line-height: 1.6; 1222 white-space: pre-wrap; 1223 word-break: break-word; 1224} 1225 1226/* Optional section */ 1227.ci-modal__optional-label { 1228 display: flex; 1229 align-items: center; 1230 gap: 0.5rem; 1231 margin-bottom: 0.5rem; 1232} 1233 1234.ci-modal__optional-hint { 1235 font-size: 0.75rem; 1236 color: rgba(255, 255, 255, 0.2); 1237} 1238 1239.ci-modal__optional-box { 1240 background: rgba(255, 255, 255, 0.03); 1241 border: 1px solid rgba(255, 255, 255, 0.07); 1242 border-radius: 0.75rem; 1243 padding: 1rem; 1244} 1245 1246.ci-modal__optional-textarea { 1247 width: 100%; 1248 background: transparent; 1249 font-family: 'Cairo', sans-serif; 1250 font-size: 0.75rem; 1251 color: rgba(255, 255, 255, 0.6); 1252 line-height: 1.6; 1253 border: none; 1254 outline: none; 1255 resize: none; 1256} 1257 1258/* Action buttons */ 1259.ci-modal__actions { 1260 display: flex; 1261 gap: 0.75rem; 1262} 1263 1264.ci-modal__copy-main { 1265 flex: 1; 1266 font-family: 'Cairo', sans-serif; 1267 font-size: 0.875rem; 1268 font-weight: 700;
1269 color: #fff; 1270 background: #3b4fe4; 1271 border: none; 1272 border-radius: 0.5rem; 1273 padding: 0.75rem; 1274 cursor: pointer; 1275 transition: opacity 0.2s; 1276} 1277 1278.ci-modal__copy-main:hover { opacity: 0.9; } 1279 1280.ci-modal__try-link { 1281 display: flex; 1282 align-items: center; 1283 justify-content: center; 1284 padding: 0.75rem 1rem; 1285 background: rgba(255, 255, 255, 0.05); 1286 border: 1px solid rgba(255, 255, 255, 0.1); 1287 border-radius: 0.5rem; 1288 color: rgba(255, 255, 255, 0.5); 1289 text-decoration: none; 1290 transition: all 0.2s; 1291} 1292 1293.ci-modal__try-link:hover { 1294 background: rgba(255, 255, 255, 0.1); 1295 color: #fff; 1296} 1297 1298.ci-modal__try-link svg { width: 1rem; height: 1rem; } 1299 1300/* ---------- Card Checkbox ---------- */ 1301.ci-card__checkbox { 1302 position: absolute; 1303 top: 0.75rem; 1304 left: 0.75rem; 1305 width: 1.25rem; 1306 height: 1.25rem; 1307 border-radius: 0.25rem; 1308 border: 2px solid rgba(255, 255, 255, 0.3); 1309 background: transparent; 1310 display: flex; 1311 align-items: center; 1312 justify-content: center; 1313 z-index: 20; 1314 cursor: pointer; 1315 padding: 0; 1316 transition: border-color 0.2s, background 0.2s; 1317} 1318 1319.ci-card__checkbox:hover { border-color: rgba(255, 255, 255, 0.6); } 1320 1321.ci-card__checkbox.ci-checked { 1322 background: #3b4fe4; 1323 border-color: #3b4fe4; 1324} 1325 1326.ci-card__check-icon { 1327 width: 0.75rem; 1328 height: 0.75rem; 1329 color: #fff; 1330} 1331 1332/* Selected card */ 1333.ci-card--selected { 1334 border-color: #3b4fe4; 1335 box-shadow: 0 0 20px rgba(59, 79, 228, 0.2); 1336 transform: translateY(-4px); 1337} 1338 1339/* ---------- Selection Bar ---------- */ 1340.ci-selection-bar { 1341 position: fixed; 1342 bottom: 2rem; 1343 left: 50%; 1344 transform: translateX(-50%) translateY(4rem); 1345 z-index: 10020; /* above filters (10010) */ 1346 display: flex; 1347 align-items: center; 1348 gap: 0.75rem; 1349 padding: 0.75rem 1.25rem; 1350 background: rgba(14, 14, 14, 0.95); 1351 backdrop-filter: blur(16px); 1352 -webkit-backdrop-filter: blur(16px); 1353 border: 1px solid rgba(255, 255, 255, 0.1); 1354 border-radius: 0.75rem; 1355 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6); 1356 opacity: 0; 1357 visibility: hidden; 1358 transition: transform 0.3s, opacity 0.3s, visibility 0.3s; 1359} 1360 1361.ci-selection-bar.ci-visible { 1362 opacity: 1; 1363 visibility: visible; 1364 transform: translateX(-50%) translateY(0); 1365} 1366 1367.ci-selection-bar__count { 1368 font-family: 'Cairo', sans-serif; 1369 font-size: 0.875rem; 1370 font-weight: 600; 1371 color: rgba(255, 255, 255, 0.7); 1372 white-space: nowrap; 1373} 1374 1375.ci-selection-bar__remove { 1376 font-family: 'Cairo', sans-serif; 1377 font-size: 0.8125rem; 1378 font-weight: 700; 1379 color: #fff; 1380 background: #dc2626; 1381 border: none; 1382 border-radius: 0.375rem; 1383 padding: 0.375rem 1rem; 1384 cursor: pointer; 1385 transition: opacity 0.2s; 1386} 1387 1388.ci-selection-bar__remove:hover { opacity: 0.85; } 1389 1390.ci-selection-bar__clear { 1391 font-family: 'Cairo', sans-serif; 1392 font-size: 0.8125rem; 1393 font-weight: 600; 1394 color: rgba(255, 255, 255, 0.4); 1395 background: rgba(255, 255, 255, 0.05); 1396 border: 1px solid rgba(255, 255, 255, 0.1); 1397 border-radius: 0.375rem; 1398 padding: 0.375rem 1rem; 1399 cursor: pointer; 1400 transition: all 0.2s; 1401} 1402 1403.ci-selection-bar__clear:hover { 1404 background: rgba(255, 255, 255, 0.1); 1405 color: rgba(255, 255, 255, 0.7); 1406} 1407 1408/* ---------- Scrollbar ---------- */ 1409.ci-inspire ::-webkit-scrollbar { width: 4px; height: 4px; } 1410.ci-inspire ::-webkit-scrollbar-track { background: transparent; } 1411.ci-inspire ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 2px; } 1412.ci-inspire ::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.2); } 1413 1414/* ========================================================================== 1415 WordPress / Astra Theme Overrides 1416 Astra has aggressive CSS resets on buttons, inputs, textareas, links. 1417 All selectors below use `body .ci-inspire` for higher specificity + !important. 1418 ========================================================================== */ 1419 1420/* --- Global element reset inside .ci-inspire --- */ 1421body .ci-inspire button, 1422body .ci-inspire input[type="text"], 1423body .ci-inspire input[type="search"], 1424body .ci-inspire textarea, 1425body .ci-inspire pre { 1426 -webkit-appearance: none !important; 1427 appearance: none !important; 1428 box-shadow: none !important; 1429 text-shadow: none !important; 1430} 1431 1432body .ci-inspire a { 1433 text-decoration: none !important; 1434} 1435 1436/* --- Elementor container breakout --- */ 1437.elementor-element .ci-inspire, 1438.elementor-widget-container .ci-inspire { 1439 max-width: none !important; 1440 padding: 0 !important; 1441 margin: 0 !important; 1442} 1443 1444/* Prevent parent overflow from breaking sticky */
1445.elementor-element:has(.ci-inspire), 1446.elementor-widget-container:has(.ci-inspire), 1447.elementor-section:has(.ci-inspire), 1448.e-con:has(.ci-inspire) { 1449 overflow: visible !important; 1450} 1451 1452/* --- Root container --- */ 1453body .ci-inspire { 1454 font-family: 'Cairo', sans-serif !important; 1455 background: #080808 !important; 1456 color: #6e7180 !important; 1457 line-height: 1.6 !important; 1458} 1459 1460/* --- Hero --- */ 1461body .ci-inspire .ci-hero { 1462 background: #000 !important; 1463 min-height: 95vh !important; 1464 width: 100vw !important; 1465 margin-left: calc(-50vw + 50%) !important; 1466 position: relative !important; 1467} 1468 1469body .ci-inspire .ci-hero__particles { 1470 pointer-events: none !important; 1471} 1472 1473@media (max-width: 768px) { 1474 body .ci-inspire .ci-hero__particles { 1475 display: none !important; 1476 } 1477} 1478 1479body .ci-inspire .ci-hero__content.ci-visible { 1480 opacity: 1 !important; 1481 transform: translateY(0) !important; 1482} 1483 1484body .ci-inspire .ci-hero__title { 1485 color: #f2f2f2 !important; 1486 font-family: 'Cairo', sans-serif !important; 1487} 1488 1489body .ci-inspire .ci-hero__subtitle { 1490 color: rgba(255, 255, 255, 0.4) !important; 1491} 1492 1493body .ci-inspire .ci-hero__stat-value { 1494 color: #f2f2f2 !important; 1495} 1496 1497body .ci-inspire .ci-hero__stat-label { 1498 color: rgba(255, 255, 255, 0.3) !important; 1499} 1500 1501body .ci-inspire .ci-hero__badge-text { 1502 color: rgba(255, 255, 255, 0.5) !important; 1503} 1504 1505/* --- Filters bar --- */ 1506body .ci-inspire .ci-filters { 1507 position: sticky !important; 1508 top: 0 !important; 1509 z-index: 10010 !important; 1510 background: rgba(8, 8, 8, 0.8) !important; 1511 backdrop-filter: blur(24px) !important; 1512 -webkit-backdrop-filter: blur(24px) !important; 1513 border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important; 1514 padding: 0.75rem 1rem !important; 1515} 1516 1517/* --- Search input --- */ 1518body .ci-inspire .ci-filters__search { 1519 width: 100% !important; 1520 background: rgba(255, 255, 255, 0.03) !important; 1521 border: 1px solid rgba(255, 255, 255, 0.08) !important; 1522 border-radius: 0.5rem !important; 1523 padding: 0.625rem 3.5rem 0.625rem 2.75rem !important; 1524 font-family: 'Cairo', sans-serif !important; 1525 font-size: 0.875rem !important; 1526 color: #f2f2f2 !important; 1527 outline: none !important; 1528 height: auto !important; 1529 line-height: 1.6 !important; 1530 min-height: 0 !important; 1531} 1532 1533body .ci-inspire .ci-filters__search::placeholder { 1534 color: rgba(255, 255, 255, 0.2) !important; 1535} 1536 1537body .ci-inspire .ci-filters__search:focus { 1538 border-color: rgba(59, 79, 228, 0.6) !important; 1539 background: rgba(255, 255, 255, 0.05) !important; 1540 outline: none !important; 1541 box-shadow: none !important; 1542} 1543 1544/* --- Filter pills --- */ 1545body .ci-inspire .ci-filters__pill { 1546 background: rgba(255, 255, 255, 0.03) !important; 1547 border: 1px solid rgba(255, 255, 255, 0.07) !important; 1548 color: rgba(255, 255, 255, 0.4) !important; 1549 font-family: 'Cairo', sans-serif !important; 1550 font-size: 0.75rem !important; 1551 font-weight: 600 !important; 1552 padding: 0.375rem 1rem !important; 1553 border-radius: 0.375rem !important; 1554 cursor: pointer !important; 1555 line-height: 1.4 !important; 1556 letter-spacing: 0.02em !important; 1557} 1558 1559body .ci-inspire .ci-filters__pill:hover { 1560 background: rgba(255, 255, 255, 0.07) !important; 1561 color: rgba(255, 255, 255, 0.7) !important; 1562} 1563 1564body .ci-inspire .ci-filters__pill.ci-active { 1565 background: #3b4fe4 !important; 1566 color: #fff !important; 1567 border-color: rgba(59, 79, 228, 0.6) !important; 1568} 1569 1570/* --- Card --- */ 1571body .ci-inspire .ci-card { 1572 background: #0e0e0e !important; 1573 border: 1px solid rgba(255, 255, 255, 0.07) !important; 1574 border-radius: 0.75rem !important; 1575 overflow: hidden !important; 1576} 1577 1578body .ci-inspire .ci-card:hover { 1579 transform: translateY(-4px) !important; 1580 border-color: rgba(59, 79, 228, 0.4) !important; 1581 box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5) !important; 1582} 1583 1584body .ci-inspire .ci-card__img-wrap { 1585 aspect-ratio: 1 / 1 !important; 1586 overflow: hidden !important; 1587 background: rgba(255, 255, 255, 0.05) !important; 1588} 1589 1590body .ci-inspire .ci-card__img { 1591 width: 100% !important; 1592 height: 100% !important; 1593 object-fit: cover !important; 1594} 1595 1596body .ci-inspire .ci-card__text { 1597 color: rgba(255, 255, 255, 0.5) !important; 1598 font-size: 0.75rem !important; 1599} 1600 1601body .ci-inspire .ci-card__author-name { 1602 color: rgba(255, 255, 255, 0.3) !important; 1603} 1604 1605body .ci-inspire .ci-card__avatar { 1606 background: linear-gradient(135deg, #3b4fe4, #243673) !important; 1607 color: #fff !important; 1608} 1609 1610body .ci-inspire .ci-card__try-btn { 1611 background: #3b4fe4 !important; 1612 color: #fff !important; 1613 font-family: 'Cairo', sans-serif !important; 1614 font-size: 0.75rem !important; 1615 font-weight: 700 !important; 1616 padding: 0.375rem 0.75rem !important; 1617 border-radius: 0.375rem !important; 1618 border: none !important; 1619 cursor: pointer !important; 1620 line-height: 1.4 !important; 1621} 1622 1623body .ci-inspire .ci-card__try-btn:hover { 1624 opacity: 0.9 !important; 1625} 1626 1627/* Card nav buttons */ 1628body .ci-inspire .ci-card__nav-btn { 1629 background: rgba(0, 0, 0, 0.6) !important; 1630 color: #fff !important; 1631 border: none !important; 1632 border-radius: 50% !important; 1633 cursor: pointer !important; 1634} 1635 1636body .ci-inspire .ci-card__dot { 1637 background: rgba(255, 255, 255, 0.4) !important; 1638 border: none !important; 1639 cursor: pointer !important; 1640 padding: 0 !important; 1641} 1642 1643body .ci-inspire .ci-card__dot.ci-active { 1644 background: #fff !important; 1645} 1646 1647body .ci-inspire .ci-card__category { 1648 background: #3b4fe4 !important; 1649 color: #fff !important; 1650} 1651 1652/* --- Skeleton --- */ 1653body .ci-inspire .ci-skeleton { 1654 background: #0e0e0e !important; 1655 border: 1px solid rgba(255, 255, 255, 0.05) !important; 1656} 1657 1658/* --- Pagination --- */ 1659body .ci-inspire .ci-pagination__btn { 1660 background: rgba(255, 255, 255, 0.05) !important; 1661 color: rgba(255, 255, 255, 0.5) !important; 1662 border: none !important; 1663 font-family: 'Cairo', sans-serif !important; 1664 font-size: 0.875rem !important; 1665 font-weight: 600 !important; 1666 border-radius: 0.5rem !important; 1667 cursor: pointer !important; 1668 padding: 0 0.75rem !important; 1669 min-width: 2.25rem !important; 1670 height: 2.25rem !important; 1671 line-height: 2.25rem !important; 1672} 1673 1674body .ci-inspire .ci-pagination__btn:hover { 1675 background: rgba(255, 255, 255, 0.1) !important; 1676} 1677 1678body .ci-inspire .ci-pagination__btn.ci-active { 1679 background: #3b4fe4 !important; 1680 color: #fff !important; 1681} 1682 1683body .ci-inspire .ci-pagination__btn:disabled { 1684 opacity: 0.3 !important;
1685 cursor: not-allowed !important; 1686} 1687 1688/* --- Modal backdrop --- */ 1689body .ci-modal-backdrop, 1690body .ci-inspire .ci-modal-backdrop { 1691 z-index: 99999 !important; 1692} 1693 1694body .ci-modal-backdrop__bg, 1695body .ci-inspire .ci-modal-backdrop__bg { 1696 background: rgba(0, 0, 0, 0.85) !important; 1697} 1698 1699/* --- Modal container --- */ 1700body .ci-modal, 1701body .ci-inspire .ci-modal { 1702 background: #0e0e0e !important; 1703 border: 1px solid rgba(255, 255, 255, 0.1) !important; 1704 border-radius: 1rem !important; 1705} 1706 1707/* --- Modal image section --- */ 1708body .ci-inspire .ci-modal__image-section { 1709 background: #000 !important; 1710} 1711 1712body .ci-inspire .ci-modal__image-main img { 1713 object-fit: contain !important; 1714} 1715 1716/* --- Modal content area --- */ 1717body .ci-inspire .ci-modal__content { 1718 background: #0e0e0e !important; 1719 color: rgba(255, 255, 255, 0.6) !important; 1720} 1721 1722/* --- Modal author --- */ 1723body .ci-inspire .ci-modal__author-avatar { 1724 background: linear-gradient(135deg, #3b4fe4, #243673) !important; 1725 color: #fff !important; 1726} 1727 1728body .ci-inspire .ci-modal__author-name { 1729 color: #f2f2f2 !important; 1730 font-weight: 600 !important; 1731} 1732 1733body .ci-inspire .ci-modal__author-handle { 1734 color: rgba(255, 255, 255, 0.3) !important; 1735} 1736 1737body .ci-inspire .ci-modal__meta { 1738 color: rgba(255, 255, 255, 0.3) !important; 1739} 1740 1741/* --- Modal category tags --- */ 1742body .ci-inspire .ci-modal__cat-tag { 1743 font-size: 0.75rem !important; 1744 color: rgba(255, 255, 255, 0.6) !important; 1745 padding: 0.125rem 0.625rem !important; 1746 border-radius: 0.25rem !important; 1747 border: 1px solid rgba(255, 255, 255, 0.1) !important; 1748 background: rgba(255, 255, 255, 0.05) !important; 1749} 1750 1751/* --- Modal section labels --- */ 1752body .ci-inspire .ci-modal__section-label { 1753 color: rgba(255, 255, 255, 0.3) !important; 1754} 1755 1756/* --- Modal prompt box --- */ 1757body .ci-inspire .ci-modal__prompt-box { 1758 background: rgba(255, 255, 255, 0.03) !important; 1759 border: 1px solid rgba(255, 255, 255, 0.07) !important; 1760 border-radius: 0.75rem !important; 1761} 1762 1763body .ci-inspire .ci-modal__prompt-text { 1764 font-family: 'Cairo', sans-serif !important; 1765 font-size: 0.75rem !important; 1766 color: rgba(255, 255, 255, 0.6) !important; 1767 background: transparent !important; 1768 border: none !important; 1769} 1770 1771/* --- Modal optional section --- */ 1772body .ci-inspire .ci-modal__optional-hint { 1773 color: rgba(255, 255, 255, 0.2) !important; 1774} 1775 1776body .ci-inspire .ci-modal__optional-box { 1777 background: rgba(255, 255, 255, 0.03) !important; 1778 border: 1px solid rgba(255, 255, 255, 0.07) !important; 1779 border-radius: 0.75rem !important; 1780} 1781 1782body .ci-inspire .ci-modal__optional-textarea { 1783 width: 100% !important; 1784 background: transparent !important; 1785 font-family: 'Cairo', sans-serif !important; 1786 font-size: 0.75rem !important; 1787 color: rgba(255, 255, 255, 0.6) !important; 1788 line-height: 1.6 !important; 1789 border: none !important; 1790 outline: none !important; 1791 resize: none !important; 1792 padding: 0 !important; 1793 min-height: 0 !important; 1794 height: auto !important; 1795} 1796 1797/* --- Modal copy button (small) --- */ 1798body .ci-inspire .ci-modal__copy-btn { 1799 color: rgba(255, 255, 255, 0.4) !important; 1800 background: none !important; 1801 border: none !important; 1802 font-family: 'Cairo', sans-serif !important; 1803 cursor: pointer !important; 1804 padding: 0 !important; 1805} 1806 1807body .ci-inspire .ci-modal__copy-btn:hover { 1808 color: rgba(255, 255, 255, 0.8) !important; 1809} 1810 1811body .ci-inspire .ci-modal__copy-btn.ci-copied { 1812 color: #4ade80 !important; 1813} 1814 1815/* --- Modal "Copy Prompt" main button --- */ 1816body .ci-inspire .ci-modal__copy-main { 1817 flex: 1 !important; 1818 font-family: 'Cairo', sans-serif !important; 1819 font-size: 0.875rem !important; 1820 font-weight: 700 !important; 1821 color: #fff !important; 1822 background: #3b4fe4 !important; 1823 border: none !important; 1824 border-radius: 0.5rem !important; 1825 padding: 0.75rem !important; 1826 cursor: pointer !important; 1827 line-height: 1.4 !important; 1828} 1829 1830body .ci-inspire .ci-modal__copy-main:hover { 1831 opacity: 0.9 !important; 1832} 1833 1834/* --- Modal close button --- */ 1835body .ci-inspire .ci-modal__close { 1836 background: rgba(255, 255, 255, 0.1) !important; 1837 color: #fff !important; 1838 border: none !important; 1839 border-radius: 50% !important; 1840 cursor: pointer !important; 1841 width: 2rem !important; 1842 height: 2rem !important; 1843} 1844 1845/* --- Admin: Modal delete button --- */ 1846body .ci-inspire .ci-modal__delete { 1847 background: rgba(220, 38, 38, 0.8) !important; 1848 color: #fff !important; 1849 border: none !important; 1850 border-radius: 50% !important; 1851 cursor: pointer !important; 1852 width: 2rem !important; 1853 height: 2rem !important; 1854} 1855 1856body .ci-inspire .ci-modal__delete:hover { 1857 background: #dc2626 !important; 1858} 1859 1860body .ci-inspire .ci-modal__close:hover { 1861 background: rgba(255, 255, 255, 0.2) !important; 1862} 1863 1864/* --- Modal try link --- */ 1865body .ci-inspire .ci-modal__try-link, 1866body .ci-inspire .ci-modal__try-link:visited { 1867 background: rgba(255, 255, 255, 0.05) !important; 1868 border: 1px solid rgba(255, 255, 255, 0.1) !important; 1869 border-radius: 0.5rem !important; 1870 color: rgba(255, 255, 255, 0.5) !important; 1871 text-decoration: none !important; 1872 padding: 0.75rem 1rem !important; 1873} 1874 1875body .ci-inspire .ci-modal__try-link:hover { 1876 background: rgba(255, 255, 255, 0.1) !important; 1877 color: #fff !important; 1878} 1879 1880/* --- Modal thumbnail --- */ 1881body .ci-inspire .ci-modal__thumb { 1882 border: 2px solid transparent !important; 1883 background: none !important; 1884 padding: 0 !important; 1885 cursor: pointer !important; 1886} 1887 1888body .ci-inspire .ci-modal__thumb.ci-active { 1889 border-color: #3b4fe4 !important; 1890} 1891 1892/* --- Admin: Card checkbox --- */ 1893body .ci-inspire .ci-card__checkbox { 1894 background: transparent !important; 1895 border: 2px solid rgba(255, 255, 255, 0.3) !important; 1896 border-radius: 0.25rem !important; 1897 cursor: pointer !important; 1898 padding: 0 !important; 1899 width: 1.25rem !important; 1900 height: 1.25rem !important; 1901} 1902 1903body .ci-inspire .ci-card__checkbox:hover { 1904 border-color: rgba(255, 255, 255, 0.6) !important; 1905} 1906 1907body .ci-inspire .ci-card__checkbox.ci-checked { 1908 background: #3b4fe4 !important; 1909 border-color: #3b4fe4 !important; 1910} 1911 1912/* --- Admin: Selected card --- */ 1913body .ci-inspire .ci-card--selected { 1914 border-color: #3b4fe4 !important; 1915 box-shadow: 0 0 20px rgba(59, 79, 228, 0.2) !important; 1916 transform: translateY(-4px) !important; 1917} 1918 1919/* --- Admin: Selection bar --- */ 1920body .ci-inspire .ci-selection-bar { 1921 z-index: 99998 !important; 1922 background: rgba(14, 14, 14, 0.95) !important; 1923 border: 1px solid rgba(255, 255, 255, 0.1) !important; 1924 border-radius: 0.75rem !important; 1925} 1926 1927body .ci-inspire .ci-selection-bar__count { 1928 font-family: 'Cairo', sans-serif !important; 1929 color: rgba(255, 255, 255, 0.7) !important; 1930} 1931 1932body .ci-inspire .ci-selection-bar__remove { 1933 font-family: 'Cairo', sans-serif !important; 1934 color: #fff !important; 1935 background: #dc2626 !important; 1936 border: none !important; 1937 border-radius: 0.375rem !important; 1938 padding: 0.375rem 1rem !important; 1939 cursor: pointer !important; 1940} 1941 1942body .ci-inspire .ci-selection-bar__remove:hover { 1943 opacity: 0.85 !important; 1944} 1945 1946body .ci-inspire .ci-selection-bar__clear { 1947 font-family: 'Cairo', sans-serif !important; 1948 color: rgba(255, 255, 255, 0.4) !important; 1949 background: rgba(255, 255, 255, 0.05) !important; 1950 border: 1px solid rgba(255, 255, 255, 0.1) !important; 1951 border-radius: 0.375rem !important; 1952 padding: 0.375rem 1rem !important; 1953 cursor: pointer !important; 1954} 1955 1956body .ci-inspire .ci-selection-bar__clear:hover { 1957 background: rgba(255, 255, 255, 0.1) !important; 1958 color: rgba(255, 255, 255, 0.7) !important; 1959} 1960 1961/* --- Empty state --- */ 1962body .ci-inspire .ci-empty__icon { 1963 color: rgba(255, 255, 255, 0.1) !important; 1964} 1965 1966body .ci-inspire .ci-empty__text { 1967 color: rgba(255, 255, 255, 0.3) !important; 1968} 1969</style> 1970<!-- Google Tag Manager snippet added by Site Kit -->
1971<script>
vendor: 420 bytes, lines 1971-1980
1971 1972 ( function( w, d, s, l, i ) { 1973 w[l] = w[l] || []; 1974 w[l].push( {'gtm.start': new Date().getTime(), event: 'gtm.js'} ); 1975 var f = d.getElementsByTagName( s )[0], 1976 j = d.createElement( s ), dl = l != 'dataLayer' ? '&l=' + l : ''; 1977 j.async = true; 1978 j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; 1979 f.parentNode.insertBefore( j, f ); 1980 } )( window, document, 'script', 'dataLayer', '
1980GTM-P667F87
vendor: 9 bytes, lines 1980-1981
1980' ); 1981
1982</script>
1982 1983 1984<!-- End Google Tag Manager snippet added by Site Kit --> 1985<link rel="icon" href="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-icon-01.svg" sizes="32x32" /> 1986<link rel="icon" href="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-icon-01.svg" sizes="192x192" /> 1987<link rel="apple-touch-icon" href="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-icon-01.svg" /> 1988<meta name="msapplication-TileImage" content="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-icon-01.svg" /> 1989 <style id="wp-custom-css"> 1990 //hides default menu// 1991#masthead { 1992 display: none !important; 1993} 1994 1995//hide default footer 1996#colophon.site-footer { 1997 display: none !important; 1998} 1999 2000//hides feature images in blog posts 2001.post-thumb-img-content.post-thumb { 2002 display: none !important; 2003} 2004 2005//BLOG Customizations 2006h1, h2, h3 { 2007padding-bottom: 15px !important; 2008padding-top: 5px !important; 2009} 2010 2011p { 2012padding-top: 10px!important; 2013} 2014.html5-video-player { 2015 padding-top: 15px !important; 2016 padding-bottom: 15px !important; 2017} 2018 2019.wp-block-pullquote { 2020 padding: 20px 15px 20px 15px !important; 2021} 2022.wp-block-pullquote p { 2023 padding-bottom: 50px !important; 2024} 2025/* Price List */ 2026.feature-badge { 2027 flex-shrink: 0; 2028 padding: 4px 10px; 2029 border-radius: 4px; 2030 font-size: 0.7rem; 2031 font-weight: 700; 2032 text-transform: uppercase; 2033 letter-spacing: 0.5px; 2034 white-space: nowrap; 2035 } 2036 2037 2038 .badge-green { 2039 background-color: rgba(136, 221, 136, 0.2); 2040 color: #88dd88; 2041 border: 1px solid rgba(136, 221, 136, 0.4); 2042 } 2043 2044.eael-feature-list-content-box:not(.badge-exclude .eael-feature-list-content-box) { 2045 display: inline-flex; 2046} 2047 2048/* RTL CSS -- start */ 2049/* Font */ 2050html[lang^="ar"] body, 2051html[lang^="ar"] *:not(i):not(.fa):not([class*="icon"]) { 2052 font-family: 'Cairo', sans-serif !important; 2053} 2054 2055/* Header - footer direction */ 2056.elementor-location-header .elementor-container, 2057.elementor-location-header .e-con, 2058.elementor-location-footer .elementor-container, 2059.elementor-location-footer .e-con { 2060 direction: ltr; 2061} 2062 2063.e-gallery--rtl.e-gallery-container { 2064 direction: ltr; 2065} 2066 2067/* RTL CSS --- End */ </style> 2068 </head> 2069 2070<body itemtype='https://schema.org/WebPage' itemscope='itemscope' class="home wp-singular page-template page-template-elementor_header_footer page page-id-8826 wp-custom-logo wp-embed-responsive wp-theme-astra translatepress-en_US ast-desktop ast-page-builder-template ast-no-sidebar astra-4.14.0 group-blog ast-single-post ast-inherit-site-logo-transparent ast-hfb-header elementor-default elementor-template-full-width elementor-kit-532 elementor-page elementor-page-8826"> 2071 <!-- Google Tag Manager (noscript) snippet added by Site Kit -->
vendor: 74 bytes, lines 2071-2073
2071 2072 <noscript> 2073 <iframe src="https://www.googletagmanager.com/ns.html?id=
2073GTM-P667F87
vendor: 88 bytes, lines 2073-2075
2073" height="0" width="0" style="display:none;visibility:hidden"></iframe> 2074 </noscript> 2075
2075<!-- End Google Tag Manager (noscript) snippet added by Site Kit --> 2076
2076<script data-cfasync="false"> 2077 (function(){var mq=window.matchMedia('(max-width:768.99px)');function apply(isMobile){var b=document.body.classList;if(isMobile){b.add('ast-header-break-point');b.remove('ast-desktop');}else{b.remove('ast-header-break-point');b.add('ast-desktop');}}apply(mq.matches);if(mq.addEventListener){mq.addEventListener('change',function(e){apply(e.matches);});}else if(mq.addListener){mq.addListener(function(e){apply(e.matches);});}})(); 2078 </script>
2078 2079 <e-page-transition preloader-type="animation" preloader-animation-type="opposing-nested-rings" class="e-page-transition--entering" exclude="^https\:\/\/cinemagicmaker\.ai\/wp\-admin\/"> 2080 </e-page-transition> 2081 <style> 2082 @media only screen and (min-width: 1025px) { 2083 2084 .lqdglass { 2085 backdrop-filter: blur(15px); 2086 border: 1px solid #ffffff1a!important; 2087 border-radius: 40px!important; 2088 overflow: hidden; 2089 box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.33); 2090 } 2091} 2092 2093 @media only screen and (max-width: 1024px) { 2094 2095 .lqdglassM { 2096 backdrop-filter: blur(15px); 2097 border: 1px solid #ffffff1a!important; 2098 border-radius: 20px!important; 2099 overflow: hidden; 2100 box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.33); 2101 } 2102} 2103 2104 2105</style> 2106 2107 2108 2109<a 2110 class="skip-link screen-reader-text" 2111 href="#content"> 2112 Skip to content</a> 2113 2114<div 2115class="hfeed site" id="page"> 2116 <header data-elementor-type="header" data-elementor-id="7385" class="elementor elementor-7385 elementor-location-header" data-elementor-post-type="elementor_library"> 2117 <div class="elementor-element elementor-element-41a5f97 e-con-full e-flex e-con e-parent" data-id="41a5f97" data-element_type="container" data-e-type="container" id="TopMenu" data-settings="{"background_motion_fx_opacity_effect":"yes","background_motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":1,"end":3}},"background_motion_fx_range":"page","background_motion_fx_opacity_direction":"out-in","background_motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"background_motion_fx_devices":["desktop","tablet","mobile"]}"> 2118 <div class="elementor-element elementor-element-b8420db e-flex e-con-boxed e-con e-child" data-id="b8420db" data-element_type="container" data-e-type="container"> 2119 <div class="e-con-inner"> 2120 <div class="elementor-element elementor-element-5f5d8da e-con-full e-flex e-con e-child" data-id="5f5d8da" data-element_type="container" data-e-type="container"> 2121 <div class="elementor-element elementor-element-6454878 e-con-full e-flex e-con e-child" data-id="6454878" data-element_type="container" data-e-type="container"> 2122 <div class="elementor-element elementor-element-7538522 elementor-widget elementor-widget-theme-site-logo elementor-widget-image" data-id="7538522" data-element_type="widget" data-e-type="widget" data-widget_type="theme-site-logo.default"> 2123 <div class="elementor-widget-container"> 2124 <a href="https://cinemagicmaker.ai"> 2125 <img width="757" height="156" src="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-01.svg" class="attachment-full size-full wp-image-13264" alt="" /> </a> 2126 </div> 2127 </div> 2128 </div> 2129 <div class="elementor-element elementor-element-2a2aae7 e-con-full e-flex e-con e-child" data-id="2a2aae7" data-element_type="container" data-e-type="container"> 2130 <div class="elementor-element elementor-element-5ccc3eb elementor-nav-menu--stretch elementor-nav-menu--dropdown-tablet elementor-nav-menu__text-align-aside elementor-nav-menu--toggle elementor-nav-menu--burger elementor-widget elementor-widget-nav-menu" data-id="5ccc3eb" data-element_type="widget" data-e-type="widget" data-settings="{"full_width":"stretch","layout":"horizontal","submenu_icon":{"value":"<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-caret-down\"
2130 viewBox=\"0 0 320 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z\"><\/path><\/svg>","library":"fa-solid"},"toggle":"burger"}" data-widget_type="nav-menu.default"> 2131 <div class="elementor-widget-container"> 2132 <nav aria-label="Menu" class="elementor-nav-menu--main elementor-nav-menu__container elementor-nav-menu--layout-horizontal e--pointer-underline e--animation-fade"> 2133 <ul id="menu-1-5ccc3eb" class="elementor-nav-menu"><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9342"><a href="/#unique_capabilities" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Unique Capabilities</a></li> 2134<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9343"><a href="/#control" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Control</a></li> 2135<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9341"><a href="/#enhance" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Enhance</a></li> 2136<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9344"><a href="/#our_story" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Our Story</a></li> 2137<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-12426"><a href="/#tawam" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Tawam<sup>AI</sup></a></li> 2138<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-10162"><a href="/#Pricing" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Pricing</a></li> 2139<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10747"><a target="_blank" href="https://app.cinemagicmaker.ai/" class="elementor-item menu-link">Magic App</a></li> 2140<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13149"><a href="https://cinemagicmaker.ai/support/" class="elementor-item menu-link">Support</a></li> 2141<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13244"><a href="https://cinemagicmaker.ai/mcp/" class="elementor-item menu-link">MCP</a></li> 2142</ul> </nav> 2143 <div class="elementor-menu-toggle" role="button" tabindex="0" aria-label="Menu Toggle" aria-expanded="false"> 2144 <svg aria-hidden="true" role="presentation" class="elementor-menu-toggle__icon--open e-font-icon-svg e-eicon-menu-bar" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M104 333H896C929 333 958 304 958 271S929 208 896 208H104C71 208 42 237 42 271S71 333 104 333ZM104 583H896C929 583 958 554 958 521S929 458 896 458H104C71 458 42 487 42 521S71 583 104 583ZM104 833H896C929 833 958 804 958 771S929 708 896 708H104C71 708 42 737 42 771S71 833 104 833Z"></path></svg><svg aria-hidden="true" role="presentation" class="elementor-menu-toggle__icon--close e-font-icon-svg e-eicon-close" viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><path d="M742 167L500 408 258 167C246 154 233 150 217 150 196 150 179 158 167 167 154 179 150 196 150 212 150 229 154 242 171 254L408 500 167 742C138 771 138 800 167 829 196 858 225 858 254 829L496 587 738 829C750 842 767 846 783 846 800 846 817 842 829 829 842 817 846 804 846 783 846 767 842 750 829 737L588 500 833 258C863 229 863 200 833 171 804 137 775 137 742 167Z"></path></svg> </div> 2145 <nav class="elementor-nav-menu--dropdown elementor-nav-menu__container" aria-hidden="true"> 2146 <ul id="menu-2-5ccc3eb" class="elementor-nav-menu"><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9342"><a href="/#unique_capabilities" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Unique Capabilities</a></li> 2147<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9343"><a href="/#control" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Control</a></li> 2148<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9341"><a href="/#enhance" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Enhance</a></li> 2149<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9344"><a href="/#our_story" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Our Story</a></li> 2150<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-12426"><a href="/#tawam" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Tawam<sup>AI</sup></a></li> 2151<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-10162"><a href="/#Pricing" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Pricing</a></li> 2152<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10747"><a target="_blank" href="https://app.cinemagicmaker.ai/" class="elementor-item menu-link" tabindex="-1">Magic App</a></li> 2153<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13149"><a href="https://cinemagicmaker.ai/support/" class="elementor-item menu-link" tabindex="-1">Support</a></li> 2154<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13244"><a href="https://cinemagicmaker.ai/mcp/" class="elementor-item menu-link" tabindex="-1">MCP</a></li> 2155</ul> </nav> 2156 </div>
2157 </div> 2158 <div class="elementor-element elementor-element-5ea195d elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html" data-id="5ea195d" data-element_type="widget" data-e-type="widget" data-widget_type="html.default"> 2159 <div class="elementor-widget-container"> 2160 <style> 2161/* ââ Language Pill â cinemagicmaker.ai ââ */ 2162.cm-lang-pill { 2163 display: inline-flex; 2164 align-items: center; 2165 gap: 2px; 2166 background: rgba(255, 255, 255, 0.08); 2167 border: 1px solid rgba(255, 255, 255, 0.12); 2168 border-radius: 100px; 2169 padding: 3px; 2170 font-family: "Neulis", sans-serif; 2171 position: relative; 2172} 2173 2174/* sliding bubble behind the active item */ 2175.cm-lang-pill .cm-bubble { 2176 position: absolute; 2177 top: 3px; 2178 left: 3px; 2179 height: calc(100% - 6px); 2180 width: calc(50% - 4px); 2181 background: rgba(255, 255, 255, 0.14); 2182 border-radius: 100px; 2183 transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1); 2184 z-index: 0; 2185 pointer-events: none; 2186} 2187 2188/* shift bubble to the right when AR is active */ 2189.cm-lang-pill.ar-active .cm-bubble { 2190 transform: translateX(calc(100% + 2px)); 2191} 2192 2193/* each language link */ 2194.cm-lang-pill .cm-lang-item { 2195 position: relative; 2196 z-index: 1; 2197 display: inline-flex; 2198 align-items: center; 2199 padding: 5px 14px; 2200 text-decoration: none !important; 2201 color: rgba(242, 242, 242, 0.5); 2202 font-size: 11px; 2203 font-weight: 500; 2204 letter-spacing: 0.5px; 2205 text-transform: uppercase; 2206 border-radius: 100px; 2207 transition: color 0.3s ease; 2208 cursor: pointer; 2209 line-height: 1; 2210 white-space: nowrap; 2211} 2212 2213.cm-lang-pill .cm-lang-item.is-active { 2214 color: #f2f2f2; 2215} 2216 2217.cm-lang-pill .cm-lang-item:hover { 2218 color: #f2f2f2; 2219} 2220 2221/* code label */ 2222.cm-lang-pill .cm-code { 2223 display: inline-block; 2224} 2225</style> 2226 2227<!-- Language Pill --> 2228<nav class="cm-lang-pill" aria-label="Language switcher" data-no-translation> 2229 <!-- sliding bubble --> 2230 <div class="cm-bubble"></div> 2231 2232 <!-- EN (default language â no slug) --> 2233 <a class="cm-lang-item" data-lang="en" href="#"> 2234 <span class="cm-code">EN</span> 2235 </a> 2236 2237 <!-- AR --> 2238 <a class="cm-lang-item" data-lang="ar" href="#"> 2239 <span class="cm-code">AR</span> 2240 </a> 2241</nav> 2242
2243<script> 2244/** 2245 * TranslatePress language switcher for cinemagicmaker.ai 2246 * âââââââââââââââââââââââââââââââââââââââââââââââââââââ 2247 * URL scheme (subdirectory mode): 2248 * English (default) â / (no slug) 2249 * Arabic â /ar/... 2250 * 2251 * Set defaultHasSlug = true if you later enable a slug for English too. 2252 */ 2253(function () { 2254 /* ââ Config ââ */ 2255 var defaultHasSlug = false; 2256 var langs = { 2257 en: defaultHasSlug ? 'en' : '', // '' = no slug for default 2258 ar: 'ar' 2259 }; 2260 2261 /* ââ Current URL helpers ââ */ 2262 var url = new URL(window.location.href); 2263 var path = url.pathname; 2264 2265 // Strip any existing 2-letter lang slug from the beginning of the path 2266 var strippedPath = path.replace(/^\/([a-z]{2})(?:[-_][A-Za-z]{2})?(\/|$)/i, '/'); 2267 2268 function buildUrlFor(langKey) { 2269 var slug = langs[langKey]; 2270 var newPath = slug ? ('/' + slug + strippedPath) : strippedPath; 2271 newPath = newPath.replace(/\/{2,}/g, '/'); // normalise // 2272 return url.origin + newPath + url.search + url.hash; 2273 } 2274 2275 /* ââ DOM refs ââ */ 2276 var pill = document.querySelector('.cm-lang-pill'); 2277 var enLink = pill && pill.querySelector('.cm-lang-item[data-lang="en"]'); 2278 var arLink = pill && pill.querySelector('.cm-lang-item[data-lang="ar"]'); 2279 2280 if (!pill || !enLink || !arLink) return; 2281 2282 /* ââ Set correct hrefs ââ */ 2283 enLink.setAttribute('href', buildUrlFor('en')); 2284 arLink.setAttribute('href', buildUrlFor('ar')); 2285 2286 /* ââ Active state ââ */ 2287 var isArabic = /^\/ar(\/|$)/i.test(path); 2288 2289 if (isArabic) { 2290 arLink.classList.add('is-active'); 2291 pill.classList.add('ar-active'); 2292 } else { 2293 enLink.classList.add('is-active'); 2294 } 2295})(); 2296</script>
2296 </div> 2297 </div> 2298 </div> 2299 </div> 2300 </div> 2301 </div> 2302 </div> 2303 </header> 2304 <div id="content" class="site-content"> 2305 <div class="ast-container"> 2306 <div data-elementor-type="wp-page" data-elementor-id="8826" class="elementor elementor-8826" data-elementor-post-type="page"> 2307 <div class="elementor-element elementor-element-c1357e8 e-con-full e-flex e-con e-parent" data-id="c1357e8" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2308 <div class="elementor-element elementor-element-0a64786 elementor-widget elementor-widget-template" data-id="0a64786" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 2309 <div class="elementor-widget-container"> 2310 <div class="elementor-template"> 2311 <div data-elementor-type="section" data-elementor-id="8999" class="elementor elementor-8999" data-elementor-post-type="elementor_library"> 2312 <div class="elementor-element elementor-element-d81bd68 e-con-full e-flex e-con e-parent" data-id="d81bd68" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2313 <div class="elementor-element elementor-element-481f9b7 e-con-full e-flex e-con e-child" data-id="481f9b7" data-element_type="container" data-e-type="container" id="TheStars" data-settings="{"sticky":"top","sticky_parent":"yes","sticky_on":["desktop","tablet"],"sticky_offset_mobile":0,"sticky_effects_offset_mobile":0,"sticky_anchor_link_offset_mobile":0,"sticky_offset":0,"sticky_effects_offset":0,"sticky_anchor_link_offset":0}"> 2314 <div class="elementor-element elementor-element-c03f48f elementor-widget elementor-widget-image" data-id="c03f48f" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2315 <div class="elementor-widget-container"> 2316 <img decoding="async" width="76" height="76" src="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-icon-01.svg" class="attachment-full size-full wp-image-13265" alt="" /> </div> 2317 </div> 2318 </div> 2319 <div class="elementor-element elementor-element-35ea51c e-con-full e-flex e-con e-child" data-id="35ea51c" data-element_type="container" data-e-type="container" data-settings="{"sticky_parent":"yes","sticky":"bottom","sticky_on":["mobile"],"sticky_offset":0,"sticky_effects_offset":0,"sticky_anchor_link_offset":0}"> 2320 <div class="elementor-element elementor-element-5784cc3 e-con-full e-flex e-con e-child" data-id="5784cc3" data-element_type="container" data-e-type="container"> 2321 <div class="elementor-element elementor-element-33723e6 titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="33723e6" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2322 <div class="elementor-widget-container"> 2323 <h2 class="elementor-heading-title elementor-size-default">Studio-Level Production Powered by AI</h2> </div> 2324 </div> 2325 <div class="elementor-element elementor-element-96034dd titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="96034dd" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2326 <div class="elementor-widget-container"> 2327 <h3 class="elementor-heading-title elementor-size-default">Magic Maker is a production-grade AI platform built for media professionals, enabling cinematic-quality content creation using elite AI models within a professional production workflow.</h3> </div> 2328 </div> 2329 <div class="elementor-element elementor-element-43fa75e elementor-align-center elementor-widget elementor-widget-button" data-id="43fa75e" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 2330 <div class="elementor-widget-container"> 2331 <div class="elementor-button-wrapper"> 2332 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://app.cinemagicmaker.ai/auth/login" target="_blank"> 2333 <span class="elementor-button-content-wrapper"> 2334 <span class="elementor-button-text">Get Started For Free</span> 2335 </span> 2336 </a> 2337 </div> 2338 </div>
2339 </div> 2340 </div> 2341 <div class="elementor-element elementor-element-caf47ae e-con-full e-flex e-con e-child" data-id="caf47ae" data-element_type="container" data-e-type="container"> 2342 <div class="elementor-element elementor-element-e17e3d0 titleHMA elementor-widget elementor-widget-heading" data-id="e17e3d0" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2343 <div class="elementor-widget-container"> 2344 <h2 class="elementor-heading-title elementor-size-default">trusted by</h2> </div> 2345 </div> 2346 <div class="elementor-element elementor-element-97464fa e-con-full e-flex e-con e-child" data-id="97464fa" data-element_type="container" data-e-type="container"> 2347 <div class="elementor-element elementor-element-569d1a8 elementor-widget elementor-widget-image" data-id="569d1a8" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2348 <div class="elementor-widget-container"> 2349 <img fetchpriority="high" decoding="async" width="325" height="167" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/KUWAIT-AIRWAYS-logo.png" class="attachment-full size-full wp-image-12241" alt="" /> </div> 2350 </div> 2351 <div class="elementor-element elementor-element-371ce56 elementor-widget elementor-widget-image" data-id="371ce56" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2352 <div class="elementor-widget-container"> 2353 <img decoding="async" width="325" height="167" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/KPC.png" class="attachment-full size-full wp-image-12242" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/KPC.png 325w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/KPC-300x154.png 300w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/KPC-18x9.png 18w" sizes="(max-width: 325px) 100vw, 325px" /> </div> 2354 </div> 2355 <div class="elementor-element elementor-element-cc7aa58 elementor-widget elementor-widget-image" data-id="cc7aa58" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 2356 <div class="elementor-widget-container"> 2357 <img loading="lazy" decoding="async" width="325" height="167" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/kdd-logo.png" class="attachment-full size-full wp-image-12240" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/kdd-logo.png 325w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/kdd-logo-300x154.png 300w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/kdd-logo-18x9.png 18w" sizes="(max-width: 325px) 100vw, 325px" /> </div> 2358 </div> 2359 </div> 2360 </div> 2361 </div> 2362 </div> 2363 </div> 2364 </div> 2365 </div> 2366 </div> 2367 </div> 2368 <div class="elementor-element elementor-element-601838b e-con-full e-flex e-con e-parent" data-id="601838b" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2369 <div class="elementor-element elementor-element-951cc16 elementor-widget elementor-widget-template" data-id="951cc16" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_blur_effect":"yes","motion_fx_blur_direction":"in-out","motion_fx_blur_level":{"unit":"px","size":12,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":75,"end":100}},"motion_fx_devices":["desktop"]}" data-widget_type="template.default"> 2370 <div class="elementor-widget-container"> 2371 <div class="elementor-template"> 2372 <div data-elementor-type="section" data-elementor-id="9406" class="elementor elementor-9406" data-elementor-post-type="elementor_library"> 2373 <div class="elementor-element elementor-element-444413d e-con-full e-flex e-con e-parent" data-id="444413d" data-element_type="container" data-e-type="container" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/mask-c.mp4","background_play_on_mobile":"yes"}"> 2374 <div class="elementor-background-video-container"> 2375 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2376 </div> <div class="elementor-element elementor-element-46f7ce6 elementor-widget elementor-widget-menu-anchor" data-id="46f7ce6" data-element_type="widget" data-e-type="widget" data-widget_type="menu-anchor.default"> 2377 <div class="elementor-widget-container"> 2378 <div class="elementor-menu-anchor" id="unique_capabilities"></div> 2379 </div>
2380 </div> 2381 <div class="elementor-element elementor-element-01c9ca6 e-con-full e-flex e-con e-child" data-id="01c9ca6" data-element_type="container" data-e-type="container" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/mask-c.mp4","background_play_on_mobile":"yes"}"> 2382 <div class="elementor-background-video-container"> 2383 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2384 </div><div class="elementor-element elementor-element-6011757 e-con-full e-flex e-con e-child" data-id="6011757" data-element_type="container" data-e-type="container"> 2385 <div class="elementor-element elementor-element-67c44bb e-con-full e-flex e-con e-child" data-id="67c44bb" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_devices":["desktop"],"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 2386 <div class="elementor-element elementor-element-37a52f9 titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="37a52f9" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_blur_effect":"yes","motion_fx_blur_direction":"in-out","motion_fx_blur_level":{"unit":"px","size":15,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":66,"end":100}},"motion_fx_devices":["desktop"]}" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2387 <div class="elementor-widget-container"> 2388 <h2 class="elementor-heading-title elementor-size-default">Building tomorrowâs tools for content creation.</h2> </div> 2389 </div> 2390 </div> 2391 <div class="elementor-element elementor-element-2796bb6 e-con-full e-flex e-con e-child" data-id="2796bb6" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_devices":["desktop"],"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 2392 <div class="elementor-element elementor-element-a2673b1 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="a2673b1" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2393 <div class="elementor-widget-container"> 2394 <div class="elementor-heading-title elementor-size-default">Create cinematic visuals in Arabic and English. Control every detail, from director style to camera lens. A complete production assistant, powered by AI.</div> </div> 2395 </div> 2396 </div> 2397 </div> 2398 <div class="elementor-element elementor-element-64a08a5 e-con-full e-flex e-con e-child" data-id="64a08a5" data-element_type="container" data-e-type="container"> 2399 <div class="elementor-element elementor-element-aa77934 e-con-full e-flex e-con e-child" data-id="aa77934" data-element_type="container" data-e-type="container"> 2400 <div class="elementor-element elementor-element-5d57ca1 titleHMA elementor-widget-tablet__width-initial elementor-widget elementor-widget-heading" data-id="5d57ca1" data-element_type="widget" data-e-type="widget" data-alt
2400="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2401 <div class="elementor-widget-container"> 2402 <h3 class="elementor-heading-title elementor-size-default">Part of the <b>NVIDIA Inception</b> Program</h3> </div> 2403 </div> 2404 <div class="elementor-element elementor-element-8761075 elementor-widget elementor-widget-image" data-id="8761075" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":5,"end":45}},"motion_fx_devices":["desktop"],"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]}}" data-widget_type="image.default"> 2405 <div class="elementor-widget-container"> 2406 <img loading="lazy" decoding="async" width="795" height="434" src="https://cinemagicmaker.ai/wp-content/uploads/2025/11/NvidiaBadge_03.png" class="attachment-full size-full wp-image-13199" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/11/NvidiaBadge_03.png 795w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/NvidiaBadge_03-300x164.png 300w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/NvidiaBadge_03-768x419.png 768w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/NvidiaBadge_03-18x10.png 18w" sizes="(max-width: 795px) 100vw, 795px" /> </div> 2407 </div> 2408 </div> 2409 <div class="elementor-element elementor-element-c4687d6 e-con-full e-flex e-con e-child" data-id="c4687d6" data-element_type="container" data-e-type="container"> 2410 <div class="elementor-element elementor-element-312bee2 titleHMA elementor-widget-tablet__width-initial elementor-widget elementor-widget-heading" data-id="312bee2" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2411 <div class="elementor-widget-container"> 2412 <h3 class="elementor-heading-title elementor-size-default">Certified <b>Google Partner</b></h3> </div> 2413 </div> 2414 <div class="elementor-element elementor-element-1bb9397 elementor-widget elementor-widget-image" data-id="1bb9397" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":5,"end":45}},"motion_fx_devices":["desktop"],"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]}}" data-widget_type="image.default"> 2415 <div class="elementor-widget-container"> 2416 <img loading="lazy" decoding="async" width="795" height="434" src="https://cinemagicmaker.ai/wp-content/uploads/2025/11/GooglePartnerBadge_03-1.png" class="attachment-full size-full wp-image-13203" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/11/GooglePartnerBadge_03-1.png 795w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/GooglePartnerBadge_03-1-300x164.png 300w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/GooglePartnerBadge_03-1-768x419.png 768w, https://cinemagicmaker.ai/wp-content/uploads/2025/11/GooglePartnerBadge_03-1-18x10.png 18w" sizes="(max-width: 795px) 100vw, 795px" /> </div> 2417 </div> 2418 </div> 2419 </div> 2420 </div> 2421 </div> 2422 </div> 2423 </div> 2424 </div> 2425 </div> 2426 </div> 2427 <div class="elementor-element elementor-element-4137b38 e-con-full e-flex e-con e-parent" data-id="4137b38" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2428 <div class="elementor-element elementor-element-f70e537 elementor-widget elementor-widget-template" data-id="f70e537" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_blur_effect":"yes","motion_fx_blur_direction":"in-out","motion_fx_blur_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":74,"end":100}},"motion_fx_devices":["desktop"]}" data-widget_type="template.default"> 2429 <div class="elementor-widget-container"> 2430 <div class="elementor-template"> 2431 <div data-elementor-type="section" data-elementor-id="7510" class="elementor elementor-7510" data-elementor-post-type="elementor_library"> 2432 <div class="elementor-element elementor-element-26b5ea0 e-con-full e-flex e-con e-parent" data-id="26b5ea0" data-element_type="container" data-e-type="container" id="Dark" data-settings="{"background_background":"classic"}" data-bg="Dark"> 2433 <div class="elementor-element elementor-element-5e1ba85 elementor-widget elementor-widget-menu-anchor" data-id="5e1ba85" data-element_type="widget" data-e-type="widget" data-widget_type="menu-anchor.default"> 2434 <div class="elementor-widget-container"> 2435 <div class="elementor-menu-anchor" id="magic"></div> 2436 </div>
2437 </div> 2438 <div class="elementor-element elementor-element-d270e75 e-con-full e-flex e-con e-child" data-id="d270e75" data-element_type="container" data-e-type="container"> 2439 <div class="elementor-element elementor-element-194ab2f e-con-full e-flex e-con e-child" data-id="194ab2f" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":3,"sizes":[]},"motion_fx_devices":["desktop"],"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 2440 <div class="elementor-element elementor-element-24c3c54 elementor-widget__width-inherit titleHMA elementor-widget elementor-widget-heading" data-id="24c3c54" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2441 <div class="elementor-widget-container"> 2442 <h2 class="elementor-heading-title elementor-size-default">Powering the next generation of creators with tomorrowâs AI-driven tool.</h2> </div> 2443 </div> 2444 <div class="elementor-element elementor-element-7d9bd44 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="7d9bd44" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2445 <div class="elementor-widget-container"> 2446 <div class="elementor-heading-title elementor-size-default">Magic Maker is our AI engine connecting you to top creative models for image, video, and design - turning ideas into cinematic realities that blend human imagination with AI.</div> </div> 2447 </div> 2448 <div class="elementor-element elementor-element-c719235 elementor-widget elementor-widget-spacer" data-id="c719235" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default"> 2449 <div class="elementor-widget-container"> 2450 <div class="elementor-spacer"> 2451 <div class="elementor-spacer-inner"></div> 2452 </div> 2453 </div> 2454 </div> 2455 <div class="elementor-element elementor-element-99a407c elementor-align-left elementor-widget elementor-widget-button" data-id="99a407c" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 2456 <div class="elementor-widget-container"> 2457 <div class="elementor-button-wrapper"> 2458 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://app.cinemagicmaker.ai/auth/login" target="_blank"> 2459 <span class="elementor-button-content-wrapper"> 2460 <span class="elementor-button-text">Try Now</span> 2461 </span> 2462 </a> 2463 </div> 2464 </div> 2465 </div> 2466 </div> 2467 </div> 2468 <div class="elementor-element elementor-element-ca9961d e-con-full e-flex e-con e-child" data-id="ca9961d" data-element_type="container" data-e-type="container"> 2469 <div class="elementor-element elementor-element-bb58c4b e-con-full e-flex e-con e-child" data-id="bb58c4b" data-element_type="container" data-e-type="container" id="clip0" data-video1="https://www.cinemagicmaker.ai/wp-content/uploads/2025/10/MarkazOr.mp4" data-video2="https://www.cinemagicmaker.ai/wp-content/uploads/2025/10/MarkazAi.mp4"> 2470 <div class="elementor-element elementor-element-4eecd4e titleHMA elementor-widget__width-auto elementor-widget elementor-widget-heading" data-id="4eecd4e" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2471 <div class="elementor-widget-container"> 2472 <div class="elementor-heading-title elementor-size-default">rewriting reality</div> </div> 2473 </div> 2474 <div class="elementor-element elementor-element-c28f57d titleHMA elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="c28f57d" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2475 <div class="elementor-widget-container"> 2476 <div class="elementor-heading-title elementor-size-default">frame by frame.</div>
2476 </div> 2477 </div> 2478 </div> 2479 </div> 2480 </div> 2481 </div> 2482 </div> 2483 </div> 2484 </div> 2485 </div> 2486 <div class="elementor-element elementor-element-5dae2f8 e-con-full e-flex e-con e-parent" data-id="5dae2f8" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2487 <div class="elementor-element elementor-element-dcc3aa4 elementor-widget elementor-widget-template" data-id="dcc3aa4" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 2488 <div class="elementor-widget-container"> 2489 <div class="elementor-template"> 2490 <div data-elementor-type="section" data-elementor-id="9693" class="elementor elementor-9693" data-elementor-post-type="elementor_library"> 2491 <div class="elementor-element elementor-element-fc28783 e-con-full e-flex e-con e-parent" data-id="fc28783" data-element_type="container" data-e-type="container" data-settings="{"background_motion_fx_devices":["desktop","tablet","mobile"]}"> 2492 <div class="elementor-element elementor-element-e3b4bdf elementor-widget__width-inherit elementor-absolute elementor-widget elementor-widget-menu-anchor" data-id="e3b4bdf" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="menu-anchor.default"> 2493 <div class="elementor-widget-container"> 2494 <div class="elementor-menu-anchor" id="control"></div> 2495 </div> 2496 </div> 2497 <div class="elementor-element elementor-element-a3e7a89 titleHMA elementor-absolute elementor-hidden-mobile elementor-widget elementor-widget-heading" data-id="a3e7a89" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="heading.default"> 2498 <div class="elementor-widget-container"> 2499 <h2 class="elementor-heading-title elementor-size-default">Take the control</h2> </div> 2500 </div> 2501 </div> 2502 <div class="elementor-element elementor-element-444413d e-con-full e-flex e-con e-parent" data-id="444413d" data-element_type="container" data-e-type="container" id="masker" data-settings="{"background_background":"classic","background_motion_fx_translateX_effect":"yes","background_motion_fx_motion_fx_scrolling":"yes","background_motion_fx_translateX_speed":{"unit":"px","size":10,"sizes":[]},"background_motion_fx_devices":["desktop"],"background_motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 2503 <div class="elementor-element elementor-element-01c9ca6 e-con-full e-flex e-con e-child" data-id="01c9ca6" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_devices":["desktop"],"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 2504 <div class="elementor-element elementor-element-4d4e273 e-con-full e-flex e-con e-child" data-id="4d4e273" data-element_type="container" data-e-type="container"> 2505 <div class="elementor-element elementor-element-87daed1 e-con-full e-flex e-con e-child" data-id="87daed1" data-element_type="container" data-e-type="container"> 2506 <div class="elementor-element elementor-element-d3a8eba e-con-full e-flex e-con e-child" data-id="d3a8eba" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","background_motion_fx_motion_fx_mouse":"yes","background_motion_fx_mouseTrack_effect":"yes","background_motion_fx_mouseTrack_speed":{"unit":"px","size":1,"sizes":[]}}"> 2507 <div class="elementor-element elementor-element-da04579 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="da04579" data-element_type="widget" data-e-type="widget" data-alt
2507="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2508 <div class="elementor-widget-container"> 2509 <h3 class="elementor-heading-title elementor-size-default">Director</h3> </div> 2510 </div> 2511 </div> 2512 </div> 2513 <div class="elementor-element elementor-element-a3fd8fb e-con-full e-flex e-con e-child" data-id="a3fd8fb" data-element_type="container" data-e-type="container"> 2514 <div class="elementor-element elementor-element-738c5dc e-con-full e-flex e-con e-child" data-id="738c5dc" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","background_motion_fx_motion_fx_mouse":"yes","background_motion_fx_mouseTrack_effect":"yes","background_motion_fx_mouseTrack_direction":"negative","background_motion_fx_mouseTrack_speed":{"unit":"px","size":1,"sizes":[]}}"> 2515 <div class="elementor-element elementor-element-ee7e909 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="ee7e909" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2516 <div class="elementor-widget-container"> 2517 <h3 class="elementor-heading-title elementor-size-default">Camera</h3> </div> 2518 </div> 2519 </div> 2520 </div> 2521 <div class="elementor-element elementor-element-1f74e8e e-con-full e-flex e-con e-child" data-id="1f74e8e" data-element_type="container" data-e-type="container"> 2522 <div class="elementor-element elementor-element-3c25f3b e-con-full e-flex e-con e-child" data-id="3c25f3b" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","background_motion_fx_motion_fx_mouse":"yes","background_motion_fx_mouseTrack_effect":"yes","background_motion_fx_mouseTrack_speed":{"unit":"px","size":1,"sizes":[]}}"> 2523 <div class="elementor-element elementor-element-8bfd8d9 elementor-widget__width-inherit elementor-widget elementor-widget-heading" data-id="8bfd8d9" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2524 <div class="elementor-widget-container"> 2525 <h3 class="elementor-heading-title elementor-size-default">Lenses</h3> </div> 2526 </div> 2527 </div> 2528 </div> 2529 </div> 2530 <div class="elementor-element elementor-element-67c44bb e-con-full e-flex e-con e-child" data-id="67c44bb" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_speed":{"unit":"px","size":3,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":85}},"motion_fx_devices":["desktop"]}"> 2531 <div class="elementor-element elementor-element-92b8bc2 e-con-full e-flex e-con e-child" data-id="92b8bc2" data-element_type="container" data-e-type="container"> 2532 <div class="elementor-element elementor-element-d6256ff titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="d6256ff" data-element_type="widget" data-e-type="widget" data-alt="< const result = MagicMaker(vision).yourWay(); >" data-widget_type="heading.default"> 2533 <div class="elementor-widget-container"> 2534 <h2 class="elementor-heading-title elementor-size-default">Weâve taken cameras out of the equation, and brought intelligence in.</h2> </div> 2535 </div> 2536 </div> 2537 <div class="elementor-element elementor-element-731ec40 e-con-full e-flex e-con e-child" data-id="731ec40" data-element_type="container" data-e-type="container"> 2538 <div class="elementor-element elementor-element-a2673b1 elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="a2673b1" data-element_type="widget" data-e-type="widget" data-alt
2538="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2539 <div class="elementor-widget-container"> 2540 <h3 class="elementor-heading-title elementor-size-default">Choose your director, camera, lens, and shot angle. Magic Maker adapts to your creative choices, delivering a unique, professional look every time.</h3> </div> 2541 </div> 2542 </div> 2543 </div> 2544 </div> 2545 <div class="elementor-element elementor-element-7422ab1 elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html" data-id="7422ab1" data-element_type="widget" data-e-type="widget" data-widget_type="html.default"> 2546 <div class="elementor-widget-container"> 2547 <style> 2548 2549@media (max-width: 1024px){ 2550 #masker{ 2551 filter: blur(0px)!important; 2552 } 2553 #masker::after { 2554 display: none!important; 2555 } 2556} 2557 2558/* === EFEKT TYLKO NA DESKTOPIE === */ 2559@media (hover: hover) and (pointer: fine){ 2560 2561 /* === CSS === */ 2562 #masker{ 2563 position: relative; 2564 isolation: isolate; /* blur nie âwyciekaâ poza #masker */ 2565 overflow: hidden; /* opcjonalnie */ 2566 2567 /* pozycja kursora ustawiana z JS */ 2568 --x: 50%; 2569 --y: 50%; 2570 2571 /* parametry efektu (zmieniaj ÅmiaÅo) */ 2572 --diameter: 400px; /* docelowa Årednica okrÄgu (px) */ 2573 --blur: 10px; /* siÅa rozmycia poza okrÄgiem */ 2574 2575 /* aktualny promieÅ (JS bÄdzie animowaÅ) */ 2576 --r: 0px; 2577 --tint-rgb: 255 255 255; /* kolor wypeÅnienia w formacie R G B */ 2578 --tint-alpha: 0.1; /* 0 = wyÅÄ czone; np. 0.1 â #ffffff1a */ 2579 2580 --ring: 1px; /* gruboÅÄ obramowania; 0 = brak np. 2px */ 2581 --ring-rgb: 255 255 255; /* kolor pierÅcienia w R G B */ 2582 --ring-alpha: 0.05; /* alfa pierÅcienia; np. 0.6 */ 2583 } 2584 2585 #masker::before{ 2586 content: ""; 2587 position: absolute; 2588 inset: 0; 2589 pointer-events: none; 2590 z-index: 11; /* nad blur-em z ::after (który ma 10) */ 2591 2592 /* Dwie warstwy tÅa: 1) wypeÅnienie, 2) pierÅcieÅ (border) */ 2593 background: 2594 /* 1) TINT wewnÄ trz okrÄgu */ 2595 radial-gradient( 2596 circle at var(--x) var(--y), 2597 rgb(var(--tint-rgb) / var(--tint-alpha)) 0 var(--r), 2598 transparent calc(var(--r) + 1px) 2599 ), 2600 /* 2) BORDER jako cienki pierÅcieÅ przy krawÄdzi */ 2601 radial-gradient( 2602 circle at var(--x) var(--y), 2603 transparent calc(max(var(--r) - var(--ring), 0px)), 2604 rgb(var(--ring-rgb) / var(--ring-alpha)) calc(max(var(--r) - var(--ring), 0px)) var(--r), 2605 transparent calc(var(--r) + 1px) 2606 ); 2607 } 2608 2609 /* Overlay rozmywajÄ cy wszystko poza âdziurÄ â */ 2610 #masker::after{ 2611 content: ""; 2612 position: absolute; 2613 inset: 0; 2614 pointer-events: none; 2615 z-index: 10; 2616 2617 /* rozmycie tÅa pod overlayem */ 2618 -webkit-backdrop-filter: blur(var(--blur)); 2619 backdrop-filter: blur(var(--blur)); 2620 2621 /* MASKA: Årodek przezroczysty (brak blur), reszta widoczna (z blur) */ 2622 -webkit-mask: radial-gradient( 2623 circle at var(--x) var(--y), 2624 transparent 0 var(--r), 2625 #fff calc(var(--r) + 1px) 100% 2626 ); 2627 mask: radial-gradient( 2628 circle at var(--x) var(--y), 2629 transparent 0 var(--r), 2630 #fff calc(var(--r) + 1px) 100% 2631 ); 2632 } 2633 2634 /* Soczewka PNG jeżdÅ¼Ä ca z maskÄ */ 2635 #masker .masker-lens{ 2636 position: absolute; 2637 left: var(--x); 2638 top: var(--y); 2639 transform: translate(-50%, -50%) scale(var(--lens-scale, 0.5)); 2640 width: var(--lens-size, var(--diameter)); /* domyÅlnie tyle co maska */ 2641 height: var(--lens-size, var(--diameter)); 2642 background-repeat: no-repeat; 2643 background-position: center center; 2644 background-size: contain; 2645 2646 pointer-events: none; 2647 z-index: 12; /* nad ::before (11) i ::after (10) */ 2648 mix-blend-mode: screen; 2649 opacity: 0; /* JS pÅynnie podnosi do 1 wraz ze wzrostem maski */ 2650 transition: transform 200ms ease, filter 200ms ease, opacity 200ms ease; 2651 will-change: transform, opacity; 2652 } 2653
2654 /* Gdy maska aktywna pozwól na lekki âpopâ transformu (opcjonalnie) */ 2655 #masker.is-active .masker-lens{ 2656 /* nic nie trzeba â skala sterowana zmiennÄ --lens-scale */ 2657 } 2658 2659 #masker{ --lens-size: 510px; } 2660} 2661 2662/* Fallback dla reduced motion â ale tylko na desktopie */ 2663@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: reduce){ 2664 #masker{ --r: calc(var(--diameter) / 2); } 2665} 2666 2667/* HARD-OFF na urzÄ dzeniach dotykowych (gdyby coÅ siÄ jednak wstrzyknÄÅo) */ 2668@media (hover: none), (pointer: coarse){ 2669 #masker .masker-lens{ display: none !important; } 2670} 2671</style> 2672
2673<script> 2674// === JS: dziaÅa wyÅÄ cznie na desktopie (hover:hover & pointer:fine) === 2675(() => { 2676 const el = document.getElementById('masker'); 2677 if (!el) return; 2678 2679 const IS_DESKTOP = window.matchMedia('(hover: hover) and (pointer: fine)').matches; 2680 if (!IS_DESKTOP) { 2681 // Bez efektu na mobile/tablet â nic nie uruchamiamy 2682 el.classList.remove('is-active'); 2683 el.style.removeProperty('--r'); 2684 el.style.removeProperty('--x'); 2685 el.style.removeProperty('--y'); 2686 return; 2687 } 2688 2689 // âââ Soczewka (tworzymy automatycznie) âââ 2690 const LENS_URL = "https://cinemagicmaker.ai/wp-content/uploads/2025/11/lens.png"; 2691 let lens = el.querySelector('.masker-lens'); 2692 if (!lens) { 2693 lens = document.createElement('div'); 2694 lens.className = 'masker-lens'; 2695 lens.setAttribute('aria-hidden', 'true'); 2696 lens.style.backgroundImage = `url("${LENS_URL}")`; 2697 el.appendChild(lens); 2698 } 2699 2700 // Helpers 2701 const pxVar = (name, fallback) => { 2702 const v = getComputedStyle(el).getPropertyValue(name).trim(); 2703 const n = parseFloat(v); 2704 return Number.isFinite(n) ? n : fallback; 2705 }; 2706 2707 const DURATION = 450; // ms 2708 const easeInOut = t => (t < .5) ? 4*t*t*t : 1 - Math.pow(-2*t+2,3)/2; 2709 2710 let targetR = pxVar('--diameter', 520) / 2; 2711 let anim = null; // {from, to, start, raf} 2712 2713 const setR = r => el.style.setProperty('--r', `${r}px`); 2714 2715 const animateTo = (to) => { 2716 const from = parseFloat(getComputedStyle(el).getPropertyValue('--r')) || 0; 2717 if (anim && anim.raf){ cancelAnimationFrame(anim.raf); anim = null; } 2718 const start = performance.now(); 2719 const tick = (now) => { 2720 const t = Math.min(1, (now - start) / DURATION); 2721 const v = from + (to - from) * easeInOut(t); 2722 setR(v); 2723 2724 // âââ Sterowanie soczewkÄ (opacity + skala zależnie od wielkoÅci maski) 2725 const maxR = pxVar('--diameter', 520) / 2; 2726 const p = Math.max(0, Math.min(1, v / maxR)); 2727 lens.style.opacity = p; 2728 lens.style.setProperty('--lens-scale', (0.9 + 0.1 * p).toFixed(3)); 2729 2730 if (t < 1) { anim = { ...anim, raf: requestAnimationFrame(tick) }; } 2731 else { anim = null; if (to === 0) el.classList.remove('is-active'); } 2732 }; 2733 anim = { from, to, start, raf: requestAnimationFrame(tick) }; 2734 }; 2735 2736 // Pozycja kursora -> zmienne CSS (użyje ich i maska, i soczewka) 2737 let mx = 0, my = 0, raf = null; 2738 const updateXY = () => { 2739 raf = null; 2740 const r = el.getBoundingClientRect(); 2741 el.style.setProperty('--x', (mx - r.left) + 'px'); 2742 el.style.setProperty('--y', (my - r.top) + 'px'); 2743 }; 2744 const onMove = e => { 2745 mx = e.clientX ?? e.touches?.[0]?.clientX ?? 0; 2746 my = e.clientY ?? e.touches?.[0]?.clientY ?? 0; 2747 if (!raf) raf = requestAnimationFrame(updateXY); 2748 }; 2749 2750 // Reakcje na wejÅcie/wyjÅcie 2751 const onEnter = e => { 2752 targetR = pxVar('--diameter', 520) / 2; // odczytaj, gdyby zmieniÅo siÄ w CSS 2753 onMove(e); // ustaw x/y natychmiast 2754 el.classList.add('is-active'); // flag dla soczewki (display/transform) 2755 animateTo(targetR); // powiÄksz do docelowego 2756 }; 2757 const onLeave = () => animateTo(0); // zmniejsz do 0 i ukryj 2758 2759 el.addEventListener('pointerenter', onEnter, { passive: true }); 2760 el.addEventListener('pointermove', onMove, { passive: true }); 2761 el.addEventListener('pointerleave', onLeave); 2762 el.addEventListener('pointerdown', onEnter, { passive: true }); 2763 document.addEventListener('pointerup', (e) => { 2764 if (e.pointerType === 'touch') onLeave(); 2765 }, { passive: true }); 2766})(); 2767</script>
2767 2768 </div> 2769 </div> 2770 </div> 2771 </div> 2772 </div> 2773 </div> 2774 </div> 2775 </div> 2776 <div class="elementor-element elementor-element-f21618c e-con-full e-flex e-con e-parent" data-id="f21618c" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2777 <div class="elementor-element elementor-element-7362480 elementor-widget elementor-widget-template" data-id="7362480" data-element_type="widget" data-e-type="widget" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_blur_effect":"yes","motion_fx_blur_direction":"in-out","motion_fx_blur_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":75,"end":100}},"motion_fx_devices":["desktop"]}" data-widget_type="template.default"> 2778 <div class="elementor-widget-container"> 2779 <div class="elementor-template"> 2780 <div data-elementor-type="section" data-elementor-id="9512" class="elementor elementor-9512" data-elementor-post-type="elementor_library"> 2781 <div class="elementor-element elementor-element-444413d e-con-full e-flex e-con e-parent" data-id="444413d" data-element_type="container" data-e-type="container" id="EchoWaveBox" data-settings="{"background_background":"classic"}"> 2782 <div class="elementor-element elementor-element-66a9ca3 elementor-widget__width-inherit elementor-absolute elementor-widget elementor-widget-menu-anchor" data-id="66a9ca3" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="menu-anchor.default"> 2783 <div class="elementor-widget-container"> 2784 <div class="elementor-menu-anchor" id="enhance"></div> 2785 </div> 2786 </div> 2787 <div class="elementor-element elementor-element-01c9ca6 e-con-full e-flex e-con e-child" data-id="01c9ca6" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":1.5,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":85,"end":100}},"motion_fx_devices":["desktop"]}"> 2788 <div class="elementor-element elementor-element-2796bb6 e-con-full e-flex e-con e-child" data-id="2796bb6" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":7,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":25,"end":70}},"motion_fx_blur_effect":"yes","motion_fx_blur_direction":"in-out","motion_fx_blur_level":{"unit":"px","size":15,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":75,"end":100}},"motion_fx_devices":["desktop"]}"> 2789 <div class="elementor-element elementor-element-086f637 e-con-full e-flex e-con e-child" data-id="086f637" data-element_type="container" data-e-type="container" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/prompt-01c.mp4","background_play_on_mobile":"yes","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":20,"end":50}},"motion_fx_devices":["desktop"],"motion_fx_translateY_speed":{"unit":"px","size":4,"sizes":[]}}"> 2790 <div class="elementor-background-video-container"> 2791 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2792 </div> <div class="elementor-element elementor-element-0dc5338 titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="0dc5338" data-element_type="widget" data-e-type="widget" data-alt
2792="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2793 <div class="elementor-widget-container"> 2794 <h3 class="elementor-heading-title elementor-size-default">Prompt</h3> </div> 2795 </div> 2796 </div> 2797 <div class="elementor-element elementor-element-1487b9c e-con-full e-flex e-con e-child" data-id="1487b9c" data-element_type="container" data-e-type="container" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/generate-01c.mp4","background_play_on_mobile":"yes","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":3,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":20,"end":50}},"motion_fx_devices":["desktop"]}"> 2798 <div class="elementor-background-video-container"> 2799 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2800 </div> <div class="elementor-element elementor-element-066ebe2 titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="066ebe2" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2801 <div class="elementor-widget-container"> 2802 <h3 class="elementor-heading-title elementor-size-default">Perfect</h3> </div> 2803 </div> 2804 </div> 2805 <div class="elementor-element elementor-element-1ccf828 e-con-full e-flex e-con e-child" data-id="1ccf828" data-element_type="container" data-e-type="container" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/outcome-01c.mp4","background_play_on_mobile":"yes","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":20,"end":50}},"motion_fx_devices":["desktop"]}"> 2806 <div class="elementor-background-video-container"> 2807 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2808 </div> <div class="elementor-element elementor-element-5de63ec titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="5de63ec" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2809 <div class="elementor-widget-container"> 2810 <h3 class="elementor-heading-title elementor-size-default">Enjoy</h3> </div> 2811 </div> 2812 </div> 2813 </div> 2814 <div class="elementor-element elementor-element-67c44bb e-con-full e-flex e-con e-child" data-id="67c44bb" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_speed":{"unit":"px","size":3,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":85}},"motion_fx_devices":["desktop"]}"> 2815 <div class="elementor-element elementor-element-92b8bc2 e-con-full e-flex e-con e-child" data-id="92b8bc2" data-element_type="container" data-e-type="container"> 2816 <div class="elementor-element elementor-element-d6256ff titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="d6256ff" data-element_type="widget" data-e-type="widget" id="visionWidget" data-alt
2816="< const masterpiece = MagicMaker(prompt); >" data-widget_type="heading.default"> 2817 <div class="elementor-widget-container"> 2818 <h2 class="elementor-heading-title elementor-size-default">From prompt to masterpiece.</h2> </div> 2819 </div> 2820 </div> 2821 <div class="elementor-element elementor-element-731ec40 e-con-full e-flex e-con e-child" data-id="731ec40" data-element_type="container" data-e-type="container"> 2822 <div class="elementor-element elementor-element-a2673b1 elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="a2673b1" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2823 <div class="elementor-widget-container"> 2824 <div class="elementor-heading-title elementor-size-default">Our AI enhances your ideas, perfecting lighting, composition, and artistic direction. Get studio-quality results, effortlessly. 2825</div> </div> 2826 </div> 2827 </div> 2828 </div> 2829 </div> 2830 </div> 2831 </div> 2832 </div> 2833 </div> 2834 </div> 2835 </div> 2836 <div class="elementor-element elementor-element-13de9e1 e-con-full e-flex e-con e-parent" data-id="13de9e1" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2837 <div class="elementor-element elementor-element-e102952 elementor-widget elementor-widget-template" data-id="e102952" data-element_type="widget" data-e-type="widget" id="rouletter" data-widget_type="template.default"> 2838 <div class="elementor-widget-container"> 2839 <div class="elementor-template"> 2840 <div data-elementor-type="section" data-elementor-id="9795" class="elementor elementor-9795" data-elementor-post-type="elementor_library"> 2841 <section class="elementor-element elementor-element-1ef595e e-con-full stack-cards e-flex e-con e-parent" data-id="1ef595e" data-element_type="container" data-e-type="container"> 2842 <div class="elementor-element elementor-element-a05a9fc elementor-widget elementor-widget-menu-anchor" data-id="a05a9fc" data-element_type="widget" data-e-type="widget" data-widget_type="menu-anchor.default"> 2843 <div class="elementor-widget-container"> 2844 <div class="elementor-menu-anchor" id="our_story"></div> 2845 </div> 2846 </div> 2847 <section class="elementor-element elementor-element-e7dd8f3 e-con-full stack-roulette e-flex e-con e-child" data-id="e7dd8f3" data-element_type="container" data-e-type="container" id="rouletter"> 2848 <div class="elementor-element elementor-element-0e122f8 e-con-full sr-viewport e-flex e-con e-child" data-id="0e122f8" data-element_type="container" data-e-type="container"> 2849 <div class="elementor-element elementor-element-3f74a5c e-con-full sr-stage e-flex e-con e-child" data-id="3f74a5c" data-element_type="container" data-e-type="container"> 2850 <div class="elementor-element elementor-element-d69407c e-con-full sr-card e-flex e-con e-child" data-id="d69407c" data-element_type="container" data-e-type="container" id="card-1" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/10\/hero-02.mp4","background_play_on_mobile":"yes"}" data-card="1"> 2851 <div class="elementor-background-video-container"> 2852 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2853 </div> <div class="elementor-element elementor-element-ae7e97f elementor-widget elementor-widget-heading" data-id="ae7e97f" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2854 <div class="elementor-widget-container"> 2855 <h2 class="elementor-heading-title elementor-size-default">20 years of filmmaking,</h2> </div> 2856 </div> 2857 </div> 2858 <div class="elementor-element elementor-element-38cee8b e-con-full sr-card e-flex e-con e-child" data-id="38cee8b" data-element_type="container" data-e-type="container" id="card-2" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/bts-c.mp4","background_play_on_mobile":"yes"}" data-card="2"> 2859 <div class="elementor-background-video-container"> 2860 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2861 </div> <div class="elementor-element elementor-element-31ba406 elementor-widget elementor-widget-heading" data-id="31ba406" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2862 <div class="elementor-widget-container"> 2863 <h2 class="elementor-heading-title elementor-size-default">experienced in production,</h2> </div>
2864 </div> 2865 </div> 2866 <div class="elementor-element elementor-element-f17ca9b e-con-full sr-card e-flex e-con e-child" data-id="f17ca9b" data-element_type="container" data-e-type="container" id="card-3" data-settings="{"background_background":"video","background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/aiclips-c.mp4","background_play_on_mobile":"yes"}" data-card="3"> 2867 <div class="elementor-background-video-container"> 2868 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 2869 </div> <div class="elementor-element elementor-element-a0b6711 elementor-widget elementor-widget-heading" data-id="a0b6711" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 2870 <div class="elementor-widget-container"> 2871 <h2 class="elementor-heading-title elementor-size-default">joining the revolution.</h2> </div> 2872 </div> 2873 </div> 2874 </div> 2875 <div class="elementor-element elementor-element-02f668b e-con-full e-flex e-con e-child" data-id="02f668b" data-element_type="container" data-e-type="container"> 2876 <div class="elementor-element elementor-element-9b4835d e-con-full e-flex e-con e-child" data-id="9b4835d" data-element_type="container" data-e-type="container"> 2877 <div class="elementor-element elementor-element-b6a79de e-con-full e-flex e-con e-child" data-id="b6a79de" data-element_type="container" data-e-type="container"> 2878 <div class="elementor-element elementor-element-2c684a0 elementor-widget__width-inherit titleHMA elementor-widget elementor-widget-heading" data-id="2c684a0" data-element_type="widget" data-e-type="widget" data-alt="MagicMaker.dna = 'filmmaking'; >" data-widget_type="heading.default"> 2879 <div class="elementor-widget-container"> 2880 <h2 class="elementor-heading-title elementor-size-default">Born from filmmaking.</h2> </div> 2881 </div> 2882 </div> 2883 <div class="elementor-element elementor-element-c851faa e-con-full e-flex e-con e-child" data-id="c851faa" data-element_type="container" data-e-type="container"> 2884 <div class="elementor-element elementor-element-76f84b2 elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="76f84b2" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 2885 <div class="elementor-widget-container"> 2886 <div class="elementor-heading-title elementor-size-default">Cinemagic started as Kuwait's first film school. Now, we're bringing decades of expertise to AI. This is the future of storytelling.</div> </div> 2887 </div> 2888 </div> 2889 </div> 2890 </div> 2891 </div> 2892 </section> 2893 </section> 2894 </div> 2895 </div> 2896 </div> 2897 </div> 2898 </div> 2899 <div class="elementor-element elementor-element-bc85db6 e-con-full e-flex e-con e-parent" data-id="bc85db6" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2900 <div class="elementor-element elementor-element-4f805d2 elementor-widget elementor-widget-template" data-id="4f805d2" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 2901 <div class="elementor-widget-container"> 2902 <div class="elementor-template"> 2903 <div data-elementor-type="page" data-elementor-id="9009" class="elementor elementor-9009" data-elementor-post-type="elementor_library"> 2904 <div class="elementor-element elementor-element-83e9f9e e-con-full e-flex e-con e-parent" data-id="83e9f9e" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 2905 <div class="elementor-element elementor-element-c76a9f8 e-con-full e-flex e-con e-child" data-id="c76a9f8" data-element_type="container" data-e-type="container"> 2906 <div class="elementor-element elementor-element-1445e72 elementor-widget__width-auto elementor-widget elementor-widget-heading" data-id="1445e72" data-element_type="widget" data-e-type="widget" data-alt
2906="< const masterpiece = MagicMaker(prompt); >" data-widget_type="heading.default"> 2907 <div class="elementor-widget-container"> 2908 <h4 class="elementor-heading-title elementor-size-default">Magic Maker AI Examples</h4> </div> 2909 </div> 2910 </div> 2911 <div class="elementor-element elementor-element-6900f3c e-con-full e-flex e-con e-child" data-id="6900f3c" data-element_type="container" data-e-type="container"> 2912 <div class="elementor-element elementor-element-9ec9ebc e-con-full e-flex e-con e-child" data-id="9ec9ebc" data-element_type="container" data-e-type="container"> 2913 <div class="elementor-element elementor-element-d257c36 elementor-widget elementor-widget-gallery" data-id="d257c36" data-element_type="widget" data-e-type="widget" id="galeria" data-settings="{"gallery_layout":"masonry","columns":6,"overlay_title":"title","overlay_description":"description","image_hover_animation":"shrink-contained","gap":{"unit":"px","size":0,"sizes":[]},"content_sequenced_animation":"yes","columns_tablet":3,"columns_mobile":3,"gap_tablet":{"unit":"px","size":0,"sizes":[]},"gap_mobile":{"unit":"px","size":0,"sizes":[]},"lazyload":"yes","link_to":"file","overlay_background":"yes","content_hover_animation":"fade-in"}" data-widget_type="gallery.default"> 2914 <div class="elementor-widget-container"> 2915 <div class="elementor-gallery__container"> 2916 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/1.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Morning Serenity" data-elementor-lightbox-description="A warm cup of coffee beside a golden croissant on a white ceramic plate, placed on a soft linen cloth overlooking a blurred modern city skyline in the early morning light. The atmosphere feels calm, peaceful, and cinematic." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5MiwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMS5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 2917 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/1-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2918 <div class="elementor-gallery-item__overlay"></div> 2919 <div class="elementor-gallery-item__content"> 2920 <div class="elementor-gallery-item__title"> 2921 Morning Serenity </div> 2922 <div class="elementor-gallery-item__description"> 2923 A warm cup of coffee beside a golden croissant on a white ceramic plate, placed on a soft linen cloth overlooking a blurred modern city skyline in the early morning light. The atmosphere feels calm, peaceful, and cinematic. </div> 2924 </div> 2925 </a> 2926 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/oum-2.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Oum Kalthoum 2: The Voice of an Era" data-elementor-lightbox-description="A dramatic shot of Oum Kalthoum standing before a grand audience in a glittering Egyptian concert hall of the 1960s, chandeliers above, her silhouette framed in golden stage light." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxNywidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvb3VtLTIuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2927 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/oum-2-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2928 <div class="elementor-gallery-item__overlay"></div> 2929 <div class="elementor-gallery-item__content"> 2930 <div class="elementor-gallery-item__title"> 2931 Oum Kalthoum 2: The Voice of an Era </div> 2932 <div class="elementor-gallery-item__description"> 2933 A dramatic shot of Oum Kalthoum standing before a grand audience in a glittering Egyptian concert hall of the 1960s, chandeliers above, her silhouette framed in golden stage light. </div> 2934 </div> 2935 </a> 2936 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/oum-1.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Oum Kalthoum 1: The Rose of Cairo Nights" data-elementor-lightbox-description="A cinematic 1960s concert scene showing Oum Kalthoum holding a rose while performing on stage, surrounded by elegantly dressed guests in soft vintage lighting." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxNiwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvb3VtLTEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2937 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/oum-1-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2938 <div class="elementor-gallery-item__overlay"></div> 2939 <div class="elementor-gallery-item__content"> 2940 <div class="elementor-gallery-item__title"> 2941 Oum Kalthoum 1: The Rose of Cairo Nights </div> 2942 <div class="elementor-gallery-item__description"> 2943 A cinematic 1960s concert scene showing Oum Kalthoum holding a rose while performing on stage, surrounded by elegantly dressed guests in soft vintage lighting. </div> 2944 </div> 2945 </a> 2946 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/23.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Edge of the City" data-elementor-lightbox-description="A cinematic view from above a skyscraper ledge showing a leg and boot dangling over the neon-lit city below, blurred with energy and motion." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxNCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjMuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2947 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/23-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2948 <div class="elementor-gallery-item__overlay"></div> 2949 <div class="elementor-gallery-item__content"> 2950 <div class="elementor-gallery-item__title"> 2951 Edge of the City </div> 2952 <div class="elementor-gallery-item__description"> 2953 A cinematic view from above a skyscraper ledge showing a leg and boot dangling over the neon-lit city below, blurred with energy and motion. </div> 2954 </div> 2955 </a> 2956 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/22.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="The Empty Chair" data-elementor-lightbox-description="A single white chair placed under a spotlight in a dark cracked room, evoking isolation and introspection." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxMywidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjIuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2957 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/22-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2958 <div class="elementor-gallery-item__overlay"></div> 2959 <div class="elementor-gallery-item__content"> 2960 <div class="elementor-gallery-item__title"> 2961 The Empty Chair </div> 2962 <div class="elementor-gallery-item__description"> 2963 A single white chair placed under a spotlight in a dark cracked room, evoking isolation and introspection. </div> 2964 </div> 2965 </a> 2966 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/21.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Drapes of the Sky" data-elementor-lightbox-description="Sheer white fabric flowing in the wind between concrete structures under a cloudy gray sky, minimalistic and moody." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxMiwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2967 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/21-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2968 <div class="elementor-gallery-item__overlay"></div> 2969 <div class="elementor-gallery-item__content"> 2970 <div class="elementor-gallery-item__title"> 2971 Drapes of the Sky </div> 2972 <div class="elementor-gallery-item__description"> 2973 Sheer white fabric flowing in the wind between concrete structures under a cloudy gray sky, minimalistic and moody. </div> 2974 </div> 2975 </a> 2976 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/20.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Through the Keyhole" data-elementor-lightbox-description="A majestic view of an illuminated mosque dome framed through a keyhole, with golden reflections on the marble floor and a warm orange twilight sky." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxMSwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMjAuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2977 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/20-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2978 <div class="elementor-gallery-item__overlay"></div> 2979 <div class="elementor-gallery-item__content"> 2980 <div class="elementor-gallery-item__title"> 2981 Through the Keyhole </div> 2982 <div class="elementor-gallery-item__description"> 2983 A majestic view of an illuminated mosque dome framed through a keyhole, with golden reflections on the marble floor and a warm orange twilight sky. </div> 2984 </div> 2985 </a> 2986 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/19.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="The Thread of Fate" data-elementor-lightbox-description="Two hands reaching toward each other, connected by a glowing red thread under a warm beam of light, symbolizing destiny and connection." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIxMCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTkuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2987 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/19-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2988 <div class="elementor-gallery-item__overlay"></div> 2989 <div class="elementor-gallery-item__content"> 2990 <div class="elementor-gallery-item__title"> 2991 The Thread of Fate </div> 2992 <div class="elementor-gallery-item__description"> 2993 Two hands reaching toward each other, connected by a glowing red thread under a warm beam of light, symbolizing destiny and connection. </div> 2994 </div> 2995 </a> 2996 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/17.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Time and Memory" data-elementor-lightbox-description="Elderly hands gently holding an old sepia photograph, the details of wrinkles and nostalgia illuminated by warm, soft light." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwOCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTcuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 2997 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/17-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 2998 <div class="elementor-gallery-item__overlay"></div> 2999 <div class="elementor-gallery-item__content"> 3000 <div class="elementor-gallery-item__title"> 3001 Time and Memory </div> 3002 <div class="elementor-gallery-item__description"> 3003 Elderly hands gently holding an old sepia photograph, the details of wrinkles and nostalgia illuminated by warm, soft light. </div> 3004 </div> 3005 </a> 3006 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/16.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Ripple Effect" data-elementor-lightbox-description="A close-up of water droplets falling onto a dark marble surface, creating expanding ripples with cinematic reflections." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwNywidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTYuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3007 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/16-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3008 <div class="elementor-gallery-item__overlay"></div> 3009 <div class="elementor-gallery-item__content"> 3010 <div class="elementor-gallery-item__title"> 3011 Ripple Effect </div> 3012 <div class="elementor-gallery-item__description"> 3013 A close-up of water droplets falling onto a dark marble surface, creating expanding ripples with cinematic reflections. </div> 3014 </div> 3015 </a> 3016 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/15.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Stillness in Porcelain" data-elementor-lightbox-description="Two white flowers placed in a delicate ceramic bowl floating on a reflective water surface under soft diffused light, evoking calm and purity." data-e-action-hash="#elementor-action%3Aaction%3Dl
3016ightbox%26settings%3DeyJpZCI6OTIwNiwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTUuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3017 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/15-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3018 <div class="elementor-gallery-item__overlay"></div> 3019 <div class="elementor-gallery-item__content"> 3020 <div class="elementor-gallery-item__title"> 3021 Stillness in Porcelain </div> 3022 <div class="elementor-gallery-item__description"> 3023 Two white flowers placed in a delicate ceramic bowl floating on a reflective water surface under soft diffused light, evoking calm and purity. </div> 3024 </div> 3025 </a> 3026 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/14.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Vertigo Dreams" data-elementor-lightbox-description="A dizzying aerial perspective of a city at night, with a hand reaching toward the blurred neon-lit streets far below." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwNSwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTQuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3027 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/14-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3028 <div class="elementor-gallery-item__overlay"></div> 3029 <div class="elementor-gallery-item__content"> 3030 <div class="elementor-gallery-item__title"> 3031 Vertigo Dreams </div> 3032 <div class="elementor-gallery-item__description"> 3033 A dizzying aerial perspective of a city at night, with a hand reaching toward the blurred neon-lit streets far below. </div> 3034 </div> 3035 </a> 3036 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/13.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="The Clock Within" data-elementor-lightbox-description="A detailed macro of an eye reflecting an antique clock inside its iris, symbolizing the passage of time and introspection." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwNCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTMuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3037 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/13-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3038 <div class="elementor-gallery-item__overlay"></div> 3039 <div class="elementor-gallery-item__content"> 3040 <div class="elementor-gallery-item__title"> 3041 The Clock Within </div> 3042 <div class="elementor-gallery-item__description"> 3043 A detailed macro of an eye reflecting an antique clock inside its iris, symbolizing the passage of time and introspection. </div> 3044 </div> 3045 </a> 3046 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/12.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Fire in Bloom" data-elementor-lightbox-description="A macro photograph of a vivid orange and red flower in full bloom, glowing with life and passion under soft natural light." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwMywidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTIuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3047 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/12-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3048 <div class="elementor-gallery-item__overlay"></div> 3049 <div class="elementor-gallery-item__content"> 3050 <div class="elementor-gallery-item__title"> 3051 Fire in Bloom </div> 3052 <div class="elementor-gallery-item__description"> 3053 A macro photograph of a vivid orange and red flower in full bloom, glowing with life and passion under soft natural light. </div> 3054 </div> 3055 </a> 3056 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/11.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Buried Memory" data-elementor-lightbox-description="An extreme close-up of a personâs eye and face covered with fine desert sand, blending the human and the natural in a warm monochrome tone." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwMiwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMTEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3057 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/11-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3058 <div class="elementor-gallery-item__overlay"></div> 3059 <div class="elementor-gallery-item__content"> 3060 <div class="elementor-gallery-item__title"> 3061 Buried Memory </div> 3062 <div class="elementor-gallery-item__description"> 3063 An extreme close-up of a personâs eye and face covered with fine desert sand, blending the human and the natural in a warm monochrome tone. </div> 3064 </div> 3065 </a> 3066 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/9.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Origami Dreams" data-elementor-lightbox-description="A surreal portrait of a personâs face with hundreds of origami birds made of paper flying out from around their eyes, symbolizing imagination and freedom." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTIwMCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvOS5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3067 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/9-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3068 <div class="elementor-gallery-item__overlay"></div> 3069 <div class="elementor-gallery-item__content"> 3070 <div class="elementor-gallery-item__title"> 3071 Origami Dreams </div> 3072 <div class="elementor-gallery-item__description"> 3073 A surreal portrait of a personâs face with hundreds of origami birds made of paper flying out from around their eyes, symbolizing imagination and freedom. </div> 3074 </div> 3075 </a> 3076 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/8.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Reflections of a Sunset" data-elementor-lightbox-description="A cinematic shot of a wet cobblestone street at golden hour, showing the reflection of a person walking away toward the glowing sun." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5OSwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvOC5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3077 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/8-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3078 <div class="elementor-gallery-item__overlay"></div> 3079 <div class="elementor-gallery-item__content"> 3080 <div class="elementor-gallery-item__title"> 3081 Reflections of a Sunset </div> 3082 <div class="elementor-gallery-item__description"> 3083 A cinematic shot of a wet cobblestone street at golden hour, showing the reflection of a person walking away toward the glowing sun. </div> 3084 </div> 3085 </a> 3086 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/7.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Neon Rain" data-elementor-lightbox-description="A woman standing in the rain under neon pink and blue lights in an urban street at night, her wet hair and jacket reflecting the vibrant city glow." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5OCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvNy5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3087 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/7-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3088 <div class="elementor-gallery-item__overlay"></div> 3089 <div class="elementor-gallery-item__content"> 3090 <div class="elementor-gallery-item__title"> 3091 Neon Rain </div> 3092 <div class="elementor-gallery-item__description"> 3093 A woman standing in the rain under neon pink and blue lights in an urban street at night, her wet hair and jacket reflecting the vibrant city glow. </div> 3094 </div> 3095 </a> 3096 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/6.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="The Old Market Light" data-elementor-lightbox-description="An elderly man wearing traditional Kuwaiti attire sitting in a dimly lit souk, surrounded by bowls of dates and ornate lanterns that glow warmly, capturing the spirit of heritage." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5NywidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvNi5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3097 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/6-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3098 <div class="elementor-gallery-item__overlay"></div> 3099 <div class="elementor-gallery-item__content"> 3100 <div class="elementor-gallery-item__title"> 3101 The Old Market Light </div> 3102 <div class="elementor-gallery-item__description"> 3103 An elderly man wearing traditional Kuwaiti attire sitting in a dimly lit souk, surrounded by bowls of dates and ornate lanterns that glow warmly, capturing the spirit of heritage. </div> 3104 </div> 3105 </a> 3106 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/4.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Through the Glass" data-elementor-lightbox-description="A woman gazing out a rain-covered window, soft blue light reflecting on her face, evoking a mood of nostalgia and contemplation." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5NSwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvNC5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3107 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/4-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3108 <div class="elementor-gallery-item__overlay"></div> 3109 <div class="elementor-gallery-item__content"> 3110 <div class="elementor-gallery-item__title"> 3111 Through the Glass </div> 3112 <div class="elementor-gallery-item__description"> 3113 A woman gazing out a rain-covered window, soft blue light reflecting on her face, evoking a mood of nostalgia and contemplation. </div> 3114 </div> 3115 </a> 3116 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/10/3.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Cracks of Life" data-elementor-lightbox-description="A macro shot of a small insect walking across cracked dry earth, surrounded by golden desert plants glowing in the warm sunset light." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6OTE5NCwidXJsIjoiaHR0cHM6XC9cL2NpbmVtYWdpY21ha2VyLmFpXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI1XC8xMFwvMy5qcGciLCJzbGlkZXNob3ciOiJkMjU3YzM2In0%3D"> 3117 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/10/3-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3118 <div class="elementor-gallery-item__overlay"></div> 3119 <div class="elementor-gallery-item__content"> 3120 <div class="elementor-gallery-item__title"> 3121 Cracks of Life </div> 3122 <div class="elementor-gallery-item__description"> 3123 A macro shot of a small insect walking across cracked dry earth, surrounded by golden desert plants glowing in the warm sunset light. </div> 3124 </div> 3125 </a> 3126 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/11/24-1.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Eyes of the Desert" data-elementor-lightbox-description="A timeless black and white cinematic portrait of an Arab woman wearing a traditional headscarf, her gaze filled with quiet strength and depth, filmic grain texture, 1960s photography style, detailed skin tones, soft light from the side reveal
3126ing emotion and resilience, captured in 85mm portrait style, ultra-realistic 8K rendering." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTA2NDAsInVybCI6Imh0dHBzOlwvXC9jaW5lbWFnaWNtYWtlci5haVwvd3AtY29udGVudFwvdXBsb2Fkc1wvMjAyNVwvMTFcLzI0LTEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3127 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/11/24-1-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3128 <div class="elementor-gallery-item__overlay"></div> 3129 <div class="elementor-gallery-item__content"> 3130 <div class="elementor-gallery-item__title"> 3131 Eyes of the Desert </div> 3132 <div class="elementor-gallery-item__description"> 3133 A timeless black and white cinematic portrait of an Arab woman wearing a traditional headscarf, her gaze filled with quiet strength and depth, filmic grain texture, 1960s photography style, detailed skin tones, soft light from the side reveal
3133ing emotion and resilience, captured in 85mm portrait style, ultra-realistic 8K rendering. </div> 3134 </div> 3135 </a> 3136 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/11/26-1.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="JACC Mirage" data-elementor-lightbox-description="The Sheikh Jaber Al-Ahmad Cultural Centre (JACC) in Kuwait, reimagined as a futuristic metallic structure rising from endless desert dunes, golden sunlight reflecting on its geometric facade, intricate Islamic-inspired patterns shimmering in heat haze, ultra-realistic architectural photography, 8K cinematic clarity, Leica SL2 color tones, surreal and visionary desert setting." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTA2MzksInVybCI6Imh0dHBzOlwvXC9jaW5lbWFnaWNtYWtlci5haVwvd3AtY29udGVudFwvdXBsb2Fkc1wvMjAyNVwvMTFcLzI2LTEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3137 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/11/26-1-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3138 <div class="elementor-gallery-item__overlay"></div> 3139 <div class="elementor-gallery-item__content"> 3140 <div class="elementor-gallery-item__title"> 3141 JACC Mirage </div> 3142 <div class="elementor-gallery-item__description"> 3143 The Sheikh Jaber Al-Ahmad Cultural Centre (JACC) in Kuwait, reimagined as a futuristic metallic structure rising from endless desert dunes, golden sunlight reflecting on its geometric facade, intricate Islamic-inspired patterns shimmering in heat haze, ultra-realistic architectural photography, 8K cinematic clarity, Leica SL2 color tones, surreal and visionary desert setting. </div> 3144 </div> 3145 </a> 3146 <a class="e-gallery-item elementor-gallery-item elementor-animated-content" href="https://cinemagicmaker.ai/wp-content/uploads/2025/11/25-1.jpg" data-elementor-open-lightbox="yes" data-elementor-lightbox-slideshow="d257c36" data-elementor-lightbox-title="Riding the Storm" data-elementor-lightbox-description="A lone kitesurfer conquering massive waves beneath dark storm clouds, cinematic black and white photography, dramatic lighting, ocean mist scattering in the wind, high-contrast realism, 50mm lens style, dynamic motion frozen mid-air, ultra-realistic detail, 8K resolution â raw power and solitude in nature." data-e-action-hash="#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTA2NDEsInVybCI6Imh0dHBzOlwvXC9jaW5lbWFnaWNtYWtlci5haVwvd3AtY29udGVudFwvdXBsb2Fkc1wvMjAyNVwvMTFcLzI1LTEuanBnIiwic2xpZGVzaG93IjoiZDI1N2MzNiJ9"> 3147 <div class="e-gallery-image elementor-gallery-item__image" data-thumbnail="https://cinemagicmaker.ai/wp-content/uploads/2025/11/25-1-700x700.jpg" data-width="700" data-height="700" aria-label="" role="img" ></div> 3148 <div class="elementor-gallery-item__overlay"></div> 3149 <div class="elementor-gallery-item__content"> 3150 <div class="elementor-gallery-item__title"> 3151 Riding the Storm </div> 3152 <div class="elementor-gallery-item__description"> 3153 A lone kitesurfer conquering massive waves beneath dark storm clouds, cinematic black and white photography, dramatic lighting, ocean mist scattering in the wind, high-contrast realism, 50mm lens style, dynamic motion frozen mid-air, ultra-realistic detail, 8K resolution â raw power and solitude in nature. </div> 3154 </div> 3155 </a> 3156 </div> 3157 </div> 3158 </div> 3159 </div> 3160 </div> 3161 </div> 3162 </div> 3163 </div> 3164 </div> 3165 </div> 3166 </div> 3167 <div class="elementor-element elementor-element-bdd7c76 e-con-full e-flex e-con e-parent" data-id="bdd7c76" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3168 <div class="elementor-element elementor-element-705055d elementor-widget elementor-widget-template" data-id="705055d" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 3169 <div class="elementor-widget-container"> 3170 <div class="elementor-template"> 3171 <div data-elementor-type="section" data-elementor-id="9999" class="elementor elementor-9999" data-elementor-post-type="elementor_library"> 3172 <div class="elementor-element elementor-element-444413d e-con-full e-flex e-con e-parent" data-id="444413d" data-element_type="container" data-e-type="container" id="EchoWaveBox"> 3173 <div class="elementor-element elementor-element-66a9ca3 elementor-widget__width-inherit elementor-absolute elementor-widget elementor-widget-menu-anchor" data-id="66a9ca3" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="menu-anchor.default"> 3174 <div class="elementor-widget-container"> 3175 <div class="elementor-menu-anchor" id="early_access"></div> 3176 </div>
3177 </div> 3178 <div class="elementor-element elementor-element-01c9ca6 e-con-full e-flex e-con e-child" data-id="01c9ca6" data-element_type="container" data-e-type="container" data-settings="{"background_video_link":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads\/2025\/11\/stars-loop-c.mp4","background_play_on_mobile":"yes","background_background":"video"}"> 3179 <div class="elementor-background-video-container"> 3180 <video class="elementor-background-video-hosted" role="presentation" autoplay muted playsinline loop></video> 3181 </div><div class="elementor-element elementor-element-67c44bb e-con-full e-flex e-con e-child" data-id="67c44bb" data-element_type="container" data-e-type="container"> 3182 <div class="elementor-element elementor-element-92b8bc2 e-con-full e-flex e-con e-child" data-id="92b8bc2" data-element_type="container" data-e-type="container"> 3183 <div class="elementor-element elementor-element-d6256ff titleHMA elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="d6256ff" data-element_type="widget" data-e-type="widget" data-alt="< future = MagicMaker.shape(future); >" data-widget_type="heading.default"> 3184 <div class="elementor-widget-container"> 3185 <h2 class="elementor-heading-title elementor-size-default">Shape the future.</h2> </div> 3186 </div> 3187 </div> 3188 <div class="elementor-element elementor-element-f1395dd e-con-full e-flex e-con e-child" data-id="f1395dd" data-element_type="container" data-e-type="container"> 3189 <div class="elementor-element elementor-element-dd33f27 elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="dd33f27" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3190 <div class="elementor-widget-container"> 3191 <h3 class="elementor-heading-title elementor-size-default">Join our community of creators and help us build the next generation of cinematic AI.</h3> </div> 3192 </div> 3193 </div> 3194 </div> 3195 <div class="elementor-element elementor-element-858c554 e-con-full e-flex e-con e-child" data-id="858c554" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":85}},"motion_fx_motion_fx_scrolling":"yes","motion_fx_devices":["desktop"]}"> 3196 <div class="elementor-element elementor-element-53f9470 elementor-align-center elementor-widget elementor-widget-button" data-id="53f9470" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 3197 <div class="elementor-widget-container"> 3198 <div class="elementor-button-wrapper"> 3199 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://app.cinemagicmaker.ai/auth/login" target="_blank"> 3200 <span class="elementor-button-content-wrapper"> 3201 <span class="elementor-button-text">Try Now</span> 3202 </span> 3203 </a> 3204 </div> 3205 </div> 3206 </div> 3207 </div> 3208 </div> 3209 </div> 3210 </div> 3211 </div> 3212 </div> 3213 </div> 3214 </div> 3215 <div class="elementor-element elementor-element-027aa35 e-con-full e-flex e-con e-parent" data-id="027aa35" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3216 <div class="elementor-element elementor-element-bc61c9a e-flex e-con-boxed e-con e-child" data-id="bc61c9a" data-element_type="container" data-e-type="container"> 3217 <div class="e-con-inner"> 3218 <div class="elementor-element elementor-element-2f6a3ee elementor-widget elementor-widget-template" data-id="2f6a3ee" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 3219 <div class="elementor-widget-container"> 3220 <div class="elementor-template"> 3221 <div data-elementor-type="section" data-elementor-id="12278" class="elementor elementor-12278" data-elementor-post-type="elementor_library"> 3222 <div class="elementor-element elementor-element-cfd92b1 e-flex e-con-boxed e-con e-parent" data-id="cfd92b1" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3223 <div class="e-con-inner"> 3224 <div class="elementor-element elementor-element-25babac elementor-widget elementor-widget-menu-anchor" data-id="25babac" data-element_type="widget" data-e-type="widget" data-widget_type="menu-anchor.default"> 3225 <div class="elementor-widget-container"> 3226 <div class="elementor-menu-anchor" id="tawam"></div> 3227 </div>
3228 </div> 3229 <div class="elementor-element elementor-element-8bb0116 e-con-full e-flex e-con e-child" data-id="8bb0116" data-element_type="container" data-e-type="container"> 3230 <div class="elementor-element elementor-element-ff8c479 e-con-full e-flex e-con e-child" data-id="ff8c479" data-element_type="container" data-e-type="container" data-settings="{"position":"absolute"}"> 3231 <div class="elementor-element elementor-element-4458303 titleHMA elementor-widget elementor-widget-heading" data-id="4458303" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3232 <div class="elementor-widget-container"> 3233 <div class="elementor-heading-title elementor-size-default">A Real Photo</div> </div> 3234 </div> 3235 <div class="elementor-element elementor-element-a5cdd3d titleHMA elementor-widget elementor-widget-heading" data-id="a5cdd3d" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3236 <div class="elementor-widget-container"> 3237 <div class="elementor-heading-title elementor-size-default">Ai Picture</div> </div> 3238 </div> 3239 </div> 3240 <div class="elementor-element elementor-element-eed25eb e-con-full e-flex e-con e-child" data-id="eed25eb" data-element_type="container" data-e-type="container"> 3241 <div class="elementor-element elementor-element-46ee680 e-con-full e-flex e-con e-child" data-id="46ee680" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","background_motion_fx_motion_fx_scrolling":"yes","background_motion_fx_translateY_effect":"yes","background_motion_fx_translateY_direction":"negative","background_motion_fx_translateY_speed":{"unit":"px","size":2.5,"sizes":[]},"background_motion_fx_opacity_effect":"yes","background_motion_fx_opacity_direction":"out-in-out","background_motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":30,"end":51}},"background_motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"background_motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"background_motion_fx_devices":["desktop","tablet","mobile"]}"> 3242 </div> 3243 <div class="elementor-element elementor-element-dddc657 e-con-full e-flex e-con e-child" data-id="dddc657" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic","background_motion_fx_motion_fx_scrolling":"yes","background_motion_fx_translateY_effect":"yes","background_motion_fx_translateY_speed":{"unit":"px","size":2.5,"sizes":[]},"background_motion_fx_opacity_effect":"yes","background_motion_fx_opacity_direction":"out-in-out","background_motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":33,"end":51}},"background_motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"background_motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"background_motion_fx_devices":["desktop","tablet","mobile"]}"> 3244 <div class="elementor-element elementor-element-5f234dc e-con-full elementor-hidden-mobile e-flex e-con e-child" data-id="5f234dc" data-element_type="container" data-e-type="container"> 3245 <div class="elementor-element elementor-element-6e732a7 elementor-absolute elementor-widget elementor-widget-image" data-id="6e732a7" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_direction":"negative","motion_fx_translateX_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":50}},"motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":10,"end":45}},"motion_fx_devices":["desktop"],"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]}}" data-widget_type="image.default"> 3246 <div class="elementor-widget-container"> 3247 <img loading="lazy" decoding="async" width="424" height="768" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-02.jpg" class="attachment-full size-full wp-image-12316" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-02.jpg 424w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-02-166x300.jpg 166w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-02-7x12.jpg 7w" sizes="(max-width: 424px) 100vw, 424px" /> </div>
3248 </div> 3249 <div class="elementor-element elementor-element-9f64c20 elementor-absolute elementor-widget elementor-widget-image" data-id="9f64c20" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":50}},"motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":10,"end":45}},"motion_fx_devices":["desktop"],"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]}}" data-widget_type="image.default"> 3250 <div class="elementor-widget-container"> 3251 <img loading="lazy" decoding="async" width="768" height="424" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-01.jpg" class="attachment-full size-full wp-image-12315" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-01.jpg 768w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-01-300x166.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-01-18x10.jpg 18w" sizes="(max-width: 768px) 100vw, 768px" /> </div> 3252 </div> 3253 <div class="elementor-element elementor-element-d9a9844 elementor-absolute elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-image" data-id="d9a9844" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":2,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":50}},"motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":10,"end":45}},"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_devices":["desktop","tablet","mobile"]}" data-widget_type="image.default"> 3254 <div class="elementor-widget-container"> 3255 <img loading="lazy" decoding="async" width="530" height="424" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-03.jpg" class="attachment-full size-full wp-image-12317" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-03.jpg 530w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-03-300x240.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-03-15x12.jpg 15w" sizes="(max-width: 530px) 100vw, 530px" /> </div> 3256 </div> 3257 <div class="elementor-element elementor-element-cf9eaf5 elementor-absolute elementor-widget elementor-widget-image" data-id="cf9eaf5" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateX_effect":"yes","motion_fx_translateX_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":50}},"motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":10,"end":45}},"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_devices":["desktop","tablet","mobile"]}" data-widget_type="image.default"> 3258 <div class="elementor-widget-container"> 3259 <img loading="lazy" decoding="async" width="500" height="276" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-05.jpg" class="attachment-full size-full wp-image-12314" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-05.jpg 500w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-05-300x166.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-05-18x10.jpg 18w" sizes="(max-width: 500px) 100v
3259w, 500px" /> </div> 3260 </div> 3261 <div class="elementor-element elementor-element-e2dea7e elementor-absolute elementor-widget elementor-widget-image" data-id="e2dea7e" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute","motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":50}},"motion_fx_opacity_effect":"yes","motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":10,"end":45}},"motion_fx_devices":["desktop"],"motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]}}" data-widget_type="image.default"> 3262 <div class="elementor-widget-container"> 3263 <img loading="lazy" decoding="async" width="501" height="324" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-04.jpg" class="attachment-full size-full wp-image-12318" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-04.jpg 501w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-04-300x194.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-pic-04-18x12.jpg 18w" sizes="(max-width: 501px) 100v
3263w, 501px" /> </div> 3264 </div> 3265 </div> 3266 </div> 3267 </div> 3268 <div class="elementor-element elementor-element-b4c3367 e-con-full e-flex e-con e-child" data-id="b4c3367" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_translateY_speed":{"unit":"px","size":5,"sizes":[]},"motion_fx_devices":["desktop"],"background_motion_fx_translateY_effect":"yes","background_motion_fx_translateY_direction":"negative","background_motion_fx_translateY_speed":{"unit":"px","size":2.5,"sizes":[]},"background_motion_fx_opacity_effect":"yes","background_motion_fx_opacity_direction":"out-in-out","background_motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":30,"end":51}},"position":"absolute","motion_fx_motion_fx_scrolling":"yes","background_motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"background_motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"background_motion_fx_devices":["desktop","tablet","mobile"],"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 3269 <div class="elementor-element elementor-element-6e4bdc9 titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="6e4bdc9" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3270 <div class="elementor-widget-container"> 3271 <h2 class="elementor-heading-title elementor-size-default">tawam<sup>AI</sup></h2> </div> 3272 </div> 3273 <div class="elementor-element elementor-element-aaec75f titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="aaec75f" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3274 <div class="elementor-widget-container"> 3275 <h3 class="elementor-heading-title elementor-size-default">Your Digital Presence. <br> 3276Your Creative Power.</h3> </div> 3277 </div> 3278 <div class="elementor-element elementor-element-566cfdb elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="566cfdb" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3279 <div class="elementor-widget-container"> 3280 <div class="elementor-heading-title elementor-size-default"><b>Tawam<sup>AI</sup></b> is Magic Maker's exclusive talent marketplace â a curated roster of licensed artists available for AI-powered cinematic image generation. We build each artist's digital twin from the ground up, trained to a 99% likeness, so every generated visual is unmistakably them. <br><br>Currently featuring Kuwaiti artist Khaled Amin and the late Kuwaiti legend Abdulhussain Abdulredha.</div> </div> 3281 </div> 3282 </div> 3283 </div> 3284 <div class="elementor-element elementor-element-810433f e-con-full e-flex e-con e-child" data-id="810433f" data-element_type="container" data-e-type="container"> 3285 <div class="elementor-element elementor-element-7775a8a elementor-widget__width-initial elementor-widget elementor-widget-heading" data-id="7775a8a" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 3286 <div class="elementor-widget-container"> 3287 <div class="elementor-heading-title elementor-size-default">No digital twin or AI likeness service exists for these talents anywhere else. Select an artist, generate production-grade cinematic visuals featuring them, and create content that simply can't be made on any other platform.</div>
3287 </div> 3288 </div> 3289 </div> 3290 </div> 3291 </div> 3292 </div> 3293 </div> 3294 </div> 3295 </div> 3296 </div> 3297 </div> 3298 </div> 3299 <div class="elementor-element elementor-element-dad5f16 e-con-full e-flex e-con e-parent" data-id="dad5f16" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3300 <div class="elementor-element elementor-element-1372ae1 e-flex e-con-boxed e-con e-child" data-id="1372ae1" data-element_type="container" data-e-type="container"> 3301 <div class="e-con-inner"> 3302 <div class="elementor-element elementor-element-882e7f9 elementor-widget elementor-widget-template" data-id="882e7f9" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 3303 <div class="elementor-widget-container"> 3304 <div class="elementor-template"> 3305 <div data-elementor-type="section" data-elementor-id="12957" class="elementor elementor-12957" data-elementor-post-type="elementor_library"> 3306 <div class="elementor-element elementor-element-85e8cda e-con-full e-flex e-con e-parent" data-id="85e8cda" data-element_type="container" data-e-type="container"> 3307 <div class="elementor-element elementor-element-bd00cef e-con-full e-flex e-con e-child" data-id="bd00cef" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3308 <div class="elementor-element elementor-element-e8d41aa e-con-full e-flex e-con e-child" data-id="e8d41aa" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3309 <div class="elementor-element elementor-element-693b84b e-con-full e-flex e-con e-child" data-id="693b84b" data-element_type="container" data-e-type="container"> 3310 <div class="elementor-element elementor-element-b9706e0 elementor-widget elementor-widget-html" data-id="b9706e0" data-element_type="widget" data-e-type="widget" data-widget_type="html.default"> 3311 <div class="elementor-widget-container"> 3312 <style> 3313 /* ===== WRAP ===== */ 3314 #amesRevenueMap { 3315 --dot: 18px; 3316 --expand: 230px; 3317 --hit: 320px; 3318 --line: #bfbfbf; 3319 --text: #1f1f1f; 3320 --panel: #ffffff; 3321 position: relative; 3322 width: 100%; 3323 min-height: 760px; 3324 aspect-ratio: 16 / 10; 3325 border-radius: 0; 3326 font-family: inherit; 3327 } 3328 3329 #amesRevenueMap * { 3330 box-sizing: border-box; 3331 } 3332 3333 /* ===== SVG LINES ===== */ 3334 #amesRevenueMap .ames-map__lines { 3335 position: absolute; 3336 inset: 0; 3337 width: 100%; 3338 height: 100%; 3339 pointer-events: none; 3340 z-index: 1; 3341 } 3342 3343 #amesRevenueMap .ames-map__lines line { 3344 stroke: var(--line); 3345 stroke-width: 2; 3346 vector-effect: non-scaling-stroke; 3347 } 3348 3349 /* ===== CENTER ===== */ 3350 #amesRevenueMap .ames-center { 3351 position: absolute; 3352 left: 45%; 3353 top: 52%; 3354 width: clamp(150px, 20vw, 200px); 3355 aspect-ratio: 1 / 1; 3356 transform: translate(-50%, -50%); 3357 border-radius: 50%; 3358 background: #242424; 3359 color: #fff; 3360 display: flex;
3361 align-items: center; 3362 justify-content: center; 3363 text-align: center; 3364 padding: 28px; 3365 z-index: 3; 3366 box-shadow: 0 18px 45px rgba(0,0,0,.12); 3367 font-family: var(--e-global-typography-90a0514-font-family), Sans-serif; 3368 } 3369 3370 #amesRevenueMap .ames-center div { 3371 margin: 0; 3372 font-size: clamp(18px, 1.75vw, 23px); 3373 line-height: .98; 3374 font-weight: 500; 3375 letter-spacing: -0.03em; 3376 } 3377 3378 /* ===== NODE ===== */ 3379 #amesRevenueMap .ames-node { 3380 --title-move-x: 0px; 3381 --title-move-y: 0px; 3382 --title-hover-x: 0px; 3383 --title-hover-y: 0px; 3384 3385 position: absolute; 3386 left: calc(var(--x) * 1%); 3387 top: calc(var(--y) * 1%); 3388 width: var(--hit); 3389 height: var(--hit); 3390 transform: translate(-50%, -50%); 3391 z-index: 4; 3392 cursor: pointer; 3393 overflow: visible; 3394 } 3395 3396 #amesRevenueMap .ames-node:focus-visible { 3397 outline: none; 3398 } 3399 3400 #amesRevenueMap .ames-node__bubble { 3401 position: absolute; 3402 left: 50%; 3403 top: 50%; 3404 width: var(--dot); 3405 height: var(--dot); 3406 transform: translate(-50%, -50%); 3407 border-radius: 999px; 3408 overflow: hidden; 3409 background-image: var(--bg); 3410 background-position: center; 3411 background-size: cover; 3412 background-repeat: no-repeat; 3413 transition: 3414 width .55s cubic-bezier(.2,.8,.2,1), 3415 height .55s cubic-bezier(.2,.8,.2,1), 3416 transform .55s cubic-bezier(.2,.8,.2,1), 3417 box-shadow .55s ease; 3418 box-shadow: 0 0 0 0 rgba(0,0,0,0); 3419 z-index: 2; 3420 } 3421 3422 #amesRevenueMap .ames-node__bubble::before { 3423 content: ""; 3424 position: absolute; 3425 inset: 0; 3426 background: #1f1f1f; 3427 transition: opacity .45s ease; 3428 } 3429 3430 #amesRevenueMap .ames-node__title { 3431 position: absolute; 3432 color: var(--text); 3433 font-size: clamp(18px, 1vw, 24px); 3434 line-height: .96; 3435 font-weight: 500; 3436 letter-spacing: -0.03em; 3437 white-space: nowrap; 3438 transition: transform .45s cubic-bezier(.2,.8,.2,1), opacity .35s ease; 3439 z-index: 3; 3440 font-family: var(--e-global-typography-90a0514-font-family), Sans-serif; 3441 pointer-events: none; 3442 } 3443 3444 /* ===== LABEL POSITIONS ===== */ 3445 #amesRevenueMap .title-right .ames-node__title { 3446 left: calc(50% + 28px); 3447 top: 50%; 3448 transform: translate(var(--title-move-x), calc(-50% + var(--title-move-y))); 3449 text-align: left; 3450 } 3451 3452 #amesRevenueMap .title-left .ames-node__title { 3453 right: calc(50% + 28px); 3454 top: 50%; 3455 transform: translate(var(--title-move-x), calc(-50% + var(--title-move-y))); 3456 text-align: right; 3457 } 3458 3459 #amesRevenueMap .title-top-left .ames-node__title { 3460 right: calc(50% + 18px); 3461 bottom: calc(50% + 22px); 3462 transform: translate(var(--title-move-x), var(--title-move-y)); 3463 text-align: right; 3464 } 3465 3466 #amesRevenueMap .title-top-right .ames-node__title { 3467 left: calc(50% + 18px); 3468 bottom: calc(50% + 22px); 3469 transform: translate(var(--title-move-x), var(--title-move-y)); 3470 text-align: left; 3471 } 3472 3473 #amesRevenueMap .title-bottom .ames-node__title { 3474 left: 50%; 3475 top: calc(50% + 26px); 3476 transform: translate(calc(-50% + var(--title-move-x)), var(--title-move-y)); 3477 text-align: center; 3478 } 3479 3480 #amesRevenueMap .title-bottom-right .ames-node__title { 3481 left: calc(50% + 22px); 3482 top: calc(50% + 20px); 3483 transform: translate(var(--title-move-x), var(--title-move-y)); 3484 text-align: left; 3485 } 3486 3487 /* ===== HOVER / ACTIVE ===== */ 3488 #amesRevenueMap .ames-node:hover, 3489 #amesRevenueMap .ames-node.is-open, 3490 #amesRevenueMap .ames-node:focus-within { 3491 z-index: 10; 3492 --title-move-x: var(--title-hover-x); 3493 --title-move-y: var(--title-hover-y); 3494 } 3495 3496 #amesRevenueMap .ames-node:hover .ames-node__bubble, 3497 #amesRevenueMap .ames-node.is-open .ames-node__bubble, 3498 #amesRevenueMap .ames-node:focus-within .ames-node__bubble { 3499 width: var(--expand); 3500 height: var(--expand); 3501 box-shadow: 0 25px 60px rgba(0,0,0,.18); 3502 } 3503 3504 #amesRevenueMap .ames-node:hover .ames-node__bubble::before, 3505 #amesRevenueMap .ames-node.is-open .ames-node__bubble::before, 3506 #amesRevenueMap .ames-node:focus-within .ames-node__bubble::before { 3507 opacity: .05; 3508 } 3509 3510 /* ===== MOBILE ===== */ 3511 @media (max-width: 1024px) { 3512 #amesRevenueMap { 3513 min-height: 620px; 3514 } 3515 3516 #amesRevenueMap .ames-node__title { 3517 font-size: clamp(18px, 2.3vw, 26px); 3518 } 3519 3520 #amesRevenueMap .ames-node__bubble { 3521 transition-duration: .45s; 3522 } 3523 } 3524 3525 @media (max-width: 767px) { 3526 #amesRevenueMap { 3527 min-height: 720px; 3528 aspect-ratio: auto; 3529 } 3530 3531 #amesRevenueMap .ames-center { 3532 top: 50%; 3533 width: 150px; 3534 padding: 22px; 3535 } 3536 3537 #amesRevenueMap .ames-center div { 3538 font-size: 20px; 3539 } 3540 3541 #amesRevenueMap .ames-node { 3542 width: 220px; 3543 height: 220px; 3544 transform: translate(-50%, -50%) scale(.9); 3545 transform-origin: center; 3546 } 3547 3548 #amesRevenueMap .ames-node__title { 3549 font-size: 18px; 3550 } 3551 3552 #amesRevenueMap .ames-node__bubble { 3553 width: 16px; 3554 height: 16px; 3555 } 3556 3557 #amesRevenueMap .ames-node:hover .ames-node__bubble, 3558 #amesRevenueMap .ames-node.is-open .ames-node__bubble, 3559 #amesRevenueMap .ames-node:focus-within .ames-node__bubble { 3560 width: 150px; 3561 height: 150px; 3562 } 3563 } 3564</style> 3565 3566<div id="amesRevenueMap"> 3567 <svg class="ames-map__lines" aria-hidden="true"></svg> 3568 3569 <div class="ames-center"> 3570 <div>HOW CAN YOU BENEFIT</div> 3571 </div> 3572 3573 <!-- Revenue Share --> 3574 <div class="ames-node title-top-left" tabindex="0" 3575 style=" 3576 --x:20; --y:15; 3577 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-revenue-share-01.jpg'); 3578 --title-hover-x:-80px; 3579 --title-hover-y:-45px; 3580 " 3581 data-x="20" data-y="15"> 3582 <div class="ames-node__bubble"></div> 3583 <div class="ames-node__title">Revenue<br>Share</div> 3584 </div> 3585 3586 <!-- Merch Sales --> 3587 <div class="ames-node title-top-right" tabindex="0" 3588 style=" 3589 --x:62; --y:14; 3590 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-merch-sale-01.jpg'); 3591 --title-hover-x:80px; 3592 --title-hover-y:-45px; 3593 " 3594 data-x="62" data-y="14"> 3595 <div class="ames-node__bubble"></div> 3596 <div class="ames-node__title">Merch<br>Sales</div> 3597 </div> 3598 3599 <!-- Workshop Hosting --> 3600 <div class="ames-node title-right" tabindex="0" 3601 style=" 3602 --x:80; --y:37; 3603 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-work-shop-01.jpg'); 3604 --title-hover-x:98px; 3605 --title-hover-y:0px; 3606 " 3607 data-x="80" data-y="37"> 3608 <div class="ames-node__bubble"></div> 3609 <div class="ames-node__title">Workshop<br>Hosting</div> 3610 </div> 3611 3612 <!-- Affiliate Commissions --> 3613 <div class="ames-node title-bottom-right" tabindex="0" 3614 style=" 3615 --x:77; --y:78; 3616 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-Affiliate-Commision-01.jpg'); 3617 --title-hover-x:85px; 3618 --title-hover-y:40px; 3619 " 3620 data-x="77" data-y="78"> 3621 <div class="ames-node__bubble"></div> 3622 <div class="ames-node__title">Affiliate<br>Commissions</div> 3623 </div> 3624 3625 <!-- TalentScanAI licensing --> 3626 <div class="ames-node title-bottom" tabindex="0" 3627 style=" 3628 --x:38; --y:88; 3629 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-talent-scan-01.jpg'); 3630 --title-hover-x:0px; 3631 --title-hover-y:98px; 3632 " 3633 data-x="38" data-y="88"> 3634 <div class="ames-node__bubble"></div> 3635 <div class="ames-node__title">Tawam<sup>AI</sup><br>Licensing</div> 3636 </div> 3637 3638 <!-- Client Work --> 3639 <div class="ames-node title-left" tabindex="0" 3640 style=" 3641 --x:10; --y:60; 3642 --bg:url('https://cinemagicmaker.ai/wp-content/uploads/2026/04/pix-clients-work-01.jpg'); 3643 --title-hover-x:-95px; 3644 --title-hover-y:0px; 3645 " 3646 data-x="10" data-y="60"> 3647 <div class="ames-node__bubble"></div> 3648 <div class="ames-node__title">
3648Client<br>Work</div> 3649 </div> 3650</div> 3651
3652<script> 3653(function () { 3654 const map = document.getElementById('amesRevenueMap'); 3655 if (!map) return; 3656 3657 const svg = map.querySelector('.ames-map__lines'); 3658 const center = map.querySelector('.ames-center'); 3659 const nodes = map.querySelectorAll('.ames-node'); 3660 3661 function getNodeCenter(node, mapRect) { 3662 const bubble = node.querySelector('.ames-node__bubble'); 3663 const rect = bubble.getBoundingClientRect(); 3664 return { 3665 x: (rect.left - mapRect.left) + rect.width / 2, 3666 y: (rect.top - mapRect.top) + rect.height / 2 3667 }; 3668 } 3669 3670 function drawLines() { 3671 const rect = map.getBoundingClientRect(); 3672 const centerRect = center.getBoundingClientRect(); 3673 3674 const cx = (centerRect.left - rect.left) + centerRect.width / 2; 3675 const cy = (centerRect.top - rect.top) + centerRect.height / 2; 3676 3677 svg.setAttribute('viewBox', `0 0 ${rect.width} ${rect.height}`); 3678 svg.innerHTML = ''; 3679 3680 nodes.forEach(node => { 3681 const p = getNodeCenter(node, rect); 3682 3683 const line = document.createElementNS('http://www.w3.org/2000/svg', 'line'); 3684 line.setAttribute('x1', cx); 3685 line.setAttribute('y1', cy); 3686 line.setAttribute('x2', p.x); 3687 line.setAttribute('y2', p.y); 3688 svg.appendChild(line); 3689 }); 3690 } 3691 3692 function closeAll(except) { 3693 nodes.forEach(n => { 3694 if (n !== except) n.classList.remove('is-open'); 3695 }); 3696 } 3697 3698 nodes.forEach(node => { 3699 node.addEventListener('click', function (e) { 3700 if (window.innerWidth <= 1024) { 3701 const isOpen = node.classList.contains('is-open'); 3702 closeAll(node); 3703 if (!isOpen) node.classList.add('is-open'); 3704 else node.classList.remove('is-open'); 3705 drawLines(); 3706 e.stopPropagation(); 3707 } 3708 }); 3709 3710 node.addEventListener('mouseenter', function () { 3711 if (window.innerWidth > 1024) { 3712 closeAll(node); 3713 drawLines(); 3714 } 3715 }); 3716 3717 node.addEventListener('mouseleave', function () { 3718 if (window.innerWidth > 1024) { 3719 drawLines(); 3720 } 3721 }); 3722 }); 3723 3724 document.addEventListener('click', function (e) { 3725 if (!map.contains(e.target)) { 3726 closeAll(); 3727 drawLines(); 3728 } 3729 }); 3730 3731 let resizeTimer; 3732 function redrawSafe() { 3733 clearTimeout(resizeTimer); 3734 resizeTimer = setTimeout(drawLines, 80); 3735 } 3736 3737 window.addEventListener('resize', redrawSafe); 3738 window.addEventListener('load', drawLines); 3739 3740 setTimeout(drawLines, 150); 3741 setTimeout(drawLines, 500); 3742 setTimeout(drawLines, 900); 3743})(); 3744</script>
3744 </div> 3745 </div> 3746 </div> 3747 <div class="elementor-element elementor-element-463bb49 e-con-full e-flex e-con e-child" data-id="463bb49" data-element_type="container" data-e-type="container" data-settings="{"motion_fx_motion_fx_scrolling":"yes","motion_fx_translateY_effect":"yes","motion_fx_translateY_direction":"negative","motion_fx_devices":["desktop"],"motion_fx_translateY_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}}}"> 3748 <div class="elementor-element elementor-element-8beb1a5 elementor-widget elementor-widget-heading" data-id="8beb1a5" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3749 <div class="elementor-widget-container"> 3750 <h2 class="elementor-heading-title elementor-size-default">The Creative<br> 3751Partner Program</h2> </div> 3752 </div> 3753 <div class="elementor-element elementor-element-0da0979 elementor-widget__width-initial elementor-widget elementor-widget-text-editor" data-id="0da0979" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 3754 <div class="elementor-widget-container"> 3755 <p>is the first of its kindâcombining AI technology with real-world production infrastructure. It empowers Creators & Social Media Influencers not just with tools, but with access to studios, workspaces, and collaboration opportunitiesâturning them from content users into creative partners with multiple income streams.</p> </div> 3756 </div> 3757 <div class="elementor-element elementor-element-aa2f0bb elementor-widget elementor-widget-button" data-id="aa2f0bb" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 3758 <div class="elementor-widget-container"> 3759 <div class="elementor-button-wrapper"> 3760 <a class="elementor-button elementor-button-link elementor-size-sm" href="https://staging.cinemagicmaker.ai/creative-partner-program"> 3761 <span class="elementor-button-content-wrapper"> 3762 <span class="elementor-button-text">Apply Now To Join</span> 3763 </span> 3764 </a> 3765 </div> 3766 </div> 3767 </div> 3768 </div> 3769 </div> 3770 <div class="elementor-element elementor-element-667daa7 e-con-full e-flex e-con e-child" data-id="667daa7" data-element_type="container" data-e-type="container"> 3771 <div class="elementor-element elementor-element-ba99adb elementor-widget elementor-widget-heading" data-id="ba99adb" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3772 <div class="elementor-widget-container"> 3773 <h3 class="elementor-heading-title elementor-size-default">Create Content with Us <br> 3774& Unlimit Your full-potential!</h3> </div> 3775 </div> 3776 <div class="elementor-element elementor-element-98c1654 e-con-full e-grid e-con e-child" data-id="98c1654" data-element_type="container" data-e-type="container"> 3777 <div class="elementor-element elementor-element-a17f8b0 e-con-full e-flex e-con e-child" data-id="a17f8b0" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3778 <div class="elementor-element elementor-element-4f95b36 e-con-full e-flex e-con e-child" data-id="4f95b36" data-element_type="container" data-e-type="container"> 3779 <div class="elementor-element elementor-element-4d939de e-con-full e-flex e-con e-child" data-id="4d939de" data-element_type="container" data-e-type="container"> 3780 <div class="elementor-element elementor-element-e9c07ee elementor-widget elementor-widget-heading" data-id="e9c07ee" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3781 <div class="elementor-widget-container"> 3782 <div class="elementor-heading-title elementor-size-default">Creator</div> </div> 3783 </div> 3784 <div class="elementor-element elementor-element-06a4137 elementor-widget elementor-widget-heading" data-id="06a4137" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3785 <div class="elementor-widget-container"> 3786 <div class="elementor-heading-title elementor-size-default">Emerging<br> 3787AI creators</div>
3787 </div> 3788 </div> 3789 </div> 3790 <div class="elementor-element elementor-element-21d93fa e-con-full e-flex e-con e-child" data-id="21d93fa" data-element_type="container" data-e-type="container"> 3791 <div class="elementor-element elementor-element-51f5db9 elementor-widget elementor-widget-heading" data-id="51f5db9" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3792 <div class="elementor-widget-container"> 3793 <div class="elementor-heading-title elementor-size-default">50</div> </div> 3794 </div> 3795 <div class="elementor-element elementor-element-0574562 elementor-widget elementor-widget-heading" data-id="0574562" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3796 <div class="elementor-widget-container"> 3797 <div class="elementor-heading-title elementor-size-default">Monthly</div> </div> 3798 </div> 3799 </div> 3800 </div> 3801 <div class="elementor-element elementor-element-c26b355 e-con-full e-flex e-con e-child" data-id="c26b355" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3802 <div class="elementor-element elementor-element-f138cd0 elementor-widget__width-auto elementor-widget elementor-widget-heading" data-id="f138cd0" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3803 <div class="elementor-widget-container"> 3804 <div class="elementor-heading-title elementor-size-default">50 Credits to be used on our AI models</div> </div> 3805 </div> 3806 </div> 3807 <div class="elementor-element elementor-element-f4e3c42 e-con-full e-flex e-con e-child" data-id="f4e3c42" data-element_type="container" data-e-type="container"> 3808 <div class="elementor-element elementor-element-9bff5db e-con-full e-flex e-con e-child" data-id="9bff5db" data-element_type="container" data-e-type="container"> 3809 <div class="elementor-element elementor-element-cc97585 elementor-widget elementor-widget-heading" data-id="cc97585" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3810 <div class="elementor-widget-container"> 3811 <div class="elementor-heading-title elementor-size-default">Additionaly:</div> </div> 3812 </div> 3813 </div> 3814 <div class="elementor-element elementor-element-b370a1e e-con-full e-flex e-con e-child" data-id="b370a1e" data-element_type="container" data-e-type="container"> 3815 <div class="elementor-element elementor-element-bdc3ff1 e-con-full e-flex e-con e-child" data-id="bdc3ff1" data-element_type="container" data-e-type="container"> 3816 <div class="elementor-element elementor-element-7f0c353 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="7f0c353" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 3817 <div class="elementor-widget-container"> 3818 <ul class="elementor-icon-list-items"> 3819 <li class="elementor-icon-list-item"> 3820 <span class="elementor-icon-list-icon"> 3821 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3822 <span class="elementor-icon-list-text">4 Days co-working</span> 3823 </li> 3824 <li class="elementor-icon-list-item"> 3825 <span class="elementor-icon-list-icon"> 3826 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3827 <span class="elementor-icon-list-text">2 hrs podcast studio</span> 3828 </li> 3829 <li class="elementor-icon-list-item"> 3830 <span class="elementor-icon-list-icon"> 3831 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3832 <span class="elementor-icon-list-text">1 Cinema screening/month</span> 3833 </li> 3834 </ul> 3835 </div>
3836 </div> 3837 </div> 3838 <div class="elementor-element elementor-element-7751332 e-con-full e-flex e-con e-child" data-id="7751332" data-element_type="container" data-e-type="container"> 3839 <div class="elementor-element elementor-element-3e9b7e0 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="3e9b7e0" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 3840 <div class="elementor-widget-container"> 3841 <ul class="elementor-icon-list-items"> 3842 <li class="elementor-icon-list-item"> 3843 <span class="elementor-icon-list-icon"> 3844 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3845 <span class="elementor-icon-list-text">20% Affiliate Commission</span> 3846 </li> 3847 <li class="elementor-icon-list-item"> 3848 <span class="elementor-icon-list-icon"> 3849 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3850 <span class="elementor-icon-list-text">Private Discord</span> 3851 </li> 3852 </ul> 3853 </div> 3854 </div> 3855 </div> 3856 </div> 3857 </div> 3858 </div> 3859 <div class="elementor-element elementor-element-9d213d4 e-con-full e-flex e-con e-child" data-id="9d213d4" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3860 <div class="elementor-element elementor-element-8a3994f e-con-full e-flex e-con e-child" data-id="8a3994f" data-element_type="container" data-e-type="container"> 3861 <div class="elementor-element elementor-element-41d2155 e-con-full e-flex e-con e-child" data-id="41d2155" data-element_type="container" data-e-type="container"> 3862 <div class="elementor-element elementor-element-73e4318 elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading" data-id="73e4318" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3863 <div class="elementor-widget-container"> 3864 <div class="elementor-heading-title elementor-size-default">Producer </div> </div> 3865 </div> 3866 <div class="elementor-element elementor-element-69b545c elementor-widget elementor-widget-heading" data-id="69b545c" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3867 <div class="elementor-widget-container"> 3868 <div class="elementor-heading-title elementor-size-default">Established Creators<br> 3869<b>5K+ followers</b></div> </div> 3870 </div> 3871 </div> 3872 <div class="elementor-element elementor-element-31f2c33 e-con-full e-flex e-con e-child" data-id="31f2c33" data-element_type="container" data-e-type="container"> 3873 <div class="elementor-element elementor-element-08cba0b elementor-widget elementor-widget-heading" data-id="08cba0b" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3874 <div class="elementor-widget-container"> 3875 <div class="elementor-heading-title elementor-size-default">150</div> </div> 3876 </div> 3877 <div class="elementor-element elementor-element-bd2f705 elementor-widget elementor-widget-heading" data-id="bd2f705" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3878 <div class="elementor-widget-container"> 3879 <div class="elementor-heading-title elementor-size-default">Monthly</div> </div> 3880 </div> 3881 </div> 3882 </div> 3883 <div class="elementor-element elementor-element-8fc5995 e-con-full e-flex e-con e-child" data-id="8fc5995" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3884 <div class="elementor-element elementor-element-6cf89e4 elementor-widget__width-auto elementor-widget elementor-widget-heading" data-id="6cf89e4" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3885 <div class="elementor-widget-container"> 3886 <div class="elementor-heading-title elementor-size-default">150 Credits to be used on our AI models</div>
3886 </div> 3887 </div> 3888 </div> 3889 <div class="elementor-element elementor-element-5d35b70 e-con-full e-flex e-con e-child" data-id="5d35b70" data-element_type="container" data-e-type="container"> 3890 <div class="elementor-element elementor-element-72acd90 e-con-full e-flex e-con e-child" data-id="72acd90" data-element_type="container" data-e-type="container"> 3891 <div class="elementor-element elementor-element-e85281a elementor-widget elementor-widget-heading" data-id="e85281a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3892 <div class="elementor-widget-container"> 3893 <div class="elementor-heading-title elementor-size-default">Additionaly:</div> </div> 3894 </div> 3895 </div> 3896 <div class="elementor-element elementor-element-606edf9 e-con-full e-flex e-con e-child" data-id="606edf9" data-element_type="container" data-e-type="container"> 3897 <div class="elementor-element elementor-element-d52e96b e-con-full e-flex e-con e-child" data-id="d52e96b" data-element_type="container" data-e-type="container"> 3898 <div class="elementor-element elementor-element-bfc596a elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="bfc596a" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 3899 <div class="elementor-widget-container"> 3900 <ul class="elementor-icon-list-items"> 3901 <li class="elementor-icon-list-item"> 3902 <span class="elementor-icon-list-icon"> 3903 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3904 <span class="elementor-icon-list-text">10 days co-working </span> 3905 </li> 3906 <li class="elementor-icon-list-item"> 3907 <span class="elementor-icon-list-icon"> 3908 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3909 <span class="elementor-icon-list-text">6 hrs podcast </span> 3910 </li> 3911 <li class="elementor-icon-list-item"> 3912 <span class="elementor-icon-list-icon"> 3913 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3914 <span class="elementor-icon-list-text">2 Screenings </span> 3915 </li> 3916 <li class="elementor-icon-list-item"> 3917 <span class="elementor-icon-list-icon"> 3918 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3919 <span class="elementor-icon-list-text">Film co-production priority</span> 3920 </li> 3921 </ul> 3922 </div> 3923 </div> 3924 </div> 3925 <div class="elementor-element elementor-element-f7ca523 e-con-full e-flex e-con e-child" data-id="f7ca523" data-element_type="container" data-e-type="container"> 3926 <div class="elementor-element elementor-element-0c80652 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="0c80652" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 3927 <div class="elementor-widget-container"> 3928 <ul class="elementor-icon-list-items"> 3929 <li class="elementor-icon-list-item"> 3930 <span class="elementor-icon-list-icon"> 3931 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3932 <span class="elementor-icon-list-text">25% Affiliate Commission</span> 3933 </li> 3934 <li class="elementor-icon-list-item"> 3935 <span class="elementor-icon-list-icon"> 3936 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3937 <span class="elementor-icon-list-text">Workshop Hosting </span> 3938 </li> 3939 <li class="elementor-icon-list-item"> 3940 <span class="elementor-icon-list-icon"> 3941 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3942 <span class="elementor-icon-list-text">Tawam AI Access</span> 3943 </li> 3944 </ul> 3945 </div>
3946 </div> 3947 </div> 3948 </div> 3949 </div> 3950 </div> 3951 <div class="elementor-element elementor-element-56ae4f5 e-con-full e-flex e-con e-child" data-id="56ae4f5" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3952 <div class="elementor-element elementor-element-6675453 e-con-full e-flex e-con e-child" data-id="6675453" data-element_type="container" data-e-type="container"> 3953 <div class="elementor-element elementor-element-82cd72f e-con-full e-flex e-con e-child" data-id="82cd72f" data-element_type="container" data-e-type="container"> 3954 <div class="elementor-element elementor-element-1a6ddbf elementor-widget elementor-widget-heading" data-id="1a6ddbf" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3955 <div class="elementor-widget-container"> 3956 <div class="elementor-heading-title elementor-size-default">Creator</div> </div> 3957 </div> 3958 <div class="elementor-element elementor-element-3ebea81 elementor-widget elementor-widget-heading" data-id="3ebea81" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3959 <div class="elementor-widget-container"> 3960 <div class="elementor-heading-title elementor-size-default">Industry Leaders<br> 3961<b>20K+ followers</b></div> </div> 3962 </div> 3963 </div> 3964 <div class="elementor-element elementor-element-bc280ab e-con-full e-flex e-con e-child" data-id="bc280ab" data-element_type="container" data-e-type="container"> 3965 <div class="elementor-element elementor-element-96be71a elementor-widget elementor-widget-heading" data-id="96be71a" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3966 <div class="elementor-widget-container"> 3967 <div class="elementor-heading-title elementor-size-default">500</div> </div> 3968 </div> 3969 <div class="elementor-element elementor-element-69da14d elementor-widget elementor-widget-heading" data-id="69da14d" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3970 <div class="elementor-widget-container"> 3971 <div class="elementor-heading-title elementor-size-default">Monthly</div> </div> 3972 </div> 3973 </div> 3974 </div> 3975 <div class="elementor-element elementor-element-ce4c201 e-con-full e-flex e-con e-child" data-id="ce4c201" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 3976 <div class="elementor-element elementor-element-39dc375 elementor-widget__width-auto elementor-widget elementor-widget-heading" data-id="39dc375" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3977 <div class="elementor-widget-container"> 3978 <div class="elementor-heading-title elementor-size-default">500 Credits to be used on our AI models</div> </div> 3979 </div> 3980 </div> 3981 <div class="elementor-element elementor-element-7036281 e-con-full e-flex e-con e-child" data-id="7036281" data-element_type="container" data-e-type="container"> 3982 <div class="elementor-element elementor-element-e24a7ae e-con-full e-flex e-con e-child" data-id="e24a7ae" data-element_type="container" data-e-type="container"> 3983 <div class="elementor-element elementor-element-150b2f3 elementor-widget elementor-widget-heading" data-id="150b2f3" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 3984 <div class="elementor-widget-container"> 3985 <div class="elementor-heading-title elementor-size-default">Additionaly:</div> </div> 3986 </div> 3987 </div> 3988 <div class="elementor-element elementor-element-8de8891 e-con-full e-flex e-con e-child" data-id="8de8891" data-element_type="container" data-e-type="container"> 3989 <div class="elementor-element elementor-element-3c3c828 e-con-full e-flex e-con e-child" data-id="3c3c828" data-element_type="container" data-e-type="container"> 3990 <div class="elementor-element elementor-element-dc7b74c elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="dc7b74c" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 3991 <div class="elementor-widget-container"> 3992 <ul class="elementor-icon-list-items"> 3993 <li class="elementor-icon-list-item"> 3994 <span class="elementor-icon-list-icon"> 3995 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 3996 <span class="elementor-icon-list-text">Unlimited everything </span> 3997 </li> 3998 <li class="elementor-icon-list-item"> 3999 <span class="elementor-icon-list-icon"> 4000 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 4001 <span class="elementor-icon-list-text">Co-produce original filmswith Cinemagic Studios </span> 4002 </li> 4003 <li class="elementor-icon-list-item"> 4004 <span class="elementor-icon-list-icon"> 4005 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 4006 <span class="elementor-icon-list-text">Direct Founder Access</span> 4007 </li> 4008 </ul> 4009 </div>
4010 </div> 4011 </div> 4012 <div class="elementor-element elementor-element-b8c1a7b e-con-full e-flex e-con e-child" data-id="b8c1a7b" data-element_type="container" data-e-type="container"> 4013 <div class="elementor-element elementor-element-4fbc3d2 elementor-align-start elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list" data-id="4fbc3d2" data-element_type="widget" data-e-type="widget" data-widget_type="icon-list.default"> 4014 <div class="elementor-widget-container"> 4015 <ul class="elementor-icon-list-items"> 4016 <li class="elementor-icon-list-item"> 4017 <span class="elementor-icon-list-icon"> 4018 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 4019 <span class="elementor-icon-list-text">30% Affiliate Commission</span> 4020 </li> 4021 <li class="elementor-icon-list-item"> 4022 <span class="elementor-icon-list-icon"> 4023 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 4024 <span class="elementor-icon-list-text">Annual Creator </span> 4025 </li> 4026 <li class="elementor-icon-list-item"> 4027 <span class="elementor-icon-list-icon"> 4028 <svg aria-hidden="true" class="e-font-icon-svg e-fas-circle" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z"></path></svg> </span> 4029 <span class="elementor-icon-list-text">Summit invite</span> 4030 </li> 4031 </ul> 4032 </div> 4033 </div> 4034 </div> 4035 </div> 4036 </div> 4037 </div> 4038 </div> 4039 </div> 4040 </div> 4041 </div> 4042 </div> 4043 </div> 4044 </div> 4045 </div> 4046 </div> 4047 </div> 4048 </div> 4049 <div class="elementor-element elementor-element-c3aae81 e-con-full e-flex e-con e-parent" data-id="c3aae81" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 4050 <div class="elementor-element elementor-element-8943e39 e-flex e-con-boxed e-con e-child" data-id="8943e39" data-element_type="container" data-e-type="container"> 4051 <div class="e-con-inner"> 4052 <div class="elementor-element elementor-element-d81aa9b elementor-widget elementor-widget-template" data-id="d81aa9b" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 4053 <div class="elementor-widget-container"> 4054 <div class="elementor-template"> 4055 <div data-elementor-type="section" data-elementor-id="11523" class="elementor elementor-11523" data-elementor-post-type="elementor_library"> 4056 <div class="elementor-element elementor-element-9083217 e-con-full e-flex e-con e-parent" data-id="9083217" data-element_type="container" data-e-type="container" id="ai-workshop-3d"> 4057 <div class="elementor-element elementor-element-e439265 elementor-absolute elementor-widget elementor-widget-menu-anchor" data-id="e439265" data-element_type="widget" data-e-type="widget" data-settings="{"_position":"absolute"}" data-widget_type="menu-anchor.default"> 4058 <div class="elementor-widget-container"> 4059 <div class="elementor-menu-anchor" id="Pricing"></div> 4060 </div> 4061 </div> 4062 <div class="elementor-element elementor-element-e4e9420 e-con-full e-flex e-con e-child" data-id="e4e9420" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 4063 <div class="elementor-element elementor-element-0bb1c03 elementor-widget elementor-widget-html" data-id="0bb1c03" data-element_type="widget" data-e-type="widget" data-widget_type="html.default"> 4064 <div class="elementor-widget-container"> 4065 <!-- 4066 ELEMENTOR VERSION v2 - Self-contained with embedded fonts 4067 Just paste this entire block into an Elementor HTML widget 4068--> 4069 4070<style> 4071 /* ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 4072 FONT FACE DECLARATIONS - Embedded for Elementor compatibility 4073 ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 4074 @font-face { 4075 font-family: 'Neulis'; 4076 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Normal.ttf') format('truetype'); 4077 font-weight: 400; 4078 font-style: normal; 4079 font-display: swap; 4080 } 4081 @font-face { 4082 font-family: 'Neulis'; 4083 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/medium.ttf') format('truetype'); 4084 font-weight: 500; 4085 font-style: normal; 4086 font-display: swap; 4087 } 4088 @font-face { 4089 font-family: 'Neulis'; 4090 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Semibold.ttf') format('truetype'); 4091 font-weight: 600; 4092 font-style: normal; 4093 font-display: swap; 4094 } 4095 @font-face { 4096 font-family: 'Neulis'; 4097 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/Bold.ttf') format('truetype'); 4098 font-weight: 700; 4099 font-style: normal; 4100 font-display: swap; 4101 } 4102 @font-face { 4103 font-family: 'Neulis'; 4104 src: url('https://cinemagicmaker.ai/wp-content/uploads/2025/10/EBold.ttf') format('truetype'); 4105 font-weight: 800; 4106 font-style: normal; 4107 font-display: swap; 4108 } 4109 4110 /* ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 4111 CM PRICING WRAPPER - All styles scoped with high specificity 4112 ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 4113 4114 #cm-pricing-wrapper, 4115 #cm-pricing-wrapper *, 4116 #cm-pricing-wrapper *::before, 4117 #cm-pricing-wrapper *::after { 4118 margin: 0 !important; 4119 padding: 0 !important; 4120 box-sizing: border-box !important; 4121 } 4122 4123 #cm-pricing-wrapper { 4124 font-family: 'Neulis', 'Cairo', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important; 4125 /*background-color: #000000 !important;*/ 4126 color: #ffffff !important; 4127 line-height: 1.5 !important; 4128 position: relative !important; 4129 width: 100% !important; 4130 padding: 24px 20px 32px !important; 4131 } 4132 4133 /* ââ Toggle ââ */ 4134 #cm-pricing-wrapper .cm-toggle-container { 4135 display: flex !important; 4136 max-width: 280px !important; 4137 margin: 0 auto 24px auto !important; 4138 background: rgba(255, 255, 255, 0.03) !important; 4139 border: 1px solid rgba(255, 255, 255, 0.1) !important; 4140 border-radius: 100px !important; 4141 padding: 5px !important; 4142 position: relative !important; 4143 z-index: 2 !important; 4144 } 4145 4146 #cm-pricing-wrapper .cm-toggle-btn { 4147 flex: 1 !important; 4148 padding: 8px 20px !important; 4149 border: none !important; 4150 background: transparent !important; 4151 color: #a1a1a6 !important; 4152 font-size: 0.85rem !important; 4153 font-weight: 500 !important; 4154 cursor: pointer !important; 4155 border-radius: 100px !important; 4156 transition: all 0.3s ease !important; 4157 font-family: inherit !important; 4158 letter-spacing: 0.3px !important; 4159 white-space: nowrap !important; 4160 box-shadow: none !important; 4161 outline: none !important; 4162 text-transform: none !important; 4163 line-height: 1.4 !important; 4164 } 4165 4166 #cm-pricing-wrapper .cm-toggle-btn:hover { 4167 background: rgba(255, 255, 255, 0.05) !important; 4168 } 4169 4170 #cm-pricing-wrapper .cm-toggle-btn.cm-active { 4171 background: #ffffff !important; 4172 color: #000000 !important; 4173 font-weight: 700 !important; 4174 box-shadow: 0 0 15px rgba(255, 255, 255, 0.3) !important; 4175 } 4176 4177 /* ââ Bento Grid ââ */ 4178 #cm-pricing-wrapper .bento-container { 4179 max-width: 1200px !important; 4180 width: 100% !important; 4181 margin: 0 auto !important; 4182 padding: 0 !important; 4183 display: grid !important; 4184 grid-template-columns: 1fr 2fr !important; 4185 grid-template-areas: 4186 "hero platform" 4187 "hero image" 4188 "hero video" !important; 4189 gap: 16px !important; 4190 position: relative !important; 4191 z-index: 1 !important; 4192 } 4193 4194 #cm-pricing-wrapper .bento-box { 4195 background: rgba(15, 15, 15, 0.8) !important; 4196 border: 1px solid rgba(255, 255, 255, 0.1) !important; 4197 border-radius: 32px !important; 4198 padding: 28px !important; 4199 transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important; 4200 display: flex !important; 4201 flex-direction: column !important; 4202 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4) !important; 4203 backdrop-filter: blur(16px) !important; 4204 -webkit-backdrop-filter: blur(16px) !important; 4205 position: relative !important; 4206 } 4207 4208 #cm-pricing-wrapper .bento-box:hover { 4209 border-color: rgba(255, 255, 255, 0.2) !important; 4210 background: rgba(20, 20, 22, 0.95) !important; 4211 } 4212 4213 /* ââ Hero Card ââ */ 4214 #cm-pricing-wrapper .hero-box { 4215 grid-area: hero !important; 4216 overflow: hidden !important; 4217 padding-top: 28px !important; 4218 justify-content: center !important; 4219 } 4220 4221 #cm-pricing-wrapper .hero-box.annual-active { 4222 border: 1px solid rgba(255, 152, 0, 0.4) !important; 4223 box-shadow: 0 0 30px rgba(255, 152, 0, 0.08), inset 0 0 15px rgba(255, 152, 0, 0.04), 0 8px 32px rgba(0, 0, 0, 0.5) !important; 4224 padding-top: 56px !important; 4225 } 4226 4227 #cm-pricing-wrapper .hero-box.annual-active:hover { 4228 border: 1px solid rgba(255, 152, 0, 0.6) !important; 4229 box-shadow: 0 0 50px rgba(255, 152, 0, 0.15), inset 0 0 25px rgba(255, 152, 0, 0.08), 0 16px 40px rgba(0, 0, 0, 0.6) !important; 4230 } 4231 4232 #cm-pricing-wrapper .hero-topbar { 4233 position: absolute !important; 4234 top: 0 !important; 4235 left: 0 !important; 4236 right: 0 !important; 4237 height: 28px !important; 4238 background: #ff9800 !important; 4239 color: #000000 !important; 4240 font-size: 0.75rem !important; 4241 font-weight: 800 !important; 4242 text-transform: uppercase !important; 4243 letter-spacing: 1px !important; 4244 display: none; /* No !important - allows JS to override */ 4245 align-items: center !important; 4246 justify-content: center !important; 4247 z-index: 10 !important; 4248 margin: 0 !important; 4249 padding: 0 !important; 4250 } 4251 4252 /* Show topbar when annual is active */ 4253 #cm-pricing-wrapper .hero-box.annual-active .hero-topbar { 4254 display: flex !important; 4255 } 4256 4257 #cm-pricing-wrapper .image-box { grid-area: image !important; } 4258 #cm-pricing-wrapper .video-box { grid-area: video !important; } 4259 #cm-pricing-wrapper .platform-box { grid-area: platform !important; } 4260 4261 /* ââ Header ââ */ 4262 #cm-pricing-wrapper .plan-name { 4263 font-size: 0.75rem !important; 4264 font-weight: 700 !important; 4265 color: #a1a1a6 !important; 4266 margin-bottom: 6px !important; 4267 letter-spacing: 2px !important; 4268 text-transform: uppercase !important; 4269 text-align: center !important; 4270 line-height: 1.4 !important; 4271 } 4272 4273 #cm-pricing-wrapper .plan-description { 4274 font-size: 1.25rem !important; 4275 font-weight: 700 !important; 4276 color: #ffffff !important; 4277 line-height: 1.2 !important; 4278 text-align: center !important; 4279 letter-spacing: -0.02em !important; 4280 margin-bottom: 16px !important; 4281 } 4282 4283 /* ââ Price Display Toggle ââ */ 4284 #cm-pricing-wrapper #monthly-price { 4285 display: block; 4286 } 4287 #cm-pricing-wrapper #annual-price { 4288 display: none; 4289 } 4290 #cm-pricing-wrapper .hero-box.annual-active #monthly-price { 4291 display: none !important; 4292 } 4293 #cm-pricing-wrapper .hero-box.annual-active #annual-price { 4294 display: block !important; 4295 } 4296 4297 /* ââ Price ââ */ 4298 #cm-pricing-wrapper .price-section { 4299 display: flex !important;
4300 align-items: baseline !important; 4301 justify-content: center !important; 4302 gap: 6px !important; 4303 margin-bottom: 4px !important; 4304 } 4305 4306 #cm-pricing-wrapper .price-original { 4307 font-size: 1.1rem !important; 4308 color: #ff4757 !important; 4309 text-decoration: line-through !important; 4310 opacity: 0.6 !important; 4311 } 4312 4313 #cm-pricing-wrapper .price-current { 4314 font-size: 3.2rem !important; 4315 font-weight: 800 !important; 4316 color: #ffffff !important; 4317 letter-spacing: -2px !important; 4318 line-height: 1 !important; 4319 } 4320 4321 #cm-pricing-wrapper .price-period { 4322 font-size: 0.9rem !important; 4323 color: #a1a1a6 !important; 4324 font-weight: 500 !important; 4325 } 4326 4327 #cm-pricing-wrapper .billing-info { 4328 font-size: 0.78rem !important; 4329 color: #a1a1a6 !important; 4330 text-align: center !important; 4331 margin-bottom: 16px !important; 4332 opacity: 0.8 !important; 4333 } 4334 4335 /* ââ CTA Button ââ */ 4336 #cm-pricing-wrapper .select-plan-btn { 4337 width: 100% !important; 4338 padding: 14px !important; 4339 background: rgba(255, 255, 255, 0.03) !important; 4340 color: #ff9800 !important; 4341 border: 1px solid rgba(255, 255, 255, 0.1) !important; 4342 border-radius: 100px !important; 4343 font-size: 0.95rem !important; 4344 font-weight: 700 !important; 4345 cursor: pointer !important; 4346 transition: all 0.3s ease !important; 4347 margin-bottom: 16px !important; 4348 text-decoration: none !important; 4349 display: block !important; 4350 text-align: center !important; 4351 font-family: inherit !important; 4352 letter-spacing: 0.5px !important; 4353 line-height: 1.4 !important; 4354 } 4355 4356 #cm-pricing-wrapper .select-plan-btn:hover { 4357 background: #ffffff !important; 4358 color: #000000 !important; 4359 border-color: #ffffff !important; 4360 box-shadow: 0 4px 15px rgba(255, 255, 255, 0.2) !important; 4361 } 4362 4363 /* ââ Savings Badge ââ */ 4364 #cm-pricing-wrapper .savings-badge { 4365 background: rgba(255, 255, 255, 0.04) !important; 4366 border: 1px solid rgba(255, 255, 255, 0.1) !important; 4367 padding: 10px 16px !important; 4368 border-radius: 12px !important; 4369 font-size: 0.82rem !important; 4370 color: #a1a1a6 !important; 4371 display: none; /* No !important - allows JS to override */ 4372 align-items: center !important; 4373 justify-content: center !important; 4374 gap: 8px !important; 4375 margin-bottom: 12px !important; 4376 } 4377 4378 /* Show savings badge when annual is active */ 4379 #cm-pricing-wrapper .hero-box.annual-active .savings-badge { 4380 display: flex !important; 4381 } 4382 4383 /* ââ Credits Box ââ */ 4384 #cm-pricing-wrapper .credits-section { 4385 background: rgba(255, 255, 255, 0.02) !important; 4386 border: 1px solid rgba(255, 255, 255, 0.1) !important; 4387 border-radius: 14px !important; 4388 padding: 16px !important; 4389 margin-bottom: 0 !important; 4390 } 4391 4392 #cm-pricing-wrapper .credits-main { 4393 display: flex !important; 4394 align-items: center !important; 4395 gap: 8px !important; 4396 margin-bottom: 10px !important; 4397 color: #ffffff !important; 4398 font-weight: 700 !important; 4399 font-size: 1rem !important; 4400 } 4401 4402 #cm-pricing-wrapper .credits-icon { 4403 color: #4ade80 !important; 4404 } 4405 4406 #cm-pricing-wrapper .credits-details { 4407 list-style: none !important; 4408 color: #a1a1a6 !important; 4409 font-size: 0.82rem !important; 4410 } 4411 4412 #cm-pricing-wrapper .credits-details li { 4413 margin: 5px 0 !important; 4414 padding: 0 !important; 4415 display: flex !important; 4416 align-items: center !important; 4417 gap: 8px !important; 4418 list-style: none !important; 4419 } 4420 4421 #cm-pricing-wrapper .credits-details li::before { 4422 content: 'â¢' !important; 4423 color: rgba(255, 255, 255, 0.1) !important; 4424 } 4425 4426 /* ââ Section Title ââ */ 4427 #cm-pricing-wrapper .section-title { 4428 font-size: 1.2rem !important; 4429 color: #ffffff !important; 4430 margin-bottom: 16px !important; 4431 font-weight: 600 !important; 4432 display: flex !important; 4433 align-items: center !important; 4434 gap: 10px !important; 4435 letter-spacing: -0.02em !important; 4436 } 4437 4438 #cm-pricing-wrapper .section-title::after { 4439 content: '' !important; 4440 flex: 1 !important; 4441 height: 1px !important; 4442 background: rgba(255, 255, 255, 0.05) !important; 4443 } 4444 4445 /* ââ Feature List ââ */ 4446 #cm-pricing-wrapper .features-list { 4447 list-style: none !important; 4448 } 4449 4450 #cm-pricing-wrapper .features-list.grid-list { 4451 display: grid !important; 4452 grid-template-columns: 1fr 1fr !important; 4453 gap: 10px !important; 4454 } 4455 4456 #cm-pricing-wrapper .grid-span-2 { 4457 grid-column: span 2 !important; 4458 } 4459 4460 #cm-pricing-wrapper .features-list.grid-list .feature-item { 4461 background: rgba(255, 255, 255, 0.03) !important; 4462 padding: 13px 14px !important; 4463 border-radius: 14px !important; 4464 border: none !important; 4465 } 4466 4467 #cm-pricing-wrapper .feature-item { 4468 display: flex !important; 4469 align-items: center !important; 4470 gap: 12px !important; 4471 color: #ffffff !important; 4472 list-style: none !important; 4473 } 4474 4475 #cm-pricing-wrapper .feature-check { 4476 color: #4ade80 !important; 4477 font-size: 0.95rem !important; 4478 flex-shrink: 0 !important; 4479 } 4480 4481 #cm-pricing-wrapper .feature-check.disabled { 4482 color: #444444 !important; 4483 } 4484 4485 #cm-pricing-wrapper .feature-content { 4486 flex: 1 !important; 4487 display: flex !important; 4488 justify-content: space-between !important; 4489 align-items: center !important; 4490 gap: 10px !important; 4491 } 4492 4493 #cm-pricing-wrapper .feature-text { 4494 color: #ffffff !important; 4495 font-weight: 500 !important; 4496 line-height: 1.35 !important; 4497 font-size: 0.88rem !important; 4498 } 4499 4500 #cm-pricing-wrapper .feature-text.disabled { 4501 color: rgba(255, 255, 255, 0.3) !important; 4502 } 4503 4504 #cm-pricing-wrapper .badge-unlimited { 4505 background: #1b3d2a !important; 4506 color: #4ade80 !important; 4507 font-size: 0.6rem !important; 4508 font-weight: 800 !important; 4509 padding: 3px 8px !important; 4510 border-radius: 5px !important; 4511 text-transform: uppercase !important; 4512 white-space: nowrap !important; 4513 flex-shrink: 0 !important; 4514 } 4515 4516 #cm-pricing-wrapper .feature-badge.badge-coming { 4517 background: rgba(255, 100, 150, 0.1) !important; 4518 color: #ff6496 !important; 4519 border: 1px solid rgba(255, 100, 150, 0.3) !important; 4520 padding: 3px 8px !important; 4521 border-radius: 5px !important; 4522 font-size: 0.6rem !important; 4523 font-weight: 800 !important; 4524 text-transform: uppercase !important; 4525 white-space: nowrap !important; 4526 } 4527 4528 /* ââ Inline style overrides ââ */ 4529 #cm-pricing-wrapper [style*="border-top"] { 4530 border-top: 1px solid rgba(255,255,255,0.06) !important; 4531 padding-top: 16px !important; 4532 margin-top: 4px !important; 4533 } 4534 4535 /* ââ Responsive ââ */ 4536 @media (max-width: 900px) { 4537 #cm-pricing-wrapper .bento-container { 4538 grid-template-columns: 1fr !important; 4539 grid-template-areas: "hero" "platform" "image" "video" !important; 4540 } 4541 } 4542 4543 @media (max-width: 768px) { 4544 #cm-pricing-wrapper .features-list.grid-list { 4545 grid-template-columns: 1fr !important; 4546 } 4547 #cm-pricing-wrapper .grid-span-2 { 4548 grid-column: span 1 !important; 4549 } 4550 } 4551 4552 @media (max-width: 480px) { 4553 #cm-pricing-wrapper .bento-box { 4554 padding: 20px !important; 4555 border-radius: 24px !important; 4556 } 4557 #cm-pricing-wrapper .price-current { 4558 font-size: 2.8rem !important; 4559 } 4560 } 4561</style> 4562 4563<div id="cm-pricing-wrapper"> 4564 <!-- Toggle --> 4565 <div class="cm-toggle-container"> 4566 <button class="cm-toggle-btn" onclick="cmSwitchPlan('monthly')">Monthly</button> 4567 <button class="cm-toggle-btn cm-active" onclick="cmSwitchPlan('annual')">Annual</button> 4568 </div> 4569 4570 <!-- Bento Grid --> 4571 <div class="bento-container"> 4572 4573 <!-- âââ HERO: Pricing Card âââ --> 4574 <div id="hero-card" class="bento-box hero-box annual-active"> 4575 <div id="annual-topbar-connected" class="hero-topbar">20% OFF</div> 4576 4577 <div style="text-align:center; margin-bottom:16px;"> 4578 <div class="plan-name">Freelancer</div> 4579 <div class="plan-description">AI That Doesn't Look AI</div> 4580 </div> 4581 4582 <!-- Monthly Price --> 4583 <div id="monthly-price" style="text-align:center; margin-bottom:4px;"> 4584 <div class="price-section">
4585 <span class="price-current">$245</span> 4586 <span class="price-period">/month</span> 4587 </div> 4588 <div class="billing-info">250 credits per month ⢠Unlimited daily generations</div> 4589 </div> 4590 4591 <!-- Annual Price --> 4592 <div id="annual-price" style="text-align:center; margin-bottom:4px;"> 4593 <div class="price-section"> 4594 <span class="price-original">$245</span> 4595 <span class="price-current" style="color:#ff9800 !important;">$192</span> 4596 <span class="price-period">/month</span> 4597 </div> 4598 <div class="billing-info">Billed for 12 months</div> 4599 </div> 4600 4601 <a href="https://app.cinemagicmaker.ai/payment/subscription" class="select-plan-btn">Select Plan</a> 4602 4603 <!-- Savings Badge (Annual only) --> 4604 <div id="savings-badge" class="savings-badge"> 4605 <span>ð</span> 4606 <span>Save $636 compared to monthly</span> 4607 </div> 4608 4609 <!-- Power Usage --> 4610 <div style="border-top: 1px solid rgba(255,255,255,0.06); padding-top:16px; margin-top:4px;"> 4611 <div class="credits-main"> 4612 <span class="credits-icon">â¡</span> 4613 <span style="font-size:0.9rem;">Power Usage</span> 4614 </div> 4615 <div class="credits-section"> 4616 <div class="credits-main" style="font-size:0.95rem; margin-bottom:10px;"> 4617 <span id="credits-amount">250 credits/mo.</span> 4618 </div> 4619 <ul class="credits-details"> 4620 <li>~ 961 Seedream v4 Images</li> 4621 <li>~ 284 Vidu Reference Videos</li> 4622 </ul> 4623 </div> 4624 <p style="font-size:0.78rem; color:#a1a1a6; margin-top:10px !important; line-height:1.5;"> 4625 Production tuned for Hollywood-grade cinematic outputs.</p> 4626 </div> 4627 </div> 4628 4629 <!-- âââ PLATFORM FEATURES âââ --> 4630 <div class="bento-box platform-box"> 4631 <div class="section-title">Platform Features</div> 4632 <ul class="features-list grid-list"> 4633 <li class="feature-item"> 4634 <span class="feature-check">â</span> 4635 <div class="feature-content"><span class="feature-text">Access to Studio Level Interface</span></div> 4636 </li> 4637 <li class="feature-item"> 4638 <span class="feature-check">â</span> 4639 <div class="feature-content"> 4640 <span class="feature-text">Ultra Details/Cinematic Button</span> 4641 <span class="badge-unlimited">UNLIMITED</span> 4642 </div> 4643 </li> 4644 <li class="feature-item"> 4645 <span class="feature-check">â</span> 4646 <div class="feature-content"><span class="feature-text">Production Tuned Models</span></div> 4647 </li> 4648 <li class="feature-item"> 4649 <span class="feature-check">â</span> 4650 <div class="feature-content"><span class="feature-text">Full Arabic interface support</span></div> 4651 </li> 4652 <li class="feature-item grid-span-2"> 4653 <span class="feature-check">â</span> 4654 <div class="feature-content"><span class="feature-text">Production features (Director, Camera, Lens, Shot type)</span></div> 4655 </li> 4656 </ul> 4657 </div> 4658 4659 <!-- âââ IMAGE MODEL âââ --> 4660 <div class="bento-box image-box"> 4661 <div class="section-title">State Of The Art Image Models</div> 4662 <ul class="features-list grid-list"> 4663 <li class="feature-item"> 4664 <span class="feature-check">â</span> 4665 <div class="feature-content"><span class="feature-text">Nanobanana 2</span></div> 4666 </li> 4667 <li class="feature-item">
4668 <span class="feature-check">â</span> 4669 <div class="feature-content"><span class="feature-text">Seedream V5</span></div> 4670 </li> 4671 <li class="feature-item"> 4672 <span class="feature-check">â</span> 4673 <div class="feature-content"><span class="feature-text">Nanobanana Pro</span></div> 4674 </li> 4675 <li class="feature-item"> 4676 <span class="feature-check">â</span> 4677 <div class="feature-content"><span class="feature-text">GPT Image 1.5</span></div> 4678 </li> 4679 <li class="feature-item"> 4680 <span class="feature-check disabled">â</span> 4681 <div class="feature-content"> 4682 <span class="feature-text disabled">Talant Scan</span> 4683 <span class="feature-badge badge-coming">COMING SOON</span> 4684 </div> 4685 </li> 4686 <li class="feature-item"> 4687 <span class="feature-check">â</span> 4688 <div class="feature-content"><span class="feature-text">Other Models</span></div> 4689 </li> 4690 </ul> 4691 </div> 4692 4693 <!-- âââ VIDEO MODEL âââ --> 4694 <div class="bento-box video-box"> 4695 <div class="section-title">Production Grade Video Models</div> 4696 <ul class="features-list grid-list"> 4697 <li class="feature-item"> 4698 <span class="feature-check">â</span> 4699 <div class="feature-content"> 4700 <span class="feature-text">Seedance 2.0</span> 4701 4702 </div> 4703 </li> 4704 <li class="feature-item"> 4705 <span class="feature-check">â</span> 4706 <div class="feature-content"><span class="feature-text">Veo 3.1</span></div> 4707 </li> 4708 <li class="feature-item"> 4709 <span class="feature-check">â</span> 4710 <div class="feature-content"><span class="feature-text">Kling</span></div> 4711 </li> 4712 <li class="feature-item"> 4713 <span class="feature-check">â</span> 4714 <div class="feature-content"><span class="feature-text">Other Models</span></div> 4715 </li> 4716 </ul> 4717 </div> 4718 4719 </div> 4720</div> 4721
4722<script> 4723(function() { 4724 // Force font preload 4725 var fontUrls = [ 4726 'https://cinemagicmaker.ai/wp-content/uploads/2025/10/Bold.ttf', 4727 'https://cinemagicmaker.ai/wp-content/uploads/2025/10/EBold.ttf', 4728 'https://cinemagicmaker.ai/wp-content/uploads/2025/10/medium.ttf' 4729 ]; 4730 fontUrls.forEach(function(url) { 4731 var link = document.createElement('link'); 4732 link.rel = 'preload'; 4733 link.as = 'font'; 4734 link.type = 'font/ttf'; 4735 link.crossOrigin = 'anonymous'; 4736 link.href = url; 4737 document.head.appendChild(link); 4738 }); 4739 4740 // Plan switch function - CSS handles visibility via .annual-active class 4741 window.cmSwitchPlan = function(plan) { 4742 var heroCard = document.getElementById('hero-card'); 4743 var toggleBtns = document.querySelectorAll('#cm-pricing-wrapper .cm-toggle-btn'); 4744 4745 if (plan === 'monthly') { 4746 heroCard.classList.remove('annual-active'); 4747 toggleBtns[0].classList.add('cm-active'); 4748 toggleBtns[1].classList.remove('cm-active'); 4749 } else { 4750 heroCard.classList.add('annual-active'); 4751 toggleBtns[0].classList.remove('cm-active'); 4752 toggleBtns[1].classList.add('cm-active'); 4753 } 4754 }; 4755})(); 4756</script>
4756 4757 </div> 4758 </div> 4759 </div> 4760 </div> 4761 </div> 4762 </div> 4763 </div> 4764 </div> 4765 </div> 4766 </div> 4767 </div> 4768 <div class="elementor-element elementor-element-16014d2 e-con-full e-flex e-con e-parent" data-id="16014d2" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 4769 <div class="elementor-element elementor-element-3748e53 e-flex e-con-boxed e-con e-child" data-id="3748e53" data-element_type="container" data-e-type="container"> 4770 <div class="e-con-inner"> 4771 <div class="elementor-element elementor-element-9ec6f2e elementor-widget elementor-widget-template" data-id="9ec6f2e" data-element_type="widget" data-e-type="widget" data-widget_type="template.default"> 4772 <div class="elementor-widget-container"> 4773 <div class="elementor-template"> 4774 <div data-elementor-type="section" data-elementor-id="12566" class="elementor elementor-12566" data-elementor-post-type="elementor_library"> 4775 <div class="elementor-element elementor-element-606b7fe e-flex e-con-boxed e-con e-parent" data-id="606b7fe" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 4776 <div class="e-con-inner"> 4777 <div class="elementor-element elementor-element-9b153a4 e-flex e-con-boxed e-con e-child" data-id="9b153a4" data-element_type="container" data-e-type="container"> 4778 <div class="e-con-inner"> 4779 <div class="elementor-element elementor-element-071b210 e-con-full e-flex e-con e-child" data-id="071b210" data-element_type="container" data-e-type="container"> 4780 <div class="elementor-element elementor-element-fc9246f e-con-full e-flex e-con e-child" data-id="fc9246f" data-element_type="container" data-e-type="container"> 4781 <div class="elementor-element elementor-element-773b5fa e-con-full e-flex e-con e-child" data-id="773b5fa" data-element_type="container" data-e-type="container"> 4782 <div class="elementor-element elementor-element-a499a92 titleHMA elementor-widget__width-initial elementor-widget-tablet__width-inherit elementor-widget elementor-widget-heading" data-id="a499a92" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 4783 <div class="elementor-widget-container"> 4784 <h3 class="elementor-heading-title elementor-size-default">Recent News</h3> </div> 4785 </div> 4786 </div> 4787 <div class="elementor-element elementor-element-52ac8b1 e-con-full e-flex e-con e-child" data-id="52ac8b1" data-element_type="container" data-e-type="container"> 4788 <div class="elementor-element elementor-element-da10270 elementor-widget__width-initial elementor-widget-tablet__width-initial elementor-widget elementor-widget-heading" data-id="da10270" data-element_type="widget" data-e-type="widget" data-alt="< AI.filmmaking({ forEveryone: true }); >" data-widget_type="heading.default"> 4789 <div class="elementor-widget-container"> 4790 <h4 class="elementor-heading-title elementor-size-default">Discover the latest from <b>Magic Maker AI</b> â the first Arabic AI platform â featuring company updates, new model releases, and industry stories that matter.</h4> </div> 4791 </div> 4792 </div> 4793 </div> 4794 <div class="elementor-element elementor-element-ea466d2 e-con-full e-flex e-con e-child" data-id="ea466d2" data-element_type="container" data-e-type="container"> 4795 <div class="elementor-element elementor-element-3cab13f e-con-full elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile e-flex e-con e-child" data-id="3cab13f" data-element_type="container" data-e-type="container"> 4796 <div class="elementor-element elementor-element-99b70a0 elementor-align-right elementor-mobile-align-left elementor-widget elementor-widget-button" data-id="99b70a0" data-element_type="widget" data-e-type="widget" data-widget_type="button.default"> 4797 <div class="elementor-widget-container"> 4798 <div class="elementor-button-wrapper"> 4799 <a class="elementor-button elementor-button-link elementor-size-sm" href="#"> 4800 <span class="elementor-button-content-wrapper"> 4801 <span class="elementor-button-text">
4801Click here</span> 4802 </span> 4803 </a> 4804 </div> 4805 </div> 4806 </div> 4807 </div> 4808 </div> 4809 </div> 4810 <div class="elementor-element elementor-element-ecabf6d e-con-full e-flex e-con e-child" data-id="ecabf6d" data-element_type="container" data-e-type="container"> 4811 <div class="elementor-element elementor-element-fe10eaf elementor-grid-1 elementor-posts--thumbnail-left elementor-grid-tablet-1 elementor-posts--align-left elementor-grid-mobile-1 elementor-widget elementor-widget-posts" data-id="fe10eaf" data-element_type="widget" data-e-type="widget" data-settings="{"classic_columns":"1","classic_columns_tablet":"1","classic_columns_mobile":"1","classic_row_gap":{"unit":"px","size":35,"sizes":[]},"classic_row_gap_tablet":{"unit":"px","size":"","sizes":[]},"classic_row_gap_mobile":{"unit":"px","size":"","sizes":[]}}" data-widget_type="posts.classic"> 4812 <div class="elementor-widget-container"> 4813 <div class="elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid" role="list"> 4814 <article class="elementor-post elementor-grid-item post-12622 post type-post status-publish format-standard has-post-thumbnail hentry category-advertising-and-media-trends category-behind-the-scenes category-cinemagic-insights category-main-news category-technology-trends" role="listitem"> 4815 <a class="elementor-post__thumbnail__link" href="https://cinemagicmaker.ai/cinemagic-ai-launches-the-first-arabic-first-diffusion-model-built-for-the-gcc/" tabindex="-1" > 4816 <div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="2560" height="1440" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03.jpg" class="attachment-full size-full wp-image-12833" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03.jpg 2560w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-300x169.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-1024x576.jpg 1024w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-768x432.jpg 768w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-1536x864.jpg 1536w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-2048x1152.jpg 2048w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Cinemagic-AI-Launches-the-First-Arabic-First-Diffusion-Model-Built-for-the-GCC-03-18x10.jpg 18w" sizes="(max-width: 2560px) 100v
4816w, 2560px" /></div> 4817 </a> 4818 <div class="elementor-post__text"> 4819 <h3 class="elementor-post__title"> 4820 <a href="https://cinemagicmaker.ai/cinemagic-ai-launches-the-first-arabic-first-diffusion-model-built-for-the-gcc/" > 4821 Cinemagic Ai Launches the First Arabic-First Diffusion Model Built for the GCC </a> 4822 </h3> 4823 <div class="elementor-post__meta-data"> 4824 <span class="elementor-post-date"> 4825 April 21, 2026 </span> 4826 </div> 4827 </div> 4828 </article> 4829 </div> 4830 4831 </div> 4832 </div> 4833 </div> 4834 <div class="elementor-element elementor-element-8a86edc e-con-full e-flex e-con e-child" data-id="8a86edc" data-element_type="container" data-e-type="container"> 4835 <div class="elementor-element elementor-element-52a433b elementor-grid-3 elementor-grid-tablet-2 elementor-grid-mobile-1 elementor-posts--thumbnail-top elementor-widget elementor-widget-posts" data-id="52a433b" data-element_type="widget" data-e-type="widget" data-settings="{"classic_row_gap":{"unit":"px","size":45,"sizes":[]},"classic_row_gap_tablet":{"unit":"px","size":0,"sizes":[]},"classic_columns":"3","classic_columns_tablet":"2","classic_columns_mobile":"1","classic_row_gap_mobile":{"unit":"px","size":"","sizes":[]}}" data-widget_type="posts.classic"> 4836 <div class="elementor-widget-container"> 4837 <div class="elementor-posts-container elementor-posts elementor-posts--skin-classic elementor-grid" role="list"> 4838 <article class="elementor-post elementor-grid-item post-12850 post type-post status-publish format-standard has-post-thumbnail hentry category-cinemagic-insights" role="listitem"> 4839 <a class="elementor-post__thumbnail__link" href="https://cinemagicmaker.ai/cinemagic-ai-launches-talentscan-service-for-developing-digital-twins-of-talents-and-artists/" tabindex="-1" > 4840 <div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="2560" height="1440" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01.jpg" class="attachment-full size-full wp-image-12853" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01.jpg 2560w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-300x169.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-1024x576.jpg 1024w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-768x432.jpg 768w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-1536x864.jpg 1536w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-2048x1152.jpg 2048w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/talent-scan-01-18x10.jpg 18w" sizes="(max-width: 2560px) 100v
4840w, 2560px" /></div> 4841 </a> 4842 <div class="elementor-post__text"> 4843 <h3 class="elementor-post__title"> 4844 <a href="https://cinemagicmaker.ai/cinemagic-ai-launches-talentscan-service-for-developing-digital-twins-of-talents-and-artists/" > 4845 Cinemagic Ai Launches Tawam AI Service for Developing Digital Twins of Talents and Artists </a> 4846 </h3> 4847 <div class="elementor-post__meta-data"> 4848 <span class="elementor-post-date"> 4849 April 21, 2026 </span> 4850 </div> 4851 </div> 4852 </article> 4853 <article class="elementor-post elementor-grid-item post-12848 post type-post status-publish format-standard has-post-thumbnail hentry category-cinemagic-insights" role="listitem"> 4854 <a class="elementor-post__thumbnail__link" href="https://cinemagicmaker.ai/cinemagic-ai-launches-academic-access-to-magic-maker-empowering-the-next-generation-of-creators/" tabindex="-1" > 4855 <div class="elementor-post__thumbnail"><img loading="lazy" decoding="async" width="2560" height="1440" src="https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01.jpg" class="attachment-full size-full wp-image-12903" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01.jpg 2560w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-300x169.jpg 300w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-1024x576.jpg 1024w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-768x432.jpg 768w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-1536x864.jpg 1536w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-2048x1152.jpg 2048w, https://cinemagicmaker.ai/wp-content/uploads/2026/04/Academic-Access-01-18x10.jpg 18w" sizes="(max-width: 2560px) 100v
4855w, 2560px" /></div> 4856 </a> 4857 <div class="elementor-post__text"> 4858 <h3 class="elementor-post__title"> 4859 <a href="https://cinemagicmaker.ai/cinemagic-ai-launches-academic-access-to-magic-maker-empowering-the-next-generation-of-creators/" > 4860 Cinemagic Ai Launches Academic Access to Magic Maker, Empowering the Next Generation of Creators </a> 4861 </h3> 4862 <div class="elementor-post__meta-data"> 4863 <span class="elementor-post-date"> 4864 April 21, 2026 </span> 4865 </div> 4866 </div> 4867 </article> 4868 </div> 4869 4870 </div> 4871 </div> 4872 </div> 4873 </div> 4874 </div> 4875 </div> 4876 </div> 4877 </div> 4878 </div> 4879 </div> 4880 </div> 4881 </div> 4882 </div> 4883 </div> 4884 </div> 4885 </div> <!-- ast-container --> 4886 </div><!-- #content --> 4887 <footer data-elementor-type="footer" data-elementor-id="8444" class="elementor elementor-8444 elementor-location-footer" data-elementor-post-type="elementor_library"> 4888 <div class="elementor-element elementor-element-f207ceb e-con-full e-flex e-con e-parent" data-id="f207ceb" data-element_type="container" data-e-type="container" data-settings="{"background_background":"classic"}"> 4889 <div class="elementor-element elementor-element-f8881bf e-con-full e-flex e-con e-child" data-id="f8881bf" data-element_type="container" data-e-type="container"> 4890 <div class="elementor-element elementor-element-6290e2d e-con-full e-flex e-con e-child" data-id="6290e2d" data-element_type="container" data-e-type="container"> 4891 <div class="elementor-element elementor-element-43f261e e-con-full e-flex e-con e-child" data-id="43f261e" data-element_type="container" data-e-type="container"> 4892 <div class="elementor-element elementor-element-f10258d elementor-widget elementor-widget-theme-site-logo elementor-widget-image" data-id="f10258d" data-element_type="widget" data-e-type="widget" data-widget_type="theme-site-logo.default"> 4893 <div class="elementor-widget-container"> 4894 <a href="https://cinemagicmaker.ai"> 4895 <img width="757" height="156" src="https://cinemagicmaker.ai/wp-content/uploads/2024/10/mm-01.svg" class="attachment-full size-full wp-image-13264" alt="" /> </a> 4896 </div> 4897 </div> 4898 </div> 4899 <div class="elementor-element elementor-element-56ae332 e-con-full e-flex e-con e-child" data-id="56ae332" data-element_type="container" data-e-type="container"> 4900 <div class="elementor-element elementor-element-00ba218 elementor-widget__width-initial elementor-widget-mobile__width-inherit elementor-widget elementor-widget-text-editor" data-id="00ba218" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 4901 <div class="elementor-widget-container"> 4902 <p data-start="0" data-end="241">Magic Maker is a flagship product of Cinemagic, a leading company in content production and digital media services serving the Middle East and North Africa (MENA). We empower companies globally to tell better stories through moving pictures.</p><p data-start="243" data-end="334" data-is-last-node="" data-is-only-node="">We help you promote your vision, idea, or product using innovative technologies we harness.</p> </div> 4903 </div> 4904 </div> 4905 </div> 4906 <div class="elementor-element elementor-element-c198f9e e-con-full e-flex e-con e-child" data-id="c198f9e" data-element_type="container" data-e-type="container"> 4907 <div class="elementor-element elementor-element-27dc5f1 elementor-widget elementor-widget-heading" data-id="27dc5f1" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4908 <div class="elementor-widget-container"> 4909 <h3 class="elementor-heading-title elementor-size-default">quick links</h3> </div> 4910 </div> 4911 <div class="elementor-element elementor-element-6264ae4 elementor-nav-menu--dropdown-none elementor-nav-menu__align-start elementor-widget elementor-widget-nav-menu" data-id="6264ae4" data-element_type="widget" data-e-type="widget" data-settings="{"layout":"vertical","submenu_icon":{"value":"<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-caret-down\"
4911 viewBox=\"0 0 320 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M31.3 192h257.3c17.8 0 26.7 21.5 14.1 34.1L174.1 354.8c-7.8 7.8-20.5 7.8-28.3 0L17.2 226.1C4.6 213.5 13.5 192 31.3 192z\"><\/path><\/svg>","library":"fa-solid"}}" data-widget_type="nav-menu.default"> 4912 <div class="elementor-widget-container"> 4913 <nav aria-label="Qiuck Links" class="elementor-nav-menu--main elementor-nav-menu__container elementor-nav-menu--layout-vertical e--pointer-underline e--animation-fade"> 4914 <ul id="menu-1-6264ae4" class="elementor-nav-menu sm-vertical"><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9342"><a href="/#unique_capabilities" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Unique Capabilities</a></li> 4915<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9343"><a href="/#control" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Control</a></li> 4916<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9341"><a href="/#enhance" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Enhance</a></li> 4917<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9344"><a href="/#our_story" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Our Story</a></li> 4918<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-12426"><a href="/#tawam" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Tawam<sup>AI</sup></a></li> 4919<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-10162"><a href="/#Pricing" aria-current="page" class="elementor-item elementor-item-anchor menu-link">Pricing</a></li> 4920<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10747"><a target="_blank" href="https://app.cinemagicmaker.ai/" class="elementor-item menu-link">Magic App</a></li> 4921<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13149"><a href="https://cinemagicmaker.ai/support/" class="elementor-item menu-link">Support</a></li> 4922<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13244"><a href="https://cinemagicmaker.ai/mcp/" class="elementor-item menu-link">MCP</a></li> 4923</ul> </nav> 4924 <nav class="elementor-nav-menu--dropdown elementor-nav-menu__container" aria-hidden="true"> 4925 <ul id="menu-2-6264ae4" class="elementor-nav-menu sm-vertical"><li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9342"><a href="/#unique_capabilities" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Unique Capabilities</a></li> 4926<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9343"><a href="/#control" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Control</a></li> 4927<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9341"><a href="/#enhance" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Enhance</a></li> 4928<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-9344"><a href="/#our_story" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Our Story</a></li> 4929<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-12426"><a href="/#tawam" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Tawam<sup>AI</sup></a></li> 4930<li class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-10162"><a href="/#Pricing" aria-current="page" class="elementor-item elementor-item-anchor menu-link" tabindex="-1">Pricing</a></li> 4931<li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10747"><a target="_blank" href="https://app.cinemagicmaker.ai/" class="elementor-item menu-link" tabindex="-1">Magic App</a></li> 4932<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13149"><a href="https://cinemagicmaker.ai/support/" class="elementor-item menu-link" tabindex="-1">Support</a></li> 4933<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13244"><a href="https://cinemagicmaker.ai/mcp/" class="elementor-item menu-link" tabindex="-1">MCP</a></li> 4934</ul> </nav> 4935 </div>
4936 </div> 4937 </div> 4938 <div class="elementor-element elementor-element-7e8ffaa e-con-full e-flex e-con e-child" data-id="7e8ffaa" data-element_type="container" data-e-type="container"> 4939 <div class="elementor-element elementor-element-cd2e9cb elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-heading" data-id="cd2e9cb" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default"> 4940 <div class="elementor-widget-container"> 4941 <h2 class="elementor-heading-title elementor-size-default">we work with</h2> </div> 4942 </div> 4943 <div class="elementor-element elementor-element-f284d85 e-con-full e-flex e-con e-child" data-id="f284d85" data-element_type="container" data-e-type="container"> 4944 <div class="elementor-element elementor-element-bda29b4 elementor-widget elementor-widget-image" data-id="bda29b4" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4945 <div class="elementor-widget-container"> 4946 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/google-logo-partner.png" class="attachment-large size-large wp-image-11108" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/google-logo-partner.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/google-logo-partner-300x125.png 300w" sizes="(max-width: 600px) 100vw, 600px" /> </div> 4947 </div> 4948 <div class="elementor-element elementor-element-b17fef0 elementor-widget elementor-widget-image" data-id="b17fef0" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4949 <div class="elementor-widget-container"> 4950 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/openAI-logo-partner.png" class="attachment-large size-large wp-image-11112" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/openAI-logo-partner.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/openAI-logo-partner-300x125.png 300w" sizes="(max-width: 600px) 100vw, 600px" /> </div> 4951 </div> 4952 <div class="elementor-element elementor-element-599676d elementor-widget elementor-widget-image" data-id="599676d" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4953 <div class="elementor-widget-container"> 4954 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/sora-logo-partner-2.png" class="attachment-large size-large wp-image-11114" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/sora-logo-partner-2.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/sora-logo-partner-2-300x125.png 300w" sizes="(max-width: 600px) 100vw, 600px" /> </div> 4955 </div> 4956 <div class="elementor-element elementor-element-4cb3176 elementor-widget elementor-widget-image" data-id="4cb3176" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4957 <div class="elementor-widget-container"> 4958 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/klinkAI-logo-partner-1.png" class="attachment-large size-large wp-image-11115" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/klinkAI-logo-partner-1.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/klinkAI-logo-partner-1-300x125.png 300w" sizes="(max-width: 600px) 100vw, 600px" /> </div> 4959 </div> 4960 <div class="elementor-element elementor-element-a3d5a12 elementor-widget elementor-widget-image" data-id="a3d5a12" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4961 <div class="elementor-widget-container"> 4962 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/minimax-logo-partner-1.png" class="attachment-large size-large wp-image-11116" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/minimax-logo-partner-1.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/minimax-logo-partner-1-300x125.png 300w" sizes="(max-width: 600px) 100v
4962w, 600px" /> </div> 4963 </div> 4964 <div class="elementor-element elementor-element-5ac1245 elementor-widget elementor-widget-image" data-id="5ac1245" data-element_type="widget" data-e-type="widget" data-widget_type="image.default"> 4965 <div class="elementor-widget-container"> 4966 <img width="600" height="250" src="https://cinemagicmaker.ai/wp-content/uploads/2025/10/ideogram-logo-partner-1.png" class="attachment-large size-large wp-image-11117" alt="" srcset="https://cinemagicmaker.ai/wp-content/uploads/2025/10/ideogram-logo-partner-1.png 600w, https://cinemagicmaker.ai/wp-content/uploads/2025/10/ideogram-logo-partner-1-300x125.png 300w" sizes="(max-width: 600px) 100vw, 600px" /> </div> 4967 </div> 4968 </div> 4969 </div> 4970 </div> 4971 <div class="elementor-element elementor-element-05d07f7 e-con-full e-flex e-con e-child" data-id="05d07f7" data-element_type="container" data-e-type="container"> 4972 <div class="elementor-element elementor-element-7014603 e-con-full e-flex e-con e-child" data-id="7014603" data-element_type="container" data-e-type="container"> 4973 <div class="elementor-element elementor-element-e6cb2f2 elementor-widget elementor-widget-text-editor" data-id="e6cb2f2" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default"> 4974 <div class="elementor-widget-container"> 4975 <p>Copyright © 2025 Cinemagic Kuwait | All rights reserved.</p> </div> 4976 </div> 4977 </div> 4978 </div> 4979 </div> 4980 </footer> 4981 </div><!-- #page --> 4982<template id="tp-language" data-tp-language="en_US"></template>
4982<script type="text/javascript">window.$zoho=window.$zoho || {};$zoho.salesiq=$zoho.salesiq||{ready:function(){}};var d=document;s=d.createElement("script");s.type="text/javascript";s.id="zsiqscript";s.defer=true;s.src="https://salesiq.zohopublic.com/widget?plugin_source=wordpress&wc=siqb35739b60e3a56259d4b1b1df83db8c70ad49f7fc07066ae1d6522f3662667c1";t=d.getElementsByTagName("script")[0];t.parentNode.insertBefore(s,t);</script>
4982<script type="speculationrules"> 4983{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-*.php","\/wp-admin\/*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/astra\/*","\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 4984</script>
4984 4985
4985<script> 4986 const registerAllyAction = () => { 4987 if ( ! window?.ElementorProFrontendConfig || ! window?.elementorFrontend?.utils?.urlActions ) { 4988 return; 4989 } 4990 4991 elementorFrontend.utils.urlActions.addAction( 'allyWidget:open', () => { 4992 if (window?.ea11yWidget?.widget?.open) { 4993 return window.ea11yWidget.widget.isOpen() 4994 ? window.ea11yWidget.widget.close() 4995 : window.ea11yWidget.widget.open(); 4996 } 4997 } ); 4998 }; 4999 5000 const waitingLimit = 30; 5001 let retryCounter = 0; 5002 5003 const waitForElementorPro = () => { 5004 return new Promise( ( resolve ) => { 5005 const intervalId = setInterval( () => { 5006 if ( retryCounter === waitingLimit ) { 5007 resolve( null ); 5008 } 5009 5010 retryCounter++; 5011 5012 if ( window.elementorFrontend && window?.elementorFrontend?.utils?.urlActions ) { 5013 clearInterval( intervalId ); 5014 resolve( window.elementorFrontend ); 5015 } 5016 }, 100 ); // Check every 100 milliseconds for availability of elementorFrontend 5017 }); 5018 }; 5019 5020 waitForElementorPro().then( () => { registerAllyAction(); }); 5021 </script>
5021 5022 5023<div id="ast-scroll-top" tabindex="0" class="ast-scroll-top-icon ast-scroll-to-top-right" data-on-devices="both"> 5024 <span class="ast-icon icon-arrow"><svg class="ast-arrow-svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" x="0px" y="0px" width="26px" height="16.043px" viewBox="57 35.171 26 16.043" enable-background="new 57 35.171 26 16.043" xml:space="preserve"> 5025 <path d="M57.5,38.193l12.5,12.5l12.5-12.5l-2.5-2.5l-10,10l-10-10L57.5,38.193z" /> 5026 </svg></span> <span class="screen-reader-text">Scroll to Top</span> 5027</div> 5028
5028<script> 5029 const lazyloadRunObserver = () => { 5030 const lazyloadBackgrounds = document.querySelectorAll( `.e-con.e-parent:not(.e-lazyloaded)` ); 5031 const lazyloadBackgroundObserver = new IntersectionObserver( ( entries ) => { 5032 entries.forEach( ( entry ) => { 5033 if ( entry.isIntersecting ) { 5034 let lazyloadBackground = entry.target; 5035 if( lazyloadBackground ) { 5036 lazyloadBackground.classList.add( 'e-lazyloaded' ); 5037 } 5038 lazyloadBackgroundObserver.unobserve( entry.target ); 5039 } 5040 }); 5041 }, { rootMargin: '200px 0px 200px 0px' } ); 5042 lazyloadBackgrounds.forEach( ( lazyloadBackground ) => { 5043 lazyloadBackgroundObserver.observe( lazyloadBackground ); 5044 } ); 5045 }; 5046 const events = [ 5047 'DOMContentLoaded', 5048 'elementor/lazyload/observe', 5049 ]; 5050 events.forEach( ( event ) => { 5051 document.addEventListener( event, lazyloadRunObserver ); 5052 } ); 5053 </script>
5053 5054
5054<script>/* ============================================================ 5055 Cinemagic Inspire â WordPress Page JavaScript 5056 Handles: prompt fetching (server-paginated), filtering, 5057 pagination, modal, admin delete 5058 ============================================================ */ 5059 5060(function () { 5061 'use strict'; 5062 5063 /* ---------- CONFIG ---------- */ 5064 var WP_PROMPTS_URL = '/wp-json/ci-inspire/v1/prompts'; 5065 var FALLBACK_README_URL = 'https://raw.githubusercontent.com/YouMind-OpenLab/awesome-nano-banana-pro-prompts/refs/heads/main/README.md'; 5066 var PAGE_SIZE = 50; 5067 var SEARCH_DEBOUNCE_MS = 300; 5068 5069 // Admin config injected by PHP in wp_footer. 5070 var WP_CONFIG = null; 5071 var IS_ADMIN = false; 5072 var PROMPTS_ADMIN_BASE = ''; 5073 5074 /* ---------- CATEGORY RULES ---------- */ 5075 var CATEGORY_RULES = [ 5076 { id: 'cinematic', regex: /\bcinematic\b|\bfilm\s+(noir|grain|look|style)\b|\banamorphic\b|\bcinemato(graph|graphy)\b/i }, 5077 { id: 'Photography', regex: /\bphotograph(y|ic|er)?\b|\bcamera\b|\blens\b|\bbokeh\b|\bDSLR\b|\baperture\b|\bf\/\d|\bISO\s*\d|\bshutter\s*speed\b|\bdepth\s+of\s+field\b|\bshot\s+on\b|\b(35|50|85|100|135)mm\b|\b(Canon|Nikon|Sony|Fuji|Leica)\b|\bphotorealistic\b|\bhyperrealistic\b/i }, 5078 { id: 'Girl', regex: /\bportrait\b|\bheadshot\b|\bclose[- ]?up\b|\bface\b|\bmodel\b|\bbust\s+shot\b|\bupper\s+body\b|\blooking\s+at\s+(the\s+)?camera\b/i }, 5079 { id: 'Product & Brand', regex: /\bproduct\b|\bbrand\b|\bcommercial\b|\badvertis(e|ing|ement)\b|\bpackag(e|ing)\b|\blabel\b|\bmockup\b|\blogo\b|\bshooting\s+for\b/i }, 5080 { id: 'Illustration & 3D', regex: /\b3[dD]\s*(render|model|art)?\b|\brender(ed|ing)?\b|\bCGI\b|\billustrat(ion|ed|or)\b|\bconcept\s+art\b|\boctane\b|\bunreal\s*engine\b|\bblender\b|\bdigital\s+art\b|\bvector\b|\banimation\b|\bartwork\b|\bdrawing\b|\bsketch\b|\bwatercolor\b|\boil\s+paint(ing)?\b/i }, 5081 { id: 'Food & Drink', regex: /\bfood\b|\bdrink\b|\bmeal\b|\bdish\b|\bcuisine\b|\brestaurant\b|\bbeverage\b|\bcoffee\b|\btea\b|\bwine\b|\bbeer\b|\bcocktail\b|\bjuice\b|\bdessert\b|\bcake\b|\bpasta\b|\bsushi\b|\bcooking\b|\bchef\b|\brecipe\b/i }, 5082 ]; 5083 5084 /* ---------- STATE ---------- */ 5085 var displayedPrompts = []; // current page of prompts 5086 var totalPrompts = 0; // total matching prompts 5087 var totalPages = 0; // total pages 5088 var currentPage = 1; 5089 var activeCategory = 'all'; 5090 var searchQuery = ''; 5091 var searchTimer = null; 5092 var selectedModalItem = null; 5093 var modalActiveImg = 0; 5094 var modalOptionalText = 'use the image from the Image Reference'; 5095 var selectedIds = new Set(); // currently checked cards (admin) 5096 var useServerMode = false; // true when WP REST API is available 5097 var isLoading = false; // prevent concurrent fetches 5098 5099 // Fallback mode: client-side data (used when WP REST is unavailable) 5100 var fallbackAllPrompts = []; 5101 var fallbackFiltered = []; 5102 5103 /* ---------- DOM REFS ---------- */ 5104 var $ = function (sel, ctx) { return (ctx || document).querySelector(sel); }; 5105 var $$ = function (sel, ctx) { return Array.from((ctx || document).querySelectorAll(sel)); }; 5106 5107 /* ---------- HELPERS ---------- */ 5108 5109 function formatNumber(n) { 5110 if (!n) return '0'; 5111 if (n >= 1e6) return (n / 1e6).toFixed(1) + 'M'; 5112 if (n >= 1e3) return (n / 1e3).toFixed(1) + 'K'; 5113 return String(n); 5114 } 5115 5116 function detectCategories(text) { 5117 var cats = CATEGORY_RULES.filter(function (r) { return r.regex.test(text); }).map(function (r) { return r.id; }); 5118 return cats.length ? cats : ['Other']; 5119 } 5120 5121 function flattenJson(obj) { 5122 if (typeof obj !== 'object' || obj === null) return String(obj); 5123 if (Array.isArray(obj)) return obj.map(flattenJson).join(', '); 5124 return Object.entries(obj).map(function (e) { return typeof e[1] === 'object' && e[1] !== null ? flattenJson(e[1]) : String(e[1]); }).join(', '); 5125 } 5126 5127 function extractJsonValues(str) { 5128 var vals = []; 5129 var rx = /:\s*"([^"]+)"/g; 5130 var m; 5131 while ((m = rx.exec(str)) !== null) vals.push(m[1]); 5132 return vals.join(', '); 5133 } 5134 5135 function parsePrompt(text) { 5136 if (!text) return ''; 5137 var s = text.indexOf('{'); 5138 var e = text.lastIndexOf('}'); 5139 if (s === -1 || e === -1) return text; 5140 var before = text.slice(0, s).trim(); 5141 var json = text.slice(s, e + 1); 5142 var after = text.slice(e + 1).trim(); 5143 try { 5144 return [before, flattenJson(JSON.parse(json)), after].filter(
5144Boolean).join('\n\n') || text; 5145 } catch (err) { 5146 return [before, extractJsonValues(json), after].filter(Boolean).join('\n\n') || text.replace(/[{}",]/g, ' ').replace(/\s+/g, ' ').trim(); 5147 } 5148 } 5149 5150 function truncatePrompt(text, max) { 5151 max = max || 120; 5152 var parsed = parsePrompt(text); 5153 var cleaned = parsed.replace(/\n/g, ' ').replace(/\s+/g, ' ').trim(); 5154 if (!cleaned) { 5155 var raw = text.replace(/[{}"]|"\w+":/g, ' ').replace(/\s+/g, ' ').trim(); 5156 return raw.length > max ? raw.slice(0, max) + '...' : raw; 5157 } 5158 return cleaned.length > max ? cleaned.slice(0, max) + '...' : cleaned; 5159 } 5160 5161 function escapeHtml(str) { 5162 var div = document.createElement('div'); 5163 div.textContent = str; 5164 return div.innerHTML; 5165 } 5166 5167 function normalizePromptText(text) { 5168 return String(text || '').toLowerCase().trim().replace(/\s+/g, ' '); 5169 } 5170 5171 function toHex8(num) { 5172 return (num >>> 0).toString(16).padStart(8, '0'); 5173 } 5174 5175 // crc32b-compatible hash to match backend prompt_hash generation. 5176 function calcPromptHash(text) { 5177 var str = normalizePromptText(text); 5178 if (!str) return ''; 5179 var crc = 0 ^ (-1); 5180 for (var i = 0; i < str.length; i++) { 5181 crc = (crc >>> 8) ^ CRC32_TABLE[(crc ^ str.charCodeAt(i)) & 0xff]; 5182 } 5183 return toHex8((crc ^ (-1)) >>> 0); 5184 } 5185 5186 var CRC32_TABLE = (function () { 5187 var table = []; 5188 for (var n = 0; n < 256; n++) { 5189 var c = n; 5190 for (var k = 0; k < 8; k++) { 5191 c = (c & 1) ? (0xedb88320 ^ (c >>> 1)) : (c >>> 1); 5192 } 5193 table[n] = c >>> 0; 5194 } 5195 return table; 5196 })(); 5197 5198 function ensurePromptHash(prompt) { 5199 if (!prompt) return ''; 5200 if (!prompt.prompt_hash) prompt.prompt_hash = calcPromptHash(prompt.prompt || ''); 5201 return prompt.prompt_hash; 5202 } 5203 5204 5205 /* ---------- SVG ICONS ---------- */ 5206 var ICON = { 5207 search: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"/><path d="M21 21l-4.35-4.35"/></svg>', 5208 heart: '<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>', 5209 chevL: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 19l-7-7 7-7"/></svg>', 5210 chevR: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 5l7 7-7 7"/></svg>', 5211 close: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 18L18 6M6 6l12 12"/></svg>', 5212 copy: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2"/><path d="M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1"/></svg>', 5213 check: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 13l4 4L19 7"/></svg>', 5214 extLink: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"/></svg>', 5215 imgErr: '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1"><path stroke-linecap="round" stroke-linejoin="round" d="M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z"/></svg>', 5216 }; 5217 5218 /* ========================================================================== 5219 DATA FETCHING â Server-side pagination (primary) + README fallback 5220 ========================================================================== */ 5221 5222 /** 5223 * Fetch a single page from the WP REST API with server-side filtering. 5224 * Returns { prompts, total, pages, page }. 5225 */ 5226 function fetchServerPage(page, category, search) { 5227 var url = WP_PROMPTS_URL + '?per_page=' + PAGE_SIZE + '&page=' + page; 5228 if (category && category !== 'all') { 5229 // For man/woman, we use search since they're keyword-based, not stored categories 5230 if (category === 'man') { 5231 url += '&search=' + encodeURIComponent((search ? search + ' ' : '') + 'man'); 5232 } else if (category === 'woman') { 5233 url += '&search=' + encodeURIComponent((search ? search + ' ' : '') + 'woman'); 5234 } else { 5235 url += '&category=' + encodeURIComponent(category); 5236 if (search) url += '&search=' + encodeURIComponent(search); 5237 } 5238 } else if (search) { 5239 url += '&search=' + encodeURIComponent(search); 5240 } 5241 return fetch(url).then(function (res) { 5242 if (!res.ok) throw new Error('HTTP ' + res.status); 5243 return res.json(); 5244 });
5245 } 5246 5247 /** 5248 * Load the current page using server-side pagination. 5249 * This is the main data-loading function â called on init, category change, search, page change. 5250 */ 5251 function loadCurrentPage() { 5252 if (isLoading) return; 5253 isLoading = true; 5254 5255 if (!useServerMode) { 5256 // Fallback: client-side pagination 5257 applyFallbackFilters(); 5258 renderCards(); 5259 renderPagination(); 5260 updateCount(); 5261 isLoading = false; 5262 return; 5263 } 5264 5265 // Show skeleton while loading 5266 renderSkeletons(); 5267 5268 fetchServerPage(currentPage, activeCategory, searchQuery) 5269 .then(function (data) { 5270 displayedPrompts = (data.prompts || []); 5271 displayedPrompts.forEach(function (p) { 5272 ensurePromptHash(p); 5273 }); 5274 // Ensure categories are populated for display 5275 displayedPrompts.forEach(function (p) { 5276 if (!p.categories || !p.categories.length) { 5277 p.categories = detectCategories(p.prompt || ''); 5278 } 5279 }); 5280 totalPrompts = data.total || 0; 5281 totalPages = data.pages || 1; 5282 if (currentPage > totalPages && totalPages > 0) currentPage = totalPages; 5283 5284 renderCards(); 5285 renderPagination(); 5286 updateCount(); 5287 updateHeroCount(); 5288 }) 5289 .catch(function (err) { 5290 console.error('[Inspire] Failed to fetch page:', err); 5291 var grid = $('.ci-grid'); 5292 if (grid) grid.innerHTML = '<div class="ci-empty"><div class="ci-empty__icon">◈</div><p class="ci-empty__text">Failed to load prompts. Please try again.</p></div>'; 5293 }) 5294 .finally(function () { 5295 isLoading = false; 5296 }); 5297 } 5298 5299 /* ---------- FALLBACK: Client-side mode (README) ---------- */ 5300 5301 function fetchFromReadme() { 5302 var NON_ENG_LANGS = ['ZH', 'JA', 'KO', 'TH', 'VI', 'HI', 'DE', 'FR', 'IT', 'PT', 'TR', 'ES', 'RU', 'AR']; 5303 return fetch(FALLBACK_README_URL).then(function (res) { 5304 if (!res.ok) throw new Error('Fetch failed: ' + res.status); 5305 return res.text(); 5306 }).then(function (text) { 5307 var sections = text.split(/(?=### No\. \d+:)/g); 5308 var prompts = []; 5309 for (var i = 0; i < sections.length; i++) { 5310 var section = sections[i]; 5311 if (!section.startsWith('### No.')) continue; 5312 var hasLangBadge = /Language-[A-Z]{2}/.test(section); 5313 var hasEnglish = section.includes('Language-EN'); 5314 var hasNonEng = NON_ENG_LANGS.some(function (l) { return section.includes('Language-' + l); }); 5315 if ((hasNonEng && !hasEnglish) || (hasLangBadge && !hasEnglish)) continue; 5316 var images = []; 5317 var imgRx = /<img\s+src="(https?:\/\/[^"]+)"/g; 5318 var im; 5319 while ((im = imgRx.exec(section)) !== null) { 5320 if (!im[1].includes('shields.io') && !im[1].includes('badge')) images.push(im[1]); 5321 } 5322 if (!images.length) { 5323 var mdRx = /!\[[^\]]*\]\((https?:\/\/[^)]+)\)/g; 5324 var md; 5325 while ((md = mdRx.exec(section)) !== null) { 5326 if (!md[1].includes('shields.io') && !md[1].includes('badge') && !md[1].includes('awesome.re')) images.push(md[1]); 5327 } 5328 } 5329 if (!images.length) continue; 5330 var pm = section.match(/####[^\n]* Prompt[^\n]*\n+```[^\n]*\n([\s\S]+?)```/); 5331 var promptText = pm ? pm[1].trim() : ''; 5332 if (!promptText || promptText.length < 10) continue; 5333 var latin = (promptText.match(/[a-zA-Z]/g) || []).length; 5334 var total = promptText.replace(/\s/g, '').length; 5335 if (total > 0 && latin / total < 0.3) continue; 5336 var am = section.match(/\*\*Author:\*\* \[([^\]]+)\]/); 5337 var dm = section.match(/\*\*Published:\*\* ([^\n]+)/); 5338 prompts.push({ 5339 id: 'nb-' + prompts.length, prompt: promptText, image: images[0], images: images, 5340 author: am ? am[1] : '', author_name: am ? am[1] : '', model: 'Nano Banana Pro', 5341 prompt_date: dm ? dm[1].trim() : '', categories: detectCategories(promptText), likes: 0, views: 0, 5342 prompt_hash: calcPromptHash(promptText), 5343 }); 5344 } 5345 return prompts; 5346 });
5347 } 5348 5349 function applyFallbackFilters() { 5350 var seenIds = new Set(); 5351 var result = fallbackAllPrompts.filter(function (p) { 5352 if (seenIds.has(p.id)) return false; 5353 seenIds.add(p.id); 5354 var hasImg = p.image && p.image.trim() && (p.image.startsWith('http://') || p.image.startsWith('https://')); 5355 return p.prompt && hasImg; 5356 }); 5357 if (activeCategory === 'man') { 5358 result = result.filter(function (p) { return /\bman\b|\bmale\b|\bguy\b|\bboy\b/i.test(p.prompt); }); 5359 } else if (activeCategory === 'woman') { 5360 result = result.filter(function (p) { return /\bwoman\b|\bfemale\b|\bgirl\b|\blady\b/i.test(p.prompt); }); 5361 } else if (activeCategory !== 'all') { 5362 result = result.filter(function (p) { return p.categories && p.categories.includes(activeCategory); }); 5363 } 5364 if (searchQuery.trim()) { 5365 var words = searchQuery.trim().toLowerCase().split(/\s+/).filter(Boolean); 5366 result = result.filter(function (p) { 5367 var s = (p.prompt || '').toLowerCase() + ' ' + (p.author_name || '').toLowerCase(); 5368 return words.every(function (w) { return s.includes(w); }); 5369 }); 5370 } 5371 fallbackFiltered = result; 5372 totalPrompts = fallbackFiltered.length; 5373 totalPages = Math.max(1, Math.ceil(totalPrompts / PAGE_SIZE)); 5374 if (currentPage > totalPages) currentPage = totalPages; 5375 if (currentPage < 1) currentPage = 1; 5376 var start = (currentPage - 1) * PAGE_SIZE; 5377 displayedPrompts = fallbackFiltered.slice(start, start + PAGE_SIZE); 5378 } 5379 5380 /* ========================================================================== 5381 RENDERING 5382 ========================================================================== */ 5383
5384 function renderSkeletons() { 5385 var grid = $('.ci-grid'); 5386 if (!grid) return; 5387 grid.innerHTML = ''; 5388 for (var i = 0; i < 20; i++) { 5389 grid.insertAdjacentHTML('beforeend', 5390 '<div class="ci-skeleton">' + 5391 '<div class="ci-skeleton__img"></div>' + 5392 '<div class="ci-skeleton__body">' + 5393 '<div class="ci-skeleton__line"></div>' + 5394 '<div class="ci-skeleton__line ci-skeleton__line--short"></div>' + 5395 '<div class="ci-skeleton__footer"><div class="ci-skeleton__pill"></div><div class="ci-skeleton__btn"></div></div>' + 5396 '</div>' + 5397 '</div>' 5398 ); 5399 } 5400 } 5401 5402 function renderCards() { 5403 var grid = $('.ci-grid'); 5404 if (!grid) return; 5405 5406 if (!displayedPrompts.length) { 5407 grid.innerHTML = '<div class="ci-empty"><div class="ci-empty__icon">◈</div><p class="ci-empty__text">No results found</p></div>'; 5408 return; 5409 } 5410 5411 grid.innerHTML = ''; 5412 displayedPrompts.forEach(function (item, idx) { 5413 var images = item.images && item.images.length ? item.images : [item.image]; 5414 var authorInitial = ((item.author_name || item.author || '?')[0] || '?').toUpperCase(); 5415 var authorName = escapeHtml(item.author_name || item.author || ''); 5416 var cat = item.categories && item.categories.length && item.categories[0] !== 'Other' ? item.categories[0] : ''; 5417 var hasMulti = images.length > 1; 5418 5419 var isSelected = selectedIds.has(item.id); 5420 var html = '<div class="ci-card' + (isSelected ? ' ci-card--selected' : '') + '" data-idx="' + idx + '" data-id="' + item.id + '">'; 5421 5422 // Checkbox (admin only) 5423 if (IS_ADMIN && item.db_id) { 5424 html += '<button class="ci-card__checkbox' + (isSelected ? ' ci-checked' : '') + '" data-action="toggle-select">'; 5425 html += isSelected ? '<svg class="ci-card__check-icon" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"/></svg>' : ''; 5426 html += '</button>'; 5427 } 5428 5429 // Image area 5430 html += '<div class="ci-card__img-wrap">'; 5431 html += '<div class="ci-card__img-skeleton"></div>'; 5432 html += '<img class="ci-card__img ci-loading" src="' + escapeHtml(images[0]) + '" alt="" loading="lazy" data-images=\'' + JSON.stringify(images).replace(/'/g, ''') + '\' data-active="0">'; 5433 html += '<div class="ci-card__hover-overlay"></div>'; 5434 html += '<div class="ci-card__likes">' + ICON.heart + ' ' + formatNumber(item.likes) + '</div>'; 5435 5436 if (hasMulti) { 5437 html += '<button class="ci-card__nav-btn ci-card__nav-prev" data-dir="prev">' + ICON.chevL + '</button>'; 5438 html += '<button class="ci-card__nav-btn ci-card__nav-next" data-dir="next">' + ICON.chevR + '</button>'; 5439 html += '<div class="ci-card__dots">'; 5440 images.forEach(function (_, i) { 5441 html += '<button class="ci-card__dot' + (i === 0 ? ' ci-active' : '') + '" data-dot="' + i + '"></button>'; 5442 }); 5443 html += '</div>'; 5444 } 5445 5446 if (cat) html += '<div class="ci-card__category">' + escapeHtml(cat) + '</div>'; 5447 html += '</div>'; 5448 5449 // Body 5450 html += '<div class="ci-card__body">'; 5451 html += '<p class="ci-card__text">' + escapeHtml(truncatePrompt(item.prompt)) + '</p>'; 5452 html += '<div class="ci-card__footer">'; 5453 html += '<div class="ci-card__author"><div class="ci-card__avatar">' + authorInitial + '</div><span class="ci-card__author-name">' + authorName + '</span></div>'; 5454 html += '<button class="ci-card__try-btn" data-action="open">Try Now</button>'; 5455 html += '</div></div></div>'; 5456 5457 grid.insertAdjacentHTML('beforeend', html); 5458 }); 5459 5460 // Attach image load handlers 5461 $$('.ci-card__img', grid).forEach(function (img) { 5462 img.addEventListener('load', function () { 5463 this.classList.remove('ci-loading'); 5464 this.classList.add('ci-loaded'); 5465 var skel = this.parentElement.querySelector('.ci-card__img-skeleton'); 5466 if (skel) skel.style.display = 'none'; 5467 }); 5468 img.addEventListener('error', function () { 5469 this.style.display = 'none'; 5470 var skel = this.parentElement.querySelector('.ci-card__img-skeleton'); 5471 if (skel) skel.style.display = 'none'; 5472 var placeholder = document.createElement('div'); 5473 placeholder.className = 'ci-card__img-placeholder'; 5474 placeholder.innerHTML = ICON.imgErr; 5475 this.parentElement.appendChild(placeholder); 5476 }); 5477 });
5478 } 5479 5480 /* ---------- PAGINATION ---------- */ 5481 5482 function renderPagination() { 5483 var container = $('.ci-pagination'); 5484 if (!container) return; 5485 if (totalPages <= 1) { container.innerHTML = ''; return; } 5486 5487 var pages = []; 5488 for (var p = 1; p <= totalPages; p++) { 5489 if (p === 1 || p === totalPages || Math.abs(p - currentPage) <= 2) pages.push(p); 5490 } 5491 5492 var html = '<button class="ci-pagination__btn" data-page="prev" ' + (currentPage === 1 ? 'disabled' : '') + '>←</button>'; 5493 var last = 0; 5494 pages.forEach(function (p) { 5495 if (last && p - last > 1) html += '<span class="ci-pagination__dots">…</span>'; 5496 html += '<button class="ci-pagination__btn' + (p === currentPage ? ' ci-active' : '') + '" data-page="' + p + '">' + p + '</button>'; 5497 last = p; 5498 }); 5499 html += '<button class="ci-pagination__btn" data-page="next" ' + (currentPage === totalPages ? 'disabled' : '') + '>→</button>'; 5500 5501 container.innerHTML = html; 5502 } 5503 5504 /* ---------- SELECTION BAR (Admin) ---------- */ 5505
5506 function renderSelectionBar() { 5507 var bar = $('.ci-selection-bar'); 5508 if (!bar) return; 5509 if (selectedIds.size === 0) { 5510 bar.classList.remove('ci-visible'); 5511 return; 5512 } 5513 bar.classList.add('ci-visible'); 5514 var countEl = bar.querySelector('.ci-selection-bar__count'); 5515 if (countEl) countEl.textContent = selectedIds.size + ' selected' + (IS_ADMIN ? ' (permanent)' : ''); 5516 } 5517 5518 function removeSelected() { 5519 if (!IS_ADMIN || !PROMPTS_ADMIN_BASE) return; 5520 5521 var selectedItems = Array.from(selectedIds).map(function (id) { 5522 return displayedPrompts.find(function (item) { return item.id === id; }) || 5523 fallbackAllPrompts.find(function (item) { return item.id === id; }); 5524 }).filter(function (item) { 5525 return item && item.db_id; 5526 }); 5527 5528 if (!selectedItems.length) { 5529 selectedIds.clear(); 5530 renderSelectionBar(); 5531 return; 5532 } 5533 5534 if (!window.confirm('Delete the selected prompts permanently from the database?')) return; 5535 5536 var dbIds = selectedItems.map(function (item) { return item.db_id; }); 5537 5538 Promise.all(dbIds.map(function (dbId) { return deletePromptByDbId(dbId); })) 5539 .then(function () { 5540 selectedIds.clear(); 5541 renderSelectionBar(); 5542 loadCurrentPage(); 5543 }) 5544 .catch(function (err) { 5545 console.error('[Inspire] Failed to delete selected prompts:', err); 5546 }); 5547 } 5548 5549 function clearSelection() { 5550 selectedIds.clear(); 5551 renderCards(); 5552 renderSelectionBar(); 5553 } 5554 5555 /* ---------- ADMIN DELETE API ---------- */ 5556 5557 function deletePromptByDbId(dbId) { 5558 if (!IS_ADMIN || !PROMPTS_ADMIN_BASE || !WP_CONFIG || !WP_CONFIG.nonce) { 5559 return Promise.reject(new Error('Admin delete is not configured')); 5560 } 5561 5562 return fetch(PROMPTS_ADMIN_BASE + '/' + dbId, { 5563 method: 'DELETE', 5564 credentials: 'same-origin', 5565 headers: { 'X-WP-Nonce': WP_CONFIG.nonce } 5566 }).then(function (r) { 5567 if (!r.ok) { 5568 return r.json().catch(function () { return {}; }).then(function (data) { 5569 return Promise.reject(new Error(data.message || ('Delete failed (' + r.status + ')'))); 5570 }); 5571 } 5572 return r.json(); 5573 }); 5574 } 5575 5576 /* ---------- MODAL ---------- */ 5577 5578 var _savedBodyOverflow = ''; 5579 var _savedHtmlOverflow = ''; 5580 5581 function lockScroll() { 5582 _savedBodyOverflow = document.body.style.overflow; 5583 _savedHtmlOverflow = document.documentElement.style.overflow; 5584 document.body.style.overflow = 'hidden'; 5585 document.documentElement.style.overflow = 'hidden'; 5586 } 5587 5588 function unlockScroll() { 5589 document.body.style.overflow = _savedBodyOverflow; 5590 document.documentElement.style.overflow = _savedHtmlOverflow; 5591 } 5592 5593 function openModal(item) { 5594 selectedModalItem = item; 5595 modalActiveImg = 0; 5596 modalOptionalText = 'use the image from the Image Reference'; 5597 renderModal(); 5598 5599 // Show/hide admin delete button 5600 var deleteBtn = $('.ci-modal__delete'); 5601 if (deleteBtn) { 5602 deleteBtn.style.display = (IS_ADMIN && item.db_id) ? 'flex' : 'none'; 5603 } 5604 5605 $('.ci-modal-backdrop').classList.add('ci-open'); 5606 lockScroll(); 5607 } 5608 5609 function closeModal() { 5610 $('.ci-modal-backdrop').classList.remove('ci-open'); 5611 unlockScroll(); 5612 selectedModalItem = null; 5613 } 5614 5615 function renderModal() { 5616 var item = selectedModalItem; 5617 if (!item) return; 5618 5619 var images = item.images && item.images.length ? item.images : [item.image]; 5620 var displayPrompt = parsePrompt(item.prompt); 5621 var authorInitial = ((item.author_name || item.author || '?')[0] || '?').toUpperCase(); 5622 5623 $('.ci-modal__image-main img').src = images[modalActiveImg] || ''; 5624 5625 var thumbContainer = $('.ci-modal__thumbnails'); 5626 if (images.length > 1) { 5627 thumbContainer.style.display = 'flex'; 5628 thumbContainer.innerHTML = ''; 5629 images.forEach(function (img, i) { 5630 thumbContainer.insertAdjacentHTML('beforeend', 5631 '<button class="ci-modal__thumb' + (i === modalActiveImg ? ' ci-active' : '') + '" data-thumb="' + i + '">' + 5632 '<img src="' + escapeHtml(img) + '" alt="">' + 5633 '</button>' 5634 ); 5635 }); 5636 } else { 5637 thumbContainer.style.display = 'none'; 5638 } 5639 5640 $('.ci-modal__author-avatar').textContent = authorInitial; 5641 $('.ci-modal__author-name').textContent = item.author_name || ''; 5642 $('.ci-modal__author-handle').textContent = '@' + (item.author || ''); 5643 5644 $('.ci-modal__meta').innerHTML = 5645 '<span class="ci-modal__meta-likes">
5645' + ICON.heart + ' ' + (item.likes || 0).toLocaleString() + '</span>' + 5646 '<span>' + escapeHtml(item.prompt_date || '') + '</span>'; 5647 5648 var catBox = $('.ci-modal__categories'); 5649 if (item.categories && item.categories.length) { 5650 catBox.style.display = 'flex'; 5651 catBox.innerHTML = item.categories.map(function (c) { return '<span class="ci-modal__cat-tag">' + escapeHtml(c) + '</span>'; }).join(''); 5652 } else { 5653 catBox.style.display = 'none'; 5654 } 5655 5656 $('.ci-modal__prompt-text').textContent = displayPrompt; 5657 $('.ci-modal__optional-textarea').value = modalOptionalText; 5658 $$('.ci-modal__copy-btn').forEach(function (b) { b.classList.remove('ci-copied'); }); 5659 } 5660 5661 /* ---------- COPY HELPERS ---------- */ 5662 5663 function copyToClipboard(text, btn) { 5664 navigator.clipboard.writeText(text).then(function () { 5665 btn.classList.add('ci-copied'); 5666 var svgEl = btn.querySelector('svg'); 5667 var origSvg = svgEl ? svgEl.outerHTML : ''; 5668 if (svgEl) svgEl.outerHTML = ICON.check; 5669 var origText = btn.querySelector('span'); 5670 var origTextVal = origText ? origText.textContent : ''; 5671 if (origText) origText.textContent = 'Copied!'; 5672 setTimeout(function () { 5673 btn.classList.remove('ci-copied'); 5674 var newSvg = btn.querySelector('svg'); 5675 if (newSvg && origSvg) newSvg.outerHTML = origSvg; 5676 if (origText) origText.textContent = origTextVal; 5677 }, 2000); 5678 }); 5679 } 5680 5681 /* ---------- EVENT DELEGATION ---------- */ 5682 5683 function setupEvents() { 5684 var root = $('.ci-inspire'); 5685 5686 // Search input 5687 $('.ci-filters__search').addEventListener('input', function () { 5688 searchQuery = this.value; 5689 clearTimeout(searchTimer); 5690 searchTimer = setTimeout(function () { 5691 currentPage = 1; 5692 loadCurrentPage(); 5693 }, SEARCH_DEBOUNCE_MS); 5694 }); 5695 5696 // Category pills + Card clicks + Pagination 5697 root.addEventListener('click', function (e) { 5698 var pill = e.target.closest('.ci-filters__pill'); 5699 if (pill) { 5700 activeCategory = pill.dataset.cat; 5701 $$('.ci-filters__pill').forEach(function (p) { p.classList.toggle('ci-active', p.dataset.cat === activeCategory); }); 5702 currentPage = 1; 5703 loadCurrentPage(); 5704 return; 5705 } 5706 5707 // Selection bar actions 5708 var removeBtn = e.target.closest('.ci-selection-bar__remove'); 5709 if (removeBtn) { removeSelected(); return; } 5710 var clearBtn = e.target.closest('.ci-selection-bar__clear'); 5711 if (clearBtn) { clearSelection(); return; } 5712 5713 // Card click 5714 var card = e.target.closest('.ci-card'); 5715 if (card) { 5716 var checkbox = e.target.closest('.ci-card__checkbox'); 5717 if (checkbox) { 5718 e.stopPropagation(); 5719 var id = card.dataset.id; 5720 if (selectedIds.has(id)) { selectedIds.delete(id); } 5721 else { selectedIds.add(id); } 5722 renderCards(); 5723 renderSelectionBar(); 5724 return; 5725 } 5726 5727 var navBtn = e.target.closest('.ci-card__nav-btn'); 5728 var dotBtn = e.target.closest('.ci-card__dot'); 5729 if (navBtn || dotBtn) { 5730 e.stopPropagation(); 5731 var img = card.querySelector('.ci-card__img'); 5732 var cardImages = JSON.parse(img.dataset.images); 5733 var active = parseInt(img.dataset.active, 10); 5734 if (navBtn) { 5735 active = navBtn.dataset.dir === 'prev' ? (active - 1 + cardImages.length) % cardImages.length : (active + 1) % cardImages.length; 5736 } else { 5737 active = parseInt(dotBtn.dataset.dot, 10); 5738 } 5739 img.dataset.active = active; 5740 img.classList.remove('ci-loaded'); 5741 img.classList.add('ci-loading'); 5742 img.src = cardImages[active]; 5743 $$('.ci-card__dot', card).forEach(function (d, i) { d.classList.toggle('ci-active', i === active); }); 5744 return; 5745 } 5746 5747 var idx = parseInt(card.dataset.idx, 10); 5748 if (displayedPrompts[idx]) openModal(displayedPrompts[idx]); 5749 return; 5750 } 5751 5752 // Pagination 5753 var pageBtn = e.target.closest('.ci-pagination__btn'); 5754 if (pageBtn && !pageBtn.disabled) { 5755 var val = pageBtn.dataset.page; 5756 if (val === 'prev') currentPage--; 5757 else if (val === 'next') currentPage++; 5758 else currentPage = parseInt(val, 10); 5759 loadCurrentPage(); 5760 var topRef = $('.ci-grid-section'); 5761 if (topRef) topRef.scrollIntoView({ behavior: 'smooth' });
5762 return; 5763 } 5764 }); 5765 5766 // Modal events 5767 $('.ci-modal-backdrop').addEventListener('click', function (e) { 5768 if (e.target === this || e.target.classList.contains('ci-modal-backdrop__bg')) closeModal(); 5769 }); 5770 $('.ci-modal__close').addEventListener('click', closeModal); 5771 5772 // Admin: Delete prompt from modal 5773 var modalDeleteBtn = $('.ci-modal__delete'); 5774 if (modalDeleteBtn) { 5775 modalDeleteBtn.addEventListener('click', function () { 5776 if (!selectedModalItem || !IS_ADMIN) return; 5777 var dbId = selectedModalItem.db_id; 5778 if (!dbId) return; 5779 if (!confirm('Permanently delete this prompt?')) return; 5780 5781 deletePromptByDbId(dbId) 5782 .then(function () { 5783 closeModal(); 5784 loadCurrentPage(); 5785 }) 5786 .catch(function (err) { 5787 console.error('[Inspire] Failed to delete prompt:', err); 5788 }); 5789 }); 5790 } 5791 5792 // Thumbnails 5793 $('.ci-modal__thumbnails').addEventListener('click', function (e) { 5794 var thumb = e.target.closest('.ci-modal__thumb'); 5795 if (!thumb) return; 5796 modalActiveImg = parseInt(thumb.dataset.thumb, 10); 5797 renderModal(); 5798 }); 5799 5800 // Copy prompt only 5801 var copyPromptBtn = $('#ci-copy-prompt-btn'); 5802 if (copyPromptBtn) { 5803 copyPromptBtn.addEventListener('click', function () { 5804 if (!selectedModalItem) return; 5805 copyToClipboard(parsePrompt(selectedModalItem.prompt), this); 5806 }); 5807 } 5808 5809 // Copy with optional 5810 var copyMainBtn = $('.ci-modal__copy-main'); 5811 if (copyMainBtn) { 5812 copyMainBtn.addEventListener('click', function () { 5813 if (!selectedModalItem) return; 5814 var prompt = parsePrompt(selectedModalItem.prompt); 5815 var opt = $('.ci-modal__optional-textarea').value.trim(); 5816 copyToClipboard(opt ? prompt + '\n\n' + opt : prompt, this); 5817 }); 5818 } 5819 5820 // Optional textarea 5821 var optArea = $('.ci-modal__optional-textarea'); 5822 if (optArea) { 5823 optArea.addEventListener('input', function () { modalOptionalText = this.value; }); 5824 } 5825 5826 // Escape key 5827 document.addEventListener('keydown', function (e) { 5828 if (e.key === 'Escape' && selectedModalItem) closeModal(); 5829 }); 5830 } 5831 5832 /* ---------- COUNT ---------- */ 5833 5834 function updateCount() { 5835 var el = $('.ci-filters__count'); 5836 if (el) el.textContent = totalPrompts.toLocaleString() + ' prompts'; 5837 } 5838 5839 function updateHeroCount() { 5840 var el = $('#ci-hero-prompt-count'); 5841 if (el) el.textContent = totalPrompts.toLocaleString(); 5842 } 5843 5844 /* ---------- INIT ---------- */ 5845 5846 var initRetries = 0; 5847 5848 function init() { 5849 // Retry if Elementor hasn't rendered the HTML yet 5850 var root = document.querySelector('.ci-inspire'); 5851 if (!root) { 5852 if (initRetries < 15) { 5853 initRetries++; 5854 setTimeout(init, 300); 5855 return; 5856 } 5857 console.warn('[Inspire] .ci-inspire element not found after retries'); 5858 return; 5859 } 5860 5861 // Read admin config NOW (after wp_footer has injected CI_INSPIRE_CONFIG) 5862 WP_CONFIG = window.CI_INSPIRE_CONFIG || null; 5863 IS_ADMIN = !!(WP_CONFIG && WP_CONFIG.isAdmin); 5864 5865 // Hero fade-in 5866 setTimeout(function () { 5867 var hero = $('.ci-hero__content'); 5868 if (hero) hero.classList.add('ci-visible'); 5869 }, 100); 5870 5871 // Safety: force hero visible after 2s 5872 setTimeout(function () { 5873 var hero = document.querySelector('.ci-hero__content'); 5874 if (hero && !hero.classList.contains('ci-visible')) { 5875 hero.classList.add('ci-visible'); 5876 } 5877 }, 2000); 5878 5879 // Show skeletons 5880 renderSkeletons(); 5881 5882 // Detect whether WP REST API is available 5883 PROMPTS_ADMIN_BASE = (WP_CONFIG && WP_CONFIG.promptsAdminBase) ? WP_CONFIG.promptsAdminBase : ''; 5884 5885 fetch(WP_PROMPTS_URL + '?per_page=1&page=1') 5886 .then(function (res) { 5887 if (!res.ok) throw new Error('HTTP ' + res.status); 5888 return res.json(); 5889 }) 5890 .then(function (data) { 5891 if (data.total && data.total > 0) { 5892 useServerMode = true; 5893 totalPrompts = data.total; 5894 loadCurrentPage(); 5895 } else { 5896 throw new Error('Empty DB'); 5897 } 5898 }) 5899 .catch(function () { 5900 console.warn('[Inspire] WP REST API empty or unavailable, falling back to README'); 5901 useServerMode = false; 5902 return fetchFromReadme().then(function (prompts) { 5903 fallbackAllPrompts = prompts; 5904 loadCurrentPage(); 5905 updateHeroCount(); 5906 }); 5907 }).catch(function (err) { 5908 console.error('Failed to initialize:', err); 5909 var grid = $('.ci-grid'); 5910 if (grid) grid.innerHTML = '<div class="ci-empty"><div class="ci-empty__icon">◈</div><p class="ci-empty__text">Failed to load prompts. Please try again.</p></div>'; 5911 }); 5912 5913 setupEvents(); 5914 } 5915 5916 // Run on DOM ready 5917 if (document.readyState === 'loading') { 5918 document.addEventListener('DOMContentLoaded', init); 5919 } else { 5920 init(); 5921 } 5922 5923})(); 5924</script>
5924<script>(function () { 5925 // Save fbclid to cookie 5926 var params = new URLSearchParams(window.location.search); 5927 var fbclid = params.get('fbclid'); 5928 if (fbclid) { 5929 var exp = new Date(Date.now() + 90 * 24 * 60 * 60 * 1000).toUTCString(); 5930 document.cookie = '_fbclid=' + fbclid + '; expires=' + exp + '; path=/; SameSite=Lax'; 5931 } 5932 function getSavedFbclid() { 5933 var m = document.cookie.match(/_fbclid=([^;]+)/); 5934 return m ? m[1] : null; 5935 } 5936 5937 // Add fbclid + UTMs to all app domain links 5938 document.querySelectorAll('a[href*="app.cinemagicmaker.ai"]').forEach(function (a) { 5939 a.addEventListener('click', function () { 5940 try { 5941 var u = new URL(a.href); 5942 var saved = getSavedFbclid(); 5943 if (saved) u.searchParams.set('fbclid', saved); 5944 ['utm_source','utm_medium','utm_campaign','utm_content','utm_term'].forEach(function (k) { 5945 var v = params.get(k); 5946 if (v) u.searchParams.set(k, v); 5947 }); 5948 a.href = u.toString(); 5949 } catch(e) {} 5950 }); 5951 }); 5952 5953 // Section tracking using YOUR exact IDs 5954 var sectionFired = {}; 5955 var sections = [ 5956 { id: 'TheStars', name: 'Hero' }, 5957 { id: 'unique_capabilities', name: 'Unique Capabilities' }, 5958 { id: 'control', name: 'Control' }, 5959 { id: 'enhance', name: 'Enhance' }, 5960 { id: 'our_story', name: 'Our Story' }, 5961 { id: 'Pricing', name: 'Pricing' } 5962 ]; 5963 5964 if (window.IntersectionObserver) { 5965 var observer = new IntersectionObserver(function (entries) { 5966 entries.forEach(function (entry) { 5967 if (!entry.isIntersecting) return; 5968 var id = entry.target.id; 5969 if (sectionFired[id]) return; 5970 sectionFired[id] = true; 5971 if (typeof fbq === 'undefined') return; 5972 fbq('track', 'ViewContent', { 5973 content_name: entry.target.getAttribute('data-pixel-name'), 5974 content_category: 'Website Section', 5975 event_id: 'vc_' + id + '_' + Date.now() 5976 }); 5977 }); 5978 }, { threshold: 0.4 }); 5979 5980 sections.forEach(function (s) { 5981 var el = document.getElementById(s.id); 5982 if (!el) return; 5983 el.setAttribute('data-pixel-name', s.name); 5984 observer.observe(el); 5985 }); 5986 } 5987 5988 // CTA click tracking 5989 document.addEventListener('click', function (e) { 5990 var el = e.target.closest('a, button'); 5991 if (!el || typeof fbq === 'undefined') return; 5992 var text = (el.innerText || '').trim().toLowerCase(); 5993 var href = el.href || ''; 5994 5995 // Get Started / Try Now = Lead 5996 if (text === 'get started for free' || text === 'get started' || text === 'try now') { 5997 fbq('track', 'Lead', { 5998 content_name: el.innerText.trim(), 5999 content_category: 'Hero CTA', 6000 event_id: 'lead_cta_' + Date.now() 6001 }); 6002 } 6003 6004 // Select Plan = InitiateCheckout 6005 if (text.includes('select plan') || text.includes('choose plan')) { 6006 fbq('track', 'InitiateCheckout', { 6007 content_name: 'Subscription Plan', 6008 value: 245, 6009 currency: 'USD', 6010 event_id: 'checkout_' + Date.now() 6011 }); 6012 } 6013 6014 // Any link to app domain = Lead 6015 if (href.includes('app.cinemagicmaker.ai')) { 6016 fbq('track', 'Lead', { 6017 content_name: el.innerText.trim() || 'App Link', 6018 content_category: 'App Redirect', 6019 event_id: 'lead_app_' + Date.now() 6020 }); 6021 } 6022 }); 6023})();</script>
6023<noscript><img height="1" width="1" style="display: none;" src="https://www.facebook.com/tr?id=1232037961864482&ev=PageView&noscript=1&cd%5Bpage_title%5D=Home&cd%5Bpost_type%5D=page&cd%5Bpost_id%5D=8826&cd%5Bplugin%5D=PixelYourSite&cd%5Buser_role%5D=guest&cd%5Bevent_url%5D=cinemagicmaker.ai%2F" alt=""></noscript> 6024<link rel='stylesheet' id='elementor-post-8999-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-8999.css?ver=1790995028' media='all' /> 6025<link rel='stylesheet' id='e-sticky-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/modules/sticky.min.css?ver=4.2.2' media='all' /> 6026<link rel='stylesheet' id='elementor-post-9406-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9406.css?ver=1790995028' media='all' /> 6027<link rel='stylesheet' id='widget-menu-anchor-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/widget-menu-anchor.min.css?ver=4.1.4' media='all' /> 6028<link rel='stylesheet' id='elementor-post-7510-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-7510.css?ver=1790995028' media='all' /> 6029<link rel='stylesheet' id='widget-spacer-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/widget-spacer.min.css?ver=4.1.4' media='all' /> 6030<link rel='stylesheet' id='elementor-post-9693-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9693.css?ver=1790995028' media='all' /> 6031<link rel='stylesheet' id='elementor-post-9512-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9512.css?ver=1790995028' media='all' /> 6032<link rel='stylesheet' id='elementor-post-9795-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9795.css?ver=1790995028' media='all' /> 6033<link rel='stylesheet' id='elementor-post-9009-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9009.css?ver=1790995028' media='all' /> 6034<link rel='stylesheet' id='swiper-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/swiper/v8/css/swiper.min.css?ver=8.4.5' media='all' /> 6035<link rel='stylesheet' id='e-swiper-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/conditionals/e-swiper.min.css?ver=4.1.4' media='all' /> 6036<link rel='stylesheet' id='widget-gallery-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/widget-gallery.min.css?ver=4.2.2' media='all' /> 6037<link rel='stylesheet' id='elementor-gallery-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/e-gallery/css/e-gallery.min.css?ver=1.2.0' media='all' /> 6038<link rel='stylesheet' id='e-transitions-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/conditionals/transitions.min.css?ver=4.2.2' media='all' /> 6039<link rel='stylesheet' id='elementor-post-9999-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-9999.css?ver=1790995028' media='all' /> 6040<link rel='stylesheet' id='elementor-post-12278-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-12278.css?ver=1790995028' media='all' /> 6041<link rel='stylesheet' id='elementor-post-12957-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-12957.css?ver=1790995028' media='all' /> 6042<link rel='stylesheet' id='widget-icon-list-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/css/widget-icon-list.min.css?ver=4.1.4' media='all' /> 6043<link rel='stylesheet' id='elementor-post-11523-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-11523.css?ver=1790995028' media='all' /> 6044<link rel='stylesheet' id='elementor-post-12566-css' href='https://cinemagicmaker.ai/wp-content/uploads/elementor/css/post-12566.css?ver=1790995028' media='all' /> 6045<link rel='stylesheet' id='widget-posts-css' href='https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/css/widget-posts.min.css?ver=4.2.2' media='all' />
6046<script id="astra-theme-js-js-extra"> 6047var astra = {"break_point":"768","isRtl":"","is_scroll_to_id":"","is_scroll_to_top":"1","is_header_footer_builder_active":"1","responsive_cart_click":"flyout","is_dark_palette":""}; 6048</script>
vendor: 1 bytes, line 6048
6048
6049<script src="https://cinemagicmaker.ai/wp-content/themes/astra/assets/js/minified/frontend.min.js?ver=4.14.0" id="astra-theme-js-js"></script>
vendor: 1 bytes, line 6049
6049
6050<script src="https://cdn-reach.hostinger.com/js/embed.js" id="hostinger-reach-embed-js" defer data-wp-strategy="defer"></script>
vendor: 1 bytes, line 6050
6050
6051<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets//lib/instant-page/instant-page.min.js?ver=4.2.2" id="instant-page-js"></script>
vendor: 1 bytes, line 6051
6051
6052<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/js/webpack.runtime.min.js?ver=4.1.4" id="elementor-webpack-runtime-js"></script>
vendor: 1 bytes, line 6052
6052
6053<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/js/frontend-modules.min.js?ver=4.1.4" id="elementor-frontend-modules-js"></script>
vendor: 1 bytes, line 6053
6053
6054<script src="https://cinemagicmaker.ai/wp-includes/js/jquery/ui/core.min.js?ver=1.13.3" id="jquery-ui-core-js"></script>
vendor: 1 bytes, line 6054
6054
6055<script id="elementor-frontend-js-extra"> 6056var EAELImageMaskingConfig = {"svg_dir_url":"https:\/\/cinemagicmaker.ai\/wp-content\/plugins\/essential-addons-for-elementor-lite\/assets\/front-end\/img\/image-masking\/svg-shapes\/"}; 6057</script>
vendor: 1 bytes, line 6057
6057
6058<script id="elementor-frontend-js-before"> 6059var elementorFrontendConfig = {"environmentMode":{"edit":false,"wpPreview":false,"isScriptDebug":false},"i18n":{"shareOnFacebook":"Share on Facebook","shareOnTwitter":"Share on Twitter","pinIt":"Pin it","download":"Download","downloadImage":"Download image","fullscreen":"Fullscreen","zoom":"Zoom","share":"Share","playVideo":"Play Video","previous":"Previous","next":"Next","close":"Close","a11yCarouselPrevSlideMessage":"Previous slide","a11yCarouselNextSlideMessage":"Next slide","a11yCarouselFirstSlideMessage":"This is the first slide","a11yCarouselLastSlideMessage":"This is the last slide","a11yCarouselPaginationBulletMessage":"Go to slide"},"is_rtl":false,"breakpoints":{"xs":0,"sm":480,"md":768,"lg":1025,"xl":1440,"xxl":1600},"responsive":{"breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}},"hasCustomBreakpoints":false},"version":"4.1.4","is_static":false,"experimentalFeatures":{"e_font_icon_svg":true,"additional_custom_breakpoints":true,"container":true,"e_panel_promotions":true,"theme_builder_v2":true,"nested-elements":true,"global_classes_should_enforce_capabilities":true,"e_variables":true,"e_opt_in_v4_page":true,"e_components":true,"e_interactions":true,"e_widget_creation":true,"import-export-customization":true,"e_pro_atomic_form":true,"e_pro_collection_loop":true,"mega-menu":true,"e_pro_variables":true,"e_pro_interactions":true},"urls":{"assets":"https:\/\/cinemagicmaker.ai\/wp-content\/plugins\/elementor\/assets\/","ajaxurl":"https:\/\/cinemagicmaker.ai\/wp-admin\/admin-ajax.php","uploadUrl":"https:\/\/cinemagicmaker.ai\/wp-content\/uploads"},"nonces":{"floatingButtonsClickTracking":"11fd822ea6","atomicFormsSendForm":"f97fdebd56"},"swiperClass":"swiper","settings":{"page":[],"editorPreferences":[]},"kit":{"body_background_background":"classic","active_breakpoints":["viewport_mobile","viewport_tablet"],"global_image_lightbox":"yes","lightbox_enable_counter":"yes","lightbox_enable_fullscreen":"yes","lightbox_enable_zoom":"yes","lightbox_enable_share":"yes","lightbox_title_src":"title","lightbox_description_src":"description"},"post":{"id":8826,"title":"Home%20-%20Magic%20Maker%20Ai","excerpt":"","featuredImage":false}}; 6060</script>
vendor: 1 bytes, line 6060
6060
6061<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/js/frontend.min.js?ver=4.1.4" id="elementor-frontend-js"></script>
vendor: 1 bytes, line 6061
6061
6062<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/lib/smartmenus/jquery.smartmenus.min.js?ver=1.2.1" id="smartmenus-js"></script>
vendor: 1 bytes, line 6062
6062
6063<script defer src="https://cinemagicmaker.ai/wp-content/plugins/pixelyoursite/dist/scripts/jquery.bind-first-0.2.3.min.js?ver=0.2.3" id="jquery-bind-first-js"></script>
vendor: 1 bytes, line 6063
6063
6064<script defer src="https://cinemagicmaker.ai/wp-content/plugins/pixelyoursite/dist/scripts/js.cookie-2.1.3.min.js?ver=2.1.3" id="js-cookie-pys-js"></script>
vendor: 1 bytes, line 6064
6064
6065<script defer src="https://cinemagicmaker.ai/wp-content/plugins/pixelyoursite/dist/scripts/sha256.js?ver=0.11.0" id="js-sha256-js"></script>
vendor: 1 bytes, line 6065
6065
6066<script id="pys-js-extra"> 6067var pysOptions = {"staticEvents":{"facebook":{"init_event":[{"delay":0,"type":"static","ajaxFire":false,"name":"PageView","pixelIds":["1232037961864482"],"eventID":"53a92f4a-93ee-461e-a26f-b1de0514a541","params":{"page_title":"Home","post_type":"page","post_id":8826,"plugin":"PixelYourSite","user_role":"guest","event_url":"cinemagicmaker.ai\/"},"e_id":"init_event","ids":[],"hasTimeWindow":false,"timeWindow":0,"woo_order":"","edd_order":"","order_key":""}]}},"dynamicEvents":[],"triggerEvents":[],"triggerEventTypes":[],"facebook":{"pixelIds":["1232037961864482"],"advancedMatching":{"external_id":"abbbdabaebcbcfdacdbeaedcbfd"},"advancedMatchingEnabled":true,"removeMetadata":true,"wooVariableAsSimple":false,"serverApiEnabled":true,"metaEnabledCapiPixels":["1232037961864482"],"sendEventId":true,"send_external_id":null,"enabled_medical":false,"do_not_track_medical_param":["event_url","post_title","page_title","landing_page","content_name","categories","category_name","tags"],"meta_ldu":false},"debug":"","siteUrl":"https:\/\/cinemagicmaker.ai","ajaxUrl":"https:\/\/cinemagicmaker.ai\/wp-admin\/admin-ajax.php","ajax_event":"7db6e7f930","enable_remove_download_url_param":"1","cookie_duration":"7","last_visit_duration":"60","enable_success_send_form":"","ajaxForServerEvent":"1","ajaxForServerStaticEvent":"1","useSendBeacon":"1","send_external_id":"1","external_id_expire":"180","track_cookie_for_subdomains":"1","google_consent_mode":"1","consent_mode_cmp_active":"","data_persistency":"recent_data","gdpr":{"ajax_enabled":false,"all_disabled_by_api":false,"facebook_disabled_by_api":false,"analytics_disabled_by_api":false,"google_ads_disabled_by_api":false,"pinterest_disabled_by_api":false,"bing_disabled_by_api":false,"reddit_disabled_by_api":false,"openai_disabled_by_api":false,"externalID_disabled_by_api":false,"facebook_prior_consent_enabled":true,"analytics_prior_consent_enabled":true,"google_ads_prior_consent_enabled":null,"pinterest_prior_consent_enabled":true,"bing_prior_consent_enabled":true,"openai_prior_consent_enabled":true,"cookiebot_integration_enabled":false,"cookiebot_facebook_consent_category":"marketing","cookiebot_analytics_consent_category":"statistics","cookiebot_tiktok_consent_category":"marketing","cookiebot_google_ads_consent_category":"marketing","cookiebot_pinterest_consent_category":"marketing","cookiebot_bing_consent_category":"marketing","cookiebot_openai_consent_category":"marketing","consent_magic_integration_enabled":false,"real_cookie_banner_integration_enabled":false,"cookie_notice_integration_enabled":false,"cookie_law_info_integration_enabled":false,"analytics_storage":{"enabled":true,"value":"granted","filter":false},"ad_storage":{"enabled":true,"value":"granted","filter":false},"ad_user_data":{"enabled":true,"value":"granted","filter":false},"ad_personalization":{"enabled":true,"value":"granted","filter":false}},"cookie":{"disabled_all_cookie":false,"disabled_start_session_cookie":false,"disabled_advanced_form_data_cookie":false,"disabled_landing_page_cookie":false,"disabled_first_visit_cookie":false,"disabled_trafficsource_cookie":false,"disabled_utmTerms_cookie":false,"disabled_utmId_cookie":false},"tracking_analytics":{"TrafficLanding":"","TrafficUtms":[],"TrafficUtmsId":[]},"GATags":{"ga_datalayer_type":"default","ga_datalayer_name":"dataLayerPYS"},"woo":{"enabled":false},"edd":{"enabled":false},"cache_bypass":"1791202893"}; 6068</script>
vendor: 1 bytes, line 6068
6068
6069<script defer src="https://cinemagicmaker.ai/wp-content/plugins/pixelyoursite/dist/scripts/public.js?ver=11.4.2" id="pys-js"></script>
vendor: 1 bytes, line 6069
6069
6070<script id="googlesitekit-events-provider-content-events-js-before"> 6071window._googlesitekit = window._googlesitekit || {}; 6072window._googlesitekit.contentEvents = {"postID":8826,"isSinglePost":false,"hasVimeoEmbed":false}; 6073</script>
vendor: 1 bytes, line 6073
6073
6074<script src="https://cinemagicmaker.ai/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-events-provider-content-events-bb83c1a0aedefa5d25d1.js" id="googlesitekit-events-provider-content-events-js" defer></script>
vendor: 1 bytes, line 6074
6074
6075<script id="eael-general-js-extra"> 6076var localize = {"ajaxurl":"https:\/\/cinemagicmaker.ai\/wp-admin\/admin-ajax.php","nonce":"073318cde3","i18n":{"added":"Added ","compare":"Compare","loading":"Loading..."},"eael_translate_text":{"required_text":"is a required field","invalid_text":"Invalid","billing_text":"Billing","shipping_text":"Shipping","fg_mfp_counter_text":"of"},"page_permalink":"https:\/\/cinemagicmaker.ai\/","cart_redirectition":"no","cart_page_url":"","el_breakpoints":{"mobile":{"label":"Mobile Portrait","value":767,"default_value":767,"direction":"max","is_enabled":true},"mobile_extra":{"label":"Mobile Landscape","value":880,"default_value":880,"direction":"max","is_enabled":false},"tablet":{"label":"Tablet Portrait","value":1024,"default_value":1024,"direction":"max","is_enabled":true},"tablet_extra":{"label":"Tablet Landscape","value":1200,"default_value":1200,"direction":"max","is_enabled":false},"laptop":{"label":"Laptop","value":1366,"default_value":1366,"direction":"max","is_enabled":false},"widescreen":{"label":"Widescreen","value":2400,"default_value":2400,"direction":"min","is_enabled":false}}}; 6077</script>
vendor: 1 bytes, line 6077
6077
6078<script src="https://cinemagicmaker.ai/wp-content/plugins/essential-addons-for-elementor-lite/assets/front-end/js/view/general.min.js?ver=6.8.5" id="eael-general-js"></script>
vendor: 1 bytes, line 6078
6078
6079<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/lib/sticky/jquery.sticky.min.js?ver=4.2.2" id="e-sticky-js"></script>
vendor: 1 bytes, line 6079
6079
6080<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/swiper/v8/swiper.min.js?ver=8.4.5" id="swiper-js"></script>
vendor: 1 bytes, line 6080
6080
6081<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor/assets/lib/e-gallery/js/e-gallery.min.js?ver=1.2.0" id="elementor-gallery-js"></script>
vendor: 1 bytes, line 6081
6081
6082<script src="https://cinemagicmaker.ai/wp-includes/js/imagesloaded.min.js?ver=5.0.0" id="imagesloaded-js"></script>
vendor: 1 bytes, line 6082
6082
6083<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/js/webpack-pro.runtime.min.js?ver=4.2.2" id="elementor-pro-webpack-runtime-js"></script>
vendor: 1 bytes, line 6083
6083
6084<script src="https://cinemagicmaker.ai/wp-includes/js/dist/hooks.min.js?ver=4d63a3d491d11ffd8ac6" id="wp-hooks-js"></script>
vendor: 1 bytes, line 6084
6084
6085<script src="https://cinemagicmaker.ai/wp-includes/js/dist/i18n.min.js?ver=5e580eb46a90c2b997e6" id="wp-i18n-js"></script>
vendor: 1 bytes, line 6085
6085
6086<script id="wp-i18n-js-after"> 6087wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); 6088</script>
vendor: 1 bytes, line 6088
6088
6089<script id="elementor-pro-frontend-js-before"> 6090var ElementorProFrontendConfig = {"ajaxurl":"https:\/\/cinemagicmaker.ai\/wp-admin\/admin-ajax.php","nonce":"a78306473b","urls":{"assets":"https:\/\/cinemagicmaker.ai\/wp-content\/plugins\/elementor-pro\/assets\/","rest":"https:\/\/cinemagicmaker.ai\/wp-json\/"},"settings":{"lazy_load_background_images":true},"popup":{"hasPopUps":true},"shareButtonsNetworks":{"facebook":{"title":"Facebook","has_counter":true},"twitter":{"title":"Twitter"},"linkedin":{"title":"LinkedIn","has_counter":true},"pinterest":{"title":"Pinterest","has_counter":true},"reddit":{"title":"Reddit","has_counter":true},"vk":{"title":"VK","has_counter":true},"odnoklassniki":{"title":"OK","has_counter":true},"tumblr":{"title":"Tumblr"},"digg":{"title":"Digg"},"skype":{"title":"Skype"},"stumbleupon":{"title":"StumbleUpon","has_counter":true},"mix":{"title":"Mix"},"telegram":{"title":"Telegram"},"pocket":{"title":"Pocket","has_counter":true},"xing":{"title":"XING","has_counter":true},"whatsapp":{"title":"WhatsApp"},"email":{"title":"Email"},"print":{"title":"Print"},"x-twitter":{"title":"X"},"threads":{"title":"Threads"}},"facebook_sdk":{"lang":"en_US","app_id":""},"lottie":{"defaultAnimationUrl":"https:\/\/cinemagicmaker.ai\/wp-content\/plugins\/elementor-pro\/modules\/lottie\/assets\/animations\/default.json"}}; 6091</script>
vendor: 1 bytes, line 6091
6091
6092<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/js/frontend.min.js?ver=4.2.2" id="elementor-pro-frontend-js"></script>
vendor: 1 bytes, line 6092
6092
6093<script src="https://cinemagicmaker.ai/wp-content/plugins/elementor-pro/assets/js/elements-handlers.min.js?ver=4.2.2" id="pro-elements-handlers-js"></script>
6093 6094
6094<script> 6095 /(trident|msie)/i.test(navigator.userAgent)&&document.getElementById&&window.addEventListener&&window.addEventListener("hashchange",function(){var t,e=location.hash.substring(1);/^[A-z0-9_-]+$/.test(e)&&(t=document.getElementById(e))&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())},!1); 6096 </script>
6096 6097 6098
6099<script> 6100 6101 6102 document.addEventListener("DOMContentLoaded", function () { 6103 if (!window.gsap || !window.ScrollTrigger) return; 6104 gsap.registerPlugin(ScrollTrigger); 6105 if (window.SplitText) gsap.registerPlugin(SplitText); 6106 6107 // âââ VIDEO SCROLL ââââââââââââââââââââââââââ 6108 const video = document.querySelector(".elementor-video"); 6109 const container = document.querySelector("#container"); 6110 let videoST = null; // trzymamy referencjÄ do swojego triggera 6111 6112 function initVideoTimeline() { 6113 if (!video || !container) return; 6114 if (!video.duration || isNaN(video.duration)) return; 6115 6116 video.currentTime = 0; 6117 6118 // zabij TYLKO swój poprzedni trigger/timeline 6119 if (videoST) { videoST.kill(); videoST = null; } 6120 6121 const tl = gsap.timeline({ 6122 scrollTrigger: { 6123 trigger: container, 6124 start: "top top", 6125 end: "bottom bottom", 6126 scrub: true, 6127 markers: false, 6128 invalidateOnRefresh: true 6129 } 6130 }).to(video, { currentTime: video.duration, ease: "none" }); 6131 6132 videoST = tl.scrollTrigger; 6133 } 6134 6135 if (video && container) { 6136 // iOS unlock (raz) 6137 document.documentElement.addEventListener("touchstart", function unlock() { 6138 video.play().then(() => video.pause()).catch(()=>{}); 6139 document.documentElement.removeEventListener("touchstart", unlock); 6140 }); 6141 6142 video.addEventListener("loadedmetadata", () => { if (video.duration > 0) initVideoTimeline(); }); 6143 setTimeout(() => { if (video.duration > 0) initVideoTimeline(); }, 1500); 6144 6145 video.preload = "auto"; 6146 video.load(); 6147 } 6148 6149 6150 // âââ TEXT SHOWUP (SplitText) ââââââââââââââ 6151 const splitMap = new WeakMap(); // el -> {split, tl} 6152 6153 function buildSplits() { 6154 document.querySelectorAll(".titleHMA").forEach(title => { 6155 // jeÅli już jest zbudowane â pomiÅ 6156 if (splitMap.has(title)) return; 6157 6158 // zrób SplitText (jeÅli plugin dostÄpny), inaczej fallback bez splitu 6159 let split = null, targets = [title]; 6160 if (window.SplitText) { 6161 split = new SplitText(title, { type: "words,chars" }); 6162 targets = split.chars; 6163 } 6164 6165 const tl = gsap.from(targets, { 6166 duration: 0.9, 6167 opacity: 0, 6168 y: 10, 6169 ease: "circ.out", 6170 stagger: 0.05, 6171 scrollTrigger: { 6172 trigger: title, 6173 start: "top 90%", 6174 end: "bottom 75%", 6175 scrub: 1 6176 } 6177 }); 6178 6179 splitMap.set(title, { split, tl }); 6180 }); 6181 } 6182 6183 6184 function rebuildSplits() { 6185 // revert + kill tylko swoich instancji 6186 splitMap.forEach(({ split, tl }, el) => { 6187 if (tl) tl.kill(); 6188 if (split && split.revert) split.revert(); 6189 splitMap.delete(el); 6190 }); 6191 buildSplits(); 6192 } 6193 6194 // Pierwsze zbudowanie 6195 buildSplits(); 6196 6197 6198 6199 // Rebuild na wiÄksze zmiany layoutu â NIE na każdy ScrollTrigger.refresh 6200 let rAF, lastW = window.innerWidth, lastH = window.innerHeight; 6201 window.addEventListener("resize", () => { 6202 cancelAnimationFrame(rAF); 6203 rAF = requestAnimationFrame(() => { 6204 // tylko jeÅli rzeczywiÅcie zmieniÅ siÄ wymiar (czasem mobile odpalajÄ "resize" przy scrollu) 6205 if (Math.abs(window.innerWidth - lastW) > 10 || Math.abs(window.innerHeight - lastH) > 10) { 6206 lastW = window.innerWidth; lastH = window.innerHeight; 6207 rebuildSplits(); 6208 } 6209 }); 6210 }); 6211 6212 6213 6214 6215 // Po zaÅadowaniu fontów przebuduj â to bezpieczne dla metryk tekstu 6216 const fontsReady = document.fonts?.ready ?? Promise.resolve(); 6217 fontsReady.then(() => rebuildSplits()); 6218}); 6219 6220 6221 6222</script>
6222 6223<style> 6224 /* ====== KONTENER ====== */ 6225 #clip0{ 6226 position: relative; 6227 overflow: hidden; 6228 --cut: 50%; 6229 contain: layout paint style; 6230 background: #000; 6231 min-height: 50vmin; /* ważne: musi mieÄ wysokoÅÄ! */ 6232 } 6233 6234 @media only screen and (max-width: 1024px) { 6235 #clip0 { 6236 min-height: 70vmin; /* ważne: musi mieÄ wysokoÅÄ! */ 6237 } 6238} 6239 6240 /* dwie warstwy â jedna na drugiej (auto-create w JS) */ 6241 #clip1, #clip2{ 6242 position: absolute; inset: 0; 6243 z-index: 0; 6244 pointer-events: none; 6245 will-change: clip-path; 6246 transform: translateZ(0); 6247 } 6248 6249 /* lewa maskowana do var(--cut) */ 6250 #clip1{ clip-path: inset(0 calc(100% - var(--cut)) 0 0); } 6251 6252 /* tÅo z <video> (cover) */ 6253 .vid-bg{ position:absolute; inset:0; overflow:hidden; background:#000; } 6254 .vid-bg video{ 6255 position:absolute; inset:0; 6256 width:100%; height:100%; 6257 object-fit:cover; 6258 /* dla iOS */ 6259 -webkit-user-select:none; user-select:none; 6260 } 6261 6262 /* pionowa linia podziaÅu */ 6263 #clip0::after{ 6264 content:""; 6265 position:absolute; top:0; bottom:0; left:var(--cut); 6266 transform: translateX(-0.5px); 6267 width:1px; 6268 background: rgba(255,255,255,0.5); 6269 z-index:6; pointer-events:none; 6270 } 6271 6272 /* âkóÅkoâ na Årodku (u Ciebie byÅ kwadrat 10px) */ 6273 #clip0::before{ 6274 content:""; 6275 position:absolute; 6276 left:var(--cut); 6277 top:80%; 6278 transform: translate(-50%,-50%); 6279 width:60px; height:60px; 6280 border-radius:50%; 6281 border:1px solid #ffffff55; 6282 background: rgba(0,0,0,0.3); 6283 background-image:url(https://cinemagicmaker.ai/wp-content/uploads/2025/10/arrows-light.png); 6284 background-size:cover; background-position:center; 6285 z-index:7; pointer-events:none; 6286 mix-blend-mode:luminosity; 6287 backdrop-filter: blur(10px); 6288 } 6289</style> 6290
6291<script> 6292(() => { 6293 const root = document.getElementById('clip0'); 6294 if (!root) return; 6295 6296 /* ---------- PARAMS ---------- */ 6297 const getAttr = (n, fb) => root.getAttribute(n) || fb; 6298 const src1 = getAttr('data-video1', '/media/video-left.mp4'); 6299 const src2 = getAttr('data-video2', '/media/video-right.mp4'); 6300 const returnMs = +getAttr('data-return-ms', '400'); 6301 const EPS = 0.0025; 6302 6303 /* ---------- DOM SETUP (auto-create jak w Twoim oryginale) ---------- */ 6304 if (!root.querySelector('#clip1') || !root.querySelector('#clip2')) { 6305 const left = document.createElement('div'); 6306 left.id = 'clip1'; 6307 left.innerHTML = ` 6308 <div class="vid-bg"> 6309 <video muted playsinline loop preload="auto"></video> 6310 </div>`; 6311 const right = document.createElement('div'); 6312 right.id = 'clip2'; 6313 right.innerHTML = ` 6314 <div class="vid-bg"> 6315 <video muted playsinline loop preload="auto"></video> 6316 </div>`; 6317 root.appendChild(right); // spód 6318 root.appendChild(left); // wierzch (maskowany) 6319 } 6320 6321 const vLeft = root.querySelector('#clip1 video'); 6322 const vRight = root.querySelector('#clip2 video'); 6323 6324 // Ustaw źródÅa 6325 vLeft.src = src1; 6326 vRight.src = src2; 6327 6328 // WymuÅ autoplay (mobile: muted + playsinline + gesture fallback) 6329 function tryPlay(v) { 6330 v.autoplay = true; 6331 return v.play().catch(() => { 6332 const kick = () => { v.play().finally(() => { 6333 root.removeEventListener('pointerdown', kick, {capture:true}); 6334 }); }; 6335 root.addEventListener('pointerdown', kick, {capture:true, once:true}); 6336 }); 6337 } 6338 Promise.allSettled([tryPlay(vLeft), tryPlay(vRight)]); 6339 6340 // MiÄkka synchronizacja co 2s (redukcja dryfu) 6341 function softSync() { 6342 if (!isFinite(vLeft.currentTime) || !isFinite(vRight.currentTime)) return; 6343 const dt = vLeft.currentTime - vRight.currentTime; 6344 if (Math.abs(dt) > 0.1) { 6345 const slow = dt > 0 ? vLeft : vRight; 6346 slow.playbackRate = 1.05; 6347 setTimeout(() => { slow.playbackRate = 1.0; }, 250); 6348 } 6349 } 6350 const syncTimer = setInterval(softSync, 2000); 6351 6352 // Pauza kiedy zakÅadka niewidoczna 6353 document.addEventListener('visibilitychange', () => { 6354 if (document.hidden) { vLeft.pause(); vRight.pause(); } 6355 else { tryPlay(vLeft); tryPlay(vRight); } 6356 }); 6357 6358 /* ---------- STATE + RENDER ---------- */ 6359 let rect = root.getBoundingClientRect(); 6360 let cut = 0.5, raf = null, animRAF = null, inside = false; 6361 6362 const clamp01 = v => Math.max(0, Math.min(1, v)); 6363 const withEps = v => Math.max(EPS, Math.min(1 - EPS, v)); 6364 6365 function scheduleCutUpdate(){ 6366 if (raf) return; 6367 raf = requestAnimationFrame(() => { 6368 raf = null; 6369 root.style.setProperty('--cut', (cut * 100).toFixed(3) + '%'); 6370 }); 6371 } 6372 6373 function setFromX(clientX){
6374 const nx = (clientX - rect.left) / Math.max(1, rect.width); 6375 const next = withEps(clamp01(nx)); 6376 if (Math.abs(next - cut) > 0.0005) { cut = next; scheduleCutUpdate(); } 6377 } 6378 6379 function onPointerMove(e){ 6380 if (!inside) return; 6381 const last = e.getCoalescedEvents ? (e.getCoalescedEvents().pop() || e) : e; 6382 setFromX(last.clientX); 6383 } 6384 6385 root.addEventListener('pointerenter', e => { inside = true; cancelReturn(); setFromX(e.clientX); }, {passive:true}); 6386 root.addEventListener('pointermove', onPointerMove, {passive:true}); 6387 root.addEventListener('pointerdown', e => { inside = true; cancelReturn(); setFromX(e.clientX); }, {passive:true}); 6388 root.addEventListener('pointerleave', () => { inside = false; animateTo(0.5, returnMs); }, {passive:true}); 6389 6390 const easeOutCubic = t => 1 - Math.pow(1 - t, 3); 6391 function cancelReturn(){ if (animRAF) { cancelAnimationFrame(animRAF); animRAF = null; } } 6392 function animateTo(target, dur){ 6393 cancelReturn(); 6394 target = withEps(clamp01(target)); 6395 const start = cut, delta = target - start, t0 = performance.now(); 6396 const step = (now) => { 6397 const t = Math.min(1, (now - t0) / Math.max(0, dur|0)); 6398 cut = start + delta * easeOutCubic(t); 6399 scheduleCutUpdate(); 6400 if (t < 1) animRAF = requestAnimationFrame(step); else animRAF = null; 6401 }; 6402 animRAF = requestAnimationFrame(step); 6403 } 6404 6405 // aktualizacja rect 6406 const onRectChange = () => { rect = root.getBoundingClientRect(); scheduleCutUpdate(); }; 6407 const ro = new ResizeObserver(onRectChange); ro.observe(root); 6408 let scrollRAF = null; 6409 const onScroll = () => { if (!scrollRAF){ scrollRAF = requestAnimationFrame(() => { scrollRAF=null; onRectChange(); }); } }; 6410 window.addEventListener('scroll', onScroll, {passive:true, capture:true}); 6411 window.addEventListener('resize', onRectChange, {passive:true}); 6412 window.addEventListener('orientationchange', onRectChange, {passive:true}); 6413 6414 // init 6415 scheduleCutUpdate(); 6416})(); 6417</script>
6417 6418 6419
6420<script> 6421 const text = document.querySelector("#myTextBlowsUp"); 6422 const chars = text.textContent.split(""); 6423 text.innerHTML = ""; // wyczyÅÄ i stwórz span dla każdej litery 6424 6425 chars.forEach((char) => { 6426 const span = document.createElement("span"); 6427 span.textContent = char; 6428 text.appendChild(span); 6429 }); 6430 6431 const letters = text.querySelectorAll("span"); 6432 6433 text.addEventListener("mouseenter", () => { 6434 letters.forEach((letter) => { 6435 const randomX = gsap.utils.random(-200, 200); 6436 const randomY = gsap.utils.random(-150, 150); 6437 const randomScale = gsap.utils.random(1.5, 3); 6438 const randomRot = gsap.utils.random(-45, 45); 6439 gsap.to(letter, { 6440 x: randomX, 6441 y: randomY, 6442 scale: randomScale, 6443 rotation: randomRot, 6444 duration: 0.8, 6445 ease: "expo.out", 6446 stagger: 0.02 6447 }); 6448 }); 6449 }); 6450 6451 text.addEventListener("mouseleave", () => { 6452 gsap.to(letters, { 6453 x: 0, 6454 y: 0, 6455 scale: 1, 6456 rotation: 0, 6457 duration: 0.8, 6458 ease: "expo.inOut", 6459 stagger: 0.02 6460 }); 6461 }); 6462</script>
6462 6463 6464<style> 6465 6466 .e-gallery-item { 6467 left: 0px!important; 6468 } 6469 6470 6471/* âââââ SCOPE / BAZA âââââ */ 6472.e-gallery-container.inflate-hover{ overflow: visible; } 6473 6474/* Kafle: pÅynne przejÅcia, akceleracja */ 6475.e-gallery-container.inflate-hover .e-gallery-item{ 6476 position: relative; /* potrzebne dla absolute children */ 6477 isolation: isolate; /* wÅasny stacking context */ 6478 transform: translateZ(0) scale(1); 6479 transition: transform 260ms ease, filter 260ms ease, box-shadow 260ms ease, opacity 200ms ease; 6480 transform-origin: center center; 6481 backface-visibility: hidden; 6482 will-change: transform, filter; 6483} 6484 6485/* Desktop hover */ 6486@media (hover:hover) and (pointer:fine){ 6487 .e-gallery-container.inflate-hover.has-hover .e-gallery-item:not(.is-hovered){ 6488 transform: translateZ(0) scale(var(--dim-scale, .92)); 6489 /* lżejszy blur dla wydajnoÅci â możesz podmieniÄ var(--dim-blur) */ 6490 filter: saturate(.95) brightness(.98) blur(var(--dim-blur, 10px)); 6491 } 6492 .e-gallery-container.inflate-hover .e-gallery-item.is-hovered{ 6493 transform: translateZ(0) scale(var(--hover-scale, 1.3)); 6494 z-index: 9; 6495 box-shadow: 0 10px 30px rgba(0,0,0,.25); 6496 } 6497 .e-gallery-container.inflate-hover .e-gallery-item.is-hovered .elementor-gallery-item__overlay{ 6498 opacity: .08; 6499 } 6500} 6501 6502/* Mobile: bez zbÄdnych przejÅÄ */ 6503@media (hover:none){ 6504 .e-gallery-container.inflate-hover .e-gallery-item{ transition: none; } 6505} 6506 6507/* âââââ TITLE FOLLOWER (pion) âââââ */ 6508.e-gallery-container.inflate-hover .elementor-gallery-item__title{ 6509 position: absolute; 6510 left: 50%; 6511 top: var(--title-y, 50%); /* kontrolowane z JS w % */ 6512 transform: translate(-50%, -50%); 6513 z-index: 5; 6514 pointer-events: none; 6515 will-change: top, transform; 6516} 6517 6518/* StrzaÅki przy tytule â ukryte domyÅlnie, pokazuj na hover kafla */ 6519.e-gallery-container.inflate-hover .elementor-gallery-item__title::before, 6520.e-gallery-container.inflate-hover .elementor-gallery-item__title::after{ 6521 position: absolute; 6522 display: block; 6523 content: ""; 6524 top: 50%; 6525 transform: translateY(-50%); 6526 width: 20px; height: 20px; 6527 background-size: cover; 6528 opacity: 0; 6529 pointer-events: none; 6530 transition: opacity .2s ease; 6531} 6532.e-gallery-container.inflate-hover .elementor-gallery-item__title::before{ 6533 left: -28px; 6534/* background-image: url("https://cinemagicmaker.ai/wp-content/uploads/2025/10/arrow-left.png"); */ 6535} 6536.e-gallery-container.inflate-hover .elementor-gallery-item__title::after{ 6537 right: -28px; 6538/* background-image: url("https://cinemagicmaker.ai/wp-content/uploads/2025/10/arrow-right.png"); */ 6539} 6540.e-gallery-container.inflate-hover .e-gallery-item.is-hovered .elementor-gallery-item__title::before, 6541.e-gallery-container.inflate-hover .e-gallery-item.is-hovered .elementor-gallery-item__title::after{ 6542 opacity: 1; 6543} 6544</style> 6545
6546<script> 6547(() => { 6548 const DEBUG = false; 6549 const log = (...a) => DEBUG && console.log('[INFLATE]', ...a); 6550 const warn = (...a) => DEBUG && console.warn('[INFLATE]', ...a); 6551 const group = (l) => DEBUG && console.groupCollapsed('[INFLATE]', l); 6552 const groupEnd = () => DEBUG && console.groupEnd(); 6553 6554 // âââââ Title follower (per item) âââââ 6555 const TITLE_MIN = 8; // % od góry 6556 const TITLE_MAX = 92; // % od doÅu 6557 const EPS = 0.05; // snap (w %) 6558 const VMAX = 300; // max prÄdkoÅÄ [%/s] 6559 const K = 12; // v = min(VMAX, K*dist) 6560 6561 const titleState = new WeakMap(); 6562 const clamp = (n, min, max) => Math.min(max, Math.max(min, n)); 6563 6564 function ensureLoop(item){ 6565 const state = titleState.get(item); 6566 if (!state || state.running) return; 6567 state.running = true; 6568 6569 const step = (ts) => { 6570 if (state.lastTs == null) state.lastTs = ts; 6571 const dt = Math.min(0.05, (ts - state.lastTs) / 1000); // cap 50ms 6572 state.lastTs = ts; 6573 6574 const dist = state.target - state.current; 6575 const ad = Math.abs(dist); 6576 6577 if (ad <= EPS){ 6578 state.current = state.target; 6579 item.style.setProperty('--title-y', state.current + '%'); 6580 6581 if (item.classList.contains('is-hovered')){ 6582 state.raf = requestAnimationFrame(step); 6583 }else{ 6584 state.running = false; 6585 state.lastTs = null; 6586 state.raf = 0; 6587 } 6588 return; 6589 } 6590 6591 const v = Math.min(VMAX, K * ad); // [%/s] 6592 let delta = Math.sign(dist) * v * dt; 6593 if (Math.abs(delta) > ad) delta = Math.sign(dist) * ad; 6594 6595 state.current += delta; 6596 item.style.setProperty('--title-y', state.current + '%'); 6597 6598 state.raf = requestAnimationFrame(step); 6599 }; 6600 state.raf = requestAnimationFrame(step); 6601 } 6602 6603 function setTargetFromEvent(item, e){ 6604 const title = item.querySelector('.elementor-gallery-item__title'); 6605 if (!title) return; 6606 const rect = item.getBoundingClientRect(); 6607 const rel = (e.clientY - rect.top) / rect.height; // 0..1 6608 const yPct = clamp(rel * 100, TITLE_MIN, TITLE_MAX); 6609 const state = titleState.get(item); 6610 state.target = yPct; 6611 ensureLoop(item); 6612 } 6613 6614 function resetTitle(item){ 6615 const state = titleState.get(item); 6616 if (!state) return; 6617 state.target = 50; // wrÃ³Ä do Årodka 6618 ensureLoop(item); 6619 } 6620 6621 // âââââ Inicjalizacja w danym âscopeâ âââââ 6622 function initScope(scope = document){ 6623 group('initScope'); 6624 log('scope:', scope === document ? 'document' : scope); 6625 6626 const selectorPrimary = '.e-gallery-container.e-gallery-masonry'; 6627 const selectorFallback = '.e-gallery-container'; 6628 6629 let containers = scope.querySelectorAll(selectorPrimary); 6630 log('containers (primary):', containers.length); 6631 6632 if (!containers.length){ 6633 containers = scope.querySelectorAll(selectorFallback); 6634 warn('primary=0 â fallback:', selectorFallback, 'count:', containers.length); 6635 } 6636 if (!containers.length){ 6637 warn('No gallery containers found.'); 6638 groupEnd(); 6639 return; 6640 } 6641 6642 containers.forEach((container, idx) => { 6643 // Guard: nie inicjuj ponownie tego samego kontenera 6644 if (container.classList.contains('inflate-hover')){ 6645 log(`container#${idx} already initialized`); 6646 }else{ 6647 container.classList.add('inflate-hover'); 6648 6649 // Parametry z widgetu (Elementor) 6650 const widget = container.closest('[data-widget_type="gallery.default"], .elementor-widget-gallery'); 6651 const hoverScale = (widget && widget.getAttribute('data-hover-scale')) || '1.2'; 6652 const dimScale = (widget && widget.getAttribute('data-dim-scale')) || '1'; 6653 const dimBlur = (widget && widget.getAttribute('data-dim-blur')) || '10px'; 6654 container.style.setProperty('--hover-scale', hoverScale); 6655 container.style.setProperty('--dim-scale', dimScale); 6656 container.style.setProperty('--dim-blur', dimBlur); 6657 } 6658 6659 // ââ Bindowanie itemów bez duplikatów ââ 6660 const items = Array.from(container.querySelectorAll('.e-gallery-item')); 6661 log(`container#${idx} items:`, items.length); 6662 6663 const enter = (el) => { 6664 container.classList.add('has-hover'); 6665 el.classList.add('is-hovered');
6666 ensureLoop(el); 6667 }; 6668 const leave = (el) => { 6669 el.classList.remove('is-hovered'); 6670 resetTitle(el); 6671 if (!container.querySelector('.e-gallery-item.is-hovered')){ 6672 container.classList.remove('has-hover'); 6673 } 6674 }; 6675 6676 const bindItem = (item, i) => { 6677 if (item.dataset.inflateBound === '1') return; // już zbindowany 6678 item.dataset.inflateBound = '1'; 6679 6680 // stan followera 6681 if (!titleState.get(item)){ 6682 titleState.set(item, { current: 50, target: 50, running: false, raf: 0, lastTs: null }); 6683 item.style.setProperty('--title-y', '50%'); 6684 } 6685 6686 item.addEventListener('mouseenter', () => enter(item)); 6687 item.addEventListener('mouseleave', () => leave(item)); 6688 item.addEventListener('focusin', () => enter(item)); 6689 item.addEventListener('focusout', () => leave(item)); 6690 6691 // follower: tylko gdy hover 6692 item.addEventListener('mousemove', (e) => { 6693 if (!item.classList.contains('is-hovered')) return; 6694 setTargetFromEvent(item, e); 6695 }, { passive: true }); 6696 }; 6697 6698 items.forEach(bindItem); 6699 6700 // ââ MutationObserver: dobindowanie nowych, bez duplikatów ââ 6701 // JeÅli byÅ już observer, odÅÄ cz go przed utworzeniem nowego 6702 if (container.__inflateObs) { 6703 try { container.__inflateObs.disconnect(); } catch(e){} 6704 } 6705 let lastCount = items.length; 6706 const mo = new MutationObserver(() => { 6707 const currentItems = Array.from(container.querySelectorAll('.e-gallery-item')); 6708 if (currentItems.length !== lastCount){ 6709 log(`items changed: ${lastCount} â ${currentItems.length} (bind missing)`); 6710 lastCount = currentItems.length; 6711 currentItems.forEach(bindItem); 6712 } 6713 // sanity: sprzÄ tnij .has-hover jeÅli nie ma aktywnego 6714 if (container.classList.contains('has-hover') && 6715 !container.querySelector('.e-gallery-item.is-hovered')){ 6716 container.classList.remove('has-hover'); 6717 } 6718 }); 6719 mo.observe(container, { childList: true, subtree: true }); 6720 container.__inflateObs = mo; 6721 }); 6722 6723 groupEnd(); 6724 } 6725 6726 // âââ Bootstrap âââ 6727 document.addEventListener('DOMContentLoaded', () => initScope()); 6728 window.addEventListener('load', () => initScope()); 6729 6730 // Elementor hook (jeÅli obecny) 6731 if (window.jQuery && window.elementorFrontend){ 6732 jQuery(window).on('elementor/frontend/init', function(){ 6733 log('Elementor frontend init hook'); 6734 elementorFrontend.hooks.addAction('frontend/element_ready/gallery.default', ($scope) => { 6735 log('hook: gallery.default scope:', $scope[0]); 6736 initScope($scope[0]); 6737 }); 6738 }); 6739 } else { 6740 warn('Elementor hooks not available â using DOM events only'); 6741 } 6742 6743 // âââ API: peÅny re-init (gdybyÅ potrzebowaÅ wymusiÄ) âââ 6744 // Użycie: window.InflateHover && window.InflateHover.reinit(document); 6745 window.InflateHover = { 6746 reinit(scope = document){ 6747 const containers = scope.querySelectorAll('.e-gallery-container.inflate-hover'); 6748 containers.forEach(c => { 6749 if (c.__inflateObs) { try{ c.__inflateObs.disconnect(); } catch(e){} c.__inflateObs = null; } 6750 // NIE zdejmujemy dataset.inflateBound z itemów (nie nadpisujemy eventów) 6751 // JeÅli bardzo chcesz âczyÅciÄâ â odkomentuj dwie linie poniżej: 6752 // c.querySelectorAll('.e-gallery-item').forEach(it => delete it.dataset.inflateBound); 6753 // c.classList.remove('inflate-hover'); 6754 }); 6755 initScope(scope); 6756 } 6757 }; 6758})(); 6759</script>
6759 6760
6761<script> 6762(() => { 6763 function attachScrambleToWidget(widgetEl) { 6764 const heading = widgetEl.querySelector('h1,h2,h3,h4,h5,h6,.elementor-heading-title'); 6765 if (!heading) return; 6766 6767 const basePlain = heading.textContent || ''; 6768 const baseAlt = widgetEl.getAttribute('data-alt') || basePlain; 6769 const duration = Number(widgetEl.getAttribute('data-duration')) || 200; 6770 const noisePool = widgetEl.getAttribute('data-noise') || "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvXxYyZz!<>-_\\/[]{}â=+*^?#_~@$%&"; 6771 6772 let state = 'plain'; // 'plain' | 'alt' | 'toAlt' | 'toPlain' 6773 let queued = null; 6774 let raf = null; 6775 6776 const isSpace = ch => ch === ' ' || ch === '\u00A0' || ch === '\n' || ch === '\t'; 6777 6778 function run(direction){ 6779 // nie powtarzaj tej samej animacji; przeciwnÄ zakolejkuj 6780 if (state === 'toAlt' && direction === 'toAlt') return; 6781 if (state === 'toPlain' && direction === 'toPlain') return; 6782 if (state === 'alt' && direction === 'toAlt') return; 6783 if (state === 'plain' && direction === 'toPlain') return; 6784 if ((state === 'toAlt' && direction === 'toPlain') || 6785 (state === 'toPlain' && direction === 'toAlt')) { queued = direction; return; } 6786 6787 state = direction; 6788 const target = (direction === 'toAlt') ? baseAlt : basePlain; 6789 const start = performance.now(); 6790 const from = heading.textContent || ''; 6791 const len = Math.max(from.length, target.length); 6792 6793 // losowy moment âodsÅonyâ dla każdego znaku 6794 const revealAt = new Array(len); 6795 for (let i = 0; i < len; i++) { 6796 revealAt[i] = isSpace(target[i] ?? from[i] ?? ' ') 6797 ? 0 6798 : (0.35 + Math.random() * 0.65) * duration; 6799 } 6800 6801 cancelAnimationFrame(raf); 6802 const tick = (now) => { 6803 const t = Math.min(duration, now - start); 6804 let out = ''; 6805 let done = true; 6806 6807 for (let i = 0; i < len; i++) { 6808 const toCh = target[i] ?? ''; 6809 if (t >= revealAt[i]) { 6810 out += toCh; 6811 } else { 6812 done = false; 6813 out += isSpace(toCh) 6814 ? (toCh || ' ') 6815 : (noisePool.charAt(Math.floor(Math.random() * noisePool.length)) || '#'); 6816 } 6817 } 6818 6819 heading.textContent = out; 6820 6821 if (!done) { 6822 raf = requestAnimationFrame(tick); 6823 } else { 6824 heading.textContent = target; 6825 state = (direction === 'toAlt') ? 'alt' : 'plain'; 6826 if (queued) { const next = queued; queued = null; run(next); } 6827 } 6828 }; 6829 raf = requestAnimationFrame(tick); 6830 } 6831 6832 // Hover / leave na caÅym kontenerze z ID 6833 widgetEl.addEventListener('mouseenter', () => run('toAlt')); 6834 widgetEl.addEventListener('mouseleave', () => run('toPlain')); 6835 6836 // Mobile: tap toggle 6837 widgetEl.addEventListener('click', () => { 6838 if (state === 'plain' || state === 'toPlain') run('toAlt'); 6839 else run('toPlain'); 6840 }); 6841 } 6842 6843 // >>> WAÅ»NE: wybieramy WSZYSTKIE elementy majÄ ce atrybut id="visionWidget" 6844 // (nawet jeÅli to niepoprawne HTML-owo, zadziaÅa na wielu) 6845 function init() { 6846 document.querySelectorAll('[id="visionWidget"]').forEach(el => { 6847 if (el.hasAttribute('data-alt')) attachScrambleToWidget(el); 6848 }); 6849 } 6850 6851 if (document.readyState === 'loading') { 6852 document.addEventListener('DOMContentLoaded', init); 6853 } else { init(); } 6854})(); 6855</script>
vendor: 1 bytes, line 6855
6855
6856<script type="module"> 6857import * as THREE from "https://unpkg.com/[email protected]/build/three.module.js"; 6858 6859/* === USTAWIENIA === */ 6860const SECTION_ID = "TheStars"; // <- PODMIEÅ 6861const STAR_COUNT = 15000; 6862const FIELD_DEPTH = 3000; 6863const OVERSCAN = 0.95; // wypeÅnienie krawÄdzi 6864const BASE_SPEED = 20; // minimalna (przy scroll up) 6865const MAX_SPEED = 3200; // sufit prÄdkoÅci 6866const WHEEL_GAIN = 2.75; // czuÅoÅÄ scrolla 6867const SPEED_EASE = 0.1; // wygÅadzenie dojÅcia do target 6868const BASE_FOV = 90; // bazowe FOV 6869const WARP_FOV_ADD= 10; // poszerz FOV przy warp 6870 6871/* Rozmiar gwiazd w px (dynamiczny z prÄdkoÅciÄ ) */ 6872const BASE_MIN_SIZE_PX = 0.5; 6873const BASE_MAX_SIZE_PX = 5.5; 6874const SIZE_GAIN_PER_100 = 0.5; // +0.05 px na każde +100 speed 6875const SIZE_MIN_CAP = 0.5; 6876const SIZE_MAX_CAP = 1.5; 6877 6878/* Kolorowanie: jaki odsetek gwiazd przechodzi w kolor wraz z warp */ 6879const COLOR_RAMP_POW = 0.9; 6880 6881/* Motion blur parametry bazowe (skalowane z warp) */ 6882const MAX_BLUR_TAPS = 12; // staÅy limit w shaderze (pÄtle) 6883const BLUR_LEN_MAX = 5.55; // max dÅugoÅÄ rozmycia w jednostkach sprite 6884const BLUR_FADE_MIN = 2.25; // minimalna waga najdalszego tapu 6885 6886/* === PARALLAX MYSZKI (NOWE) === */ 6887const MOUSE_EASE = 0.08; // inercja kursora 6888const CENTER_GAIN_NDC = 0.35; // jak mocno âpunkt zbieguâ ucieka za kursorem (NDC) 6889const ROT_GAIN_RAD = 0.14; // tilt kamery (radiany) wzglÄdem myszki 6890const POS_GAIN_UNITS = 2.0; // lekki shift kamery w world-space 6891 6892/* === SEK CJA I STICKY === */ 6893const section = document.getElementById(SECTION_ID); 6894if(!section){ console.warn("[StarWarp] Brak sekcji:", SECTION_ID); throw new Error(); } 6895 6896const style = document.createElement("style"); 6897style.textContent = ` 6898 #${SECTION_ID}{ position:relative; } 6899 #${SECTION_ID} > *:not(.starwarp-sticky){ position:absolute; z-index:0; } 6900 #${SECTION_ID} .starwarp-sticky{ 6901 position: absolute; top:0; bottom:0; width:100%; height: 97vh; 6902 z-index:0; overflow:hidden; 6903 } 6904 #${SECTION_ID} .starwarp-canvas{ 6905 position: sticky; inset:0; width:100vw; height:97vh; top: 0px; 6906 display:block; pointer-events:none; 6907 }`; 6908document.head.appendChild(style); 6909 6910const sticky = document.createElement("div"); 6911sticky.className = "starwarp-sticky"; 6912const canvas = document.createElement("canvas"); 6913canvas.className = "starwarp-canvas"; 6914sticky.appendChild(canvas); 6915section.prepend(sticky); 6916 6917/* === THREE === */ 6918const renderer = new THREE.WebGLRenderer({ canvas, antialias:false, alpha:false, powerPreference:"high-performance" }); 6919function setRendererSize(){ 6920 renderer.setPixelRatio(Math.min(devicePixelRatio,2)); 6921 renderer.setSize(window.innerWidth, window.innerHeight, false); 6922} 6923setRendererSize(); 6924 6925const scene = new THREE.Scene(); 6926const camera = new THREE.PerspectiveCamera(BASE_FOV, innerWidth/innerHeight, 0.1, FIELD_DEPTH*2); 6927camera.position.z = 5; 6928 6929/* frustum -> szerokoÅÄ/wysokoÅÄ na danym Z (ujemnym) */ 6930const frustumSizeAtZ = (zNeg)=>{ 6931 const h = 2 * Math.tan(THREE.MathUtils.degToRad(camera.fov*0.5)) * (-zNeg); 6932 return { w: h * camera.aspect, h }; 6933}; 6934 6935/* GEOMETRIA GWIAZD */ 6936const geo = new THREE.BufferGeometry(); 6937const positions = new Float32Array(STAR_COUNT * 3); 6938const sizes = new Float32Array(STAR_COUNT); 6939const seed = new Float32Array(STAR_COUNT); 6940 6941for(let i=0;i<STAR_COUNT;i++){ 6942 sizes[i] = Math.random(); // 0..1 -> zmapujemy na [minPx,maxPx] 6943 seed[i] = Math.random(); 6944} 6945geo.setAttribute("position", new THREE.BufferAttribute(positions,3)); 6946geo.setAttribute("aSize", new THREE.BufferAttribute(sizes,1)); 6947geo.setAttribute("aSeed", new THREE.BufferAttribute(seed,1)); 6948geo.attributes.position.setUsage(THREE.DynamicDrawUsage); 6949 6950function placeStar(i, zVal=null){ 6951 const i3 = i*3; 6952 const z = (zVal!==null) ? zVal : -(Math.random()*FIELD_DEPTH + 10.0); 6953 const f = frustumSizeAtZ(z); 6954 positions[i3+0] = (Math.random()-0.5) * f.w * OVERSCAN; 6955 positions[i3+1] = (Math.random()-0.5) * f.h * OVERSCAN; 6956 positions[i3+2] = z; 6957} 6958for(let i=0;i<STAR_COUNT;i++) placeStar(i); 6959 6960/* SHADER: smugi + BWâCOLOR + RADIAL MOTION BLUR do Årodka 6961 DODANE: uCenter (przesuwa punkt zbiegu w NDC) */ 6962const uniforms = { 6963 uPixelRatio:{ value: Math.min(devicePixelRatio,2) }, 6964 uMinSizePx:{ value: BASE_MIN_SIZE_PX }, 6965 uMaxSizePx:{ value: BASE_MAX_SIZE_PX }, 6966 uWarp:{ value: 0.0 }, // 0..1 6967 uColorFrac:{ value: 0.0 }, // 0..1 6968 uTime:{ value: 0.0 }, 6969 uCenter:{ value: new THREE.Vector2(0,0) }, // NOWE: przesuniÄcie âÅrodkaâ (NDC) 6970 // Motion blur 6971 uBlurTaps:{ value: 1.0 }, // 1..MAX_BLUR_TAPS (float) 6972 uBlurLen:{ value: 0.0 }, // 0..BLUR_LEN_MAX 6973 uBlurFadeMin:{ value: BLUR_FADE_MIN } 6974}; 6975 6976const material = new THREE.ShaderMaterial({ 6977 uniforms, transparent:true, depthWrite:false, blending:THREE.AdditiveBlending, 6978 vertexShader: /* glsl */` 6979 uniform float uPixelRatio; 6980 uniform float uMinSizePx; 6981 uniform float uMaxSizePx; 6982 uniform vec2 uCenter; // NOWE 6983 attribute float aSize; 6984 attribute float aSeed; 6985 varying float vFade; 6986 varying float vSeed; 6987 varying vec2 vDir; 6988 6989 void main(){ 6990 vec4 mv = modelViewMatrix * vec4(position,1.0); 6991 6992 // rozmiar w pikselach (staÅy na ekranie) 6993 float sizePx = mix(uMinSizePx, uMaxSizePx, aSize); 6994 gl_PointSize = sizePx * uPixelRatio; 6995 6996 vec4 clip = projectionMatrix * mv; 6997 // przesuwamy referencyjny âÅrodekâ o uCenter (NDC) 6998 vec2 ndc = clip.xy / max(clip.w, 0.0001) - uCenter; 6999 float L = length(ndc); 7000 vDir = (L>0.0) ? ndc/L : vec2(0.0,1.0); 7001 7002 vFade = smoothstep(0.0, 1.0, clamp((-mv.z) / ${FIELD_DEPTH.toFixed(1)}, 0.0, 1.0)); 7003 vSeed = aSeed; 7004 gl_Position = clip; 7005 } 7006 `, 7007 fragmentShader: /* glsl */` 7008 precision highp float; 7009 7010 varying float vFade; 7011 varying float vSeed; 7012 varying vec2 vDir; 7013 7014 uniform float uWarp; 7015 uniform float uColorFrac; 7016 uniform float uTime; 7017 7018 uniform float uBlurTaps; // 1..6 7019 uniform float uBlurLen; // dÅugoÅÄ rozmycia w jednostkach sprite 7020 uniform float uBlurFadeMin; // najdalszy tap nie gaÅnie poniżej tego 7021 7022 // HSV->RGB 7023 vec3 hsv2rgb(vec3 c){
7024 vec3 p = abs(fract(c.xxx + vec3(0., 2./3., 1./3.))*6. - 3.); 7025 return c.z * mix(vec3(1.0), clamp(p - 1.0, 0.0, 1.0), c.y); 7026 } 7027 7028 void main(){ 7029 vec2 uv = gl_PointCoord - 0.5; 7030 7031 // ukÅad lokalny: oÅ Y zgodna z radialnym kierunkiem na zewnÄ trz 7032 float a = atan(vDir.y, vDir.x); 7033 float ca = cos(a), sa = sin(a); 7034 vec2 rot = vec2(ca*uv.x - sa*uv.y, sa*uv.x + ca*uv.y); 7035 7036 // bazowa âsmugaâ (elipsa) â mniejsza, bo dojdzie motion blur 7037 float warpEase = pow(clamp(uWarp, 0.0, 1.0), 0.45); 7038 float stretch = mix(1.0, 40.0, warpEase); 7039 7040 // kolor / BW (odsetek kolorowych roÅnie z uWarp) 7041 float isColor = step(vSeed, clamp(uColorFrac, 0.0, 1.0)); 7042 float sat = pow(clamp(uWarp,0.0,1.0), 0.65); 7043 float hue = fract(vSeed * 1.618 + uTime * 0.06 * warpEase); 7044 vec3 colColor = hsv2rgb(vec3(hue, sat, 1.0)); 7045 vec3 bw = vec3(1.0); 7046 vec3 col = mix(bw, colColor, isColor); 7047 7048 // ---- MOTION BLUR (do Årodka) ---- 7049 const int MAX_TAPS = ${MAX_BLUR_TAPS}; 7050 float taps = clamp(uBlurTaps, 1.0, float(MAX_TAPS)); 7051 float accA = 0.0; 7052 vec3 accC = vec3(0.0); 7053 7054 for (int i = 0; i < MAX_TAPS; i++){ 7055 float fi = float(i); 7056 if (fi >= taps) break; 7057 7058 float t = (taps <= 1.0) ? 0.0 : (fi / (taps - 1.0)); // 0..1 7059 float fall = mix(1.0, uBlurFadeMin, t); 7060 vec2 uvShift = rot + vec2(0.0, -t * uBlurLen); 7061 vec2 el = vec2(uvShift.x, uvShift.y / stretch); 7062 7063 float d = length(el) * 2.0; 7064 float aTap = smoothstep(1.0, 0.0, d) * fall; 7065 7066 accC += col * aTap; 7067 accA += aTap; 7068 } 7069 7070 float boost = mix(0.9, 2.1, warpEase); 7071 vec3 outC = (accA > 1e-4) ? (accC / accA) * boost : vec3(0.0); 7072 float outA = accA * vFade; 7073 7074 gl_FragColor = vec4(outC, outA); 7075 } 7076 ` 7077}); 7078scene.add(new THREE.Points(geo, material)); 7079 7080/* === SCROLL PRZYSPIESZA (bez samo-zwalniania) === */ 7081let targetSpeed = BASE_SPEED; 7082let currentSpeed = BASE_SPEED; 7083 7084function clamp(v,min,max){ return v<min?min:(v>max?max:v); } 7085function onWheel(e){ 7086 const dy = e.deltaY; 7087 if(Math.abs(dy) < 1) return; 7088 targetSpeed = clamp(targetSpeed + dy * WHEEL_GAIN, BASE_SPEED, MAX_SPEED); 7089} 7090window.addEventListener("wheel", onWheel, {passive:true}); 7091 7092// Dotyk (scroll) 7093let lastY=null; 7094window.addEventListener("touchstart", e=>{ lastY = e.touches[0].clientY; }, {passive:true}); 7095window.addEventListener("touchmove", e=>{ 7096 if(lastY===null) return; 7097 const dy = lastY - e.touches[0].clientY; 7098 targetSpeed = clamp(targetSpeed + dy * 1.0, BASE_SPEED, MAX_SPEED); 7099 lastY = e.touches[0].clientY; 7100}, {passive:true}); 7101window.addEventListener("touchend", ()=>{ lastY=null; }, {passive:true}); 7102 7103/* === PARALLAX KURSORA (NOWE) === */ 7104const mouseTarget = new THREE.Vector2(0,0); // NDC: [-1,1] 7105const mouseNow = new THREE.Vector2(0,0); 7106 7107function setMouseFromEvent(x, y){ 7108 const nx = (x / innerWidth) * 2 - 1; // -1..1 (prawo dodatnie) 7109 const ny = -(y / innerHeight) * 2 + 1; // -1..1 (góra dodatnia) 7110 mouseTarget.set(nx, ny); 7111} 7112window.addEventListener("pointermove", (e)=> setMouseFromEvent(e.clientX, e.clientY), {passive:true}); 7113 7114// mobile: parallax na dotyku 7115window.addEventListener("touchmove", (e)=>{ 7116 const t = e.touches[0]; 7117 if (t) setMouseFromEvent(t.clientX, t.clientY); 7118}, {passive:true}); 7119 7120/* === PÄTLA === */ 7121const clock = new THREE.Clock(); 7122let lastFov = camera.fov; 7123 7124function animate(){ 7125 requestAnimationFrame(animate); 7126 const dt = Math.min(clock.getDelta(), 0.05); 7127 7128 // prÄdkoÅÄ: zostaje, chyba że scrollujesz w górÄ 7129 currentSpeed += (targetSpeed - currentSpeed) * SPEED_EASE; 7130 7131 // warp 0..1 7132 const warp = THREE.MathUtils.clamp((currentSpeed - BASE_SPEED) / (MAX_SPEED - BASE_SPEED), 0, 1); 7133 uniforms.uWarp.value = warp; 7134 uniforms.uTime.value += dt; 7135 7136 // Odsetek gwiazd kolorowych 7137 uniforms.uColorFrac.value = Math.pow(warp, COLOR_RAMP_POW); 7138 7139 // Rozmiar px roÅnie z prÄdkoÅciÄ 7140 const speedOverBase = Math.max(0, currentSpeed - BASE_SPEED); 7141 const pxGain = (speedOverBase / 100.0) * SIZE_GAIN_PER_100; 7142 const dynMin = THREE.MathUtils.clamp(BASE_MIN_SIZE_PX + pxGain, SIZE_MIN_CAP, SIZE_MAX_CAP); 7143 const dynMax = THREE.MathUtils.clamp(BASE_MAX_SIZE_PX + pxGain, SIZE_MIN_CAP, SIZE_MAX_CAP); 7144 uniforms.uMinSizePx.value = dynMin; 7145 uniforms.uMaxSizePx.value = dynMax; 7146 7147 // Motion blur parametry z warp 7148 uniforms.uBlurTaps.value = Math.round(THREE.MathUtils.lerp(1, MAX_BLUR_TAPS, warp)); 7149 uniforms.uBlurLen.value = THREE.MathUtils.lerp(0.0, BLUR_LEN_MAX, warp); 7150 7151 // dynamiczne FOV dla tunelu 7152 const fov = THREE.MathUtils.lerp(BASE_FOV, BASE_FOV + WARP_FOV_ADD, warp*warp); 7153 if (Math.abs(fov - lastFov) > 0.01){ 7154 camera.fov = fov; 7155 camera.updateProjectionMatrix(); 7156 lastFov = fov; 7157 } 7158 7159 // --- PARALLAX / VANISHING-POINT FOLLOW --- 7160 // miÄkka inercja kursora 7161 mouseNow.lerp(mouseTarget, MOUSE_EASE); 7162 7163 // centrum w NDC (wpÅywa na kierunek smug) 7164 uniforms.uCenter.value.set(mouseNow.x * CENTER_GAIN_NDC, mouseNow.y * CENTER_GAIN_NDC); 7165 7166 // lekki tilt i przesuniÄcie kamery (estetyka jak w giveahand) 7167 camera.rotation.x = mouseNow.y * ROT_GAIN_RAD; 7168 camera.rotation.y = -mouseNow.x * ROT_GAIN_RAD; 7169 camera.position.x = mouseNow.x * POS_GAIN_UNITS;
7170 camera.position.y = mouseNow.y * POS_GAIN_UNITS; 7171 7172 // przesuwaj gwiazdy ku kamerze 7173 const pos = geo.attributes.position.array; 7174 const advance = currentSpeed * dt * 8.5; 7175 for(let i=0;i<STAR_COUNT;i++){ 7176 const i3=i*3; 7177 pos[i3+2] += advance; 7178 if(pos[i3+2] > -0.5){ 7179 const newZ = -(FIELD_DEPTH + Math.random()*FIELD_DEPTH*0.25); 7180 const f = frustumSizeAtZ(newZ); 7181 pos[i3+0] = (Math.random()-0.5) * f.w * OVERSCAN; 7182 pos[i3+1] = (Math.random()-0.5) * f.h * OVERSCAN; 7183 pos[i3+2] = newZ; 7184 } 7185 } 7186 geo.attributes.position.needsUpdate = true; 7187 7188 renderer.render(scene, camera); 7189} 7190animate(); 7191 7192/* === RESIZE === */ 7193addEventListener("resize", ()=>{ 7194 setRendererSize(); 7195 camera.aspect = innerWidth/innerHeight; 7196 camera.updateProjectionMatrix(); 7197 uniforms.uPixelRatio.value = Math.min(devicePixelRatio, 2); 7198 7199 // dostosuj czÄÅÄ gwiazd do nowego frustum 7200 for(let i=0;i<Math.min(2000, STAR_COUNT);i++){ 7201 const idx = (Math.random()*STAR_COUNT|0); 7202 const z = positions[idx*3+2]; 7203 placeStar(idx, z); 7204 } 7205 geo.attributes.position.needsUpdate = true; 7206}, {passive:true}); 7207</script>
7207 7208
7209<script> 7210(() => { 7211 if (!window.gsap || !window.ScrollTrigger) return; 7212 gsap.registerPlugin(ScrollTrigger); 7213 7214 // â wÅasne triggery do późniejszego sprzÄ tania 7215 const ROTATE_TRIGGERS = []; 7216 7217 const vwToPx = vw => (window.innerWidth * vw) / 99; 7218 const HEADER_OFFSET = (() => { 7219 const v = getComputedStyle(document.documentElement).getPropertyValue("--header-h").trim(); 7220 return v && v.endsWith("px") ? parseFloat(v) : 0; 7221 })(); 7222 7223 function buildRotate() { 7224 // zabij stare (na wszelki wypadek) i zbuduj od nowa 7225 destroyRotate(); 7226 7227 document.querySelectorAll(".scroll-rotate").forEach((section, i) => { 7228 const lenVW = parseFloat(section.getAttribute("data-rotate-vw")) || 50; 7229 const target = section.querySelector(".rotor"); 7230 if (!target) return; 7231 7232 // zostawiasz zapas wysokoÅci jak wczeÅniej 7233 section.style.minHeight = `calc(${lenVW}vw + 0vh)`; 7234 gsap.set(target, { transformOrigin: "50% 50%", rotation: 90 }); 7235 7236 const tween = gsap.to(target, { 7237 rotation: 0, 7238 scale: 1.5, 7239 ease: "none", 7240 immediateRender: false, 7241 scrollTrigger: { 7242 id: `rotate90_${i}`, 7243 trigger: section, 7244 start: `top+=${HEADER_OFFSET} top`, 7245 end: () => "+=" + vwToPx(lenVW), 7246 scrub: true, 7247 invalidateOnRefresh: true, 7248 // markers: true, 7249 } 7250 }); 7251 7252 ROTATE_TRIGGERS.push(tween.scrollTrigger); 7253 }); 7254 } 7255 7256 function destroyRotate() { 7257 // zabij swoje triggery + tweens 7258 while (ROTATE_TRIGGERS.length) ROTATE_TRIGGERS.pop().kill(); 7259 gsap.killTweensOf(".scroll-rotate .rotor"); 7260 7261 // wyczyÅÄ transform oraz minHeight po wyÅÄ czeniu na mobile/tablet 7262 document.querySelectorAll(".scroll-rotate .rotor").forEach(el => { 7263 gsap.set(el, { clearProps: "transform" }); 7264 }); 7265 document.querySelectorAll(".scroll-rotate").forEach(section => { 7266 section.style.minHeight = ""; 7267 }); 7268 } 7269 7270 // â globalne nasÅuchy refreshu (bezpieczne nawet, gdy nic nie jest aktywne) 7271 if (!window.__ST_GLOBAL_WIRED__) { 7272 window.__ST_GLOBAL_WIRED__ = true; 7273 7274 window.addEventListener("load", () => { 7275 const ready = document.fonts?.ready ?? Promise.resolve(); 7276 ready.then(() => ScrollTrigger.refresh()); 7277 }); 7278 7279 window.addEventListener("pageshow", e => { if (e.persisted) ScrollTrigger.refresh(); }); 7280 document.addEventListener("visibilitychange", () => { if (document.visibilityState === "visible") ScrollTrigger.refresh(); }); 7281 window.addEventListener("resize", () => ScrollTrigger.refresh()); 7282 window.addEventListener("orientationchange", () => ScrollTrigger.refresh()); 7283 } 7284 7285 // â pomocnik: wywoÅaj fn po gotowoÅci DOM 7286 const onReady = fn => { 7287 if (document.readyState === "loading") { 7288 document.addEventListener("DOMContentLoaded", fn, { once: true }); 7289 } else { 7290 fn(); 7291 } 7292 }; 7293 7294 // â DESKTOP-ONLY dziÄki gsap.matchMedia: 7295 const mm = gsap.matchMedia(); 7296 7297 mm.add("(min-width: 1025px) and (pointer: fine)", () => { 7298 // tylko gdy speÅnione: desktop + mysz/trackpad 7299 const onRefreshInit = () => { 7300 document.querySelectorAll(".scroll-rotate").forEach(section => { 7301 const lenVW = parseFloat(section.getAttribute("data-rotate-vw")) || 50; 7302 section.style.minHeight = `calc(${lenVW}vw + 0vh)`; 7303 }); 7304 }; 7305 7306 ScrollTrigger.addEventListener("refreshInit", onRefreshInit); 7307 7308 onReady(buildRotate); 7309 7310 // cleanup gdy warunek przestanie pasowaÄ (wejÅcie w tablet/mobile) 7311 return () => { 7312 ScrollTrigger.removeEventListener("refreshInit", onRefreshInit); 7313 destroyRotate(); 7314 }; 7315 }); 7316 7317 // Dodatkowy âbezpiecznikâ: jeÅli startujesz od razu na touch / wÄ sko â upewnij siÄ, że nic nie dziaÅa 7318 if (ScrollTrigger.isTouch || window.matchMedia("(max-width: 1024px)").matches) { 7319 destroyRotate(); 7320 } 7321})(); 7322</script>
7322 7323
7324<script> 7325// === USTAWIENIA === 7326const TARGET_ID = "MMMenuShowUp"; 7327const FADE_IN_MS = 360; 7328const FADE_OUT_MS = 100; 7329 7330// ââââââââââââââââââââââââââââââââââââââââââââââââ 7331(function attachFixedFadeWatcher() { 7332 const el = document.getElementById(TARGET_ID) || document.querySelector(`[id="${TARGET_ID}"]`); 7333 if (!el) { 7334 console.warn(`[fade-fixed] Nie znaleziono #${TARGET_ID}`); 7335 return; 7336 } 7337 7338 // lekka optymalizacja renderu 7339 el.style.willChange = "opacity"; 7340 7341 // prosty animator (bez CSS transitions) 7342 let rafId = null; 7343 let anim = null; // {from, to, start, dur} 7344 7345 const easeOut = (t) => 1 - Math.pow(1 - t, 3); // cubic ease-out 7346 const easeIn = (t) => Math.pow(t, 3); // cubic ease-in 7347 7348 function animateTo(targetOpacity, duration) { 7349 const from = parseFloat(getComputedStyle(el).opacity) || 0; 7350 const to = targetOpacity; 7351 if (Math.abs(from - to) < 0.01) { el.style.opacity = `${to}`; return; } 7352 7353 anim = { from, to, start: performance.now(), dur: duration }; 7354 7355 cancelAnimationFrame(rafId); 7356 const step = (now) => { 7357 if (!anim) return; 7358 const t = Math.min(1, (now - anim.start) / anim.dur); 7359 const eased = (to > from) ? easeOut(t) : easeIn(t); 7360 const val = from + (to - from) * eased; 7361 el.style.opacity = val.toFixed(3); 7362 7363 if (t < 1) rafId = requestAnimationFrame(step); 7364 else anim = null; 7365 }; 7366 rafId = requestAnimationFrame(step); 7367 } 7368 7369 // detekcja "czy element jest fixed" 7370 const isFixed = () => getComputedStyle(el).position === "fixed"; 7371 7372 // aktualizacja widocznoÅci na podstawie pozycji 7373 let lastFixed = null; 7374 const update = () => { 7375 const fixed = isFixed(); 7376 if (fixed === lastFixed) return; 7377 lastFixed = fixed; 7378 if (fixed) animateTo(1, FADE_IN_MS); 7379 else animateTo(0, FADE_OUT_MS); 7380 }; 7381 7382 // stan poczÄ tkowy 7383 el.style.opacity = isFixed() ? "1" : "0"; 7384 lastFixed = isFixed(); 7385 7386 // throttling przez rAF 7387 let ticking = false; 7388 const schedule = () => { 7389 if (ticking) return; 7390 ticking = true; 7391 requestAnimationFrame(() => { 7392 ticking = false; 7393 update(); 7394 }); 7395 }; 7396 7397 // nasÅuchy zmian: scroll/resize + zmiany klas/stylów (np. od Elementora) 7398 window.addEventListener("scroll", schedule, { passive: true }); 7399 window.addEventListener("resize", schedule); 7400 window.addEventListener("orientationchange", schedule); 7401 7402 const mo = new MutationObserver(schedule); 7403 mo.observe(el, { attributes: true, attributeFilter: ["class", "style"] }); 7404 7405 // na wszelki wypadek okresowy check (np. gdy inny skrypt zmienia layout bez eventów) 7406 const intervalId = setInterval(schedule, 500); 7407 7408 // porzÄ dkowanie gdybyÅ kiedyÅ chciaÅ wyÅÄ czyÄ: 7409 // return () => { cancelAnimationFrame(rafId); mo.disconnect(); clearInterval(intervalId); }; 7410})(); 7411 7412 7413</script>
7413 7414 7415 7416<style> 7417/* âââ KONTEJNER (sekcja elementora) âââ */ 7418.stack-roulette, #rouletter{ 7419 position: relative; 7420 /* min-height: 100vh; dużo miejsca na scroll; możesz zmieniÄ lub zostawiÄ JSowi */ 7421} 7422 7423/* VIEWPORT - sticky container dla kart */ 7424.stack-roulette .sr-viewport, #rouletter .sr-viewport{ 7425 position: sticky; 7426 top: 0; 7427 height: 100vh; 7428 width: 100%; 7429 display: flex; 7430 justify-content: center; 7431 align-items: center; 7432 overflow: hidden; 7433} 7434 7435.stack-roulette .sr-stage, #rouletter .sr-stage{ 7436 position: relative; 7437 width: 100%; 7438 height: 50%; 7439} 7440 7441/* âââ KARTY (absolute w sticky container) âââ */ 7442.sr-card{ 7443 position: absolute; 7444 top: 40%; 7445 left: 50%; 7446 transform: translate(-50%, -50%) scale(var(--scale, 1)); 7447 display: flex; 7448 flex-direction: column; 7449 justify-content: center; 7450 align-items: center; 7451 padding: 40px; 7452 text-align: center; 7453 opacity: var(--opacity, 0); 7454 filter: blur(var(--blur, 0px)); 7455 transition: all 0.1s ease-out; 7456 will-change: transform, opacity, filter; 7457 z-index: 50; /* nad treÅciÄ Elementora, ale pod headerem jeÅli ma wiÄkszy z-index */ 7458 pointer-events: none; /* żeby nic nie blokowaÅo scrolla */ 7459} 7460</style> 7461
7462<script> 7463/* ===== USTAWIENIA ===== 7464 Ile wysokoÅci viewportu (VH) potrzeba na KAÅ»DY slajd. 7465 Dla 3 slajdów np.: [120, 200, 80] 7466 JeÅli dodasz data-vh="..." na .sr-card, to nadpisze wartoÅÄ z tej tablicy. 7467*/ 7468const VH_PER_SLIDE = [60, 50, 55]; // <- podmieÅ dla swoich 3 slajdów 7469 7470/* âââ DOPASOWANY SKRYPT: sticky zamiast fixed, per-slajdowe dÅugoÅci âââ */ 7471class ScrollCards { 7472 constructor(section){ 7473 this.section = section; 7474 this.cards = Array.from(section.querySelectorAll('.sr-card')); 7475 this.totalCards = this.cards.length; 7476 this.currentCardIndex = 0; 7477 this.isScrolling = false; 7478 7479 this.slideVh = []; // [vh, vh, ...] per slajd 7480 this.slidePx = []; // [px, px, ...] per slajd 7481 this.cumPx = []; // prefix sums (gdzie zaczyna siÄ dany slajd w px) 7482 this.sectionTop = 0; 7483 7484 this.init(); 7485 this.section._scrollCards = this; 7486 } 7487 7488 init(){ 7489 this.computeSegments(); 7490 this.recomputeOffsets(); 7491 this.setInitialState(); 7492 7493 this.onScroll = this.handleScroll.bind(this); 7494 this.onResize = this.handleResize.bind(this); 7495 7496 window.addEventListener('scroll', this.onScroll, { passive:true }); 7497 window.addEventListener('resize', this.onResize); 7498 7499 // Dodatkowe odÅwieżenie po wczytaniu 7500 setTimeout(() => { 7501 this.computeSegments(); 7502 this.recomputeOffsets(); 7503 this.setInitialState(); 7504 }, 100); 7505 } 7506 7507 // Quantize (żeby nie produkowaÄ âdÅugichâ uÅamków) 7508 q(n){ return Math.round(n * 1000) / 1000; } 7509 7510 readConfigForIndex(i){ 7511 // 1) per-karta: data-vh 7512 const fromData = parseFloat(this.cards[i]?.dataset?.vh); 7513 if (Number.isFinite(fromData) && fromData > 0) return fromData; 7514 7515 // 2) globalna tablica 7516 if (Number.isFinite(VH_PER_SLIDE[i])) return VH_PER_SLIDE[i]; 7517 7518 // 3) fallback: ostatnia wartoÅÄ z tablicy lub 100 7519 const last = VH_PER_SLIDE[ VH_PER_SLIDE.length - 1 ]; 7520 return Number.isFinite(last) ? last : 100; 7521 } 7522 7523 computeSegments(){ 7524 // zbuduj slideVh bazujÄ c na data-vh / VH_PER_SLIDE 7525 this.slideVh = this.cards.map((_, i) => Math.max(1, this.readConfigForIndex(i))); // min 1vh 7526 // przelicz na px 7527 const vhToPx = vh => (window.innerHeight * vh / 100); 7528 this.slidePx = this.slideVh.map(vh => vhToPx(vh)); 7529 7530 // prefix sums: gdzie zaczyna siÄ slajd i 7531 this.cumPx = [0]; 7532 for (let i = 1; i < this.totalCards; i++){ 7533 this.cumPx[i] = this.cumPx[i-1] + this.slidePx[i-1]; 7534 } 7535 } 7536 7537 handleResize(){ 7538 // po resize przeliczyÄ segmenty i wysokoÅci 7539 this.computeSegments(); 7540 this.recomputeOffsets(); 7541 // szybkie ustawienie bieÅ¼Ä cej karty (bez animacji) 7542 this.animateToCard(this.currentCardIndex, 0); 7543 } 7544 7545 recomputeOffsets(){ 7546 const rect = this.section.getBoundingClientRect(); 7547 this.sectionTop = rect.top + window.scrollY; 7548 7549 // caÅkowita dÅugoÅÄ âprzewijaniaâ = suma segmentów 7550 const totalScrollPx = this.slidePx.reduce((a,b)=>a+b, 0); 7551 7552 // wysokoÅÄ sekcji = 1 viewport (żeby sticky miaÅo co âtrzymaÄâ) + caÅa dÅugoÅÄ przewijania 7553 const minH = window.innerHeight + totalScrollPx; 7554 this.section.style.minHeight = this.q(minH) + 'px'; 7555 } 7556 7557 setInitialState(){ 7558 this.cards.forEach((card, index) => { 7559 if (index === 0) { 7560 this.setCardStyle(card, 1, 0, 1, 0); 7561 } else if (index === 1) { 7562 this.setCardStyle(card, 1, 50, 0, 0); 7563 } else { 7564 this.setCardStyle(card, 1, 50, 0, 0); 7565 } 7566 }); 7567 this.updateProgressIndicator(); 7568 } 7569 7570 setCardStyle(card, scale, yOffset, opacity, blur){ 7571 const s = this.q(scale), y = this.q(yOffset), o = this.q(opacity), b = this.q(blur); 7572 card.style.setProperty('--scale', s); 7573 card.style.setProperty('--opacity', o); 7574 card.style.setProperty('--blur', `${b}px`); 7575 card.style.transform = `translate(-50%, -50%) translateY(${y}px) scale(${s})`; 7576 } 7577 7578 handleScroll(){ 7579 if (this.isScrolling) return; 7580 this.isScrolling = true; 7581 7582 requestAnimationFrame(() => { 7583 const relY = Math.max(0, window.scrollY - this.sectionTop); 7584 const idx = this.indexForOffset(relY); 7585 if (idx !== this.currentCardIndex){ 7586 this.animateToCard(idx); 7587 } 7588 this.isScrolling = false; 7589 });
7590 } 7591 7592 // znajdź slajd, w którym leży dana pozycja przewiniÄcia (relY) 7593 indexForOffset(relY){ 7594 // szybkie clampowanie 7595 if (relY <= 0) return 0; 7596 const total = this.cumPx[this.totalCards - 1] + this.slidePx[this.totalCards - 1]; 7597 if (relY >= total) return this.totalCards - 1; 7598 7599 // wyszukaj przedziaÅ [cumPx[i], cumPx[i]+slidePx[i]) 7600 // prosta pÄtla â przy kilku slajdach i tak jest szybka 7601 for (let i = 0; i < this.totalCards; i++){ 7602 const start = this.cumPx[i]; 7603 const end = start + this.slidePx[i]; 7604 if (relY >= start && relY < end) return i; 7605 } 7606 return this.totalCards - 1; 7607 } 7608 7609 animateToCard(targetIndex, duration = 300){ 7610 this.currentCardIndex = targetIndex; 7611 7612 this.cards.forEach((card, idx) => { 7613 const cardNumber = (parseInt(card.dataset.card) || (idx + 1)); 7614 7615 if (cardNumber === targetIndex + 1) { 7616 this.animateCard(card, 1, 0, 1, 0, duration); 7617 } else if (cardNumber === targetIndex) { 7618 this.animateCard(card, 0.95, -50, 0.9, 5, duration); 7619 } else if (cardNumber === targetIndex - 1) { 7620 this.animateCard(card, 0.9, -100, 0.8, 8, duration); 7621 } else if (cardNumber === targetIndex + 2) { 7622 this.animateCard(card, 1, 100, 0, 0, duration); 7623 } else if (cardNumber < targetIndex) { 7624 const depth = targetIndex - cardNumber; 7625 this.animateCard( 7626 card, 7627 Math.max(0.5, 0.9 - depth * 0.05), 7628 -100 - depth * 30, 7629 Math.max(0, 0.7 - depth * 0.1), 7630 5 + depth * 2, 7631 duration 7632 ); 7633 } else { 7634 this.animateCard(card, 1, 100, 0, 0, duration); 7635 } 7636 }); 7637 7638 this.updateProgressIndicator(); 7639 } 7640 7641 animateCard(card, targetScale, targetY, targetOpacity, targetBlur, duration){ 7642 const startScale = parseFloat(card.style.getPropertyValue('--scale') || 1); 7643 const startY = this.getCurrentY(card); 7644 const startOpacity = parseFloat(card.style.getPropertyValue('--opacity') || 0); 7645 const startBlur = parseFloat(card.style.getPropertyValue('--blur') || 0); 7646 7647 if (!duration || duration <= 0) { 7648 this.setCardStyle(card, targetScale, targetY, targetOpacity, targetBlur); 7649 return; 7650 } 7651 7652 const startTime = performance.now(); 7653 const step = (now) => { 7654 const t = Math.min((now - startTime) / duration, 1); 7655 const e = 1 - Math.pow(1 - t, 3); // easeOutCubic 7656 7657 const s = startScale + (targetScale - startScale) * e; 7658 const y = startY + (targetY - startY) * e; 7659 const o = startOpacity + (targetOpacity - startOpacity) * e; 7660 const b = startBlur + (targetBlur - startBlur) * e; 7661 7662 this.setCardStyle(card, s, y, o, b); 7663 if (t < 1) requestAnimationFrame(step); 7664 }; 7665 requestAnimationFrame(step); 7666 } 7667 7668 getCurrentY(card){ 7669 const m = card.style.transform.match(/translateY\(([-\d.]+)px\)/); 7670 return m ? parseFloat(m[1]) : 0; 7671 } 7672 7673 updateProgressIndicator(){ 7674 const el = document.getElementById('current-card'); 7675 if (el) el.textContent = this.currentCardIndex + 1; 7676 } 7677} 7678 7679/* âââ inicjalizacja âââ */ 7680document.addEventListener('DOMContentLoaded', () => { 7681 document.querySelectorAll('.stack-roulette, #rouletter').forEach(sec => { 7682 sec._scrollCards = new ScrollCards(sec); 7683 }); 7684}); 7685window.addEventListener('load', () => { 7686 document.querySelectorAll('.stack-roulette, #rouletter').forEach(sec => { 7687 sec._scrollCards?.computeSegments(); 7688 sec._scrollCards?.recomputeOffsets(); 7689 }); 7690}); 7691</script>
7691 7692 7693<style> 7694 7695 7696 7697</style> 7698
7699<script src="https://unpkg.com/[email protected]/build/three.min.js"></script>
7699 7700
7701<script> 7702(function () { 7703 var CONTAINER_ID = "ai-workshop-3d"; 7704 var container = document.getElementById(CONTAINER_ID); 7705 if (!container) return; 7706 if (!window.THREE) { 7707 console.error("THREE.js not loaded"); 7708 return; 7709 } 7710 7711 var scene = new THREE.Scene(); 7712 var renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true }); 7713 renderer.setPixelRatio(Math.min(window.devicePixelRatio || 1, 2)); 7714 renderer.setClearColor(0x000000, 0); 7715 container.appendChild(renderer.domElement); 7716 7717 var camera = new THREE.PerspectiveCamera(25, 1, 0.1, 100); 7718 camera.position.set(0, 0, 10); 7719 7720 var ambient = new THREE.AmbientLight(0xffffff, 0.5); 7721 scene.add(ambient); 7722 7723 var dirLight = new THREE.DirectionalLight(0xffffff, 0.4); 7724 dirLight.position.set(5, 8, 10); 7725 scene.add(dirLight); 7726 7727 function rand(min, max) { 7728 return min + Math.random() * (max - min); 7729 } 7730 7731 var objects = []; 7732 7733 function createFloatingObject(geometry, basePos, colorHex) { 7734 var edges = new THREE.EdgesGeometry(geometry); 7735 var material = new THREE.LineBasicMaterial({ 7736 color: colorHex, 7737 transparent: true, 7738 opacity: 0.95 7739 }); 7740 7741 var mesh = new THREE.LineSegments(edges, material); 7742 mesh.position.copy(basePos); 7743 7744 mesh.userData = { 7745 baseY: basePos.y, 7746 floatSpeed: rand(0.4, 0.9), 7747 floatAmp: rand(0.25, 0.6), 7748 rotSpeedX: rand(0.1, 0.3), 7749 rotSpeedY: rand(0.1, 0.4) 7750 }; 7751 7752 scene.add(mesh); 7753 objects.push(mesh); 7754 } 7755 7756 var palette = [ 7757 0x7f5af0, 7758 0x2cb67d, 7759 0xffa800, 7760 0xfffffe 7761 ]; 7762 7763 7764 7765 7766 createFloatingObject( 7767 new THREE.OctahedronGeometry(0.6), 7768 new THREE.Vector3(0.5, -0.2, -1), 7769 palette[2] 7770 ); 7771 7772 7773 var particlesCount = 320; 7774 var positions = new Float32Array(particlesCount * 3); 7775 for (var i = 0; i < particlesCount; i++) { 7776 positions[i * 3 + 0] = rand(-5, 5); 7777 positions[i * 3 + 1] = rand(-3, 3); 7778 positions[i * 3 + 2] = rand(-4, 2); 7779 } 7780 var particlesGeom = new THREE.BufferGeometry(); 7781 particlesGeom.setAttribute("position", new THREE.BufferAttribute(positions, 3)); 7782 7783 var particlesMat = new THREE.PointsMaterial({ 7784 size: 0.04, 7785 color: 0xffffff, 7786 transparent: true, 7787 opacity: 0.65 7788 }); 7789 7790 var particles = new THREE.Points(particlesGeom, particlesMat); 7791 scene.add(particles); 7792 7793 var mouseX = 0; 7794 var mouseY = 0; 7795 var targetCamX = 0; 7796 var targetCamY = 0; 7797 7798 function onPointerMove(event) { 7799 var rect = container.getBoundingClientRect(); 7800 var x = (event.clientX - rect.left) / rect.width; 7801 var y = (event.clientY - rect.top) / rect.height; 7802 7803 mouseX = (x - 0.5) * 2; 7804 mouseY = (y - 0.5) * 2; 7805 7806 targetCamX = mouseX * 1.4; 7807 targetCamY = -mouseY * 1.0; 7808 } 7809 7810 container.addEventListener("pointermove", onPointerMove); 7811 7812 function onResize() { 7813 var w = window.innerWidth; 7814 var h = window.innerHeight; 7815 7816 camera.aspect = w / h; 7817 camera.updateProjectionMatrix(); 7818 7819 renderer.setSize(w, h, false); 7820 } 7821 7822 window.addEventListener("resize", onResize); 7823 onResize(); 7824 7825 var clock = new THREE.Clock(); 7826 7827 function animate() { 7828 requestAnimationFrame(animate); 7829 7830 var t = clock.getElapsedTime(); 7831 7832 for (var i = 0; i < objects.length; i++) { 7833 var m = objects[i]; 7834 var d = m.userData; 7835 m.position.y = d.baseY + Math.sin(t * d.floatSpeed + i) * d.floatAmp; 7836 m.rotation.x += d.rotSpeedX * 0.01; 7837 m.rotation.y += d.rotSpeedY * 0.01; 7838 } 7839 7840 particles.rotation.y = t * 0.02; 7841 7842 camera.position.x += (targetCamX - camera.position.x) * 0.06; 7843 camera.position.y += (targetCamY - camera.position.y) * 0.06; 7844 camera.lookAt(0, 0, 0); 7845 7846 renderer.render(scene, camera); 7847 } 7848 7849 animate(); 7850})(); 7851</script>
7851 7852 7853 7854
7854<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"f8d256af15704b37ac59ee5cd33b25ef","r":1,"spa":2}' crossorigin="anonymous"></script>
7854 7855</body> 7856</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.