.styles-module__GRbinG__page{--bloom-bg:#f5f8f0;--bloom-paper:#fffef9;--bloom-text:#17252b;--bloom-muted:#53666c;--bloom-line:#17252b2b;--bloom-acid:#d9ff3f;--bloom-accent:#b51fa8;--bloom-grid:#b51fa80e;--bloom-notes-bg:#b51fa8;--bloom-coral:#ad3724;--bloom-on-accent:#fff;background-color:var(--bloom-bg);background-image:linear-gradient(var(--bloom-grid) 1px, transparent 1px), linear-gradient(90deg, var(--bloom-grid) 1px, transparent 1px);min-height:100vh;color:var(--bloom-text);background-size:36px 36px;overflow:clip}.styles-module__GRbinG__page:before,.styles-module__GRbinG__page:after{z-index:10;content:"";pointer-events:none;width:1px;height:72vh;position:fixed;top:14vh;right:.55rem}.styles-module__GRbinG__page:before{background:var(--bloom-line)}.styles-module__GRbinG__page:after{background:linear-gradient(var(--bloom-accent), var(--bloom-acid));opacity:.24;transform-origin:top;width:2px;transform:scaleY(1)}.styles-module__GRbinG__page[data-color-theme=violet]{--bloom-accent:#4640b7;--bloom-grid:#4640b70b;--bloom-notes-bg:#4640b7}.dark .styles-module__GRbinG__page{--bloom-bg:#111720;--bloom-paper:#18232d;--bloom-text:#edf3e9;--bloom-muted:#bac8c7;--bloom-line:#cbe0d833;--bloom-acid:#d9ff3f;--bloom-accent:#f04bdd;--bloom-grid:#f04bdd0e;--bloom-notes-bg:#70245f;--bloom-coral:#ff896b;--bloom-on-accent:#17252b}.dark .styles-module__GRbinG__page[data-color-theme=violet]{--bloom-accent:#7d83ed;--bloom-grid:#7d83ed0b;--bloom-notes-bg:#34386f}.styles-module__GRbinG__shell{width:min(1260px,100% - 3rem);margin:0 auto;padding:1.25rem 0 3rem}.styles-module__GRbinG__actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.styles-module__GRbinG__download{border:1px solid var(--bloom-text);background:var(--bloom-text);min-height:2.75rem;color:var(--bloom-paper);border-radius:6px;align-items:center;gap:.55rem;padding:.65rem .9rem;font-size:.9rem;font-weight:700;display:inline-flex}.styles-module__GRbinG__download:hover{border-color:var(--bloom-accent);background:var(--bloom-accent);color:var(--bloom-on-accent)}.styles-module__GRbinG__hero{--signal-x:50%;--signal-y:36%;--signal-opacity:0;--signal-tilt-x:0deg;--signal-tilt-y:0deg;isolation:isolate;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);grid-template-areas:"copy portrait""impact portrait";align-items:center;gap:clamp(2rem,5vw,5rem);padding:1.5rem 0 4.5rem;display:grid;position:relative}.styles-module__GRbinG__hero:before{z-index:-1;background:radial-gradient(ellipse 24rem 18rem at var(--signal-x) var(--signal-y), color-mix(in srgb, var(--bloom-accent) 16%, transparent), transparent 72%);content:"";opacity:var(--signal-opacity);pointer-events:none;transition:opacity .26s;position:absolute;inset:0}.styles-module__GRbinG__heroCopy{z-index:1;grid-area:copy;position:relative;container-type:inline-size}.styles-module__GRbinG__period{color:var(--bloom-accent);letter-spacing:.08em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;font-weight:700}.styles-module__GRbinG__hero h1{font-family:var(--font-display), sans-serif;font-size:clamp(1.8rem,11cqi,6.5rem);font-weight:800;line-height:.86;display:grid}.styles-module__GRbinG__hero h1>span{white-space:nowrap}.styles-module__GRbinG__surname{z-index:0;color:var(--bloom-accent);position:relative}.styles-module__GRbinG__roleLine{color:var(--bloom-accent);flex-wrap:wrap;margin-top:1rem;font-size:1rem;font-weight:700;display:flex}.styles-module__GRbinG__lead,.styles-module__GRbinG__impactList{max-width:68ch;color:var(--bloom-muted);font-size:1rem;line-height:1.65}.styles-module__GRbinG__lead{margin-top:1.3rem}.styles-module__GRbinG__impactSection{grid-area:impact;align-self:start;margin-top:1.25rem}.styles-module__GRbinG__impactSection h2{font-family:var(--font-display), sans-serif;font-size:1.25rem;font-weight:700}.styles-module__GRbinG__impactList{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:.75rem;display:grid}.styles-module__GRbinG__impactList li{border-top:1px solid var(--bloom-line);padding-top:.65rem}.styles-module__GRbinG__socials{flex-wrap:wrap;gap:.35rem;margin-top:1rem;display:flex}.styles-module__GRbinG__socials a{min-height:2.75rem;color:var(--bloom-text);text-decoration:underline;-webkit-text-decoration-color:var(--bloom-coral);text-decoration-color:var(--bloom-coral);text-underline-offset:4px;align-items:center;padding:.4rem .55rem;font-size:.9rem;font-weight:700;text-decoration-thickness:2px;display:inline-flex}.styles-module__GRbinG__socials a span{color:var(--bloom-accent);margin-left:.2rem}.styles-module__GRbinG__portraitFrame{aspect-ratio:4/5;isolation:isolate;grid-area:portrait;justify-self:end;width:min(100%,440px);margin:0;position:relative}.styles-module__GRbinG__portraitFrame:before{z-index:-1;background:var(--bloom-acid);content:"";border-radius:8px;position:absolute;inset:-.85rem .85rem .85rem -.85rem}.styles-module__GRbinG__portraitFrame:after{z-index:1;background:radial-gradient(circle at 50% 50%, var(--bloom-acid) 0 .2rem, transparent .22rem), radial-gradient(circle at 50% 14%, var(--bloom-accent) 0 .3rem, transparent .32rem), radial-gradient(circle at 86% 50%, var(--bloom-accent) 0 .3rem, transparent .32rem), radial-gradient(circle at 50% 86%, var(--bloom-accent) 0 .3rem, transparent .32rem), radial-gradient(circle at 14% 50%, var(--bloom-accent) 0 .3rem, transparent .32rem);content:"";opacity:.82;pointer-events:none;border-radius:50%;width:2rem;height:2rem;position:absolute;top:-.55rem;right:-.55rem;transform:scale(.82)}.styles-module__GRbinG__portrait{border:1px solid var(--bloom-line);object-fit:cover;object-position:center 30%;transform:perspective(900px) rotateX(var(--signal-tilt-y,0deg)) rotateY(var(--signal-tilt-x,0deg));transform-style:preserve-3d;border-radius:8px}.styles-module__GRbinG__portraitFrame figcaption{color:#fff;text-transform:uppercase;background:#111720e0;justify-content:space-between;gap:.5rem;padding:.65rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;display:flex;position:absolute;bottom:0;left:0;right:0}.styles-module__GRbinG__notesSection,.styles-module__GRbinG__skillsSection,.styles-module__GRbinG__experienceSection{border-top:1px solid var(--bloom-line);padding:1.5rem 0 2rem}.styles-module__GRbinG__notesSection{background:var(--bloom-notes-bg);color:#fff;border-radius:8px;padding:1.5rem}.styles-module__GRbinG__notesSection h2,.styles-module__GRbinG__sectionHeading h2{font-family:var(--font-display), sans-serif;font-size:clamp(1.5rem,4vw,2rem);font-weight:700}.styles-module__GRbinG__personalNotes{margin-top:.75rem}.styles-module__GRbinG__personalNotes summary,.styles-module__GRbinG__skillGroup summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:2.75rem;font-size:1rem;font-weight:700;list-style:none;display:flex}.styles-module__GRbinG__personalNotes summary::-webkit-details-marker{display:none}.styles-module__GRbinG__skillGroup summary::-webkit-details-marker{display:none}.styles-module__GRbinG__personalNotes summary:after,.styles-module__GRbinG__skillGroup summary:after{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:.55rem;height:.55rem;transition:transform .18s;transform:rotate(45deg)translateY(-.15rem)}.styles-module__GRbinG__personalNotes[open] summary:after,.styles-module__GRbinG__skillGroup[open] summary:after{transform:rotate(225deg)translate(-.12rem,-.08rem)}.styles-module__GRbinG__notes{flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:.5rem;display:flex}.styles-module__GRbinG__notes p{max-width:40ch;font-size:1rem;line-height:1.5}.styles-module__GRbinG__sectionHeading{flex-wrap:wrap;align-items:baseline;gap:.75rem 2rem;display:flex}.styles-module__GRbinG__sectionHeading>p:last-child{max-width:68ch;color:var(--bloom-muted);font-size:1rem;line-height:1.5}.styles-module__GRbinG__skillGroups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.4rem;display:grid}.styles-module__GRbinG__skillGroup{border-top:2px solid var(--bloom-text);padding-top:.8rem}.styles-module__GRbinG__skillGroup summary span{color:var(--bloom-muted);margin-left:auto;font-size:.875rem;font-weight:500}.styles-module__GRbinG__skillTags{flex-wrap:wrap;gap:.35rem;margin:.4rem 0 .8rem;display:flex}.styles-module__GRbinG__skillTags span{border:1px solid var(--bloom-line);color:var(--bloom-muted);overflow-wrap:anywhere;border-radius:4px;padding:.4rem .55rem;font-size:.8125rem}.styles-module__GRbinG__experienceList{margin-top:1rem}.styles-module__GRbinG__experienceItem{border-top:1px solid var(--bloom-line);grid-template-columns:170px minmax(0,1fr);gap:1rem 2rem;padding:1.1rem 0;display:grid}.styles-module__GRbinG__period{padding-top:.15rem;line-height:1.5}.styles-module__GRbinG__experienceBody h3{font-size:1.125rem;font-weight:700}.styles-module__GRbinG__experienceBody>p:not(.styles-module__GRbinG__technologies){max-width:68ch;color:var(--bloom-muted);overflow-wrap:anywhere;margin-top:.55rem;font-size:1rem;line-height:1.65}.styles-module__GRbinG__technologies{color:var(--bloom-accent);overflow-wrap:anywhere;margin-top:.55rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem;line-height:1.6}.styles-module__GRbinG__experienceBody a{min-height:2.75rem;color:var(--bloom-coral);text-underline-offset:.2em;align-items:center;gap:.3rem;margin-top:.35rem;padding:.4rem 0;font-size:.9rem;font-weight:700;text-decoration:underline;display:inline-flex}.styles-module__GRbinG__contactSection{border-top:1px solid var(--bloom-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem 0;display:flex}.styles-module__GRbinG__contactSection h2{font-family:var(--font-display), sans-serif;font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700}.styles-module__GRbinG__contactSection p{color:var(--bloom-muted);margin-top:.4rem;font-size:1rem;line-height:1.5}.styles-module__GRbinG__contactActions{flex-wrap:wrap;gap:.5rem;display:flex}.styles-module__GRbinG__contactLink,.styles-module__GRbinG__contactDownload{border:1px solid var(--bloom-text);border-radius:6px;justify-content:center;align-items:center;min-height:2.75rem;padding:.6rem .9rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.styles-module__GRbinG__contactLink{background:var(--bloom-text);color:var(--bloom-paper)}.styles-module__GRbinG__contactDownload{color:var(--bloom-text)}.styles-module__GRbinG__contactLink:hover,.styles-module__GRbinG__contactDownload:hover{border-color:var(--bloom-accent);background:var(--bloom-accent);color:var(--bloom-on-accent)}.styles-module__GRbinG__footer{border-top:1px solid var(--bloom-line);color:var(--bloom-muted);text-align:center;padding:1rem 0 0;font-size:.875rem}.styles-module__GRbinG__download,.styles-module__GRbinG__socials a,.styles-module__GRbinG__experienceItem,.styles-module__GRbinG__contactLink,.styles-module__GRbinG__contactDownload,.styles-module__GRbinG__portraitFrame:before,.styles-module__GRbinG__portrait{transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .24s cubic-bezier(.2,.8,.2,1),filter .24s}.styles-module__GRbinG__portrait{transition:clip-path .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),transform .32s cubic-bezier(.16,1,.3,1)}.styles-module__GRbinG__download:focus-visible,.styles-module__GRbinG__socials a:focus-visible,.styles-module__GRbinG__experienceBody a:focus-visible,.styles-module__GRbinG__contactLink:focus-visible,.styles-module__GRbinG__contactDownload:focus-visible,.styles-module__GRbinG__personalNotes summary:focus-visible,.styles-module__GRbinG__skillGroup summary:focus-visible{outline:3px solid var(--bloom-coral);outline-offset:3px}.styles-module__GRbinG__page button:focus-visible{outline:3px solid var(--bloom-coral);outline-offset:3px}@media (prefers-reduced-motion:no-preference){.styles-module__GRbinG__portrait{animation:.9s cubic-bezier(.16,1,.3,1) .1s backwards styles-module__GRbinG__bloom-photo-open}.styles-module__GRbinG__portraitFrame:after{animation:.5s cubic-bezier(.16,1,.3,1) .64s backwards styles-module__GRbinG__bloom-mark-open}.styles-module__GRbinG__portraitFrame:hover .styles-module__GRbinG__portrait{filter:saturate(1.12)contrast(1.03);transform:perspective(900px) rotateX(var(--signal-tilt-y,0deg)) rotateY(var(--signal-tilt-x,0deg)) scale(1.018)}.styles-module__GRbinG__portraitFrame:after{transition:opacity .18s,transform .32s cubic-bezier(.2,.8,.2,1)}.styles-module__GRbinG__portraitFrame:hover:before{transform:translate(.35rem,-.35rem)rotate(-1deg)}.styles-module__GRbinG__portraitFrame:hover:after,.styles-module__GRbinG__portraitFrame:active:after{opacity:1;transform:scale(1)rotate(0)}.styles-module__GRbinG__download:hover{transform:translate(-2px,-2px);box-shadow:0 8px 18px #17252b33}.styles-module__GRbinG__download:active{transform:translate(1px,1px);box-shadow:0 2px 5px #17252b26}.styles-module__GRbinG__socials a:hover{color:var(--bloom-accent);transform:translateY(-2px)}.styles-module__GRbinG__socials a:hover span,.styles-module__GRbinG__experienceBody a:hover span{display:inline-block;transform:translate(2px,-2px)}.styles-module__GRbinG__experienceItem:hover{border-color:var(--bloom-coral);background:var(--bloom-paper);transform:translate(3px)}}@keyframes styles-module__GRbinG__bloom-photo-open{0%{clip-path:inset(0 50% round 8px);filter:blur(8px)saturate(.45);transform:perspective(900px)rotateX(4deg)scale(1.06)}to{clip-path:inset(0 round 8px);filter:saturate();transform:perspective(900px)rotateX(0)scale(1)}}@keyframes styles-module__GRbinG__bloom-mark-open{0%{opacity:0;transform:scale(.35)rotate(-28deg)}to{opacity:.82;transform:scale(.82)rotate(0)}}@media (prefers-reduced-motion:reduce){.styles-module__GRbinG__hero:before{display:none}.styles-module__GRbinG__portrait{clip-path:none;filter:none;transform:none}.styles-module__GRbinG__portraitFrame:after{opacity:.82;transform:scale(.82)}}@supports (animation-timeline:scroll()){.styles-module__GRbinG__page:after{animation:linear both styles-module__GRbinG__bloom-page-progress;animation-timeline:scroll(root)}}@media (prefers-reduced-motion:reduce){.styles-module__GRbinG__page:after{opacity:.24;animation:none;transform:scaleY(1)}}@keyframes styles-module__GRbinG__bloom-page-progress{0%{opacity:.95;transform:scaleY(0)}to{opacity:.95;transform:scaleY(1)}}@media (max-width:900px){.styles-module__GRbinG__hero{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:2rem}}@media (max-width:760px){.styles-module__GRbinG__page:before,.styles-module__GRbinG__page:after{width:1px;right:.2rem}.styles-module__GRbinG__shell{width:min(100% - 1.5rem,42rem);padding-top:.7rem}.styles-module__GRbinG__hero{grid-template-columns:1fr;grid-template-areas:"copy""impact""portrait";gap:.8rem;padding:1.5rem 0 2.5rem}.styles-module__GRbinG__impactSection{margin-top:0}.styles-module__GRbinG__impactList{grid-template-columns:1fr;gap:.45rem}.styles-module__GRbinG__impactList li{padding-top:.45rem}.styles-module__GRbinG__portraitFrame{aspect-ratio:4/3;justify-self:center;width:min(100% - 1rem,390px)}.styles-module__GRbinG__experienceItem{grid-template-columns:1fr;gap:.4rem}}@media (max-width:440px){.styles-module__GRbinG__actions{gap:.35rem}.styles-module__GRbinG__skillGroups{grid-template-columns:1fr}.styles-module__GRbinG__contactSection{align-items:flex-start}.styles-module__GRbinG__contactActions{width:100%}.styles-module__GRbinG__contactLink,.styles-module__GRbinG__contactDownload{flex:1}}
