.cv{margin-block:var(--space-content-top) var(--space-content-bottom)}.cv-prose{display:contents}.cv .portrait{float:right;margin:0 0 var(--space) var(--space)}.cv .portrait img{width:var(--cv-portrait-size);height:var(--cv-portrait-size);object-fit:cover;filter:var(--cv-portrait-filter);transition:filter var(--speed-slow);border-radius:50%;transform:scaleX(-1)}.cv .portrait img:hover{filter:none}.cv .portrait+h1{margin-top:0}.cv h1{font-size:var(--font-size-display);font-weight:var(--font-weight-medium);line-height:var(--line-height-display);letter-spacing:var(--tracking-display)}.cv h1+p{margin-top:var(--space)}.cv h1+p+.technologies{margin-top:var(--space-tight)}.cv h2,.cv h3,.cv h4{font-size:var(--font-size-h1);line-height:var(--line-height-h1);margin:0;font-weight:400}.cv h2,.cv .projects-label{margin-top:calc(var(--space-section) * 1.5);font-size:var(--font-size-small);line-height:var(--line-height-small);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted)}.cv h3{margin-top:var(--space-job);font-size:var(--font-size-company);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-company)}.cv h2+.job-intro>h3:first-child{margin-top:var(--space)}.cv h4{margin-top:calc(var(--space) * 2);font-size:var(--font-size-base)}.cv .job-meta{margin-top:calc(var(--space-tight) * 2);font-size:var(--font-size-small);line-height:var(--line-height-small);color:var(--color-muted)}.cv strong{font-weight:400}.cv .technologies{font-size:var(--font-size-small);line-height:var(--line-height-small);color:var(--color-muted)}.cv .technologies>strong:first-child{color:var(--color-fg)}.cv p,.cv ul{margin:var(--space) 0;text-wrap:pretty}.cv ul{padding-left:1.5em}:where(.cv) img{width:100%;max-width:var(--cv-image-width);border:var(--border-width) solid var(--color-border);border-radius:var(--image-radius);height:auto;display:block}.cv .projects-label{margin:calc(var(--space) * 2) 0 var(--space)}.projects{grid-template-columns:repeat(auto-fill, minmax(var(--cv-card-min), 1fr));gap:var(--space);margin:calc(var(--space) * 2) 0;display:grid}@media (width<=600px){.projects{gap:calc(var(--space) / 2);grid-template-columns:repeat(2,minmax(0,1fr))}}.projects-label+.projects{margin-top:0}.cv .project{margin:0}.project button{gap:calc(var(--space) / 2);width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.project-name{padding-inline:calc(var(--thumb-padding) + var(--border-width));font-size:var(--font-size-small);line-height:var(--line-height-small)}.project button:focus-visible{outline:var(--border-width) solid currentcolor;outline-offset:4px;border-radius:var(--image-radius)}.cv .project img{max-width:100%;aspect-ratio:var(--cv-logo-ratio);object-fit:cover}.project .project-tile{width:100%;aspect-ratio:var(--cv-logo-ratio);font-size:var(--font-size-h1);letter-spacing:var(--tracking-label);color:var(--color-tile-fg);background:var(--color-tile-bg);place-items:center;display:grid}.project-dialog{width:min(var(--cv-dialog-width), 100% - var(--page-padding) * 2);max-height:calc(100% - var(--page-padding) * 2);padding:var(--page-padding);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-fg);background:var(--color-bg);border:var(--border-width) solid var(--color-border);border-radius:var(--image-radius)}.project-dialog::backdrop{background:var(--color-backdrop)}html:has(.cv){scrollbar-gutter:stable}.cv .project-dialog h4{margin:0 0 var(--space);padding-right:calc(var(--space) * 2);font-size:var(--font-size-h1)}.project-dialog-content>.cv-prose>:last-child{margin-bottom:0}@media (prefers-reduced-motion:no-preference){.project-dialog[open]{animation:dialog-in var(--speed) ease-out}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)}}.cv .icon-external{display:none}.cv .project-dialog .icon-external{width:var(--icon-size-small);height:var(--icon-size-small);margin-left:var(--icon-gap-small);vertical-align:-.05em;display:inline-block}.frame .project-tile{border-radius:calc(var(--image-radius) - var(--thumb-padding));border:0}.project button:hover .frame,.project button:focus-visible .frame{transform:translateY(var(--lift));border-color:currentColor}@media (prefers-reduced-motion:reduce){.project button:hover .frame,.project button:focus-visible .frame{transform:none}}.project-dialog-content>.photo-zoom{max-width:calc(var(--cv-image-width) + (var(--thumb-padding) + var(--border-width)) * 2)}.project-dialog-content>.photo-zoom img{max-width:100%}.project-dialog:focus{outline:none}.project-video{aspect-ratio:16/9;border:var(--border-width) solid var(--color-border);border-radius:var(--image-radius);width:100%;display:block}.project-dialog-content>.video-play{cursor:pointer;max-width:none;position:relative}.project-dialog-content>.video-play img{max-width:none}.projects-print,.print-contact{display:none}@media print{.cv{margin:0}.cv .portrait{width:var(--cv-print-rail);margin:0 0 0 var(--cv-print-gutter)}.cv .portrait img{width:var(--cv-print-portrait-size);height:var(--cv-print-portrait-size);border:0;margin-left:auto}.cv h1+p{margin-top:calc(var(--space) * 1.5)}.print-contact{display:block}.cv .print-contact{margin-top:var(--space-tight);font-size:var(--font-size-small);line-height:var(--line-height-small);color:var(--color-muted)}.cv h2{clear:both;margin-top:var(--space-section)}.job-intro{grid-template-columns:minmax(0, 1fr) var(--cv-print-rail);column-gap:var(--cv-print-gutter);margin-top:var(--space-job);padding-top:calc(var(--space) * 1.5);border-top:var(--border-width) solid var(--color-fg);break-inside:avoid;align-items:start;display:grid}.cv h2+.job-intro{margin-top:var(--space);border-top:0;padding-top:0}.cv .job-intro>*{margin:var(--space) 0 0;grid-column:1}.cv .job-intro>h3{grid-row:1;align-self:baseline;margin:0}.cv .job-intro>.job-meta{text-align:right;font-size:var(--font-size-small);line-height:var(--line-height-small);color:var(--color-muted);grid-area:1/1/auto/-1;place-self:baseline end;margin:0}.job-role{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-fg)}.job-dates{white-space:nowrap}.cv .technologies{font-size:var(--font-size-print-technologies);color:var(--color-fg)}.cv .technologies>strong:first-child{color:var(--color-muted)}.projects,.project-dialog,.photo-dialog{display:none}.projects-print{display:block}.cv .projects-label{margin:calc(var(--space) * 2.5) 0 0;break-after:avoid}.project-print{grid-template-columns:minmax(0, 1fr) var(--cv-print-rail);column-gap:var(--cv-print-gutter);margin-top:calc(var(--space) * 2);break-inside:avoid;align-items:start;display:grid}.project-print:first-child{margin-top:calc(var(--space) * .75)}.cv .project-print h4{font-size:var(--font-size-print-project);line-height:var(--line-height-h1);font-weight:var(--font-weight-medium);margin:0}.cv .print-text p,.cv .print-text ul{margin:calc(var(--space) * .6) 0 0}.print-text{grid-area:1/1}.print-qrs{gap:calc(var(--space) * 1.75);grid-area:1/2;display:grid}.print-qr{align-items:center;gap:var(--cv-print-qr-label-gap);font-size:var(--font-size-print-caption);line-height:var(--line-height-small);color:var(--color-muted);-webkit-hyphens:none;hyphens:none;margin:0;display:flex}.print-domain{white-space:nowrap}.cv .print-qr img{width:var(--cv-print-qr-size);height:var(--cv-print-qr-size);border:0;border-radius:0;flex:none}.cv{page:cv}}@page cv{@bottom-left{content:"Michal Landsman · Curriculum Vitae"}}
