{@html data.Content.html}
@@ -152,8 +159,8 @@
min-height: 100svh;
overflow: hidden;
box-sizing: border-box;
- // background-color: var(--color-bg);
transform: translateY(100%);
+
@media screen and (min-width: 768px) {
transform: translateX(100%);
}
@@ -167,6 +174,7 @@
& a {
text-decoration: none;
+ color: var(--color-highlight);
}
}
.heromask {
@@ -196,10 +204,9 @@
z-index: 1;
color: var(--color-text);
- & :last-child {
+ & > :last-child {
margin-bottom: 100px;
}
-
@media screen and (min-width: 768px) {
margin-left: 40vw;
max-width: 60vw;
@@ -208,19 +215,14 @@
padding-right: calc(var(--spacing-outer) * 2.5);
}
}
- .work-content-text {
- @media screen and (min-width: 768px) {
- border-top: 1px solid var(--color-text);
- }
- }
h1 {
position: relative;
z-index: 1;
margin: 0;
+
@media screen and (min-width: 768px) {
padding: 0 0 1em 0;
}
-
& .name {
display: none;
}
@@ -237,6 +239,37 @@
}
}
}
+ .tags {
+ padding-bottom: .25em;
+ font-size: 1em;
+ margin-bottom: 2em;
+ line-height: 1.1;
+
+ &:after {
+ content: '';
+ display: block;
+ width: calc(100% + var(--spacing-outer) * 2.5);
+ height: 1px;
+ background-color: var(--color-text);
+ margin-top: .5em;
+ }
+ }
+ .tag {
+ display: inline-block;
+ margin-right: .5em;
+ padding: .125em 0;
+ font-weight: 400;
+ text-transform: uppercase;
+ letter-spacing: -.005em;
+
+ &:after {
+ content: ','
+ }
+ &:last-child:after {
+ content: none
+ }
+ }
+
:global(.header-nav){
transition: all .3s cubic-bezier(0.075, 0.82, 0.165, 1);
}
diff --git a/src/routes/work/md/adidas.md b/src/routes/work/md/adidas.md
index 03d6d47..df0db3b 100644
--- a/src/routes/work/md/adidas.md
+++ b/src/routes/work/md/adidas.md
@@ -2,8 +2,12 @@
title: Adidas
header_bg_image: adidas_hero_ceurd8
order: 12
+tags: ['graphic design', 'illustration']
description: Adidas, as you might have heard, is an international sports and lifestyle clothing brand. I worked on several digital campaigns as a graphic designer and illustrator.
svg: '
'
---
+
+# adidas is all in
+
Adidas, as you might have heard, is an international sports and lifestyle clothing brand. I worked on several digital campaigns as a graphic designer and illustrator.
diff --git a/src/routes/work/md/formo.md b/src/routes/work/md/formo.md
index 73df150..bdf46b4 100644
--- a/src/routes/work/md/formo.md
+++ b/src/routes/work/md/formo.md
@@ -3,6 +3,7 @@ title: Formo.bio
header_bg_image: formo_hero_xgb6xo
video: /work/formo/formo-rec.webm
order: 12
+tags: ['tech consultancy', 'web development', 'UX Design']
description: Formo, as you might have heard, is an international sports and lifestyle clothing brand. I worked on several digital campaigns as a graphic designer and illustrator.
svg: '
'
---
diff --git a/src/routes/work/md/jpl.md b/src/routes/work/md/jpl.md
index eb64821..24d71ea 100644
--- a/src/routes/work/md/jpl.md
+++ b/src/routes/work/md/jpl.md
@@ -3,6 +3,7 @@ title: JustPeace Labs
header_bg_image: jpl_hero_eukxaw
description: JustPeace Labs is a non-profit organization that works with local communities to build peace and prevent violence.
order: 11
+tags: ['branding', 'logo design', 'graphic design', 'illustration']
svg: '
'
---
diff --git a/src/routes/work/md/peak.md b/src/routes/work/md/peak.md
index 43fbf66..017a53c 100644
--- a/src/routes/work/md/peak.md
+++ b/src/routes/work/md/peak.md
@@ -3,6 +3,7 @@ title: peak.capital
header_bg_image: peak_hero_ewp1wb
order: 12
description: Peak Capital description
+tags: ['early-stage investment fund', 'venture capital', 'fund', 'investor']
svg: '
'
---
Peak is an early-stage investment fund backed by entrepreneurs in Europe.
\ No newline at end of file
diff --git a/src/routes/work/md/uncommon.md b/src/routes/work/md/uncommon.md
index f095742..ac9f7b5 100644
--- a/src/routes/work/md/uncommon.md
+++ b/src/routes/work/md/uncommon.md
@@ -2,6 +2,7 @@
title: Uncommonbio.co
header_bg_image: uncommon_hero_jf1in9
order: 12
+tags: ['tech consultancy', 'web development', 'UX Design', 'Knoterputer', 'Henkenstein']
description: Peak Capital description
svg: '
'
---
diff --git a/src/routes/work/work.scss b/src/routes/work/work.scss
index a50aae6..8fc8594 100644
--- a/src/routes/work/work.scss
+++ b/src/routes/work/work.scss
@@ -1,76 +1,108 @@
+.works-wrapper {
+ max-width: 1200px;
+ margin: auto;
+}
h1 {
font-size: 16vw;
- font-style: italic;
- margin: 0 0 0.5em 0;
- letter-spacing: -0.04em;
- text-align: center;
- position: fixed;
- top: calc(50svh - 16vw);
- width: 100%;
- visibility: hidden;
+ margin: var(--spacing-nav) var(--spacing-nav) .25em var(--spacing-nav);
+ padding: 0 0 calc(var(--spacing-nav) / 3) 0;
+ position: relative;
+ z-index: -1;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-
+ border-bottom: 1px solid;
+
@media screen and (min-width: 768px) {
font-size: 7vw;
- top: calc(50svh - 3.5vw);
}
-
- & span {
- display: inline-block;
- padding: 0 0.25em;
- }
-}
-h2 {
- line-height: 1.1;
- letter-spacing: -0.025em;
- font-size: 2.5vw;
- opacity: 0;
- position: absolute;
- left: .5em;
- bottom: .5em;
- transform: scale(0.8) translateY(100%);
- margin: 0;
- padding: 0.1em 0.4em 0.2em 0.4em;
- text-align: center;
- transform-origin: center center;
- width: auto;
- margin: 0;
- background-color: var(--color-bg);
- color: var(--color-text);
- transition: all .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
-
- .works .work:not(.active):hover & {
- opacity: 1;
- transform: scale(1) translateY(0);
- }
}
.works {
padding: 0.5em;
display: flex;
gap: 0.25em;
flex-wrap: wrap;
+
@media screen and (min-width: 768px) {
- gap: 0.25em;
- padding: 8.5vw 0.5em 0.5em 0.5em;
- width: 100%;
- max-width: 1200px;
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ gap: 1px;
+ padding: 0 var(--spacing-nav);
margin: 0 auto;
padding-bottom: 20svh;
}
}
+.work-info,
+.work:visited .work-info {
+ position: absolute;
+ left: 0.25em;
+ top: 0.25em;
+ padding: 0.5em .75em;
+ overflow: hidden;
+ box-sizing: border-box;
+ background-color: var(--color-text);
+ visibility: hidden;
+
+ & h2 {
+ text-transform: none;
+ font-style: normal;
+ font-weight: 400;
+ margin: 0;
+ padding: 0;
+ font-size: 1.2em;
+ letter-spacing: -0.02em;
+ line-height: 1;
+ visibility: hidden;
+ color: var(--color-bg);
+ }
+ & .tags {
+ visibility: hidden;
+ list-style: none;
+ padding: 0;
+ margin: 10px 0 0 0 ;
+ display: flex;
+ flex-wrap: wrap;
+ gap: 0.15em;
+ transition: all .4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
+ }
+ & .tag {
+ font-size: .6em;
+ line-height: 1;
+ letter-spacing: -0.01em;
+ box-sizing: border-box;
+ padding: 0;
+ border-radius: 3px;
+ text-transform: uppercase;
+ // font-weight: 800;
+ // font-style: italic;
+ color: var(--color-text);
+ }
+}
+.work:hover .work-info {
+ background-color: var(--color-bg);
+ & h2 {
+ color: var(--color-text);
+ }
+}
.work {
flex: 0 0 calc(50% - 0.125em );
display: block;
position: relative;
padding: 0;
- transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
+ // transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
text-decoration: none;
overflow: hidden;
@media screen and (min-width: 768px) {
- flex: 0 0 calc(33% - .125em);
+ grid-column-end: span 1;
+
+ &:first-child {
+ grid-column-end: span 2;
+ grid-row-end: span 2;
+ }
}
}
+.work .tag {
+ opacity: 0;
+}
:global(.work img) {
width: 100%;
height: auto;
diff --git a/src/routes/work/workUtils.ts b/src/routes/work/workUtils.ts
index 6040527..c2ef08e 100644
--- a/src/routes/work/workUtils.ts
+++ b/src/routes/work/workUtils.ts
@@ -8,38 +8,97 @@ workbulge.subscribe(value => {
bulge.factor = value;
})
-export function initWorkPage( h1: HTMLElement, canvasImgElems: Array
) {
+export function initWorkPage( canvasTextElems: Array, canvasImgElems: Array) {
- workbulge.set(0.25);
+ workbulge.set(0);
+
+ gsap.to(bulge, {
+ duration: .5,
+ factor: 0.15,
+ delay: .8,
+ ease: 'back.out(3)',
+ onUpdate: () => {
+ workbulge.set(bulge.factor);
+ }
+ })
+
+ const workinfos: Array = Array.from(document.querySelectorAll('.work-info'));
+
+ workinfos.forEach((workinfo) => {
+
+ const workinfoTitle = workinfo.querySelector('h2') as HTMLElement;
+ const workinfoTitleWords = workinfoTitle.querySelector('span') as HTMLElement;
+
+ const expanded = {
+ height: workinfo.getBoundingClientRect().height,
+ width: workinfo.getBoundingClientRect().width + 2,
+ paddingTop: Number(window.getComputedStyle(workinfo).paddingTop.replace('px','')) as number,
+ paddingLeft: Number(window.getComputedStyle(workinfo).paddingLeft.replace('px','')) as number,
+ }
+
+ const contracted = {
+ height: workinfoTitle.offsetHeight * 1.2 + 2 * expanded.paddingTop,
+ width: workinfoTitleWords.offsetWidth + 2 * expanded.paddingLeft,
+ }
+
+ workinfo.style.width = `${contracted.width}px`;
+ workinfo.style.height = `${contracted.height}px`;
+ const tags = workinfo.querySelector('.tags') as HTMLElement;
+ tags.style.width = `${expanded.width}px`;
+
+ workinfo.parentElement?.addEventListener('mouseenter', () => {
+ gsap.to(workinfo, {
+ duration: .25,
+ width: expanded.width,
+ height: expanded.height,
+ ease: 'power2.inOut',
+ overwrite: true
+ })
+ })
+ workinfo.parentElement?.addEventListener('mouseleave', () => {
+ gsap.to(workinfo, {
+ duration: .25,
+ width: contracted.width,
+ height: contracted.height,
+ ease: 'power2.inOut',
+ overwrite: true
+ })
+ })
+ })
gsap.registerPlugin( SplitText );
-
- const h1Text = h1?.innerHTML || '';
- h1.innerHTML = h1Text + h1Text + h1Text + h1Text || '';
- h1.style.overflow = 'hidden';
- h1.style.whiteSpace = 'nowrap';
- const spans = Array.from(h1.querySelectorAll('span'));
- spans.forEach((span, index) => {
- gsap.set(span, { opacity: 1, y: -window.innerHeight/1.5 })
- gsap.to(span, { opacity: 1, y: 0, duration: 1, ease: 'power3.out', delay: index * 0.025 })
- gsap.to(span, { xPercent: -100, duration: 4, ease: 'none', repeat: -1 })
+
+ const work = document.querySelectorAll('.work');
+ gsap.set(document.querySelectorAll('.tag'), {opacity: 0, yPercent: 200});
+ gsap.set(document.querySelectorAll('h2'), {opacity: 1 });
+ work.forEach((el) => {
+ el.addEventListener('mouseenter', (e) => {
+ const target = e.target as HTMLElement;
+ gsap.to(target?.querySelectorAll('.tag'), {duration: 0.5, opacity: 1, yPercent: 0, ease: 'back.out(1.7)', stagger: 0.025, overwrite: true});
+ gsap.to(target?.querySelector('h2'), {duration: 0.5, opacity: 1, ease: 'back.out(1.7)', overwrite: true});
+ });
+ el.addEventListener('mouseleave', (e) => {
+ const target = e.target as HTMLElement;
+ gsap.to(target?.querySelectorAll('.tag'), {duration: 0.3, opacity: 0, yPercent: 200, ease: 'power2.out', overwrite: true});
+ gsap.to(target?.querySelector('h2'), {duration: 0.5, opacity: 1, ease: 'back.out(1.7)', overwrite: true});
+ });
});
- gsap.set(canvasImgElems, {
+ gsap.set('.work', {
opacity: 0, yPercent: 50
})
- gsap.to(canvasImgElems, {
+ gsap.to('.work', {
duration: 1,
- opacity: .8,
+ opacity: 1,
yPercent: 0,
stagger: 0.05,
ease: 'elastic.out(0.75, 0.5)',
- delay: 0.3
+ delay: 0.3,
})
return {
- text: spans,
+ text: canvasTextElems,
images: canvasImgElems
}
}
@@ -67,12 +126,30 @@ export function workClickHandler(e:Event){
document.body.appendChild(coverclone);
+ gsap.to('.work .work-info', {
+ duration: .3,
+ opacity: 0,
+ yPercent: -10,
+ ease: 'power4.out',
+ })
gsap.to('.work:not(.active) img', {
duration: .3,
opacity: 0,
- yPercent: 10,
+ yPercent: 20,
ease: 'power4.out',
})
+ gsap.to('.work h2', {
+ duration: .3,
+ opacity: 0,
+ // scale: 0,
+ ease: 'power3.out'
+ })
+ gsap.to('.work .tag', {
+ duration: .3,
+ opacity: 0,
+ // scale: 0,
+ ease: 'power3.out'
+ })
gsap.set(targetImg, {
zIndex: 100,
})
diff --git a/static/cursor.ai b/static/cursor.ai
new file mode 100644
index 0000000..e5c415f
--- /dev/null
+++ b/static/cursor.ai
@@ -0,0 +1,274 @@
+%PDF-1.6
%
+1 0 obj
<>/OCGs[19 0 R]>>/Pages 3 0 R/Type/Catalog>>
endobj
2 0 obj
<>stream
+
+
+
+
+ Adobe Illustrator 27.9 (Macintosh)
+ 2023-09-22T17:39:09+02:00
+ 2023-09-22T17:39:10+02:00
+ 2023-09-22T17:39:10+02:00
+
+
+
+ 180
+ 256
+ JPEG
+ /9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgBAAC0AwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPB
UtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE
1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZ
qbnJ2en5KjpKWmp6ipqqusra6voRAAICAQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEy
obHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp
0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo
+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq+v/aAAwDAQACEQMRAD8A9U4q7FXYq7FXYq7FXYq7
FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7F
XYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FX
YqxlPPWnR+bbvy5e0t5YzELScn4JDJEj8D/K1W28fn1VZNirsVdirsVdirsVdirsVdirsVdirsVd
irsVdirsVdirsVdirsVdirsVeAfml/ynep/88P8AqHjxVkv5ffmiYvS0nX5axbJbX7dV7BJfb/K7
d/EKvWgQQCDUHcEYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq+fvzRYN56
1Mg1FYR9It4wcVYtir6B/LB3fyLpbOxYgTKCTU0WeRVG/gBQYqynFXYq7FXYq7FXYq7FXYq7FXYq
7FXYq7FXYq7FXYq7FXYq7FXYq+evzJ/5TfVf+Mif8mkxVjWKvoD8rf8AlBNM/wCe/wD1ESYqyrFX
Yq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq+evzJ/wCU31X/AIyJ/wAmkxVjWKvo
T8tEVfI+lhRQcJD9Jmcn8TirJsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir5
6/Mn/lN9V/4yJ/yaTFWNYq+hfy2/5QjSv+Mb/wDJ18VZLirsVdirsVdirsVdirsVdirsVdirsVdi
rsVdirsVdirsVdirsVfOv5gEnznq1TX9+R9yjFWP4q+hfy2/5QjSv+Mb/wDJ18VZLirsVdirsVdi
rsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVfOvn//AJTLVv8AjOf1DFWP4q+iPy9QJ5L0kDoY
eX0sxJ/XirIsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir518/wD/ACmWrf8A
Gc/qGKsfxV9FeQP+UN0n/jAP1nFWQYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq
7FXzj55cv5w1cnqLmRdvBTQfqxVI8VfRXkD/AJQ3Sf8AjAP1nFWQYq7FXYq7FXYq7FXYq7FXYq7F
XYq7FXYq7FXYq7FXYq7FXYq7FXzf52/5S7WP+YuX/iRxVJcVfRvkVAnk/SFBrW2Rv+CHL+OKp7ir
sVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVfN/nb/lLtY/5i5f8AiRxVJcVfSHkn
/lEdH/5hIv8AiIxVOsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir5t85OH826
wR0F5Ou/ishB/ViqT4q+kPJP/KI6P/zCRf8AERiqdYq7FXYq7FXYq7FXYq7FXYq7FXYq7FXYq7FX
Yq7FXYq7FXYq7FXzV5s/5SrWf+Y65/5PNiqVYq+kvJ0fDyno61rWzgb/AIKMN/HFU4xV2KuxV2Ku
xV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KvmrzZ/wApVrP/ADHXP/J5sVSrFX0r5T/5RXRv
+YG2/wCTK4qmuKuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV81eayD5p1gg1Bv
rkgj/jM2KpVir6V8p/8AKK6N/wAwNt/yZXFU1xV2KuxV2KuxV2KuxV2KuxV2KuxV2KqNzfWVqK3V
xFAOtZXVP+JEYqk135+8m2tfV1aBqf76Jm/5NB8VUdJ/MXypquorYWl2fXf+6MiNGrn+VSwG/scV
ZLirsVdirsVdir5l8w/8d/U/+Yuf/k42Kpfir6X8roY/LOkIeqWVupp0qIlGKpnirsVdirsVdirs
VdiqC1jWdN0exe+1CYQwJtU9WbsqjqzHwGKsBuvzw0xa/VNLml8PVkSL/iIlxVJbr87deeotbG2h
B7yc5CPuZB+GKpNd/mn52uKgXwgU/sxRRr/wxUt+OKpNd+Z/Md5UXOp3Uqn9hpn4/wDA1piqWMzM
SzEljuSdzirsVcCQQQaEbgjFXrH5f/miJPT0rX5aSbLbag52bwWU+Pg33+OKvUsVdirsVdir5l8w
/wDHf1P/AJi5/wDk42Kpfir6a8vf8cDTP+YSD/k2uKphirsVdirsVdirsVSPzX5v0ry3ZetdtzuH
B+r2ikc5CP8AiK+LYq8I8y+aNV8w3xur6T4VqILdaiONT2UfrPU4qlGKuxV2KuxV2KuxV2KuxV6L
+X/5nSad6ela07SWGywXR+J4egCt4oPvHyxV7HFLFLGksTrJE4DI6kMrKdwQR1BxVdirsVfMvmH/
AI7+p/8AMXP/AMnGxVL8VfTXl7/jgaZ/zCQf8m1xVMMVdirsVdirsVYd55/MWw8vRtaWvG51dh8M
NapFXo0pH4L1+WKvD9S1O/1O9kvb6Zp7mU1eRvwAHQAdgMVQ2KuxV2KuxV2KuxVH2uga7d0+q6dc
z17xwuw+8DFU4tfy087XNCumtGp/aleOOn0Mwb8MVTm0/JbzNLQ3Fza247jk7t9wWn44qnFr+R0A
obvVmbxWKEL/AMMzN+rFWdeWfLUHl+xNlb3dxcwV5KlwysEPfhxVeIPWmKpxirsVfMGsMzavfMxq
zXEpJ9y5xVCYq+nNBRk0PTkbZltYQfmIxiqOxV2KuxV2KvM/Pn5qJamTTNAcPciqz3woVTsVj7M3
+V0H6lXkckkksjSSMXkclndiSSTuSScVW4qmOh+X9W1y7+q6ZbmeUDk5qFVV8WY0AxVl1r+S3meS
huLi1t17jk7t9wWn44qnNp+R0QobvVmbxWKEL/wzM36sVTi1/JvylDT1mubk9/UkCj/kmqH8cVTi
1/L3yXa09PSoWp/v3lN/ycL4qnNrpemWlPqlpDb06elGif8AEQMVROKuxV2KuxV2KuxV2Kvl/Vv+
Ore/8Z5f+JnFULir6g0n/jlWX/GCL/iAxVFYq7FVO4uILaB57iRYoYwWkkchVUDuScVeNefPzPn1
T1NN0Zmg001WW43WSYeA7qh8Op7+GKvPsVdirIfKHkrVPMt3xgHo2UZpcXjD4V78V/mb2+/FXvGg
+X9L0KwWy0+IRxjd3O7yN/M7dziqY4q7FXYq7FXYq7FXYq7FXYq7FXYq7FXy/q3/AB1b3/jPL/xM
4qhcVfUGk/8AHKsv+MEX/EBiqKxVBaxrOm6PYvfahMIYE2qftM3ZVHdj4Yq8L86+ftS8yTmIVttL
Q1itAftEdHkI+034D8cVYtirsVZn5E/Lq98wSLeXga20hTvJSjzUO6x17eLYq9vsNPstPtI7OyhW
C2hHGONBQD+pPc4qiMVdirsVdirsVdirsVdirsVdirsVdirsVfLmoOZL+5kIoXldiPmxOKqGKvqH
S1ZdMtFYUZYYwR7hBiqV+a/OOk+W7P1btvUupAfq9oh+Nz4/5K+LH9e2KvCPMnmfVfMN+bq/k+Fa
iCBf7uNT2UfrPfFUpxV2KvSPIH5XyX3p6prsZjsjRrezNVaXwZ+6p4Dqfl1VewRxxxRrHGoSNAFR
FAAAGwAAxVdirsVdirsVdirsVdirsVdirsVdirsVdirsVfLV3/vVN/xkb9ZxVSxV7n5u/Max8v2M
dnacbnVzEtIuqRVUUaSnfwX9WKvFdR1K+1K8kvL6Zp7mU1eRuvyHYAdgMVQ2KtojyOscal3chURR
UknYAAYq9f8AIH5XJZ+nqmuxh7vZ7eyO6x9w0ni/t0Hz6KvSsVdirsVdirsVdirsVdirsVdirsVd
irsVdirsVdir5au/96pv+MjfrOKqWKtszMxZiSxNSTuSTirWKq9jYXl/dx2lnE09zMeMcSCpJ/z7
4q9v8iflzZ6Ai3t5xuNXYfb6pDUbrH7+LfdirNMVdirsVdirsVdirsVdirsVdirsVdirsVdirsVd
irsVfLFw6vcSuu6s7EfInFVmKuxVMdB0DU9cv0stPi9SVt3c7Ii92duwxV7v5P8AJOmeWrTjCPWv
pBS4vGFGb/JX+Va9vvxVkWKuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV2KuxV8q4q7FU+8p
eTtU8y3vpWw9K1jI+s3jCqIPAdOTeC4q958veXNL0CwWz0+LiNjLKaGSRv5nbv8AwxVM8VdirsVd
irsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVfKuKsv8jfl5feYpVurjlbaQh+OenxSUO6xV/F
ugxV7lpumWOmWcdlYwrBbRCiIv6yepJ7k4qicVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir
sVdirsVdirxnyD+WEupenqetIYtPNGgtTVXmHUFu6p+JxV7HDDFDEkUKLHFGAqRoAqqB0AAxVfir
sVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdirsVdir//2Q==
+
+
+
+ 1
+ True
+ False
+
+ 40.000000
+ 50.000000
+ Pixels
+
+
+
+ Cyan
+ Magenta
+ Yellow
+ Black
+
+
+
+
+
+ Default Swatch Group
+ 0
+
+
+
+ application/pdf
+
+
+ cursor
+
+
+ xmp.did:a7c95708-f2a5-4e20-8771-5045291eefa5
+ uuid:3090038f-25ff-9541-9798-88c3e12c53af
+ xmp.did:465c3731-c253-4b1d-8963-e646b56a54d6
+ proof:pdf
+
+ xmp.iid:c6c76fd3-8f08-4957-aeb1-bcd293d46c62
+ xmp.did:c6c76fd3-8f08-4957-aeb1-bcd293d46c62
+ xmp.did:465c3731-c253-4b1d-8963-e646b56a54d6
+
+
+
+
+ saved
+ xmp.iid:465c3731-c253-4b1d-8963-e646b56a54d6
+ 2023-09-22T17:34:51+02:00
+ Adobe Illustrator 27.9 (Macintosh)
+ /
+
+
+ saved
+ xmp.iid:a7c95708-f2a5-4e20-8771-5045291eefa5
+ 2023-09-22T17:39:08+02:00
+ Adobe Illustrator 27.9 (Macintosh)
+ /
+
+
+
+ Document
+ AIRobin
+ Adobe PDF library 17.00
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
endstream
endobj
3 0 obj
<>
endobj
5 0 obj
<>/Properties<>/XObject<>>>/Thumb 26 0 R/TrimBox[0.0 0.0 40.0 50.0]/Type/Page/PieceInfo<>>>
endobj
21 0 obj
<>stream
+H
+0DI&z5U/?@ apC&v}FDC8iw|J?op(DQ5k`FMdG
+9w,&KRe.u>1ʾ !
endstream
endobj
22 0 obj
<>
endobj
26 0 obj
<>stream
+8;Xp,*?/Z#],oN/U]CGq!<<'!!!*'!!s!_A(PM~>
endstream
endobj
9 0 obj
<>
endobj
10 0 obj
<>
endobj
11 0 obj
<>stream
+%!PS-Adobe-3.0
%%Creator: Adobe Illustrator(R) 24.0
%%AI8_CreatorVersion: 27.9.0
%%For: (Eros Milfton) ()
%%Title: (cursor.svg)
%%CreationDate: 22/09/2023 17:39
%%Canvassize: 16383
%%BoundingBox: 2 3 35 50
%%HiResBoundingBox: 2 3.17119586163244 35 50
%%DocumentProcessColors: Cyan Magenta Yellow Black
%AI5_FileFormat 14.0
%AI12_BuildNumber: 80
%AI3_ColorUsage: Color
%AI7_ImageSettings: 0
%%RGBProcessColor: 0 0 0 ([Registration])
%AI3_Cropmarks: 0 0 40 50
%AI3_TemplateBox: 20.5 24.5 20.5 24.5
%AI3_TileBox: -286 -371 326 421
%AI3_DocumentPreview: None
%AI5_ArtSize: 14400 14400
%AI5_RulerUnits: 6
%AI24_LargeCanvasScale: 1
%AI9_ColorModel: 1
%AI5_ArtFlags: 0 0 0 1 0 0 1 0 0
%AI5_TargetResolution: 800
%AI5_NumLayers: 1
%AI17_Begin_Content_if_version_gt:24 4
%AI10_OpenToVie: -51.7531444305978 56.6980776299652 6.16512655133272 0 8204.88986639874 8220.93893773963 1428 849 26 0 0 6 45 0 0 0 1 1 0 1 1 0 1
%AI17_Alternate_Content
%AI9_OpenToView: -51.7531444305978 56.6980776299652 6.16512655133272 1428 849 26 0 0 6 45 0 0 0 1 1 0 1 1 0 1
%AI17_End_Versioned_Content
%AI5_OpenViewLayers: 7
%AI17_Begin_Content_if_version_gt:24 4
%AI17_Alternate_Content
%AI17_End_Versioned_Content
%%PageOrigin:-479 -476
%AI7_GridSettings: 1.0008 1 1.0008 1 1 0 0.898039221763611 0.921568632125855 0.91372549533844 0.949019610881805 0.960784316062927 0.95686274766922
%AI9_Flatten: 1
%AI12_CMSettings: 00.MS
%%EndComments
endstream
endobj
12 0 obj
<>stream
+%AI24_ZStandard_Data(/ X_Zs)Dd ّ-rB(2TLP& @ .*ٕF95]MlV|@ԙSڂ:_-zӂ:+֦uZPguwlA~3zUzKU7 'qDlNM{'-ཱུW;6{^v[vE^kMa%0^4,|S.{xKOdm5{ycx5כV
+n8n`2ةQ{mU
Ǯv_*KxNvfWj]oۍgִ]Z+)
HoҶַVRN'=÷f [Z9SV?I QzS0Ay,7ƒK(v
ߗdX R%ϩ#U-ɱ,=Ǒ=rz]}3{6*ֱ~_nn(ᚮ _OjA2%4jg֚7_sJ8x,nٰy7 |6۽;n8Q
Tpx-(gZ)XMh~hiS+^LAek. m1irrG"3L-y