*,:after,:before{box-sizing:border-box}:root{--ff-primary:"Source Sans Pro",sans-serif;--ff-secondary:"Source Code Pro",monospace;--fw-reg:300;--fw-bold:900;--clr-light:#fff;--clr-dark:#303030;--clr-accent:#add8e6;--fs-h1:3rem;--fs-h2:2.25rem;--fs-h3:1.25rem;--fs-body:1rem;--bs:0.25em 0.25em 0.75em rgba(0,0,0,0.25),0.125em 0.125em 0.25em rgba(0,0,0,0.15)}@media (min-width:800px){:root{--fs-h1:4.5rem;--fs-h2:3.75rem;--fs-h3:1.5rem;--fs-body:1.125rem}}body{background:var(--clr-light);color:var(--clr-dark);margin:0;font-family:var(--ff-primary);font-size:var(--fs-body);line-height:1.6}section{padding:5em 2em}img{display:block;max-width:100%}strong{font-weight:var(--fw-bold)}:focus{outline:3px solid var(--clr-accent);outline-offset:3px}.btn{display:inline-block;padding:.5em 2.5em;background:var(--clr-accent);color:var(--clr-dark);text-decoration:none;cursor:pointer;font-size:.8rem;text-transform:uppercase;letter-spacing:2px;font-weight:var(--fw-bold);transition:transform .2s ease-in-out}.btn:hover{transform:scale(1.1)}h1,h2,h3{line-height:1;margin:0}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}.section__title{margin-bottom:.25em}.section__title--intro{font-weight:var(--fw-reg)}.section__title--intro strong{display:block}.section__subtitle{margin:0;font-size:var(--fs-h3)}.section__subtitle--about,.section__subtitle--intro{background:var(--clr-accent);padding:.25em 1em;font-family:var(--ff-secondary);margin-bottom:1em}.section__subtitle--work{color:var(--clr-accent);font-weight:var(--fw-bold);margin-bottom:2em}.logo{max-width:100px}.nav{position:fixed;background:var(--clr-dark);color:var(--clr-light);height:40vh;top:0;bottom:40%;left:60%;right:0;z-index:100;transform:translateX(100%);transition:transform .25s cubic-bezier(.5,0,.5,1)}.nav__list{list-style:none;display:flex;height:100%;flex-direction:column;justify-content:space-evenly;align-items:center;margin:0;padding:0}.nav__link{color:inherit;font-weight:var(--fw-bold);font-size:var(--fs-h2);text-decoration:none}.nav__link:hover{color:var(--clr-accent)}.nav-toggle{padding:.5em;background:transparent;border:0;cursor:pointer;position:absolute;right:1em;top:1em;z-index:1000}.nav-open .nav{transform:translateX(0)}.navbar .navbar-nav .nav-link{text-transform:capitalize!important}.nav-link:hover{text-decoration:underline}.nav-open .nav-toggle{position:fixed}.nav-open .hamburger{transform:rotate(225deg)}.nav-open .hamburger:before{transform:rotate(90deg) translateX(-6px)}.nav-open .hamburger:after{opacity:0}.hamburger{display:block;position:relative}.hamburger,.hamburger:after,.hamburger:before{background:var(--clr-accent);width:2em;height:3px;border-radius:1em;transition:transform .25s ease-in-out}.hamburger:after,.hamburger:before{content:"";position:absolute;left:0;right:0}.hamburger:before{top:6px}.hamburger:after{bottom:6px}.intro{position:relative}.intro__img{box-shadow:var(--bs)}.section__subtitle--intro{display:inline-block}@media (min-width:600px){.intro{display:grid;width:min-content;margin:0 auto;grid-column-gap:1em;grid-template-areas:"img title" "img subtitle";grid-template-columns:min-content max-content}.intro__img{grid-area:img;min-width:250px;position:relative;z-index:2}.section__subtitle--intro{align-self:start;grid-column:-1/1;grid-row:2;text-align:right;position:relative;left:-1.5em;width:calc(100% + 1.5em)}}.no-border{border:none!important;box-shadow:none!important}.my-services{background-color:var(--clr-dark);background-size:cover;color:var(--clr-light);text-align:center}.section__title--services{color:var(--clr-accent);position:relative}.section__title--services:after{content:"";display:block;width:2em;height:1px;margin:.5em auto 1em;background:var(--clr-light);opacity:.25}.services{margin-bottom:4em}.service{text-align:left;max-width:500px;margin:0 auto}.service-header{color:var(--clr-accent)}@media (min-width:800px){.services{display:flex;max-width:1000px;margin-left:auto;margin-right:auto}.service+.service{margin-left:2em}}.about-me{max-width:1000px;margin:0 auto}.about-me__img{box-shadow:var(--bs)}@media (min-width:600px){.about-me{display:grid;grid-template-columns:1fr 200px;grid-template-areas:"title img" "subtitle img" "text img";grid-column-gap:2em}.section__title--about{grid-area:title}.section__subtitle--about{grid-column:1/-1;grid-row:2;position:relative;left:-1em;width:calc(100% + 2em);padding-left:1em;padding-right:calc(200px + 4em)}.about-me__img{grid-area:img;position:relative;z-index:2}}.my-work{background-color:var(--clr-dark);color:var(--clr-light);text-align:center}.portfolio{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.portfolio__item{background:var(--clr-accent);overflow:hidden}.portfolio__img{transition:transform .75s cubic-bezier(.5,0,.5,1),opacity .25s linear}.portfolio__item:focus{position:relative;z-index:2}.portfolio__img:hover,.portfolio__item:focus .portfolio__img{transform:scale(1.2);opacity:.5}.footer{background:#111;color:var(--clr-accent);text-align:center;padding:2.5em 0;font-size:var(--fs-h3)}.footer a{color:inherit;text-decoration:none}.footer__link{font-weight:var(--fw-bold)}.footer__link:hover,.social-list__link:hover{opacity:.7}.footer__link:hover{text-decoration:underline}.social-list{list-style:none;display:flex;justify-content:center;margin:2em 0 0;padding:0}.social-list__item{margin:0 .5em}.social-list__link{padding:.5em}.portfolio-item-individual{padding:0 2em 2em;max-width:1000px;margin:0 auto}.portfolio-item-individual p{max-width:600px;margin-left:auto;margin-right:auto}.navigation{position:fixed;top:20px;right:20px;width:120px;height:60px;background:#fff;box-shadow:0 25px 35px rgba(0,0,0,.1);display:flex;justify-content:space-between;transition:height .5s,width .5s;transition-delay:0s,.75s;overflow:hidden;z-index:100}.navigation.active{width:300px;height:350px;transition:width .5s,height .5s;transition-delay:0s,.75s}.navigation .userBx{position:relative;width:60px;height:60px;background:#fff;display:flex;align-items:center;overflow:hidden;transition:.5s;transition-delay:.5s}.navigation.active .userBx{width:calc(100% - 60px);transition-delay:0s}.navigation .userBx .username{white-space:nowrap;color:var(--clr-dark);font-size:1.1em}.navigation .userBx .imgBx{position:relative;min-width:60px;height:60px;overflow:hidden;background:#000;border-radius:50%;border:10px solid #fff}.navigation .userBx .imgBx img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.navigation .menuToggle{position:relative;width:60px;height:60px;color:var(--clr-accent);background:#fff;cursor:pointer;display:flex;justify-content:center;align-items:center}.navigation .menuToggle:before{transform:translateY(-10px);box-shadow:0 10px #555}.navigation .menuToggle:after,.navigation .menuToggle:before{content:"";position:absolute;width:32px;height:2px;background:#555;transition:.5s}.navigation .menuToggle:after{transform:translateY(10px)}.navigation.active .menuToggle:before{transform:translateY(0) rotate(45deg);box-shadow:0 0 #555}.navigation.active .menuToggle:after{transform:translateY(0) rotate(-45deg)}.menu{position:absolute;width:100%;height:calc(100% - 60px);margin-top:60px;padding:20px;border-top:1px solid rgba(0,0,0,.1)}.menu li{list-style:none}.menu li a{display:flex;align-items:center;gap:10px;margin:20px 0;font-size:1em;text-decoration:none}.menu li a:hover{color:var(--clr-accent)}.menu li a ion-icon{font-size:1.5em}@media (max-width:768px){.navbar{position:relative;z-index:1000}.navbar-toggler{z-index:1100}.collapse.navbar-collapse{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);z-index:1050;display:none;flex-direction:column;align-items:flex-start;padding:60px 20px 20px}.collapse.navbar-collapse.show,.navbar-nav{display:flex}.navbar-nav{flex-direction:column;align-items:flex-start;width:100%}.nav-item{margin:10px 0;width:100%}.nav-link{display:block;padding:10px 20px;background:rgba(255,255,255,.9);color:var(--clr-dark);text-decoration:none;width:100%;text-align:left;text-transform:capitalize!important}.nav-link:hover{background:rgba(255,255,255,1);text-decoration:underline;color:var(--clr-accent)}}.spinner-page{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw}.lds-roller{display:inline-block;position:relative;width:80px;height:80px}.lds-roller div{animation:lds-roller 1.2s cubic-bezier(.5,0,.5,1) infinite;transform-origin:40px 40px}.lds-roller div:after{content:" ";display:block;position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;margin:-4px 0 0 -4px}.lds-roller div:first-child{animation-delay:-36ms}.lds-roller div:first-child:after{top:63px;left:63px}.lds-roller div:nth-child(2){animation-delay:-72ms}.lds-roller div:nth-child(2):after{top:68px;left:56px}.lds-roller div:nth-child(3){animation-delay:-.108s}.lds-roller div:nth-child(3):after{top:71px;left:48px}.lds-roller div:nth-child(4){animation-delay:-.144s}.lds-roller div:nth-child(4):after{top:72px;left:40px}.lds-roller div:nth-child(5){animation-delay:-.18s}.lds-roller div:nth-child(5):after{top:71px;left:32px}.lds-roller div:nth-child(6){animation-delay:-.216s}.lds-roller div:nth-child(6):after{top:68px;left:24px}.lds-roller div:nth-child(7){animation-delay:-.252s}.lds-roller div:nth-child(7):after{top:63px;left:17px}.lds-roller div:nth-child(8){animation-delay:-.288s}.lds-roller div:nth-child(8):after{top:56px;left:12px}@keyframes lds-roller{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:50}.modal-content{background-color:white;padding:2rem;border-radius:.75rem;box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -1px rgb(0 0 0/.06);width:90%;max-width:640px}.modal-title{font-size:1.875rem;font-weight:600;color:#374151;margin-bottom:1.25rem;text-align:center}.modal-summary{margin-bottom:1rem;padding:.5rem 0;border-bottom:1px solid #eee}.modal-summary strong{font-weight:500;color:#374151;margin-right:.5rem}.modal-button{background-color:#16a340;color:white;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-weight:500;cursor:pointer;transition:background-color .2s ease-in-out}.modal-button:hover{background-color:#14802b}.form-container{max-width:600px;margin:0 auto}.form-card{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.1)}.form-title{font-size:24px;font-weight:700;margin-bottom:10px;color:#333}.form-description{font-size:16px;color:#666;margin-bottom:20px}.form-group{margin-bottom:15px}.form-label{display:block;font-weight:600;margin-bottom:5px}.form-input,.form-label{font-size:14px;color:#333}.form-input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;outline:none;transition:border-color .3s}.form-input:focus{border-color:#007bff}.form-error{color:red;font-size:12px;margin-top:5px}.form-button{width:100%;padding:12px;background-color:#007bff;color:#fff;font-size:16px;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s}.form-button:hover{background-color:#0056b3}.finance-theme{background-color:#282a36;color:#f8f8f2}.finance-theme .navbar{background-color:#44475a!important}.finance-theme .nav-link{color:#f8f8f2!important}.finance-theme .nav-link:hover{color:#50fa7b!important}.finance-theme .navbar-toggler-icon{filter:invert(100%)}.finance-theme .container-fluid{background-color:#282a36}.finance-theme .form-icon{color:#ff79c6!important}#__next-dev-ui,#__turbo-dev-tools,#turbopack-floating-menu,.__next-build-watcher,.__next-dev-overlay,.__next-dev-overlay-wrapper,.__next-webpack-indicator,.__nextjs-build-indicator,.__nextjs-dev-indicator,.__turbo-dev-indicator,.__turbo-dev-overlay,.__turbo-inspector,.__turbopack-dev-overlay,._turbo-dev-widget,.turbo-debug-widget,.turbopack-dev-indicator,[class*=__nextjs],[class*=build-activity],[class*=next-dev],[class*=turbo],[data-nextjs-dev-overlay],[data-nextjs-turbopack],[data-turbo-dev-widget],[id*=__nextjs],[id*=build-activity],[id*=next-dev],[id*=turbo]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;position:absolute!important;left:-9999px!important;width:0!important;height:0!important;overflow:hidden!important;z-index:-9999!important}