1<!DOCTYPE html> 2<html lang="en-US"> 3 4<head> 5 6 <meta charset="UTF-8"> 7 <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1"> 8 <link rel="profile" href="http://gmpg.org/xfn/11"> 9 <title>ydangle apps</title> 10<meta name='robots' content='max-image-preview:large' /> 11<link rel='dns-prefetch' href='//fonts.googleapis.com' /> 12<link rel="alternate" type="application/rss+xml" title="ydangle apps » Feed" href="https://ydangleapps.com/feed/" /> 13<link rel="alternate" type="application/rss+xml" title="ydangle apps » Comments Feed" href="https://ydangleapps.com/comments/feed/" /> 14<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://ydangleapps.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fydangleapps.com%2F" /> 15<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://ydangleapps.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fydangleapps.com%2F&format=xml" /> 16<style id="wp-img-auto-sizes-contain-inline-css"> 17img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 18/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 19</style> 20<style id="wp-emoji-styles-inline-css"> 21 22 img.wp-smiley, img.emoji { 23 display: inline !important; 24 border: none !important; 25 box-shadow: none !important; 26 height: 1em !important; 27 width: 1em !important; 28 margin: 0 0.07em !important; 29 vertical-align: -0.1em !important; 30 background: none !important; 31 padding: 0 !important; 32 } 33/*# sourceURL=wp-emoji-styles-inline-css */ 34</style> 35<style id="wp-block-library-inline-css"> 36:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;
36--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}} 37 38/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */ 39</style> 40<style id="wp-block-button-inline-css"> 41.wp-block-button__link{align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-button[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1% - var(--wp--style--block-gap, .5em)*(1 - var(--wp--block-button--width)/100))}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button[class*=wp-block-button__width]{width:calc(var(--wp--block-button--width)*1%)}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:transparent;background-image:none}
42/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/button/style.min.css */ 43</style> 44<link rel='stylesheet' id='wp-block-cover-css' href='https://ydangleapps.com/wp-includes/blocks/cover/style.min.css?ver=7.1.2' media='all' /> 45<style id="wp-block-heading-inline-css"> 46h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg} 47/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/heading/style.min.css */ 48</style> 49<style id="wp-block-image-inline-css"> 50.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:rgba(90,90,90,.25);border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto rgba(90,90,90,.25);outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:rgba(90,90,90,.25);border:none}.wp-lightbox-overlay{box-sizing:border-box;
50cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .wp-lightbox-close-button{align-items:center;cursor:pointer;display:flex;font-family:inherit;gap:8px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 4px;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .wp-lightbox-close-button:focus,.wp-lightbox-overlay .wp-lightbox-close-button:hover,.wp-lightbox-overlay .wp-lightbox-close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .wp-lightbox-close-button:has(.wp-lightbox-close-text:not([hidden])) .wp-lightbox-close-icon svg{height:1em;width:1em}.wp-lightbox-overlay .wp-lightbox-close-icon svg{display:block}.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{align-items:center;bottom:16px;cursor:pointer;display:flex;font-family:inherit;gap:4px;justify-content:center;line-height:1;min-height:40px;min-width:40px;padding:0 8px;position:absolute;z-index:2000002}.wp-lightbox-overlay .wp-lightbox-navigation-button-next[hidden],.wp-lightbox-overlay .wp-lightbox-navigation-button-prev[hidden]{display:none}@media (min-width:960px){.wp-lightbox-overlay .wp-lightbox-navigation-button-next,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{bottom:50%;transform:translateY(-50%)}}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-next:not(:hover):not(:active):not(.has-background),.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:focus,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:hover,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:not(:hover):not(:active):not(.has-background){background:none;border:none;padding:0 8px}.wp-lightbox-overlay .wp-lightbox-navigation-button-next:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg,.wp-lightbox-overlay .wp-lightbox-navigation-button-prev:has(.wp-lightbox-navigation-text:not([hidden])) .wp-lightbox-navigation-icon svg{display:block;height:1.5em;width:1.5em}.wp-lightbox-overlay .wp-lightbox-navigation-button-prev{left:calc(env(safe-area-inset-left) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-button-next{right:calc(env(safe-area-inset-right) + 16px)}.wp-lightbox-overlay .wp-lightbox-navigation-icon svg{vertical-align:middle}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:2000001}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}
50@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}} 51/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/image/style.min.css */ 52</style> 53<style id="wp-block-paragraph-inline-css"> 54.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg} 55/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/paragraph/style.min.css */ 56</style> 57<style id="wp-block-buttons-inline-css"> 58.wp-block-buttons{box-sizing:border-box}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttons[style*=text-decoration] .wp-block-button,.wp-block-buttons[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons .wp-block-button__link{width:100%}.wp-block-button.aligncenter{text-align:center} 59/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/buttons/style.min.css */ 60</style> 61<style id="wp-block-columns-inline-css"> 62.wp-block-columns{box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns{align-items:normal!important}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}
63/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/columns/style.min.css */ 64</style> 65<style id="wp-block-group-inline-css"> 66.wp-block-group{box-sizing:border-box}:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative} 67/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/group/style.min.css */ 68</style> 69<style id="wp-block-social-links-inline-css"> 70.wp-block-social-links{background:none;box-sizing:border-box;margin-left:0;padding-left:0;padding-right:0;text-indent:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{border-bottom:0;box-shadow:none;text-decoration:none}.wp-block-social-links .wp-social-link svg{height:1em;width:1em}.wp-block-social-links .wp-social-link span:not(.screen-reader-text){font-size:.65em;margin-left:.5em;margin-right:.5em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{display:flex;justify-content:center}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{border-radius:9999px;display:block}@media not (prefers-reduced-motion){.wp-block-social-link{transition:transform .1s ease}}.wp-block-social-link{height:auto}.wp-block-social-link a{align-items:center;display:flex;line-height:0}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link.wp-social-link{display:inline-block;margin:0;padding:0}.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor svg,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:visited{fill:currentColor;color:currentColor}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link{background-color:#f0f0f0;color:#444}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-amazon{background-color:#f90;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-behance{background-color:#0757fe;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bluesky{background-color:#0a7aff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-discord{background-color:#5865f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-etsy{background-color:#f45800;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-facebook{background-color:#0866ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-flickr{background-color:#0461dd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-foursquare{background-color:#e65678;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-github{background-color:#24292d;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-google{background-color:#ea4434;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-gravatar{background-color:#1d4fc4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-instagram{background-color:#f00075;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-medium{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-meetup{background-color:#f6405f;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-patreon{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pinterest{background-color:#e60122;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pocket{background-color:#ef4155;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-reddit{background-color:#ff4500;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-skype{background-color:#0478d7;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-snapchat{stroke:#000;background-color:#fefc00;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-spotify{background-color:#1bd760;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-telegram{background-color:#2aabee;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-threads{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tiktok{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tumblr{background-color:#011835;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitch{background-color:#6440a4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vk{background-color:#4680c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-whatsapp{background-color:#25d366;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-x{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-yelp{background-color:#d32422;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-youtube{background-color:red;color:#fff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link{background:none}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link svg{height:1.25em;width:1.25em}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-amazon{color:#f90}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bandcamp{color:#1ea0c3}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-behance{color:#0757fe}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bluesky{color:#0a7aff}
70:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-codepen{color:#1e1f26}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-deviantart{color:#02e49b}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-discord{color:#5865f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dribbble{color:#e94c89}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dropbox{color:#4280ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-etsy{color:#f45800}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-facebook{color:#0866ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-fivehundredpx{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-flickr{color:#0461dd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-foursquare{color:#e65678}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-github{color:#24292d}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-goodreads{color:#382110}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-google{color:#ea4434}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-gravatar{color:#1d4fc4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-instagram{color:#f00075}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-lastfm{color:#e21b24}
70:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-linkedin{color:#0d66c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-mastodon{color:#3288d4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-medium{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-meetup{color:#f6405f}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-patreon{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pinterest{color:#e60122}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pocket{color:#ef4155}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-reddit{color:#ff4500}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-skype{color:#0478d7}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-snapchat{stroke:#000;color:#fff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-soundcloud{color:#ff5600}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-spotify{color:#1bd760}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-telegram{color:#2aabee}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-threads{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tiktok{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tumblr{color:#011835}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitch{color:#6440a4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitter{color:#1da1f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vimeo{color:#1eb7ea}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vk{color:#4680c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-whatsapp{color:#25d366}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-wordpress{color:#3499cd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-x{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-yelp{color:#d32422}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}:root :where(.wp-block-social-links .wp-social-link a){padding:.25em}:root :where(.wp-block-social-links.is-style-logos-only .wp-social-link a){padding:0}:root :where(.wp-block-social-links.is-style-pill-shape .wp-social-link a){padding-left:.6666666667em;padding-right:.6666666667em}.wp-block-social-links:not(.has-icon-color):not(.has-icon-background-color) .wp-social-link-snapchat .wp-block-social-link-label{color:#000} 71/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/social-links/style.min.css */ 72</style> 73<style id="wp-block-spacer-inline-css"> 74.wp-block-spacer{clear:both} 75/*# sourceURL=https://ydangleapps.com/wp-includes/blocks/spacer/style.min.css */ 76</style> 77 78<style id="classic-theme-styles-inline-css"> 79/*! This file is auto-generated */ 80.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 81/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 82</style> 83 84<style id="global-styles-inline-css"> 85:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--neve-link-color: var(--nv-primary-accent);--wp--preset--color--neve-link-hover-color: var(--nv-secondary-accent);--wp--preset--color--nv-site-bg: var(--nv-site-bg);--wp--preset--color--nv-light-bg: var(--nv-light-bg);--wp--preset--color--nv-dark-bg: var(--nv-dark-bg);--wp--preset--color--neve-text-color: var(--nv-text-color);--wp--preset--color--nv-text-dark-bg: var(--nv-text-dark-bg);--wp--preset--color--nv-c-1: var(--nv-c-1);--wp--preset--color--nv-c-2: var(--nv-c-2);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
850) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:where(body) { margin: 0; }:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}:root :where(.wp-element-button, .wp-block-button__link){background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: calc(0.667em + 2px);padding-right: calc(1.333em + 2px);padding-bottom: calc(0.667em + 2px);padding-left: calc(1.333em + 2px);text-decoration: none;text-transform: inherit;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-neve-link-color-color{color: var(--wp--preset--color--neve-link-color) !important;}.has-neve-link-hover-color-color{color: var(--wp--preset--color--neve-link-hover-color) !important;}.has-nv-site-bg-color{color: var(--wp--preset--color--nv-site-bg) !important;}.has-nv-light-bg-color{color: var(--wp--preset--color--nv-light-bg) !important;}.has-nv-dark-bg-color{color: var(--wp--preset--color--nv-dark-bg) !important;}.has-neve-text-color-color{color: var(--wp--preset--color--neve-text-color) !important;}.has-nv-text-dark-bg-color{color: var(--wp--preset--color--nv-text-dark-bg) !important;}.has-nv-c-1-color{color: var(--wp--preset--color--nv-c-1) !important;}.has-nv-c-2-color{color: var(--wp--preset--color--nv-c-2) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-neve-link-color-background-color{background-color: var(--wp--preset--color--neve-link-color) !important;}.has-neve-link-hover-color-background-color{background-color: var(--wp--preset--color--neve-link-hover-color) !important;}.has-nv-site-bg-background-color{background-color: var(--wp--preset--color--nv-site-bg) !important;}.has-nv-light-bg-background-color{background-color: var(--wp--preset--color--nv-light-bg) !important;}.has-nv-dark-bg-background-color{background-color: var(--wp--preset--color--nv-dark-bg) !important;}.has-neve-text-color-background-color{background-color: var(--wp--preset--color--neve-text-color) !important;}.has-nv-text-dark-bg-background-color{background-color: var(--wp--preset--color--nv-text-dark-bg) !important;}.has-nv-c-1-background-color{background-color: var(--wp--preset--color--nv-c-1) !important;}.has-nv-c-2-background-color{background-color: var(--wp--preset--color--nv-c-2) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-neve-link-color-border-color{border-color: var(--wp--preset--color--neve-link-color) !important;}.has-neve-link-hover-color-border-color{border-color: var(--wp--preset--color--neve-link-hover-color) !important;}.has-nv-site-bg-border-color{border-color: var(--wp--preset--color--nv-site-bg) !important;}.has-nv-light-bg-border-color{border-color: var(--wp--preset--color--nv-light-bg) !important;}.has-nv-dark-bg-border-color{border-color: var(--wp--preset--color--nv-dark-bg) !important;}.has-neve-text-color-border-color{border-color: var(--wp--preset--color--neve-text-color) !important;}.has-nv-text-dark-bg-border-color{border-color: var(--wp--preset--color--nv-text-dark-bg) !important;}.has-nv-c-1-border-color{border-color: var(--wp--preset--color--nv-c-1) !important;}.has-nv-c-2-border-color{border-color: var(--wp--preset--color--nv-c-2) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
85.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 86:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} 87/*# sourceURL=global-styles-inline-css */ 88</style> 89 90<link rel='stylesheet' id='approulette_shortcode_styles-css' href='https://ydangleapps.com/wp-content/plugins/wordpress-app-roulette-master/css/shortcode.css?ver=7.1.2' media='all' /> 91<link rel='stylesheet' id='neve-style-css' href='https://ydangleapps.com/wp-content/themes/neve/style-main-new.min.css?ver=4.2.11' media='all' /> 92<style id="neve-style-inline-css"> 93.is-menu-sidebar .header-menu-sidebar { visibility: visible; }.is-menu-sidebar.menu_sidebar_slide_left .header-menu-sidebar { transform: translate3d(0, 0, 0); left: 0; }.is-menu-sidebar.menu_sidebar_slide_right .header-menu-sidebar { transform: translate3d(0, 0, 0); right: 0; }.is-menu-sidebar.menu_sidebar_pull_right .header-menu-sidebar, .is-menu-sidebar.menu_sidebar_pull_left .header-menu-sidebar { transform: translateX(0); }.is-menu-sidebar.menu_sidebar_dropdown .header-menu-sidebar { height: auto; }.is-menu-sidebar.menu_sidebar_dropdown .header-menu-sidebar-inner { max-height: 400px; padding: 20px 0; }.is-menu-sidebar.menu_sidebar_full_canvas .header-menu-sidebar { opacity: 1; }.header-menu-sidebar .menu-item-nav-search:not(.floating) { pointer-events: none; }.header-menu-sidebar .menu-item-nav-search .is-menu-sidebar { pointer-events: unset; }@media screen and (max-width: 960px) { .builder-item.cr .item--inner { --textalign: center; --justify: center; } } 94.nv-meta-list li.meta:not(:last-child):after { content:"/" }.nv-meta-list .no-mobile{ 95 display:none; 96 }.nv-meta-list li.last::after{ 97 content: ""!important; 98 }@media (min-width: 769px) { 99 .nv-meta-list .no-mobile { 100 display: inline-block; 101 } 102 .nv-meta-list li.last:not(:last-child)::after { 103 content: "/" !important; 104 } 105 } 106 :root{ --container: 748px;--postwidth:100%; --primarybtnbg: var(--nv-primary-accent); --secondarybtnbg: rgba(0, 0, 0, 0); --primarybtnhoverbg: var(--nv-secondary-accent); --secondarybtnhoverbg: var(--nv-dark-bg); --primarybtncolor: #010101; --secondarybtncolor: var(--nv-dark-bg); --primarybtnhovercolor: #ffffff; --secondarybtnhovercolor: var(--nv-text-dark-bg);--primarybtnborderradius:0;--secondarybtnborderradius:0;--secondarybtnborderwidth:2px;--btnpadding:12px 24px;--primarybtnpadding:12px 24px;--secondarybtnpadding:calc(12px - 2px) calc(24px - 2px); --btnfs: 14px; --btnlineheight: 1.6em; --bodyfontfamily: Comfortaa; --bodyfontsize: 16px; --bodylineheight: 1.7em; --bodyletterspacing: 0px; --bodyfontweight: 400; --bodytexttransform: none; --h1fontsize: 39px; --h1fontweight: 600; --h1lineheight: 1.2em; --h1letterspacing: 0px; --h1texttransform: none; --h2fontsize: 28px; --h2fontweight: 600; --h2lineheight: 1.3em; --h2letterspacing: 0px; --h2texttransform: none; --h3fontsize: 20px; --h3fontweight: 600; --h3lineheight: 1.3em; --h3letterspacing: 0px; --h3texttransform: none; --h4fontsize: 16px; --h4fontweight: 600; --h4lineheight: 1.3em; --h4letterspacing: 0px; --h4texttransform: none; --h5fontsize: 14px; --h5fontweight: 600; --h5lineheight: 1.3em; --h5letterspacing: 0px; --h5texttransform: none; --h6fontsize: 14px; --h6fontweight: 600; --h6lineheight: 1.3em; --h6letterspacing: 0px; --h6texttransform: none;--formfieldborderwidth:2px;
106--formfieldborderradius:0; --formfieldbgcolor: var(--nv-site-bg); --formfieldbordercolor: var(--nv-light-bg); --formfieldcolor: var(--nv-text-color);--formfieldpadding:10px 12px 10px 12px;; } .nv-index-posts{ --borderradius:0px; } .has-neve-button-color-color{ color: var(--nv-primary-accent)!important; } .has-neve-button-color-background-color{ background-color: var(--nv-primary-accent)!important; } .single-post-container .alignfull > [class*="__inner-container"], .single-post-container .alignwide > [class*="__inner-container"]{ max-width:718px } .nv-meta-list{ --avatarsize: 20px; } .single .nv-meta-list{ --avatarsize: 20px; } .blog .blog-entry-title, .archive .blog-entry-title{ --fontsize: 28px; } .single h1.entry-title{ --fontsize: 28px; } .neve-main{ --boxshadow:0 3px 6px -5px rgba(0, 0, 0, 0.1), 0 4px 8px rgba(0, 0, 0, 0.1); } .nv-post-cover{ --height: 250px;--padding:40px 15px;--justify: flex-start; --textalign: left; --valign: center; } .nv-post-cover .nv-title-meta-wrap, .nv-page-title-wrap, .entry-header{ --textal
106ign: left; } .nv-is-boxed.nv-title-meta-wrap{ --padding:40px 15px; --bgcolor: var(--nv-dark-bg); } .nv-overlay{ --opacity: 50; --blendmode: normal; } .nv-is-boxed.nv-comments-wrap{ --padding:20px; } .nv-is-boxed.comment-respond{ --padding:20px; } .single:not(.single-product), .page{ --c-vspace:0 0 0 0;; } .scroll-to-top{ --color: var(--nv-text-dark-bg);--padding:8px 10px; --borderradius: 3px; --bgcolor: var(--nv-primary-accent); --hovercolor: var(--nv-text-dark-bg); --hoverbgcolor: var(--nv-primary-accent);--size:16px; } .global-styled{ --bgcolor: var(--nv-site-bg); } .header-top{ --rowbcolor: var(--nv-light-bg); --color: var(--nv-text-color); --bgcolor: #f0f0f0; } .header-main{ --rowbcolor: #fefdfd; --color: rgba(253, 253, 253, 0); --bgcolor: var(--nv-site-bg); } .header-bottom{ --rowbcolor: var(--nv-light-bg); --color: var(--nv-text-color); --bgcolor: #ffffff; } .header-menu-sidebar-bg{ --justify: flex-start; --textalign: left;--flexg: 1;--wrapdropdownwidth: auto; --color: var(--nv-text-color); --bgcolor: var(--nv-site-bg); } .header-menu-sidebar{ width: 360px; } .builder-item--logo{ --maxwidth: 120px; --color: var(--nv-text-color); --fs: 24px;--padding:10px 0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--nav-icon,.header-menu-sidebar .close-sidebar-panel .navbar-toggle{ --bgcolor: #040404; --color: #fefbfb;--borderradius:0;--borderwidth:1px; } .builder-item--nav-icon{ --label-margin:0 5px 0 0;;--padding:10px 15px;--margin:0; } .builder-item--primary-menu{ --color: var(--nv-text-color); --hovercolor: #006f86; --hovertextcolor: var(--nv-text-color); --activecolor: var(--nv-text-color); --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 1em; --lineheight: 1.6em; --letterspacing: 0px; --fontweight: 600; --texttransform: capitalize; --iconsize: 1em; } .hfg-is-group.has-primary-menu .inherit-ff{ --inheritedfw: 600; } .footer-top-inner .row{ grid-template-columns:1fr 1fr 1fr; --valign: flex-start; } .footer-top{ --rowbcolor: var(--nv-light-bg); --color: var(--nv-text-color); --bgcolor: #ffffff; } .footer-main-inner .row{ grid-template-columns:1fr 1fr 1fr; --valign: flex-start; } .footer-main{ --rowbcolor: var(--nv-light-bg); --color: var(--nv-text-color); --bgcolor: var(--nv-site-bg); } .footer-bottom-inner .row{ grid-template-columns:1fr; --valign: flex-start; } .footer-bottom{ --rowbcolor: var(--nv-light-bg); --color: var(--nv-text-dark-bg); --bgcolor: #000000; } .builder-item--footer-three-widgets{ --padding:0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--footer-menu{ --color: #ffffff; --hovercolor: var(--nv-primary-accent); --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 1em; --lineheight: 1.6; --letterspacing: 0px; --fontweight: 500; --texttransform: none; --iconsize: 1em;
106 --textalign: left;--justify: flex-start; } @media(min-width: 576px){ :root{ --container: 992px;--postwidth:50%;--btnpadding:12px 24px;--primarybtnpadding:12px 24px;--secondarybtnpadding:calc(12px - 2px) calc(24px - 2px); --btnfs: 14px; --btnlineheight: 1.6em; --bodyfontsize: 16px; --bodylineheight: 1.7em; --bodyletterspacing: 0px; --h1fontsize: 55px; --h1lineheight: 1.3em; --h1letterspacing: 0px; --h2fontsize: 34px; --h2lineheight: 1.3em; --h2letterspacing: 0px; --h3fontsize: 20px; --h3lineheight: 1.3em; --h3letterspacing: 0px; --h4fontsize: 16px; --h4lineheight: 1.3em; --h4letterspacing: 0px; --h5fontsize: 14px; --h5lineheight: 1.3em; --h5letterspacing: 0px; --h6fontsize: 14px; --h6lineheight: 1.3em; --h6letterspacing: 0px; } .single-post-container .alignfull > [class*="__inner-container"], .single-post-container .alignwide > [class*="__inner-container"]{ max-width:962px } .nv-meta-list{ --avatarsize: 20px; } .single .nv-meta-list{ --avatarsize: 20px; } .blog .blog-entry-title, .archive .blog-entry-title{ --fontsize: 32px; } .single h1.entry-title{ --fontsize: 40px; } .nv-post-cover{ --height: 320px;--padding:60px 30px;--justify: flex-start; --textalign: left; --valign: center; } .nv-post-cover .nv-title-meta-wrap, .nv-page-title-wrap, .entry-header{ --textal
106ign: left; } .nv-is-boxed.nv-title-meta-wrap{ --padding:60px 30px; } .nv-is-boxed.nv-comments-wrap{ --padding:30px; } .nv-is-boxed.comment-respond{ --padding:30px; } .single:not(.single-product), .page{ --c-vspace:0 0 0 0;; } .scroll-to-top{ --padding:8px 10px;--size:16px; } .header-menu-sidebar-bg{ --justify: flex-start; --textalign: left;--flexg: 1;--wrapdropdownwidth: auto; } .header-menu-sidebar{ width: 360px; } .builder-item--logo{ --maxwidth: 120px; --fs: 24px;--padding:10px 0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--nav-icon{ --label-margin:0 5px 0 0;;--padding:10px 15px;--margin:0; } .builder-item--primary-menu{ --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 1em; --lineheight: 1.6em; --letterspacing: 0px; --iconsize: 1em; } .builder-item--footer-three-widgets{ --padding:0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--footer-menu{ --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 1em; --lineheight: 1.6; --letterspacing: 0px; --iconsize: 1em;
106 --textalign: left;--justify: flex-start; } }@media(min-width: 960px){ :root{ --container: 1170px;--postwidth:50%;--btnpadding:12px 24px;--primarybtnpadding:12px 24px;--secondarybtnpadding:calc(12px - 2px) calc(24px - 2px); --btnfs: 16px; --btnlineheight: 1.6em; --bodyfontsize: 17px; --bodylineheight: 1.7em; --bodyletterspacing: 0px; --h1fontsize: 70px; --h1lineheight: 1.3em; --h1letterspacing: 0px; --h2fontsize: 46px; --h2lineheight: 1.3em; --h2letterspacing: 0px; --h3fontsize: 24px; --h3lineheight: 1.3em; --h3letterspacing: 0px; --h4fontsize: 20px; --h4lineheight: 1.3em; --h4letterspacing: 0px; --h5fontsize: 16px; --h5lineheight: 1.3em; --h5letterspacing: 0px; --h6fontsize: 16px; --h6lineheight: 1.3em; --h6letterspacing: 0px; } body:not(.single):not(.archive):not(.blog):not(.search):not(.error404) .neve-main > .container .col, body.post-type-archive-course .neve-main > .container .col, body.post-type-archive-llms_membership .neve-main > .container .col{ max-width: 100%; } body:not(.single):not(.archive):not(.blog):not(.search):not(.error404) .nv-sidebar-wrap, body.post-type-archive-course .nv-sidebar-wrap, body.post-type-archive-llms_membership .nv-sidebar-wrap{ max-width: 0%; } .neve-main > .archive-container .nv-index-posts.col{ max-width: 100%; } .neve-main > .archive-container .nv-sidebar-wrap{ max-width: 0%; } .neve-main > .single-post-container .nv-single-post-wrap.col{ max-width: 70%; } .single-post-container .alignfull > [class*="__inner-container"], .single-post-container .alignwide > [class*="__inner-container"]{ max-width:789px } .container-fluid.single-post-container .alignfull > [class*="__inner-container"], .container-fluid.single-post-container .alignwide > [class*="__inner-container"]{ max-width:calc(70% + 15px) } .neve-main > .single-post-container .nv-sidebar-wrap{ max-width: 30%; } .nv-meta-list{ --avatarsize: 20px; } .single .nv-meta-list{ --avatarsize: 20px; } .blog .blog-entry-title, .archive .blog-entry-title{ --fontsize: 32px; } .single h1.entry-title{ --fontsize: 65px; } .nv-post-cover{ --height: 400px;--padding:60px 40px;--justify: flex-start; --textalign: left; --valign: center; } .nv-post-cover .nv-title-meta-wrap, .nv-page-title-wrap, .entry-header{ --textal
106ign: left; } .nv-is-boxed.nv-title-meta-wrap{ --padding:60px 40px; } .nv-is-boxed.nv-comments-wrap{ --padding:40px; } .nv-is-boxed.comment-respond{ --padding:40px; } .single:not(.single-product), .page{ --c-vspace:0 0 0 0;; } .scroll-to-top{ --padding:8px 10px;--size:16px; } .header-menu-sidebar-bg{ --justify: flex-start; --textalign: left;--flexg: 1;--wrapdropdownwidth: auto; } .header-menu-sidebar{ width: 360px; } .builder-item--logo{ --maxwidth: 176px; --fs: 27px;--padding:10px 0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--nav-icon{ --label-margin:0 5px 0 0;;--padding:10px 15px;--margin:0; } .builder-item--primary-menu{ --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 0.9em; --lineheight: 1.6em; --letterspacing: 0px; --iconsize: 0.9em; } .builder-item--footer-three-widgets{ --padding:0;--margin:0; --textalign: left;--justify: flex-start; } .builder-item--footer-menu{ --spacing: 20px; --height: 25px;--padding:0;--margin:0; --fontsize: 1em; --lineheight: 1.6; --letterspacing: 0px; --iconsize: 1em;
106 --textalign: left;--justify: flex-start; } }.scroll-to-top {right: 20px; border: none; position: fixed; bottom: 30px; display: none; opacity: 0; visibility: hidden; transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out; align-items: center; justify-content: center; z-index: 999; } @supports (-webkit-overflow-scrolling: touch) { .scroll-to-top { bottom: 74px; } } .scroll-to-top.image { background-position: center; } .scroll-to-top .scroll-to-top-image { width: 100%; height: 100%; } .scroll-to-top .scroll-to-top-label { margin: 0; padding: 5px; } .scroll-to-top:hover { text-decoration: none; } .scroll-to-top.scroll-to-top-left {left: 20px; right: unset;} .scroll-to-top.scroll-show-mobile { display: flex; } @media (min-width: 960px) { .scroll-to-top { display: flex; } }.scroll-to-top { color: var(--color); padding: var(--padding); border-radius: var(--borderradius); background: var(--bgcolor); } .scroll-to-top:hover, .scroll-to-top:focus { color: var(--hovercolor); background: var(--hoverbgcolor); } .scroll-to-top-icon, .scroll-to-top.image .scroll-to-top-image { width: var(--size); height: var(--size); } .scroll-to-top-image { background-image: var(--bgimage); background-size: cover; }:root{--nv-primary-accent:#2f5aae;--nv-secondary-accent:#2f5aae;--nv-site-bg:#ffffff;--nv-light-bg:#f4f5f7;--nv-dark-bg:#121212;--nv-text-color:#272626;--nv-text-dark-bg:#ffffff;--nv-c-1:#9463ae;--nv-c-2:#be574b;--nv-fallback-ff:Arial, Helvetica, sans-serif;} 107/*# sourceURL=neve-style-inline-css */ 108</style> 109<link rel='stylesheet' id='neve-google-font-comfortaa-css' href='//fonts.googleapis.com/css?family=Comfortaa%3A400%2C600%2C500&display=swap&ver=4.2.11' media='all' />
110<script id="jquery-core-js" src="https://ydangleapps.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1"></script>
vendor: 1 bytes, line 110
110
111<script id="jquery-migrate-js" src="https://ydangleapps.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1"></script>
vendor: 1 bytes, line 111
111
112<script id="approulette_shortcode_js-js" src="https://ydangleapps.com/wp-content/plugins/wordpress-app-roulette-master/js/shortcode.js?ver=7.1.2"></script>
112 113<link rel="https://api.w.org/" href="https://ydangleapps.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://ydangleapps.com/wp-json/wp/v2/pages/830" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://ydangleapps.com/xmlrpc.php?rsd" /> 114<meta name="generator" content="WordPress 7.1.2" /> 115<link rel="canonical" href="https://ydangleapps.com/" /> 116<link rel='shortlink' href='https://ydangleapps.com/' /> 117 <style>img#wpstats{display:none}</style> 118 <style>.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style><!--
118<script> 119window.intelliweave = { 120 apiKey: '018dd107-2fe9-460a-bf80-ec08bd222101' 121} 122</script>
122 --> 123<!--
123<script src="https://cdn.jsdelivr.net/npm/@intelliweave/embedded/dist/script-tag/script-tag.js" type="module"></script>
123 --> 124
125<script> 126// Listen for the global search event to return your own knowledge base items. 127document.addEventListener('webweaver_kb_search', event => { 128 129 // Get the query text requested by the AI 130 let query = event.query 131 132 // Return your list of knowledge items here. You can return all items, or filter them using 133 // the query above. If you return all items, IntelliWeave will filter them for you. 134 // Note: It's good practice to concatenate your results onto the `event.entries` array, 135 // since other listeners for the same event may have added their own entries as well. 136 event.entries = event.entries.concat([ 137 138 // LinkedIn navigation action 139 { 140 // Each entry must have a unique ID. 141 id: 'site_navigation', 142 143 // "action" represents an action the AI can perform. 144 type: "action", 145 146 // Name of the action. Should be short and descriptive. 147 name: "Navigation", 148 149 // Tags can be used to help the AI find the right knowledge item. 150 tags: "take me to, go to, linkedin, company page, ydangle apps", 151 152 // Describe to the AI what this action does. 153 content: `Navigate to ydangle apps LinkedIn company page. This action will directly redirect the user to the LinkedIn page.`, 154 155 // No parameters needed for this simple navigation 156 parameters: [], 157 158 // This is the actual action the AI will perform. 159 action: async () => { 160 try { 161 window.location.href = 'https://www.linkedin.com/company/ydangle-apps-pty-ltd/posts/?feedView=all'; 162 163 // Give it a moment to navigate 164 await new Promise(resolve => setTimeout(resolve, 100)); 165 166 return { 167 success: true, 168 content: "Successfully navigated to ydangle apps LinkedIn company page. You should now see the LinkedIn page loading." 169 }; 170 } catch (error) { 171 return { 172 success: false, 173 content: "Navigation failed. Here's the direct link: https://www.linkedin.com/company/ydangle-apps-pty-ltd/posts/?feedView=all" 174 }; 175 } 176 }, 177 178 // This tells the system this is a direct action that doesn't need confirmation 179 directAction: true, 180 181 // This flag tells the system to feed this information into the AI at all times. 182 isContext: false, 183 184 // You can remove this entry from the AI's knowledge base by setting this flag to true. 185 disabled: false, 186}, 187 188 // Schedule demo action that opens a calendar in a modal 189 { 190 // Each entry must have a unique ID. 191 id: 'schedule_demo', 192 193 // "action" represents an action the AI can perform. 194 type: "action", 195 196 // Name of the action. Should be short and descriptive. 197 name: "Schedule Demo", 198 199 // Tags can be used to help the AI find the right knowledge item. 200 tags: "demo, see in action, schedule, book appointment, calendar, meeting", 201 202 // Describe to the AI what this action does. 203 content: `Open the scheduling calendar to book a demo with ydangle apps.`, 204 205 // For actions, you can specify a set of parameters the AI will pass to your function. 206 parameters: [ 207 { 208 // The field name 209 name: "action", 210 211 // Field type. This can be 'string', 'boolean' or 'number'. 212 type: "string", 213 214 // The description lets you tell the AI what the field is for. 215 description: "Whether to schedule a demo or cancel", 216 217 // This parameter is required 218 required: true, 219 220 // Available options for this parameter 221 options: ['schedule', 'cancel'] 222 } 223 ], 224 225 // This is the actual action the AI will perform. 226 action: async params => { 227 try { 228 if (params.action === 'schedule') { 229 // Create modal overlay 230 const overlay = document.createElement('div'); 231 overlay.style.cssText = ` 232 position: fixed; 233 top: 0; 234 left: 0; 235 width: 100%; 236 height: 100%; 237 background: rgba(0, 0, 0, 0.5); 238 z-index: 9999; 239 display: flex; 240 align-items: center; 241 justify-content: center; 242 `; 243 244 // Create iframe container 245 const container = document.createElement('div'); 246 container.style.cssText = ` 247 background: white; 248 border-radius: 8px; 249 padding: 20px; 250 max-width: 90vw; 251 max-height: 90vh; 252 position: relative; 253 `; 254 255 // Create close button 256 const closeButton = document.createElement('button'); 257 closeButton.textContent = 'Ã'; 258 closeButton.style.cssText = ` 259 position: absolute; 260 top: 10px; 261 right: 15px; 262 background: none; 263 border: none; 264 font-size: 24px; 265 cursor: pointer; 266 z-index: 10000; 267 `; 268 269 // Create iframe with Google Calendar scheduling 270 const iframe = document.createElement('iframe'); 271 iframe.src = 'https://calendar.google.com/calendar/appointments/schedules/AcZssZ3r7dr26o0yxepWTT23RPDb7FaK07CPfVl7mHC00ds9SRo3L_J0clqrYHegBYzRkPngqZhzM_PZ?gv=true'; 272 iframe.style.cssText = ` 273 border: 0; 274 width: 1000px; 275 height: 800px; 276 max-width: 90vw; 277 max-height: 85vh; 278 `; 279 280 // Close functionality 281 const closeModal = () => { 282 document.body.removeChild(overlay); 283 }; 284 285 closeButton.onclick = closeModal; 286 overlay.onclick = (e) => { 287 if (e.target === overlay) closeModal(); 288 }; 289 290 // Assemble modal 291 container.appendChild(closeButton); 292 container.appendChild(iframe); 293 overlay.appendChild(container); 294 document.body.appendChild(overlay); 295 296 // Return success response to the AI 297 return { 298 success: true, 299 content: "Demo scheduling calendar opened successfully!" 300 }; 301 302 } else if (params.action === 'cancel') { 303 // Find and remove any existing modals 304 const existingModal = document.querySelector('div[style*="position: fixed"][style*="z-index: 9999"]'); 305 if (existingModal) { 306 existingModal.remove(); 307 return { 308 success: true, 309 content: "Demo scheduling calendar closed." 310 }; 311 } 312 return { 313 success: false, 314 content: "No demo calendar was open to close." 315 }; 316 } 317 318 } catch (error) { 319 // You can throw errors directly, and the AI will receive the error and provide a 320 // friendly explanation to the user where possible. 321 console.error('Error in schedule_demo:', error); 322 throw new Error(error instanceof Error ? error.message : 'An unknown error occurred while opening the demo calendar'); 323 } 324 }, 325 326 // This tells the system this is a direct action that doesn't need confirmation 327 directAction: true, 328 329 // This flag tells the system to feed this information into the AI at all times. 330 isContext: false, 331 332 // You can remove this entry from the AI's knowledge base by setting this flag to true. 333 disabled: false, 334 }, 335 336 // Email contact action 337 { 338 // Each entry must have a unique ID. 339 id: 'get_in_contact', 340 341 // "action" represents an action the AI can perform. 342 type: "action", 343 344 // Name of the action. Should be short and descriptive. 345 name: "Get in Contact", 346 347 // Tags can be used to help the AI find the right knowledge item. 348 tags: "contact, email, get in touch, reach out", 349 350 // Describe to the AI what this action does. 351 content: `Send an email. The email should be professional. The email message should comprise of the benefits that ydangle apps can bring about to the user`, 352 353 // For actions, you can specify a set of parameters the AI will pass to your function. 354 parameters: [ 355 { 356 // The field name 357 name: "action", 358 359 // Field type. This can be 'string', 'boolean' or 'number'. 360 type: "string", 361 362 // The description lets you tell the AI what the field is for. 363 description: "Get in touch with ydangle apps team", 364 365 // This parameter is required 366 required: true, 367 368 // Available options for this parameter 369 options: ['email', 'contact', 'in touch'] 370 }, 371 { 372 // The field name 373 name: "subject", 374 375 // Field type 376 type: "string", 377 378 // The description lets you tell the AI what the field is for. 379 description: "Subject of the email", 380 381 // This parameter is optional 382 required: false 383 }, 384 { 385 // The field name 386 name: "body", 387 388 // Field type 389 type: "string", 390 391 // The description lets you tell the AI what the field is for. 392 description: "Message to send through on the email", 393 394 // This parameter is optional 395 required: false 396 } 397 ], 398 399 // This is the actual action the AI will perform. 400 action: async params => { 401 // if either an email subject or body are provided, use them; otherwise, use defaults 402 const emailSubject = params.subject || "ydangle apps Inquiry"; 403 let emailBody = "Hello,%0A%0AI'd like to get in touch with your team."; 404 405 if (params.body) { 406 const getWelcomingText = params.body.split(",")[0]+","; 407 emailBody = getWelcomingText + "%0A%0A" + params.body.split(",").slice(1).join(","); 408 } 409 410 window.location.href = `mailto:[email protected]?subject=${emailSubject}&body=${emailBody}`; 411 412 return `Inform the user that an email has been drafted. In case its doesn't work, display the link in markdown which will open the [email protected] with filled in details.`; 413 }, 414 415 // This tells the system this is a direct action that doesn't need confirmation 416 directAction: true, 417 418 // This flag tells the system to feed this information into the AI at all times. 419 isContext: false, 420 421 // You can remove this entry from the AI's knowledge base by setting this flag to true. 422 disabled: false, 423 } 424 425 ]) 426 427}) 428</script>
428<link rel="icon" href="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_logo_mark-01-32x32.png" sizes="32x32" /> 429<link rel="icon" href="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_logo_mark-01-192x192.png" sizes="192x192" /> 430<link rel="apple-touch-icon" href="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_logo_mark-01-180x180.png" /> 431<meta name="msapplication-TileImage" content="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_logo_mark-01-270x270.png" /> 432<style id="wp-custom-css"> 433.custom-backdrop-blur { 434 backdrop-filter: blur(2px); 435} 436/** Hide Neve branding footer text */ 437.hfg_footer .hfg-slot.left .cr { 438 display: none; 439} 440 441/** Prevent word breaking **/ 442p, h1, h2, h3, h4, h5, h6, li, span, div { 443 word-break: normal; 444 overflow-wrap: normal; 445 white-space: normal; 446} 447 448/** Response hero subtext **/ 449#hero-subtext { 450 font-size: 26px; 451 padding-left: var(--wp--preset--spacing--80); 452 padding-right: var(--wp--preset--spacing--80); 453} 454 455@media (max-width: 768px) { 456 #hero-subtext { 457 font-size: 18px; 458 padding-left: 20px; 459 padding-right: 20px; 460 } 461} 462 463@media (max-width: 480px) { 464 #hero-subtext { 465 font-size: 16px; 466 padding-left: 15px; 467 padding-right: 15px; 468 } 469} 470 471/** Responsive title **/ 472#hero-title { 473 font-size: clamp(22px, 5vw, 36px); 474} 475 476/* Base styles */ 477#section-title { 478 font-size: clamp(1.75rem, 2.5vw + 0.5rem, 3rem); /* Fluid between ~28px and ~48px */ 479 font-weight: 700; 480 margin-bottom: 1rem; 481} 482 483#section-p { 484 font-size: clamp(1rem, 1.2vw + 0.5rem, 1.25rem); /* Fluid between ~16px and ~20px */ 485 line-height: 1.7; 486 max-width: 800px; 487} 488 489/* Optional: Make sure text wraps properly on mobile */ 490@media (max-width: 600px) { 491 #section-title, 492 #section-p { 493 text-align: left; 494 word-break: break-word; 495 } 496} 497 498/** Feature hover **/ 499#section-hover { 500 border-radius: 8px; 501 transition: transform 0.3s ease; 502} 503 504#section-hover:hover { 505 transform: scale(1.03); /* Slight zoom effect */ 506} 507 508#section-hover:hover { 509 transform: scale(1.03); 510 box-shadow: 0 10px 20px rgba(0,0,0,0.1); 511} 512 513/** Accordian Styling **/ 514.wp-block-themeisle-blocks-accordion-item { 515 color: #333 !important; 516 border-radius: 8px; 517 margin-bottom: 10px; 518 overflow: hidden; 519 520 521} 522 523.wp-block-themeisle-blocks-accordion-item__title { 524 padding: 15px; 525 cursor: pointer; 526 font-weight: bold; 527} 528 529.wp-block-themeisle-blocks-accordion-item__content { 530 padding: 15px; 531 color: #333 !important; 532} 533 534</style> 535 536 <style id="core-block-supports-inline-css"> 537.wp-container-core-buttons-is-layout-7d812b4c{justify-content:center;}.wp-container-core-columns-is-layout-8f761849{flex-wrap:nowrap;}.wp-elements-1 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--neve-text-color);}.wp-container-core-columns-is-layout-c058ce8a{flex-wrap:nowrap;}.wp-elements-2 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--neve-text-color);}.wp-elements-3 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--neve-text-color);}.wp-elements-4 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--neve-text-color);}.wp-elements-5 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--neve-text-color);}.wp-container-core-buttons-is-layout-39697d9b{justify-content:flex-start;}.wp-elements-6 a:where(:not(.wp-element-button)){color:var(--wp--preset--color--nv-site-bg);}.wp-elements-7 a:where(:not(.wp-element-button)){color:#006f86;}.wp-container-core-social-links-is-layout-68a84f0a{flex-wrap:nowrap;justify-content:flex-end;}.wp-container-core-group-is-layout-8d397f8d{flex-wrap:nowrap;justify-content:center;} 538/*# sourceURL=core-block-supports-inline-css */ 539</style> 540 541</head> 542 543<body class="home wp-singular page-template-default page page-id-830 wp-custom-logo wp-theme-neve nv-blog-grid nv-sidebar-full-width nv-without-title menu_sidebar_slide_left" id="neve_body" > 544<div class="wrapper"> 545 546 <header class="header" > 547 <a class="neve-skip-link show-on-focus" href="#content" > 548 Skip to content </a> 549 <div id="header-grid" class="hfg_header site-header"> 550 551<nav class="header--row header-main hide-on-mobile hide-on-tablet layout-full-contained nv-navbar header--row" 552 data-row-id="main" data-show-on="desktop"> 553 554 <div 555 class="header--row-inner header-main-inner"> 556 <div class="container"> 557 <div 558 class="row row--wrapper" 559 data-section="hfg_header_layout_main" > 560 <div class="hfg-slot left"><div class="builder-item desktop-left"><div class="item--inner builder-item--logo" 561 data-section="title_tagline" 562 data-item-id="logo"> 563 564<div class="site-logo"> 565 <a class="brand" href="https://ydangleapps.com/" aria-label="ydangle apps" rel="home">
565<img width="200" height="47" src="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_full_logo-01-Large-1.png" class="neve-site-logo skip-lazy" alt="" data-variant="logo" decoding="async" /></a></div> 566 </div> 567 568</div></div><div class="hfg-slot right"><div class="builder-item has-nav"><div class="item--inner builder-item--primary-menu has_menu" 569 data-section="header_menu_primary" 570 data-item-id="primary-menu"> 571 <div class="nv-nav-wrap"> 572 <div role="navigation" class="nav-menu-primary style-border-bottom m-style" 573 aria-label="Primary Menu"> 574 575 <ul id="nv-primary-navigation-main" class="primary-menu-ul nav-ul menu-desktop"><li id="menu-item-831" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-830 current_page_item menu-item-831 nv-active"><div class="wrap"><a href="https://ydangleapps.com/" aria-current="page">Home</a></div></li> 576<li id="menu-item-871" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-871"><div class="wrap"><a href="https://ydangleapps.com/custom-development/">Custom Development</a></div></li> 577<li id="menu-item-874" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-874"><div class="wrap"><a href="https://ydangleapps.com/contact/">Contact Us</a></div></li> 578</ul> </div> 579</div> 580 581 </div> 582 583</div></div> </div> 584 </div> 585 </div> 586</nav> 587 588 589<nav class="header--row header-main hide-on-desktop layout-full-contained nv-navbar header--row" 590 data-row-id="main" data-show-on="mobile"> 591 592 <div 593 class="header--row-inner header-main-inner"> 594 <div class="container"> 595 <div 596 class="row row--wrapper" 597 data-section="hfg_header_layout_main" > 598 <div class="hfg-slot left"><div class="builder-item tablet-left mobile-left"><div class="item--inner builder-item--logo" 599 data-section="title_tagline" 600 data-item-id="logo"> 601 602<div class="site-logo"> 603 <a class="brand" href="https://ydangleapps.com/" aria-label="ydangle apps" rel="home"><img width="200" height="47" src="https://ydangleapps.com/wp-content/uploads/2024/07/cropped-ydangle_apps_full_logo-01-Large-1.png" class="neve-site-logo skip-lazy" alt="" data-variant="logo" decoding="async" /></a></div> 604 </div> 605 606</div></div><div class="hfg-slot right"><div class="builder-item tablet-left mobile-left"><div class="item--inner builder-item--nav-icon" 607 data-section="header_menu_icon" 608 data-item-id="nav-icon"> 609 <div class="menu-mobile-toggle item-button navbar-toggle-wrapper"> 610 <button type="button" class=" navbar-toggle" 611 value="Navigation Menu" 612 aria-label="Navigation Menu " 613 aria-expanded="false" onclick="if('undefined' !== typeof toggleAriaClick ) { toggleAriaClick() }"> 614 <span class="bars"> 615 <span class="icon-bar"></span> 616 <span class="icon-bar"></span> 617 <span class="icon-bar"></span> 618 </span> 619 <span class="screen-reader-text">Navigation Menu</span> 620 </button> 621</div> <!--.navbar-toggle-wrapper--> 622 623 624 </div> 625 626</div></div> </div> 627 </div> 628 </div> 629</nav> 630 631<div 632 id="header-menu-sidebar" class="header-menu-sidebar tcb menu-sidebar-panel slide_left hfg-pe" 633 data-row-id="sidebar"> 634 <div id="header-menu-sidebar-bg" class="header-menu-sidebar-bg"> 635 <div class="close-sidebar-panel navbar-toggle-wrapper"> 636 <button type="button" class="hamburger is-active navbar-toggle active" value="Navigation Menu" 637 aria-label="Navigation Menu " 638 aria-expanded="false" onclick="if('undefined' !== typeof toggleAriaClick ) { toggleAriaClick() }"> 639 <span class="bars"> 640 <span class="icon-bar"></span> 641 <span class="icon-bar"></span> 642 <span class="icon-bar"></span> 643 </span> 644 <span class="screen-reader-text"> 645 Navigation Menu </span> 646 </button> 647 </div> 648 <div id="header-menu-sidebar-inner" class="header-menu-sidebar-inner tcb "> 649 <div class="builder-item has-nav"><div class="item--inner builder-item--primary-menu has_menu" 650 data-section="header_menu_primary" 651 data-item-id="primary-menu"> 652 <div class="nv-nav-wrap"> 653 <div role="navigation" class="nav-menu-primary style-border-bottom m-style" 654 aria-label="Primary Menu"> 655 656 <ul id="nv-primary-navigation-sidebar" class="primary-menu-ul nav-ul menu-mobile"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-830 current_page_item menu-item-83
6561 nv-active"><div class="wrap"><a href="https://ydangleapps.com/" aria-current="page">Home</a></div></li> 657<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-871"><div class="wrap"><a href="https://ydangleapps.com/custom-development/">Custom Development</a></div></li> 658<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-874"><div class="wrap"><a href="https://ydangleapps.com/contact/">Contact Us</a></div></li> 659</ul> </div> 660</div> 661 662 </div> 663 664</div> </div> 665 </div> 666</div> 667<div class="header-menu-sidebar-overlay hfg-ov hfg-pe" onclick="if('undefined' !== typeof toggleAriaClick ) { toggleAriaClick() }"></div> 668</div> 669 </header> 670 671 <style>.nav-ul li:focus-within .wrap.active + .sub-menu { opacity: 1; visibility: visible; }.nav-ul li.neve-mega-menu:focus-within .wrap.active + .sub-menu { display: grid; }.nav-ul li > .wrap { display: flex; align-items: center; position: relative; padding: 0 4px; }.nav-ul:not(.menu-mobile):not(.neve-mega-menu) > li > .wrap > a { padding-top: 1px }</style> 672 673 674 <main id="content" class="neve-main"> 675 676<div class=" container-fluid single-page-container"> 677 <div class="row"> 678 <div class="nv-single-page-wrap col"> 679 <div class="nv-content-wrap entry-content"> 680<div class="wp-block-cover alignfull is-light" style="min-height:700px;aspect-ratio:unset;"><img fetchpriority="high" decoding="async" width="2560" height="768" class="wp-block-cover__image-background wp-image-1113" alt="" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/ydangle-apps-website-hero-image-svg.svg" data-object-fit="cover"/><span aria-hidden="true" class="wp-block-cover__background has-background-dim-0 has-background-dim" style="background-color:#a59787"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 681<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 682 683 684 685<h2 class="wp-block-heading has-text-align-center custom-backdrop-blur has-text-color has-background" style="color:#121212;background-color:#ededed78"><strong>AI-Powered Solutions.</strong><br>Built Differently.</h2> 686 687 688 689<p class="has-text-align-center custom-backdrop-blur has-text-color has-background wp-block-paragraph" id="hero-subtext" style="color:#121212;background-color:#ededed78"><strong>We design, build, and deploy intelligent applications using our own<br>AI platform â and craft custom AI solutions for forward-thinking teams.</strong></p> 690 691 692 693<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex"> 694<div class="wp-block-button is-style-default"><a class="wp-block-button__link has-nv-light-bg-color has-text-color has-background has-link-color wp-element-button" href="https://calendar.google.com/calendar/u/0/appointments/schedules/AcZssZ3r7dr26o0yxepWTT23RPDb7FaK07CPfVl7mHC00ds9SRo3L_J0clqrYHegBYzRkPngqZhzM_PZ?gv=true" style="border-radius:3px;background-color:#006f86">Schedule a Meeting</a></div> 695</div> 696 697 698 699<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 700</div></div> 701 702 703 704<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 705 706 707 708<h2 class="wp-block-heading has-text-align-center">WHAT WE OFFER</h2> 709 710 711 712<div style="height:35px" aria-hidden="true" class="wp-block-spacer"></div> 713 714 715 716<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"> 717<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)" id="section-hover"><div class="wp-block-image icon-style is-style-rounded"> 718<figure class="aligncenter size-full is-resized"><img decoding="async" width="1002" height="1002" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Frame-5.png" alt="" class="wp-image-881" style="width:120px" title="" srcset="https://ydangleapps.com/wp-content/uploads/2025/06/Frame-5.png 1002w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-5-300x300.png 300w, https://ydangleapps.com/w
718p-content/uploads/2025/06/Frame-5-150x150.png 150w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-5-768x768.png 768w" sizes="(max-width: 1002px) 100vw, 1002px" /></figure> 719</div> 720 721 722<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 723 724 725 726<h3 id="feature-title" class="wp-block-heading has-text-align-center has-neve-text-color-color has-text-color"><strong>AI IMPLEMENTATIONS</strong></h3> 727 728 729 730<p class="has-text-align-center wp-block-paragraph">We build scalable, AI-native products â from concept to launch â using our own AI platform or custom stacks.</p> 731 732 733 734<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 735</div> 736 737 738 739<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)" id="section-hover"><div class="wp-block-image icon-style is-style-rounded"> 740<figure class="aligncenter size-full is-resized"><img decoding="async" width="1002" height="1002" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Frame-6.png" alt="" class="wp-image-882" style="width:120px" srcset="https://ydangleapps.com/wp-content/uploads/2025/06/Frame-6.png 1002w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-6-300x300.png 300w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-6-150x150.png 150w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-6-768x768.png 768w" sizes="(max-width: 1002px) 100vw, 1002px" /></figure> 741</div> 742 743 744<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 745 746 747 748<h3 class="wp-block-heading has-text-align-center has-neve-text-color-color has-text-color">FULLSTACK DEVELOPMENT</h3> 749 750 751 752<p class="has-text-align-center wp-block-paragraph">Web, mobile, and backend systems â solid foundations for smart applications, with or without AI</p> 753 754 755 756<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 757</div> 758 759 760 761<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="padding-right:var(--wp--preset--spacing--60);padding-left:var(--wp--preset--spacing--60)" id="section-hover"><div class="wp-block-image icon-style is-style-rounded"> 762<figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="1002" height="1002" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Frame-4.png" alt="" class="wp-image-883" style="width:120px" srcset="https://ydangleapps.com/wp-content/uploads/2025/06/Frame-4.png 1002w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-4-300x300.png 300w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-4-150x150.png 150w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-4-768x768.png 768w" sizes="auto, (max-width: 1002px) 100vw, 1002px" /></figure> 763</div> 764 765 766<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 767 768 769 770<h3 class="wp-block-heading has-text-align-center has-neve-text-color-color has-text-color"><strong>IMMERSIVE 3D SPACES</strong></h3> 771 772 773 774<p class="has-text-align-center wp-block-paragraph">We create interactive 3D websites, virtual spaces, and metaverse-ready environments using MetaPress, Vatom Spaces, and custom 3D studio work.</p> 775 776 777 778<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 779</div> 780</div> 781 782 783 784<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 785 786 787 788<div class="wp-block-cover alignfull" style="min-height:600px;aspect-ratio:unset;"><span aria-hidden="true" class="wp-block-cover__background has-nv-light-bg-background-color has-background-dim-100 has-background-dim"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 789<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"> 790<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 791 792 793 794<div class="wp-block-columns are-vertically-aligned-center has-medium-font-size is-layout-flex wp-container-core-columns-is-layout-c058ce8a wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--70);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--70)"> 795<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 796<figure class="wp-block-image size-full has-custom-border"><img loading="lazy" decoding="async" width="893" height="851" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Screenshot-2025-0
7965-27-170927.png" alt="" class="wp-image-884" style="border-radius:20px" srcset="https://ydangleapps.com/wp-content/uploads/2025/06/Screenshot-2025-05-27-170927.png 893w, https://ydangleapps.com/wp-content/uploads/2025/06/Screenshot-2025-05-27-170927-300x286.png 300w, https://ydangleapps.com/wp-content/uploads/2025/06/Screenshot-2025-05-27-170927-768x732.png 768w" sizes="auto, (max-width: 893px) 100vw, 893px" /></figure> 797</div> 798 799 800 801<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"></div> 802 803 804 805<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 806<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 807 808 809 810<h2 class="wp-block-heading has-text-align-left has-neve-text-color-color has-text-color" id="section-title">CUSTOM AI IMPLEMENTATIONS</h2> 811 812 813 814<p class="has-neve-text-color-color has-text-color has-link-color wp-elements-1 wp-block-paragraph" id="section-p">We specialize in creating smarter, more intuitive digital experiences by harnessing the power of AI. Our core product, <strong><a href="https://intelliweave.ai" data-type="link" data-id="https://intelliweave.ai">IntelliWeave AI</a></strong>, is a robust platform designed to simplify AI integration across web, mobile, and desktop applications. It offers a flexible, secure, and scalable foundation for managing multiple AI models, customizing interactions, automating knowledge bases, and tracking user<br>conversations – all with minimal setup and full support.<br><br>We use IntelliWeave to elevate our clientsâ products with intelligent features tailored to their needs. Whether itâs enabling interactive AI guided navigation in 3D environments like <strong>MetaPress</strong>, or streamlining HR platforms with automated inquiries and onboarding support, IntelliWeave helps us deliver enhanced usability and smarter workflows. For businesses that value control over their data and AI models, IntelliWeave provides the perfect balance of customization and reliability â helping turn everyday applications into powerful, AI-driven tools.</p> 815</div> 816</div> 817 818 819 820<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div> 821</div></div> 822</div></div> 823 824 825 826<div class="wp-block-cover alignfull" style="min-height:600px;aspect-ratio:unset;"><span aria-hidden="true" class="wp-block-cover__background has-nv-site-bg-background-color has-background-dim-100 has-background-dim"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 827<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"> 828<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 829 830 831 832<div class="wp-block-columns are-vertically-aligned-center has-medium-font-size is-layout-flex wp-container-core-columns-is-layout-c058ce8a wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--70);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--70)"> 833<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 834<h2 class="wp-block-heading has-text-align-left has-neve-text-color-color has-text-color" id="section-title">FULLSTACK APPLICATION DEVELOPMENT</h2> 835 836 837 838<p class="has-neve-text-color-color has-text-color has-link-color wp-elements-2 wp-block-paragraph" id="section-p">Our custom full-stack development services are designed to turn bold ideas into powerful, scalable digital solutions. Whether youâre a startup looking to launch fast or an enterprise in need of a robust system, our team of expert developers builds tailor-made apps that perform seamlessly across mobile and web. From intuitive front-end interfaces to secure, high-performance backends, we cover every layer of your tech stack -delivering clean code, rapid deployment, and future-ready architecture. We donât just build apps â we craft digital experiences that drive growth, engage users, and give your brand a competitive edge. Letâs build something remarkable together.</p> 839 840 841 842<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div> 843</div> 844 845 846 847<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"></div> 848 849 850 851<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 852<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="959" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Frame-7-1024x959.png" alt="" class="wp-image-885" srcset="https://ydangleapps.com/w
852p-content/uploads/2025/06/Frame-7-1024x959.png 1024w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-7-300x281.png 300w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-7-768x719.png 768w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-7-1536x1439.png 1536w, https://ydangleapps.com/wp-content/uploads/2025/06/Frame-7-2048x1918.png 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure> 853</div> 854</div> 855 856 857 858<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div> 859</div></div> 860</div></div> 861 862 863 864<div class="wp-block-cover alignfull" style="min-height:600px;aspect-ratio:unset;"><span aria-hidden="true" class="wp-block-cover__background has-nv-light-bg-background-color has-background-dim-100 has-background-dim"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 865<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"> 866<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 867 868 869 870<div class="wp-block-columns has-medium-font-size is-layout-flex wp-container-core-columns-is-layout-c058ce8a wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--70);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--70)"> 871<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 872<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="1024" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2024/07/PropertyImage-1024x1024.webp" alt="" class="wp-image-786" srcset="https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage-1024x1024.webp 1024w, https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage-300x300.webp 300w, https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage-150x150.webp 150w, https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage-768x768.webp 768w, https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage-1536x1536.webp 1536w, https://ydangleapps.com/wp-content/uploads/2024/07/PropertyImage.webp 2048w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure> 873</div> 874 875 876 877<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"></div> 878 879 880 881<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 882<div style="height:20px" aria-hidden="true" class="wp-block-spacer"></div> 883 884 885 886<h2 class="wp-block-heading has-text-align-left has-neve-text-color-color has-text-color" id="section-title">IMMERSIVE 3D SPACES</h2> 887 888 889 890<p class="has-neve-text-color-color has-text-color has-link-color wp-elements-3 wp-block-paragraph" id="section-p"><strong>MetaPress</strong> is a powerful platform that turns traditional websites into fully immersive 3D environments, enabling businesses to create more interactive and engaging digital experiences. Whether itâs a virtual<br>storefront, an online art gallery, a real estate tour, a classroom, or a branded event space, MetaPress offers a flexible foundation for building rich, spatial experiences that captivate users.</p> 891 892 893 894<p class="has-neve-text-color-color has-text-color has-link-color wp-elements-4 wp-block-paragraph" id="section-p">With built-in support for spatial audio, in-world chat, live streaming, VR, and interactive media, MetaPress allows users to explore, learn, shop, or engage in real timeâjust as they would in a physical space. The<br>platform integrates smoothly with tools like WordPress and WooCommerce for seamless content management and e-commerce functionality, while its plugin-based architecture and developer portal make it easy to extend and customize for specific use cases.</p> 895 896 897 898<p class="has-neve-text-color-color has-text-color has-link-color wp-elements-5 wp-block-paragraph" id="section-p">Whether youâre enhancing customer engagement, delivering virtual training, or showcasing products in a unique way, MetaPress provides the tools to build meaningful, immersive web experiences that go far<br>beyond the limitations of flat, static websites.</p> 899 900 901 902<div class="wp-block-buttons is-horizontal is-content-justification-left is-layout-flex wp-container-core-buttons-is-layout-39697d9b wp-block-buttons-is-layout-flex"> 903<div class="wp-block-button is-style-default"><a class="wp-block-button__link wp-element-button" href="https://metapress.dev" style="border-radius:3px">Visit World</a></div> 904</div> 905</div> 906</div> 907 908 909 910<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div> 911</div></div> 912</div></div> 913 914 915 916<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div> 917 918 919 920<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex"> 921<div class="wp-block-column has-medium-font-size is-layout-flow wp-block-column-is-layout-flow" style="padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--70);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--70);flex-basis:100%"> 922<h2 id="section-title" class="wp-block-heading" style="font-size:34px">Clients</h2> 923 924 925 926<p class="wp-block-paragraph">We have served a wide selection of customers across a wide range of industries such as energy, medical, human resources, web3 and metaverse. Here are some of the clients we have worked with:<br><br><a href="https://pathcare.co.za" data-type="link" data-id="https://pathcare.co.za">Pathcare</a> | <a href="https://theenergycompany.co,za">The Engery </a><a href="https://theenergycompany.co.za/">Company</a> | <a href="https://www.blockv.io/">BlockV</a> | <a href="https://vatomlabs.com">Vatom Labs </a>| <a href="https://vatom.com">Vatom</a> | <a href="https://tenactityworks.com">Tenactiy Works</a> | <a href="https://www.everflo.co.za/">Everflo</a> | <a href="https://gometroapp.com/">GoMetro</a> | <a href="https://www.rolonext.com/">Rolonext</a> | <a href="https://www.trefoil.co.za/">Trefoil</a> | <a href="https://www.rei.co.za/">Real Estate Investor</a></p> 927</div> 928</div> 929 930 931 932<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div> 933 934 935 936<div class="wp-block-cover alignfull" style="min-height:851px;aspect-ratio:unset;"><span aria-hidden="true" class="wp-block-cover__background has-background-dim-100 has-background-dim" style="background-color:#252d3a"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 937<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"> 938<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div> 939 940 941 942<div class="wp-block-columns has-medium-font-size is-layout-flex wp-container-core-columns-is-layout-c058ce8a wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--70);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--70)"> 943<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"><div class="wp-block-image"> 944<figure class="alignright size-full is-resized"><img loading="lazy" decoding="async" width="1085" height="1085" src="https://mptest1.s2-tastewp.com/wp-content/uploads/2025/06/Group-3.png" alt="" class="wp-image-887" style="width:488px;
944height:auto" srcset="https://ydangleapps.com/wp-content/uploads/2025/06/Group-3.png 1085w, https://ydangleapps.com/wp-content/uploads/2025/06/Group-3-300x300.png 300w, https://ydangleapps.com/wp-content/uploads/2025/06/Group-3-1024x1024.png 1024w, https://ydangleapps.com/wp-content/uploads/2025/06/Group-3-150x150.png 150w, https://ydangleapps.com/wp-content/uploads/2025/06/Group-3-768x768.png 768w" sizes="auto, (max-width: 1085px) 100vw, 1085px" /></figure> 945</div></div> 946 947 948 949<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:40px"></div> 950 951 952 953<div class="wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:50%"> 954<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div> 955 956 957 958<h2 class="wp-block-heading has-text-align-left has-nv-light-bg-color has-text-color">IntelliWeave AI</h2> 959 960 961 962<p class="has-text-align-left has-nv-site-bg-color has-text-color has-link-color has-medium-font-size wp-elements-6 wp-block-paragraph" style="padding-right:0;padding-left:0">IntelliWeave AI is your go-to platform for integrating and managing AI in apps. Itâs flexible, secure, and scalable, supporting multiple AI models. Customize interactions, automate knowledge bases, and track conversations effortlessly. With easy installation and full support, IntelliWeave AI ensures seamless AI adoption for websites, mobile apps, and desktop software. Perfect for businesses wanting to maintain control over their data and AI models.</p> 963 964 965 966<div class="wp-block-buttons is-horizontal is-content-justification-left is-layout-flex wp-container-core-buttons-is-layout-39697d9b wp-block-buttons-is-layout-flex"> 967<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="http://intelliweave.ai">CHECK IT OUT</a></div> 968</div> 969</div> 970</div> 971 972 973 974<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div> 975</div></div> 976</div></div> 977 978 979 980<div class="wp-block-cover alignfull" style="min-height:500px;aspect-ratio:unset;"><span aria-hidden="true" class="wp-block-cover__background has-nv-dark-bg-background-color has-background-dim-100 has-background-dim"></span><div class="wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow"> 981<h2 class="wp-block-heading has-text-align-center has-nv-site-bg-color has-text-color">Need AI powered application development?</h2> 982 983 984 985<p class="has-text-align-center has-text-color has-link-color wp-elements-7 wp-block-paragraph" style="color:#006f86">Don’t hesitate.</p> 986 987 988 989<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex"> 990<div class="wp-block-button is-style-default"><a class="wp-block-button__link has-background wp-element-button" href="https://calendar.google.com/calendar/u/0/appointments/schedules/AcZssZ3r7dr26o0yxepWTT23RPDb7FaK07CPfVl7mHC00ds9SRo3L_J0clqrYHegBYzRkPngqZhzM_PZ?gv=true" style="border-radius:3px;background-color:#006f86">Schedule an appointment</a></div> 991</div> 992</div></div> 993 994 995 996<div class="wp-block-group alignfull has-background-color has-nv-dark-bg-background-color has-background" style="border-style:none;border-width:0px;margin-top:0;margin-bottom:0;padding-top:0;padding-right:var(--wp--preset--spacing--40);padding-bottom:0;padding-left:var(--wp--preset--spacing--40)"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow"> 997<div class="wp-block-group alignfull has-large-font-size is-content-justification-center is-nowrap is-layout-flex wp-container-core-group-is-layout-8d397f8d wp-block-group-is-layout-flex"> 998<ul class="wp-block-social-links has-small-icon-size is-style-default is-content-justification-right is-nowrap is-layout-flex wp-container-core-social-links-is-layout-68a84f0a wp-block-social-links-is-layout-flex"><li class="wp-social-link wp-social-link-x wp-block-social-link"><a href="https://x.com/ydangle_apps" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false">
998<path d="M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z" /></svg><span class="wp-block-social-link-label screen-reader-text">X</span></a></li> 999 1000<li class="wp-social-link wp-social-link-linkedin wp-block-social-link"><a href="https://za.linkedin.com/company/ydangle-apps-pty-ltd" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z"></path></svg><span class="wp-block-social-link-label screen-reader-text">LinkedIn</span></a></li> 1001 1002<li class="wp-social-link wp-social-link-youtube wp-block-social-link"><a href="https://www.youtube.com/channel/UCgQpO3r_xcg3PVka-KvEHUw" class="wp-block-social-link-anchor"><svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z"></path></svg><span class="wp-block-social-link-label screen-reader-text">YouTube</span></a></li></ul> 1003</div> 1004</div></div> 1005</div> </div> 1006 </div> 1007</div> 1008 1009</main><!--/.neve-main--> 1010 1011<button tabindex="0" id="scroll-to-top" class="scroll-to-top scroll-to-top-right scroll-show-mobile icon" aria-label="Scroll To Top"><svg class="scroll-to-top-icon" aria-hidden="true" role="img" xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15"><rect width="15" height="15" fill="none"/><path fill="currentColor" d="M2,8.48l-.65-.65a.71.71,0,0,1,0-1L7,1.14a.72.72,0,0,1,1,0l5.69,5.7a.71.71,0,0,1,0,1L13,8.48a.71.71,0,0,1-1,0L8.67,4.94v8.42a.7.7,0,0,1-.7.7H7a.7.7,0,0,1-.7-.7V4.94L3,8.47a.7.7,0,0,1-1,0Z"/></svg></button><footer class="site-footer" id="site-footer" > 1012 <div class="hfg_footer"> 1013 <div class="footer--row footer-bottom hide-on-mobile hide-on-tablet layout-fullwidth" 1014 id="cb-row--footer-desktop-bottom" 1015 data-row-id="bottom" data-show-on="desktop"> 1016 <div 1017 class="footer--row-inner footer-bottom-inner footer-content-wrap"> 1018 <div class="container"> 1019 <div 1020 class="hfg-grid nv-footer-content hfg-grid-bottom row--wrapper row " 1021 data-section="hfg_footer_layout_bottom" > 1022 <div class="hfg-slot left"><div class="builder-item desktop-left tablet-left mobile-left"><div class="item--inner builder-item--footer-menu has_menu" 1023 data-section="footer_menu_primary" 1024 data-item-id="footer-menu"> 1025 <div class="component-wrap"> 1026 <div role="navigation" class="nav-menu-footer" 1027 aria-label="Footer Menu"> 1028 1029 <ul id="footer-menu" class="footer-menu nav-ul"><li id="menu-item-1144" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-830 current_page_item menu-item-1144"><div class="wrap"><a href="https://ydangleapps.com/" aria-current="page">Home</a></div></li> 1030<li id="menu-item-1146" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1146"><div class="wrap"><a href="https://ydangleapps.com/contact/">Contact Us</a></div></li> 1031<li id="menu-item-1145" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1145"><div class="wrap"><a href="https://ydangleapps.com/terms-conditions/">Terms & Conditions</a></div></li> 1032<li id="menu-item-1149" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1149"><div class="wrap"><a href="https://ydangleapps.com/privacy-policy/">Privacy Policy</a></div></li> 1033</ul> </div> 1034</div> 1035 1036 </div> 1037 1038</div><div class="builder-item cr"><div class="item--inner"><div class="component-wrap"><div><p><a href="https://themeisle.com/themes/neve/" rel="nofollow">Neve</a> | Powered by <a href="https://wordpress.org" rel="nofollow">WordPress</a></p></div></div></div></div></div> </div> 1039 </div> 1040 </div> 1041</div> 1042 1043<div class="footer--row footer-bottom hide-on-desktop layout-fullwidth" 1044 id="cb-row--footer-mobile-bottom" 1045 data-row-id="bottom" data-show-on="mobile"> 1046 <div 1047 class="footer--row-inner footer-bottom-inner footer-content-wrap"> 1048 <div class="container"> 1049 <div 1050 class="hfg-grid nv-footer-content hfg-grid-bottom row--wrapper row " 1051 data-section="hfg_footer_layout_bottom" > 1052 <div class="hfg-slot left"><div class="builder-item desktop-left tablet-left mobile-left"><div class="item--inner builder-item--footer-three-widgets" 1053 data-section="neve_sidebar-widgets-footer-three-widgets" 1054 data-item-id="footer-three-widgets"> 1055 <div class="widget-area"> 1056 <div id="nav_menu-3" class="widget widget_nav_menu"><div class="menu-footer-menu-container"><ul id="menu-footer-menu" class="menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home current-menu-item page_item page-item-830 current_page_item menu-item-1144"><a href="https://ydangleapps.com/" aria-current="page">Home</a></li> 1057<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1146"><a href="https://ydangleapps.com/contact/">Contact Us</a></li> 1058<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1145"><a href="https://ydangleapps.com/terms-conditions/">Terms & Conditions</a></li> 1059<li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1149"><a href="https://ydangleapps.com/privacy-policy/">Privacy Policy</a></li> 1060</ul></div></div> </div> 1061 </div> 1062 1063</div><div class="builder-item cr"><div class="item--inner"><div class="component-wrap"><div><p><a href="https://themeisle.com/themes/neve/" rel="nofollow">Neve</a> | Powered by <a href="https://wordpress.org" rel="nofollow">WordPress</a></p></div></div></div></div></div> </div> 1064 </div> 1065 </div> 1066</div> 1067 1068 </div> 1069</footer> 1070 1071</div><!--/.wrapper-->
1072<script type="speculationrules"> 1073{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/neve/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1074</script>
vendor: 1 bytes, line 1074
1074
1075<script>window.intelliweave = { apiKey: '018dd107-2fe9-460a-bf80-ec08bd222101' };window.webWeaver = window.intelliweave;</script>
1075<script src='https://ydangleapps.com/wp-content/plugins/webweaver/intelliweave/script-tag.js?v=2.2.93' type='module'></script>
1075<script>document.addEventListener('DOMContentLoaded', function () { 1076 document.querySelectorAll('a[href^="mailto:"]').forEach(function(link) { 1077 link.addEventListener('click', function () { 1078 const email = link.getAttribute('href').replace('mailto:', ''); 1079 navigator.clipboard.writeText(email) 1080 .then(() => alert('Email copied to clipboard!')) 1081 .catch(err => console.error('Copy failed:', err)); 1082 // Email client still opens 1083 }); 1084 }); 1085 });</script>
1085<script id="neve-script-js-extra"> 1086var NeveProperties = {"ajaxurl":"https://ydangleapps.com/wp-admin/admin-ajax.php","nonce":"6e1f1635eb","isRTL":"","isCustomize":""}; 1087//# sourceURL=neve-script-js-extra 1088</script>
vendor: 1 bytes, line 1088
1088
1089<script id="neve-script-js" src="https://ydangleapps.com/wp-content/themes/neve/assets/js/build/modern/frontend.js?ver=4.2.11" async></script>
vendor: 1 bytes, line 1089
1089
1090<script id="neve-script-js-after"> 1091 ;(function () { 1092 var htmlEl = document.documentElement; 1093 var theme = htmlEl.getAttribute('data-neve-theme') || 'light'; 1094 var variants = {"logo":{"light":{"src":"https:\/\/ydangleapps.com\/wp-content\/uploads\/2024\/07\/cropped-ydangle_apps_full_logo-01-Large-1.png","srcset":false,"sizes":"(max-width: 200px) 100vw, 200px"},"dark":{"src":"https:\/\/ydangleapps.com\/wp-content\/uploads\/2024\/07\/cropped-ydangle_apps_full_logo-01-Large-1.png","srcset":false,"sizes":"(max-width: 200px) 100vw, 200px"},"same":true}}; 1095 1096 function setCurrentTheme( theme ) { 1097 var pictures = document.getElementsByClassName( 'neve-site-logo' ); 1098 for(var i = 0; i<pictures.length; i++) { 1099 var picture = pictures.item(i); 1100 if( ! picture ) { 1101 continue; 1102 }; 1103 var fileExt = picture.src.slice((Math.max(0, picture.src.lastIndexOf(".")) || Infinity) + 1); 1104 if ( fileExt === 'svg' ) { 1105 picture.removeAttribute('width'); 1106 picture.removeAttribute('height'); 1107 picture.style = 'width: var(--maxwidth)'; 1108 } 1109 var compId = picture.getAttribute('data-variant'); 1110 if ( compId && variants[compId] ) { 1111 var isConditional = variants[compId]['same']; 1112 if ( theme === 'light' || isConditional || variants[compId]['dark']['src'] === false ) { 1113 picture.src = variants[compId]['light']['src']; 1114 picture.srcset = variants[compId]['light']['srcset'] || ''; 1115 picture.sizes = variants[compId]['light']['sizes']; 1116 continue; 1117 }; 1118 picture.src = variants[compId]['dark']['src']; 1119 picture.srcset = variants[compId]['dark']['srcset'] || ''; 1120 picture.sizes = variants[compId]['dark']['sizes']; 1121 }; 1122 }; 1123 }; 1124 1125 var observer = new MutationObserver(function(mutations) { 1126 mutations.forEach(function(mutation) { 1127 if (mutation.type == 'attributes' && mutation.attributeName === 'data-neve-theme') { 1128 theme = htmlEl.getAttribute('data-neve-theme'); 1129 setCurrentTheme(theme); 1130 }; 1131 }); 1132 }); 1133 1134 observer.observe(htmlEl, { 1135 attributes: true, 1136 attributeFilter: ['data-neve-theme'] 1137 }); 1138 })(); 1139function toggleAriaClick() { function toggleAriaExpanded(toggle = 'true') { document.querySelectorAll('button.navbar-toggle').forEach(function(el) { if ( el.classList.contains('caret-wrap') ) { return; } el.setAttribute('aria-expanded', 'true' === el.getAttribute('aria-expanded') ? 'false' : toggle); }); } toggleAriaExpanded(); if ( document.body.hasAttribute('data-ftrap-listener') ) { return; } document.body.setAttribute('data-ftrap-listener', 'true'); document.addEventListener('ftrap-end', function() { toggleAriaExpanded('false'); }); } 1140//# sourceURL=neve-script-js-after 1141</script>
vendor: 1 bytes, line 1141
1141
1142<script id="neve-scroll-to-top-js-extra"> 1143var neveScrollOffset = {"offset":"0"}; 1144//# sourceURL=neve-scroll-to-top-js-extra 1145</script>
vendor: 1 bytes, line 1145
1145
1146<script id="neve-scroll-to-top-js" src="https://ydangleapps.com/wp-content/themes/neve/assets/js/build/modern/scroll-to-top.js?ver=4.2.11" async></script>
vendor: 1 bytes, line 1146
1146
1147<script id="jetpack-stats-js-before"> 1148_stq = window._stq || []; 1149_stq.push([ "view", {"v":"ext","blog":"143924941","post":"830","tz":"0","srv":"ydangleapps.com","j":"1:16.0.2"} ]); 1150_stq.push([ "clickTrackerInit", "143924941", "830" ]); 1151//# sourceURL=jetpack-stats-js-before 1152</script>
vendor: 1 bytes, line 1152
1152
1153<script data-wp-strategy="defer" defer fetchpriority="low" id="jetpack-stats-js" src="https://stats.wp.com/e-202639.js"></script>
vendor: 1 bytes, line 1153
1153
1154<script id="wp-emoji-settings" type="application/json"> 1155{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://ydangleapps.com/wp-includes/js/wp-emoji-release.min.js?ver=7.1.2"}} 1156</script>
vendor: 1 bytes, line 1156
1156
1157<script type="module"> 1158/*! This file is auto-generated */ 1159var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 1160//# sourceURL=https://ydangleapps.com/wp-includes/js/wp-emoji-loader.min.js 1161</script>
1161 1162</body> 1163 1164</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.