*,:before,:after{box-sizing:border-box;outline:0 solid #0000;margin:0;padding:0}:not(dialog){margin:0}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth;interpolate-size:allow-keywords}}body{-webkit-font-smoothing:antialiased;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty;margin:0}p+p{margin-block:1lh}h1,h2,h3,h4,h5,h6{text-wrap:balance}@font-face{font-family:"Exo 2";src:url(/portfolio/assets/Exo2-CscYEFJB.woff2)format("woff2"),url(/portfolio/assets/Exo2-BLHYPdp6.woff)format("woff"),url(/portfolio/assets/Exo2-DzF8xoSn.ttf)format("ttf");font-weight:400;font-style:normal;font-display:swap}:root,html,body{--font-main:"Exo 2";font-family:var(--font-main), system-ui, -apple-system, arial}:root{--font-family-main:"Exo 2";--size-1:12px;--size-2:16px;--size-3:18px;--size-4:24px;--size-5:30px;--size-6:36px;--size-7:36px;--size-8:42px;--size-9:48px;--space-025:.25rem;--space-050:.5rem;--space-075:.75rem;--space-100:1rem;--space-150:1.5rem;--space-200:2rem;--space-300:3rem;--space-400:4rem;--space-600:6rem;--space-800:8rem;--solid-1:solid 1px;--solid-2:solid 2px;--solid-3:solid 3px;--solid-4:solid 4px;--solid-5:solid 5px;--dashed:dashed 4px;--radius-1:.25rem;--radius-2:.5rem;--radius-3:.75rem;--radius-4:1rem;--radius-5:2rem;--shadow-low:0 .6px .8px hsl(var(--shadow-color) / .4);--shadow-medium:0 1px 2px -1px hsl(var(--shadow-color) / .2), 0 6px 9px -2px hsl(var(--shadow-color) / .2);--shadow-high:0 12px 16px -1px hsl(var(--shadow-color) / .12), 0 18px 28px -2px hsl(var(--shadow-color) / .14), 0 24px 46px -3px hsl(var(--shadow-color) / .16);--shadow-with-color:0 1px 20px 5px var(--primary-color);--shadow-inset-light:inset 0 -1px 10px 1px var(--bg-color-1);--shadow-inset-color:inset 0 -1px 10px 1px var(--secondary-color);--transition-1:.25s ease-in-out;--transition-2:.5s ease-out;--transition-3:.75s ease;--transition-4:1s ease;--xs:380px;--sm:570px;--md:760px;--lg:990px;--xl:1200px;--xxl:1440px}:root[data-theme=light]{--bg-color-1:#f3f6f9;--bg-color-2:#e0e7f0;--bg-color-3:#d0dae7;--bg-color-4:#c0cede;--bg-color-5:#b0c0d4;--bg-color-6:#a0b2c9;--bg-color-7:#8299b4;--bg-color-8:#6680a0;--bg-color-9:#466484;--bg-color-blur:#f3f6f999;--bg-color-overlay:#4574;--tx-color-1:#123;--tx-color-2:#456;--tx-color-3:#789;--tx-cut-out:#fff;--tx-light:#fff;--primary-color:#07e;--secondary-color:#1bf;--focus-color:#8fbff8;--light-color:#d7e7f7;--dark-color:#0c5cc0;--glass-effect-color:#f2f4f6;--shadow-color:212deg 17% 50%}:root[data-theme=light] ::-webkit-scrollbar{background:var(--bg-color-4);width:10px}:root[data-theme=light] ::-webkit-scrollbar-thumb{background:var(--bg-color-6);border-radius:4px}:root[data-theme=light] ::selection{background-color:var(--primary-color);color:#fff}:root[data-theme=dark]{--bg-color-1:#0d0f14;--bg-color-2:#13161c;--bg-color-3:#1a1d24;--bg-color-4:#252930;--bg-color-5:#363b44;--bg-color-6:#5d6370;--bg-color-7:#898f9c;--bg-color-8:#a9aeb8;--bg-color-9:#caced4;--bg-color-blur:#13161c90;--bg-color-overlay:#0d0f14af;--tx-color-1:#f2f4f6;--tx-color-2:#a2b4c6;--tx-color-3:#7a8b9c;--tx-cut-out:#000;--tx-dark:#000;--primary-color:#0ef;--secondary-color:#1bf;--focus-color:#133d50;--light-color:#122430;--dark-color:#0be;--glass-effect-color:#f2f4f6;--shadow-color:223deg 36% 0%}:root[data-theme=dark] ::-webkit-scrollbar{background:var(--bg-color-3);width:10px}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--bg-color-2);border-radius:4px}:root[data-theme=dark] ::selection{background-color:var(--primary-color);color:#000}.fx{display:flex}.fx-row{flex-direction:row;display:flex}.fx-col{flex-direction:column;display:flex}.fx-wrp{flex-wrap:wrap;display:flex}.fx-ali_c{align-items:center;display:flex}.fx-ali_s{align-items:flex-start;display:flex}.fx-ali_e{align-items:flex-end;display:flex}.fx-jsc_c{justify-content:center;display:flex}.fx-jsc_se{justify-content:space-evenly;display:flex}.fx-jsc_sa{justify-content:space-around;display:flex}.fx-jsc_sb{justify-content:space-between;display:flex}.fx-jsc_s{justify-content:flex-start;display:flex}.fx-jsc_e{justify-content:flex-end;display:flex}.fx-ctr{justify-content:center;align-items:center;display:flex}.gap-1{gap:calc(var(--space-025) * 1)}.gap-2{gap:calc(var(--space-025) * 2)}.gap-3{gap:calc(var(--space-025) * 3)}.gap-4{gap:calc(var(--space-050) * 4)}.gap-5{gap:calc(var(--space-050) * 5)}.gap-6{gap:calc(var(--space-050) * 6)}.gap-7{gap:calc(var(--space-075) * 7)}.gap-8{gap:calc(var(--space-075) * 8)}.gap-9{gap:calc(var(--space-075) * 9)}.txt-center{text-align:center}.list-none{list-style:none}.h-full{height:100%}.h-dfull{height:100dvh}.w-full{width:100%}[show],[✏️]{background-color:#f503;border:1px solid #f50}:is([show],[✏️]) *{background-color:#f503;border:1px dashed #f50}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--photo-size:200px;--glass-effect-color:#f2f4f6}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--primary-bg-color:var(--bg-color-1);--secondary-bg-color:var(--light-color);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--primary-bg-color:var(--bg-color-3);--secondary-bg-color:var(--bg-color-1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background-color:var(--bg-color-1);width:100%;height:100%;color:var(--tx-color-1)}svg{width:var(--size-5);height:var(--size-5);color:var(--tx-color-3);transition:color var(--transition-2)}svg:hover{color:var(--tx-color-1)}svg.svg-static{color:var(--bg-color-6);width:var(--size-5);height:var(--size-5)}.section{max-width:var(--xl);padding-block:var(--space-600);margin:0 auto}.section[id=experience]{padding-bottom:var(--space-300)}.section-heading h2{text-align:center;font-size:var(--size-6);color:var(--lightningcss-light,var(--tx-color-2))var(--lightningcss-dark,var(--tx-color-1));margin-block:var(--space-075) var(--space-025)}@media (width<=760px){.section-heading h2{font-size:var(--size-5)}}.section-heading p{max-width:var(--sm);color:var(--tx-color-3);font-size:var(--size-2);line-height:1.2}@media (width<=760px){.section-heading p{font-size:var(--size-1)}}:root{--navigation-drawer-width:clamp(16rem, 55vw, 20rem);--navigation-drawer-offset:calc(0px - var(--navigation-drawer-width));--navigation-transition-duration:.3s;--navigation-transition-timing:cubic-bezier(.4, 0, .2, 1)}html{scrollbar-gutter:stable;max-width:100%;overflow-x:clip}body{max-width:100%;overflow-x:clip}html.has-navigation-open,body.has-navigation-open{overscroll-behavior:none;overflow:hidden}@scope(app-root){:scope{width:100%;display:block;overflow-x:clip}:scope>main,:scope>footer,:scope>app-footer{transition:transform var(--navigation-transition-duration) var(--navigation-transition-timing);will-change:transform;transform:translate(0,0)}:scope[navigation-open]>main,:scope[navigation-open]>footer,:scope[navigation-open]>app-footer{transform:translate3d(var(--navigation-drawer-offset), 0, 0);pointer-events:none;-webkit-user-select:none;user-select:none}@media (width>770px){:scope[navigation-open]>main,:scope[navigation-open]>footer,:scope[navigation-open]>app-footer{pointer-events:auto;-webkit-user-select:auto;user-select:auto;transform:none}}@media (prefers-reduced-motion:reduce){:scope>main,:scope>footer,:scope>app-footer{transition:none}}}@scope(app-header){:scope{z-index:4;pointer-events:none;border-bottom:var(--solid-1) transparent;width:100%;padding-top:var(--space-100);background-color:#0000;animation:linear both glass-effect-menu;animation-timeline:scroll();animation-range:0 100px;display:block;position:fixed;inset:0 0 auto}@keyframes glass-effect-menu{to{border-bottom:var(--solid-1) var(--bg-color-3);background-color:var(--bg-color-blur);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding-top:0}}.app-header__bar{width:100%;max-width:var(--xl);z-index:3;padding:var(--space-100) var(--space-200);pointer-events:none;transition:transform var(--navigation-transition-duration) var(--navigation-transition-timing);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;margin-inline:auto;display:grid;position:relative;transform:translate(0,0)}.app-header__brand,.app-header__desktop-navigation,.app-header__desktop-theme,.app-header__menu-button{pointer-events:auto}.app-header__brand{justify-self:start;align-items:center;display:flex}.app-header__logo[aria-label=Gabriel\ Baquerizo]{width:var(--size-6);max-width:max-content;height:var(--size-6);max-height:max-content;fill:var(--tx-color-2);-webkit-user-select:none;user-select:none;display:block}.app-header__desktop-navigation{justify-self:center}.app-header__desktop-list,.app-header__drawer-list{margin:0;padding:0;list-style:none}.app-header__desktop-list{justify-content:center;align-items:center;gap:var(--space-300,3rem);display:flex}.app-header__desktop-theme{justify-self:end;align-items:center;display:flex}.app-header__navigation-link{padding-block:var(--space-025);color:var(--tx-color-2);font-size:var(--size-3,1rem);transition:color var(--transition-2,.2s ease), font-weight var(--transition-2,.2s ease);font-weight:400;line-height:1.4;text-decoration:none;display:inline-block;position:relative}.app-header__navigation-link:before{content:"";transform-origin:100% 100%;width:100%;height:1.5px;transition:transform var(--transition-1,.18s ease);background:currentColor;position:absolute;bottom:0;left:0;transform:scaleX(0)}.app-header__navigation-link:hover{color:var(--tx-color-1)}.app-header__navigation-link:hover:before{transform-origin:0 100%;transform:scaleX(1)}.app-header__navigation-link.is-active{color:var(--tx-color-1);font-weight:700}.app-header__menu-button{width:var(--size-5);height:var(--size-5);border:var(--solid-1) transparent;border-radius:var(--radius-2);color:var(--tx-color-2);cursor:pointer;touch-action:manipulation;background:0 0;flex-direction:column;justify-content:center;justify-self:end;align-items:center;gap:.3rem;padding:0;display:none}.app-header__menu-button:hover{color:var(--tx-color-1)}.app-header__menu-button:focus-visible{outline:var(--solid-4) var(--focus-color);outline-offset:2px}.app-header__menu-button[aria-expanded=true]{color:var(--tx-color-2)}.app-header__menu-line{border-radius:var(--radius-5);transform-origin:50%;width:1.75rem;height:2px;transition:transform var(--navigation-transition-duration) var(--navigation-transition-timing), opacity var(--navigation-transition-duration) var(--navigation-transition-timing);background:currentColor;display:block}.app-header__overlay{z-index:1;background:var(--bg-color-overlay);opacity:0;visibility:hidden;pointer-events:none;overscroll-behavior:none;touch-action:none;height:100dvh;transition:opacity var(--navigation-transition-duration) var(--navigation-transition-timing), visibility 0s linear var(--navigation-transition-duration);border:0;margin:0;padding:0;position:fixed;inset:0}.app-header__drawer{width:var(--navigation-drawer-width);z-index:2;height:100vh;padding:var(--space-100) var(--space-200) var(--space-150);border-left:var(--solid-1) var(--bg-color-5);background:var(--bg-color-2) radial-gradient(at left, var(--primary-bg-color) 0%, var(--secondary-bg-color) 70%);color:var(--tx-color-2);overscroll-behavior:none;visibility:hidden;pointer-events:none;will-change:transform;transition:transform var(--navigation-transition-duration) var(--navigation-transition-timing), visibility 0s linear var(--navigation-transition-duration);flex-direction:column;display:flex;position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(100%)}.app-header__drawer-theme{justify-content:flex-end;align-items:center;min-height:2.75rem;display:flex}.app-header__drawer-navigation{flex:1;align-items:center;min-height:0;display:grid}.app-header__drawer-list{align-items:flex-start;gap:var(--space-200);flex-direction:column;display:flex}.app-header__drawer-list .app-header__navigation-link{font-size:var(--size-4)}.app-header__social-links{justify-content:center;align-items:center;gap:var(--space-150);display:flex}:scope[navigation-open] .app-header__bar{transform:translate3d(var(--navigation-drawer-offset), 0, 0)}:scope[navigation-open] .app-header__overlay{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}:scope[navigation-open] .app-header__drawer{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0,0)}:scope[navigation-open] .app-header__menu-line:first-child{transform:translateY(.44rem)rotate(45deg)}:scope[navigation-open] .app-header__menu-line:nth-child(2){opacity:0}:scope[navigation-open] .app-header__menu-line:nth-child(3){transform:translateY(-.44rem)rotate(-45deg)}@media (width<=990px){.app-header__bar{padding:var(--space-150,1.5rem)}}@media (width<=770px){:scope{padding-top:0}.app-header__bar{min-height:4.5rem;padding:var(--space-100,1rem);grid-template-columns:minmax(0,1fr) auto}.app-header__desktop-navigation,.app-header__desktop-theme{display:none}.app-header__menu-button{display:flex}.app-header__logo{width:var(--size-5)}}@media (width>770px){.app-header__drawer,.app-header__overlay{display:none}:scope[navigation-open] .app-header__bar{transform:none}}@media (prefers-reduced-motion:reduce){.app-header__bar,.app-header__overlay,.app-header__drawer,.app-header__menu-line{transition:none}}}@scope(ui-theme-toggle){:scope{display:inline-block}.theme-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;width:max-content}.theme-toggle input[type=checkbox]{display:none}.theme-toggle svg{width:var(--size-5);transform:rotate(-90deg)}.theme-toggle__icon--dark{display:none}.theme-toggle__icon--light{transform-origin:50%;animation:theme-toggle-rotate var(--transition-2);display:block}.theme-toggle:has(input:checked) .theme-toggle__icon--light{display:none}.theme-toggle:has(input:checked) .theme-toggle__icon--dark{transform-origin:50%;animation:theme-toggle-rotate var(--transition-2);display:block}@keyframes theme-toggle-rotate{0%{transform:rotate(0)}25%{transform:rotate(-30deg)}}}@scope(ui-social-media){:scope{display:inline-block}svg{width:1.6rem;height:1.6rem}nav a{color:var(--tx-color-3);padding:var(--space-050);border-radius:var(--radius-5);transition:background var(--transition-1), color var(--transition-1)}nav a[alt=linkedin]:hover{background-color:#0a66c2}nav a[alt=github]:hover{background-color:#010409}nav a[alt=dribbble]:hover{background-color:#e04a82}nav a[alt=pinterest]:hover{background-color:#e60023}nav a:focus-visible{outline:var(--solid-4) var(--focus-color);outline-offset:2px}}@scope(app-footer){:scope{background:var(--bg-color-3);border-top:var(--solid-1) var(--bg-color-4);width:100%;display:inline-block}footer{max-width:var(--xl);padding-inline:var(--space-200);font-size:var(--size-2);margin-inline:auto;margin-block:var(--space-150);flex-direction:row}@media (width<=760px){footer{text-align:center;gap:var(--space-025);margin-block:var(--space-100);flex-direction:column}}}@scope(app-hero){:scope{width:100%;height:100dvh;padding:var(--space-200);padding-top:var(--space-800);background:var(--bg-color-1) radial-gradient(at center top, var(--primary-bg-color) 0%, var(--secondary-bg-color) 70%);flex-direction:column;justify-content:center;display:flex}@media (width<=1200px){:scope{padding-top:var(--space-600)}}@media (width<=770px){:scope{padding:var(--space-100);padding-top:var(--space-200)}}.hero-photo{width:30vh;max-width:var(--photo-size);border-top:var(--solid-1) var(--lightningcss-light,var(--tx-cut-out))var(--lightningcss-dark,var(--bg-color-4));height:auto;box-shadow:var(--shadow-low), var(--shadow-medium);border-radius:100%}.hero-heading{width:100%;margin-block:var(--space-100)}.hero-heading h1{color:var(--tx-color-2);font-size:var(--size-5);font-weight:400}@media (width<=990px){.hero-heading h1{font-size:var(--size-4)}}.hero-heading p{color:var(--tx-color-2);font-size:var(--size-9);font-weight:700}@media (width<=990px){.hero-heading p{font-size:var(--size-7)}}.hero-heading .first-word .char-face{color:#0000;background:linear-gradient(to bottom, var(--secondary-color), var(--primary-color));-webkit-background-clip:text;background-clip:text}@media (width<=570px){.hero-heading{margin-block:var(--space-200) var(--space-400)}}.scroll-animation{width:var(--size-5);margin-top:var(--space-200);animation:2s infinite scroll-down-arrow}@media (width<=990px){.scroll-animation{margin-top:var(--space-100)}}@keyframes scroll-down-arrow{0%,to{opacity:1;transform:translateY(0)}33%{opacity:0;transform:translateY(1rem)}66%{opacity:0;transform:translateY(-1rem)}}}.slot-text{white-space:pre;align-items:baseline;display:inline-flex}.char-slot{flex:none;justify-content:center;align-items:baseline;line-height:1.3;display:inline-flex;position:relative;overflow:visible clip}.char-slot.is-resizing{overflow-x:clip}.char-sizer{visibility:hidden;white-space:pre}.char-face{white-space:pre;will-change:transform;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@scope(app-projects){:scope{background:var(--bg-color-1);width:100%;padding-inline:var(--space-200);display:inline-block}@media (width<=770px){:scope{padding-inline:var(--space-100)}}}@scope(ui-eyebrow){:scope{align-items:center;gap:var(--space-050);padding:var(--space-050) var(--space-075);color:var(--primary-color);font-size:var(--size-1);letter-spacing:1px;background:var(--light-color);border:var(--solid-1) var(--focus-color);border-radius:var(--radius-4);font-weight:600;line-height:1.2;display:inline-flex}svg{color:var(--primary-color);flex:0 0 1lh;width:1lh;height:1lh}svg:hover{color:var(--primary-color)}span{line-height:inherit}}@scope(app-project-gallery){:scope{padding-inline:var(--space-200);display:inline-block}.project-gallery{box-sizing:border-box;width:100%}.project-gallery__filters{gap:var(--space-050);margin-bottom:var(--space-200);align-items:center;display:flex}.project-gallery__filter{cursor:pointer;display:inline-flex;position:relative}.project-gallery__filter-input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.project-gallery__filter-label{padding:var(--space-025) var(--space-100);border:var(--solid-1) var(--bg-color-4);border-radius:var(--radius-3);background:var(--bg-color-2);color:var(--tx-color-2);font-size:var(--size-3);cursor:pointer;transition:color var(--transition-1), background-color var(--transition-1), border-color var(--transition-1)}.project-gallery__filter:hover .project-gallery__filter-label{border-color:var(--primary-color);color:var(--primary-color)}.project-gallery__filter-input:checked+.project-gallery__filter-label{border-color:var(--primary-color);background:var(--primary-color);color:var(--tx-cut-out)}.project-gallery__filter-input:checked+.project-gallery__filter-label:hover{color:var(--tx-cut-out)}.project-gallery__filter-input:focus-visible+.project-gallery__filter-label{outline:var(--solid-4) var(--focus-color);outline-offset:2px}.project-gallery__grid{gap:var(--space-200);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-gallery__card{outline:var(--solid-1) var(--bg-color-4);border-radius:var(--radius-4);background:var(--bg-color-2);cursor:pointer;min-width:0;transition:outline-color var(--transition-1);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.project-gallery__card:hover{outline-color:var(--primary-color)}.project-gallery__card:hover .project-gallery__title{color:var(--primary-color)}.project-gallery__card:focus-visible{outline:var(--solid-4) var(--focus-color);outline-offset:2px}.project-gallery__picture{padding:var(--space-050);aspect-ratio:16/10;background:var(--bg-color-1);overflow:hidden}.project-gallery__image{border-radius:var(--radius-3);object-fit:cover;width:100%;height:100%;display:block}.project-gallery__content{padding:var(--space-100);flex-direction:column;flex:1;display:flex}.project-gallery__title{margin-bottom:var(--space-075);color:var(--lightningcss-light,var(--tx-color-2))var(--lightningcss-dark,var(--tx-color-1));font-size:var(--size-4);transition:color var(--transition-1);font-weight:lighter;line-height:1.2}.project-gallery__description{margin-bottom:var(--space-100);color:var(--lightningcss-light,var(--tx-color-3))var(--lightningcss-dark,var(--tx-color-2));font-size:var(--size-2);line-height:1.5}.project-gallery__tech{gap:var(--space-025) var(--space-025);flex-wrap:wrap;margin-top:auto;display:flex}.project-gallery__badge{font-size:var(--size-1);color:var(--primary-color);padding:var(--space-025) var(--space-050);border:var(--solid-1) var(--focus-color);border-radius:var(--radius-4);background:var(--light-color);line-height:1}:is(.project-gallery:has(.project-gallery__filter-input[value=frontend]:checked) .project-gallery__card:not([data-project-category=frontend]),.project-gallery:has(.project-gallery__filter-input[value=backend]:checked) .project-gallery__card:not([data-project-category=backend]),.project-gallery:has(.project-gallery__filter-input[value=ui-ux]:checked) .project-gallery__card:not([data-project-category=ui-ux])){display:none}@media (width<=1024px){.project-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.project-gallery__grid{gap:var(--space-100);grid-template-columns:minmax(0,1fr)}:scope{padding-inline:0}.project-gallery__filters{gap:var(--space-050);margin-bottom:var(--space-100)}.project-gallery__filter-label{width:100%;font-size:var(--size-2);padding:var(--space-025) var(--space-100)}.project-gallery__card{border-radius:var(--radius-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:13rem;display:grid}.project-gallery__picture{aspect-ratio:auto;box-sizing:border-box;height:100%}.project-gallery__content{min-width:0;padding:var(--space-100)}.project-gallery__title{font-size:1.125rem}.project-gallery__description{margin-bottom:var(--space-075);font-size:14px;line-height:1.4}.project-gallery__tech{gap:.375rem}}}@scope(app-skills){:scope{background:var(--bg-color-1);width:100%;padding-inline:var(--space-200);display:inline-block}@media (width<=770px){:scope{padding-inline:var(--space-100)}}}@scope(app-skills-matrix){:scope{width:100%;padding-inline:var(--space-200);display:inline-block}.skills-matrix__groups,.skills-matrix__technologies{margin:0;width:100%;margin-inline:auto;padding:0;list-style:none}.skills-matrix__group{gap:var(--space-200);padding-block:var(--space-100);grid-template-columns:minmax(10rem,280px) minmax(0,1fr);align-items:start;display:grid}.skills-matrix__group[data-group=software-architecture]{grid-template-columns:minmax(10rem,320px) minmax(0,1fr)}.skills-matrix__group:first-child{padding-top:0}.skills-matrix__group:last-child{padding-bottom:0}.skills-matrix__group:not(:last-child){border-bottom:var(--solid-1) var(--lightningcss-light,var(--bg-color-5))var(--lightningcss-dark,var(--bg-color-4))}.skills-matrix__heading{align-items:center;height:100%;display:flex}.skills-matrix__heading h2{width:min-content}.skills-matrix__title{width:max-content;color:var(--tx-color-2);font-size:var(--size-5);margin:0;font-weight:400;line-height:1.2}.skills-matrix__technologies{flex-wrap:wrap;justify-content:flex-end;min-width:0;display:flex}.skills-matrix__technology{white-space:nowrap;align-items:center;gap:var(--space-025);min-width:132px;color:var(--tx-color-2);padding:var(--space-025) var(--space-100) var(--space-025) var(--space-025);border-radius:var(--radius-5);background:var(--lightningcss-light,var(--bg-color-2))var(--lightningcss-dark,var(--bg-color-3));border-top:var(--solid-1) var(--lightningcss-light,var(--tx-cut-out))var(--lightningcss-dark,var(--bg-color-4));box-shadow:var(--shadow-low), var(--shadow-medium);display:inline-flex}.skills-matrix__technology-icon{max-width:var(--size-5);height:var(--size-5);border-radius:var(--radius-5);background:#fff;padding-inline:6px;display:inline-block}.skills-matrix__technology-icon img{width:inherit;height:inherit;aspect-ratio:1;object-fit:contain;display:block}.skills-matrix__technology-icon:has(img[src*=astro]){background:#0d1323}.skills-matrix__technology-name{width:100%;font-size:var(--size-2);text-align:center;font-weight:400;line-height:1}@media (width<=1024px){.skills-matrix__group{gap:var(--space-100);grid-template-columns:minmax(10rem,13rem) minmax(0,1fr)}}@media (width<=770px){:scope{padding-inline:0}.skills-matrix__group{gap:var(--space-200);padding-block:var(--space-150);flex-direction:column;display:flex}.skills-matrix__group:not(:last-child){border-bottom:0}.skills-matrix__heading{align-items:center;gap:var(--space-100);width:100%;display:flex}.skills-matrix__heading:after{content:"";min-width:var(--space-200);border-top:var(--solid-1) var(--lightningcss-light,var(--bg-color-5))var(--lightningcss-dark,var(--bg-color-4));flex:1}.skills-matrix__title{width:max-content;font-size:var(--size-4);flex:0 auto}.skills-matrix__technologies{flex-direction:row-reverse;justify-content:flex-end;width:100%}.skills-matrix__technology{min-width:100px;padding-right:var(--space-075)}.skills-matrix__technology-icon{width:var(--size-5);height:var(--size-4)}.skills-matrix__technology-name{font-size:var(--size-1);padding-right:var(--space-025)}}}@scope(app-experience){:scope{background:var(--bg-color-2);width:100%;padding-inline:var(--space-200);display:inline-block}@media (width<=770px){:scope{padding-inline:var(--space-100)}}}@scope(app-time-line){:scope{display:block}.time-line{width:100%;padding-inline:var(--space-400);color:var(--tx-color-1)}.time-line__list{width:min(100%,1200px);margin-inline:auto;position:relative}.time-line__list:before{background-color:var(--bg-color-4);content:"";border-radius:var(--radius-1);width:4px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.time-line__item{grid-template-columns:minmax(0,1fr) 3rem minmax(0,1fr);align-items:start;display:grid;position:relative}.time-line__marker{z-index:1;border:var(--solid-4) var(--bg-color-2);border-radius:var(--radius-5);background-color:var(--primary-color);outline:var(--solid-4) var(--bg-color-4);grid-area:1/2;place-self:start center;width:1rem;height:1rem;margin-top:2.5rem;position:relative}.time-line__card{border-top:var(--solid-1) var(--lightningcss-light,var(--tx-cut-out))var(--lightningcss-dark,var(--bg-color-4));border-radius:var(--radius-4);background:var(--lightningcss-light,var(--bg-color-1))var(--lightningcss-dark,var(--bg-color-3));width:100%;box-shadow:var(--shadow-low), var(--shadow-medium);padding:2rem}.time-line__item--right .time-line__card{grid-area:1/3}.time-line__item--left .time-line__card{grid-area:1/1}.time-line__period{border-top:var(--solid-1) var(--lightningcss-light,var(--tx-cut-out))var(--lightningcss-dark,var(--bg-color-4));border-radius:var(--radius-4);background:var(--lightningcss-light,var(--bg-color-1))var(--lightningcss-dark,var(--bg-color-3));white-space:nowrap;width:max-content;max-width:100%;box-shadow:var(--shadow-low), var(--shadow-medium);grid-row:1;align-self:start;margin-top:1.6rem;padding:.65rem 1.25rem;font-size:.95rem;line-height:1.4}.time-line__item--right .time-line__period{grid-column:1;justify-self:end}.time-line__item--left .time-line__period{grid-column:3;justify-self:start}.time-line__header{margin-bottom:1.5rem}.time-line__title{margin-bottom:var(--space-050);text-transform:uppercase;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:lighter}.time-line__company{color:var(--primary-color);margin:0}.time-line__description{margin:0}.time-line__achievements{margin-top:1.75rem}.time-line__achievements-title{margin-bottom:var(--space-075);color:var(--tx-color-3);font-size:1rem}.time-line__achievements-list{gap:.5rem;margin:0;padding-left:1.25rem;display:grid}.time-line__achievement{padding-left:.25rem;line-height:1.6}.time-line__achievement::marker{color:var(--bg-color-6)}@media (width<=1200px){.time-line{padding-inline:var(--space-100)}}@media (width<=770px){.time-line__list:before{left:.5rem}.time-line__item{grid-template-columns:1rem minmax(0,1fr);gap:1rem}.time-line__marker{grid-area:1/1;margin-top:.8rem}.time-line__item--right .time-line__card,.time-line__item--left .time-line__card{grid-area:2/2}.time-line__item--right .time-line__period,.time-line__item--left .time-line__period{grid-area:1/2;justify-self:start;margin-top:0;margin-bottom:1rem}.time-line__card{padding:1.5rem}}}@scope(app-contact){:scope{background:var(--bg-color-2);width:100%;padding-inline:var(--space-200);display:inline-block}@media (width<=770px){:scope{padding-inline:var(--space-100)}}}@scope(app-contact-me){:scope{width:100%;display:inline-block}.contact-me{gap:var(--space-600);width:100%;padding-inline:var(--space-800);grid-template-columns:minmax(0,1fr) minmax(320px,1fr);display:grid}.contact-me__content{align-items:center;display:flex}.contact-me__description{max-width:34rem;color:var(--tx-color-2);margin:0;font-size:1rem}.contact-me__list{flex-direction:column;list-style:none;display:flex}.contact-me__item{padding:var(--space-100);transition:background-color var(--transition-1);border-radius:.75rem;align-items:center;gap:1rem;display:flex}.contact-me__item:hover{background-color:var(--light-color)}.contact-me__item:hover svg{color:var(--primary-color)}.contact-me__item:hover .contact-me__icon{outline:var(--solid-1) var(--focus-color)}.contact-me__icon{padding:var(--space-075);outline:var(--solid-1) transparent;border-radius:var(--radius-3);background:var(--lightningcss-light,var(--bg-color-1))var(--lightningcss-dark,var(--bg-color-3));transition:outline-color var(--transition-1);border-top:var(--solid-1) var(--lightningcss-light,var(--tx-cut-out))var(--lightningcss-dark,var(--bg-color-4));box-shadow:var(--shadow-medium)}.contact-me__icon svg{width:var(--size-4);height:var(--size-4);color:var(--tx-color-3);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.contact-me__info{flex-direction:column;justify-content:space-between;height:100%;display:flex}.contact-me__label{color:var(--tx-color-3);font-size:var(--size-2)}.contact-me__value,.contact-me__link{color:var(--tx-color-1);font-size:var(--size-2);overflow-wrap:anywhere;text-decoration:none}.contact-me__link:hover{color:var(--primary-color);text-decoration:underline}.contact-me__link:focus-visible{outline-offset:.25rem;outline:2px solid #111}@media (width<=990px){.contact-me{padding-inline:var(--space-400)}}@media (width<=768px){.contact-me{padding-inline:var(--space-100);grid-template-columns:1fr;gap:2.5rem}.contact-me__list{gap:var(--space-075)}.contact-me__item{background-color:var(--light-color)}.contact-me__item svg{color:var(--primary-color)}.contact-me__item .contact-me__icon{outline:var(--solid-1) var(--light-color)}.contact-me__description{max-width:none}}}
