:root,:root[data-theme=light]{color-scheme:light dark;--primary-color:#f4f1de;--secondary-color:#f2f0ef;--tertiary-color:#415a77;--accent-color:#778d7a;--text-color:#0d1b2a;--shadow-color:#d4c4a8;--border-color:#333;--social-icons:#000}:root[data-theme=dark]{--primary-color:#1b263b;--secondary-color:#415a77;--tertiary-color:#d4c4a8;--accent-color:#778d7a;--text-color:#f4f1de;--shadow-color:#0d1b2a;--border-color:#333;--social-icons:#fff}html,body{min-height:100%}body{background-color:var(--primary-color);color:var(--text-color);flex-direction:column;align-items:center;min-height:100vh;margin:0;padding:0;font-family:system-ui,sans-serif;transition:background-color .3s,color .3s;display:flex}a{color:var(--text-color);text-decoration:none}.shadow{box-shadow:0 .5rem 1.125rem color-mix(in srgb, var(--shadow-color) 75%, transparent)}.link-primary{background:var(--accent-color);border-radius:.5rem;padding:.75rem 1rem;transition:transform .2s,background-color .2s;display:inline-block}.link-primary:hover{background:var(--shadow-color);transform:translateY(-2px)}.page-content-container{flex:1;width:min(100% - 3rem,90rem)}.button-row-group{gap:1.25rem;padding-top:1.5rem;display:flex}.site-band{background-color:var(--shadow-color);width:100%;margin:0}.site-band-nav{justify-content:space-between;align-items:center;gap:1rem;width:min(100% - 3rem,90rem);min-height:3.5rem;margin-inline:auto;display:flex}.tags{flex-flow:wrap;gap:.5rem;margin-top:auto;padding-top:1.5rem;display:flex}.tag{background:var(--tertiary-color);border-radius:3rem;padding:.25rem .6rem;font-size:.75rem}.tag:hover{opacity:.75;transform:translateY(-2px)}.tag a{color:var(--primary-color)}.header-branding-container{justify-content:center;align-items:center;gap:.875rem;font-size:clamp(1.25rem,2vw,2rem);font-style:oblique;font-weight:500;display:flex}.header-navigation{justify-content:space-around;align-items:center;gap:1.125rem;margin:0;padding:0;list-style-type:none;display:flex}.header-navigation a:hover{color:var(--accent-color)}.homepage-title{color:var(--tertiary-color);margin:0 0 1.75rem;font-size:clamp(1.5rem,3vw,3.25rem)}.homepage-section{border-top:2px solid var(--border-color);padding-block:2.5rem}.hero{justify-content:space-between;align-items:center;gap:4rem;width:100%;min-height:55vh;margin-top:3rem;display:flex}.hero-content{flex-direction:column;flex:1;justify-content:space-between;display:flex}.hero-role{color:var(--accent-color);margin-bottom:1rem;font-family:monospace;font-size:1.325rem}.hero-standout{margin-block:.5rem 1.5rem;font-size:clamp(2rem,6vw,5rem);line-height:1.05}.hero-description{max-width:36rem;font-size:1.125rem;line-height:1.6}.hero-visual{border-radius:2rem;width:100%;max-width:20vw;height:100%;max-height:38vh}.mass-content-header{color:var(--accent-color);letter-spacing:.08em;margin-top:2rem;margin-bottom:2.5rem;font-family:monospace;font-size:clamp(1rem,2vw,1.75rem);font-weight:400}.mass-content-container{flex-wrap:wrap;gap:1.25rem;display:flex}.single-content-container{border:3px groove var(--border-color);border-radius:.5rem;flex-direction:column;width:24rem;min-height:28rem;display:flex;overflow:hidden}.single-content-photo-container{height:14rem;display:block}.single-content-photo{object-fit:cover;width:100%;height:100%;display:block}.single-content-photo:hover{opacity:.75}.single-content-data{color:var(--tertiary-color);flex-direction:column;flex:1;padding:.5rem;display:flex}.single-content-title{font-size:1.375rem;font-weight:700}.single-content-date{color:var(--accent-color);margin-top:0;font-size:.875rem;font-style:italic;font-weight:700}.single-content-summary{margin-top:0;padding:.125rem}.content-header{flex-direction:column;gap:1rem;margin:3rem 0 2rem;display:flex}.content-title{margin:0;font-size:clamp(2rem,5vw,3.5rem)}.content-meta{color:var(--accent-color);flex-direction:column;gap:.125rem;font-family:monospace;font-size:1.125rem;display:flex}.content-details{background-color:var(--shadow-color);border-radius:.5rem;margin-bottom:2rem;padding:2rem}.content-details h2{color:var(--tertiary-color);margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2rem)}.content-details h3{color:var(--accent-color);margin:2rem 0 1rem;font-size:1.25rem}.content-details h4{color:var(--tertiary-color);margin-bottom:0}.content-details a{color:var(--tertiary-color)}.content-details a:hover{color:var(--accent-color)}.content-details pre{background-color:var(--primary-color);border:2px solid var(--border-color);border-radius:.5rem;margin-block:1.5rem;padding:1.25rem;overflow-x:auto}.content-details code{font-family:monospace}.content-details :not(pre)>code{background-color:var(--primary-color);border-radius:.25rem;padding:.25rem .5rem;font-family:monospace}.content-details blockquote{border-left:4px solid var(--accent-color);margin:2rem 0;padding-left:1rem;font-style:italic}.content-details p{margin:0 0 1.25rem}.content-details ul,.content-details ol{margin:0 0 1.5rem;padding-left:1.5rem}.content-details li{margin-bottom:.25rem}.content-details>:last-child{margin-bottom:0}.footer-message{font-family:monospace;font-size:.875rem}.footer-email{justify-content:flex-start;align-items:center;gap:.5rem;font-size:.875rem;transition:transform .3s ease-in-out;display:flex}.footer-social-container{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.footer-social-icon{color:var(--social-icons);transition:transform .3s ease-in-out}.footer-email:hover,.footer-social-icon:hover{transform:scale(1.1)}.resume-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:2rem;padding-bottom:2rem;display:flex}.resume-header h1{margin-top:0;font-size:clamp(2rem,5vw,3.5rem);line-height:.75}.resume-header p{max-width:60rem;line-height:1.75}.resume-actions{flex-shrink:0}.resume-section{border-bottom:2px solid var(--border-color);padding-block:2.5rem}.resume-section:last-child{border-bottom:0}.resume-section h2{color:var(--tertiary-color);margin:0 0 1.75rem;font-size:clamp(1.4rem,3vw,2rem)}.resume-entry{margin-bottom:3rem}.resume-entry:last-child{margin-bottom:0}.resume-entry-header{justify-content:space-between;display:flex}.resume-entry h3{margin:0;font-size:1.25rem}.resume-organization{color:var(--accent-color);margin:.25rem 0 0;font-weight:600}.resume-entry-meta{text-align:right;flex-shrink:0;font-size:.875rem}.resume-entry-meta p{margin:0}.resume-entry ul{margin-top:.75rem;padding-left:3rem}.resume-entry li{margin-bottom:.625rem;line-height:1.5}.resume-skills{flex-wrap:wrap;gap:1.5rem;display:flex}.resume-skill-group{border:3px groove var(--border-color);border-radius:.5rem;flex:14rem;padding:1.25rem}.resume-skill-group h3{color:var(--accent-color);margin:0 0 .75rem;font-size:1rem}.resume-skill-group ul{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.resume-skill-group li{background-color:var(--shadow-color);border-radius:.25rem;padding:.325rem .75rem;font-size:.875rem}.contact-intro{max-width:60rem;margin-bottom:8rem;font-size:clamp(1rem,3vw,1.75rem);line-height:1.6}.contact-links{border-top:2px solid var(--border-color);flex-direction:column;display:flex}.contact-link{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 0;transition:color .2s,padding .2s;display:flex}.contact-link:hover{color:var(--accent-color);padding-left:.5rem;padding-right:.5rem}.contact-link span:first-child{min-width:6rem;font-weight:600}.contact-link span:last-child{text-align:right}.error-container{flex-direction:column;align-items:center;margin-bottom:3rem;display:flex}span[data-astro-cid-7qi5gn3v]{flex-shrink:0;line-height:1;display:inline-flex}span[data-astro-cid-7qi5gn3v] svg{width:100%;height:100%;display:block}#theme-toggle[data-astro-cid-l6lhmie6]{color:var(--text-color);background-color:#0000;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}#theme-toggle[data-astro-cid-l6lhmie6]:hover{cursor:pointer;color:var(--accent-color)}html[data-theme=dark] .theme-icon-moon{display:none}html[data-theme=dark] .theme-icon-sun,html[data-theme=light] .theme-icon-moon{display:block}html[data-theme=light] .theme-icon-sun{display:none}
