{"version":3,"file":"shared-lib.DPzfxps-.mjs","names":["n","e","a","l","o","i","s","c","g","d","f","h","b","m","S","te","ue","se","de","pe","ye","x","$","E","T","R","_","p","u","Y","e.default","useMemo","useState","useRef","serializationHash","variantClassNames","Transition","React.useContext","React.useMemo","Variants","React.Fragment","humanReadableVariantMap","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","metadata","siteMetadata","__FramerMetadata__","Navigation","serializationHash","variantClassNames","getProps","useRef","React.useId","React.useMemo","metadataProvider","React.useContext","className","PropertyOverrides","__FramerMetadata__","__FramerMetadata__","__FramerMetadata__","useSyncExternalStore","_Fragment","maskImage","maskMode","maskRepeat","maskPosition","maskSize","SVG","getProps","Icon","className","getProps","className","Framer","Text","t","React.useContext","React.useMemo","React.Fragment","useRef","React.useId","className"],"sources":["https:/ga.jspm.io/npm:react-dom@18.2.0/server.browser.js","https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framer.com/m/framer/default-utils.js","https:/framerusercontent.com/modules/o1PI5S8YtkA5bP5g4dFz/Xr8CO3Ul8Gb7lVfgMKTh/Embed.js","https:/framerusercontent.com/modules/vDcWO9twsr8I5XTyxkQk/OqvO0HrgJW4vkeOsBCwh/fdY7TfQrS.js","https:/framerusercontent.com/modules/TwoBXY1qLn4EaDLSIhLe/9L6p1zzLtPjUA67Aiz01/iMPMKmi_t.js","https:/framerusercontent.com/modules/iVzJRdTx5BBKLzIl5iQ3/eVkNkIGsnsufE0Wc0evy/siteMetadata.js","https:/framerusercontent.com/modules/Ph55g7GI0ia8LQ5O7we1/YglJPG2EApuj885p2Jig/ZWQj06frN.js","https:/framerusercontent.com/modules/Wxd13QLoXfBa5FOXuolp/fN73S9lhTnTUEkj7RjVU/ZWQj06frN.js","https:/framerusercontent.com/modules/niTKUIq7gFP3rkl2YZ8W/nwEm7yUv1egfucORjZLR/snippets.js","https:/framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js","https:/framer.com/m/framer/SitesNotFoundPage.js@1.4.0","https:/framerusercontent.com/modules/gHq0X0Tq3Bov414yjLXK/MareZLDFu3yAaERz5qaC/Click.js","https:/framerusercontent.com/modules/Fsj5Q1wuxJqcJKikrUcr/DWPTg36TPcxWwMyIKjQB/L33Hu7YVx.js","https:/framerusercontent.com/modules/OW7AYQ4a6z9WWvElhH6S/qf8XQgO3ASsbBnwlgbKi/XCOJBBdvI.js","https:/framerusercontent.com/modules/kr6mBIQPAjMiv35rQa3A/JqQCEBMftp0u8SBv29R5/PX9hIOIVM.js"],"sourcesContent":["import*as e from\"react\";var n=\"default\"in e?e.default:e;var a={};var o=n;function l$2(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var l=Object.prototype.hasOwnProperty,i=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,s={},c={};function ja$1(e){if(l.call(c,e))return!0;if(l.call(s,e))return!1;if(i.test(e))return c[e]=!0;s[e]=!0;return!1}function r(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var d={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){d[e]=new r(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];d[n]=new r(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){d[e]=new r(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){d[e]=new r(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){d[e]=new r(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){d[e]=new r(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){d[e]=new r(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){d[e]=new r(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){d[e]=new r(e,5,!1,e.toLowerCase(),null,!1,!1)}));var f=/[\\-:]([a-z])/g;function la$1(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(f,la$1);d[n]=new r(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!1,!1)}));d.xlinkHref=new r(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){d[e]=new r(e,1,!1,e.toLowerCase(),null,!0,!0)}));var h={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},g=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(h).forEach((function(e){g.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);h[n]=h[e]}))}));var b=/[\"'&<>]/;function v(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=b.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var m=/([A-Z])/g,S=/^ms-/,x=Array.isArray;function w$1(e,n){return{insertionMode:e,selectedValue:n}}function ra$1(e,n,a){switch(n){case\"select\":return w$1(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return w$1(2,null);case\"math\":return w$1(3,null);case\"foreignObject\":return w$1(1,null);case\"table\":return w$1(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return w$1(5,null);case\"colgroup\":return w$1(7,null);case\"tr\":return w$1(6,null)}return 4<=e.insertionMode||0===e.insertionMode?w$1(1,null):e}var $=new Map;function ta$1(e,n,a){if(\"object\"!==typeof a)throw Error(l$2(62));n=!0;for(var o in a)if(l.call(a,o)){var i=a[o];if(null!=i&&\"boolean\"!==typeof i&&\"\"!==i){if(0===o.indexOf(\"--\")){var s=v(o);i=v((\"\"+i).trim())}else{s=o;var c=$.get(s);void 0!==c||(c=v(s.replace(m,\"-$1\").toLowerCase().replace(S,\"-ms-\")),$.set(s,c)),s=c;i=\"number\"===typeof i?0===i||l.call(h,o)?\"\"+i:i+\"px\":v((\"\"+i).trim())}n?(n=!1,e.push(' style=\"',s,\":\",i)):e.push(\";\",s,\":\",i)}}n||e.push('\"')}function x$1(e,n,a,o){switch(a){case\"style\":ta$1(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=d.hasOwnProperty(a)?d[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=n.attributeName;switch(n.type){case 3:o&&e.push(\" \",a,'=\"\"');break;case 4:!0===o?e.push(\" \",a,'=\"\"'):!1!==o&&e.push(\" \",a,'=\"',v(o),'\"');break;case 5:isNaN(o)||e.push(\" \",a,'=\"',v(o),'\"');break;case 6:!isNaN(o)&&1<=o&&e.push(\" \",a,'=\"',v(o),'\"');break;default:n.sanitizeURL&&(o=\"\"+o),e.push(\" \",a,'=\"',v(o),'\"')}}else if(ja$1(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(\" \",a,'=\"',v(o),'\"')}}function y$1(e,n,a){if(null!=n){if(null!=a)throw Error(l$2(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(l$2(61));n=n.__html;null!==n&&void 0!==n&&e.push(\"\"+n)}}function ua$1(e){var n=\"\";o.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}function va$1(e,n,a,o){e.push(A(a));var i,s=a=null;for(i in n)if(l.call(n,i)){var c=n[i];if(null!=c)switch(i){case\"children\":a=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:x$1(e,o,i,c)}}e.push(\">\");y$1(e,s,a);return\"string\"===typeof a?(e.push(v(a)),null):a}var E=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,T=new Map;function A(e){var n=T.get(e);if(void 0===n){if(!E.test(e))throw Error(l$2(65,e));n=\"<\"+e;T.set(e,n)}return n}function ya$1(e,n,a,o,i){switch(n){case\"select\":e.push(A(\"select\"));var s=null,c=null;for(g in a)if(l.call(a,g)){var d=a[g];if(null!=d)switch(g){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"defaultValue\":case\"value\":break;default:x$1(e,o,g,d)}}e.push(\">\");y$1(e,c,s);return s;case\"option\":c=i.selectedValue;e.push(A(\"option\"));var f=d=null,h=null;var g=null;for(s in a)if(l.call(a,s)){var b=a[s];if(null!=b)switch(s){case\"children\":d=b;break;case\"selected\":h=b;break;case\"dangerouslySetInnerHTML\":g=b;break;case\"value\":f=b;default:x$1(e,o,s,b)}}if(null!=c)if(a=null!==f?\"\"+f:ua$1(d),x(c)){for(o=0;o<c.length;o++)if(\"\"+c[o]===a){e.push(' selected=\"\"');break}}else\"\"+c===a&&e.push(' selected=\"\"');else h&&e.push(' selected=\"\"');e.push(\">\");y$1(e,g,d);return d;case\"textarea\":e.push(A(\"textarea\"));g=c=s=null;for(d in a)if(l.call(a,d)&&(f=a[d],null!=f))switch(d){case\"children\":g=f;break;case\"value\":s=f;break;case\"defaultValue\":c=f;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(91));default:x$1(e,o,d,f)}null===s&&null!==c&&(s=c);e.push(\">\");if(null!=g){if(null!=s)throw Error(l$2(92));if(x(g)&&1<g.length)throw Error(l$2(93));s=\"\"+g}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");null!==s&&e.push(v(\"\"+s));return null;case\"input\":e.push(A(\"input\"));f=g=d=s=null;for(c in a)if(l.call(a,c)&&(h=a[c],null!=h))switch(c){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,\"input\"));case\"defaultChecked\":f=h;break;case\"defaultValue\":d=h;break;case\"checked\":g=h;break;case\"value\":s=h;break;default:x$1(e,o,c,h)}null!==g?x$1(e,o,\"checked\",g):null!==f&&x$1(e,o,\"checked\",f);null!==s?x$1(e,o,\"value\",s):null!==d&&x$1(e,o,\"value\",d);e.push(\"/>\");return null;case\"menuitem\":e.push(A(\"menuitem\"));for(var m in a)if(l.call(a,m)&&(s=a[m],null!=s))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(400));default:x$1(e,o,m,s)}e.push(\">\");return null;case\"title\":e.push(A(\"title\"));s=null;for(b in a)if(l.call(a,b)&&(c=a[b],null!=c))switch(b){case\"children\":s=c;break;case\"dangerouslySetInnerHTML\":throw Error(l$2(434));default:x$1(e,o,b,c)}e.push(\">\");return s;case\"listing\":case\"pre\":e.push(A(n));c=s=null;for(f in a)if(l.call(a,f)&&(d=a[f],null!=d))switch(f){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;default:x$1(e,o,f,d)}e.push(\">\");if(null!=c){if(null!=s)throw Error(l$2(60));if(\"object\"!==typeof c||!(\"__html\"in c))throw Error(l$2(61));a=c.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(\"\\n\",a):e.push(\"\"+a))}\"string\"===typeof s&&\"\\n\"===s[0]&&e.push(\"\\n\");return s;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(A(n));for(var S in a)if(l.call(a,S)&&(s=a[S],null!=s))switch(S){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(l$2(399,n));default:x$1(e,o,S,s)}e.push(\"/>\");return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return va$1(e,a,n,o);case\"html\":return 0===i.insertionMode&&e.push(\"<!DOCTYPE html>\"),va$1(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return va$1(e,a,n,o);e.push(A(n));c=s=null;for(h in a)if(l.call(a,h)&&(d=a[h],null!=d))switch(h){case\"children\":s=d;break;case\"dangerouslySetInnerHTML\":c=d;break;case\"style\":ta$1(e,o,d);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ja$1(h)&&\"function\"!==typeof d&&\"symbol\"!==typeof d&&e.push(\" \",h,'=\"',v(d),'\"')}e.push(\">\");y$1(e,c,s);return s}}function za$1(e,n,a){e.push('\\x3c!--$?--\\x3e<template id=\"');if(null===a)throw Error(l$2(395));e.push(a);return e.push('\"></template>')}function Aa$1(e,n,a,o){switch(a.insertionMode){case 0:case 1:return e.push('<div hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 2:return e.push('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 3:return e.push('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 4:return e.push('<table hidden id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 5:return e.push('<table hidden><tbody id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 6:return e.push('<table hidden><tr id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');case 7:return e.push('<table hidden><colgroup id=\"'),e.push(n.segmentPrefix),n=o.toString(16),e.push(n),e.push('\">');default:throw Error(l$2(397))}}function Ba$1(e,n){switch(n.insertionMode){case 0:case 1:return e.push(\"</div>\");case 2:return e.push(\"</svg>\");case 3:return e.push(\"</math>\");case 4:return e.push(\"</table>\");case 5:return e.push(\"</tbody></table>\");case 6:return e.push(\"</tr></table>\");case 7:return e.push(\"</colgroup></table>\");default:throw Error(l$2(397))}}var R=/[<\\u2028\\u2029]/g;function Da$1(e){return JSON.stringify(e).replace(R,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}function Ea$1(e,n){n=void 0===n?\"\":n;return{bootstrapChunks:[],startInlineScript:\"<script>\",placeholderPrefix:n+\"P:\",segmentPrefix:n+\"S:\",boundaryPrefix:n+\"B:\",idPrefix:n,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1,generateStaticMarkup:e}}function Fa$1(e,n,a,o){if(a.generateStaticMarkup)return e.push(v(n)),!1;\"\"===n?e=o:(o&&e.push(\"\\x3c!-- --\\x3e\"),e.push(v(n)),e=!0);return e}var _=Object.assign,I=Symbol.for(\"react.element\"),B=Symbol.for(\"react.portal\"),N=Symbol.for(\"react.fragment\"),z=Symbol.for(\"react.strict_mode\"),V=Symbol.for(\"react.profiler\"),j=Symbol.for(\"react.provider\"),O=Symbol.for(\"react.context\"),H=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),K=Symbol.for(\"react.suspense_list\"),ee=Symbol.for(\"react.memo\"),te=Symbol.for(\"react.lazy\"),ne=Symbol.for(\"react.scope\"),re=Symbol.for(\"react.debug_trace_mode\"),ae=Symbol.for(\"react.legacy_hidden\"),oe=Symbol.for(\"react.default_value\"),le=Symbol.iterator;function Xa$1(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case N:return\"Fragment\";case B:return\"Portal\";case V:return\"Profiler\";case z:return\"StrictMode\";case U:return\"Suspense\";case K:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case O:return(e.displayName||\"Context\")+\".Consumer\";case j:return(e._context.displayName||\"Context\")+\".Provider\";case H:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case ee:return n=e.displayName||null,null!==n?n:Xa$1(e.type)||\"Memo\";case te:n=e._payload;e=e._init;try{return Xa$1(e(n))}catch(e){}}return null}var ue={};function Za$1(e,n){e=e.contextTypes;if(!e)return ue;var a,o={};for(a in e)o[a]=n[a];return o}var ie=null;function F(e,n){if(e!==n){e.context._currentValue2=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(l$2(401))}else{if(null===a)throw Error(l$2(401));F(e,a)}n.context._currentValue2=n.value}}function $a$1(e){e.context._currentValue2=e.parentValue;e=e.parent;null!==e&&$a$1(e)}function ab$1(e){var n=e.parent;null!==n&&ab$1(n);e.context._currentValue2=e.value}function bb$1(e,n){e.context._currentValue2=e.parentValue;e=e.parent;if(null===e)throw Error(l$2(402));e.depth===n.depth?F(e,n):bb$1(e,n)}function cb$1(e,n){var a=n.parent;if(null===a)throw Error(l$2(402));e.depth===a.depth?F(e,a):cb$1(e,a);n.context._currentValue2=n.value}function G(e){var n=ie;n!==e&&(null===n?ab$1(e):null===e?$a$1(n):n.depth===e.depth?F(n,e):n.depth>e.depth?bb$1(n,e):cb$1(n,e),ie=e)}var se={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function eb$1(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=se;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue2:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:_({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&se.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=_({},i,c)):_(i,c))}e.state=i}else i.queue=null}var ce={id:1,overflow:\"\"};function gb$1(e,n,a){var o=e.id;e=e.overflow;var l=32-de(o)-1;o&=~(1<<l);a+=1;var i=32-de(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-de(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var de=Math.clz32?Math.clz32:hb$1,fe=Math.log,pe=Math.LN2;function hb$1(e){e>>>=0;return 0===e?32:31-(fe(e)/pe|0)|0}function kb$1(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var he=\"function\"===typeof Object.is?Object.is:kb$1,ge=null,be=null,me=null,ye=null,ve=!1,ke=!1,we=0,Se=null,xe=0;function Q$1(){if(null===ge)throw Error(l$2(321));return ge}function pb$1(){if(0<xe)throw Error(l$2(312));return{memoizedState:null,queue:null,next:null}}function qb$1(){null===ye?null===me?(ve=!1,me=ye=pb$1()):(ve=!0,ye=me):null===ye.next?(ve=!1,ye=ye.next=pb$1()):(ve=!0,ye=ye.next);return ye}function rb$1(){be=ge=null;ke=!1;me=null;xe=0;ye=Se=null}function sb$1(e,n){return\"function\"===typeof n?n(e):n}function tb$1(e,n,a){ge=Q$1();ye=qb$1();if(ve){var o=ye.queue;n=o.dispatch;if(null!==Se&&(a=Se.get(o),void 0!==a)){Se.delete(o);o=ye.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);ye.memoizedState=o;return[o,n]}return[ye.memoizedState,n]}e=e===sb$1?\"function\"===typeof n?n():n:void 0!==a?a(n):n;ye.memoizedState=e;e=ye.queue={last:null,dispatch:null};e=e.dispatch=ub$1.bind(null,ge,e);return[ye.memoizedState,e]}function vb$1(e,n){ge=Q$1();ye=qb$1();n=void 0===n?null:n;if(null!==ye){var a=ye.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!he(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();ye.memoizedState=[e,n];return e}function ub$1(e,n,a){if(25<=xe)throw Error(l$2(301));if(e===ge)if(ke=!0,e={action:a,next:null},null===Se&&(Se=new Map),a=Se.get(n),void 0===a)Se.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function wb$1(){throw Error(l$2(394))}function R$1(){}var $e={readContext:function(e){return e._currentValue2},useContext:function(e){Q$1();return e._currentValue2},useMemo:vb$1,useReducer:tb$1,useRef:function(e){ge=Q$1();ye=qb$1();var n=ye.memoizedState;return null===n?(e={current:e},ye.memoizedState=e):n},useState:function(e){return tb$1(sb$1,e)},useInsertionEffect:R$1,useLayoutEffect:function(){},useCallback:function(e,n){return vb$1((function(){return e}),n)},useImperativeHandle:R$1,useEffect:R$1,useDebugValue:R$1,useDeferredValue:function(e){Q$1();return e},useTransition:function(){Q$1();return[!1,wb$1]},useId:function(){var e=be.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-de(e)-1)).toString(32)+n;var a=Ce;if(null===a)throw Error(l$2(404));n=we++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){Q$1();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(l$2(407));return a()}},Ce=null,Ee=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function zb$1(e){console.error(e);return null}function T$1(){}function Ab$1(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?zb$1:l,onAllReady:void 0===i?T$1:i,onShellReady:void 0===s?T$1:s,onShellError:void 0===c?T$1:c,onFatalError:void 0===d?T$1:d};a=U$1(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Bb$1(n,e,null,a,h,ue,null,ce);f.push(e);return n}function Bb$1(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Cb$1(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function U$1(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function V$1(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function W$1(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,e.destination.destroy(n)):(e.status=1,e.fatalError=n)}function Db$1(e,n,a,o,l){ge={};be=n;we=0;for(e=a(o,l);ke;)ke=!1,we=0,xe+=1,ye=null,e=a(o,l);rb$1();return e}function Eb$1(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(l$2(108,Xa$1(o)||\"Unknown\",c));o=_({},s,a)}n.legacyContext=o;X$1(e,n,l);n.legacyContext=s}else X$1(e,n,l)}function Fb(e,n){if(e&&e.defaultProps){n=_({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Gb$1(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=Za$1(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue2:l);eb$1(i,a,o,l);Eb$1(e,n,i,a)}else{i=Za$1(a,n.legacyContext);l=Db$1(e,n,a,o,i);var s=0!==we;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)eb$1(l,a,o,i),Eb$1(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=gb$1(o,1,0);try{X$1(e,n,l)}finally{n.treeContext=o}}else X$1(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case ae:case re:case z:case V:case N:X$1(e,n,o.children);return;case K:X$1(e,n,o.children);return;case ne:throw Error(l$2(343));case U:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=U$1(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=U$1(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if(Hb$1(e,n,o),e.responseState.generateStaticMarkup||f.lastPushedText&&f.textEmbedded&&f.chunks.push(\"\\x3c!-- --\\x3e\"),f.status=1,Y$1(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=V$1(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Bb$1(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case H:o=Db$1(e,n,a.render,o,l);if(0!==we){a=n.treeContext;n.treeContext=gb$1(a,1,0);try{X$1(e,n,o)}finally{n.treeContext=a}}else X$1(e,n,o);return;case ee:a=a.type;o=Fb(a,o);Gb$1(e,n,a,o,l);return;case j:l=o.children;a=a._context;o=o.value;i=a._currentValue2;a._currentValue2=o;s=ie;ie=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;X$1(e,n,l);e=ie;if(null===e)throw Error(l$2(403));o=e.parentValue;e.context._currentValue2=o===oe?e.context._defaultValue:o;e=ie=e.parent;n.context=e;return;case O:o=o.children;o=o(a._currentValue2);X$1(e,n,o);return;case te:l=a._init;a=l(a._payload);o=Fb(a,o);Gb$1(e,n,a,o,void 0);return}throw Error(l$2(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=ya$1(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=ra$1(s,a,o);Hb$1(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(\"</\",a,\">\")}l.lastPushedText=!1}}function X$1(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case I:Gb$1(e,n,a.type,a.props,a.ref);return;case B:throw Error(l$2(257));case te:var o=a._init;a=o(a._payload);X$1(e,n,a);return}if(x(a)){Ib$1(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=le&&a[le]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);Ib$1(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(l$2(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Fa$1(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function Ib$1(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=gb$1(i,o,l);try{Hb$1(e,n,a[l])}finally{n.treeContext=i}}}function Hb$1(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return X$1(e,n,a)}catch(d){if(rb$1(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,G(i),d;a=d;var s=n.blockedSegment,c=U$1(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Bb$1(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;G(i)}}function Jb$1(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;Kb$1(this,n,e)}function Lb$1(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.push(null))):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(l$2(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return Lb$1(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function Y$1(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&Y$1(e,a)}else e.completedSegments.push(n)}function Kb$1(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(l$2(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=T$1,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&Y$1(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(Jb$1,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(Y$1(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Cb$1(e){if(2!==e.status){var n=ie,a=Ee.current;Ee.current=$e;var o=Ce;Ce=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){G(s.context);try{X$1(c,s,s.node),c.responseState.generateStaticMarkup||d.lastPushedText&&d.textEmbedded&&d.chunks.push(\"\\x3c!-- --\\x3e\"),s.abortSet.delete(s),d.status=1,Kb$1(c,s.blockedBoundary,d)}catch(e){if(rb$1(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=V$1(c,g);null===h?W$1(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}finally{Ce=o,Ee.current=a,a===$e&&G(n)}}}function Z$1(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;n.push('<template id=\"');n.push(e.placeholderPrefix);e=o.toString(16);n.push(e);return n.push('\"></template>');case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)n.push(o[i]);l=Nb$1(e,n,l)}for(;i<o.length-1;i++)n.push(o[i]);i<o.length&&(l=n.push(o[i]));return l;default:throw Error(l$2(390))}}function Nb$1(e,n,a){var o=a.boundary;if(null===o)return Z$1(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)return e.responseState.generateStaticMarkup||(o=o.errorDigest,n.push(\"\\x3c!--$!--\\x3e\"),n.push(\"<template\"),o&&(n.push(' data-dgst=\"'),o=v(o),n.push(o),n.push('\"')),n.push(\"></template>\")),Z$1(e,n,a),e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\"),e;if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=l.boundaryPrefix+i.toString(16);o=o.id=l;za$1(n,e.responseState,o);Z$1(e,n,a);return n.push(\"\\x3c!--/$--\\x3e\")}if(o.byteSize>e.progressiveChunkSize)return o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),za$1(n,e.responseState,o.id),Z$1(e,n,a),n.push(\"\\x3c!--/$--\\x3e\");e.responseState.generateStaticMarkup||n.push(\"\\x3c!--$--\\x3e\");a=o.completedSegments;if(1!==a.length)throw Error(l$2(391));Nb$1(e,n,a[0]);e=!!e.responseState.generateStaticMarkup||n.push(\"\\x3c!--/$--\\x3e\");return e}function Ob$1(e,n,a){Aa$1(n,e.responseState,a.formatContext,a.id);Nb$1(e,n,a);return Ba$1(n,a.formatContext)}function Pb$1(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)Qb$1(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;n.push(e.startInlineScript);e.sentCompleteBoundaryFunction?n.push('$RC(\"'):(e.sentCompleteBoundaryFunction=!0,n.push('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'));if(null===o)throw Error(l$2(395));a=a.toString(16);n.push(o);n.push('\",\"');n.push(e.segmentPrefix);n.push(a);return n.push('\")<\\/script>')}function Qb$1(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(l$2(392));return Ob$1(e,n,o)}Ob$1(e,n,o);e=e.responseState;n.push(e.startInlineScript);e.sentCompleteSegmentFunction?n.push('$RS(\"'):(e.sentCompleteSegmentFunction=!0,n.push('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'));n.push(e.segmentPrefix);l=l.toString(16);n.push(l);n.push('\",\"');n.push(e.placeholderPrefix);n.push(l);return n.push('\")<\\/script>')}function Mb$1(e,n){try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){Nb$1(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)n.push(o[a]);a<o.length&&n.push(o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;o.push(c.startInlineScript);c.sentClientRenderFunction?o.push('$RX(\"'):(c.sentClientRenderFunction=!0,o.push('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'));if(null===d)throw Error(l$2(395));o.push(d);o.push('\"');if(f||h||g){o.push(\",\");var b=Da$1(f||\"\");o.push(b)}if(h||g){o.push(\",\");var m=Da$1(h||\"\");o.push(m)}if(g){o.push(\",\");var S=Da$1(g);o.push(S)}if(!o.push(\")<\\/script>\")){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var x=e.completedBoundaries;for(l=0;l<x.length;l++)if(!Pb$1(e,n,x[l])){e.destination=null;l++;x.splice(0,l);return}x.splice(0,l);var $=e.partialBoundaries;for(l=0;l<$.length;l++){var E=$[l];e:{i=e;s=n;var T=E.completedSegments;for(c=0;c<T.length;c++)if(!Qb$1(i,s,E,T[c])){c++;T.splice(0,c);var R=!1;break e}T.splice(0,c);R=!0}if(!R){e.destination=null;l++;$.splice(0,l);return}}$.splice(0,l);var _=e.completedBoundaries;for(l=0;l<_.length;l++)if(!Pb$1(e,n,_[l])){e.destination=null;l++;_.splice(0,l);return}_.splice(0,l)}finally{0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.push(null)}}function Rb$1(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return Lb$1(a,e,n)}));a.clear();null!==e.destination&&Mb$1(e,e.destination)}catch(n){V$1(e,n),W$1(e,n)}}function Sb$1(){}function Tb$1(e,n,a,o){var l=!1,i=null,s=\"\",c={push:function(e){null!==e&&(s+=e);return!0},destroy:function(e){l=!0;i=e}},d=!1;e=Ab$1(e,Ea$1(a,n?n.identifierPrefix:void 0),{insertionMode:1,selectedValue:null},Infinity,Sb$1,void 0,(function(){d=!0}),void 0,void 0);Cb$1(e);Rb$1(e,o);if(1===e.status)e.status=2,c.destroy(e.fatalError);else if(2!==e.status&&null===e.destination){e.destination=c;try{Mb$1(e,c)}catch(n){V$1(e,n),W$1(e,n)}}if(l)throw i;if(!d)throw Error(l$2(426));return s}a.renderToNodeStream=function(){throw Error(l$2(207))};a.renderToStaticMarkup=function(e,n){return Tb$1(e,n,!0,'The server used \"renderToStaticMarkup\" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.renderToStaticNodeStream=function(){throw Error(l$2(208))};a.renderToString=function(e,n){return Tb$1(e,n,!1,'The server used \"renderToString\" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server')};a.version=\"18.2.0\";var Fe=\"default\"in e?e.default:e;var Te={};var Re=Fe;function k(e){for(var n=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+e,a=1;a<arguments.length;a++)n+=\"&args[]=\"+encodeURIComponent(arguments[a]);return\"Minified React error #\"+e+\"; visit \"+n+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var Pe=null,_e=0;function p(e,n){if(0!==n.length)if(512<n.length)0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=new Uint8Array(512),_e=0),e.enqueue(n);else{var a=Pe.length-_e;a<n.length&&(0===a?e.enqueue(Pe):(Pe.set(n.subarray(0,a),_e),e.enqueue(Pe),n=n.subarray(a)),Pe=new Uint8Array(512),_e=0);Pe.set(n,_e);_e+=n.length}}function t(e,n){p(e,n);return!0}function ba(e){Pe&&0<_e&&(e.enqueue(new Uint8Array(Pe.buffer,0,_e)),Pe=null,_e=0)}var Me=new TextEncoder;function u(e){return Me.encode(e)}function w(e){return Me.encode(e)}function da(e,n){\"function\"===typeof e.error?e.error(n):e.close()}var Ie=Object.prototype.hasOwnProperty,De=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,Be={},Ne={};function ia(e){if(Ie.call(Ne,e))return!0;if(Ie.call(Be,e))return!1;if(De.test(e))return Ne[e]=!0;Be[e]=!0;return!1}function y(e,n,a,o,l,i,s){this.acceptsBooleans=2===n||3===n||4===n;this.attributeName=o;this.attributeNamespace=l;this.mustUseProperty=a;this.propertyName=e;this.type=n;this.sanitizeURL=i;this.removeEmptyString=s}var ze={};\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach((function(e){ze[e]=new y(e,0,!1,e,null,!1,!1)}));[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach((function(e){var n=e[0];ze[n]=new y(n,1,!1,e[1],null,!1,!1)}));[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach((function(e){ze[e]=new y(e,2,!1,e.toLowerCase(),null,!1,!1)}));[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach((function(e){ze[e]=new y(e,2,!1,e,null,!1,!1)}));\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach((function(e){ze[e]=new y(e,3,!1,e.toLowerCase(),null,!1,!1)}));[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach((function(e){ze[e]=new y(e,3,!0,e,null,!1,!1)}));[\"capture\",\"download\"].forEach((function(e){ze[e]=new y(e,4,!1,e,null,!1,!1)}));[\"cols\",\"rows\",\"size\",\"span\"].forEach((function(e){ze[e]=new y(e,6,!1,e,null,!1,!1)}));[\"rowSpan\",\"start\"].forEach((function(e){ze[e]=new y(e,5,!1,e.toLowerCase(),null,!1,!1)}));var Ve=/[\\-:]([a-z])/g;function ka(e){return e[1].toUpperCase()}\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,null,!1,!1)}));\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/1999/xlink\",!1,!1)}));[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach((function(e){var n=e.replace(Ve,ka);ze[n]=new y(n,1,!1,e,\"http://www.w3.org/XML/1998/namespace\",!1,!1)}));[\"tabIndex\",\"crossOrigin\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!1,!1)}));ze.xlinkHref=new y(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach((function(e){ze[e]=new y(e,1,!1,e.toLowerCase(),null,!0,!0)}));var Ae={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Le=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(Ae).forEach((function(e){Le.forEach((function(n){n=n+e.charAt(0).toUpperCase()+e.substring(1);Ae[n]=Ae[e]}))}));var je=/[\"'&<>]/;function C(e){if(\"boolean\"===typeof e||\"number\"===typeof e)return\"\"+e;e=\"\"+e;var n=je.exec(e);if(n){var a,o=\"\",l=0;for(a=n.index;a<e.length;a++){switch(e.charCodeAt(a)){case 34:n=\"&quot;\";break;case 38:n=\"&amp;\";break;case 39:n=\"&#x27;\";break;case 60:n=\"&lt;\";break;case 62:n=\"&gt;\";break;default:continue}l!==a&&(o+=e.substring(l,a));l=a+1;o+=n}e=l!==a?o+e.substring(l,a):o}return e}var Oe=/([A-Z])/g,qe=/^ms-/,We=Array.isArray,He=w(\"<script>\"),Ue=w(\"<\\/script>\"),Ze=w('<script src=\"'),Xe=w('<script type=\"module\" src=\"'),Je=w('\" async=\"\"><\\/script>'),Ge=/(<\\/|<)(s)(cript)/gi;function ya(e,n,a,o){return n+(\"s\"===a?\"\\\\u0073\":\"\\\\u0053\")+o}function za(e,n,a,o,l){e=void 0===e?\"\":e;n=void 0===n?He:w('<script nonce=\"'+C(n)+'\">');var i=[];void 0!==a&&i.push(n,u((\"\"+a).replace(Ge,ya)),Ue);if(void 0!==o)for(a=0;a<o.length;a++)i.push(Ze,u(C(o[a])),Je);if(void 0!==l)for(o=0;o<l.length;o++)i.push(Xe,u(C(l[o])),Je);return{bootstrapChunks:i,startInlineScript:n,placeholderPrefix:w(e+\"P:\"),segmentPrefix:w(e+\"S:\"),boundaryPrefix:e+\"B:\",idPrefix:e,nextSuspenseID:0,sentCompleteSegmentFunction:!1,sentCompleteBoundaryFunction:!1,sentClientRenderFunction:!1}}function D(e,n){return{insertionMode:e,selectedValue:n}}function Aa(e){return D(\"http://www.w3.org/2000/svg\"===e?2:\"http://www.w3.org/1998/Math/MathML\"===e?3:0,null)}function Ba(e,n,a){switch(n){case\"select\":return D(1,null!=a.value?a.value:a.defaultValue);case\"svg\":return D(2,null);case\"math\":return D(3,null);case\"foreignObject\":return D(1,null);case\"table\":return D(4,null);case\"thead\":case\"tbody\":case\"tfoot\":return D(5,null);case\"colgroup\":return D(7,null);case\"tr\":return D(6,null)}return 4<=e.insertionMode||0===e.insertionMode?D(1,null):e}var Qe=w(\"\\x3c!-- --\\x3e\");function Da(e,n,a,o){if(\"\"===n)return o;o&&e.push(Qe);e.push(u(C(n)));return!0}var Ye=new Map,Ke=w(' style=\"'),et=w(\":\"),tt=w(\";\");function Ia(e,n,a){if(\"object\"!==typeof a)throw Error(k(62));n=!0;for(var o in a)if(Ie.call(a,o)){var l=a[o];if(null!=l&&\"boolean\"!==typeof l&&\"\"!==l){if(0===o.indexOf(\"--\")){var i=u(C(o));l=u(C((\"\"+l).trim()))}else{i=o;var s=Ye.get(i);void 0!==s||(s=w(C(i.replace(Oe,\"-$1\").toLowerCase().replace(qe,\"-ms-\"))),Ye.set(i,s)),i=s;l=\"number\"===typeof l?0===l||Ie.call(Ae,o)?u(\"\"+l):u(l+\"px\"):u(C((\"\"+l).trim()))}n?(n=!1,e.push(Ke,i,et,l)):e.push(tt,i,et,l)}}n||e.push(at)}var nt=w(\" \"),rt=w('=\"'),at=w('\"'),ot=w('=\"\"');function J(e,n,a,o){switch(a){case\"style\":Ia(e,n,o);return;case\"defaultValue\":case\"defaultChecked\":case\"innerHTML\":case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":return}if(!(2<a.length)||\"o\"!==a[0]&&\"O\"!==a[0]||\"n\"!==a[1]&&\"N\"!==a[1])if(n=ze.hasOwnProperty(a)?ze[a]:null,null!==n){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(!n.acceptsBooleans)return}a=u(n.attributeName);switch(n.type){case 3:o&&e.push(nt,a,ot);break;case 4:!0===o?e.push(nt,a,ot):!1!==o&&e.push(nt,a,rt,u(C(o)),at);break;case 5:isNaN(o)||e.push(nt,a,rt,u(C(o)),at);break;case 6:!isNaN(o)&&1<=o&&e.push(nt,a,rt,u(C(o)),at);break;default:n.sanitizeURL&&(o=\"\"+o),e.push(nt,a,rt,u(C(o)),at)}}else if(ia(a)){switch(typeof o){case\"function\":case\"symbol\":return;case\"boolean\":if(n=a.toLowerCase().slice(0,5),\"data-\"!==n&&\"aria-\"!==n)return}e.push(nt,u(a),rt,u(C(o)),at)}}var lt=w(\">\"),ut=w(\"/>\");function L(e,n,a){if(null!=n){if(null!=a)throw Error(k(60));if(\"object\"!==typeof n||!(\"__html\"in n))throw Error(k(61));n=n.__html;null!==n&&void 0!==n&&e.push(u(\"\"+n))}}function La(e){var n=\"\";Re.Children.forEach(e,(function(e){null!=e&&(n+=e)}));return n}var it=w(' selected=\"\"');function Na(e,n,a,o){e.push(M(a));var l,i=a=null;for(l in n)if(Ie.call(n,l)){var s=n[l];if(null!=s)switch(l){case\"children\":a=s;break;case\"dangerouslySetInnerHTML\":i=s;break;default:J(e,o,l,s)}}e.push(lt);L(e,i,a);return\"string\"===typeof a?(e.push(u(C(a))),null):a}var st=w(\"\\n\"),ct=/^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,dt=new Map;function M(e){var n=dt.get(e);if(void 0===n){if(!ct.test(e))throw Error(k(65,e));n=w(\"<\"+e);dt.set(e,n)}return n}var ft=w(\"<!DOCTYPE html>\");function Sa(e,n,a,o,l){switch(n){case\"select\":e.push(M(\"select\"));var i=null,s=null;for(h in a)if(Ie.call(a,h)){var c=a[h];if(null!=c)switch(h){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"defaultValue\":case\"value\":break;default:J(e,o,h,c)}}e.push(lt);L(e,s,i);return i;case\"option\":s=l.selectedValue;e.push(M(\"option\"));var d=c=null,f=null;var h=null;for(i in a)if(Ie.call(a,i)){var g=a[i];if(null!=g)switch(i){case\"children\":c=g;break;case\"selected\":f=g;break;case\"dangerouslySetInnerHTML\":h=g;break;case\"value\":d=g;default:J(e,o,i,g)}}if(null!=s)if(a=null!==d?\"\"+d:La(c),We(s)){for(o=0;o<s.length;o++)if(\"\"+s[o]===a){e.push(it);break}}else\"\"+s===a&&e.push(it);else f&&e.push(it);e.push(lt);L(e,h,c);return c;case\"textarea\":e.push(M(\"textarea\"));h=s=i=null;for(c in a)if(Ie.call(a,c)&&(d=a[c],null!=d))switch(c){case\"children\":h=d;break;case\"value\":i=d;break;case\"defaultValue\":s=d;break;case\"dangerouslySetInnerHTML\":throw Error(k(91));default:J(e,o,c,d)}null===i&&null!==s&&(i=s);e.push(lt);if(null!=h){if(null!=i)throw Error(k(92));if(We(h)&&1<h.length)throw Error(k(93));i=\"\"+h}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);null!==i&&e.push(u(C(\"\"+i)));return null;case\"input\":e.push(M(\"input\"));d=h=c=i=null;for(s in a)if(Ie.call(a,s)&&(f=a[s],null!=f))switch(s){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,\"input\"));case\"defaultChecked\":d=f;break;case\"defaultValue\":c=f;break;case\"checked\":h=f;break;case\"value\":i=f;break;default:J(e,o,s,f)}null!==h?J(e,o,\"checked\",h):null!==d&&J(e,o,\"checked\",d);null!==i?J(e,o,\"value\",i):null!==c&&J(e,o,\"value\",c);e.push(ut);return null;case\"menuitem\":e.push(M(\"menuitem\"));for(var b in a)if(Ie.call(a,b)&&(i=a[b],null!=i))switch(b){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(400));default:J(e,o,b,i)}e.push(lt);return null;case\"title\":e.push(M(\"title\"));i=null;for(g in a)if(Ie.call(a,g)&&(s=a[g],null!=s))switch(g){case\"children\":i=s;break;case\"dangerouslySetInnerHTML\":throw Error(k(434));default:J(e,o,g,s)}e.push(lt);return i;case\"listing\":case\"pre\":e.push(M(n));s=i=null;for(d in a)if(Ie.call(a,d)&&(c=a[d],null!=c))switch(d){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;default:J(e,o,d,c)}e.push(lt);if(null!=s){if(null!=i)throw Error(k(60));if(\"object\"!==typeof s||!(\"__html\"in s))throw Error(k(61));a=s.__html;null!==a&&void 0!==a&&(\"string\"===typeof a&&0<a.length&&\"\\n\"===a[0]?e.push(st,u(a)):e.push(u(\"\"+a)))}\"string\"===typeof i&&\"\\n\"===i[0]&&e.push(st);return i;case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":e.push(M(n));for(var m in a)if(Ie.call(a,m)&&(i=a[m],null!=i))switch(m){case\"children\":case\"dangerouslySetInnerHTML\":throw Error(k(399,n));default:J(e,o,m,i)}e.push(ut);return null;case\"annotation-xml\":case\"color-profile\":case\"font-face\":case\"font-face-src\":case\"font-face-uri\":case\"font-face-format\":case\"font-face-name\":case\"missing-glyph\":return Na(e,a,n,o);case\"html\":return 0===l.insertionMode&&e.push(ft),Na(e,a,n,o);default:if(-1===n.indexOf(\"-\")&&\"string\"!==typeof a.is)return Na(e,a,n,o);e.push(M(n));s=i=null;for(f in a)if(Ie.call(a,f)&&(c=a[f],null!=c))switch(f){case\"children\":i=c;break;case\"dangerouslySetInnerHTML\":s=c;break;case\"style\":Ia(e,o,c);break;case\"suppressContentEditableWarning\":case\"suppressHydrationWarning\":break;default:ia(f)&&\"function\"!==typeof c&&\"symbol\"!==typeof c&&e.push(nt,u(f),rt,u(C(c)),at)}e.push(lt);L(e,s,i);return i}}var pt=w(\"</\"),ht=w(\">\"),gt=w('<template id=\"'),bt=w('\"></template>'),mt=w(\"\\x3c!--$--\\x3e\"),yt=w('\\x3c!--$?--\\x3e<template id=\"'),vt=w('\"></template>'),kt=w(\"\\x3c!--$!--\\x3e\"),wt=w(\"\\x3c!--/$--\\x3e\"),St=w(\"<template\"),xt=w('\"'),$t=w(' data-dgst=\"');w(' data-msg=\"');w(' data-stck=\"');var Ct=w(\"></template>\");function fb(e,n,a){p(e,yt);if(null===a)throw Error(k(395));p(e,a);return t(e,vt)}var Et=w('<div hidden id=\"'),Ft=w('\">'),Tt=w(\"</div>\"),Rt=w('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),Pt=w('\">'),_t=w(\"</svg>\"),Mt=w('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),It=w('\">'),Dt=w(\"</math>\"),Bt=w('<table hidden id=\"'),Nt=w('\">'),zt=w(\"</table>\"),Vt=w('<table hidden><tbody id=\"'),At=w('\">'),Lt=w(\"</tbody></table>\"),jt=w('<table hidden><tr id=\"'),Ot=w('\">'),qt=w(\"</tr></table>\"),Wt=w('<table hidden><colgroup id=\"'),Ht=w('\">'),Ut=w(\"</colgroup></table>\");function Bb(e,n,a,o){switch(a.insertionMode){case 0:case 1:return p(e,Et),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ft);case 2:return p(e,Rt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Pt);case 3:return p(e,Mt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,It);case 4:return p(e,Bt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Nt);case 5:return p(e,Vt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,At);case 6:return p(e,jt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ot);case 7:return p(e,Wt),p(e,n.segmentPrefix),p(e,u(o.toString(16))),t(e,Ht);default:throw Error(k(397))}}function Cb(e,n){switch(n.insertionMode){case 0:case 1:return t(e,Tt);case 2:return t(e,_t);case 3:return t(e,Dt);case 4:return t(e,zt);case 5:return t(e,Lt);case 6:return t(e,qt);case 7:return t(e,Ut);default:throw Error(k(397))}}var Zt=w('function $RS(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'),Xt=w('$RS(\"'),Jt=w('\",\"'),Gt=w('\")<\\/script>'),Qt=w('function $RC(a,b){a=document.getElementById(a);b=document.getElementById(b);b.parentNode.removeChild(b);if(a){a=a.previousSibling;var f=a.parentNode,c=a.nextSibling,e=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d)if(0===e)break;else e--;else\"$\"!==d&&\"$?\"!==d&&\"$!\"!==d||e++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;b.firstChild;)f.insertBefore(b.firstChild,c);a.data=\"$\";a._reactRetry&&a._reactRetry()}};$RC(\"'),Yt=w('$RC(\"'),Kt=w('\",\"'),en=w('\")<\\/script>'),tn=w('function $RX(b,c,d,e){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),b._reactRetry&&b._reactRetry())};$RX(\"'),nn=w('$RX(\"'),rn=w('\"'),an=w(\")<\\/script>\"),on=w(\",\"),ln=/[<\\u2028\\u2029]/g;function Sb(e){return JSON.stringify(e).replace(ln,(function(e){switch(e){case\"<\":return\"\\\\u003c\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:throw Error(\"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\")}}))}var un=Object.assign,sn=Symbol.for(\"react.element\"),cn=Symbol.for(\"react.portal\"),dn=Symbol.for(\"react.fragment\"),fn=Symbol.for(\"react.strict_mode\"),pn=Symbol.for(\"react.profiler\"),hn=Symbol.for(\"react.provider\"),gn=Symbol.for(\"react.context\"),bn=Symbol.for(\"react.forward_ref\"),mn=Symbol.for(\"react.suspense\"),yn=Symbol.for(\"react.suspense_list\"),vn=Symbol.for(\"react.memo\"),kn=Symbol.for(\"react.lazy\"),wn=Symbol.for(\"react.scope\"),Sn=Symbol.for(\"react.debug_trace_mode\"),xn=Symbol.for(\"react.legacy_hidden\"),$n=Symbol.for(\"react.default_value\"),Cn=Symbol.iterator;function jc(e){if(null==e)return null;if(\"function\"===typeof e)return e.displayName||e.name||null;if(\"string\"===typeof e)return e;switch(e){case dn:return\"Fragment\";case cn:return\"Portal\";case pn:return\"Profiler\";case fn:return\"StrictMode\";case mn:return\"Suspense\";case yn:return\"SuspenseList\"}if(\"object\"===typeof e)switch(e.$$typeof){case gn:return(e.displayName||\"Context\")+\".Consumer\";case hn:return(e._context.displayName||\"Context\")+\".Provider\";case bn:var n=e.render;e=e.displayName;e||(e=n.displayName||n.name||\"\",e=\"\"!==e?\"ForwardRef(\"+e+\")\":\"ForwardRef\");return e;case vn:return n=e.displayName||null,null!==n?n:jc(e.type)||\"Memo\";case kn:n=e._payload;e=e._init;try{return jc(e(n))}catch(e){}}return null}var En={};function lc(e,n){e=e.contextTypes;if(!e)return En;var a,o={};for(a in e)o[a]=n[a];return o}var Fn=null;function P(e,n){if(e!==n){e.context._currentValue=e.parentValue;e=e.parent;var a=n.parent;if(null===e){if(null!==a)throw Error(k(401))}else{if(null===a)throw Error(k(401));P(e,a)}n.context._currentValue=n.value}}function mc(e){e.context._currentValue=e.parentValue;e=e.parent;null!==e&&mc(e)}function nc(e){var n=e.parent;null!==n&&nc(n);e.context._currentValue=e.value}function oc(e,n){e.context._currentValue=e.parentValue;e=e.parent;if(null===e)throw Error(k(402));e.depth===n.depth?P(e,n):oc(e,n)}function pc(e,n){var a=n.parent;if(null===a)throw Error(k(402));e.depth===a.depth?P(e,a):pc(e,a);n.context._currentValue=n.value}function Q(e){var n=Fn;n!==e&&(null===n?nc(e):null===e?mc(n):n.depth===e.depth?P(n,e):n.depth>e.depth?oc(n,e):pc(n,e),Fn=e)}var Tn={isMounted:function(){return!1},enqueueSetState:function(e,n){e=e._reactInternals;null!==e.queue&&e.queue.push(n)},enqueueReplaceState:function(e,n){e=e._reactInternals;e.replace=!0;e.queue=[n]},enqueueForceUpdate:function(){}};function rc(e,n,a,o){var l=void 0!==e.state?e.state:null;e.updater=Tn;e.props=a;e.state=l;var i={queue:[],replace:!1};e._reactInternals=i;var s=n.contextType;e.context=\"object\"===typeof s&&null!==s?s._currentValue:o;s=n.getDerivedStateFromProps;\"function\"===typeof s&&(s=s(a,l),l=null===s||void 0===s?l:un({},l,s),e.state=l);if(\"function\"!==typeof n.getDerivedStateFromProps&&\"function\"!==typeof e.getSnapshotBeforeUpdate&&(\"function\"===typeof e.UNSAFE_componentWillMount||\"function\"===typeof e.componentWillMount))if(n=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),n!==e.state&&Tn.enqueueReplaceState(e,e.state,null),null!==i.queue&&0<i.queue.length)if(n=i.queue,s=i.replace,i.queue=null,i.replace=!1,s&&1===n.length)e.state=n[0];else{i=s?n[0]:e.state;l=!0;for(s=s?1:0;s<n.length;s++){var c=n[s];c=\"function\"===typeof c?c.call(e,i,a,o):c;null!=c&&(l?(l=!1,i=un({},i,c)):un(i,c))}e.state=i}else i.queue=null}var Rn={id:1,overflow:\"\"};function tc(e,n,a){var o=e.id;e=e.overflow;var l=32-Pn(o)-1;o&=~(1<<l);a+=1;var i=32-Pn(n)+l;if(30<i){var s=l-l%5;i=(o&(1<<s)-1).toString(32);o>>=s;l-=s;return{id:1<<32-Pn(n)+l|a<<l|o,overflow:i+e}}return{id:1<<i|a<<l|o,overflow:e}}var Pn=Math.clz32?Math.clz32:vc,_n=Math.log,Mn=Math.LN2;function vc(e){e>>>=0;return 0===e?32:31-(_n(e)/Mn|0)|0}function yc(e,n){return e===n&&(0!==e||1/e===1/n)||e!==e&&n!==n}var In=\"function\"===typeof Object.is?Object.is:yc,Dn=null,Bn=null,Nn=null,zn=null,Vn=!1,An=!1,Ln=0,jn=null,On=0;function W(){if(null===Dn)throw Error(k(321));return Dn}function Ec(){if(0<On)throw Error(k(312));return{memoizedState:null,queue:null,next:null}}function Fc(){null===zn?null===Nn?(Vn=!1,Nn=zn=Ec()):(Vn=!0,zn=Nn):null===zn.next?(Vn=!1,zn=zn.next=Ec()):(Vn=!0,zn=zn.next);return zn}function Gc(){Bn=Dn=null;An=!1;Nn=null;On=0;zn=jn=null}function Hc(e,n){return\"function\"===typeof n?n(e):n}function Ic(e,n,a){Dn=W();zn=Fc();if(Vn){var o=zn.queue;n=o.dispatch;if(null!==jn&&(a=jn.get(o),void 0!==a)){jn.delete(o);o=zn.memoizedState;do{o=e(o,a.action),a=a.next}while(null!==a);zn.memoizedState=o;return[o,n]}return[zn.memoizedState,n]}e=e===Hc?\"function\"===typeof n?n():n:void 0!==a?a(n):n;zn.memoizedState=e;e=zn.queue={last:null,dispatch:null};e=e.dispatch=Jc.bind(null,Dn,e);return[zn.memoizedState,e]}function Kc(e,n){Dn=W();zn=Fc();n=void 0===n?null:n;if(null!==zn){var a=zn.memoizedState;if(null!==a&&null!==n){var o=a[1];e:if(null===o)o=!1;else{for(var l=0;l<o.length&&l<n.length;l++)if(!In(n[l],o[l])){o=!1;break e}o=!0}if(o)return a[0]}}e=e();zn.memoizedState=[e,n];return e}function Jc(e,n,a){if(25<=On)throw Error(k(301));if(e===Dn)if(An=!0,e={action:a,next:null},null===jn&&(jn=new Map),a=jn.get(n),void 0===a)jn.set(n,e);else{for(n=a;null!==n.next;)n=n.next;n.next=e}}function Lc(){throw Error(k(394))}function Mc(){}var qn={readContext:function(e){return e._currentValue},useContext:function(e){W();return e._currentValue},useMemo:Kc,useReducer:Ic,useRef:function(e){Dn=W();zn=Fc();var n=zn.memoizedState;return null===n?(e={current:e},zn.memoizedState=e):n},useState:function(e){return Ic(Hc,e)},useInsertionEffect:Mc,useLayoutEffect:function(){},useCallback:function(e,n){return Kc((function(){return e}),n)},useImperativeHandle:Mc,useEffect:Mc,useDebugValue:Mc,useDeferredValue:function(e){W();return e},useTransition:function(){W();return[!1,Lc]},useId:function(){var e=Bn.treeContext;var n=e.overflow;e=e.id;e=(e&~(1<<32-Pn(e)-1)).toString(32)+n;var a=Wn;if(null===a)throw Error(k(404));n=Ln++;e=\":\"+a.idPrefix+\"R\"+e;0<n&&(e+=\"H\"+n.toString(32));return e+\":\"},useMutableSource:function(e,n){W();return n(e._source)},useSyncExternalStore:function(e,n,a){if(void 0===a)throw Error(k(407));return a()}},Wn=null,Hn=Re.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher;function Qc(e){console.error(e);return null}function X(){}function Rc(e,n,a,o,l,i,s,c,d){var f=[],h=new Set;n={destination:null,responseState:n,progressiveChunkSize:void 0===o?12800:o,status:0,fatalError:null,nextSegmentId:0,allPendingTasks:0,pendingRootTasks:0,completedRootSegment:null,abortableTasks:h,pingedTasks:f,clientRenderedBoundaries:[],completedBoundaries:[],partialBoundaries:[],onError:void 0===l?Qc:l,onAllReady:void 0===i?X:i,onShellReady:void 0===s?X:s,onShellError:void 0===c?X:c,onFatalError:void 0===d?X:d};a=Sc(n,0,null,a,!1,!1);a.parentFlushed=!0;e=Tc(n,e,null,a,h,En,null,Rn);f.push(e);return n}function Tc(e,n,a,o,l,i,s,c){e.allPendingTasks++;null===a?e.pendingRootTasks++:a.pendingTasks++;var d={node:n,ping:function(){var n=e.pingedTasks;n.push(d);1===n.length&&Uc(e)},blockedBoundary:a,blockedSegment:o,abortSet:l,legacyContext:i,context:s,treeContext:c};l.add(d);return d}function Sc(e,n,a,o,l,i){return{status:0,id:-1,index:n,parentFlushed:!1,chunks:[],children:[],formatContext:o,boundary:a,lastPushedText:l,textEmbedded:i}}function Y(e,n){e=e.onError(n);if(null!=e&&\"string\"!==typeof e)throw Error('onError returned something with a type other than \"string\". onError should return a string and may return null or undefined but must not return anything else. It received something of type \"'+typeof e+'\" instead');return e}function Vc(e,n){var a=e.onShellError;a(n);a=e.onFatalError;a(n);null!==e.destination?(e.status=2,da(e.destination,n)):(e.status=1,e.fatalError=n)}function Wc(e,n,a,o,l){Dn={};Bn=n;Ln=0;for(e=a(o,l);An;)An=!1,Ln=0,On+=1,zn=null,e=a(o,l);Gc();return e}function Xc(e,n,a,o){var l=a.render(),i=o.childContextTypes;if(null!==i&&void 0!==i){var s=n.legacyContext;if(\"function\"!==typeof a.getChildContext)o=s;else{a=a.getChildContext();for(var c in a)if(!(c in i))throw Error(k(108,jc(o)||\"Unknown\",c));o=un({},s,a)}n.legacyContext=o;Z(e,n,l);n.legacyContext=s}else Z(e,n,l)}function Yc(e,n){if(e&&e.defaultProps){n=un({},n);e=e.defaultProps;for(var a in e)void 0===n[a]&&(n[a]=e[a]);return n}return n}function Zc(e,n,a,o,l){if(\"function\"===typeof a)if(a.prototype&&a.prototype.isReactComponent){l=lc(a,n.legacyContext);var i=a.contextType;i=new a(o,\"object\"===typeof i&&null!==i?i._currentValue:l);rc(i,a,o,l);Xc(e,n,i,a)}else{i=lc(a,n.legacyContext);l=Wc(e,n,a,o,i);var s=0!==Ln;if(\"object\"===typeof l&&null!==l&&\"function\"===typeof l.render&&void 0===l.$$typeof)rc(l,a,o,i),Xc(e,n,l,a);else if(s){o=n.treeContext;n.treeContext=tc(o,1,0);try{Z(e,n,l)}finally{n.treeContext=o}}else Z(e,n,l)}else{if(\"string\"!==typeof a){switch(a){case xn:case Sn:case fn:case pn:case dn:Z(e,n,o.children);return;case yn:Z(e,n,o.children);return;case wn:throw Error(k(343));case mn:e:{a=n.blockedBoundary;l=n.blockedSegment;i=o.fallback;o=o.children;s=new Set;var c={id:null,rootSegmentID:-1,parentFlushed:!1,pendingTasks:0,forceClientRender:!1,completedSegments:[],byteSize:0,fallbackAbortableTasks:s,errorDigest:null},d=Sc(e,l.chunks.length,c,l.formatContext,!1,!1);l.children.push(d);l.lastPushedText=!1;var f=Sc(e,0,null,l.formatContext,!1,!1);f.parentFlushed=!0;n.blockedBoundary=c;n.blockedSegment=f;try{if($c(e,n,o),f.lastPushedText&&f.textEmbedded&&f.chunks.push(Qe),f.status=1,ad(c,f),0===c.pendingTasks)break e}catch(n){f.status=4,c.forceClientRender=!0,c.errorDigest=Y(e,n)}finally{n.blockedBoundary=a,n.blockedSegment=l}n=Tc(e,i,a,d,s,n.legacyContext,n.context,n.treeContext);e.pingedTasks.push(n)}return}if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case bn:o=Wc(e,n,a.render,o,l);if(0!==Ln){a=n.treeContext;n.treeContext=tc(a,1,0);try{Z(e,n,o)}finally{n.treeContext=a}}else Z(e,n,o);return;case vn:a=a.type;o=Yc(a,o);Zc(e,n,a,o,l);return;case hn:l=o.children;a=a._context;o=o.value;i=a._currentValue;a._currentValue=o;s=Fn;Fn=o={parent:s,depth:null===s?0:s.depth+1,context:a,parentValue:i,value:o};n.context=o;Z(e,n,l);e=Fn;if(null===e)throw Error(k(403));o=e.parentValue;e.context._currentValue=o===$n?e.context._defaultValue:o;e=Fn=e.parent;n.context=e;return;case gn:o=o.children;o=o(a._currentValue);Z(e,n,o);return;case kn:l=a._init;a=l(a._payload);o=Yc(a,o);Zc(e,n,a,o,void 0);return}throw Error(k(130,null==a?a:typeof a,\"\"))}l=n.blockedSegment;i=Sa(l.chunks,a,o,e.responseState,l.formatContext);l.lastPushedText=!1;s=l.formatContext;l.formatContext=Ba(s,a,o);$c(e,n,i);l.formatContext=s;switch(a){case\"area\":case\"base\":case\"br\":case\"col\":case\"embed\":case\"hr\":case\"img\":case\"input\":case\"keygen\":case\"link\":case\"meta\":case\"param\":case\"source\":case\"track\":case\"wbr\":break;default:l.chunks.push(pt,u(a),ht)}l.lastPushedText=!1}}function Z(e,n,a){n.node=a;if(\"object\"===typeof a&&null!==a){switch(a.$$typeof){case sn:Zc(e,n,a.type,a.props,a.ref);return;case cn:throw Error(k(257));case kn:var o=a._init;a=o(a._payload);Z(e,n,a);return}if(We(a)){bd(e,n,a);return}null===a||\"object\"!==typeof a?o=null:(o=Cn&&a[Cn]||a[\"@@iterator\"],o=\"function\"===typeof o?o:null);if(o&&(o=o.call(a))){a=o.next();if(!a.done){var l=[];do{l.push(a.value),a=o.next()}while(!a.done);bd(e,n,l)}return}e=Object.prototype.toString.call(a);throw Error(k(31,\"[object Object]\"===e?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":e))}\"string\"===typeof a?(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,a,e.responseState,o.lastPushedText)):\"number\"===typeof a&&(o=n.blockedSegment,o.lastPushedText=Da(n.blockedSegment.chunks,\"\"+a,e.responseState,o.lastPushedText))}function bd(e,n,a){for(var o=a.length,l=0;l<o;l++){var i=n.treeContext;n.treeContext=tc(i,o,l);try{$c(e,n,a[l])}finally{n.treeContext=i}}}function $c(e,n,a){var o=n.blockedSegment.formatContext,l=n.legacyContext,i=n.context;try{return Z(e,n,a)}catch(d){if(Gc(),\"object\"!==typeof d||null===d||\"function\"!==typeof d.then)throw n.blockedSegment.formatContext=o,n.legacyContext=l,n.context=i,Q(i),d;a=d;var s=n.blockedSegment,c=Sc(e,s.chunks.length,null,s.formatContext,s.lastPushedText,!0);s.children.push(c);s.lastPushedText=!1;e=Tc(e,n.node,n.blockedBoundary,c,n.abortSet,n.legacyContext,n.context,n.treeContext).ping;a.then(e,e);n.blockedSegment.formatContext=o;n.legacyContext=l;n.context=i;Q(i)}}function cd(e){var n=e.blockedBoundary;e=e.blockedSegment;e.status=3;dd(this,n,e)}function ed(e,n,a){var o=e.blockedBoundary;e.blockedSegment.status=3;null===o?(n.allPendingTasks--,2!==n.status&&(n.status=2,null!==n.destination&&n.destination.close())):(o.pendingTasks--,o.forceClientRender||(o.forceClientRender=!0,e=void 0===a?Error(k(432)):a,o.errorDigest=n.onError(e),o.parentFlushed&&n.clientRenderedBoundaries.push(o)),o.fallbackAbortableTasks.forEach((function(e){return ed(e,n,a)})),o.fallbackAbortableTasks.clear(),n.allPendingTasks--,0===n.allPendingTasks&&(o=n.onAllReady,o()))}function ad(e,n){if(0===n.chunks.length&&1===n.children.length&&null===n.children[0].boundary){var a=n.children[0];a.id=n.id;a.parentFlushed=!0;1===a.status&&ad(e,a)}else e.completedSegments.push(n)}function dd(e,n,a){if(null===n){if(a.parentFlushed){if(null!==e.completedRootSegment)throw Error(k(389));e.completedRootSegment=a}e.pendingRootTasks--;0===e.pendingRootTasks&&(e.onShellError=X,n=e.onShellReady,n())}else n.pendingTasks--,n.forceClientRender||(0===n.pendingTasks?(a.parentFlushed&&1===a.status&&ad(n,a),n.parentFlushed&&e.completedBoundaries.push(n),n.fallbackAbortableTasks.forEach(cd,e),n.fallbackAbortableTasks.clear()):a.parentFlushed&&1===a.status&&(ad(n,a),1===n.completedSegments.length&&n.parentFlushed&&e.partialBoundaries.push(n)));e.allPendingTasks--;0===e.allPendingTasks&&(e=e.onAllReady,e())}function Uc(e){if(2!==e.status){var n=Fn,a=Hn.current;Hn.current=qn;var o=Wn;Wn=e.responseState;try{var l,i=e.pingedTasks;for(l=0;l<i.length;l++){var s=i[l];var c=e,d=s.blockedSegment;if(0===d.status){Q(s.context);try{Z(c,s,s.node),d.lastPushedText&&d.textEmbedded&&d.chunks.push(Qe),s.abortSet.delete(s),d.status=1,dd(c,s.blockedBoundary,d)}catch(e){if(Gc(),\"object\"===typeof e&&null!==e&&\"function\"===typeof e.then){var f=s.ping;e.then(f,f)}else{s.abortSet.delete(s);d.status=4;var h=s.blockedBoundary,g=e,b=Y(c,g);null===h?Vc(c,g):(h.pendingTasks--,h.forceClientRender||(h.forceClientRender=!0,h.errorDigest=b,h.parentFlushed&&c.clientRenderedBoundaries.push(h)));c.allPendingTasks--;if(0===c.allPendingTasks){var m=c.onAllReady;m()}}}}}i.splice(0,l);null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}finally{Wn=o,Hn.current=a,a===qn&&Q(n)}}}function gd(e,n,a){a.parentFlushed=!0;switch(a.status){case 0:var o=a.id=e.nextSegmentId++;a.lastPushedText=!1;a.textEmbedded=!1;e=e.responseState;p(n,gt);p(n,e.placeholderPrefix);e=u(o.toString(16));p(n,e);return t(n,bt);case 1:a.status=2;var l=!0;o=a.chunks;var i=0;a=a.children;for(var s=0;s<a.length;s++){for(l=a[s];i<l.index;i++)p(n,o[i]);l=hd(e,n,l)}for(;i<o.length-1;i++)p(n,o[i]);i<o.length&&(l=t(n,o[i]));return l;default:throw Error(k(390))}}function hd(e,n,a){var o=a.boundary;if(null===o)return gd(e,n,a);o.parentFlushed=!0;if(o.forceClientRender)o=o.errorDigest,t(n,kt),p(n,St),o&&(p(n,$t),p(n,u(C(o))),p(n,xt)),t(n,Ct),gd(e,n,a);else if(0<o.pendingTasks){o.rootSegmentID=e.nextSegmentId++;0<o.completedSegments.length&&e.partialBoundaries.push(o);var l=e.responseState;var i=l.nextSuspenseID++;l=w(l.boundaryPrefix+i.toString(16));o=o.id=l;fb(n,e.responseState,o);gd(e,n,a)}else if(o.byteSize>e.progressiveChunkSize)o.rootSegmentID=e.nextSegmentId++,e.completedBoundaries.push(o),fb(n,e.responseState,o.id),gd(e,n,a);else{t(n,mt);a=o.completedSegments;if(1!==a.length)throw Error(k(391));hd(e,n,a[0])}return t(n,wt)}function id(e,n,a){Bb(n,e.responseState,a.formatContext,a.id);hd(e,n,a);return Cb(n,a.formatContext)}function jd(e,n,a){for(var o=a.completedSegments,l=0;l<o.length;l++)kd(e,n,a,o[l]);o.length=0;e=e.responseState;o=a.id;a=a.rootSegmentID;p(n,e.startInlineScript);e.sentCompleteBoundaryFunction?p(n,Yt):(e.sentCompleteBoundaryFunction=!0,p(n,Qt));if(null===o)throw Error(k(395));a=u(a.toString(16));p(n,o);p(n,Kt);p(n,e.segmentPrefix);p(n,a);return t(n,en)}function kd(e,n,a,o){if(2===o.status)return!0;var l=o.id;if(-1===l){if(-1===(o.id=a.rootSegmentID))throw Error(k(392));return id(e,n,o)}id(e,n,o);e=e.responseState;p(n,e.startInlineScript);e.sentCompleteSegmentFunction?p(n,Xt):(e.sentCompleteSegmentFunction=!0,p(n,Zt));p(n,e.segmentPrefix);l=u(l.toString(16));p(n,l);p(n,Jt);p(n,e.placeholderPrefix);p(n,l);return t(n,Gt)}function fd(e,n){Pe=new Uint8Array(512);_e=0;try{var a=e.completedRootSegment;if(null!==a&&0===e.pendingRootTasks){hd(e,n,a);e.completedRootSegment=null;var o=e.responseState.bootstrapChunks;for(a=0;a<o.length-1;a++)p(n,o[a]);a<o.length&&t(n,o[a])}var l,i=e.clientRenderedBoundaries;for(l=0;l<i.length;l++){var s=i[l];o=n;var c=e.responseState,d=s.id,f=s.errorDigest,h=s.errorMessage,g=s.errorComponentStack;p(o,c.startInlineScript);c.sentClientRenderFunction?p(o,nn):(c.sentClientRenderFunction=!0,p(o,tn));if(null===d)throw Error(k(395));p(o,d);p(o,rn);(f||h||g)&&(p(o,on),p(o,u(Sb(f||\"\"))));(h||g)&&(p(o,on),p(o,u(Sb(h||\"\"))));g&&(p(o,on),p(o,u(Sb(g))));if(!t(o,an)){e.destination=null;l++;i.splice(0,l);return}}i.splice(0,l);var b=e.completedBoundaries;for(l=0;l<b.length;l++)if(!jd(e,n,b[l])){e.destination=null;l++;b.splice(0,l);return}b.splice(0,l);ba(n);Pe=new Uint8Array(512);_e=0;var m=e.partialBoundaries;for(l=0;l<m.length;l++){var S=m[l];e:{i=e;s=n;var x=S.completedSegments;for(c=0;c<x.length;c++)if(!kd(i,s,S,x[c])){c++;x.splice(0,c);var $=!1;break e}x.splice(0,c);$=!0}if(!$){e.destination=null;l++;m.splice(0,l);return}}m.splice(0,l);var E=e.completedBoundaries;for(l=0;l<E.length;l++)if(!jd(e,n,E[l])){e.destination=null;l++;E.splice(0,l);return}E.splice(0,l)}finally{ba(n),0===e.allPendingTasks&&0===e.pingedTasks.length&&0===e.clientRenderedBoundaries.length&&0===e.completedBoundaries.length&&n.close()}}function ld(e,n){try{var a=e.abortableTasks;a.forEach((function(a){return ed(a,e,n)}));a.clear();null!==e.destination&&fd(e,e.destination)}catch(n){Y(e,n),Vc(e,n)}}Te.renderToReadableStream=function(e,n){return new Promise((function(a,o){var l,i,s=new Promise((function(e,n){i=e;l=n})),c=Rc(e,za(n?n.identifierPrefix:void 0,n?n.nonce:void 0,n?n.bootstrapScriptContent:void 0,n?n.bootstrapScripts:void 0,n?n.bootstrapModules:void 0),Aa(n?n.namespaceURI:void 0),n?n.progressiveChunkSize:void 0,n?n.onError:void 0,i,(function(){var e=new ReadableStream({type:\"bytes\",pull:function(e){if(1===c.status)c.status=2,da(e,c.fatalError);else if(2!==c.status&&null===c.destination){c.destination=e;try{fd(c,e)}catch(e){Y(c,e),Vc(c,e)}}},cancel:function(){ld(c)}},{highWaterMark:0});e.allReady=s;a(e)}),(function(e){s.catch((function(){}));o(e)}),l);if(n&&n.signal){var d=n.signal,q=function(){ld(c,d.reason);d.removeEventListener(\"abort\",q)};d.addEventListener(\"abort\",q)}Uc(c)}))};Te.version=\"18.2.0\";var Un={};var Zn,Xn;Zn=a;Xn=Te;Un.version=Zn.version;Un.renderToString=Zn.renderToString;Un.renderToStaticMarkup=Zn.renderToStaticMarkup;Un.renderToNodeStream=Zn.renderToNodeStream;Un.renderToStaticNodeStream=Zn.renderToStaticNodeStream;Un.renderToReadableStream=Xn.renderToReadableStream;const Jn=Un.version,Gn=Un.renderToString,Qn=Un.renderToStaticMarkup,Yn=Un.renderToNodeStream,Kn=Un.renderToStaticNodeStream,er=Un.renderToReadableStream;export{Un as default,Yn as renderToNodeStream,er as renderToReadableStream,Qn as renderToStaticMarkup,Kn as renderToStaticNodeStream,Gn as renderToString,Jn as version};\n\n//# sourceMappingURL=server.browser.js.map","import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","/*\n * index (framer/default-utils@0.45.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{useIsOnCanvas,emptyStateStyle,containerStyles}from\"https://framer.com/m/framer/default-utils.js\";/**\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n *\n * @framerDisableUnlink\n */export default function Embed({type,url,html,style={}}){if(type===\"url\"&&url){return /*#__PURE__*/_jsx(EmbedUrl,{url:url,style:style});}if(type===\"html\"&&html){return /*#__PURE__*/_jsx(EmbedHtml,{html:html,style:style});}return /*#__PURE__*/_jsx(Instructions,{style:style});}addPropertyControls(Embed,{type:{type:ControlType.Enum,defaultValue:\"url\",displaySegmentedControl:true,options:[\"url\",\"html\"],optionTitles:[\"URL\",\"HTML\"]},url:{title:\"URL\",type:ControlType.String,description:\"Some websites don’t support embedding.\",hidden(props){return props.type!==\"url\";}},html:{title:\"HTML\",type:ControlType.String,displayTextArea:true,hidden(props){return props.type!==\"html\";}}});function Instructions({style}){return /*#__PURE__*/_jsx(\"div\",{style:{minHeight:getMinHeight(style),...emptyStateStyle,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"To embed a website or widget, add it to the properties\\xa0panel.\"})});}function EmbedUrl({url,style}){const hasAutoHeight=!style.height;// Add https:// if the URL does not have a protocol.\nif(!/[a-z]+:\\/\\//.test(url)){url=\"https://\"+url;}const onCanvas=useIsOnCanvas();// We need to check if the url is blocked inside an iframe by the X-Frame-Options\n// or Content-Security-Policy headers on the backend.\nconst[state,setState]=useState(onCanvas?undefined:false);useEffect(()=>{// We only want to check on the canvas.\n// On the website we want to avoid the additional delay.\nif(!onCanvas)return;// TODO: We could also use AbortController here.\nlet isLastEffect=true;setState(undefined);async function load(){const response=await fetch(\"https://api.framer.com/functions/check-iframe-url?url=\"+encodeURIComponent(url));if(response.status==200){const{isBlocked}=await response.json();if(isLastEffect){setState(isBlocked);}}else{const message=await response.text();console.error(message);const error=new Error(\"This site can’t be reached.\");setState(error);}}load().catch(error=>{console.error(error);setState(error);});return()=>{isLastEffect=false;};},[url]);if(onCanvas&&hasAutoHeight){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"URL embeds do not support auto height.\",style:style});}if(!url.startsWith(\"https://\")){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"Unsupported protocol.\",style:style});}if(state===undefined){return /*#__PURE__*/_jsx(LoadingIndicator,{});}if(state instanceof Error){return /*#__PURE__*/_jsx(ErrorMessage,{message:state.message,style:style});}if(state===true){const message=`Can’t embed ${url} due to its content security policy.`;return /*#__PURE__*/_jsx(ErrorMessage,{message:message,style:style});}return /*#__PURE__*/_jsx(\"iframe\",{src:url,style:{...iframeStyle,...style},loading:\"lazy\",// @ts-ignore\nfetchPriority:onCanvas?\"low\":\"auto\",referrerPolicy:\"no-referrer\",sandbox:getSandbox(onCanvas)});}const iframeStyle={width:\"100%\",height:\"100%\",border:\"none\"};function getSandbox(onCanvas){const result=[\"allow-same-origin\",\"allow-scripts\"];if(!onCanvas){result.push(\"allow-downloads\",\"allow-forms\",\"allow-modals\",\"allow-orientation-lock\",\"allow-pointer-lock\",\"allow-popups\",\"allow-popups-to-escape-sandbox\",\"allow-presentation\",\"allow-storage-access-by-user-activation\",\"allow-top-navigation-by-user-activation\");}return result.join(\" \");}function EmbedHtml({html,...props}){const hasScript=html.includes(\"</script>\");if(hasScript){const hasSplineViewer=html.includes(\"</spline-viewer>\");const hasComment=html.includes(\"<!-- framer-direct-embed -->\");if(hasSplineViewer||hasComment){return /*#__PURE__*/_jsx(EmbedHtmlWithScripts,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlInsideIframe,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlWithoutScripts,{html:html,...props});}function EmbedHtmlInsideIframe({html,style}){const ref=useRef();const[iframeHeight,setIframeHeight]=useState(0);// Handle auto sizing\nuseEffect(()=>{var _ref_current;const iframeWindow=(_ref_current=ref.current)===null||_ref_current===void 0?void 0:_ref_current.contentWindow;function handleMessage(event){if(event.source!==iframeWindow)return;const data=event.data;if(typeof data!==\"object\"||data===null)return;const height=data.embedHeight;if(typeof height!==\"number\")return;setIframeHeight(height);}window.addEventListener(\"message\",handleMessage);// After SSG the iframe loads before we attach the event handler,\n// therefore we need to request the latest height from the iframe.\niframeWindow===null||iframeWindow===void 0?void 0:iframeWindow.postMessage(\"getEmbedHeight\",\"*\");return()=>{window.removeEventListener(\"message\",handleMessage);};},[]);// The CSS is mainly copied from:\n// FramerStudio/src/app/vekter/src/renderer/setDefaultFont.ts\n// FramerStudio/src/app/vekter/src/export/globalStylesForExport.ts\nconst srcDoc=`\n<html>\n    <head>\n        <style>\n            html, body {\n                margin: 0;\n                padding: 0;\n            }\n\n            body {\n                display: flex;\n                justify-content: center;\n                align-items: center;\n                min-height: 100vh;\n            }\n\n            :root {\n                -webkit-font-smoothing: antialiased;\n                -moz-osx-font-smoothing: grayscale;\n            }\n\n            * {\n                box-sizing: border-box;\n                -webkit-font-smoothing: inherit;\n            }\n\n            h1, h2, h3, h4, h5, h6, p, figure {\n                margin: 0;\n            }\n\n            body, input, textarea, select, button {\n                font-size: 12px;\n                font-family: sans-serif;\n            }\n        </style>\n    </head>\n    <body>\n        ${html}\n        <script type=\"module\">\n            let height = 0\n\n            function sendEmbedHeight() {\n                window.parent.postMessage({\n                    embedHeight: height\n                }, \"*\")\n            }\n\n            const observer = new ResizeObserver((entries) => {\n                if (entries.length !== 1) return\n                const entry = entries[0]\n                if (entry.target !== document.body) return\n\n                height = entry.contentRect.height\n                sendEmbedHeight()\n            })\n\n            observer.observe(document.body)\n\n            window.addEventListener(\"message\", (event) => {\n                if (event.source !== window.parent) return\n                if (event.data !== \"getEmbedHeight\") return\n                sendEmbedHeight()\n            })\n        </script>\n    <body>\n</html>\n`;const currentStyle={...iframeStyle,...style};const hasAutoHeight=!style.height;if(hasAutoHeight){currentStyle.height=iframeHeight+\"px\";}return /*#__PURE__*/_jsx(\"iframe\",{ref:ref,style:currentStyle,srcDoc:srcDoc});}function EmbedHtmlWithScripts({html,style}){const ref=useRef();useEffect(()=>{const div=ref.current;if(!div)return;div.innerHTML=html;executeScripts(div);return()=>{div.innerHTML=\"\";};},[html]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...htmlStyle,...style}});}function EmbedHtmlWithoutScripts({html,style}){return /*#__PURE__*/_jsx(\"div\",{style:{...htmlStyle,...style},dangerouslySetInnerHTML:{__html:html}});}const htmlStyle={width:\"100%\",height:\"100%\",display:\"flex\",flexDirection:\"column\",justifyContent:\"center\",alignItems:\"center\"};// This function replaces scripts with executable ones.\n// https://stackoverflow.com/questions/1197575/can-scripts-be-inserted-with-innerhtml\nfunction executeScripts(node){if(node instanceof Element&&node.tagName===\"SCRIPT\"){const script=document.createElement(\"script\");script.text=node.innerHTML;for(const{name,value}of node.attributes){script.setAttribute(name,value);}node.parentElement.replaceChild(script,node);}else{for(const child of node.childNodes){executeScripts(child);}}}// Generic components\nfunction LoadingIndicator(){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-componentPlaceholder\",style:{...containerStyles,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"Loading…\"})});}function ErrorMessage({message,style}){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-errorPlaceholder\",style:{minHeight:getMinHeight(style),...containerStyles,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:message})});}const centerTextStyle={textAlign:\"center\",minWidth:140};// Returns a min-height if the component is using auto-height.\nfunction getMinHeight(style){const hasAutoHeight=!style.height;if(hasAutoHeight)return 200;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Embed\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"400\",\"framerIntrinsicWidth\":\"600\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Embed.map","// Generated by Framer (9045c1a)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-bcjNu .framer-styles-preset-ixqtv3:not(.rich-text-wrapper), .framer-bcjNu .framer-styles-preset-ixqtv3.rich-text-wrapper a { --framer-link-current-text-color: #111111; --framer-link-current-text-decoration: underline; --framer-link-hover-text-decoration: none; --framer-link-text-decoration: none; }\"];export const className=\"framer-bcjNu\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (ab692b1)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,Link,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/vDcWO9twsr8I5XTyxkQk/OqvO0HrgJW4vkeOsBCwh/fdY7TfQrS.js\";const cycleOrder=[\"yiqgCO76n\",\"OChlAQQcZ\",\"MIkfPoW8R\"];const serializationHash=\"framer-AFiEW\";const variantClassNames={MIkfPoW8R:\"framer-v-ihdmjr\",OChlAQQcZ:\"framer-v-1kqa2fp\",yiqgCO76n:\"framer-v-1knq0vr\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:40,delay:0,mass:1,stiffness:400,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const humanReadableVariantMap={\"Phone Open\":\"MIkfPoW8R\",Desktop:\"yiqgCO76n\",Phone:\"OChlAQQcZ\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"yiqgCO76n\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"yiqgCO76n\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1743oo1=activeVariantCallback(async(...args)=>{setVariant(\"MIkfPoW8R\");});const onTap1pmq2p8=activeVariantCallback(async(...args)=>{setVariant(\"OChlAQQcZ\");});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if([\"OChlAQQcZ\",\"MIkfPoW8R\"].includes(baseVariant))return true;return false;};return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.nav,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1knq0vr\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"yiqgCO76n\",ref:refBinding,style:{backgroundColor:\"rgb(3, 4, 35)\",...style},...addPropertyOverrides({MIkfPoW8R:{\"data-framer-name\":\"Phone Open\"},OChlAQQcZ:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1ekretg\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"soMmwIJmt\",...addPropertyOverrides({MIkfPoW8R:{\"data-highlight\":true,onTap:onTap1pmq2p8},OChlAQQcZ:{\"data-highlight\":true,onTap:onTap1743oo1}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-vknfql\",\"data-framer-name\":\"Icon\",layoutDependency:layoutDependency,layoutId:\"KVT9Yod4D\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-5lusu\",\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"ApKEjwKOe\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,rotate:0},variants:{MIkfPoW8R:{rotate:-45}}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1jdq5wv\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"oCCt9CpqI\",style:{backgroundColor:\"rgb(153, 153, 153)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,rotate:0},variants:{MIkfPoW8R:{rotate:45}}})]}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"48px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.01em\",\"--framer-line-height\":\"2em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/\",motionChild:true,nodeId:\"Nqenhfi73\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Soulgen\"})})})}),className:\"framer-s0qdq6\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"Nqenhfi73\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({OChlAQQcZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"20px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.01em\",\"--framer-line-height\":\"2em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/\",motionChild:true,nodeId:\"Nqenhfi73\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Soulgen\"})})})})}},baseVariant,gestureVariant)})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-yfmcq5\",\"data-framer-name\":\"Links\",layoutDependency:layoutDependency,layoutId:\"hwg3MGIql\",style:{opacity:1},variants:{MIkfPoW8R:{opacity:1},OChlAQQcZ:{opacity:0}},children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"20px\",\"--framer-font-weight\":\"500\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/create\",motionChild:true,nodeId:\"NW0G9gaRn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Girl\"})})})}),className:\"framer-q206nx\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"NW0G9gaRn\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MIkfPoW8R:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/create\",motionChild:true,nodeId:\"NW0G9gaRn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Girl\"})})})}),fonts:[\"GF;Inter Tight-600\"]},OChlAQQcZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/create\",motionChild:true,nodeId:\"NW0G9gaRn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Girl\"})})})}),fonts:[\"GF;Inter Tight-600\"]}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"20px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"0px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/inpaint\",motionChild:true,nodeId:\"qBXGYJPnn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Edit\"})})})}),className:\"framer-llemik\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"qBXGYJPnn\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MIkfPoW8R:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/inpaint\",motionChild:true,nodeId:\"qBXGYJPnn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Edit\"})})})}),fonts:[\"GF;Inter Tight-600\"]},OChlAQQcZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/inpaint\",motionChild:true,nodeId:\"qBXGYJPnn\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Edit\"})})})}),fonts:[\"GF;Inter Tight-600\"]}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"20px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"0px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/faceswap\",motionChild:true,nodeId:\"wrTJCNKP7\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Face Swap\"})})})}),className:\"framer-8hodmd\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"wrTJCNKP7\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MIkfPoW8R:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/faceswap\",motionChild:true,nodeId:\"wrTJCNKP7\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Face Swap\"})})})}),fonts:[\"GF;Inter Tight-600\"]},OChlAQQcZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/faceswap\",motionChild:true,nodeId:\"wrTJCNKP7\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"Face Swap\"})})})}),fonts:[\"GF;Inter Tight-600\"]}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-family\":'\"Inter\", \"Inter Placeholder\", sans-serif',\"--framer-font-size\":\"20px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"0px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/ai-chat\",motionChild:true,nodeId:\"az4UYX5G_\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Chat\"})})})}),className:\"framer-1eaii\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"az4UYX5G_\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({MIkfPoW8R:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/ai-chat\",motionChild:true,nodeId:\"az4UYX5G_\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Chat\"})})})}),fonts:[\"GF;Inter Tight-600\"]},OChlAQQcZ:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--font-selector\":\"R0Y7SW50ZXIgVGlnaHQtNjAw\",\"--framer-font-family\":'\"Inter Tight\", \"Inter Tight Placeholder\", sans-serif',\"--framer-font-size\":\"32px\",\"--framer-font-weight\":\"600\",\"--framer-line-height\":\"1.5em\",\"--framer-text-alignment\":\"left\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/ai-chat\",motionChild:true,nodeId:\"az4UYX5G_\",openInNewTab:true,scopeId:\"iMPMKmi_t\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-ixqtv3\",\"data-styles-preset\":\"fdY7TfQrS\",children:\"AI Chat\"})})})}),fonts:[\"GF;Inter Tight-600\"]}},baseVariant,gestureVariant)})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1avrue2\",\"data-framer-name\":\"Bottom Line\",layoutDependency:layoutDependency,layoutId:\"iEBZWNldv\",style:{backgroundColor:\"rgba(255, 255, 255, 0.08)\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-wi9xei\",layoutDependency:layoutDependency,layoutId:\"AXjAuOWjo\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-cpwu4u\",\"data-framer-name\":\"按钮\",layoutDependency:layoutDependency,layoutId:\"jI9zM8fB3\",children:/*#__PURE__*/_jsx(Link,{href:\"https://www.soulgen.net/video-generator\",motionChild:true,nodeId:\"gsXESZ2O3\",openInNewTab:true,scopeId:\"iMPMKmi_t\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1tjvonw framer-1ps535u\",\"data-framer-name\":\"Rectangle 2511\",layoutDependency:layoutDependency,layoutId:\"gsXESZ2O3\",style:{background:\"linear-gradient(89.99999994883625deg, rgba(255, 44, 134, 1) 0%, rgba(255, 154, 47, 1) 100%)\",borderBottomLeftRadius:8,borderBottomRightRadius:8,borderTopLeftRadius:8,borderTopRightRadius:8},children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"20px\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(255, 255, 255))\"},children:\"Free Trial\"})}),className:\"framer-1i3c2f\",\"data-framer-name\":\"Free Trial\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"a21FSgzW7\",style:{\"--extracted-r6o4lv\":\"rgb(255, 255, 255)\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})})})})})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-AFiEW.framer-1ps535u, .framer-AFiEW .framer-1ps535u { display: block; }\",\".framer-AFiEW.framer-1knq0vr { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: 64px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-AFiEW .framer-1ekretg { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 10px 0px 10px 10px; position: relative; width: min-content; }\",\".framer-AFiEW .framer-vknfql { flex: none; height: 40px; overflow: hidden; position: relative; width: 40px; }\",\".framer-AFiEW .framer-5lusu { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(62.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-AFiEW .framer-1jdq5wv { flex: none; height: 2px; left: calc(50.00000000000002% - 20px / 2); overflow: hidden; position: absolute; top: calc(37.50000000000002% - 2px / 2); width: 20px; will-change: var(--framer-will-change-override, transform); }\",\".framer-AFiEW .framer-s0qdq6, .framer-AFiEW .framer-q206nx, .framer-AFiEW .framer-llemik, .framer-AFiEW .framer-8hodmd, .framer-AFiEW .framer-1eaii { -webkit-user-select: none; flex: none; height: auto; position: relative; user-select: none; white-space: pre; width: auto; }\",\".framer-AFiEW .framer-yfmcq5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 46px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 60%; }\",\".framer-AFiEW .framer-1avrue2 { bottom: 0px; flex: none; height: 1px; left: 0px; overflow: visible; position: absolute; right: 0px; z-index: 1; }\",\".framer-AFiEW .framer-wi9xei { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 58px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-AFiEW .framer-cpwu4u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 58px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 183px; }\",\".framer-AFiEW .framer-1tjvonw { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 100%; justify-content: center; padding: 0px; position: relative; text-decoration: none; width: 1px; }\",\".framer-AFiEW .framer-1i3c2f { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-AFiEW.framer-1knq0vr, .framer-AFiEW .framer-1ekretg, .framer-AFiEW .framer-yfmcq5, .framer-AFiEW .framer-wi9xei, .framer-AFiEW .framer-cpwu4u, .framer-AFiEW .framer-1tjvonw { gap: 0px; } .framer-AFiEW.framer-1knq0vr > * { margin: 0px; margin-left: calc(20px / 2); margin-right: calc(20px / 2); } .framer-AFiEW.framer-1knq0vr > :first-child, .framer-AFiEW .framer-1ekretg > :first-child, .framer-AFiEW .framer-yfmcq5 > :first-child, .framer-AFiEW .framer-wi9xei > :first-child, .framer-AFiEW .framer-cpwu4u > :first-child, .framer-AFiEW .framer-1tjvonw > :first-child { margin-left: 0px; } .framer-AFiEW.framer-1knq0vr > :last-child, .framer-AFiEW .framer-1ekretg > :last-child, .framer-AFiEW .framer-yfmcq5 > :last-child, .framer-AFiEW .framer-wi9xei > :last-child, .framer-AFiEW .framer-cpwu4u > :last-child, .framer-AFiEW .framer-1tjvonw > :last-child { margin-right: 0px; } .framer-AFiEW .framer-1ekretg > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-AFiEW .framer-yfmcq5 > * { margin: 0px; margin-left: calc(46px / 2); margin-right: calc(46px / 2); } .framer-AFiEW .framer-wi9xei > *, .framer-AFiEW .framer-cpwu4u > *, .framer-AFiEW .framer-1tjvonw > * { margin: 0px; margin-left: calc(10px / 2); margin-right: calc(10px / 2); } }\",\".framer-AFiEW.framer-v-1kqa2fp.framer-1knq0vr { flex-direction: column; gap: 0px; width: 390px; }\",\".framer-AFiEW.framer-v-1kqa2fp .framer-1ekretg, .framer-AFiEW.framer-v-ihdmjr .framer-1ekretg { cursor: pointer; gap: unset; justify-content: space-between; padding: 10px; width: 100%; }\",\".framer-AFiEW.framer-v-1kqa2fp .framer-vknfql, .framer-AFiEW.framer-v-ihdmjr .framer-vknfql { height: 44px; width: 44px; }\",\".framer-AFiEW.framer-v-1kqa2fp .framer-yfmcq5 { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 0px; padding: 20px 20px 120px 20px; width: 100%; }\",\".framer-AFiEW.framer-v-1kqa2fp .framer-wi9xei, .framer-AFiEW.framer-v-ihdmjr .framer-wi9xei { flex: none; width: 100%; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-AFiEW.framer-v-1kqa2fp.framer-1knq0vr, .framer-AFiEW.framer-v-1kqa2fp .framer-1ekretg, .framer-AFiEW.framer-v-1kqa2fp .framer-yfmcq5 { gap: 0px; } .framer-AFiEW.framer-v-1kqa2fp.framer-1knq0vr > *, .framer-AFiEW.framer-v-1kqa2fp .framer-yfmcq5 > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-AFiEW.framer-v-1kqa2fp.framer-1knq0vr > :first-child, .framer-AFiEW.framer-v-1kqa2fp .framer-yfmcq5 > :first-child { margin-top: 0px; } .framer-AFiEW.framer-v-1kqa2fp.framer-1knq0vr > :last-child, .framer-AFiEW.framer-v-1kqa2fp .framer-yfmcq5 > :last-child { margin-bottom: 0px; } .framer-AFiEW.framer-v-1kqa2fp .framer-1ekretg > *, .framer-AFiEW.framer-v-1kqa2fp .framer-1ekretg > :first-child, .framer-AFiEW.framer-v-1kqa2fp .framer-1ekretg > :last-child { margin: 0px; } }\",\".framer-AFiEW.framer-v-ihdmjr.framer-1knq0vr { flex-direction: column; gap: 0px; height: min-content; max-height: calc(var(--framer-viewport-height, 100vh) * 1); overflow: auto; overscroll-behavior: contain; width: 390px; }\",\".framer-AFiEW.framer-v-ihdmjr .framer-5lusu, .framer-AFiEW.framer-v-ihdmjr .framer-1jdq5wv { top: calc(50.00000000000002% - 2px / 2); }\",\".framer-AFiEW.framer-v-ihdmjr .framer-yfmcq5 { align-content: flex-start; align-items: flex-start; flex-direction: column; gap: 0px; padding: 20px; width: 100%; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-AFiEW.framer-v-ihdmjr.framer-1knq0vr, .framer-AFiEW.framer-v-ihdmjr .framer-1ekretg, .framer-AFiEW.framer-v-ihdmjr .framer-yfmcq5 { gap: 0px; } .framer-AFiEW.framer-v-ihdmjr.framer-1knq0vr > *, .framer-AFiEW.framer-v-ihdmjr .framer-yfmcq5 > * { margin: 0px; margin-bottom: calc(0px / 2); margin-top: calc(0px / 2); } .framer-AFiEW.framer-v-ihdmjr.framer-1knq0vr > :first-child, .framer-AFiEW.framer-v-ihdmjr .framer-yfmcq5 > :first-child { margin-top: 0px; } .framer-AFiEW.framer-v-ihdmjr.framer-1knq0vr > :last-child, .framer-AFiEW.framer-v-ihdmjr .framer-yfmcq5 > :last-child { margin-bottom: 0px; } .framer-AFiEW.framer-v-ihdmjr .framer-1ekretg > *, .framer-AFiEW.framer-v-ihdmjr .framer-1ekretg > :first-child, .framer-AFiEW.framer-v-ihdmjr .framer-1ekretg > :last-child { margin: 0px; } }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 64\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"OChlAQQcZ\":{\"layout\":[\"fixed\",\"fixed\"]},\"MIkfPoW8R\":{\"layout\":[\"fixed\",\"auto\"],\"constraints\":[null,null,null,\"100vh\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerComponentViewportWidth true\n */const FrameriMPMKmi_t=withCSS(Component,css,\"framer-AFiEW\");export default FrameriMPMKmi_t;FrameriMPMKmi_t.displayName=\"Navigation\";FrameriMPMKmi_t.defaultProps={height:64,width:1200};addPropertyControls(FrameriMPMKmi_t,{variant:{options:[\"yiqgCO76n\",\"OChlAQQcZ\",\"MIkfPoW8R\"],optionTitles:[\"Desktop\",\"Phone\",\"Phone Open\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FrameriMPMKmi_t,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2\",weight:\"500\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"},{family:\"Inter Tight\",source:\"google\",style:\"normal\",url:\"https://fonts.gstatic.com/s/intertight/v7/NGSnv5HMAFg6IuGlBNMjxJEL2VmU3NS7Z2mj0QiqWSRToK8EPg.woff2\",weight:\"600\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/vQyevYAyHtARFwPqUzQGpnDs.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameriMPMKmi_t\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"OChlAQQcZ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"MIkfPoW8R\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"],\\\"constraints\\\":[null,null,null,\\\"100vh\\\"]}}}\",\"framerIntrinsicHeight\":\"64\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./iMPMKmi_t.map","// Generated by Framer (c54c588)\nexport default function metadata(params,activeLocale){return{description:\"We tested 20+ unrestricted AI video generators and ranked the 7 best for 2026\",favicon:\"https://framerusercontent.com/assets/bxgv4Hd6isGJTlan3MNtGjPeYY.png\",robots:\"max-image-preview:large\",title:\"7 Best Uncensored AI Video Generators in 2026 (Tested & Ranked)\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c54c588)\nimport siteMetadata from\"#framer/local/siteMetadata/siteMetadata/siteMetadata.js\";export default function metadata(params,activeLocale){return{breakpoints:[{hash:\"1uhmbwa\",mediaQuery:\"(min-width: 1200px)\"},{hash:\"20kaye\",mediaQuery:\"(min-width: 810px) and (max-width: 1199.98px)\"},{hash:\"sjersu\",mediaQuery:\"(max-width: 809.98px)\"}],description:siteMetadata(params,activeLocale).description,elements:{},robots:\"max-image-preview:large\",serializationId:\"framer-brCn5\",title:siteMetadata(params,activeLocale).title||\"Home\",viewport:\"width=device-width\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c54c588)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,PropertyOverrides,useComponentViewport,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useMetadata,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Embed from\"https://framerusercontent.com/modules/o1PI5S8YtkA5bP5g4dFz/Xr8CO3Ul8Gb7lVfgMKTh/Embed.js\";import Navigation from\"#framer/local/canvasComponent/iMPMKmi_t/iMPMKmi_t.js\";import metadataProvider from\"#framer/local/webPageMetadata/ZWQj06frN/ZWQj06frN.js\";const NavigationFonts=getFonts(Navigation);const EmbedFonts=getFonts(Embed);const breakpoints={D_uBDR5CL:\"(min-width: 1200px)\",RLrIVHWWt:\"(min-width: 810px) and (max-width: 1199.98px)\",wwXfLS5mZ:\"(max-width: 809.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";export const queryParamNames=[];const serializationHash=\"framer-brCn5\";const variantClassNames={D_uBDR5CL:\"framer-v-1uhmbwa\",RLrIVHWWt:\"framer-v-20kaye\",wwXfLS5mZ:\"framer-v-sjersu\"};const getRootLayoutProp=(hasLayoutTemplate,hasInheritedFlowEffect,fallback)=>{if(!hasLayoutTemplate)return fallback;return hasInheritedFlowEffect?\"position\":fallback;};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const humanReadableVariantMap={Desktop:\"D_uBDR5CL\",Phone:\"wwXfLS5mZ\",Tablet:\"RLrIVHWWt\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"D_uBDR5CL\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const metadata=React.useMemo(()=>metadataProvider({},activeLocale),[activeLocale]);useMetadata(metadata);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const hasLayoutTemplate=React.useContext(GeneratedComponentContext)?.isLayoutTemplate;const hasInheritedFlowEffect=Boolean(React.useContext(MotionConfigContext)?.transition?.layout);const motionLayout=getRootLayoutProp(hasLayoutTemplate,hasInheritedFlowEffect);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,primaryVariantId:\"D_uBDR5CL\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\"html body { background: rgb(3, 4, 35); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1uhmbwa\",className),ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:64,width:componentViewport?.width||\"100vw\",y:(componentViewport?.y||0)+0+0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-14id389-container\",\"data-framer-name\":\"导航栏\",layout:motionLayout,name:\"导航栏\",nodeId:\"oDeSpII0w\",scopeId:\"ZWQj06frN\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{RLrIVHWWt:{variant:matchVariant(\"OChlAQQcZ\")},wwXfLS5mZ:{variant:matchVariant(\"OChlAQQcZ\")}},children:/*#__PURE__*/_jsx(Navigation,{height:\"100%\",id:\"oDeSpII0w\",layoutId:\"oDeSpII0w\",name:\"导航栏\",style:{width:\"100%\"},variant:matchVariant(\"yiqgCO76n\"),width:\"100%\"})})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-efbc1q\",layout:motionLayout,children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-mcvvq4-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"PhcGAWBwS\",scopeId:\"ZWQj06frN\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{wwXfLS5mZ:{html:'<!DOCTYPE html>\\n<html lang=\"en\">\\n<head>\\n<meta charset=\"UTF-8\">\\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\\n<title>8 Best NSFW AI Video Generators in 2026 (Tested & Ranked) | SoulGen</title>\\n<meta name=\"description\" content=\"We tested 20+ NSFW AI video generators and ranked the 8 best for face consistency, image-to-video quality, pricing, and content freedom. Updated for 2026.\">\\n<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\">\\n<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin>\\n<link href=\"https://fonts.googleapis.com/css2?family=Anton&family=Fira+Sans:wght@300;400;500;600;700&family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\\n<style>\\n  /* ===== RESET ===== */\\n  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}\\n  html{scroll-behavior:smooth}\\n  body{font-family:\\'Fira Sans\\',sans-serif;background:#030423;color:#f2f2f2;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}\\n  a{color:inherit;text-decoration:none}\\n  img,video{max-width:100%;height:auto;display:block}\\n  button{font-family:inherit}\\n\\n  /* ===== TYPOGRAPHY ===== */\\n  .h1{font-family:\\'Anton\\',sans-serif;font-size:clamp(30px,5vw,52px);line-height:1.25;letter-spacing:0.02em;text-transform:uppercase;word-spacing:0.05em}\\n  .h2{font-family:\\'Anton\\',sans-serif;font-size:clamp(24px,3.5vw,40px);line-height:1.15;letter-spacing:-0.03em;text-transform:uppercase}\\n  .h3{font-family:\\'Inter\\',sans-serif;font-size:clamp(18px,2.2vw,24px);font-weight:700;line-height:1.3;letter-spacing:-0.02em}\\n  .h4{font-family:\\'Inter\\',sans-serif;font-size:clamp(15px,1.6vw,18px);font-weight:700;line-height:1.4}\\n  .body-text{font-family:\\'Fira Sans\\',sans-serif;font-size:clamp(15px,1.6vw,17px);line-height:1.7;color:rgba(242,242,242,0.75)}\\n  .body-sm{font-size:14px;line-height:1.6;color:rgba(242,242,242,0.6)}\\n  .label{font-family:\\'Inter\\',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.14em;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n\\n  /* ===== LAYOUT ===== */\\n  .container{width:100%;max-width:1200px;margin:0 auto;padding:0 40px}\\n  section{padding:72px 0}\\n\\n  /* ===== COLORS ===== */\\n  .accent{color:#FF2BA3}\\n  .gradient-text{background:linear-gradient(135deg,#FF2BA3 0%,#FF9A2F 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n\\n  /* ===== BUTTONS ===== */\\n  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:8px;font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:15px;cursor:pointer;transition:all .3s;border:none;white-space:nowrap}\\n  .btn-primary{background:linear-gradient(135deg,#FF2BA3,#FF9A2F);color:#fff;box-shadow:0 4px 20px rgba(255,43,163,0.25)}\\n  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 28px rgba(255,43,163,0.4)}\\n  .btn-outline{background:transparent;color:#f2f2f2;border:1.5px solid rgba(242,242,242,0.25)}\\n  .btn-outline:hover{border-color:#FF2BA3;color:#FF2BA3}\\n  .btn-sm{padding:10px 20px;font-size:13px;border-radius:6px}\\n\\n  /* ===== CARDS ===== */\\n  .card{background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.07);border-radius:16px;transition:all .3s}\\n  .card:hover{border-color:rgba(255,43,163,0.2)}\\n\\n  /* ===== BADGES ===== */\\n  .badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:100px;font-size:12px;font-weight:600;font-family:\\'Inter\\',sans-serif}\\n  .badge-gold{background:linear-gradient(135deg,rgba(255,43,163,0.15),rgba(255,154,47,0.15));color:#FF2BA3;border:1px solid rgba(255,43,163,0.3)}\\n  .badge-green{background:rgba(74,222,128,0.1);color:#4ADE80;border:1px solid rgba(74,222,128,0.2)}\\n  .badge-blue{background:rgba(96,165,250,0.1);color:#60A5FA;border:1px solid rgba(96,165,250,0.2)}\\n  .badge-purple{background:rgba(167,139,250,0.1);color:#A78BFA;border:1px solid rgba(167,139,250,0.2)}\\n\\n  /* ===== DIVIDER ===== */\\n  .divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,43,163,0.2),rgba(255,154,47,0.2),transparent);margin:0}\\n\\n  /* ===== PROS CONS ===== */\\n  .pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}\\n  .pros h4,.cons h4{font-size:14px;font-weight:700;margin-bottom:10px;font-family:\\'Inter\\',sans-serif}\\n  .pros h4{color:#4ADE80}\\n  .cons h4{color:#FF6B6B}\\n  .pros ul,.cons ul{list-style:none;font-size:14px;line-height:1.8;color:rgba(242,242,242,0.7)}\\n  .pros li::before{content:\"✓ \";color:#4ADE80;font-weight:700}\\n  .cons li::before{content:\"✗ \";color:#FF6B6B;font-weight:700}\\n\\n  /* ===== PLACEHOLDER MEDIA ===== */\\n  .media-placeholder{width:100%;border-radius:12px;overflow:hidden;background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.06);display:flex;align-items:center;justify-content:center;color:rgba(242,242,242,0.2);font-size:13px;flex-direction:column;gap:8px}\\n  .media-placeholder .ph-icon{font-size:28px;opacity:0.4}\\n\\n  /* ============================================\\n     HERO\\n     ============================================ */\\n  .hero{padding:56px 0 64px;text-align:center;position:relative}\\n  .hero::before{content:\\'\\';position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:800px;height:600px;background:radial-gradient(circle,rgba(255,43,163,0.06) 0%,rgba(255,154,47,0.03) 40%,transparent 70%);pointer-events:none}\\n  .hero .label{margin-bottom:14px}\\n  .hero .h1{margin-bottom:20px;max-width:860px;margin-left:auto;margin-right:auto}\\n  .hero .body-text{max-width:680px;margin:0 auto 28px}\\n  .hero-meta{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:13px;color:rgba(242,242,242,0.45);margin-bottom:32px}\\n  .hero-meta span{display:flex;align-items:center;gap:6px}\\n\\n  /* ============================================\\n     TOC — TABLE OF CONTENTS\\n     ============================================ */\\n  .toc{padding:40px 0}\\n  .toc-box{background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.08);border-radius:16px;padding:32px 40px}\\n  .toc-title{font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:16px;margin-bottom:16px;color:#f2f2f2}\\n  .toc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 32px}\\n  .toc-item{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:15px;color:rgba(242,242,242,0.7);transition:color .2s}\\n  .toc-item:hover{color:#FF2BA3}\\n  .toc-rank{width:26px;height:26px;border-radius:6px;background:rgba(255,43,163,0.1);color:#FF2BA3;font-family:\\'Inter\\',sans-serif;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}\\n  .toc-item:first-child .toc-rank{background:rgba(255,43,163,0.2)}\\n\\n  /* ============================================\\n     QUICK COMPARISON TABLE\\n     ============================================ */\\n  .quick-compare{padding:48px 0}\\n  .quick-compare .section-header{text-align:center;margin-bottom:40px}\\n  .table-wrap{overflow-x:auto;border-radius:16px;border:1px solid rgba(242,242,242,0.08)}\\n  table.compare{width:100%;border-collapse:collapse;min-width:780px}\\n  table.compare thead th{padding:16px 18px;text-align:left;font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:13px;background:rgba(242,242,242,0.05);border-bottom:1px solid rgba(242,242,242,0.08);white-space:nowrap}\\n  table.compare thead th:first-child{border-radius:16px 0 0 0}\\n  table.compare thead th:last-child{border-radius:0 16px 0 0}\\n  table.compare thead th.hl{background:linear-gradient(135deg,rgba(255,43,163,0.1),rgba(255,154,47,0.1));color:#FF2BA3}\\n  table.compare tbody td{padding:13px 18px;font-size:14px;border-bottom:1px solid rgba(242,242,242,0.04);color:rgba(242,242,242,0.7)}\\n  table.compare tbody td:first-child{font-weight:600;color:#f2f2f2}\\n  table.compare tbody td.hl{background:rgba(255,154,47,0.04);color:#f2f2f2}\\n  table.compare tbody tr:last-child td{border-bottom:none}\\n  .ck{color:#4ADE80}\\n  .cx{color:#FF6B6B;opacity:0.6}\\n\\n  /* ============================================\\n     TOOL REVIEW CARDS\\n     ============================================ */\\n  .tool-review{padding:64px 0}\\n  .tool-review + .tool-review{padding-top:0}\\n\\n  .review-card{border-radius:20px;overflow:hidden;background:rgba(242,242,242,0.02);border:1px solid rgba(242,242,242,0.07)}\\n\\n  .review-header{display:flex;align-items:center;justify-content:space-between;padding:28px 36px;background:rgba(242,242,242,0.03);border-bottom:1px solid rgba(242,242,242,0.06);flex-wrap:wrap;gap:16px}\\n  .review-header-left{display:flex;align-items:center;gap:16px}\\n  .review-rank{font-family:\\'Anton\\',sans-serif;font-size:36px;color:rgba(255,154,47,0.3);line-height:1}\\n  .review-header .h3{margin:0}\\n  .review-header-right{display:flex;align-items:center;gap:12px}\\n  .review-score{font-family:\\'Anton\\',sans-serif;font-size:28px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n  .review-score-label{font-size:11px;color:rgba(242,242,242,0.4);text-transform:uppercase;letter-spacing:0.08em}\\n\\n  .review-body{padding:36px}\\n  .review-intro{margin-bottom:28px}\\n  .review-intro .body-text{margin-bottom:16px}\\n\\n  /* Showcase grid inside reviews */\\n  .showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}\\n  .showcase-item{aspect-ratio:9/16;border-radius:10px;overflow:hidden;position:relative}\\n  .showcase-item .media-placeholder{height:100%}\\n  .showcase-item .gif-badge{position:absolute;top:8px;right:8px;padding:2px 7px;border-radius:4px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);color:#fff;font-size:10px;font-weight:700;z-index:1}\\n\\n  /* ===== VIDEO SHOWCASE ===== */\\n  .showcase-item video{width:100%;height:100%;object-fit:cover;display:block}\\n  .showcase-item .play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:rgba(0,0,0,0.5);border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .3s;z-index:2}\\n  .showcase-item .play-icon svg{width:14px;height:14px;fill:#fff;margin-left:2px}\\n  .showcase-item:hover .play-icon{opacity:0}\\n\\n  /* SoulGen 3-col showcase */\\n  .showcase-grid-3{grid-template-columns:repeat(3,1fr)}\\n\\n  /* How to Use steps */\\n  .steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:8px}\\n\\n  /* Key specs row */\\n  .specs-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0;padding:20px 0;border-top:1px solid rgba(242,242,242,0.06);border-bottom:1px solid rgba(242,242,242,0.06)}\\n  .spec-item{text-align:center}\\n  .spec-value{font-family:\\'Inter\\',sans-serif;font-weight:800;font-size:18px;color:#f2f2f2;margin-bottom:2px}\\n  .spec-label{font-size:12px;color:rgba(242,242,242,0.4)}\\n\\n  /* Review footer */\\n  .review-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 36px;background:rgba(242,242,242,0.02);border-top:1px solid rgba(242,242,242,0.06);flex-wrap:wrap;gap:12px}\\n  .review-pricing{font-size:14px;color:rgba(242,242,242,0.6)}\\n  .review-pricing strong{color:#f2f2f2;font-size:18px}\\n\\n  /* ============================================\\n     METHODOLOGY\\n     ============================================ */\\n  .methodology{padding:56px 0;background:rgba(242,242,242,0.02)}\\n  .methodology .section-header{text-align:center;margin-bottom:40px}\\n  .method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}\\n  .method-card{text-align:center;padding:28px 20px}\\n  .method-icon{font-size:28px;margin-bottom:12px}\\n  .method-card .h4{margin-bottom:6px}\\n  .method-card .body-sm{font-size:13px}\\n\\n  /* ============================================\\n     FAQ\\n     ============================================ */\\n  .faq .section-header{text-align:center;margin-bottom:48px}\\n  .faq-list{max-width:800px;margin:0 auto}\\n  .faq-item{border-bottom:1px solid rgba(242,242,242,0.07)}\\n  .faq-question{width:100%;background:none;border:none;color:#f2f2f2;padding:22px 0;font-family:\\'Inter\\',sans-serif;font-size:16px;font-weight:600;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color .3s}\\n  .faq-question:hover{color:#FF2BA3}\\n  .faq-toggle{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:rgba(242,242,242,0.06);display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .3s}\\n  .faq-item.active .faq-toggle{background:rgba(255,43,163,0.15);color:#FF2BA3;transform:rotate(45deg)}\\n  .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}\\n  .faq-item.active .faq-answer{max-height:400px}\\n  .faq-answer-inner{padding:0 0 22px;font-size:15px;line-height:1.7;color:rgba(242,242,242,0.7)}\\n\\n  /* ============================================\\n     FINAL CTA\\n     ============================================ */\\n  .final-cta{text-align:center;padding:72px 0 88px;position:relative}\\n  .final-cta::before{content:\\'\\';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:800px;height:400px;background:radial-gradient(ellipse,rgba(255,43,163,0.06) 0%,rgba(255,154,47,0.03) 40%,transparent 70%);pointer-events:none}\\n  .cta-box{max-width:680px;margin:0 auto;padding:56px 44px;border-radius:20px;background:linear-gradient(135deg,rgba(255,43,163,0.07),rgba(255,154,47,0.05));border:1px solid rgba(255,43,163,0.18);position:relative}\\n  .cta-box .h2{margin-bottom:14px}\\n  .cta-box .body-text{margin-bottom:28px;max-width:480px;margin-left:auto;margin-right:auto}\\n\\n  /* ============================================\\n     RESPONSIVE 810px\\n     ============================================ */\\n  @media(max-width:810px){\\n    .container{padding:0 24px}\\n    section{padding:56px 0}\\n    .toc-grid{grid-template-columns:1fr}\\n    .toc-box{padding:24px 28px}\\n    .showcase-grid{grid-template-columns:repeat(2,1fr)}\\n    .showcase-grid-3{grid-template-columns:repeat(2,1fr)}\\n    .specs-row{grid-template-columns:repeat(2,1fr);gap:16px}\\n    .pros-cons{grid-template-columns:1fr}\\n    .method-grid{grid-template-columns:repeat(2,1fr)}\\n    .steps-grid{grid-template-columns:1fr;gap:24px}\\n    .review-header{padding:20px 24px}\\n    .review-body{padding:24px}\\n    .review-footer{padding:16px 24px}\\n    table.compare{min-width:640px}\\n  }\\n\\n  /* ============================================\\n     RESPONSIVE 390px\\n     ============================================ */\\n  @media(max-width:390px){\\n    .container{padding:0 16px}\\n    section{padding:44px 0}\\n    .hero{padding:40px 0 48px}\\n    .hero-meta{flex-direction:column;align-items:center;gap:8px}\\n    .toc-box{padding:20px}\\n    .showcase-grid{grid-template-columns:repeat(2,1fr);gap:8px}\\n    .showcase-grid-3{grid-template-columns:repeat(2,1fr);gap:8px}\\n    .specs-row{grid-template-columns:repeat(2,1fr);gap:12px}\\n    .spec-value{font-size:15px}\\n    .method-grid{grid-template-columns:1fr}\\n    .steps-grid{grid-template-columns:1fr;gap:20px}\\n    .review-rank{font-size:28px}\\n    .review-header{padding:16px}\\n    .review-body{padding:16px}\\n    .review-footer{padding:14px 16px;flex-direction:column;align-items:flex-start}\\n    table.compare thead th,table.compare tbody td{padding:10px 12px;font-size:12px}\\n    .faq-question{font-size:14px}\\n    .cta-box{padding:40px 20px;border-radius:16px}\\n    .cta-box .btn{width:100%}\\n  }\\n</style>\\n</head>\\n<body>\\n<div style=\"display:block !important;width:100% !important;max-width:100% !important;flex-direction:column !important;overflow-x:hidden !important\">\\n\\n<!-- ============================================\\n     HERO\\n     ============================================ -->\\n<section class=\"hero\">\\n  <div class=\"container\">\\n    <p class=\"label\">Updated March 2026</p>\\n    <h1 class=\"h1\">8 Best <span class=\"gradient-text\">NSFW AI Video Generators</span> in 2026</h1>\\n    <p class=\"body-text\">\\n      We tested 20+ NSFW AI video generators for face consistency, image-to-video quality, content freedom, and value. Here are the 8 that actually deliver — ranked from best to good enough.\\n    </p>\\n    <div class=\"hero-meta\">\\n      <span>&#128197; Last updated: Mar 20, 2026</span>\\n      <span>&#9201; 12 min read</span>\\n      <span>&#128736; 20+ tools tested</span>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     TABLE OF CONTENTS\\n     ============================================ -->\\n<section class=\"toc\">\\n  <div class=\"container\">\\n    <div class=\"toc-box\">\\n      <div class=\"toc-title\">Our Top Picks at a Glance</div>\\n      <div class=\"toc-grid\">\\n        <a href=\"#soulgen\" class=\"toc-item\"><span class=\"toc-rank\">1</span> SoulGen — Best Face Consistency</a>\\n        <a href=\"#pixeldojo\" class=\"toc-item\"><span class=\"toc-rank\">2</span> PixelDojo — Best Free Option</a>\\n        <a href=\"#zencreator\" class=\"toc-item\"><span class=\"toc-rank\">3</span> ZenCreator — Best Resolution</a>\\n        <a href=\"#seducedai\" class=\"toc-item\"><span class=\"toc-rank\">4</span> Seduced AI — Deepest Customization</a>\\n        <a href=\"#promptchan\" class=\"toc-item\"><span class=\"toc-rank\">5</span> PromptChan — Best All-in-One</a>\\n        <a href=\"#pornx\" class=\"toc-item\"><span class=\"toc-rank\">6</span> PornX.ai — Best Community</a>\\n        <a href=\"#spicygen\" class=\"toc-item\"><span class=\"toc-rank\">7</span> SpicyGen — Best for Characters</a>\\n        <a href=\"#a2e\" class=\"toc-item\"><span class=\"toc-rank\">8</span> A2E — Best for Face Swap Video</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     QUICK COMPARISON TABLE\\n     ============================================ -->\\n<section class=\"quick-compare\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">At a Glance</p>\\n      <h2 class=\"h2\">NSFW AI Video Generator Comparison</h2>\\n    </div>\\n    <div class=\"table-wrap\">\\n      <table class=\"compare\">\\n        <thead>\\n          <tr>\\n            <th>Tool</th>\\n            <th class=\"hl\">SoulGen</th>\\n            <th>PixelDojo</th>\\n            <th>ZenCreator</th>\\n            <th>Seduced AI</th>\\n            <th>PromptChan</th>\\n            <th>PornX</th>\\n          </tr>\\n        </thead>\\n        <tbody>\\n          <tr>\\n            <td>Face Consistency</td>\\n            <td class=\"hl\"><span class=\"ck\">95.8%</span></td>\\n            <td>Basic</td>\\n            <td>Good</td>\\n            <td>Good</td>\\n            <td>Basic</td>\\n            <td>Basic</td>\\n          </tr>\\n          <tr>\\n            <td>Image to Video</td>\\n            <td class=\"hl\"><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n          </tr>\\n          <tr>\\n            <td>Text to Video</td>\\n            <td class=\"hl\"><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n          </tr>\\n          <tr>\\n            <td>Max Duration</td>\\n            <td class=\"hl\">6s</td>\\n            <td>5s</td>\\n            <td>6s</td>\\n            <td>10s</td>\\n            <td>3s</td>\\n            <td>5s</td>\\n          </tr>\\n          <tr>\\n            <td>Resolution</td>\\n            <td class=\"hl\">HD</td>\\n            <td>HD</td>\\n            <td>1080p 60fps</td>\\n            <td>HD</td>\\n            <td>720p</td>\\n            <td>HD</td>\\n          </tr>\\n          <tr>\\n            <td>Free Tier</td>\\n            <td class=\"hl\">Free credits</td>\\n            <td>Unlimited*</td>\\n            <td>30 credits</td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n            <td>15/day</td>\\n          </tr>\\n          <tr>\\n            <td>Starting Price</td>\\n            <td class=\"hl\"><strong>$7.58/mo</strong></td>\\n            <td>Free</td>\\n            <td>$19.99</td>\\n            <td>~$300/mo</td>\\n            <td>$11.99/mo</td>\\n            <td>$9.99</td>\\n          </tr>\\n          <tr>\\n            <td>Our Score</td>\\n            <td class=\"hl\"><strong style=\"background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent\">9.2/10</strong></td>\\n            <td>8.5/10</td>\\n            <td>8.3/10</td>\\n            <td>8.0/10</td>\\n            <td>7.8/10</td>\\n            <td>7.5/10</td>\\n          </tr>\\n        </tbody>\\n      </table>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     #1 SOULGEN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"soulgen\">\\n  <div class=\"container\">\\n    <div class=\"review-card\" style=\"border-color:rgba(255,43,163,0.2)\">\\n      <div class=\"review-header\" style=\"background:linear-gradient(135deg,rgba(255,43,163,0.04),rgba(255,154,47,0.03))\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#1</div>\\n          <div>\\n            <h2 class=\"h3\">SoulGen — Best for Face Consistency & Image-to-Video</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-gold\">Editor\\'s Choice</span>\\n              <span class=\"badge badge-green\">Free Credits Available</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">9.2</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">SoulGen</strong> stands out as the most technically impressive NSFW AI video generator we tested. Originally known for its AI image generation, SoulGen expanded into video in 2025 with proprietary <strong style=\"color:#f2f2f2\">Deep Facial Fusion (DFF)</strong> and <strong style=\"color:#f2f2f2\">Dynamic Feature Disentanglement (DFD)</strong> technologies — and it shows. In our tests, it achieved <strong style=\"color:#FF2BA3\">95.8% ArcFace accuracy</strong> for face consistency, far ahead of any competitor.\\n          </p>\\n          <p class=\"body-text\">\\n            The core workflow is image-to-video: upload a photo, and SoulGen transforms it into a fluid, natural-motion video while preserving facial identity. It also supports text-to-video generation for creating scenes from scratch. The output quality is noticeably more realistic than most alternatives — faces don\\'t warp, body physics feel natural, and the motion is smooth rather than robotic.\\n          </p>\\n        </div>\\n\\n        <!-- Showcase — 6 items for SoulGen -->\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Examples</p>\\n        <div class=\"showcase-grid showcase-grid-3\">\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg1.webp\" src=\"sg/sg1-compressed.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg2.webp\" src=\"sg/sg2-compressed.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg3.webp\" src=\"sg/sg3-compressed.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg4.webp\" src=\"sg/sg4-compressed.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg5-poster.webp\" src=\"sg/sg5-compressed.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"none\" poster=\"sg/sg6-poster.webp\" src=\"sg/sg6-compressed.mp4\"></video>\\n          </div>\\n        </div>\\n\\n        <!-- Key specs -->\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value accent\">95.8%</div>\\n            <div class=\"spec-label\">Face Consistency</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">&lt;30s</div>\\n            <div class=\"spec-label\">Generation Time</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">6s</div>\\n            <div class=\"spec-label\">Max Duration</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">HD</div>\\n            <div class=\"spec-label\">Output Quality</div>\\n          </div>\\n        </div>\\n\\n        <h3 class=\"h4\" style=\"margin-bottom:12px\">Key Features</h3>\\n        <ul style=\"list-style:none;font-size:15px;color:rgba(242,242,242,0.75);line-height:2\">\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Image-to-Video AI</strong> — Upload any photo, get a realistic animated video. Identity is perfectly preserved throughout every frame.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Text-to-Video</strong> — Describe a scene with detailed prompts for fully generated content from scratch. Supports complex scene descriptions.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Identity Preservation</strong> — Use the same face across multiple videos for consistent character creation. Build entire series with the same character.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Natural Motion Physics</strong> — Advanced motion synthesis avoids the \"AI slop\" robotic look. Body physics feel realistic and fluid.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Anime & Realistic Styles</strong> — Switch between photorealistic and anime art styles depending on your creative needs.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Fully Cloud-Based</strong> — No downloads, no GPU needed. Works in any browser on any device.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Privacy First</strong> — Encrypted uploads, no data sharing, full content ownership. Your creations stay private.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Video Editing Suite</strong> — Built-in video editing, text overlay, and video-to-audio tools for post-processing.</li>\\n        </ul>\\n\\n        <!-- How SoulGen Works -->\\n        <h3 class=\"h4\" style=\"margin-top:28px;margin-bottom:16px\">How to Use SoulGen AI Video Generator</h3>\\n        <div class=\"steps-grid\">\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;color:rgba(255,43,163,0.15);line-height:1;margin-bottom:8px\">01</div>\\n            <div class=\"media-placeholder\" style=\"aspect-ratio:16/10;margin-bottom:10px\"><span>Upload interface screenshot</span></div>\\n            <p class=\"h4\">Upload or Describe</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Upload a photo for img2vid, or type a text prompt for text-to-video.</p>\\n          </div>\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;color:rgba(255,43,163,0.15);line-height:1;margin-bottom:8px\">02</div>\\n            <div class=\"media-placeholder\" style=\"aspect-ratio:16/10;margin-bottom:10px\"><span>Settings panel screenshot</span></div>\\n            <p class=\"h4\">Customize Settings</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Adjust motion intensity, style (realistic/anime), and duration.</p>\\n          </div>\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;color:rgba(255,43,163,0.15);line-height:1;margin-bottom:8px\">03</div>\\n            <div class=\"media-placeholder\" style=\"aspect-ratio:16/10;margin-bottom:10px\"><span>Result GIF preview</span></div>\\n            <p class=\"h4\">Generate & Download</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Get your HD AI video in under 30 seconds. No watermarks on paid plans.</p>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Best face consistency in the market (95.8%)</li>\\n              <li>Very natural, non-robotic motion</li>\\n              <li>Simple upload-and-generate workflow</li>\\n              <li>Affordable pricing ($7.58/mo annual)</li>\\n              <li>Both image-to-video and text-to-video</li>\\n              <li>Fast generation (&lt;30 seconds)</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Max 6-second videos (extension coming soon)</li>\\n              <li>Requires account signup for free credits</li>\\n              <li>No audio/sound in generated videos yet</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$7.58/mo</strong> (annual) \\xb7 Free credits for new users</div>\\n        <a href=\"#\" class=\"btn btn-primary btn-sm\">Try SoulGen Free →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #2 PIXELDOJO\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"pixeldojo\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#2</div>\\n          <div>\\n            <h2 class=\"h3\">PixelDojo — Best Free NSFW AI Video Generator</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-green\">Free \\xb7 No Signup</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.5</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">PixelDojo</strong> is the go-to choice if you want to try NSFW AI video generation without spending a dime or creating an account. With 3M+ users and WAN 2.2 integration, it delivers surprisingly good results for a free tool. The no-signup approach removes all friction — just visit the site, enter a prompt, and generate.\\n          </p>\\n          <p class=\"body-text\">\\n            The trade-off is quality: face consistency is noticeably lower than SoulGen, and outputs can feel less polished. But for casual experimentation or users who want to test the waters before committing to a paid tool, PixelDojo is hard to beat.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>PixelDojo video sample</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">3M+</div><div class=\"spec-label\">Users</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">WAN 2.2</div><div class=\"spec-label\">AI Model</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">5s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">HD</div><div class=\"spec-label\">Output Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Completely free to use</li>\\n              <li>No signup or email required</li>\\n              <li>WAN 2.2 model integration</li>\\n              <li>Community gallery for inspiration</li>\\n              <li>Simple, fast interface</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Lower face consistency than paid tools</li>\\n              <li>Quality varies significantly between generations</li>\\n              <li>Free tier has hidden limitations</li>\\n              <li>Less control over output parameters</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>Free</strong> \\xb7 No signup required</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit PixelDojo →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #3 ZENCREATOR\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"zencreator\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#3</div>\\n          <div>\\n            <h2 class=\"h3\">ZenCreator — Best Resolution & Frame Rate</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-blue\">1080p 60fps</span>\\n              <span class=\"badge badge-green\">30 Free Credits</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.3</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">ZenCreator</strong> positions itself as the \"#1 uncensored AI video generator\" and backs it up with impressive specs: <strong style=\"color:#f2f2f2\">1080p resolution at 60fps</strong> — the highest output quality in this roundup. It also uses a credits-based model where credits never expire, which is a refreshing departure from monthly subscription pressure.\\n          </p>\\n          <p class=\"body-text\">\\n            In our testing, ZenCreator delivered consistently smooth video with excellent detail. The 60fps output is noticeably fluid compared to competitors running at 24-30fps. Face consistency is good but doesn\\'t match SoulGen\\'s precision. The 30 free credits give you enough to properly evaluate the tool before buying.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>ZenCreator 1080p 60fps sample</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">1080p</div><div class=\"spec-label\">Resolution</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">60fps</div><div class=\"spec-label\">Frame Rate</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">6s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">&lt;60s</div><div class=\"spec-label\">Gen Time</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Highest resolution (1080p 60fps)</li>\\n              <li>Credits never expire</li>\\n              <li>30 free credits to start</li>\\n              <li>Very smooth, fluid motion</li>\\n              <li>Transparent pricing</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Higher price point ($19.99 entry)</li>\\n              <li>Face consistency below SoulGen</li>\\n              <li>No character identity preservation</li>\\n              <li>Newer platform, smaller community</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$19.99</strong> (200 credits, never expire)</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit ZenCreator →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #4 SEDUCED AI\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"seducedai\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#4</div>\\n          <div>\\n            <h2 class=\"h3\">Seduced AI — Deepest Customization for NSFW Video</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-purple\">100+ Options</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.0</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">Seduced AI</strong> targets power users who want maximum control over every aspect of their generated content. Its unique <strong style=\"color:#f2f2f2\">8-layer extension system</strong> lets you mix and match from 100+ customization options — body type, skin tone, outfits, poses, backgrounds, and more. It also supports personal likeness cloning and a character save/reuse system.\\n          </p>\\n          <p class=\"body-text\">\\n            Video generation supports up to 10 seconds — the longest in this roundup. The level of detail control is unmatched, but this comes at a steep price (~$300/mo for Pro). This is a tool for serious creators who know exactly what they want and are willing to pay for precision.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>Seduced AI custom character</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">100+</div><div class=\"spec-label\">Customization Options</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">10s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">8</div><div class=\"spec-label\">Extension Layers</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">HD</div><div class=\"spec-label\">Output Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Deepest customization in the market</li>\\n              <li>Longest video duration (10s)</li>\\n              <li>Personal likeness cloning</li>\\n              <li>Character save & reuse system</li>\\n              <li>AI model trainer included</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Very expensive (~$300/mo)</li>\\n              <li>No free tier available</li>\\n              <li>Steep learning curve</li>\\n              <li>Complex interface for beginners</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>~$300/mo</strong> (Pro plan)</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit Seduced AI →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #5 PROMPTCHAN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"promptchan\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#5</div>\\n          <div>\\n            <h2 class=\"h3\">PromptChan — Best All-in-One NSFW AI Platform</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-blue\">Images + Video + AI Chat</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.8</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">PromptChan</strong> is less a video generator and more a complete NSFW AI ecosystem. It bundles image generation, video generation, AI girlfriends, and face swap into one platform. With 2M+ user-generated creations and active prompt sharing, it\\'s also one of the most community-driven tools available.\\n          </p>\\n          <p class=\"body-text\">\\n            Video generation is Pro-only (starting at $26.99/mo) and limited to 2-3 seconds — the shortest in our list. The video quality lags behind dedicated tools, but if you want one subscription that covers images, video, chat, and face swap, PromptChan offers the broadest feature set.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>PromptChan video sample</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">2M+</div><div class=\"spec-label\">Creations</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">3s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">4-in-1</div><div class=\"spec-label\">Platform</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">720p</div><div class=\"spec-label\">Video Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Most features in one platform</li>\\n              <li>Active community & prompt sharing</li>\\n              <li>Anime, realistic, and 3D styles</li>\\n              <li>AI girlfriend feature bundled</li>\\n              <li>Face swap for photos & video</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Video is Pro-only ($26.99/mo)</li>\\n              <li>Very short video duration (2-3s)</li>\\n              <li>Lower video quality than dedicated tools</li>\\n              <li>Jack of all trades, master of none</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$11.99/mo</strong> (Plus) \\xb7 Video requires Pro at $26.99/mo</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit PromptChan →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #6 PORNX\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"pornx\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#6</div>\\n          <div>\\n            <h2 class=\"h3\">PornX.ai — Best Community-Driven NSFW AI Generator</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-green\">15 Free/Day</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.5</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">PornX.ai</strong> built its reputation on \"the Hub\" — a massive community gallery with millions of user-generated AI creations. The free tier is generous (15 creations/day), making it one of the most accessible entry points in this space. The platform excels at image generation with extensive customization for body type, skin tone, outfits, and poses.\\n          </p>\\n          <p class=\"body-text\">\\n            Video generation is restricted to Gold members ($25/mo), and it\\'s image-only — text-to-video isn\\'t available. Image quality is strong, but the video output quality trails behind SoulGen and ZenCreator. PornX\\'s real strength is its community: browsing the Hub for inspiration and learning from what others create.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>PornX community sample</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Large active community gallery</li>\\n              <li>15 free creations per day</li>\\n              <li>Extensive appearance customization</li>\\n              <li>4K image upscale available</li>\\n              <li>Inpainting for targeted edits</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Video only for Gold ($25/mo)</li>\\n              <li>No text-to-video support</li>\\n              <li>Video quality below leaders</li>\\n              <li>Heavy focus on images over video</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$9.99</strong> (300 tokens) \\xb7 Video requires Gold at $25/mo</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit PornX.ai →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #7 SPICYGEN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"spicygen\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#7</div>\\n          <div>\\n            <h2 class=\"h3\">SpicyGen — Best for Character-Driven NSFW Content</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-purple\">Interactive Characters</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.3</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">SpicyGen</strong> takes a different approach from pure video generators. It focuses on interactive, character-driven adult content where you build persistent characters and generate content around them. The platform uses straightforward prompts to generate still images and short video clips with a focus on creative storytelling.\\n          </p>\\n          <p class=\"body-text\">\\n            It\\'s free to start with no credit card required, making it easy to explore. The output quality is clean but not as technically impressive as SoulGen or ZenCreator. SpicyGen\\'s strength lies in the character persistence and interactive storytelling experience rather than raw video quality.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>SpicyGen character demo</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Strong character persistence</li>\\n              <li>Interactive storytelling mode</li>\\n              <li>Free tier with no credit card</li>\\n              <li>Clean, high-quality outputs</li>\\n              <li>Simple prompt interface</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Video quality below top tools</li>\\n              <li>More image-focused than video</li>\\n              <li>Limited video customization options</li>\\n              <li>Smaller user base</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$19.99</strong> (400 credits) \\xb7 Free tier available</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit SpicyGen →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #8 A2E\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"a2e\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#8</div>\\n          <div>\\n            <h2 class=\"h3\">A2E — Best for NSFW Face Swap & Voice Cloning</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-green\">Free Tier</span>\\n              <span class=\"badge badge-blue\">API Access</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.0</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">A2E</strong> specializes in face swapping and voice cloning for video content — a different niche than pure AI video generation. If you have an existing video and want to swap faces or clone voices, A2E is one of the few tools that does this uncensored. It also offers API access for developers building on top of the platform.\\n          </p>\\n          <p class=\"body-text\">\\n            The free tier is functional but limited, and the Pro plan at $9.9/mo is the most affordable paid option in this roundup. A2E is best suited as a complementary tool alongside a primary video generator like SoulGen rather than a standalone solution.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <span class=\"gif-badge\">GIF</span>\\n            <div class=\"media-placeholder\"><span class=\"ph-icon\">&#9654;</span><span>A2E face swap demo</span></div>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Best face swap for NSFW video</li>\\n              <li>Voice cloning included</li>\\n              <li>API access for developers</li>\\n              <li>Very affordable ($9.9/mo)</li>\\n              <li>Free tier available</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Not a full video generator — face swap only</li>\\n              <li>Requires existing source video</li>\\n              <li>Quality depends on source material</li>\\n              <li>Ethical concerns with face swap tech</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$9.9/mo</strong> \\xb7 Free tier available</div>\\n        <a href=\"#\" class=\"btn btn-outline btn-sm\">Visit A2E →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     METHODOLOGY\\n     ============================================ -->\\n<section class=\"methodology\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">Our Process</p>\\n      <h2 class=\"h2\">How We Tested These NSFW AI Video Generators</h2>\\n      <p class=\"body-text\" style=\"max-width:640px;margin:12px auto 0\">We spent 40+ hours testing 20+ tools with identical prompts and source images to ensure fair comparison.</p>\\n    </div>\\n    <div class=\"method-grid\">\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#128269;</div>\\n        <h4 class=\"h4\">Face Consistency</h4>\\n        <p class=\"body-sm\">Measured ArcFace similarity scores across all frames to quantify identity preservation.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#127916;</div>\\n        <h4 class=\"h4\">Output Quality</h4>\\n        <p class=\"body-sm\">Evaluated resolution, motion fluidity, artifact frequency, and overall visual realism.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#9881;</div>\\n        <h4 class=\"h4\">Ease of Use</h4>\\n        <p class=\"body-sm\">Tested onboarding, interface design, prompt adherence, and time-to-first-result.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#128176;</div>\\n        <h4 class=\"h4\">Value for Money</h4>\\n        <p class=\"body-sm\">Compared pricing models, credits per dollar, free tier generosity, and hidden costs.</p>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     FAQ\\n     ============================================ -->\\n<section class=\"faq\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">FAQ</p>\\n      <h2 class=\"h2\">NSFW AI Video Generator — Common Questions</h2>\\n    </div>\\n    <div class=\"faq-list\">\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>What is the best NSFW AI video generator in 2026?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Based on our testing of 20+ tools, <strong>SoulGen</strong> ranks #1 for overall quality. It leads in face consistency (95.8% ArcFace accuracy), offers both image-to-video and text-to-video, and is priced competitively at $7.58/mo. For users on a budget, <strong>PixelDojo</strong> is the best free option, while <strong>ZenCreator</strong> offers the highest resolution at 1080p 60fps.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Is there a free NSFW AI video generator that actually works?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Yes. <strong>PixelDojo</strong> offers free NSFW AI video generation with no signup required, though quality is limited. <strong>PornX.ai</strong> gives 15 free creations per day, and <strong>SoulGen</strong> offers free credits for new users. For truly unlimited free generation, open-source models like WAN 2.2 can be run locally, but require technical setup and a powerful GPU.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>How does image-to-video AI NSFW generation work?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Image-to-video AI analyzes a source image and generates motion frames while preserving the original appearance. The best tools like SoulGen use specialized technologies (Deep Facial Fusion) to maintain face identity throughout the animation. You simply upload a photo, the AI predicts natural movement, and outputs a short video clip — typically 3-10 seconds long.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Are NSFW AI video generators safe to use?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Reputable tools like SoulGen, ZenCreator, and PixelDojo use encrypted connections and don\\'t share your data. However, safety varies by platform — always check the privacy policy before uploading personal images. For maximum privacy, consider tools that emphasize data encryption and no-log policies, or run open-source models locally on your own hardware.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>What is the difference between image-to-video and text-to-video NSFW AI?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\"><strong>Image-to-video</strong> starts from a photo you upload and animates it — ideal when you already have a specific look in mind. <strong>Text-to-video</strong> generates everything from a text description — better for creating scenes from scratch. Image-to-video typically produces more consistent results because the AI has a visual reference, while text-to-video offers more creative freedom but less predictability.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Why are NSFW AI videos so short (3-10 seconds)?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Current AI video models require enormous computational resources for each frame. Generating longer videos exponentially increases processing time, cost, and the chance of quality degradation (face warping, motion artifacts). Most tools limit output to 3-10 seconds to maintain quality. The industry is rapidly improving — video extension features are being developed to allow stitching multiple clips together.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Can I maintain character consistency across multiple NSFW AI videos?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">This is one of the hardest challenges in AI video generation. <strong>SoulGen</strong> leads here with its identity preservation feature — upload a reference face and generate multiple videos with the same character. <strong>Seduced AI</strong> also offers a character save/reuse system. Most free tools don\\'t offer reliable character consistency across separate generations.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Is AI-generated NSFW content legal?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">AI-generated NSFW content using fictional characters is generally legal in most jurisdictions, but laws vary significantly by country and region. Creating content depicting minors is illegal everywhere. Using someone\\'s likeness without consent may violate right-of-publicity laws. Always check your local regulations and use these tools responsibly and ethically.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>Do I need a powerful computer to generate NSFW AI videos?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Not for cloud-based tools. SoulGen, PixelDojo, ZenCreator, and all other tools in this list run entirely in your browser — no downloads, no GPU requirements. Only if you want to run open-source models like WAN 2.2 locally will you need a powerful GPU (typically 12GB+ VRAM). For most users, cloud tools are the easiest and most practical option.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\"><span>What\\'s the best NSFW AI video generator for beginners?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">For absolute beginners, we recommend starting with <strong>PixelDojo</strong> (free, no signup) to experiment, then upgrading to <strong>SoulGen</strong> when you want better quality. SoulGen\\'s workflow is straightforward: upload an image → click generate → download your video. No technical knowledge required. Avoid Seduced AI or local models as a beginner — their complexity can be overwhelming.</div></div>\\n      </div>\\n\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     FINAL CTA\\n     ============================================ -->\\n<section class=\"final-cta\">\\n  <div class=\"container\">\\n    <div class=\"cta-box\">\\n      <p class=\"label\" style=\"margin-bottom:12px\">Our #1 Pick</p>\\n      <h2 class=\"h2\">Try SoulGen — The Best NSFW AI Video Generator</h2>\\n      <p class=\"body-text\">95.8% face consistency \\xb7 Image to video in &lt;30s \\xb7 Free credits to start</p>\\n      <a href=\"#\" class=\"btn btn-primary\">Start Creating Free →</a>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     FAQ SCHEMA (JSON-LD)\\n     ============================================ -->\\n<script type=\"application/ld+json\">\\n{\\n  \"@context\":\"https://schema.org\",\\n  \"@type\":\"FAQPage\",\\n  \"mainEntity\":[\\n    {\"@type\":\"Question\",\"name\":\"What is the best NSFW AI video generator in 2026?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Based on testing 20+ tools, SoulGen ranks #1 for overall quality with 95.8% face consistency. PixelDojo is the best free option, and ZenCreator offers the highest resolution at 1080p 60fps.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Is there a free NSFW AI video generator that actually works?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. PixelDojo offers free generation with no signup. PornX.ai gives 15 free creations per day. SoulGen offers free credits for new users. For unlimited free generation, open-source models like WAN 2.2 can run locally.\"}},\\n    {\"@type\":\"Question\",\"name\":\"How does image-to-video AI NSFW generation work?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Image-to-video AI analyzes a source image, predicts natural movement, and generates animation frames while preserving identity. Tools like SoulGen use Deep Facial Fusion to maintain face consistency throughout.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Are NSFW AI video generators safe to use?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Reputable tools use encrypted connections and don\\'t share data. Always check privacy policies before uploading personal images. For maximum privacy, run open-source models locally.\"}},\\n    {\"@type\":\"Question\",\"name\":\"What is the difference between image-to-video and text-to-video NSFW AI?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Image-to-video animates an uploaded photo for consistent results. Text-to-video creates everything from a description for more creative freedom but less predictability.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Why are NSFW AI videos so short (3-10 seconds)?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Current AI models need enormous computational resources per frame. Longer videos increase processing time and quality degradation risks. The industry is developing video extension features.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Can I maintain character consistency across multiple NSFW AI videos?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"SoulGen leads with identity preservation for consistent characters across videos. Seduced AI also offers character save/reuse. Most free tools don\\'t offer reliable cross-generation consistency.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Is AI-generated NSFW content legal?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"AI-generated NSFW content with fictional characters is generally legal in most jurisdictions but laws vary. Content depicting minors is illegal everywhere. Check local regulations.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Do I need a powerful computer to generate NSFW AI videos?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Not for cloud-based tools — they run in your browser with no downloads or GPU needed. Only local open-source models like WAN 2.2 require a powerful GPU (12GB+ VRAM).\"}},\\n    {\"@type\":\"Question\",\"name\":\"What\\'s the best NSFW AI video generator for beginners?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Start with PixelDojo (free, no signup) to experiment, then upgrade to SoulGen for better quality. SoulGen\\'s workflow is upload → generate → download, no technical skills needed.\"}}\\n  ]\\n}\\n</script>\\n\\n<!-- ============================================\\n     FAQ TOGGLE\\n     ============================================ -->\\n<script>\\ndocument.querySelectorAll(\\'.faq-question\\').forEach(function(b){\\n  b.addEventListener(\\'click\\',function(){\\n    var item=this.parentElement,active=item.classList.contains(\\'active\\');\\n    document.querySelectorAll(\\'.faq-item\\').forEach(function(e){e.classList.remove(\\'active\\')});\\n    if(!active)item.classList.add(\\'active\\');\\n  });\\n});\\n</script>\\n\\n<!-- ============================================\\n     VIDEO HOVER PLAY\\n     ============================================ -->\\n<script>\\ndocument.querySelectorAll(\\'.showcase-item video\\').forEach(function(v){\\n  var icon=v.parentElement.querySelector(\\'.play-icon\\');\\n  v.parentElement.addEventListener(\\'mouseenter\\',function(){\\n    v.play();\\n    if(icon)icon.style.opacity=\\'0\\';\\n  });\\n  v.parentElement.addEventListener(\\'mouseleave\\',function(){\\n    v.pause();\\n    v.currentTime=0;\\n    if(icon)icon.style.opacity=\\'1\\';\\n  });\\n});\\n</script>\\n\\n</div>\\n</body>\\n</html>\\n'}},children:/*#__PURE__*/_jsx(Embed,{height:\"100%\",html:'<!DOCTYPE html>\\n<html lang=\"en\">\\n<head>\\n<meta charset=\"UTF-8\">\\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\\n<title>7 Best Uncensored AI Video Generators in 2026 (Tested & Ranked) | SoulGen</title>\\n<meta name=\"description\" content=\"We tested 20+ uncensored AI video generators and ranked the 7 best for face consistency, image-to-video quality, pricing, and content freedom. Updated for 2026.\">\\n<link rel=\"preconnect\" href=\"https://fonts.googleapis.com\">\\n<link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin>\\n<link href=\"https://fonts.googleapis.com/css2?family=Anton&family=Fira+Sans:wght@300;400;500;600;700&family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\\n<style>\\n  /* ===== RESET ===== */\\n  *,*::before,*::after{margin:0;padding:0;box-sizing:border-box}\\n  html{scroll-behavior:smooth}\\n  body{font-family:\\'Fira Sans\\',sans-serif;background:#030423;color:#f2f2f2;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}\\n  a{color:inherit;text-decoration:none}\\n  img,video{max-width:100%;height:auto;display:block}\\n  button{font-family:inherit}\\n\\n  /* ===== TYPOGRAPHY ===== */\\n  .h1{font-family:\\'Anton\\',sans-serif;font-size:clamp(30px,5vw,52px);line-height:1.25;letter-spacing:0.02em;text-transform:uppercase;word-spacing:0.05em}\\n  .h2{font-family:\\'Anton\\',sans-serif;font-size:clamp(24px,3.5vw,40px);line-height:1.2;letter-spacing:0.04em;text-transform:uppercase;word-spacing:0.05em}\\n  .h3{font-family:\\'Inter\\',sans-serif;font-size:clamp(18px,2.2vw,24px);font-weight:700;line-height:1.3;letter-spacing:-0.02em}\\n  .h4{font-family:\\'Inter\\',sans-serif;font-size:clamp(15px,1.6vw,18px);font-weight:700;line-height:1.4}\\n  .body-text{font-family:\\'Fira Sans\\',sans-serif;font-size:clamp(15px,1.6vw,17px);line-height:1.7;color:rgba(242,242,242,0.75)}\\n  .body-sm{font-size:14px;line-height:1.6;color:rgba(242,242,242,0.6)}\\n  .label{font-family:\\'Inter\\',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.14em;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n\\n  /* ===== LAYOUT ===== */\\n  .container{width:100%;max-width:1200px;margin:0 auto;padding:0 40px}\\n  section{padding:72px 0}\\n\\n  /* ===== COLORS ===== */\\n  .accent{color:#FF2BA3}\\n  .gradient-text{background:linear-gradient(135deg,#FF2BA3 0%,#FF9A2F 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n\\n  /* ===== BUTTONS ===== */\\n  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:8px;font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:15px;cursor:pointer;transition:all .3s;border:none;white-space:nowrap}\\n  .btn-primary{background:linear-gradient(135deg,#FF2BA3,#FF9A2F);color:#fff;box-shadow:0 4px 20px rgba(255,43,163,0.25)}\\n  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 28px rgba(255,43,163,0.4)}\\n  .btn-outline{background:transparent;color:#f2f2f2;border:1.5px solid rgba(242,242,242,0.25)}\\n  .btn-outline:hover{border-color:#FF2BA3;color:#FF2BA3}\\n  .btn-sm{padding:10px 20px;font-size:13px;border-radius:6px}\\n\\n  /* ===== CARDS ===== */\\n  .card{background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.07);border-radius:16px;transition:all .3s}\\n  .card:hover{border-color:rgba(255,43,163,0.2)}\\n\\n  /* ===== BADGES ===== */\\n  .badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:100px;font-size:12px;font-weight:600;font-family:\\'Inter\\',sans-serif}\\n  .badge-gold{background:linear-gradient(135deg,rgba(255,43,163,0.15),rgba(255,154,47,0.15));color:#FF2BA3;border:1px solid rgba(255,43,163,0.3)}\\n  .badge-green{background:rgba(74,222,128,0.1);color:#4ADE80;border:1px solid rgba(74,222,128,0.2)}\\n  .badge-blue{background:rgba(96,165,250,0.1);color:#60A5FA;border:1px solid rgba(96,165,250,0.2)}\\n  .badge-purple{background:rgba(167,139,250,0.1);color:#A78BFA;border:1px solid rgba(167,139,250,0.2)}\\n\\n  /* ===== DIVIDER ===== */\\n  .divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,43,163,0.2),rgba(255,154,47,0.2),transparent);margin:0}\\n\\n  /* ===== PROS CONS ===== */\\n  .pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}\\n  .pros h4,.cons h4{font-size:14px;font-weight:700;margin-bottom:10px;font-family:\\'Inter\\',sans-serif}\\n  .pros h4{color:#4ADE80}\\n  .cons h4{color:#FF6B6B}\\n  .pros ul,.cons ul{list-style:none;font-size:14px;line-height:1.8;color:rgba(242,242,242,0.7)}\\n  .pros li::before{content:\"✓ \";color:#4ADE80;font-weight:700}\\n  .cons li::before{content:\"✗ \";color:#FF6B6B;font-weight:700}\\n\\n  /* ===== PLACEHOLDER MEDIA ===== */\\n  .media-placeholder{width:100%;border-radius:12px;overflow:hidden;background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.06);display:flex;align-items:center;justify-content:center;color:rgba(242,242,242,0.2);font-size:13px;flex-direction:column;gap:8px}\\n  .media-placeholder .ph-icon{font-size:28px;opacity:0.4}\\n\\n  /* ============================================\\n     HERO\\n     ============================================ */\\n  .hero{padding:56px 0 64px;text-align:center;position:relative}\\n  .hero::before{content:\\'\\';position:absolute;top:-200px;left:50%;transform:translateX(-50%);width:800px;height:600px;background:radial-gradient(circle,rgba(255,43,163,0.06) 0%,rgba(255,154,47,0.03) 40%,transparent 70%);pointer-events:none}\\n  .hero .label{margin-bottom:14px}\\n  .hero .h1{margin-bottom:20px;max-width:860px;margin-left:auto;margin-right:auto}\\n  .hero .body-text{max-width:680px;margin:0 auto 28px}\\n  .hero-meta{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:13px;color:rgba(242,242,242,0.45);margin-bottom:32px}\\n  .hero-meta span{display:flex;align-items:center;gap:6px}\\n\\n  /* ============================================\\n     TOC — TABLE OF CONTENTS\\n     ============================================ */\\n  .toc{padding:40px 0}\\n  .toc-box{background:rgba(242,242,242,0.03);border:1px solid rgba(242,242,242,0.08);border-radius:16px;padding:32px 40px}\\n  .toc-title{font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:16px;margin-bottom:16px;color:#f2f2f2}\\n  .toc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 32px}\\n  .toc-item{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:15px;color:rgba(242,242,242,0.7);transition:color .2s}\\n  .toc-item:hover{color:#FF2BA3}\\n  .toc-rank{width:26px;height:26px;border-radius:6px;background:rgba(255,43,163,0.1);color:#FF2BA3;font-family:\\'Inter\\',sans-serif;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}\\n  .toc-item:first-child .toc-rank{background:rgba(255,43,163,0.2)}\\n\\n  /* ============================================\\n     QUICK COMPARISON TABLE\\n     ============================================ */\\n  .quick-compare{padding:48px 0}\\n  .quick-compare .section-header{text-align:center;margin-bottom:40px}\\n  .table-wrap{overflow-x:auto;border-radius:16px;border:1px solid rgba(242,242,242,0.08)}\\n  table.compare{width:100%;border-collapse:collapse;min-width:780px}\\n  table.compare thead th{padding:16px 18px;text-align:left;font-family:\\'Inter\\',sans-serif;font-weight:700;font-size:13px;background:rgba(242,242,242,0.05);border-bottom:1px solid rgba(242,242,242,0.08);white-space:nowrap}\\n  table.compare thead th:first-child{border-radius:16px 0 0 0}\\n  table.compare thead th:last-child{border-radius:0 16px 0 0}\\n  table.compare thead th.hl{background:linear-gradient(135deg,rgba(255,43,163,0.1),rgba(255,154,47,0.1));color:#FF2BA3}\\n  table.compare tbody td{padding:13px 18px;font-size:14px;border-bottom:1px solid rgba(242,242,242,0.04);color:rgba(242,242,242,0.7)}\\n  table.compare tbody td:first-child{font-weight:600;color:#f2f2f2}\\n  table.compare tbody td.hl{background:rgba(255,154,47,0.04);color:#f2f2f2}\\n  table.compare tbody tr:last-child td{border-bottom:none}\\n  .ck{color:#4ADE80}\\n  .cx{color:#FF6B6B;opacity:0.6}\\n\\n  /* ============================================\\n     TOOL REVIEW CARDS\\n     ============================================ */\\n  .tool-review{padding:64px 0}\\n  .tool-review + .tool-review{padding-top:0}\\n\\n  .review-card{border-radius:20px;overflow:hidden;background:rgba(242,242,242,0.02);border:1px solid rgba(242,242,242,0.07)}\\n\\n  .review-header{display:flex;align-items:center;justify-content:space-between;padding:28px 36px;background:rgba(242,242,242,0.03);border-bottom:1px solid rgba(242,242,242,0.06);flex-wrap:wrap;gap:16px}\\n  .review-header-left{display:flex;align-items:center;gap:16px}\\n  .review-rank{font-family:\\'Anton\\',sans-serif;font-size:36px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}\\n  .review-header .h3{margin:0}\\n  .review-header-right{display:flex;align-items:center;gap:12px}\\n  .review-score{font-family:\\'Anton\\',sans-serif;font-size:28px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}\\n  .review-score-label{font-size:11px;color:rgba(242,242,242,0.4);text-transform:uppercase;letter-spacing:0.08em}\\n\\n  .review-body{padding:36px}\\n  .review-intro{margin-bottom:28px}\\n  .review-intro .body-text{margin-bottom:16px}\\n\\n  /* Showcase grid inside reviews */\\n  .showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}\\n  .showcase-item{aspect-ratio:9/16;border-radius:10px;overflow:hidden;position:relative}\\n  .showcase-item .media-placeholder{height:100%}\\n  .showcase-item .gif-badge{position:absolute;top:8px;right:8px;padding:2px 7px;border-radius:4px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);color:#fff;font-size:10px;font-weight:700;z-index:1}\\n\\n  /* ===== VIDEO SHOWCASE ===== */\\n  .showcase-item video{width:100%;height:100%;object-fit:cover;display:block}\\n  .showcase-item .play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;background:rgba(0,0,0,0.5);border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:opacity .3s;z-index:2}\\n  .showcase-item .play-icon svg{width:14px;height:14px;fill:#fff;margin-left:2px}\\n  .showcase-item:hover .play-icon{opacity:0}\\n\\n  /* SoulGen 3-col showcase */\\n  .showcase-grid-3{grid-template-columns:repeat(3,1fr)}\\n\\n  /* How to Use steps */\\n  .steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:8px}\\n\\n  /* Key specs row */\\n  .specs-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0;padding:20px 0;border-top:1px solid rgba(242,242,242,0.06);border-bottom:1px solid rgba(242,242,242,0.06)}\\n  .spec-item{text-align:center}\\n  .spec-value{font-family:\\'Inter\\',sans-serif;font-weight:800;font-size:18px;color:#f2f2f2;margin-bottom:2px}\\n  .spec-label{font-size:12px;color:rgba(242,242,242,0.4)}\\n\\n  /* Review footer */\\n  .review-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 36px;background:rgba(242,242,242,0.02);border-top:1px solid rgba(242,242,242,0.06);flex-wrap:wrap;gap:12px}\\n  .review-pricing{font-size:14px;color:rgba(242,242,242,0.6)}\\n  .review-pricing strong{color:#f2f2f2;font-size:18px}\\n\\n  /* ============================================\\n     METHODOLOGY\\n     ============================================ */\\n  .methodology{padding:56px 0;background:rgba(242,242,242,0.02)}\\n  .methodology .section-header{text-align:center;margin-bottom:40px}\\n  .method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}\\n  .method-card{text-align:center;padding:28px 20px}\\n  .method-icon{font-size:28px;margin-bottom:12px}\\n  .method-card .h4{margin-bottom:6px}\\n  .method-card .body-sm{font-size:13px}\\n\\n  /* ============================================\\n     FAQ\\n     ============================================ */\\n  .faq .section-header{text-align:center;margin-bottom:48px}\\n  .faq-list{max-width:800px;margin:0 auto}\\n  .faq-item{border-bottom:1px solid rgba(242,242,242,0.07)}\\n  .faq-question{width:100%;background:none;border:none;color:#f2f2f2;padding:22px 0;font-family:\\'Inter\\',sans-serif;font-size:16px;font-weight:600;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:color .3s}\\n  .faq-question:hover{color:#FF2BA3}\\n  .faq-toggle{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:rgba(242,242,242,0.06);display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .3s}\\n  .faq-item.active .faq-toggle{background:rgba(255,43,163,0.15);color:#FF2BA3;transform:rotate(45deg)}\\n  .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}\\n  .faq-item.active .faq-answer{max-height:400px}\\n  .faq-answer-inner{padding:0 0 22px;font-size:15px;line-height:1.7;color:rgba(242,242,242,0.7)}\\n\\n  /* ============================================\\n     FINAL CTA\\n     ============================================ */\\n  .final-cta{text-align:center;padding:72px 0 88px;position:relative}\\n  .final-cta::before{content:\\'\\';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:800px;height:400px;background:radial-gradient(ellipse,rgba(255,43,163,0.06) 0%,rgba(255,154,47,0.03) 40%,transparent 70%);pointer-events:none}\\n  .cta-box{max-width:680px;margin:0 auto;padding:56px 44px;border-radius:20px;background:linear-gradient(135deg,rgba(255,43,163,0.07),rgba(255,154,47,0.05));border:1px solid rgba(255,43,163,0.18);position:relative}\\n  .cta-box .h2{margin-bottom:14px}\\n  .cta-box .body-text{margin-bottom:28px;max-width:480px;margin-left:auto;margin-right:auto}\\n\\n  /* ============================================\\n     RESPONSIVE 810px\\n     ============================================ */\\n  @media(max-width:810px){\\n    .container{padding:0 24px}\\n    section{padding:56px 0}\\n    .toc-grid{grid-template-columns:1fr}\\n    .toc-box{padding:24px 28px}\\n    .showcase-grid{grid-template-columns:repeat(2,1fr)}\\n    .showcase-grid-3{grid-template-columns:repeat(2,1fr)}\\n    .specs-row{grid-template-columns:repeat(2,1fr);gap:16px}\\n    .pros-cons{grid-template-columns:1fr}\\n    .method-grid{grid-template-columns:repeat(2,1fr)}\\n    .steps-grid{grid-template-columns:1fr;gap:24px}\\n    .review-header{padding:20px 24px}\\n    .review-body{padding:24px}\\n    .review-footer{padding:16px 24px}\\n    table.compare{min-width:640px}\\n  }\\n\\n  /* ============================================\\n     RESPONSIVE 390px\\n     ============================================ */\\n  @media(max-width:390px){\\n    .container{padding:0 16px}\\n    section{padding:44px 0}\\n    .hero{padding:40px 0 48px}\\n    .hero-meta{flex-direction:column;align-items:center;gap:8px}\\n    .toc-box{padding:20px}\\n    .showcase-grid{grid-template-columns:repeat(2,1fr);gap:8px}\\n    .showcase-grid-3{grid-template-columns:repeat(2,1fr);gap:8px}\\n    .specs-row{grid-template-columns:repeat(2,1fr);gap:12px}\\n    .spec-value{font-size:15px}\\n    .method-grid{grid-template-columns:1fr}\\n    .steps-grid{grid-template-columns:1fr;gap:20px}\\n    .review-rank{font-size:28px}\\n    .review-header{padding:16px}\\n    .review-body{padding:16px}\\n    .review-footer{padding:14px 16px;flex-direction:column;align-items:flex-start}\\n    table.compare thead th,table.compare tbody td{padding:10px 12px;font-size:12px}\\n    .faq-question{font-size:14px}\\n    .cta-box{padding:40px 20px;border-radius:16px}\\n    .cta-box .btn{width:100%}\\n  }\\n</style>\\n</head>\\n<body>\\n<div style=\"display:block !important;width:100% !important;max-width:100% !important;flex-direction:column !important;overflow-x:hidden !important\">\\n\\n<!-- ============================================\\n     HERO\\n     ============================================ -->\\n<section class=\"hero\">\\n  <div class=\"container\">\\n    <p class=\"label\">Updated March 2026</p>\\n    <h1 class=\"h1\">7 Best <span class=\"gradient-text\">Uncensored AI Video Generators</span> in 2026</h1>\\n    <p class=\"body-text\">\\n      We tested 20+ unfiltered AI video generators for face consistency, image-to-video quality, content freedom, and value. Here are the 7 that actually deliver — ranked from best to good enough.\\n    </p>\\n    <div class=\"hero-meta\">\\n      <span>&#128197; Last updated: Mar 20, 2026</span>\\n      <span>&#9201; 12 min read</span>\\n      <span>&#128736; 20+ tools tested</span>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     TABLE OF CONTENTS\\n     ============================================ -->\\n<section class=\"toc\">\\n  <div class=\"container\">\\n    <div class=\"toc-box\">\\n      <div class=\"toc-title\">Our Top Picks at a Glance</div>\\n      <div class=\"toc-grid\">\\n        <a href=\"#soulgen\" class=\"toc-item\"><span class=\"toc-rank\">1</span> SoulGen — Best Face Consistency</a>\\n        <a href=\"#pixeldojo\" class=\"toc-item\"><span class=\"toc-rank\">2</span> PixelDojo — Best Free Option</a>\\n        <a href=\"#zencreator\" class=\"toc-item\"><span class=\"toc-rank\">3</span> ZenCreator — Best Resolution</a>\\n        <a href=\"#seducedai\" class=\"toc-item\"><span class=\"toc-rank\">4</span> Seduced AI — Deepest Customization</a>\\n        <a href=\"#promptchan\" class=\"toc-item\"><span class=\"toc-rank\">5</span> PromptChan — Best All-in-One</a>\\n        <a href=\"#spicygen\" class=\"toc-item\"><span class=\"toc-rank\">6</span> SpicyGen — Best for Characters</a>\\n        <a href=\"#a2e\" class=\"toc-item\"><span class=\"toc-rank\">7</span> A2E — Best for Face Swap Video</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     QUICK COMPARISON TABLE\\n     ============================================ -->\\n<section class=\"quick-compare\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">At a Glance</p>\\n      <h2 class=\"h2\">Unrestricted AI Video Generator Comparison</h2>\\n    </div>\\n    <div class=\"table-wrap\">\\n      <table class=\"compare\">\\n        <thead>\\n          <tr>\\n            <th>Tool</th>\\n            <th class=\"hl\">SoulGen</th>\\n            <th>PixelDojo</th>\\n            <th>ZenCreator</th>\\n            <th>Seduced AI</th>\\n            <th>PromptChan</th>\\n          </tr>\\n        </thead>\\n        <tbody>\\n          <tr>\\n            <td>Face Consistency</td>\\n            <td class=\"hl\"><span class=\"ck\">95.8%</span></td>\\n            <td>Basic</td>\\n            <td>Good</td>\\n            <td>Good</td>\\n            <td>Basic</td>\\n          </tr>\\n          <tr>\\n            <td>Image to Video</td>\\n            <td class=\"hl\"><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n          </tr>\\n          <tr>\\n            <td>Text to Video</td>\\n            <td class=\"hl\"><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"ck\">&#10003;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n          </tr>\\n          <tr>\\n            <td>Max Duration</td>\\n            <td class=\"hl\">6s</td>\\n            <td>5s</td>\\n            <td>6s</td>\\n            <td>10s</td>\\n            <td>3s</td>\\n          </tr>\\n          <tr>\\n            <td>Resolution</td>\\n            <td class=\"hl\">HD</td>\\n            <td>HD</td>\\n            <td>1080p 60fps</td>\\n            <td>HD</td>\\n            <td>720p</td>\\n          </tr>\\n          <tr>\\n            <td>Free Tier</td>\\n            <td class=\"hl\">Free credits</td>\\n            <td>Unlimited*</td>\\n            <td>30 credits</td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n            <td><span class=\"cx\">&#10007;</span></td>\\n          </tr>\\n          <tr>\\n            <td>Starting Price</td>\\n            <td class=\"hl\"><strong>$7.58/mo</strong></td>\\n            <td>Free</td>\\n            <td>$19.99</td>\\n            <td>~$300/mo</td>\\n            <td>$11.99/mo</td>\\n          </tr>\\n          <tr>\\n            <td>Our Score</td>\\n            <td class=\"hl\"><strong style=\"background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent\">9.2/10</strong></td>\\n            <td>8.5/10</td>\\n            <td>8.3/10</td>\\n            <td>8.0/10</td>\\n            <td>7.8/10</td>\\n          </tr>\\n        </tbody>\\n      </table>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     #1 SOULGEN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"soulgen\">\\n  <div class=\"container\">\\n    <div class=\"review-card\" style=\"border-color:rgba(255,43,163,0.2)\">\\n      <div class=\"review-header\" style=\"background:linear-gradient(135deg,rgba(255,43,163,0.04),rgba(255,154,47,0.03))\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#1</div>\\n          <div>\\n            <h2 class=\"h3\">SoulGen — Best for Face Consistency & Image-to-Video</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-gold\">Editor\\'s Choice</span>\\n              <span class=\"badge badge-green\">Free Credits Available</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">9.2</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">SoulGen</strong> stands out as the most technically impressive spicy AI video generator we tested. Originally known for its AI image generation, SoulGen expanded into video in 2025 with proprietary <strong style=\"color:#f2f2f2\">Deep Facial Fusion (DFF)</strong> and <strong style=\"color:#f2f2f2\">Dynamic Feature Disentanglement (DFD)</strong> technologies — and it shows. In our tests, it achieved <strong style=\"color:#FF2BA3\">95.8% ArcFace accuracy</strong> for face consistency, far ahead of any competitor.\\n          </p>\\n          <p class=\"body-text\">\\n            The core workflow is image-to-video: upload a photo, and SoulGen transforms it into a fluid, natural-motion video while preserving facial identity. It also supports text-to-video generation for creating scenes from scratch. The output quality is noticeably more realistic than most alternatives — faces don\\'t warp, body physics feel natural, and the motion is smooth rather than robotic.\\n          </p>\\n        </div>\\n\\n        <!-- Showcase — 6 items for SoulGen -->\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Examples</p>\\n        <div class=\"showcase-grid showcase-grid-3\">\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg1.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg1.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg2.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg2.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg3.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg3.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg4.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg4.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg5-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg5.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/sg6-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/sg6.mp4\"></video>\\n          </div>\\n        </div>\\n\\n        <!-- Key specs -->\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value accent\">95.8%</div>\\n            <div class=\"spec-label\">Face Consistency</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">&lt;30s</div>\\n            <div class=\"spec-label\">Generation Time</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">6s</div>\\n            <div class=\"spec-label\">Max Duration</div>\\n          </div>\\n          <div class=\"spec-item\">\\n            <div class=\"spec-value\">HD</div>\\n            <div class=\"spec-label\">Output Quality</div>\\n          </div>\\n        </div>\\n\\n        <h3 class=\"h4\" style=\"margin-bottom:12px\">Key Features</h3>\\n        <ul style=\"list-style:none;font-size:15px;color:rgba(242,242,242,0.75);line-height:2\">\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Image-to-Video AI</strong> — Upload any photo, get a realistic animated video. Identity is perfectly preserved throughout every frame.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Text-to-Video</strong> — Describe a scene with detailed prompts for fully generated content from scratch. Supports complex scene descriptions.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Identity Preservation</strong> — Use the same face across multiple videos for consistent character creation. Build entire series with the same character.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Natural Motion Physics</strong> — Advanced motion synthesis avoids the \"AI slop\" robotic look. Body physics feel realistic and fluid.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Anime & Realistic Styles</strong> — Switch between photorealistic and anime art styles depending on your creative needs.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Fully Cloud-Based</strong> — No downloads, no GPU needed. Works in any browser on any device.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Privacy First</strong> — Encrypted uploads, no data sharing, full content ownership. Your creations stay private.</li>\\n          <li>&#x2022; <strong style=\"color:#f2f2f2\">Video Editing Suite</strong> — Built-in video editing, text overlay, and video-to-audio tools for post-processing.</li>\\n        </ul>\\n\\n        <!-- How SoulGen Works -->\\n        <h3 class=\"h4\" style=\"margin-top:28px;margin-bottom:16px\">How to Use SoulGen AI Video Generator</h3>\\n        <div class=\"steps-grid\">\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px\">01</div>\\n            <img src=\"https://files.soulgen.net/sg/ai-video-generator/step1.webp\" alt=\"SoulGen upload interface\" style=\"aspect-ratio:16/10;width:100%;object-fit:cover;border-radius:12px;margin-bottom:10px\">\\n            <p class=\"h4\">Upload or Describe</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Upload a photo for img2vid, or type a text prompt for text-to-video.</p>\\n          </div>\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px\">02</div>\\n            <img src=\"https://files.soulgen.net/sg/ai-video-generator/step2.webp\" alt=\"SoulGen settings panel\" style=\"aspect-ratio:16/10;width:100%;object-fit:cover;border-radius:12px;margin-bottom:10px\">\\n            <p class=\"h4\">Customize Settings</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Adjust motion intensity, style (realistic/anime), and duration.</p>\\n          </div>\\n          <div style=\"text-align:center\">\\n            <div style=\"font-family:\\'Anton\\',sans-serif;font-size:40px;background:linear-gradient(135deg,#FF2BA3,#FF9A2F);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:8px\">03</div>\\n            <img src=\"https://files.soulgen.net/sg/ai-video-generator/step3.webp\" alt=\"SoulGen result preview\" style=\"aspect-ratio:16/10;width:100%;object-fit:cover;border-radius:12px;margin-bottom:10px\">\\n            <p class=\"h4\">Generate & Download</p>\\n            <p class=\"body-sm\" style=\"margin-top:4px\">Get your HD AI video in under 30 seconds. No watermarks on paid plans.</p>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Best face consistency in the market (95.8%)</li>\\n              <li>Very natural, non-robotic motion</li>\\n              <li>Simple upload-and-generate workflow</li>\\n              <li>Affordable pricing ($7.58/mo annual)</li>\\n              <li>Both image-to-video and text-to-video</li>\\n              <li>Fast generation (&lt;30 seconds)</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Max 6-second videos (extension coming soon)</li>\\n              <li>Requires account signup for free credits</li>\\n              <li>No audio/sound in generated videos yet</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$7.58/mo</strong> (annual) \\xb7 Free credits for new users</div>\\n        <a href=\"https://www.soulgen.ai/video-generator?utm_source=ref-stillpage1\" target=\"_top\" class=\"btn btn-primary btn-sm\">Try SoulGen Free →</a>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #2 PIXELDOJO\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"pixeldojo\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#2</div>\\n          <div>\\n            <h2 class=\"h3\">PixelDojo — Best Free Unfiltered AI Video Generator</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-green\">Free \\xb7 No Signup</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.5</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">PixelDojo</strong> is the go-to choice if you want to try unfiltered AI video generation without spending a dime or creating an account. With 3M+ users and WAN 2.2 integration, it delivers surprisingly good results for a free tool. The no-signup approach removes all friction — just visit the site, enter a prompt, and generate.\\n          </p>\\n          <p class=\"body-text\">\\n            The trade-off is quality: face consistency is noticeably lower than SoulGen, and outputs can feel less polished. But for casual experimentation or users who want to test the waters before committing to a paid tool, PixelDojo is hard to beat.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\">\\n            <img src=\"https://files.soulgen.net/sg/ai-video-generator/pixeldojo.webp\" alt=\"PixelDojo generated example\" style=\"width:100%;height:100%;object-fit:cover\">\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">3M+</div><div class=\"spec-label\">Users</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">WAN 2.2</div><div class=\"spec-label\">AI Model</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">5s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">HD</div><div class=\"spec-label\">Output Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Completely free to use</li>\\n              <li>No signup or email required</li>\\n              <li>WAN 2.2 model integration</li>\\n              <li>Community gallery for inspiration</li>\\n              <li>Simple, fast interface</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Lower face consistency than paid tools</li>\\n              <li>Quality varies significantly between generations</li>\\n              <li>Free tier has hidden limitations</li>\\n              <li>Less control over output parameters</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>Free</strong> \\xb7 No signup required</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #3 ZENCREATOR\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"zencreator\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#3</div>\\n          <div>\\n            <h2 class=\"h3\">ZenCreator — Best Resolution & Frame Rate</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-blue\">1080p 60fps</span>\\n              <span class=\"badge badge-green\">30 Free Credits</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.3</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">ZenCreator</strong> positions itself as the \"#1 uncensored AI video generator\" and backs it up with impressive specs: <strong style=\"color:#f2f2f2\">1080p resolution at 60fps</strong> — the highest output quality in this roundup. It also uses a credits-based model where credits never expire, which is a refreshing departure from monthly subscription pressure.\\n          </p>\\n          <p class=\"body-text\">\\n            In our testing, ZenCreator delivered consistently smooth video with excellent detail. The 60fps output is noticeably fluid compared to competitors running at 24-30fps. Face consistency is good but doesn\\'t match SoulGen\\'s precision. The 30 free credits give you enough to properly evaluate the tool before buying.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Example</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:1fr;max-width:280px\">\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/zencreator2-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/zencreator2.mp4\"></video>\\n          </div>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">1080p</div><div class=\"spec-label\">Resolution</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">60fps</div><div class=\"spec-label\">Frame Rate</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">6s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">&lt;60s</div><div class=\"spec-label\">Gen Time</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Highest resolution (1080p 60fps)</li>\\n              <li>Credits never expire</li>\\n              <li>30 free credits to start</li>\\n              <li>Very smooth, fluid motion</li>\\n              <li>Transparent pricing</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Higher price point ($19.99 entry)</li>\\n              <li>Face consistency below SoulGen</li>\\n              <li>No character identity preservation</li>\\n              <li>Newer platform, smaller community</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$19.99</strong> (200 credits, never expire)</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #4 SEDUCED AI\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"seducedai\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#4</div>\\n          <div>\\n            <h2 class=\"h3\">Seduced AI — Deepest Customization for Spicy Video</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-purple\">100+ Options</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">8.0</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">Seduced AI</strong> targets power users who want maximum control over every aspect of their generated content. Its unique <strong style=\"color:#f2f2f2\">8-layer extension system</strong> lets you mix and match from 100+ customization options — body type, skin tone, outfits, poses, backgrounds, and more. It also supports personal likeness cloning and a character save/reuse system.\\n          </p>\\n          <p class=\"body-text\">\\n            Video generation supports up to 10 seconds — the longest in this roundup. The level of detail control is unmatched, but this comes at a steep price (~$300/mo for Pro). This is a tool for serious creators who know exactly what they want and are willing to pay for precision.\\n          </p>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">100+</div><div class=\"spec-label\">Customization Options</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">10s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">8</div><div class=\"spec-label\">Extension Layers</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">HD</div><div class=\"spec-label\">Output Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Deepest customization in the market</li>\\n              <li>Longest video duration (10s)</li>\\n              <li>Personal likeness cloning</li>\\n              <li>Character save & reuse system</li>\\n              <li>AI model trainer included</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Very expensive (~$300/mo)</li>\\n              <li>No free tier available</li>\\n              <li>Steep learning curve</li>\\n              <li>Complex interface for beginners</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>~$300/mo</strong> (Pro plan)</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #5 PROMPTCHAN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"promptchan\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#5</div>\\n          <div>\\n            <h2 class=\"h3\">PromptChan — Best All-in-One Unrestricted AI Platform</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-blue\">Images + Video + AI Chat</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.8</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">PromptChan</strong> is less a video generator and more a complete unrestricted AI ecosystem. It bundles image generation, video generation, AI girlfriends, and face swap into one platform. With 2M+ user-generated creations and active prompt sharing, it\\'s also one of the most community-driven tools available.\\n          </p>\\n          <p class=\"body-text\">\\n            Video generation is Pro-only (starting at $26.99/mo) and limited to 2-3 seconds — the shortest in our list. The video quality lags behind dedicated tools, but if you want one subscription that covers images, video, chat, and face swap, PromptChan offers the broadest feature set.\\n          </p>\\n        </div>\\n\\n        <div class=\"specs-row\">\\n          <div class=\"spec-item\"><div class=\"spec-value\">2M+</div><div class=\"spec-label\">Creations</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">3s</div><div class=\"spec-label\">Max Duration</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">4-in-1</div><div class=\"spec-label\">Platform</div></div>\\n          <div class=\"spec-item\"><div class=\"spec-value\">720p</div><div class=\"spec-label\">Video Quality</div></div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Most features in one platform</li>\\n              <li>Active community & prompt sharing</li>\\n              <li>Anime, realistic, and 3D styles</li>\\n              <li>AI girlfriend feature bundled</li>\\n              <li>Face swap for photos & video</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Video is Pro-only ($26.99/mo)</li>\\n              <li>Very short video duration (2-3s)</li>\\n              <li>Lower video quality than dedicated tools</li>\\n              <li>Jack of all trades, master of none</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$11.99/mo</strong> (Plus) \\xb7 Video requires Pro at $26.99/mo</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #6 SPICYGEN\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"spicygen\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#6</div>\\n          <div>\\n            <h2 class=\"h3\">SpicyGen — Best for Character-Driven Spicy Content</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-purple\">Interactive Characters</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.3</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">SpicyGen</strong> takes a different approach from pure video generators. It focuses on interactive, character-driven adult content where you build persistent characters and generate content around them. The platform uses straightforward prompts to generate still images and short video clips with a focus on creative storytelling.\\n          </p>\\n          <p class=\"body-text\">\\n            It\\'s free to start with no credit card required, making it easy to explore. The output quality is clean but not as technically impressive as SoulGen or ZenCreator. SpicyGen\\'s strength lies in the character persistence and interactive storytelling experience rather than raw video quality.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Examples</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:repeat(2,1fr);max-width:560px\">\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/spicygen1-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/spicygen1.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/spicygen2-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/spicygen2.mp4\"></video>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Strong character persistence</li>\\n              <li>Interactive storytelling mode</li>\\n              <li>Free tier with no credit card</li>\\n              <li>Clean, high-quality outputs</li>\\n              <li>Simple prompt interface</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Video quality below top tools</li>\\n              <li>More image-focused than video</li>\\n              <li>Limited video customization options</li>\\n              <li>Smaller user base</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$19.99</strong> (400 credits) \\xb7 Free tier available</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     #7 A2E\\n     ============================================ -->\\n<section class=\"tool-review\" id=\"a2e\">\\n  <div class=\"container\">\\n    <div class=\"review-card\">\\n      <div class=\"review-header\">\\n        <div class=\"review-header-left\">\\n          <div class=\"review-rank\">#7</div>\\n          <div>\\n            <h2 class=\"h3\">A2E — Best for Unrestricted Face Swap & Voice Cloning</h2>\\n            <div style=\"display:flex;gap:8px;margin-top:8px;flex-wrap:wrap\">\\n              <span class=\"badge badge-green\">Free Tier</span>\\n              <span class=\"badge badge-blue\">API Access</span>\\n            </div>\\n          </div>\\n        </div>\\n        <div class=\"review-header-right\">\\n          <div style=\"text-align:center\">\\n            <div class=\"review-score\">7.0</div>\\n            <div class=\"review-score-label\">Our Score</div>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-body\">\\n        <div class=\"review-intro\">\\n          <p class=\"body-text\">\\n            <strong style=\"color:#f2f2f2\">A2E</strong> specializes in face swapping and voice cloning for video content — a different niche than pure AI video generation. If you have an existing video and want to swap faces or clone voices, A2E is one of the few tools that does this uncensored. It also offers API access for developers building on top of the platform.\\n          </p>\\n          <p class=\"body-text\">\\n            The free tier is functional but limited, and the Pro plan at $9.9/mo is the most affordable paid option in this roundup. A2E is best suited as a complementary tool alongside a primary video generator like SoulGen rather than a standalone solution.\\n          </p>\\n        </div>\\n\\n        <p class=\"label\" style=\"margin-bottom:12px\">Generated Examples</p>\\n        <div class=\"showcase-grid\" style=\"grid-template-columns:repeat(4,1fr)\">\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/A2E1-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/A2E1.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/A2E2-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/A2E2.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/A2E3-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/A2E3.mp4\"></video>\\n          </div>\\n          <div class=\"showcase-item\" onmouseenter=\"var v=this.querySelector(\\'video\\');if(v){v.play().catch(function(){});this.querySelector(\\'.play-icon\\').style.opacity=\\'0\\'}\" onmouseleave=\"var v=this.querySelector(\\'video\\');if(v){v.pause();v.currentTime=0;this.querySelector(\\'.play-icon\\').style.opacity=\\'1\\'}\">\\n            <div class=\"play-icon\"><svg viewBox=\"0 0 24 24\"><polygon points=\"8,5 20,12 8,19\"/></svg></div>\\n            <video muted loop playsinline preload=\"metadata\" poster=\"https://files.soulgen.net/sg/ai-video-generator/A2E4-poster.webp\" src=\"https://files.soulgen.net/sg/ai-video-generator/A2E4.mp4\"></video>\\n          </div>\\n        </div>\\n\\n        <div class=\"pros-cons\">\\n          <div class=\"pros\">\\n            <h4>Pros</h4>\\n            <ul>\\n              <li>Best face swap for hot video</li>\\n              <li>Voice cloning included</li>\\n              <li>API access for developers</li>\\n              <li>Very affordable ($9.9/mo)</li>\\n              <li>Free tier available</li>\\n            </ul>\\n          </div>\\n          <div class=\"cons\">\\n            <h4>Cons</h4>\\n            <ul>\\n              <li>Not a full video generator — face swap only</li>\\n              <li>Requires existing source video</li>\\n              <li>Quality depends on source material</li>\\n              <li>Ethical concerns with face swap tech</li>\\n            </ul>\\n          </div>\\n        </div>\\n      </div>\\n\\n      <div class=\"review-footer\">\\n        <div class=\"review-pricing\">Starting at <strong>$9.9/mo</strong> \\xb7 Free tier available</div>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     METHODOLOGY\\n     ============================================ -->\\n<section class=\"methodology\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">Our Process</p>\\n      <h2 class=\"h2\">How We Tested These Hot AI Video Generators</h2>\\n      <p class=\"body-text\" style=\"max-width:640px;margin:12px auto 0\">We spent 40+ hours testing 20+ tools with identical prompts and source images to ensure fair comparison.</p>\\n    </div>\\n    <div class=\"method-grid\">\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#128269;</div>\\n        <h4 class=\"h4\">Face Consistency</h4>\\n        <p class=\"body-sm\">Measured ArcFace similarity scores across all frames to quantify identity preservation.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#127916;</div>\\n        <h4 class=\"h4\">Output Quality</h4>\\n        <p class=\"body-sm\">Evaluated resolution, motion fluidity, artifact frequency, and overall visual realism.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#9881;</div>\\n        <h4 class=\"h4\">Ease of Use</h4>\\n        <p class=\"body-sm\">Tested onboarding, interface design, prompt adherence, and time-to-first-result.</p>\\n      </div>\\n      <div class=\"card method-card\">\\n        <div class=\"method-icon\">&#128176;</div>\\n        <h4 class=\"h4\">Value for Money</h4>\\n        <p class=\"body-sm\">Compared pricing models, credits per dollar, free tier generosity, and hidden costs.</p>\\n      </div>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     FAQ\\n     ============================================ -->\\n<section class=\"faq\">\\n  <div class=\"container\">\\n    <div class=\"section-header\">\\n      <p class=\"label\">FAQ</p>\\n      <h2 class=\"h2\">Sexy AI Video Generator — Common Questions</h2>\\n    </div>\\n    <div class=\"faq-list\">\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>What is the best uncensored AI video generator in 2026?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Based on our testing of 20+ tools, <strong>SoulGen</strong> ranks #1 for overall quality. It leads in face consistency (95.8% ArcFace accuracy), offers both image-to-video and text-to-video, and is priced competitively at $7.58/mo. For users on a budget, <strong>PixelDojo</strong> is the best free option, while <strong>ZenCreator</strong> offers the highest resolution at 1080p 60fps.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Is there a free unfiltered AI video generator that actually works?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Yes. <strong>PixelDojo</strong> offers free unfiltered AI video generation with no signup required, though quality is limited. <strong>SoulGen</strong> offers free credits for new users, and <strong>ZenCreator</strong> gives 30 free credits to start. For truly unlimited free generation, open-source models like WAN 2.2 can be run locally, but require technical setup and a powerful GPU.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>How does unfiltered image-to-video AI generation work?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Image-to-video AI analyzes a source image and generates motion frames while preserving the original appearance. The best tools like SoulGen use specialized technologies (Deep Facial Fusion) to maintain face identity throughout the animation. You simply upload a photo, the AI predicts natural movement, and outputs a short video clip — typically 3-10 seconds long.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Are unrestricted AI video generators safe to use?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Reputable tools like SoulGen, ZenCreator, and PixelDojo use encrypted connections and don\\'t share your data. However, safety varies by platform — always check the privacy policy before uploading personal images. For maximum privacy, consider tools that emphasize data encryption and no-log policies, or run open-source models locally on your own hardware.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>What is the difference between image-to-video and text-to-video sexy AI?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\"><strong>Image-to-video</strong> starts from a photo you upload and animates it — ideal when you already have a specific look in mind. <strong>Text-to-video</strong> generates everything from a text description — better for creating scenes from scratch. Image-to-video typically produces more consistent results because the AI has a visual reference, while text-to-video offers more creative freedom but less predictability.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Why are spicy AI videos so short (3-10 seconds)?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Current AI video models require enormous computational resources for each frame. Generating longer videos exponentially increases processing time, cost, and the chance of quality degradation (face warping, motion artifacts). Most tools limit output to 3-10 seconds to maintain quality. The industry is rapidly improving — video extension features are being developed to allow stitching multiple clips together.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Can I maintain character consistency across multiple hot AI videos?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">This is one of the hardest challenges in AI video generation. <strong>SoulGen</strong> leads here with its identity preservation feature — upload a reference face and generate multiple videos with the same character. <strong>Seduced AI</strong> also offers a character save/reuse system. Most free tools don\\'t offer reliable character consistency across separate generations.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Is AI-generated spicy content legal?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">AI-generated spicy content using fictional characters is generally legal in most jurisdictions, but laws vary significantly by country and region. Creating content depicting minors is illegal everywhere. Using someone\\'s likeness without consent may violate right-of-publicity laws. Always check your local regulations and use these tools responsibly and ethically.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>Do I need a powerful computer to generate sexy AI videos?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">Not for cloud-based tools. SoulGen, PixelDojo, ZenCreator, and all other tools in this list run entirely in your browser — no downloads, no GPU requirements. Only if you want to run open-source models like WAN 2.2 locally will you need a powerful GPU (typically 12GB+ VRAM). For most users, cloud tools are the easiest and most practical option.</div></div>\\n      </div>\\n\\n      <div class=\"faq-item\">\\n        <button class=\"faq-question\" onclick=\"var i=this.parentElement,a=i.classList.contains(\\'active\\');var all=document.querySelectorAll(\\'.faq-item\\');for(var x=0;x<all.length;x++)all[x].classList.remove(\\'active\\');if(!a)i.classList.add(\\'active\\')\"><span>What\\'s the best spicy AI video generator for beginners?</span><span class=\"faq-toggle\">+</span></button>\\n        <div class=\"faq-answer\"><div class=\"faq-answer-inner\">For absolute beginners, we recommend starting with <strong>PixelDojo</strong> (free, no signup) to experiment, then upgrading to <strong>SoulGen</strong> when you want better quality. SoulGen\\'s workflow is straightforward: upload an image → click generate → download your video. No technical knowledge required. Avoid Seduced AI or local models as a beginner — their complexity can be overwhelming.</div></div>\\n      </div>\\n\\n    </div>\\n  </div>\\n</section>\\n\\n<div class=\"divider\"></div>\\n\\n<!-- ============================================\\n     FINAL CTA\\n     ============================================ -->\\n<section class=\"final-cta\">\\n  <div class=\"container\">\\n    <div class=\"cta-box\">\\n      <p class=\"label\" style=\"margin-bottom:12px\">Our #1 Pick</p>\\n      <h2 class=\"h2\">Try SoulGen — The Best Uncensored AI Video Generator</h2>\\n      <p class=\"body-text\">95.8% face consistency \\xb7 Image to video in &lt;30s \\xb7 Free credits to start</p>\\n      <a href=\"https://www.soulgen.ai/video-generator?utm_source=ref-stillpage1\" target=\"_top\" class=\"btn btn-primary\">Start Creating Free →</a>\\n    </div>\\n  </div>\\n</section>\\n\\n<!-- ============================================\\n     FAQ SCHEMA (JSON-LD)\\n     ============================================ -->\\n<script type=\"application/ld+json\">\\n{\\n  \"@context\":\"https://schema.org\",\\n  \"@type\":\"FAQPage\",\\n  \"mainEntity\":[\\n    {\"@type\":\"Question\",\"name\":\"What is the best uncensored AI video generator in 2026?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Based on testing 20+ tools, SoulGen ranks #1 for overall quality with 95.8% face consistency. PixelDojo is the best free option, and ZenCreator offers the highest resolution at 1080p 60fps.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Is there a free unfiltered AI video generator that actually works?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. PixelDojo offers free generation with no signup. SoulGen offers free credits for new users, and ZenCreator gives 30 free credits to start. For unlimited free generation, open-source models like WAN 2.2 can run locally.\"}},\\n    {\"@type\":\"Question\",\"name\":\"How does unfiltered image-to-video AI generation work?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Image-to-video AI analyzes a source image, predicts natural movement, and generates animation frames while preserving identity. Tools like SoulGen use Deep Facial Fusion to maintain face consistency throughout.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Are unrestricted AI video generators safe to use?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Reputable tools use encrypted connections and don\\'t share data. Always check privacy policies before uploading personal images. For maximum privacy, run open-source models locally.\"}},\\n    {\"@type\":\"Question\",\"name\":\"What is the difference between image-to-video and text-to-video sexy AI?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Image-to-video animates an uploaded photo for consistent results. Text-to-video creates everything from a description for more creative freedom but less predictability.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Why are spicy AI videos so short (3-10 seconds)?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Current AI models need enormous computational resources per frame. Longer videos increase processing time and quality degradation risks. The industry is developing video extension features.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Can I maintain character consistency across multiple hot AI videos?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"SoulGen leads with identity preservation for consistent characters across videos. Seduced AI also offers character save/reuse. Most free tools don\\'t offer reliable cross-generation consistency.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Is AI-generated spicy content legal?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"AI-generated spicy content with fictional characters is generally legal in most jurisdictions but laws vary. Content depicting minors is illegal everywhere. Check local regulations.\"}},\\n    {\"@type\":\"Question\",\"name\":\"Do I need a powerful computer to generate sexy AI videos?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Not for cloud-based tools — they run in your browser with no downloads or GPU needed. Only local open-source models like WAN 2.2 require a powerful GPU (12GB+ VRAM).\"}},\\n    {\"@type\":\"Question\",\"name\":\"What\\'s the best spicy AI video generator for beginners?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Start with PixelDojo (free, no signup) to experiment, then upgrade to SoulGen for better quality. SoulGen\\'s workflow is upload → generate → download, no technical skills needed.\"}}\\n  ]\\n}\\n</script>\\n\\n<!-- All FAQ and video interaction logic is now inline on elements for Framer HTML embed compatibility -->\\n\\n</div>\\n</body>\\n</html>\\n',id:\"PhcGAWBwS\",layoutId:\"PhcGAWBwS\",style:{width:\"100%\"},type:\"html\",url:\"\",width:\"100%\"})})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"overlay\"})]})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-brCn5.framer-1jce4g7, .framer-brCn5 .framer-1jce4g7 { display: block; }\",\".framer-brCn5.framer-1uhmbwa { align-content: center; align-items: center; background-color: #030423; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 1200px; }\",\".framer-brCn5 .framer-14id389-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-brCn5 .framer-efbc1q { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-brCn5 .framer-mcvvq4-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\"@media (max-width: 809.98px) { .framer-brCn5.framer-1uhmbwa { width: 390px; }}\",\"@media (min-width: 810px) and (max-width: 1199.98px) { .framer-brCn5.framer-1uhmbwa { width: 810px; } .framer-brCn5 .framer-mcvvq4-container { flex: none; width: 810px; }}\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 13316\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"wwXfLS5mZ\":{\"layout\":[\"fixed\",\"auto\"]},\"RLrIVHWWt\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerAcceptsLayoutTemplate true\n * @framerScrollSections false\n * @framerResponsiveScreen true\n * @framerLayoutTemplateFlowEffect true\n */const FramerZWQj06frN=withCSS(Component,css,\"framer-brCn5\");export default FramerZWQj06frN;FramerZWQj06frN.displayName=\"Home\";FramerZWQj06frN.defaultProps={height:13316,width:1200};addFonts(FramerZWQj06frN,[{explicitInter:true,fonts:[]},...NavigationFonts,...EmbedFonts],{supportsExplicitInterCodegen:true});FramerZWQj06frN.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Navigation,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"queryParamNames\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerZWQj06frN\",\"slots\":[],\"annotations\":{\"framerLayoutTemplateFlowEffect\":\"true\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerIntrinsicHeight\":\"13316\",\"framerAcceptsLayoutTemplate\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"wwXfLS5mZ\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"RLrIVHWWt\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerResponsiveScreen\":\"true\",\"framerImmutableVariables\":\"true\",\"framerScrollSections\":\"false\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (3bd990b)\nconst snippets=[];const queryLoaders={};export const snippetsSorting={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[]};export async function getSnippets(pageId,pathVariables,activeLocale){const queryLoader=queryLoaders[pageId];const params=queryLoader?await queryLoader(pathVariables,activeLocale):undefined;const result={bodyEnd:[],bodyStart:[],headEnd:[],headStart:[]};for(const snippet of snippets){if(snippet.pageIds&&!snippet.pageIds.has(pageId))continue;const code=snippet.code(params);if(code){result[snippet.placement].push({...snippet,code});}}return result;}\nexport const __FramerMetadata__ = {\"exports\":{\"snippetsSorting\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSnippets\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{withCSS}from\"framer\";const NotFoundPage=()=>{React.useEffect(()=>{let robotsTag=document.querySelector('meta[name=\"robots\"]');if(robotsTag){robotsTag.setAttribute(\"content\",\"noindex\");}else{robotsTag=document.createElement(\"meta\");robotsTag.setAttribute(\"name\",\"robots\");robotsTag.setAttribute(\"content\",\"noindex\");document.head.appendChild(robotsTag);}},[]);return /*#__PURE__*/_jsx(\"div\",{className:\"__framer-not-found-page\",style:{display:\"flex\",height:\"100vh\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:\"var(--color-primary)\",background:\"var(--color-background)\",fontSize:\"var(--font-size-body)\",boxSizing:\"border-box\",fontFeatureSettings:'\"liga\", \"clig\"',fontVariantLigatures:\"common-ligatures\",textRendering:\"optimizeLegibility\"},children:/*#__PURE__*/_jsxs(\"main\",{style:{boxSizing:\"border-box\",fontFamily:'\"Inter\", sans-serif',fontWeight:500,maxWidth:\"240px\",width:\"100%\",display:\"flex\",alignItems:\"center\",flexDirection:\"column\",padding:\"0 20px\",textWrap:\"balance\"},children:[/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:\"14\",height:\"21\",style:{verticalAlign:\"middle\",color:\"var(--color-primary)\",marginBottom:\"20px\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M 14 0 L 14 7 L 7 7 L 0 0 Z M 14 14 L 7 14 L 7 21 L 0 14 L 0 7 L 7 7 Z\",fill:\"currentColor\"})}),/*#__PURE__*/_jsx(\"h1\",{style:{margin:\"0 0 10px 0\",fontSize:\"var(--font-size-title)\",color:\"var(--color-primary)\",textAlign:\"center\"},children:\"Page Not Found\"}),/*#__PURE__*/_jsx(\"div\",{style:{color:\"var(--color-secondary)\",marginBottom:\"20px\",lineHeight:\"1.5em\",textAlign:\"center\"},children:\"The page you are looking for does not exist or may have been moved.\"}),/*#__PURE__*/_jsx(\"a\",{href:\"/\",role:\"button\",style:{backgroundColor:\"var(--color-tint)\",color:\"#ffffff\",paddingLeft:\"8px\",paddingRight:\"8px\",borderRadius:\"8px\",lineHeight:\"30px\",height:\"30px\",textDecoration:\"none\",verticalAlign:\"baseline\"},children:\"Back to Home\"})]})});};const css=[`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/hyOgCu0Xnghbimh0pE8QTvtt2AU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,\n        U+FE2E-FE2F;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/NeGmSOXrPBfEFIy5YZeHq17LEDA.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/oYaAX5himiTPYuN8vLWnqBbfD2s.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+1F00-1FFF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/lEJLP4R0yuCaMCjSXYHtJw72M.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0370-03FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/cRJyLNuTJR5jbyKzGi33wU9cqIQ.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,\n        U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/1ZFS7N918ojhhd0nQWdj3jz4w.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,\n        U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,\n        U+2212, U+2215, U+FEFF, U+FFFD;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/A0Wcc7NgXMjUuFdquHDrIZpzZw0.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 600;\n      unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n        U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,\n        U+FE2E-FE2F;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+1F00-1FFF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0370-03FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,\n        U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/d3tHnaQIAeqiE5hGcRw4mmgWYU.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,\n        U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193,\n        U+2212, U+2215, U+FEFF, U+FFFD;\n    }`,`@font-face {\n      font-family: Inter;\n      src: url(https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2);\n      font-display: swap;\n      font-style: normal;\n      font-weight: 500;\n      unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,\n        U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;\n    }`,`@font-face {\n      font-family: Inter Placeholder;\n      src: local(\"Arial\");\n      ascent-override: 89.79%;\n      descent-override: 22.36%;\n      line-gap-override: 0%;\n      size-adjust: 107.89%;\n    }`,`.__framer-not-found-page {\n      --color-background: #ffffff;\n      --color-primary: #333;\n      --color-secondary: #888;\n      --color-tint: #0099ff;\n      --font-size-body: 12px;\n      --font-size-title: 12px;\n    }`,`@media (prefers-color-scheme: dark) {\n      .__framer-not-found-page {\n        --color-background: #000000;\n        --color-primary: #fff;\n        --color-secondary: #888;\n      }\n    }`];const component=withCSS(NotFoundPage,css);export default component;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"component\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NotFoundPage.map","/*\n * NotFoundPage (framer/SitesNotFoundPage@1.4.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js\"\nexport { default } from \"https://framerusercontent.com/modules/7cPhjQw0EGNBHRZlzbhH/4hSO1fMoujYmMhk8FjXZ/NotFoundPage.js\"\n","// DO NOT DELETE THIS FILE! It's integral functionality of the badge.\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useSyncExternalStore,forwardRef}from\"react\";import{RenderTarget}from\"framer\";/**\n * Override for the \"Made in Framer\" badge that adds two behaviors:\n * 1. Hides the badge when in an iframe with a framer.com parent domain\n * 2. Adds click handler to open Framer with UTM tracking\n *\n * Badge hiding works by detecting if the current page is running inside an iframe\n * and checking if the parent domain is framer.com or a subdomain. This allows\n * embedding sites (e.g., Components pages) to hide the badge when appropriate.\n *\n * Cross-browser compatibility:\n * - Chrome, Safari, Edge: Uses window.location.ancestorOrigins API\n * - Firefox: Falls back to document.referrer (limited by security restrictions)\n *\n * Note: Also hides the badge in Framer's Preview mode since it runs in a\n * framer.com iframe.\n */const FRAMER_DOMAIN=\"framer.com\";function getIsIframeOnFramerDomain(){let isIframe=false;// Check if we're in an iframe\ntry{isIframe=window.self!==window.top;}catch{// If we can't access window.top, we're likely in a cross-origin iframe\nisIframe=true;}if(!isIframe){return false;}// Check if we're running on framer.com\nlet parentHost=null;let isFramerDomain=false;// Try ancestorOrigins first (Chrome, Safari, Edge)\nif(window.location.ancestorOrigins&&window.location.ancestorOrigins.length>0){const ancestorOrigin=window.location.ancestorOrigins[0];try{const ancestorUrl=new URL(ancestorOrigin);parentHost=ancestorUrl.host;}catch(error){// ignore malformed URL\n}}else if(document.referrer){// Fallback to referrer for browsers without ancestorOrigins (Firefox)\ntry{const referrerUrl=new URL(document.referrer);parentHost=referrerUrl.host;}catch(error){// ignore malformed URL\n}}if(parentHost){isFramerDomain=parentHost===FRAMER_DOMAIN||parentHost.endsWith(`.${FRAMER_DOMAIN}`);}return isFramerDomain;}const noopSubscribe=()=>()=>{};const getSnapshot=()=>getIsIframeOnFramerDomain();const getServerSnapshot=()=>false;export function withFramerBadgeHandling(Component){return /*#__PURE__*/forwardRef((props,ref)=>{const shouldHide=useSyncExternalStore(noopSubscribe,getSnapshot,getServerSnapshot);const isCanvas=RenderTarget.current()===RenderTarget.canvas;if(shouldHide&&!isCanvas){return null;}return /*#__PURE__*/_jsx(Component,{...props,ref:ref,onClick:e=>{e.preventDefault();window.open(// This is the link that will actually open (we prevent the default click handler; the link is important for SEO.)\n`https://www.framer.com/r/badge/?utm_campaign=freeplanbadge&utm_source=${encodeURIComponent(window?.location?.origin)}`);},style:{...props.style,pointerEvents:\"auto\"},// important for SEO:\ntitle:\"Create a free website with Framer, the website builder loved by startups, designers and agencies.\",className:props.className+\" __framer-badge\"});});}// We use overrides so that the badge doesn't load custom fonts, as the text is visually hidden.\n// This is important for SEO:\nexport function withText(Component){return /*#__PURE__*/forwardRef((props,ref)=>{return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"p\",{style:{position:\"absolute\",transform:\"scale(0.001)\"},children:\"Create a free website with Framer, the website builder loved by startups, designers and agencies.\"}),/*#__PURE__*/_jsx(Component,{...props,ref:ref})]});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withFramerBadgeHandling\":{\"type\":\"reactHoc\",\"name\":\"withFramerBadgeHandling\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withText\":{\"type\":\"reactHoc\",\"name\":\"withText\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Click.map","// Generated by Framer (464f719-dev)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const maskImage='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 97 10\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 91.736 9.781 L 91.736 2.818 L 93.316 2.818 L 93.316 3.98 L 93.374 3.98 C 93.501 3.577 93.714 3.269 94.014 3.053 C 94.328 2.833 94.704 2.72 95.087 2.729 C 95.185 2.729 95.287 2.733 95.392 2.742 C 95.498 2.75 95.587 2.759 95.659 2.767 L 95.659 4.253 C 95.552 4.23 95.444 4.215 95.335 4.209 C 95.188 4.192 95.039 4.184 94.891 4.184 C 94.603 4.184 94.343 4.247 94.11 4.374 C 93.882 4.497 93.702 4.674 93.57 4.907 C 93.434 5.16 93.366 5.445 93.374 5.732 L 93.374 9.782 L 91.736 9.782 Z M 87.286 9.927 C 86.588 9.927 85.985 9.779 85.477 9.483 C 84.969 9.183 84.577 8.761 84.303 8.22 C 84.032 7.678 83.897 7.048 83.897 6.328 C 83.897 5.618 84.032 4.988 84.303 4.443 C 84.56 3.917 84.96 3.475 85.458 3.167 C 85.953 2.858 86.531 2.704 87.191 2.704 C 87.64 2.704 88.059 2.78 88.448 2.932 C 88.841 3.08 89.186 3.305 89.482 3.605 C 89.779 3.901 90.009 4.272 90.174 4.715 C 90.344 5.155 90.428 5.67 90.428 6.258 L 90.428 6.748 L 84.627 6.748 L 84.627 5.629 L 89.609 5.629 L 88.86 5.946 C 88.868 5.594 88.801 5.243 88.664 4.918 C 88.549 4.641 88.355 4.404 88.105 4.238 C 87.86 4.074 87.559 3.991 87.204 3.991 C 86.852 3.991 86.55 4.074 86.296 4.239 C 86.042 4.404 85.847 4.629 85.712 4.912 C 85.576 5.213 85.509 5.54 85.515 5.87 L 85.515 6.62 C 85.515 7.047 85.587 7.413 85.731 7.717 C 85.879 8.017 86.089 8.248 86.359 8.409 C 86.63 8.566 86.948 8.644 87.312 8.644 C 87.562 8.644 87.786 8.608 87.984 8.536 C 88.177 8.467 88.353 8.356 88.499 8.212 C 88.642 8.072 88.749 7.906 88.816 7.711 L 90.326 7.921 C 90.228 8.313 90.032 8.673 89.756 8.968 C 89.476 9.268 89.125 9.503 88.702 9.672 C 88.282 9.842 87.811 9.926 87.286 9.926 Z M 72.643 9.781 L 72.643 2.818 L 74.191 2.818 L 74.235 4.443 L 74.115 4.443 C 74.225 4.041 74.385 3.713 74.597 3.459 C 74.798 3.212 75.055 3.016 75.347 2.888 C 75.63 2.761 75.928 2.698 76.241 2.698 C 76.753 2.698 77.177 2.854 77.511 3.167 C 77.849 3.48 78.074 3.922 78.184 4.494 L 77.987 4.494 C 78.066 4.132 78.232 3.795 78.469 3.51 C 78.691 3.248 78.972 3.041 79.289 2.907 C 79.615 2.766 79.968 2.695 80.323 2.697 C 80.746 2.697 81.127 2.79 81.465 2.977 C 81.808 3.159 82.077 3.429 82.272 3.789 C 82.47 4.149 82.57 4.591 82.57 5.116 L 82.57 9.781 L 80.939 9.781 L 80.939 5.363 C 80.939 4.923 80.818 4.602 80.577 4.398 C 80.333 4.19 80.021 4.08 79.701 4.088 C 79.434 4.088 79.204 4.145 79.009 4.258 C 78.816 4.371 78.66 4.536 78.559 4.735 C 78.449 4.953 78.394 5.195 78.399 5.439 L 78.399 9.781 L 76.813 9.781 L 76.813 5.287 C 76.813 4.923 76.698 4.633 76.47 4.417 C 76.246 4.197 75.958 4.087 75.606 4.087 C 75.366 4.087 75.143 4.145 74.94 4.259 C 74.737 4.374 74.569 4.543 74.458 4.748 C 74.339 4.963 74.28 5.23 74.28 5.548 L 74.28 9.781 L 72.642 9.781 Z M 67.291 9.915 C 66.724 9.915 66.221 9.771 65.781 9.483 C 65.344 9.191 65 8.776 64.746 8.239 C 64.496 7.701 64.371 7.059 64.371 6.309 C 64.371 5.552 64.498 4.904 64.752 4.367 C 65.01 3.829 65.359 3.419 65.799 3.135 C 66.244 2.851 66.763 2.703 67.291 2.71 C 67.668 2.71 67.987 2.771 68.25 2.894 C 68.516 3.013 68.736 3.164 68.91 3.351 C 69.083 3.533 69.22 3.719 69.322 3.91 L 69.38 3.91 L 69.38 2.818 L 70.998 2.818 L 70.998 9.781 L 69.38 9.781 L 69.38 8.696 L 69.322 8.696 C 69.211 8.908 69.07 9.102 68.903 9.273 C 68.726 9.46 68.503 9.614 68.237 9.737 C 67.938 9.863 67.615 9.923 67.291 9.915 Z M 67.723 8.563 C 68.078 8.563 68.383 8.469 68.637 8.283 C 68.901 8.079 69.101 7.804 69.215 7.49 C 69.35 7.147 69.418 6.751 69.418 6.303 C 69.418 5.85 69.35 5.456 69.214 5.123 C 69.103 4.811 68.902 4.539 68.637 4.341 C 68.387 4.155 68.083 4.062 67.723 4.062 C 67.363 4.062 67.058 4.155 66.809 4.342 C 66.559 4.528 66.369 4.788 66.237 5.122 C 66.107 5.456 66.041 5.85 66.041 6.302 C 66.041 6.752 66.106 7.145 66.237 7.483 C 66.369 7.822 66.559 8.086 66.809 8.277 C 67.063 8.467 67.367 8.563 67.723 8.563 Z M 59.909 9.781 L 59.909 2.818 L 61.489 2.818 L 61.489 3.98 L 61.546 3.98 C 61.673 3.577 61.887 3.269 62.188 3.053 C 62.488 2.837 62.846 2.729 63.26 2.729 C 63.358 2.729 63.46 2.733 63.565 2.742 C 63.671 2.75 63.76 2.759 63.832 2.767 L 63.832 4.253 C 63.725 4.23 63.617 4.215 63.508 4.209 C 63.361 4.192 63.212 4.184 63.064 4.184 C 62.776 4.184 62.516 4.247 62.283 4.374 C 62.054 4.497 61.875 4.674 61.743 4.907 C 61.607 5.16 61.539 5.445 61.546 5.732 L 61.546 9.782 L 59.909 9.782 Z M 52.647 9.781 L 52.647 0.323 L 58.804 0.323 L 58.804 1.758 L 54.336 1.758 L 54.336 4.513 L 58.411 4.513 L 58.411 5.928 L 54.336 5.928 L 54.336 9.781 Z M 43.265 5.744 L 43.265 9.781 L 41.628 9.781 L 41.628 2.818 L 43.195 2.818 L 43.215 4.551 L 43.024 4.551 C 43.223 3.946 43.517 3.489 43.906 3.18 C 44.296 2.867 44.78 2.71 45.36 2.71 C 45.842 2.71 46.263 2.814 46.623 3.021 C 46.987 3.228 47.268 3.531 47.467 3.929 C 47.67 4.322 47.772 4.805 47.772 5.376 L 47.772 9.781 L 46.141 9.781 L 46.141 5.63 C 46.141 5.147 46.018 4.775 45.773 4.513 C 45.531 4.246 45.195 4.113 44.763 4.113 C 44.475 4.113 44.217 4.176 43.989 4.303 C 43.762 4.429 43.576 4.619 43.456 4.849 C 43.329 5.09 43.266 5.389 43.266 5.744 Z M 38.353 9.781 L 38.353 2.818 L 39.99 2.818 L 39.99 9.781 L 38.352 9.781 Z M 39.171 1.815 C 38.919 1.821 38.675 1.728 38.491 1.555 C 38.31 1.389 38.208 1.153 38.212 0.907 C 38.208 0.663 38.31 0.43 38.492 0.267 C 38.674 0.091 38.918 -0.005 39.171 0 C 39.438 0 39.664 0.088 39.851 0.266 C 40.041 0.44 40.136 0.653 40.136 0.907 C 40.136 1.161 40.041 1.377 39.85 1.555 C 39.667 1.728 39.423 1.821 39.171 1.815 Z M 30.741 9.927 C 30.043 9.927 29.44 9.779 28.932 9.483 C 28.426 9.185 28.018 8.746 27.758 8.22 C 27.488 7.678 27.352 7.048 27.352 6.328 C 27.352 5.618 27.487 4.988 27.758 4.443 C 28.015 3.917 28.415 3.475 28.913 3.167 C 29.408 2.858 29.986 2.704 30.646 2.704 C 31.095 2.704 31.514 2.78 31.903 2.932 C 32.293 3.079 32.646 3.308 32.938 3.605 C 33.234 3.901 33.464 4.272 33.629 4.715 C 33.799 5.155 33.883 5.67 33.883 6.258 L 33.883 6.748 L 28.083 6.748 L 28.083 5.629 L 33.066 5.629 L 32.316 5.946 C 32.316 5.553 32.251 5.21 32.12 4.918 C 32.005 4.641 31.811 4.404 31.561 4.238 C 31.316 4.074 31.015 3.991 30.66 3.991 C 30.34 3.983 30.024 4.069 29.752 4.239 C 29.498 4.404 29.303 4.629 29.168 4.912 C 29.032 5.213 28.965 5.54 28.971 5.87 L 28.971 6.62 C 28.971 7.047 29.043 7.413 29.187 7.717 C 29.335 8.017 29.545 8.248 29.816 8.409 C 30.086 8.566 30.404 8.644 30.768 8.644 C 31.018 8.644 31.242 8.608 31.441 8.536 C 31.634 8.467 31.809 8.356 31.955 8.212 C 32.099 8.072 32.205 7.906 32.272 7.711 L 33.782 7.921 C 33.684 8.313 33.488 8.673 33.212 8.968 C 32.932 9.268 32.581 9.503 32.158 9.672 C 31.707 9.847 31.226 9.934 30.742 9.926 Z M 22.312 9.915 C 21.777 9.924 21.251 9.774 20.801 9.483 C 20.361 9.191 20.016 8.776 19.766 8.239 C 19.516 7.701 19.392 7.059 19.392 6.309 C 19.392 5.552 19.519 4.904 19.772 4.367 C 20.027 3.829 20.374 3.419 20.814 3.135 C 21.254 2.852 21.751 2.71 22.305 2.71 C 22.682 2.71 23.001 2.771 23.264 2.894 C 23.53 3.013 23.748 3.164 23.918 3.351 C 24.091 3.533 24.228 3.721 24.33 3.916 L 24.381 3.916 L 24.381 0.323 L 26.019 0.323 L 26.019 9.781 L 24.413 9.781 L 24.413 8.689 L 24.343 8.689 C 24.233 8.904 24.091 9.101 23.923 9.273 C 23.734 9.468 23.51 9.626 23.263 9.737 C 23.001 9.855 22.684 9.915 22.312 9.915 Z M 22.737 8.563 C 23.092 8.563 23.397 8.469 23.651 8.283 C 23.915 8.079 24.115 7.804 24.229 7.49 C 24.364 7.147 24.432 6.751 24.432 6.303 C 24.432 5.85 24.364 5.456 24.229 5.123 C 24.118 4.811 23.917 4.539 23.651 4.341 C 23.385 4.151 23.064 4.053 22.737 4.062 C 22.41 4.053 22.089 4.152 21.823 4.342 C 21.573 4.528 21.383 4.79 21.252 5.128 C 21.118 5.505 21.054 5.903 21.062 6.303 C 21.062 6.751 21.127 7.145 21.258 7.483 C 21.389 7.822 21.58 8.086 21.829 8.277 C 22.079 8.467 22.381 8.563 22.737 8.563 Z M 14.352 9.915 C 13.817 9.924 13.291 9.774 12.841 9.483 C 12.405 9.191 12.061 8.776 11.806 8.239 C 11.556 7.701 11.432 7.059 11.432 6.309 C 11.432 5.552 11.559 4.904 11.812 4.367 C 12.071 3.829 12.42 3.419 12.86 3.135 C 13.3 2.852 13.797 2.71 14.352 2.71 C 14.728 2.71 15.048 2.771 15.31 2.894 C 15.577 3.013 15.797 3.164 15.97 3.351 C 16.144 3.533 16.281 3.719 16.383 3.91 L 16.44 3.91 L 16.44 2.818 L 18.059 2.818 L 18.059 9.781 L 16.44 9.781 L 16.44 8.696 L 16.383 8.696 C 16.272 8.908 16.131 9.102 15.964 9.273 C 15.786 9.46 15.564 9.614 15.298 9.737 C 14.999 9.863 14.676 9.923 14.352 9.915 Z M 14.783 8.563 C 15.139 8.563 15.443 8.469 15.697 8.283 C 15.951 8.093 16.144 7.828 16.275 7.49 C 16.41 7.147 16.478 6.751 16.478 6.303 C 16.478 5.85 16.41 5.456 16.275 5.123 C 16.164 4.811 15.963 4.539 15.697 4.341 C 15.447 4.155 15.143 4.062 14.783 4.062 C 14.423 4.062 14.119 4.155 13.869 4.342 C 13.608 4.543 13.41 4.813 13.298 5.122 C 13.167 5.456 13.101 5.85 13.101 6.302 C 13.101 6.752 13.167 7.145 13.298 7.483 C 13.429 7.822 13.62 8.086 13.869 8.277 C 14.123 8.467 14.428 8.563 14.783 8.563 Z M 0 9.781 L 0 0.323 L 2.507 0.323 L 4.322 5.236 C 4.382 5.418 4.452 5.646 4.532 5.922 C 4.612 6.197 4.695 6.493 4.779 6.811 C 4.864 7.124 4.942 7.428 5.014 7.725 C 5.09 8.017 5.154 8.273 5.204 8.493 L 4.843 8.493 C 5.045 7.633 5.267 6.778 5.509 5.928 C 5.589 5.648 5.662 5.418 5.725 5.236 L 7.509 0.323 L 10.023 0.323 L 10.023 9.781 L 8.347 9.781 L 8.347 4.989 C 8.35 4.443 8.358 3.897 8.372 3.351 L 8.398 2.38 C 8.406 2.054 8.412 1.743 8.417 1.447 L 8.563 1.447 C 8.473 1.773 8.379 2.107 8.277 2.45 L 7.979 3.446 C 7.886 3.764 7.795 4.056 7.706 4.322 C 7.636 4.546 7.561 4.768 7.483 4.989 L 5.719 9.781 L 4.303 9.781 L 2.513 4.989 L 2.291 4.329 C 2.198 4.04 2.107 3.75 2.018 3.459 L 1.713 2.469 C 1.613 2.129 1.514 1.788 1.415 1.447 L 1.593 1.447 C 1.597 1.73 1.603 2.035 1.612 2.361 C 1.62 2.682 1.627 3.006 1.631 3.332 C 1.639 3.654 1.646 3.958 1.65 4.246 C 1.658 4.534 1.663 4.781 1.663 4.989 L 1.663 9.781 Z\" fill=\"var(--1bd4d3i, rgb(0, 0, 0))\" height=\"9.927205036163329px\" id=\"LLqmOOyHA\" transform=\"translate(0 -0.25)\" width=\"95.65900006103517px\"/></svg>\\'), var(--framer-icon-mask, none)';const maskMode=\"alpha, var(--framer-icon-mask-mode, add)\";const maskRepeat=\"no-repeat\";const maskPosition=\"center\";const maskSize=\"auto\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,fill2,height,id,width,...props})=>{return{...props,vtL2DrqsL:fill2??props.vtL2DrqsL??\"rgb(0, 0, 0)\",Z1QnXqTEb:fill??props.Z1QnXqTEb??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,Z1QnXqTEb,vtL2DrqsL,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-g7oZR\",className),layoutId:layoutId,ref:ref,style:{\"--1bd4d3i\":Z1QnXqTEb,...style}});});const css=[`.framer-g7oZR { -webkit-mask-image: ${maskImage}; -webkit-mask-position: ${maskPosition}; -webkit-mask-repeat: ${maskRepeat}; -webkit-mask-size: ${maskSize}; aspect-ratio: 9.7; background-color: var(--1bd4d3i); mask-image: ${maskImage}; mask-mode: ${maskMode}; mask-position: ${maskPosition}; mask-repeat: ${maskRepeat}; mask-size: ${maskSize}; width: 97px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 97\n * @framerIntrinsicHeight 10\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"Z1QnXqTEb\":\"fill\",\"vtL2DrqsL\":\"fill2\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Text\",\"color\":{\"type\":\"variable\",\"value\":\"1bd4d3i\"},\"set\":{\"localId\":\"vectorSet/thvUZpt_P\",\"id\":\"thvUZpt_P\",\"moduleId\":\"E4PMWqXdwPvchBxv0O7p\"}}\n */const Icon=withCSS(Component,css,\"framer-g7oZR\");Icon.displayName=\"Text\";export default Icon;addPropertyControls(Icon,{Z1QnXqTEb:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color},vtL2DrqsL:{defaultValue:\"rgb(0, 0, 0)\",hidden:true,title:\"Fill 2\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"97\",\"framerIntrinsicHeight\":\"10\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerVariables\":\"{\\\"Z1QnXqTEb\\\":\\\"fill\\\",\\\"vtL2DrqsL\\\":\\\"fill2\\\"}\",\"framerImmutableVariables\":\"true\",\"framerVector\":\"{\\\"name\\\":\\\"Text\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1bd4d3i\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/thvUZpt_P\\\",\\\"id\\\":\\\"thvUZpt_P\\\",\\\"moduleId\\\":\\\"E4PMWqXdwPvchBxv0O7p\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (464f719-dev)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const maskImage='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 12 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 0 L 12 0 L 12 6 L 6 6 Z M 0 6 L 6 6 L 12 12 L 6 12 L 6 18 L 0 12 Z\" fill=\"var(--1bd4d3i, rgb(0, 0, 0))\" height=\"18px\" id=\"td4SVg2I8\" transform=\"translate(0 1.5)\" width=\"12px\"/></svg>\\'), var(--framer-icon-mask, none)';const maskMode=\"alpha, var(--framer-icon-mask-mode, add)\";const maskRepeat=\"no-repeat\";const maskPosition=\"center\";const maskSize=\"auto\";const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,fill2,height,id,width,...props})=>{return{...props,vtL2DrqsL:fill2??props.vtL2DrqsL??\"rgb(0, 0, 0)\",Z1QnXqTEb:fill??props.Z1QnXqTEb??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,Z1QnXqTEb,vtL2DrqsL,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-hcsc7\",className),layoutId:layoutId,ref:ref,style:{\"--1bd4d3i\":Z1QnXqTEb,...style}});});const css=[`.framer-hcsc7 { -webkit-mask-image: ${maskImage}; -webkit-mask-position: ${maskPosition}; -webkit-mask-repeat: ${maskRepeat}; -webkit-mask-size: ${maskSize}; aspect-ratio: 0.6; background-color: var(--1bd4d3i); mask-image: ${maskImage}; mask-mode: ${maskMode}; mask-position: ${maskPosition}; mask-repeat: ${maskRepeat}; mask-size: ${maskSize}; width: 12px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 12\n * @framerIntrinsicHeight 20\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"Z1QnXqTEb\":\"fill\",\"vtL2DrqsL\":\"fill2\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Framer\",\"color\":{\"type\":\"variable\",\"value\":\"1bd4d3i\"},\"set\":{\"localId\":\"vectorSet/thvUZpt_P\",\"id\":\"thvUZpt_P\",\"moduleId\":\"E4PMWqXdwPvchBxv0O7p\"}}\n */const Icon=withCSS(Component,css,\"framer-hcsc7\");Icon.displayName=\"Framer\";export default Icon;addPropertyControls(Icon,{Z1QnXqTEb:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Fill\",type:ControlType.Color},vtL2DrqsL:{defaultValue:\"rgb(0, 0, 0)\",hidden:true,title:\"Fill 2\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"Z1QnXqTEb\\\":\\\"fill\\\",\\\"vtL2DrqsL\\\":\\\"fill2\\\"}\",\"framerIntrinsicWidth\":\"12\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Framer\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1bd4d3i\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/thvUZpt_P\\\",\\\"id\\\":\\\"thvUZpt_P\\\",\\\"moduleId\\\":\\\"E4PMWqXdwPvchBxv0O7p\\\"}}\",\"framerIntrinsicHeight\":\"20\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (332c618)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,cx,getFonts,Link,useComponentViewport,useLocaleInfo,useVariantState,withCodeBoundaryForOverrides,withCSS,withFX,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import{withFramerBadgeHandling,withText}from\"https://framerusercontent.com/modules/gHq0X0Tq3Bov414yjLXK/MareZLDFu3yAaERz5qaC/Click.js\";import Text from\"https://framerusercontent.com/modules/Fsj5Q1wuxJqcJKikrUcr/DWPTg36TPcxWwMyIKjQB/L33Hu7YVx.js\";import Framer from\"https://framerusercontent.com/modules/OW7AYQ4a6z9WWvElhH6S/qf8XQgO3ASsbBnwlgbKi/XCOJBBdvI.js\";const FramerFonts=getFonts(Framer);const TextFonts=getFonts(Text);const TextWithText1um7t9d=withCodeBoundaryForOverrides(Text,{nodeId:\"pBR1Ew0r8\",override:withText,scopeId:\"PX9hIOIVM\"});const MotionAWithFramerBadgeHandlingn0ccwkWithFXWithOptimizedAppearEffect=withOptimizedAppearEffect(withFX(withCodeBoundaryForOverrides(motion.a,{nodeId:\"HK2sXlagE\",override:withFramerBadgeHandling,scopeId:\"PX9hIOIVM\"})));const serializationHash=\"framer-6jWyo\";const variantClassNames={HK2sXlagE:\"framer-v-n0ccwk\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:40,delay:1,mass:1.5,stiffness:350,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:10};const transition2={duration:0,type:\"tween\"};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;const transformTemplate2=(_,t)=>`translateX(-50%) ${t}`;const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"HK2sXlagE\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition2,children:/*#__PURE__*/_jsx(Link,{href:\"https://www.framer.com\",motionChild:true,nodeId:\"HK2sXlagE\",openInNewTab:false,relValues:[],scopeId:\"PX9hIOIVM\",children:/*#__PURE__*/_jsxs(MotionAWithFramerBadgeHandlingn0ccwkWithFXWithOptimizedAppearEffect,{...restProps,...gestureHandlers,__framer__presenceAnimate:animation,__framer__presenceInitial:animation1,__perspectiveFX:false,__smartComponentFX:true,__targetOpacity:1,className:`${cx(scopingClassNames,\"framer-n0ccwk\",className,classNames)} framer-bmpgw8`,\"data-framer-appear-id\":\"n0ccwk\",\"data-framer-name\":\"Light\",\"data-nosnippet\":true,layoutDependency:layoutDependency,layoutId:\"HK2sXlagE\",optimized:true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-13yxzio\",\"data-framer-name\":\"Backdrop\",layoutDependency:layoutDependency,layoutId:\"IH1cvP0s5\",style:{backgroundColor:\"rgb(255, 255, 255)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,boxShadow:\"0px 0.6021873017743928px 1.5656869846134214px -1.5px rgba(0, 0, 0, 0.17), 0px 2.288533303243457px 5.950186588432988px -3px rgba(0, 0, 0, 0.14), 0px 10px 26px -4.5px rgba(0, 0, 0, 0.02)\"}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-19yaanm\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"U6HIU1IEW\",transformTemplate:transformTemplate1,children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1kflzx5\",layoutDependency:layoutDependency,layoutId:\"roMJYXHnO\",children:/*#__PURE__*/_jsx(Framer,{animated:true,className:\"framer-e50co\",\"data-framer-name\":\"Logo\",layoutDependency:layoutDependency,layoutId:\"O3s3GcxMZ\",style:{\"--1bd4d3i\":\"rgb(0, 0, 0)\",\"--otdjsv\":\"rgb(0, 0, 0)\"},transformTemplate:transformTemplate2})}),/*#__PURE__*/_jsx(TextWithText1um7t9d,{animated:true,className:\"framer-1um7t9d\",\"data-framer-name\":\"Text\",layoutDependency:layoutDependency,layoutId:\"pBR1Ew0r8\",style:{\"--1bd4d3i\":\"rgb(0, 0, 0)\",\"--otdjsv\":\"rgb(0, 0, 0)\"}})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-j4ugry\",\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"vCwsHyUh8\",style:{borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11,boxShadow:\"inset 0px 0px 0px 1px rgb(0, 0, 0)\",mask:\"linear-gradient(180deg, rgba(0,0,0,0) 65%, rgba(0,0,0,1) 100%) add\",opacity:.06,WebkitMask:\"linear-gradient(180deg, rgba(0,0,0,0) 65%, rgba(0,0,0,1) 100%) add\"}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-jnuwbw\",\"data-framer-name\":\"Border\",layoutDependency:layoutDependency,layoutId:\"ZirFGX8Eh\",style:{borderBottomLeftRadius:11,borderBottomRightRadius:11,borderTopLeftRadius:11,borderTopRightRadius:11,boxShadow:\"inset 0px 0px 0px 1px rgb(0, 0, 0)\",opacity:.04}})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-6jWyo.framer-bmpgw8, .framer-6jWyo .framer-bmpgw8 { display: block; }\",\".framer-6jWyo.framer-n0ccwk { gap: 10px; height: 38px; overflow: visible; position: relative; text-decoration: none; width: 140px; }\",\".framer-6jWyo .framer-13yxzio { bottom: 1px; flex: none; left: 1px; overflow: hidden; position: absolute; right: 1px; top: 1px; will-change: var(--framer-will-change-override, transform); }\",\".framer-6jWyo .framer-19yaanm { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; left: 50%; overflow: visible; padding: 0px; position: absolute; top: 50%; width: min-content; }\",\".framer-6jWyo .framer-1kflzx5 { flex: none; height: 16px; overflow: visible; position: relative; width: 12px; }\",\".framer-6jWyo .framer-e50co { flex: none; height: var(--framer-aspect-ratio-supported, 20px); left: 50%; position: absolute; top: -2px; }\",\".framer-6jWyo .framer-1um7t9d { flex: none; height: var(--framer-aspect-ratio-supported, 10px); position: relative; }\",\".framer-6jWyo .framer-j4ugry, .framer-6jWyo .framer-jnuwbw { bottom: 0px; flex: none; left: 0px; overflow: visible; pointer-events: none; position: absolute; right: 0px; top: 0px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 38\n * @framerIntrinsicWidth 140\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerPX9hIOIVM=withCSS(Component,css,\"framer-6jWyo\");export default FramerPX9hIOIVM;FramerPX9hIOIVM.displayName=\"Badge\";FramerPX9hIOIVM.defaultProps={height:38,width:140};addFonts(FramerPX9hIOIVM,[{explicitInter:true,fonts:[]},...FramerFonts,...TextFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerPX9hIOIVM\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicWidth\":\"140\",\"framerIntrinsicHeight\":\"38\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAs0mE,CAAC,CAAC,SAAsB,EAAK,GAAM,CAAC,OAAO,OAAO,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}