@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:400;font-display:swap;src:url(../media/5c773c73f3b750dc-s.f39526b9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:400;font-display:swap;src:url(../media/f5031e7b18bdfbb3-s.p.3dcbbce0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:700;font-display:swap;src:url(../media/5c773c73f3b750dc-s.f39526b9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:italic;font-weight:700;font-display:swap;src:url(../media/f5031e7b18bdfbb3-s.p.3dcbbce0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8c352cd2dd0b7ed3-s.8d4acfd6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:400;font-display:swap;src:url(../media/38df7484fe560b25-s.p.60f15535.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8c352cd2dd0b7ed3-s.8d4acfd6.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:700;font-display:swap;src:url(../media/38df7484fe560b25-s.p.60f15535.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville Fallback;src:local(Times New Roman);ascent-override:76.22%;descent-override:21.22%;line-gap-override:0.0%;size-adjust:127.26%}.libre_baskerville_b493fe8e-module___sJ8fq__className{font-family:Libre Baskerville,Libre Baskerville Fallback}.libre_baskerville_b493fe8e-module___sJ8fq__variable{--font-libre-baskerville:"Libre Baskerville","Libre Baskerville Fallback"}
:root{--color-neutral-50:#f5f5f5;--color-neutral-100:#e8e8e8;--color-neutral-900:#2c2a42;--color-neutral-950:#222133;--color-forest-600:#49755d;--color-forest-700:#3a5e4b;--color-earth-400:#bd8862;--color-earth-500:#a47756;--color-success-400:#34d399;--color-success-600:#059669;--color-error-400:#f87171;--color-error-600:#dc2626;--color-shadow-light-10:#0000001a;--color-shadow-light-20:#0003;--color-shadow-dark-50:#00000080;--color-shadow-dark-70:#000000b3;--border-radius-sm:2px;--border-radius-md:4px;--border-radius-lg:8px;--typography-line-height-tight:1.2;--typography-line-height-normal:1.6;--typography-line-height-relaxed:1.8;--typography-weight-normal:400;--typography-weight-medium:500;--typography-weight-semibold:600;--typography-weight-bold:700;--typography-size-xs:.875rem;--typography-size-sm:1rem;--typography-size-base:1.125rem;--typography-size-lg:1.5rem;--typography-size-xl:2rem;--typography-size-2xl:2.5rem;--typography-size-3xl:4rem;--max-width-container:1200px;--max-width-content:800px;--max-width-prose:700px;--spacing-xs:.5rem;--spacing-sm:.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--surface-primary:var(--color-neutral-50);--surface-secondary:var(--color-neutral-100);--surface-inverse:var(--color-neutral-900);--text-primary:var(--color-neutral-900);--text-inverse:var(--color-neutral-50);--action-primary-default:var(--color-forest-700);--action-primary-hover:var(--color-forest-600);--action-secondary-default:var(--color-neutral-900);--border-default:var(--color-earth-500);--border-subtle:var(--color-earth-400);--feedback-success:var(--color-success-600);--feedback-error:var(--color-error-600);--shadow-subtle:var(--color-shadow-light-10);--shadow-medium:var(--color-shadow-light-20);--radius-button:var(--border-radius-lg);--radius-card:var(--border-radius-lg);--radius-input:var(--border-radius-lg);--radius-focus:var(--border-radius-sm);--size-max-width-container:var(--max-width-container);--size-max-width-content:var(--max-width-content)}[data-theme=dark]{--surface-primary:var(--color-neutral-900);--surface-secondary:var(--color-neutral-950);--surface-inverse:var(--color-neutral-50);--text-primary:var(--color-neutral-50);--text-inverse:var(--color-neutral-900);--action-primary-default:var(--color-earth-500);--action-primary-hover:var(--color-earth-400);--action-secondary-default:var(--color-neutral-50);--border-default:var(--color-earth-400);--border-subtle:var(--color-earth-500);--feedback-success:var(--color-success-400);--feedback-error:var(--color-error-400);--shadow-subtle:var(--color-shadow-dark-50);--shadow-medium:var(--color-shadow-dark-70);--radius-button:var(--border-radius-lg);--radius-card:var(--border-radius-lg);--radius-input:var(--border-radius-lg);--radius-focus:var(--border-radius-sm);--size-max-width-container:var(--max-width-container);--size-max-width-content:var(--max-width-content)}
.Link-module__Z6J0sa__link{font-family:var(--font-body);font-weight:var(--typography-weight-medium);cursor:pointer;align-items:center;gap:.25em;transition:all .2s ease-in-out;display:inline-flex}.Link-module__Z6J0sa__externalIcon{font-size:var(--typography-size-xs);opacity:.7;transition:opacity .2s;display:inline-flex}.Link-module__Z6J0sa__link:hover .Link-module__Z6J0sa__externalIcon{opacity:1}.Link-module__Z6J0sa__nav{color:var(--text-primary);font-weight:var(--typography-weight-medium);padding-bottom:2px;position:relative;text-decoration:none!important}.Link-module__Z6J0sa__nav:after{content:"";background:var(--action-primary-hover);width:0;height:2px;transition:width .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:-4px;left:0}.Link-module__Z6J0sa__nav:hover{color:var(--action-primary-hover)}.Link-module__Z6J0sa__nav:hover:after{width:100%}.Link-module__Z6J0sa__nav:focus-visible{color:var(--action-primary-hover);outline:2px solid var(--action-primary-hover);outline-offset:6px;border-radius:2px}.Link-module__Z6J0sa__inline{color:var(--action-primary-default);text-underline-offset:2px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.Link-module__Z6J0sa__inline:hover{color:var(--action-primary-hover);text-decoration-thickness:2px}.Link-module__Z6J0sa__inline:focus-visible{outline:2px solid var(--action-primary-hover);outline-offset:2px;border-radius:2px}.Link-module__Z6J0sa__inline:visited{color:var(--action-primary-default);opacity:.8}.Link-module__Z6J0sa__standalone{color:var(--text-primary);text-decoration:none;position:relative}.Link-module__Z6J0sa__standalone:hover{color:var(--action-primary-hover);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.Link-module__Z6J0sa__standalone:focus-visible{outline:2px solid var(--action-primary-hover);outline-offset:2px;border-radius:2px}.Link-module__Z6J0sa__cta{background:var(--action-primary-default);color:var(--text-inverse);padding:var(--spacing-sm)var(--spacing-lg);border-radius:var(--radius-button);box-shadow:0 2px 4px var(--shadow-subtle);justify-content:center;align-items:center;gap:var(--spacing-xs);text-align:center;min-width:120px;min-height:40px;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.Link-module__Z6J0sa__cta:hover{background:var(--action-primary-hover);box-shadow:0 4px 12px var(--shadow-medium);color:var(--text-inverse);text-decoration:none;transform:translateY(-2px)}.Link-module__Z6J0sa__cta:active{box-shadow:0 1px 2px var(--shadow-subtle);transform:translateY(0)}.Link-module__Z6J0sa__cta:focus-visible{outline:3px solid var(--action-primary-default);outline-offset:2px}@media (max-width:768px){.Link-module__Z6J0sa__nav:after{bottom:-2px}.Link-module__Z6J0sa__navBlock{width:100%;padding:var(--spacing-sm)var(--spacing-sm);font-size:var(--typography-size-base);border-radius:var(--border-radius);display:block}.Link-module__Z6J0sa__navBlock:focus{outline-offset:2px;background:var(--surface-primary)}.Link-module__Z6J0sa__cta{padding:var(--spacing-sm)var(--spacing-md);min-height:36px;font-size:.875rem}}@media (prefers-contrast:high){.Link-module__Z6J0sa__inline{text-decoration-thickness:2px}.Link-module__Z6J0sa__nav:after{height:3px}}@media (prefers-reduced-motion:reduce){.Link-module__Z6J0sa__link,.Link-module__Z6J0sa__nav:after{transition:none}.Link-module__Z6J0sa__cta:hover{transform:none}}[data-theme=dark] .Link-module__Z6J0sa__nav:visited{color:var(--text-primary)}[data-theme=dark] .Link-module__Z6J0sa__inline:visited{opacity:.7}
.HamburgerButton-module__M2Eziq__hamburger{cursor:pointer;z-index:103;background:0 0;border:none;flex-direction:column;flex-shrink:0;justify-content:space-around;align-items:center;width:40px;height:40px;padding:8px;transition:transform .2s;display:flex;position:relative}.HamburgerButton-module__M2Eziq__hamburger:hover{transform:scale(1.05)}.HamburgerButton-module__M2Eziq__hamburger:active{transform:scale(.95)}.HamburgerButton-module__M2Eziq__hamburger:focus-visible{outline:2px solid var(--action-primary-default);outline-offset:2px}.HamburgerButton-module__M2Eziq__line{background:var(--text-primary);transform-origin:50%;border-radius:2px;width:24px;height:3px;transition:all .3s cubic-bezier(.4,0,.2,1);display:block}.HamburgerButton-module__M2Eziq__line[data-state=closed]:first-child{transform:translateY(0)rotate(0)}.HamburgerButton-module__M2Eziq__line[data-state=closed]:nth-child(2){opacity:1;transform:scaleX(1)}.HamburgerButton-module__M2Eziq__line[data-state=closed]:nth-child(3){transform:translateY(0)rotate(0)}.HamburgerButton-module__M2Eziq__line[data-state=open]:first-child{transform:translateY(8px)rotate(45deg)}.HamburgerButton-module__M2Eziq__line[data-state=open]:nth-child(2){opacity:0;transform:scaleX(0)}.HamburgerButton-module__M2Eziq__line[data-state=open]:nth-child(3){transform:translateY(-8px)rotate(-45deg)}@media (prefers-contrast:high){.HamburgerButton-module__M2Eziq__line{height:4px}}@media (prefers-reduced-motion:reduce){.HamburgerButton-module__M2Eziq__hamburger,.HamburgerButton-module__M2Eziq__line{transition:none}}[data-theme=dark] .HamburgerButton-module__M2Eziq__line{background:var(--text-primary)}
.Hero-module__PycF7W__hero{padding:var(--spacing-2xl)0;background-image:url(/wesley-tingey-XvlbhiTzfWA-unsplash.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;align-items:center;min-height:80vh;scroll-margin-top:0;transition:background .5s;display:flex;position:relative}.Hero-module__PycF7W__heroContent{max-width:700px;padding:0 var(--spacing-md);box-sizing:border-box;align-items:center;width:100%;margin:0 auto;display:grid;position:relative}.Hero-module__PycF7W__heroText{text-align:center;background-color:#49755de6;padding:.2em .4em}[data-theme=dark] .Hero-module__PycF7W__heroText{background-color:#bd8862e6}.Hero-module__PycF7W__hero h1{margin-bottom:var(--spacing-md);color:var(--surface-primary);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;margin-top:.5em;font-size:3.5rem}.Hero-module__PycF7W__heroSubtitle{color:var(--surface-primary);margin-bottom:var(--spacing-md);font-size:1.5rem;font-weight:500}.Hero-module__PycF7W__heroDescription{color:var(--surface-primary);margin-bottom:var(--spacing-md);font-size:1.125rem;line-height:1.8}@media (max-width:768px){.Hero-module__PycF7W__hero{padding:var(--spacing-xl)0;min-height:auto}.Hero-module__PycF7W__heroContent{text-align:center;gap:var(--spacing-lg);padding:0 var(--spacing-md);grid-template-columns:1fr}.Hero-module__PycF7W__heroText{text-align:center}.Hero-module__PycF7W__hero h1{font-size:2.25rem;line-height:1.2}.Hero-module__PycF7W__heroSubtitle{font-size:1.125rem}}@media (max-width:480px){.Hero-module__PycF7W__hero h1{padding:0 var(--spacing-xs);font-size:1.75rem}.Hero-module__PycF7W__heroContent{padding:0 var(--spacing-sm)}.Hero-module__PycF7W__heroDescription{font-size:.9375rem}}
.Resume-module__Hee5sW__resumeSection{background:var(--surface-secondary);transition:background .3s}.Resume-module__Hee5sW__resumeDescription{margin-bottom:var(--spacing-lg)}
.Contact-module__Zv_Gsq__contactContent{gap:var(--spacing-2xl);grid-template-columns:1fr 1fr;align-items:start;max-width:1200px;margin:0 auto;display:grid}.Contact-module__Zv_Gsq__contactInfo{text-align:left}.Contact-module__Zv_Gsq__contactInfo h2{margin-bottom:var(--spacing-md)}.Contact-module__Zv_Gsq__contactInfo p{margin-bottom:var(--spacing-lg)}.Contact-module__Zv_Gsq__contactForm{background:var(--surface-primary);padding:var(--spacing-xl);border-radius:var(--border-radius);transition:background .3s}.Contact-module__Zv_Gsq__hidden{visibility:hidden;display:none}.Contact-module__Zv_Gsq__requiredIndicator{color:var(--action-primary-hover);margin-left:2px;font-weight:700}.Contact-module__Zv_Gsq__statusMessage{margin-bottom:var(--spacing-md);min-height:1.5rem}.Contact-module__Zv_Gsq__successMessage{padding:var(--spacing-sm)var(--spacing-md);background-color:color-mix(in srgb,var(--feedback-success)15%,transparent);color:var(--feedback-success);border:2px solid var(--feedback-success);border-radius:var(--border-radius);font-weight:500;transition:background-color .3s,color .3s,border-color .3s}.Contact-module__Zv_Gsq__errorMessage{padding:var(--spacing-sm)var(--spacing-md);color:var(--feedback-error);border:2px solid var(--feedback-error);border-radius:var(--border-radius);background-color:#dc262626;font-weight:500;transition:background-color .3s,color .3s,border-color .3s}[data-theme=dark] .Contact-module__Zv_Gsq__errorMessage{background-color:#f8717126}.Contact-module__Zv_Gsq__formGroup{margin-bottom:var(--spacing-lg)}.Contact-module__Zv_Gsq__formGroup label{margin-bottom:var(--spacing-xs);color:var(--text-primary);font-weight:500;display:block}.Contact-module__Zv_Gsq__formGroup input,.Contact-module__Zv_Gsq__formGroup textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-default);border-radius:var(--border-radius);font-family:var(--font-body);transition:var(--transition);background:var(--surface-primary);color:var(--text-primary);font-size:1rem}.Contact-module__Zv_Gsq__formGroup input:focus,.Contact-module__Zv_Gsq__formGroup textarea:focus{outline:2px solid var(--action-primary-hover);outline-offset:2px;border-color:var(--action-primary-hover);box-shadow:0 0 0 2px #4f46e533}[data-theme=dark] .Contact-module__Zv_Gsq__formGroup input:focus,[data-theme=dark] .Contact-module__Zv_Gsq__formGroup textarea:focus{box-shadow:0 0 0 2px #a5b4fc4d}.Contact-module__Zv_Gsq__formGroup input.Contact-module__Zv_Gsq__inputError,.Contact-module__Zv_Gsq__formGroup textarea.Contact-module__Zv_Gsq__inputError{border-color:var(--feedback-error);border-width:2px}.Contact-module__Zv_Gsq__formGroup input.Contact-module__Zv_Gsq__inputError:focus,.Contact-module__Zv_Gsq__formGroup textarea.Contact-module__Zv_Gsq__inputError:focus{outline-color:var(--feedback-error);border-color:var(--feedback-error);box-shadow:0 0 0 2px #dc262633}[data-theme=dark] .Contact-module__Zv_Gsq__formGroup input.Contact-module__Zv_Gsq__inputError:focus,[data-theme=dark] .Contact-module__Zv_Gsq__formGroup textarea.Contact-module__Zv_Gsq__inputError:focus{box-shadow:0 0 0 2px #f871714d}.Contact-module__Zv_Gsq__fieldError{margin-top:var(--spacing-xs);color:var(--feedback-error);align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.Contact-module__Zv_Gsq__fieldError:before{content:"⚠";margin-right:.25rem;font-size:1rem}.Contact-module__Zv_Gsq__formGroup textarea{resize:vertical;min-height:120px}@media (max-width:768px){.Contact-module__Zv_Gsq__contactContent{gap:var(--spacing-lg);grid-template-columns:1fr;padding:0}.Contact-module__Zv_Gsq__contactInfo{text-align:center}.Contact-module__Zv_Gsq__contactForm{padding:var(--spacing-lg)}}
.Button-module__nd9xrW__button{justify-content:center;align-items:center;gap:var(--spacing-xs);font-family:var(--font-body);font-weight:var(--typography-weight-semibold);text-align:center;white-space:nowrap;line-height:var(--typography-line-height-normal);border-radius:var(--radius-button);cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}.Button-module__nd9xrW__button:active:not(:disabled){box-shadow:0 1px 2px var(--shadow-subtle);transform:translateY(0)}.Button-module__nd9xrW__content{justify-content:center;align-items:center;gap:var(--spacing-xs);display:flex}.Button-module__nd9xrW__contentHidden{opacity:0;position:absolute}.Button-module__nd9xrW__primary{background:var(--action-primary-default);color:var(--text-inverse);box-shadow:0 2px 4px var(--shadow-subtle)}.Button-module__nd9xrW__primary:hover:not(:disabled){background:var(--action-primary-hover);box-shadow:0 4px 12px var(--shadow-medium);transform:translateY(-2px)}.Button-module__nd9xrW__primary:focus-visible{outline:3px solid var(--action-primary-default);outline-offset:2px}.Button-module__nd9xrW__secondary{background:var(--surface-secondary);color:var(--text-primary);box-shadow:0 2px 4px var(--shadow-subtle)}.Button-module__nd9xrW__secondary:hover:not(:disabled){background:var(--action-secondary-hover);box-shadow:0 4px 12px var(--shadow-medium);transform:translateY(-2px)}.Button-module__nd9xrW__secondary:focus-visible{outline:3px solid var(--action-secondary-default);outline-offset:2px}.Button-module__nd9xrW__outline{color:var(--action-primary-default);border-color:var(--action-primary-default);box-shadow:none;background:0 0}.Button-module__nd9xrW__outline:hover:not(:disabled){background:var(--action-primary-default);color:var(--text-inverse);box-shadow:0 2px 8px var(--shadow-subtle);transform:translateY(-2px)}.Button-module__nd9xrW__outline:focus-visible{outline:3px solid var(--action-primary-default);outline-offset:2px}.Button-module__nd9xrW__ghost{color:var(--text-primary);box-shadow:none;background:0 0}.Button-module__nd9xrW__ghost:hover:not(:disabled){background:var(--surface-secondary)}.Button-module__nd9xrW__ghost:focus-visible{outline:3px solid var(--border-interactive);outline-offset:2px}.Button-module__nd9xrW__danger{background:var(--feedback-error);color:var(--text-inverse);box-shadow:0 2px 4px #dc26264d}.Button-module__nd9xrW__danger:hover:not(:disabled){background:var(--feedback-error);transform:translateY(-2px);box-shadow:0 4px 12px #dc262666}.Button-module__nd9xrW__danger:focus-visible{outline:3px solid var(--feedback-error);outline-offset:2px}.Button-module__nd9xrW__small{padding:var(--spacing-xs)var(--spacing-sm);min-width:80px;min-height:32px;font-size:.875rem}.Button-module__nd9xrW__medium{padding:var(--spacing-md)var(--spacing-lg);min-width:120px;min-height:40px;font-size:1rem}.Button-module__nd9xrW__large{padding:var(--spacing-lg)var(--spacing-xl);min-width:160px;min-height:48px;font-size:1.125rem}.Button-module__nd9xrW__button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.Button-module__nd9xrW__fullWidth{width:100%;min-width:100%}.Button-module__nd9xrW__loading{cursor:wait;position:relative}.Button-module__nd9xrW__spinnerWrapper{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.Button-module__nd9xrW__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.6s linear infinite Button-module__nd9xrW__spin;display:inline-block}@keyframes Button-module__nd9xrW__spin{to{transform:rotate(360deg)}}@media (max-width:768px){.Button-module__nd9xrW__small{padding:calc(var(--spacing-xs)*.875)var(--spacing-sm);min-height:28px;font-size:.8125rem}.Button-module__nd9xrW__medium{padding:var(--spacing-sm)var(--spacing-md);min-height:36px;font-size:.875rem}.Button-module__nd9xrW__large{padding:var(--spacing-sm)var(--spacing-lg);min-height:40px;font-size:1rem}}@media (prefers-contrast:high){.Button-module__nd9xrW__button{border-width:2px}.Button-module__nd9xrW__outline{border-width:3px}}@media (prefers-reduced-motion:reduce){.Button-module__nd9xrW__button{transition:none}.Button-module__nd9xrW__spinner{animation-duration:1s}}
.Footer-module__JGhRua__footer{background:var(--surface-primary);color:var(--text-primary);padding:var(--spacing-xl)36px;text-align:center;border-top:1px solid var(--border-default);transition:background .3s,color .3s,border-color .3s}.Footer-module__JGhRua__footerContent{max-width:var(--max-width);margin:0 auto}.Footer-module__JGhRua__links{justify-content:center;gap:var(--spacing-md);margin-top:var(--spacing-sm);display:flex}.Footer-module__JGhRua__container{max-width:var(--max-width);padding:0 var(--spacing-md);margin:0 auto}
.SkipLink-module__0TBtFa__contentWrapper{display:contents}.SkipLink-module__0TBtFa__skipLinkWrapper{z-index:1001;pointer-events:none;justify-content:center;width:100%;max-width:100vw;transition:top .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:-60px;left:0;right:0}.SkipLink-module__0TBtFa__skipLinkWrapper:focus-within{pointer-events:auto;top:0}.SkipLink-module__0TBtFa__skipLink{background:var(--action-primary-hover);color:var(--text-inverse);font-family:var(--font-body);white-space:nowrap;border-radius:0 0 var(--radius-button)var(--radius-button);box-shadow:0 4px 6px var(--shadow-subtle);opacity:0;pointer-events:none;padding:12px 24px;font-size:.875rem;font-weight:600;text-decoration:none;transition:opacity .3s,box-shadow .3s;display:inline-block}.SkipLink-module__0TBtFa__skipLink:focus{opacity:1;pointer-events:auto;box-shadow:0 4px 12px var(--shadow-medium);outline:3px solid var(--action-primary-default);outline-offset:-3px}.SkipLink-module__0TBtFa__skipLink:focus:not(:focus-visible){outline:none}.SkipLink-module__0TBtFa__skipLink:focus:hover{background:var(--action-primary-default);box-shadow:0 6px 16px var(--shadow-strong)}@media (max-width:768px){.SkipLink-module__0TBtFa__skipLinkWrapper{top:-50px}.SkipLink-module__0TBtFa__skipLink{padding:10px 20px;font-size:.8125rem}}@media (prefers-contrast:high){.SkipLink-module__0TBtFa__skipLink{border:2px solid}.SkipLink-module__0TBtFa__skipLink:focus{outline-width:4px}}@media (prefers-reduced-motion:reduce){.SkipLink-module__0TBtFa__skipLinkWrapper{transition:none}.SkipLink-module__0TBtFa__skipLinkWrapper:focus-within{top:0}.SkipLink-module__0TBtFa__skipLink{transition:opacity .1s}}[data-theme=dark] .SkipLink-module__0TBtFa__skipLink{background:var(--action-primary-hover);color:var(--text-inverse)}[data-theme=dark] .SkipLink-module__0TBtFa__skipLink:focus{box-shadow:0 4px 12px var(--shadow-strong)}
.LogoLink-module__tlbdWW__logoLink{align-items:center;gap:var(--spacing-xs);font-family:var(--font-heading);color:var(--text-primary);cursor:pointer;z-index:102;font-size:1.5rem;font-weight:700;line-height:1;text-decoration:none;transition:all .3s;display:inline-flex;position:relative}.LogoLink-module__tlbdWW__logoLink:hover{color:var(--action-primary-hover);text-decoration:none}.LogoLink-module__tlbdWW__logoLink:focus-visible{outline:2px solid var(--action-primary-hover);outline-offset:6px;color:var(--action-primary-hover);border-radius:2px}.LogoLink-module__tlbdWW__logoImage{width:auto;height:40px;transition:transform .3s;display:block}.LogoLink-module__tlbdWW__logoLink:hover .LogoLink-module__tlbdWW__logoImage{transform:scale(1.05)}.LogoLink-module__tlbdWW__logoText{white-space:nowrap;display:inline-block}.LogoLink-module__tlbdWW__logoLink:has(.LogoLink-module__tlbdWW__logoImage) .LogoLink-module__tlbdWW__logoText{margin-left:var(--spacing-xs)}.LogoLink-module__tlbdWW__logoLink:not(:has(.LogoLink-module__tlbdWW__logoText)){justify-content:center}@media (max-width:768px){.LogoLink-module__tlbdWW__logoLink{font-size:1.25rem}.LogoLink-module__tlbdWW__logoImage{height:32px}}@media (prefers-contrast:high){.LogoLink-module__tlbdWW__logoLink{font-weight:800}}@media (prefers-reduced-motion:reduce){.LogoLink-module__tlbdWW__logoLink,.LogoLink-module__tlbdWW__logoImage{transition:none}.LogoLink-module__tlbdWW__logoLink:hover .LogoLink-module__tlbdWW__logoImage{transform:none}}[data-theme=dark] .LogoLink-module__tlbdWW__logoLink{color:var(--text-primary)}[data-theme=dark] .LogoLink-module__tlbdWW__logoLink:hover{color:var(--action-primary-hover)}
.ThemeToggle-module__VZ7fsG__themeToggle{justify-content:center;align-items:center;gap:var(--spacing-xs);min-width:80px;height:40px;padding:var(--spacing-xs)var(--spacing-sm);background:var(--surface-primary);border:1px solid var(--border-interactive);border-radius:var(--radius-button);font-family:var(--font-body);color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;line-height:1;transition:all .3s;display:inline-flex}.ThemeToggle-module__VZ7fsG__themeToggle:hover{background:var(--action-primary-hover);border-color:var(--action-primary-hover);color:var(--text-inverse);transform:scale(1.05)}.ThemeToggle-module__VZ7fsG__themeToggle:focus-visible{outline:2px solid var(--action-primary-hover);outline-offset:2px}.ThemeToggle-module__VZ7fsG__themeToggle:active{transform:scale(.95)}.ThemeToggle-module__VZ7fsG__icon{flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex}.ThemeToggle-module__VZ7fsG__label{white-space:nowrap;font-size:.875rem;font-weight:500}.ThemeToggle-module__VZ7fsG__themeToggle:not(:has(.ThemeToggle-module__VZ7fsG__label)){min-width:40px;padding:var(--spacing-xs)}@media (max-width:768px){.ThemeToggle-module__VZ7fsG__themeToggle{width:100%;min-width:unset;padding:var(--spacing-sm)var(--spacing-md);margin-top:var(--spacing-sm);justify-content:flex-start}.ThemeToggle-module__VZ7fsG__icon{font-size:1.125rem}.ThemeToggle-module__VZ7fsG__label{display:inline}}@media (prefers-contrast:high){.ThemeToggle-module__VZ7fsG__themeToggle{border-width:2px}}@media (prefers-reduced-motion:reduce){.ThemeToggle-module__VZ7fsG__themeToggle{transition:none}.ThemeToggle-module__VZ7fsG__themeToggle:hover,.ThemeToggle-module__VZ7fsG__themeToggle:active{transform:none}}[data-theme=dark] .ThemeToggle-module__VZ7fsG__themeToggle{background:var(--surface-primary);border-color:var(--border-interactive);color:var(--text-primary)}[data-theme=dark] .ThemeToggle-module__VZ7fsG__themeToggle:hover{background:var(--action-primary-hover);border-color:var(--action-primary-hover);color:var(--text-inverse)}
