@import "https://fonts.googleapis.com/css2?family=Edu+NSW+ACT+Cursive:wght@400..700&display=swap";
html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
:root{--font-base:"Edu NSW ACT Cursive", sans-serif;--primary-color:#edf2f8;--secondary-color:#313bac;--black-color:#030303;--lightGray-color:#e4e4e4;--gray-color:#6b7688;--brown-color:#46364a;--white-color:#fff}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100%;overflow-x:clip}body{background-color:var(--primary-color);color:var(--black-color);font-family:var(--font-base)}.link{color:inherit;text-decoration:none}html body .water-button.water-button{--water-gradient:linear-gradient(to top, var(--water-fill,var(--secondary-color)) 50%, transparent 50%);border:2px solid var(--water-ink,var(--secondary-color));color:var(--water-ink,var(--secondary-color));background-color:#0000;background-image:var(--water-gradient);background-position:top;background-repeat:no-repeat;background-size:100% 200%;transition:background-position .45s cubic-bezier(.2,.75,.25,1),color .25s,border-color .25s,box-shadow .25s}html body .water-button.water-button:not(:disabled):hover{border:2px solid var(--water-ink,var(--secondary-color));color:var(--water-hover-ink,#fff);background-color:#0000;background-image:var(--water-gradient);background-position:bottom;background-size:100% 200%}html body .water-button.water-button:focus-visible{outline:3px solid var(--water-ink,var(--secondary-color));outline-offset:3px}html body .water-button.water-button:disabled{opacity:.55;cursor:not-allowed}html body .water-button.water-button:not(:disabled):hover>svg{color:currentColor}html body .app__work-hover a:focus-visible .water-button{outline:3px solid var(--water-ink,var(--secondary-color));outline-offset:3px}@media (prefers-reduced-motion:reduce){html body .water-button.water-button{transition:none}}.app{background-color:var(--primary-color);font-family:var(--font-base)}.app__whitebg{background-color:var(--white-color)}.app__primarybg{background-color:var(--primary-color)}.app__container{flex-direction:row;align-items:center;width:100%;min-width:0;min-height:100vh;display:flex}.app__flex{justify-content:center;align-items:center;display:flex}.app__wrapper{flex-direction:column;flex:1;width:100%;min-width:0;padding:4rem 2rem}@media screen and (max-width:450px){.app__wrapper{padding:4rem 1rem 2rem}}.copyright{flex-direction:column;justify-content:flex-end;align-items:flex-end;width:100%;padding:2rem 0 0;display:flex}.copyright p{text-transform:uppercase;color:var(--black-color)}.head-text{text-align:center;color:var(--black-color);text-transform:capitalize;padding-bottom:.6rem;font-size:2.75rem;font-weight:800;line-height:1.52!important}.head-text span{color:var(--secondary-color)}@media screen and (min-width:2000px){.head-text{font-size:4rem}}@media screen and (max-width:450px){.head-text{font-size:2rem}}.p-text{text-align:left;color:var(--gray-color);font-size:.8rem;line-height:1.5}@media screen and (min-width:2000px){.p-text{font-size:1.75rem}}.bold-text{color:var(--black-color);text-align:left;font-size:1rem;font-weight:800}@media screen and (min-width:2000px){.bold-text{font-size:2rem}}@media screen and (max-width:450px){.bold-text{font-size:.9rem}}.app__social{flex-direction:column;justify-content:flex-end;align-items:center;padding:1rem;display:flex}.app__social div{width:40px;height:40px;color:var(--gray-color);border:1px solid #6b76883d;border-radius:50%;justify-content:center;align-items:center;margin:.25rem 0;transition:color .2s,border-color .2s;display:flex}.app__social div svg{color:currentColor;width:16px;height:16px}.app__social div:hover{color:var(--secondary-color);border-color:#313bac59}@media screen and (min-width:2000px){.app__social div{width:70px;height:70px;margin:.5rem 0}.app__social div svg{width:30px;height:30px}}.app__social a:focus-visible{outline:2px solid var(--secondary-color);outline-offset:3px}.app__navigation{flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex}.app__navigation .app__navigation-dot{background-color:#cbcbcb;border-radius:50%;width:10px;height:10px;margin:.5rem;transition:background-color .2s ease-in-out}.app__navigation .app__navigation-dot:hover{background-color:var(--secondary-color)}@media screen and (min-width:2000px){.app__navigation .app__navigation-dot{width:20px;height:20px}}@media screen and (max-width:500px){.app__navigation,.app__social{display:none}.copyright{padding:2rem}}
.portfolio-chat{z-index:1200;flex-direction:column;align-items:flex-end;font-family:Arial,Helvetica,sans-serif;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.portfolio-chat button{cursor:pointer;font:inherit}.portfolio-chat button:disabled{cursor:default}.portfolio-chat__toggle{color:#fff;-webkit-backdrop-filter:blur(16px);background:linear-gradient(135deg,#313bacf0,#6244b1e6);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;min-width:108px;height:52px;padding:0 1rem;font-size:.9rem;font-weight:700;display:flex;box-shadow:0 10px 28px #313bac40,inset 0 1px #ffffff4d}.portfolio-chat__toggle:hover{box-shadow:0 14px 32px #313bac52}.portfolio-chat button:focus-visible{outline-offset:2px;outline:3px solid #f790da}.portfolio-chat textarea:focus-visible{outline-offset:0;outline:2px solid #6870d4}.portfolio-chat__toggle-icon{font-size:1.3rem}.portfolio-chat__toggle[aria-expanded=true]{min-width:52px;padding:0;font-size:1.8rem;font-weight:400}.portfolio-chat__panel{overscroll-behavior:contain;background:#edf2ff8c;border:0;border-radius:22px;flex-direction:column;width:min(390px,100vw - 2rem);height:min(560px,100dvh - 7rem);margin-bottom:.85rem;display:flex;overflow:hidden;box-shadow:0 20px 60px #18245c40}.portfolio-chat__header{color:#fff;background:linear-gradient(120deg,#28349dc7,#5843a3b3);border-bottom:1px solid #ffffff5c;justify-content:space-between;align-items:center;padding:1rem 1.1rem;display:flex}.portfolio-chat__header>div:first-child{flex-direction:column;gap:.2rem;display:flex}.portfolio-chat__header strong{font-size:1rem}.portfolio-chat__header span{opacity:.85;font-size:.75rem}.portfolio-chat__header-actions{align-items:center;gap:.4rem;display:flex}.portfolio-chat__header-actions button{color:#fff;background:0 0;border:0;border-radius:8px}.portfolio-chat__header-actions button:hover{background:#ffffff26}.portfolio-chat__clear{place-items:center;width:32px;height:32px;padding:0;display:grid}.portfolio-chat__clear svg{width:18px;height:18px}.portfolio-chat__close{width:32px;height:32px;line-height:1;font-size:1.6rem!important}.portfolio-chat__conversation{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-color:#47508959 #0000;scrollbar-width:thin;flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.portfolio-chat__welcome{color:#222a50;background:#ffffff80;border:1px solid #fffc;border-radius:14px;padding:.85rem;font-size:.88rem;line-height:1.5}.portfolio-chat__welcome p{margin-top:.2rem}.portfolio-chat__suggestions{flex-direction:column;align-items:flex-start;gap:.45rem;display:flex}.portfolio-chat__suggestions button{color:#313bac;text-align:left;background:#ffffff8c;border:1px solid #6970b94d;border-radius:12px;padding:.5rem .7rem;font-size:.8rem}.portfolio-chat__suggestions button:hover{background:#ffffffd9}.portfolio-chat__message{overflow-wrap:anywhere;border:1px solid #ffffffa3;border-radius:14px;max-width:90%;padding:.7rem 2.35rem .7rem .85rem;font-size:.85rem;line-height:1.5;position:relative;box-shadow:0 3px 12px #1f2a690f}.portfolio-chat__message--user{color:#fff;background:#313baceb;border-bottom-right-radius:4px;align-self:flex-end;padding-right:.85rem}.portfolio-chat__message--assistant{color:#252a45;background:#ffffffad;border-bottom-left-radius:4px;align-self:flex-start}.portfolio-chat__message p+p,.portfolio-chat__message p+ul,.portfolio-chat__message p+ol,.portfolio-chat__message ul+p,.portfolio-chat__message ol+p{margin-top:.55rem}.portfolio-chat__message ul,.portfolio-chat__message ol{padding-left:1.25rem}.portfolio-chat__message li+li{margin-top:.3rem}.portfolio-chat__message h1,.portfolio-chat__message h2,.portfolio-chat__message h3{margin:.45rem 0;font-size:1rem;line-height:1.35}.portfolio-chat__message a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.portfolio-chat__copy{width:24px;height:24px;color:inherit;opacity:0;vertical-align:middle;background:0 0;border:0;border-radius:6px;place-items:center;padding:3px;transition:opacity .15s,background-color .15s;display:inline-grid}.portfolio-chat__copy svg{width:16px;height:16px}.portfolio-chat__copy:hover{background:#313bac1f}.portfolio-chat__message--user .portfolio-chat__copy:hover{background:#ffffff2e}.portfolio-chat__message>.portfolio-chat__copy{position:absolute;top:.35rem;right:.35rem}.portfolio-chat__message:hover>.portfolio-chat__copy,.portfolio-chat__message:focus-within>.portfolio-chat__copy,.portfolio-chat__link:hover>.portfolio-chat__copy,.portfolio-chat__link:focus-within>.portfolio-chat__copy,.portfolio-chat__copy:focus-visible{opacity:1}.portfolio-chat__link{position:relative}.portfolio-chat__link>.portfolio-chat__copy{z-index:1;color:#313bac;background:#f4f6ff;position:absolute;bottom:100%;right:0;box-shadow:0 2px 8px #1f2a692e}.portfolio-chat__message code{background:#2734781a;border-radius:4px;padding:.08rem .28rem;font-size:.82em}.portfolio-chat__message pre{background:#2734781a;border-radius:8px;max-width:100%;margin:.5rem 0;padding:.65rem;overflow-x:auto}.portfolio-chat__message pre code{background:0 0;padding:0}.portfolio-chat__message blockquote{border-left:3px solid #313bac80;padding-left:.65rem}.portfolio-chat__message table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.portfolio-chat__message th,.portfolio-chat__message td{border:1px solid #313bac40;padding:.25rem .4rem}.portfolio-chat__project-gallery{background:#ffffff8c;border:1px solid #313bac1f;border-radius:12px;margin-top:.8rem;padding:.35rem}.portfolio-chat__project-image{background:#dce2f5b3;border-radius:9px;position:relative;overflow:hidden}.portfolio-chat__project-image>a{aspect-ratio:3/2;width:100%;display:block}.portfolio-chat__project-image img{object-fit:contain;width:100%;height:100%;display:block}.portfolio-chat__project-arrow{color:#313bac;background:#ffffffe0;border:0;border-radius:50%;place-items:center;width:32px;height:32px;padding:5px;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #1f2a692e}.portfolio-chat__project-arrow:hover{background:#fff}.portfolio-chat__project-arrow svg{width:18px;height:18px}.portfolio-chat__project-arrow--previous{left:.4rem}.portfolio-chat__project-arrow--next{right:.4rem}.portfolio-chat__project-caption{justify-content:space-between;align-items:center;gap:.5rem;padding:.45rem .3rem .1rem;font-size:.74rem;line-height:1.3;display:flex}.portfolio-chat__project-caption a{min-width:0}.portfolio-chat__project-caption span{color:#657091;flex:none}.portfolio-chat__project-description{color:#586078;padding:.15rem .3rem .25rem;font-size:.72rem}.portfolio-chat__thinking{color:#667092}.portfolio-chat__error{color:#a71d39;font-size:.78rem;line-height:1.4}.portfolio-chat__form{background:#ffffff4d;border-top:1px solid #fffc;align-items:flex-end;gap:.5rem;padding:.75rem .85rem .25rem;display:flex}.portfolio-chat__form textarea{resize:vertical;appearance:none;min-width:0;max-height:110px;font:inherit;color:#20263d;background:#ffffffb8;border:1px solid #7c84bd66;border-radius:11px;flex:1;padding:.65rem .75rem;font-size:.85rem;line-height:1.35}.portfolio-chat__form button{background:var(--secondary-color);color:#fff;border:0;border-radius:11px;flex:none;place-items:center;width:42px;height:42px;padding:0;display:grid}.portfolio-chat__form button svg{width:20px;height:20px;display:block}.portfolio-chat__form button:disabled{opacity:.45;cursor:default}.portfolio-chat__note{color:#586078;text-align:center;background:#ffffff4d;padding:.35rem .85rem .75rem;font-size:.68rem}.portfolio-chat__note a{color:var(--secondary-color)}.portfolio-chat__sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:600px){.portfolio-chat{left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom) + var(--chat-keyboard-offset,0px))}.portfolio-chat__panel{width:100%;height:min(600px,var(--chat-viewport-height,100dvh) - 5.75rem - env(safe-area-inset-bottom));border-radius:18px}.portfolio-chat__conversation{padding:.85rem}.portfolio-chat__header{padding:.85rem 1rem}.portfolio-chat__message{max-width:94%}.portfolio-chat__form{padding:.6rem .65rem .2rem}.portfolio-chat__form textarea{font-size:16px}.portfolio-chat__note{padding:.3rem .65rem .6rem}}@media (hover:none){.portfolio-chat__copy{opacity:1}}@media (prefers-reduced-motion:reduce){.portfolio-chat *{scroll-behavior:auto!important}}
