#import "@preview/cetz:0.4.0": canvas, draw
#import "@preview/cades:0.3.1": qr-code
#import "@preview/zebra:0.1.0": datamatrix, qrcode

#import "@preview/grayness:0.5.0": image-grayscale

#let FeatureColor = rgb("292929")
#let BackgroundColor = rgb("#fcfcfc")

#let font = "Helvetica"
#let titlefont = "Libre Caslon Display"
#let textfont = "Libre Caslon Text"

#set text(font: font)

#show link: set text(blue)

#let section2(body) = {
  v(30pt)
  grid(
    columns: (1fr, auto, 1fr),
    column-gutter: 5pt,
    [#v(5pt) #line(length: 100%)], [#text(size: 16pt, font: titlefont, body)],[#v(5pt) #line(length: 100%)]
  )
}

#let blob(inverse: false, body) = {
  set text(size: 10pt)
  if inverse {
    box(stroke: (FeatureColor +1pt), radius: 8pt, outset: (top:4pt, bottom: 4pt))[#h(4pt) #text(body) #h(4pt)]
  } else {
    box(fill: FeatureColor, radius: 8pt, outset: (top:4pt, bottom: 4pt))[#h(4pt) #text(fill: white,body) #h(4pt)]
  }
}

#let section3(body) = {
  v(12pt)
  text(size:18pt, weight: 800, font: titlefont)[#body]
}

#show heading: set text(
  size: 18pt,
  weight: "extralight",
)

#let progress(Number)= {
  rect(width: 100%, height: 8pt, stroke:  FeatureColor,  fill: FeatureColor, inset: 0pt)[
    #align(end)[#rect(width: (1%*(100-Number)), height: 8pt, fill: BackgroundColor)]
  ]
  
}

// REAL

#set page(
  paper: "a4",
  margin: (
    top: 0cm,
    bottom: 0cm,
    x: 0cm,
  ),
  fill: BackgroundColor
)


#grid(
  columns: (1fr, 8cm),
  column-gutter: 10pt,
  inset: (left:0.5cm),
  [
    #v(0.5cm)
    #stack(
      spacing: 8pt,
      [#text(size: 80pt, weight: 300, font: textfont)[#align(start)[Samantha]]],
      [#text(size: 40pt, weight: 300, font: textfont)[#align(start)[Vero Friis]]]
    )

    #set text(size: 12pt)
        #section3[Summary]\
    Finance and business student with a genuine interest in how companies 
    work and why some don't. I spend time outside of university doing my 
    own equity research, building small automation tools, and getting 
    unreasonably invested in optimizing things that probably didn't need 
    optimizing. I enjoy finding inefficiencies, whether in a balance sheet 
    or a workflow, and figuring out a cleaner way through them. Looking for 
    an analyst or finance-adjacent role where I can contribute while I study.
    
    #grid(
      columns: (75pt, 1fr),     
      [
        #align(center)[
          #v(10pt)
          #circle(width: 20pt)[
            #place(center + horizon)[
              #image("Assets/candlestick-chart.svg", width: 15pt, height: 15pt)
            ]
            #line(angle: 90deg, start: (0pt, 12pt), end: (0pt, 164pt))
          ]
          #v(133pt)
          #circle(width: 20pt)[
            #place(center + horizon)[
              #image("Assets/git.svg", width: 15pt, height: 15pt)
            ]
            #line(angle: 90deg, start: (0pt, 12pt), end: (0pt, 162pt))
          ]
         
          #v(135pt)
          #circle(width: 20pt)[
            #place(center + horizon)[
              #image("Assets/graduation-cap.svg", width: 15pt, height: 15pt)
            ]
            #line(angle: 90deg, start: (0pt, 12pt), end: (0pt, 22pt))
            #line(angle: 90deg, start: (0pt, 1pt), end: (0pt, 50pt))
            #line(angle: 90deg, start: (0pt, 1pt), end: (0pt, 100pt))

          ]
          #blob(inverse: true)[2025--Today]
          #v(45pt)
          #blob(inverse: true)[2020--2023]
        ]
      ],
      [
        


        #section3[Independent Equity Research]\
    I analyse publicly listed companies using SEC filings, earnings reports, 
    and whatever data I can get my hands on. I look at profitability, 
    liquidity, and long-term sustainability. When information is sparse 
    or inconsistent, I cross-validate across sources until the picture gets 
    clearer. There is something satisfying about turning a messy 10-K into 
    a clean set of conclusions.


    #section3[Technical Tools & Automation]\
    I build small tools to cut out repetitive work, mostly in Python for 
    data processing and validation, and Go for lightweight backend services 
    where speed matters. I have a tendency to keep refining things past the 
    point of necessity, which means what starts as a quick script usually 
    ends up well-documented and slightly over-engineered. Practical, but 
    built with care.


    #section3[Education History]\

    Bachelor of Economics & Business Administration (HA)\
    Aalborg University, In progress (Expected 2028)
    #v(10pt)
    
    HTX - Technical Upper Secondary Education \
    Viden Gymnasier \
    Study focus: Mathematics A, Biology B \
    Study project: Mathematics & Technology
      ]
    )
  ],
  [
    #block(width: 100%, height: 100%,inset: 0.5cm)[
      

      #grid(
        columns: (1fr, 1fr),
        [CV], 
        [#align(end)[English]]
      )

      /*#block(height: 9cm, width: 100%)[
        #let imagshadowsize = 0.25cm
        #place(right + bottom)[#block(fill: FeatureColor, width: 100% - imagshadowsize, height: 100%-imagshadowsize)]
        #place(left + top)[
          #let data = read("Assets/profile.png", encoding: none)
          #image-grayscale(data, width: 100% - imagshadowsize, height: 100%-imagshadowsize)]    
      ]*/

      #section2[Contact]
  
      #set align(end)
      #set image(width: 14pt)
      #grid(
        columns: (auto, 1fr),
        row-gutter: 2pt,
        [#align(start)[#v(2pt) #image("Assets/map-pin.svg")]], [#v(5pt) Denmark, Aalborg],
        [#align(start)[#v(2pt) #image("Assets/at-sign.svg")]], [#v(5pt) me@\samantha42.xyz],
        [#align(start)[#v(2pt) #image("Assets/www.svg")]], [#v(5pt) #link("samantha42.xyz")],
        [#align(start)[#v(2pt) #image("Assets/repository.svg")]], [#v(5pt) #link("git.samantha42.xyz")]
      )
      #set align(start)

      #section2[Application Skills]
      #grid(
            columns: (1fr, 1fr),
            row-gutter: 10pt,
            [Excel],
            [#progress(82)],
            [Python],
            [#progress(73)],
            [SQL],
            [#progress(55)],
            [Go],
            [#progress(90)],
            [Git],
            [#progress(40)]          
      )

      #section2[Projects]
      #stack(
          spacing: 10pt,
          [*Portfolio Engine — Go, SQLite*],
          [
A self-built backend replacing spreadsheet-based portfolio tracking. Tracks trades, revenue by period/segment, and company data via a REST API. Roadmap includes EPS, FIFO realised gains, and dividend tax calculations.
          ],[
            #link("https://git.samantha42.xyz/samantha/Portfolio-Engine")[Repo link]
          ]
      )


      #section2[Interests]
      #stack(
        spacing: 10pt,
        [#blob[Cinema] #blob(inverse: true)[TV Shows]  #blob[Economics] #h(1fr)],
        [#blob(inverse: true)[Gaming] #blob[Board Games] #blob(inverse: true)[Design] #h(1fr)],
        [#blob[Financial Markets] #blob(inverse: true)[Investing] #h(1fr)],
        [#blob(inverse: true)[Programming] #blob[Open Source] #blob(inverse: true)[Tech] #h(1fr)],
      )
      #section2[Languages]
      #grid(
          columns: (1fr, 1fr),
          row-gutter: 10pt,
          [Danish],
          [#progress(95)],
          [English],
          [#progress(80)]
      )
    
      #v(12pt)

      #grid(
        columns: (1fr, 1fr),
        [#align(start)[
          #block(width: 60pt)[
            #stack(spacing: 5pt)[
              #align(center)[#text(size: 10pt)[Website]]
            ][
              #qr-code(error-correction: "H", "samantha42.xyz", color: FeatureColor, width: 60pt)
        ]]]],
        [#align(end)[
          #block(width: 60pt)[
            #stack(spacing: 5pt)[
              #align(center)[#text(size: 10pt)[Repository]]
            ][
              #qr-code(error-correction: "H", "git.samantha42.xyz", color: FeatureColor, width: 60pt)
        ]]]],
      )
      

    ]
  ]
)
