:root{--color-accent:#d95440;--color-accent-text:#c4432f;--color-accent-soft:#a3c79a;--color-link-hover:#2f5d50;--color-nav-active:#e8d9c0;--color-warm:#c9a882;--color-chat:#c5e3bf;--color-chat-dark:#aed4a6;--color-chat-ink:#1d2b1a;--color-paper:#f7f4ef;--color-surface:#efeae1;--color-surface-raised:#fffdf9;--color-panel:#241e1c;--color-panel-alt:#332b27;--color-nav-bg:#1a1512;--color-blockquote:#efeae1;--color-ink-max:#241e1c;--color-ink-strong:#241e1c;--color-ink:#574e49;--color-ink-muted:#857a73;--color-ink-inverse:#f7f4ef;--color-quote:#b8ada4;--color-rule:#d8cfc4;--color-shadow-text:#241e1c;--color-shadow:#241e1c73;--font-display:"Fraunces",Georgia,"Times New Roman",serif;--font-body:"Source Serif 4",Georgia,"Times New Roman",serif;--font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;--lh-body:1.6;--lh-heading:1.15;--measure:68ch}body{font-family:var(--font-body);line-height:var(--lh-body)}*{box-sizing:border-box;margin:0;padding:0}.container,.container-fluid{padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}[class*=col-]{padding-left:15px;padding-right:15px}html,body{max-width:100vw;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--lh-heading);color:var(--color-ink-strong)}.body-copy,.resume-bio,.post-body{max-width:var(--measure)}a{color:inherit;text-decoration:none}blockquote{background:var(--color-blockquote);border-left:5px solid var(--color-rule);background:var(--color-blockquote);margin:1.5em 0;padding:.5em 1em}.showmedempuppies{background:var(--color-surface-raised);border:none}.red-text-custom{color:var(--color-accent-text);font-weight:700}.black-text-custom{color:var(--color-ink-max);font-weight:700}.brown-text-custom{color:var(--color-warm);font-weight:700}.body-copy{font-family:var(--font-body);font-size:1.5rem}.parallax-section{background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:300px}.text-sm{font-size:14px;line-height:24px}.category-label{color:var(--color-ink-inverse);border:none;border-radius:5px;padding:2.5px 15px}.categories-row .categories-col{padding:25px 100px}.categories-row .categories-col .content{font-family:var(--font-mono);border-bottom:1px solid var(--color-rule);justify-content:flex-end;padding:0 0 15px;display:flex}.categories-row .categories-col .content .category-btn{color:var(--color-ink-inverse);cursor:pointer;border:none;border-radius:5px;padding:2.5px 15px}.categories-row .categories-col .content .category-btn:hover{opacity:.7}.r-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0;right:0}.blog-cards{font-family:var(--font-mono);flex-wrap:wrap;padding:100px 50px;display:flex}.blog-cards .post-card{transition:all .25s}.blog-cards .post-card:hover{cursor:pointer}.blog-cards .project-card{transition:all .25s}.blog-cards .project-card:hover{cursor:pointer}.blog-cards .float{transition:all .4s;box-shadow:25px 25px 50px var(--color-shadow)!important}.blog-cards .card{overflow:hidden;border-radius:15px!important}.blog-cards .card .view{background-position:50%;background-repeat:no-repeat;background-size:cover;height:200px}.blog-cards .card .card-footer{margin-left:0;margin-right:0;padding-left:1.25rem;padding-right:1.25rem}.blog-cards .index-page-resource-link{text-decoration:none}.blog-cards .index-page-resource-link .card-title{color:var(--color-ink-max);transition:color .25s}.blog-cards .index-page-resource-link:hover .card-title{color:var(--color-link-hover)!important}#index .banner{background-image:url(/img/hero/madison-bg-greened.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;justify-content:center;align-items:center;max-width:100vw;height:65vh;min-height:365px;padding:0;display:flex}#index .banner .banner-headline{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text);margin-bottom:15px;margin-left:80px;font-size:5vw}#index .banner .banner-subtitle{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text);margin-bottom:25px;margin-left:80px;font-size:3vw}#index .banner .banner-details{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text);margin-left:80px;font-size:2vw}#index .biography{min-height:850px}#index .biography .biography-row a{color:var(--color-accent-text)}#index .biography .biography-row a:hover{color:var(--color-link-hover)}#index .biography .biography-row .title-section{color:var(--color-ink-inverse);justify-content:center;align-items:center;font-size:25px;display:flex}#index .biography .biography-row .title-section a{color:var(--color-ink-inverse)}#index .biography .biography-row .r-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0;right:0}#index .biography .biography-row .img{justify-content:center;align-items:center;height:500px;padding-left:80px;display:flex}#index .biography .biography-row .img img{border:7px solid var(--color-accent-soft);border-radius:50%;width:300px;max-width:100%;height:300px;display:block}#index .biography .biography-row .text{color:var(--color-ink);justify-content:center;margin-top:100px;display:flex}#index .biography .biography-row .text .content .body-copy .showmedempuppies{cursor:pointer;color:var(--color-ink-strong);text-decoration:underline}#index .biography .biography-row .text .content .body-copy .showmedempuppies:hover{color:var(--color-ink-muted)}#index .biography .biography-row .text .content .puppy-container{justify-content:space-around;align-items:center;display:flex}#index .biography .biography-row .text .content .puppy-container .puppy{border:7px solid var(--color-accent-soft);border-radius:50%;width:225px;height:200px;display:none}#index .projects{background:var(--color-paper);min-height:500px;position:relative}#index .projects .title-section{color:var(--color-ink-inverse);justify-content:center;align-items:center;font-size:25px;display:flex}#index .projects .title-section a{color:var(--color-ink-inverse)}#index .projects .l-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0}#index .projects .r-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0;right:0}#index .projects .projects-row{font-family:var(--font-mono);padding:100px 25px 50px 80px}#index .projects .projects-row .col .card .view{background-position:50%;background-repeat:no-repeat;background-size:cover;height:300px}#index .contact{background:var(--color-surface-raised);min-height:500px;padding-left:80px}#index .contact .container-9{max-width:90%!important}#index .blog{background:var(--color-surface);min-height:500px;position:relative}#index .blog .title-section{color:var(--color-ink-inverse);justify-content:center;align-items:center;font-size:25px;display:flex}#index .blog .title-section a{color:var(--color-ink-inverse)}#index .blog .row .l-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0}#index .blog .row .r-title{background-color:var(--color-panel);width:200px;max-width:45%;height:75px;position:absolute;top:0;right:0}#index .blog .posts-row{font-family:var(--font-mono);padding:100px 25px 50px 80px}#index .blog .posts-row .col .card .view{background-position:50%;background-repeat:no-repeat;background-size:cover;height:300px}#index .parallax-bg{background-image:url(/img/hero/madison-bg-greened.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:300px}#blog #header{display:none}#blog .blog-container-row{padding-top:50px}#blog .blog-container-row .row .blog-banner{background-image:url(/img/hero/bookshelf.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:500px;position:relative}#blog .blog-container-row .row .blog-banner .content{justify-content:center;align-items:center;width:100%;height:100%;margin-top:50px;display:flex}#blog .blog-container-row .row .blog-banner .content .text{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text)}#blog .blog-container-row .row .blog-banner .content .text h1{font-size:3.5rem}#blog .blog-container-row .row .blog-banner .content .text p{font-size:2rem}#blog .blog-container-row .posts-row{padding:0 100px}#blog .blog-container-row .posts-row .col .posts-list{padding-left:0;list-style:none}#blog .blog-container-row .posts-row .col .posts-list .post-list-item{border-bottom:1px solid var(--color-rule);padding:25px 0}#blog .blog-container-row .posts-row .col .posts-list .post-list-item .title{text-shadow:1px 1px var(--color-shadow-text);font-size:2.5rem;font-weight:700}#blog .blog-container-row .posts-row .col .posts-list .post-list-item .subtitle{text-shadow:1px 1px var(--color-shadow-text);font-size:2rem}#blog .blog-container-row .posts-row .col .posts-list .post-list-item .details{font-family:var(--font-mono)}#blog .blog-container-row .posts-row .col .posts-list .post-list-item .details .category-btn{color:var(--color-ink-inverse);cursor:pointer;border:none;border-radius:5px;padding:2.5px 15px}#blog .blog-container-row .posts-row .col .posts-list .post-list-item .details .category-btn:hover{opacity:.7}#blog .footer-row{padding-left:0}#blog-post .post-container-row{padding-top:50px}#blog-post .post-container-row .row .post-banner{background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:500px;position:relative}#blog-post .post-container-row .row .post-banner .content{justify-content:center;align-items:center;width:100%;height:100%;margin-top:50px;display:flex}#blog-post .post-container-row .row .post-banner .content .text{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text)}#blog-post .post-container-row .row .post-banner .content .text h1{font-size:3.5rem}#blog-post .post-container-row .row .post-banner .content .text p{font-size:2rem}#blog-post .post-container-row .post-body{font-family:var(--font-mono);padding-top:50px;padding-bottom:50px}#portfolio #header{display:none}#portfolio .portfolio-container-row{padding-top:50px}#portfolio .portfolio-container-row .row .portfolio-banner{background-image:url(/img/hero/construction.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:500px;position:relative}#portfolio .portfolio-container-row .row .portfolio-banner .content{justify-content:center;align-items:center;width:100%;height:100%;margin-top:50px;display:flex}#portfolio .portfolio-container-row .row .portfolio-banner .content .text{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text)}#portfolio .portfolio-container-row .row .portfolio-banner .content .text h1{font-size:3.5rem}#portfolio .portfolio-container-row .row .portfolio-banner .content .text p{font-size:2rem}#portfolio .portfolio-container-row .categories-row .categories-col{padding:25px 100px}#portfolio .portfolio-container-row .categories-row .categories-col .content{font-family:var(--font-mono);border-bottom:1px solid var(--color-rule);justify-content:flex-end;padding:0 0 15px;display:flex}#portfolio .portfolio-container-row .categories-row .categories-col .content .category-btn{color:var(--color-ink-inverse);cursor:pointer;border:none;border-radius:5px;padding:2.5px 15px}#portfolio .portfolio-container-row .categories-row .categories-col .content .category-btn:hover{opacity:.7}#portfolio .portfolio-container-row .projects-row{padding:0 100px}#portfolio .portfolio-container-row .projects-row .col .projects-list{padding-left:0;list-style:none}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item{border-bottom:1px solid var(--color-rule);padding:25px 0}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item .title{text-shadow:1px 1px var(--color-shadow-text);font-size:2.5rem}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item .subtitle{text-shadow:1px 1px var(--color-shadow-text);font-size:2rem}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item .details{font-family:var(--font-mono)}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item .details .category-btn{color:var(--color-ink-inverse);cursor:pointer;border:none;border-radius:5px;padding:2.5px 15px}#portfolio .portfolio-container-row .projects-row .col .projects-list .project-list-item .details .category-btn:hover{opacity:.7}#portfolio .footer-row{padding-left:0}#resume #header{display:none}#resume .resume-container-row{padding-top:50px}#resume .resume-container-row .row #resume-banner{background-image:url(/img/hero/blueprint.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:300px;position:relative}#resume .resume-container-row .row #resume-banner .content{justify-content:center;align-items:center;width:100%;height:100%;margin-top:50px;display:flex}#resume .resume-container-row .row #resume-banner .content .text{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text)}#resume .resume-container-row .row #resume-banner .content .text h1{font-size:3.5rem}#resume .resume-container-row .row #resume-banner .content .text p{font-size:2rem}#resume .resume-container-row .row .resume-bio-section{background-color:var(--color-surface-raised);min-height:300px;color:var(--color-ink);padding:50px 100px}#resume .resume-container-row .row .resume-bio-section img{border:7px solid var(--color-accent);border-radius:50%;width:200px;max-width:100%;height:200px}#resume .resume-container-row .row .resume-bio-section .text-center{text-align:center}#resume .resume-container-row .row .resume-bio-section .download-section{font-family:var(--font-body)}#resume .resume-container-row .row .resume-bio-section .download-section .col a{color:var(--color-accent-text);margin:0 15px}#resume .resume-container-row .row .resume-bio-section .download-section .col a i{color:var(--color-accent-text)}#resume .resume-container-row .row .resume-bio-section .download-section .col a i:hover{color:var(--color-ink)}#resume .resume-container-row .row .resume-bio-section .text-section{font-family:var(--font-body);padding:15px 0}#resume .resume-container-row .row .resume-bio-section .text-section .resume-bio{font-size:1.5rem}#resume .resume-container-row .row .resume-work-section{background-color:var(--color-accent);min-height:300px;color:var(--color-ink-inverse);padding:50px 100px}#resume .resume-container-row .row .resume-work-section .col .white-hr{border-top:1px solid var(--color-ink-inverse)}#resume .resume-container-row .row .resume-work-section .text-right{text-align:right}#resume .resume-container-row .row .resume-work-section .text-left{text-align:left}#resume .resume-container-row .row .resume-skills-section{background-color:var(--color-surface-raised);min-height:300px;color:var(--color-ink);padding:50px 100px}#resume .resume-container-row .row .resume-certfications-section{background-color:var(--color-accent-soft);min-height:300px;color:var(--color-ink-inverse);padding:50px 100px}#resume .resume-container-row .row .resume-certfications-section .col .white-hr{border-top:1px solid var(--color-ink-inverse)}#resume .resume-container-row .row .resume-parallax-bg{background-image:url(/img/hero/blueprint.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:150px}#contact .resume-container-row{padding-top:50px}#contact .resume-container-row .row #contact-banner{background-image:url(/img/hero/phone.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;height:300px;position:relative}#contact .resume-container-row .row #contact-banner .content{justify-content:center;align-items:center;width:100%;height:100%;margin-top:50px;display:flex}#contact .resume-container-row .row #contact-banner .content .text{color:var(--color-paper);text-shadow:3px 3px var(--color-shadow-text)}#contact .resume-container-row .row #contact-banner .content .text h1{font-size:3.5rem}#topbar{background:var(--color-nav-bg);justify-content:space-between;height:50px;padding:0 100px;display:flex;position:fixed;top:0}#topbar #bullets{z-index:0;width:80px;height:100vh;display:table;position:fixed;top:0;left:0}#topbar #bullets ul{vertical-align:middle!important;padding-left:0!important;display:table-cell!important}#topbar #bullets ul li{cursor:pointer;-o-transition:border-color .3s linear;z-index:9999;border:2px solid #0000;border-radius:100%;width:14px;height:14px;margin:14px auto;transition:border-color .3s linear}#topbar #bullets ul li span{background-color:var(--color-surface-raised);text-indent:-9999px;-o-transition:border .3s linear;border-radius:100%;width:14px;height:14px;transition:border .3s linear;display:block;position:relative}#topbar #bullets ul .current-page-item span{background-color:var(--color-accent-soft)}.footer-row{background:var(--color-panel);align-items:center;width:100%;height:300px;padding-left:80px;display:flex}.mb-navbar-dark{z-index:100;background:var(--color-panel);width:100%;position:fixed}.mb-navbar-dark .nav-link{color:var(--color-ink-inverse)}.mb-navbar-dark .nav-link:hover{color:var(--color-accent)!important}.mb-navbar-dark .navbar-brand{color:var(--color-ink-inverse)}.mb-navbar-dark .navbar-brand:hover{color:var(--color-accent)!important}.mb-navbar-dark .navbar-toggler{border-color:var(--color-accent-soft)}.mb-navbar-dark .navbar-toggler:focus{box-shadow:0 0 0 .25rem #c5e3bf40}.mb-navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgb(119, 221, 119)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}@media (max-width:991px){.mb-navbar-dark .navbar-collapse{background:var(--color-panel-alt);text-align:right;width:100%;padding:1rem;position:absolute;top:100%;left:0;right:0}.mb-navbar-dark .navbar-nav{align-items:flex-end}}#resume .active,#portfolio .active,#blog .active,#blog-post .active,#contact .active{color:var(--color-nav-active)}.footer-row{background:var(--color-panel);align-items:center;width:100%;height:300px;display:flex}.footer-row .quote{font-family:var(--font-body);color:var(--color-quote);font-style:italic;font-weight:200}.footer-row .location{color:var(--color-accent-soft);font-weight:200}.category-btn{margin-left:10px}#nprogress{pointer-events:none}#nprogress .bar{z-index:9999;width:100%;position:fixed;top:0;left:0;background:var(--color-accent-soft)!important;height:5px!important}#nprogress .peg{opacity:1;width:100px;height:100%;display:block;position:absolute;right:0;transform:rotate(3deg)translateY(-4px);box-shadow:0 0 10px var(--color-accent-soft),0 0 5px var(--color-accent-soft)!important}.dog-chatbot-button{background-color:var(--color-accent-soft);color:#fff;z-index:50;cursor:pointer;border:none;border-radius:9999px;padding:1rem;transition:all .3s;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.dog-chatbot-button-content{flex-direction:column;align-items:center;display:flex}.dog-chatbot-button-emoji{font-size:1.5rem}.dog-chatbot-button-text{margin-top:.25rem;font-size:.75rem}.dog-chatbot-window{z-index:50;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;width:24rem;height:600px;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 25px 50px -12px #00000040}.dog-chatbot-header{background-color:var(--color-accent-soft);color:#fff;border-radius:.5rem .5rem 0 0;justify-content:space-between;align-items:center;padding:1rem;display:flex}.dog-chatbot-header-info h3{margin:0;font-size:1.125rem;font-weight:700}.dog-chatbot-header-info p{color:#000;margin:.25rem 0 0;font-size:.75rem}.dog-chatbot-close-button{color:#fff;cursor:pointer;background:0 0;border:none;padding:0;font-size:2rem;line-height:1;transition:color .2s}.dog-chatbot-close-button:hover{color:#e5e7eb}.dog-chatbot-warning{color:#854d0e;text-align:center;background-color:#fefce8;border-bottom:1px solid #fde047;padding:.5rem;font-size:.75rem}.dog-chatbot-error{color:#991b1b;background-color:#fef2f2;border-bottom:1px solid #fca5a5;padding:.75rem;font-size:.875rem;position:relative}.dog-chatbot-error-close{float:right;color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.25rem;line-height:1}.dog-chatbot-error-close:hover{color:#991b1b}.dog-chatbot-messages{background-color:#f9fafb;flex-direction:column;flex:1;gap:1rem;padding:1rem;display:flex;overflow-y:auto}.dog-chatbot-message-user{justify-content:flex-end;display:flex}.dog-chatbot-message-assistant{justify-content:flex-start;display:flex}.dog-chatbot-bubble-user{background-color:var(--color-accent-soft);color:#fff;border-radius:.5rem;max-width:80%;padding:.75rem}.dog-chatbot-bubble-assistant{color:#1f2937;background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;max-width:80%;padding:.75rem}.dog-chatbot-assistant-name{color:var(--color-accent-soft);margin-bottom:.25rem;font-size:.75rem;font-weight:600}.dog-chatbot-message-text{white-space:pre-wrap;margin:0;font-size:.875rem}.dog-chatbot-loading{gap:.5rem;display:flex}.dog-chatbot-loading-dot{background-color:#9ca3af;border-radius:9999px;width:.5rem;height:.5rem;animation:1s infinite bounce}.dog-chatbot-loading-dot:nth-child(2){animation-delay:.1s}.dog-chatbot-loading-dot:nth-child(3){animation-delay:.2s}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-.5rem)}}.dog-chatbot-input-container{background-color:#fff;border-top:1px solid #e5e7eb;border-radius:0 0 .5rem .5rem;padding:1rem}.dog-chatbot-robot-check input{color:var(--color-surface);margin-bottom:15px;margin-right:15px}.dog-chatbot-input-row{gap:.5rem;display:flex}.dog-chatbot-input{border:1px solid #d1d5db;border-radius:.5rem;outline:none;flex:1;padding:.5rem 1rem;font-size:.875rem}.dog-chatbot-input:focus{ring:2px;ring-color:var(--color-accent-soft);border-color:var(--color-accent-soft);outline:none}.dog-chatbot-input:disabled{cursor:not-allowed;background-color:#f3f4f6}.dog-chatbot-send-button{background-color:var(--color-accent-soft);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.dog-chatbot-send-button:disabled{cursor:not-allowed;background-color:#d1d5db}.dog-chatbot-footer{justify-content:space-between;align-items:center;margin-top:.5rem;display:flex}.dog-chatbot-footer-text{color:#6b7280;font-size:.75rem}.dog-chatbot-footer-limit{color:#9ca3af;font-size:.75rem}@media (max-width:640px){.dog-chatbot-window{width:calc(100vw - 2rem);height:calc(100vh - 2rem);bottom:1rem;right:1rem}}@media (max-width:768px){.categories-row .categories-col,.posts-row,.projects-row{padding:25px 15px!important}.blog-cards{gap:25px}#resume .resume-bio-section,#resume .resume-work-section,#resume .resume-skills-section,#resume .resume-certfications-section{padding:25px 35px!important}#resume .resume-container-row .row #resume-banner .content .text h1{font-size:2rem!important}#resume .resume-container-row .row #resume-banner .content .text p{font-size:1.25rem!important}#resume .resume-bio-section .text-section .resume-bio{font-size:1rem!important}#resume .resume-work-section h3{font-size:1.5rem!important}#resume .resume-work-section p{font-size:.95rem!important}#index .banner .banner-headline,#index .banner .banner-subtitle,#index .banner .banner-details{margin-left:15px!important}#index .biography .biography-row .img{padding-left:15px!important}#index .projects .projects-row{padding:100px 15px 50px!important}#index .contact{padding-left:15px!important}#index .blog .posts-row{padding:100px 15px 50px!important}#blog .blog-container-row .posts-row{padding:0 15px!important}#portfolio .portfolio-container-row .categories-row .categories-col,#portfolio .portfolio-container-row .projects-row{padding:25px 15px!important}#topbar{padding:0 15px!important}.footer-row{padding-left:15px!important}.parallax-section,.parallax-bg,#index .banner,#blog .blog-container-row .row .blog-banner,#blog-post .post-container-row .row .post-banner,#portfolio .portfolio-container-row .row .portfolio-banner,#resume .resume-container-row .row #resume-banner,#resume .resume-container-row .row .resume-parallax-bg,#contact .resume-container-row .row #contact-banner{background-attachment:scroll!important}}:root{--t-xs:.75rem;--t-sm:.875rem;--t-base:1.0625rem;--t-md:clamp(1.125rem,1.05rem + .35vw,1.3125rem);--t-lg:clamp(1.5rem,1.3rem + .9vw,2rem);--t-xl:clamp(2rem,1.6rem + 1.8vw,3rem);--t-2xl:clamp(2.75rem,1.9rem + 3.6vw,5rem);--s-1:8px;--s-2:16px;--s-3:24px;--s-4:32px;--s-6:48px;--s-8:64px;--s-12:96px;--ease:cubic-bezier(.2,0,0,1);--dur:.18s;--gutter:clamp(20px,5vw,96px)}body{font-size:var(--t-base)}#index .banner{height:auto;min-height:64vh;padding:calc(var(--s-8) + 56px)var(--s-6)var(--s-8);position:relative}#index .banner:after{content:"";background:linear-gradient(#1a151259,#1a1512b8);position:absolute;inset:0}#index .banner .content{z-index:1;flex-direction:column;align-items:flex-start;width:100%;max-width:1100px;display:flex;position:relative;text-align:left!important}#index .banner .banner-headline{font-family:var(--font-display);font-size:var(--t-2xl);letter-spacing:-.025em;color:var(--color-paper);text-shadow:none;margin:0 0 var(--s-3)0;max-width:16ch;font-weight:600;line-height:1.02}#index .banner .banner-subtitle{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--color-accent-soft);text-shadow:none;margin:0 0 var(--s-3)0;order:-1;font-weight:400}#index .banner .banner-details{font-family:var(--font-mono);font-size:var(--t-sm);letter-spacing:.08em;color:#f7f4efd1;text-shadow:none;margin:0}#index .banner .content>.banner-subtitle{display:block}.r-title,.l-title,#index .biography .biography-row .r-title{min-width:150px;padding:var(--s-2)var(--s-3);background-color:var(--color-accent)!important;width:auto!important;height:auto!important}.r-title a,.r-title span,.l-title a,.l-title span,#index .biography .biography-row .r-title a,#index .biography .biography-row .r-title span{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--color-paper);font-weight:600}@media (prefers-reduced-motion:no-preference){.r-title a,.l-title a,#index .biography .biography-row .r-title a{transition:opacity var(--dur)var(--ease)}}.r-title a:hover,.l-title a:hover,#index .biography .biography-row .r-title a:hover{opacity:.75}#index .biography{padding:var(--s-12)0;min-height:0!important}#index .biography .r-title{top:calc(var(--s-12)*-1)!important}#index .biography .biography-row .img{padding-top:var(--s-1);align-items:flex-start!important;height:auto!important}#index .biography .biography-row .img img{border-width:3px!important;width:260px!important;height:260px!important}#index .biography .biography-row .text{align-items:flex-start;margin-top:0!important}#index .biography .body-copy{color:var(--color-ink);line-height:1.62;font-size:var(--t-md)!important}#index .biography .body-copy+.body-copy{margin-top:var(--s-3)}#index .biography .text-sm{margin-top:var(--s-4);padding-top:var(--s-2);border-top:1px solid var(--color-rule);font-family:var(--font-mono);font-size:var(--t-xs);color:var(--color-ink-muted);max-width:var(--measure);line-height:1.75}#index .biography .text-sm i{font-style:normal}#index .biography .text-sm a{color:var(--color-accent-text);text-underline-offset:.2em;text-decoration:underline}.showmedempuppies{text-underline-offset:.2em;font-weight:600;text-decoration:underline;color:var(--color-accent-text)!important;background:0 0!important}#index .biography .biography-row .puppy-container{gap:var(--s-3);margin-top:var(--s-3);justify-content:flex-start!important}#index .biography .biography-row .puppy-container .puppy{border-width:3px!important}#index .blog{padding:var(--s-12)0 var(--s-8);background:var(--color-surface)!important;min-height:0!important}#index .parallax-bg,.parallax-section{display:none!important}.blog-cards{gap:var(--s-6)0;align-items:stretch;padding:var(--s-6)var(--s-6)0!important}.blog-cards .card{background:var(--color-surface-raised);height:100%;border:none!important;border-radius:0!important}@media (prefers-reduced-motion:no-preference){.blog-cards .card{transition:transform var(--dur)var(--ease)}}.blog-cards .card:hover{transform:translateY(-4px)}.blog-cards .card .view{height:260px!important}.blog-cards .card-body{padding:var(--s-3)var(--s-3)var(--s-2)!important;text-align:left!important}.blog-cards .card-title{font-family:var(--font-display);font-size:var(--t-lg);letter-spacing:-.015em;color:var(--color-ink-strong);margin-bottom:var(--s-2);font-weight:600;line-height:1.14}.blog-cards .card-text{font-family:var(--font-body);font-size:var(--t-sm);color:var(--color-ink);line-height:1.62;text-align:left!important}.blog-cards .text-muted{margin-top:var(--s-2);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;text-transform:uppercase;display:block;color:var(--color-ink-muted)!important;text-align:left!important}.blog-cards .card-footer{border-top:1px solid var(--color-rule);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;color:var(--color-ink-muted);padding:var(--s-2)var(--s-3)!important;text-align:left!important;background:0 0!important}.category-label,.category-btn{--cat-fallback:var(--color-accent-text);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;line-height:1.4;display:inline-block;border:1px solid var(--cat,var(--cat-fallback))!important;color:color-mix(in oklab,var(--cat,var(--cat-fallback))45%,var(--color-ink-strong))!important;background:0 0!important;border-radius:0!important;padding:3px 10px!important}.blog-cards .category-label{margin-bottom:var(--s-2)}.blog-cards .card-body>.category-label+.card-text{margin-top:0}.category-btn:hover{background:var(--cat,var(--cat-fallback))!important;color:var(--color-ink-strong)!important;opacity:1!important}.mb-navbar-dark,#topbar{background:var(--color-nav-bg)!important}.mb-navbar-dark .navbar-brand,#topbar .navbar-brand{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}.mb-navbar-dark .nav-link,#topbar .nav-link{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.16em;text-transform:uppercase}.footer-row{height:auto!important;padding:var(--s-12)var(--s-6)!important;background:var(--color-panel)!important}.footer-row .quote{font-family:var(--font-body);font-size:var(--t-md);color:var(--color-quote);line-height:1.55}.footer-row .location{margin-top:var(--s-3);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.2em;color:var(--color-accent-soft)}.blog-banner{height:280px!important}#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{align-items:center;display:flex;position:relative}#resume-banner .content,#contact-banner .content,.blog-banner .content,.post-banner .content,.portfolio-banner .content{height:auto!important;margin-top:0!important}#resume-banner:after,#contact-banner:after,.blog-banner:after,.post-banner:after,.portfolio-banner:after{content:"";background:linear-gradient(#1a151259,#1a1512b8);position:absolute;inset:0}#resume-banner .content,#contact-banner .content,.blog-banner .content,.post-banner .content,.portfolio-banner .content{z-index:1;position:relative}#resume-banner .text h1,#contact-banner .text h1,.blog-banner .text h1,.post-banner .text h1,.portfolio-banner .text h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-paper);font-weight:600;line-height:1.06;font-size:var(--t-xl)!important;text-shadow:none!important}#resume-banner .text p,#contact-banner .text p,.blog-banner .text p,.post-banner .text p,.portfolio-banner .text p{font-family:var(--font-mono);letter-spacing:.08em;color:#f7f4efd9;font-size:var(--t-sm)!important;text-shadow:none!important}#resume .resume-bio-section,#resume .resume-skills-section{background:var(--color-paper)!important;color:var(--color-ink)!important}#resume .resume-work-section,#resume .resume-certfications-section{background:var(--color-surface)!important;color:var(--color-ink)!important}#resume .resume-work-section h2,#resume .resume-work-section h3,#resume .resume-work-section h4,#resume .resume-certfications-section h2,#resume .resume-certfications-section h3,#resume .resume-certfications-section h4{color:var(--color-ink-strong)!important}#resume .resume-work-section .white-hr,#resume .resume-certfications-section .white-hr{border-top-color:var(--color-rule)!important}#resume .resume-bio{line-height:1.62;font-size:var(--t-md)!important}#resume .download-section a{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase}#blog .posts-list .post-list-item{padding-block:var(--s-4)!important;border-bottom-color:var(--color-rule)!important}#blog .posts-list .post-list-item .title{margin-bottom:var(--s-2);font-family:var(--font-display);letter-spacing:-.02em;color:var(--color-ink-strong);font-weight:600;line-height:1.14;display:block;font-size:var(--t-lg)!important;text-shadow:none!important}@media (prefers-reduced-motion:no-preference){#blog .posts-list .post-list-item .title{transition:color var(--dur)var(--ease)}}#blog .posts-list .post-list-item .post-summary{margin-bottom:var(--s-2);font-family:var(--font-body);font-size:var(--t-base);color:var(--color-ink);max-width:var(--measure);line-height:1.6}#blog .posts-list .post-list-item .details{display:block}#blog .posts-list .post-list-item .category-btn{margin-top:var(--s-2);margin-left:0!important}.category-btn:empty,.category-label:empty{display:none!important}.category-btn:empty .subtitle,.category-label:empty .subtitle{font-family:var(--font-body);color:var(--color-ink);text-shadow:none!important}.category-btn:empty .details,.category-label:empty .details{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;color:var(--color-ink-muted)}.form-control{border-color:var(--color-rule)!important;background:var(--color-surface-raised)!important;color:var(--color-ink-strong)!important;border-radius:0!important}.form-label{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted)}.btn-primary{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.16em;text-transform:uppercase;background:var(--color-accent-text)!important;border-color:var(--color-accent-text)!important;padding:14px var(--s-4)!important;border-radius:0!important}.btn-primary:hover{background:var(--color-ink-strong)!important;border-color:var(--color-ink-strong)!important}:focus-visible{outline:2px solid var(--color-accent-text);outline-offset:2px}.dog-chatbot-button{background-color:var(--color-chat)!important;box-shadow:none!important;padding:var(--s-2)!important;border-radius:0!important}.dog-chatbot-button:hover{background-color:var(--color-chat-dark)!important;transform:none!important}.dog-chatbot-button-text{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-chat-ink)}.dog-chatbot-window{border:1px solid var(--color-rule)!important;box-shadow:none!important;background:var(--color-paper)!important;border-radius:0!important}.dog-chatbot-header{background-color:var(--color-chat)!important;border-radius:0!important}.dog-chatbot-header h3{font-family:var(--font-display);color:var(--color-chat-ink)}.dog-chatbot-header p{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.1em;color:#1d2b1abf!important}.dog-chatbot-close-button{color:var(--color-chat-ink)!important}.dog-chatbot-messages{background-color:var(--color-paper)!important}.dog-chatbot-bubble-user{color:var(--color-chat-ink);background-color:var(--color-chat)!important;border-radius:0!important}.dog-chatbot-bubble-assistant{background-color:var(--color-surface-raised)!important;border:1px solid var(--color-rule)!important;border-radius:0!important}.dog-chatbot-assistant-name{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-text)!important}.dog-chatbot-message-text{font-family:var(--font-body);line-height:1.55}.dog-chatbot-input,.dog-chatbot-send-button{border-radius:0!important}.dog-chatbot-input{font-family:var(--font-body);border-color:var(--color-rule)!important;background:var(--color-surface-raised)!important}.dog-chatbot-send-button{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;background-color:var(--color-accent-text)!important}.dog-chatbot-send-button:hover{background-color:var(--color-panel)!important}.dog-chatbot-input-container,.dog-chatbot-footer-text,.dog-chatbot-footer-limit{background-color:var(--color-paper);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.08em}@media (max-width:991px){#topbar,.mb-navbar-dark{align-items:center;min-height:56px;height:auto!important;padding:0 var(--s-2)!important;flex-wrap:nowrap!important}#topbar .navbar-brand,.mb-navbar-dark .navbar-brand{letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;order:1;min-width:0;font-size:.8125rem;overflow:hidden;margin-right:var(--s-2)!important}.navbar-toggler{flex:none;order:2;margin-left:auto!important}.navbar-collapse{background:var(--color-panel-alt)!important}}@media (max-width:390px){#topbar .navbar-brand,.mb-navbar-dark .navbar-brand{font-size:.75rem}}@media (max-width:767.98px){#index .banner{min-height:52vh;padding:calc(var(--s-6) + 56px)var(--s-3)var(--s-6)}#index .biography{padding:var(--s-8)0}#index .biography .biography-row{padding-inline:var(--s-3)}#index .biography .biography-row .img{margin-bottom:var(--s-4);justify-content:flex-start!important}#index .biography .biography-row .img img{width:180px!important;height:180px!important}#index .biography .body-copy,#index .biography .text-sm{max-width:100%}.blog-cards{gap:var(--s-4)0;padding:var(--s-4)var(--s-2)0!important}.blog-cards .card .view{height:200px!important}.blog-cards .card-body{padding:var(--s-3)var(--s-2)var(--s-2)!important}.blog-cards .card-footer{padding:var(--s-2)!important}#index .blog{padding:var(--s-8)0 var(--s-6)}.r-title,.l-title,#index .biography .biography-row .r-title{display:none!important}.categories-row .categories-col .content{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--s-2);flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.categories-row .categories-col .content::-webkit-scrollbar{display:none}.categories-row .categories-col .content .category-btn{flex:none;margin-top:0}.footer-row{padding:var(--s-8)var(--s-3)!important}#blog .posts-row,.categories-row .categories-col{padding-inline:var(--s-3)!important}#index .biography .biography-row .img{display:none!important}.dog-chatbot-button{z-index:60;justify-content:center;align-items:center;width:100%;min-height:54px;padding:var(--s-2)!important;border-top:1px solid var(--color-chat-dark)!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.dog-chatbot-button-content{align-items:center;gap:var(--s-1);flex-direction:row!important}.dog-chatbot-button-emoji{font-size:var(--t-base)}.dog-chatbot-button-text{margin-top:0!important}body{padding-bottom:54px}.dog-chatbot-window{max-height:100dvh;z-index:200!important;border:none!important;width:100%!important;height:100%!important;inset:0!important}.dog-chatbot-header{padding:var(--s-3)var(--s-2)!important;padding-top:max(var(--s-3),env(safe-area-inset-top))!important}.dog-chatbot-close-button{min-width:44px;min-height:44px;font-size:var(--t-lg)!important}.dog-chatbot-input-container{padding-bottom:max(var(--s-2),env(safe-area-inset-bottom))!important}}#topbar,.mb-navbar-dark,#index .banner{padding-inline:var(--gutter)!important}#index .biography,#index .blog{padding-inline:var(--gutter)}.blog-cards{padding-inline:0!important}.footer-row,#blog .blog-container-row .posts-row,#blog .posts-row,.categories-row .categories-col,#resume .resume-bio-section,#resume .resume-work-section,#resume .resume-skills-section,#resume .resume-certfications-section,#contact .resume-container-row>.row>[class*=col-]{padding-inline:var(--gutter)!important}#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{padding-inline:var(--gutter)}#index .biography .biography-row,#index .blog .blog-row,#blog .posts-row,.categories-row{margin-inline:0!important}#index .biography .biography-row>[class*=col-],#blog .posts-row>[class*=col-],.categories-row>[class*=col-]{padding-inline:0!important}@media (min-width:768px){#index .biography .biography-row{gap:var(--s-8);grid-template-columns:minmax(0,260px) minmax(0,1fr);align-items:start;display:grid}#index .biography .biography-row>.img,#index .biography .biography-row>.text{flex:none!important;width:auto!important;max-width:none!important}}@media (max-width:767px){#index .biography .biography-row{display:block}}#index .biography .body-copy,#index .biography .text-sm{margin-inline:0}#index .banner .banner-headline,#index .banner .banner-subtitle,#index .banner .banner-details{margin-left:0!important}#index .banner{justify-content:flex-start!important}@media (max-width:767px){#index .biography .biography-row{padding-inline:0!important}}#index .biography .biography-row .text{display:block!important}.blog-cards{gap:var(--s-6)var(--s-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch;display:grid!important}.blog-cards>[class*=col-]{flex:none!important;width:auto!important;max-width:none!important;padding-inline:0!important}.footer-row>[class*=col-]{padding-inline:0!important}#index .biography{position:relative}#index .biography .biography-row{position:static!important}#index .biography .r-title{top:0!important;right:0!important}@media (min-width:768px){#index .biography .biography-row{column-gap:var(--s-12);grid-template-columns:minmax(0,300px) minmax(0,1fr)}#index .biography .biography-row .img img{width:300px!important;height:300px!important}}#index .biography .body-copy,#index .biography .text-sm{max-width:74ch}.categories-row .categories-col .content{justify-content:flex-start!important}#resume .resume-bio,#resume .text-section{max-width:none!important}.dog-chatbot-button{padding:var(--s-2)var(--s-3)!important;right:0!important}html{background:var(--color-paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:var(--color-ink);background:var(--color-paper)!important}#blog .categories-col,#blog .posts-row,#resume .resume-bio-section,#resume .resume-work-section,#resume .resume-skills-section,#resume .resume-certfications-section{padding-inline:var(--gutter)!important}.categories-row .content{gap:var(--s-1)}.categories-row .content .category-btn{margin-left:0!important}#resume .resume-container-row .row{margin-inline:0!important}#resume .resume-bio-section [class*=col-],#resume .resume-work-section [class*=col-],#resume .resume-skills-section [class*=col-],#resume .resume-certfications-section [class*=col-]{padding-inline:0!important}#blog .posts-list .post-list-item .title:hover{color:color-mix(in oklab,var(--cat,var(--color-accent-text))45%,var(--color-ink-strong))!important}.card{word-wrap:break-word;background-clip:border-box;flex-direction:column;min-width:0;display:flex;position:relative}.card-body{flex:auto}.card-footer{margin-top:auto}.view{position:relative;overflow:hidden}#index .banner,#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{position:relative;height:auto!important;padding:calc(var(--s-8) + 56px)var(--gutter)var(--s-8)!important;background-position:50%!important;background-size:cover!important;background-attachment:scroll!important;justify-content:flex-start!important;align-items:center!important;display:flex!important}#index .banner .content,#resume-banner .content,#contact-banner .content,.blog-banner .content,.post-banner .content,.portfolio-banner .content{z-index:1;flex-direction:column;position:relative;text-align:left!important;justify-content:center!important;align-items:flex-start!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;display:flex!important}#index .banner .text,#resume-banner .text,#contact-banner .text,.blog-banner .text,.post-banner .text,.portfolio-banner .text{width:100%;color:var(--color-paper);text-align:left!important}#index .banner h1,#index .banner .text h1,#index .banner .banner-headline,#resume-banner h1,#resume-banner .text h1,#resume-banner .banner-headline,#contact-banner h1,#contact-banner .text h1,#contact-banner .banner-headline,.blog-banner h1,.blog-banner .text h1,.blog-banner .banner-headline,.post-banner h1,.post-banner .text h1,.post-banner .banner-headline,.portfolio-banner h1,.portfolio-banner .text h1,.portfolio-banner .banner-headline{font-family:var(--font-display);letter-spacing:-.025em;color:var(--color-paper);font-weight:600;line-height:1.04;margin:0 0 var(--s-2)0!important;font-size:var(--t-2xl)!important;text-shadow:none!important;text-align:left!important}#index .banner p,#index .banner .text p,#index .banner .banner-details,#index .banner .banner-subtitle,#resume-banner p,#resume-banner .text p,#resume-banner .banner-details,#resume-banner .banner-subtitle,#contact-banner p,#contact-banner .text p,#contact-banner .banner-details,#contact-banner .banner-subtitle,.blog-banner p,.blog-banner .text p,.blog-banner .banner-details,.blog-banner .banner-subtitle,.post-banner p,.post-banner .text p,.post-banner .banner-details,.post-banner .banner-subtitle,.portfolio-banner p,.portfolio-banner .text p,.portfolio-banner .banner-details,.portfolio-banner .banner-subtitle{font-family:var(--font-mono);letter-spacing:.08em;font-size:var(--t-sm)!important;color:#f7f4efd9!important;text-shadow:none!important;text-align:left!important;margin:0!important}#index .banner{min-height:64vh}#index .banner .banner-subtitle{text-transform:uppercase;order:-1;margin:0 0 var(--s-3)0!important;font-size:var(--t-xs)!important;letter-spacing:.22em!important;color:var(--color-accent-soft)!important}#index .banner .banner-details{margin-top:var(--s-3)!important}#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{min-height:300px!important}@media (max-width:767.98px){#index .banner,#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{padding:calc(var(--s-6) + 56px)var(--gutter)var(--s-6)!important}#index .banner{min-height:52vh}#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner{min-height:220px!important}}.blog-container-row>.row,.resume-container-row>.row,.post-container-row>.row,.portfolio-container-row>.row,#index .banner .row,#resume-banner .row,#contact-banner .row,.blog-banner .row,.post-banner .row,.portfolio-banner .row,.mask.row,.overlay.row{margin-inline:0!important}#index .banner [class*=col-],#resume-banner [class*=col-],#contact-banner [class*=col-],.blog-banner [class*=col-],.post-banner [class*=col-],.portfolio-banner [class*=col-],.blog-container-row>.row>[class*=col-],.resume-container-row>.row>[class*=col-],.post-container-row>.row>[class*=col-],.portfolio-container-row>.row>[class*=col-]{padding-inline:0!important}#index .banner,#resume-banner,#contact-banner,.blog-banner,.post-banner,.portfolio-banner,#index .banner,.blog-container-row>.row>.blog-banner,.post-container-row>.row>.post-banner,.portfolio-container-row>.row>.portfolio-banner,.resume-container-row>.row>#resume-banner,.resume-container-row>.row>#contact-banner{padding-inline:var(--gutter)!important}#index .banner .content,.blog-banner .content,.post-banner .content,.portfolio-banner .content,#resume-banner .content,#contact-banner .content,#index .banner .container,.blog-banner .container,.post-banner .container,.portfolio-banner .container,#resume-banner .container,#contact-banner .container,#index .banner .text,.blog-banner .text,.post-banner .text,.portfolio-banner .text,#resume-banner .text,#contact-banner .text{width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important}.retrieval{padding:var(--s-1)var(--s-2);border-top:1px solid var(--color-rule);background:var(--color-paper);flex:none}.retrieval-bars{align-items:flex-end;gap:2px;height:18px;margin-bottom:6px;display:flex}.retrieval-bar{background:var(--color-rule);transform-origin:bottom;border-radius:0;flex:none;width:3px}@media (prefers-reduced-motion:no-preference){.retrieval-bar{transition:height var(--dur)var(--ease),background-color var(--dur)var(--ease)}}.retrieval-bar.is-lead{background:var(--color-accent-text)}@media (prefers-reduced-motion:no-preference){.is-ready .retrieval-bar{animation:retrieval-rise var(--dur)var(--ease)both}}.is-loading .retrieval-bar{background:var(--color-ink-muted)}@media (prefers-reduced-motion:no-preference){.is-loading .retrieval-bar{animation:retrieval-sweep 1s var(--ease)infinite}}@media (prefers-reduced-motion:reduce){.is-loading .retrieval-bar{background:var(--color-ink-muted);height:40%!important}}.is-idle .retrieval-bar{background:var(--color-rule)}@keyframes retrieval-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes retrieval-sweep{0%,to{opacity:.5;height:18%}50%{opacity:1;height:90%}}.retrieval-stats{gap:var(--s-1)var(--s-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex-wrap:wrap;margin:0;display:flex}.retrieval-stats>div{flex-direction:column;gap:1px;display:flex}.retrieval-stats dt{letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted);font-size:9px}.retrieval-stats dd{color:var(--color-ink-strong);margin:0;font-size:12px;line-height:1.1}.is-loading .retrieval-stats dd{color:var(--color-ink-muted)}.is-idle .retrieval-stats dd{color:var(--color-rule)}
