*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Comfortaa,cursive;font-size:1rem;color:#262525;background-color:#f5f5f5;line-height:1.6}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration:none;transition:color .3s ease-in-out}ul,ol{list-style:none}body,p,span,a,div,input,textarea,button,select,label{font-family:Comfortaa,cursive}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:Nunito,sans-serif;font-weight:700;line-height:1.2;margin-bottom:1rem}h1,.h1{font-size:3rem}@media(min-width:768px){h1,.h1{font-size:3.75rem}}h2,.h2{font-size:2.25rem}h3,.h3{font-size:1.875rem}h4,.h4{font-size:1.5rem}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1.125rem}p{margin-bottom:1rem}nav,nav a{font-family:Comfortaa,cursive}.font-title{font-family:Nunito,sans-serif}.font-body{font-family:Comfortaa,cursive}.prose{line-height:1.75}.prose p{margin-bottom:2rem}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin-top:4rem;margin-bottom:2rem}.prose ul,.prose ol{list-style-position:inside;margin-bottom:2rem}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose a{color:#cc6532;text-decoration:underline}.prose a:hover{color:#9a4b24}.prose.prose-lg{font-size:1.125rem}#app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1;width:100%}.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.container-sm{width:100%;max-width:640px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.container-md{width:100%;max-width:768px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.container-lg{width:100%;max-width:1024px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.container-xl{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.container-2xl{width:100%;max-width:1536px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}.grid{display:grid;gap:2rem}.grid-cols-1,.grid-cols-2{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:768px){.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.grid-cols-3{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:768px){.grid-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:640px){.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1 1 0%}.gap-4{gap:1rem}.gap-6{gap:2rem}.gap-8{gap:4rem}.gap-12{gap:6rem}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:gap-12{gap:6rem}}@media(min-width:1024px){.lg\:px-8{padding-left:4rem;padding-right:4rem}.lg\:py-16{padding-top:8rem;padding-bottom:8rem}}.banner{position:sticky;top:0;z-index:1020;background-color:#fff;border-radius:.5rem;margin:.5rem 1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:.5rem 1rem}@media(min-width:768px){.banner{border-radius:1rem;margin:2rem 4rem;padding:1rem 2rem}}.header-container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.125rem;color:#262525}.brand img{height:40px;width:auto}@media(min-width:768px){.brand img{height:50px}}@media(min-width:768px){.brand{gap:1rem;font-size:1.25rem}}.brand:hover{color:#cc6532}.nav-primary{display:flex;align-items:center;position:relative}.nav-wrapper{display:flex;align-items:center;gap:1rem}@media(min-width:1024px){.nav-wrapper{gap:4rem}}.site-footer{background-color:#fff;border-radius:0;margin:0;box-shadow:none}@media(min-width:768px){.site-footer{border-radius:2rem;margin:1.25rem;box-shadow:0 1px 2px #0000000d}}.site-footer__container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem;padding:3rem 1.5rem}@media(min-width:1024px){.site-footer__container{padding:4rem 2rem}}.site-footer__grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.site-footer__grid{grid-template-columns:repeat(3,1fr);gap:3rem;align-items:center}}@media(min-width:768px){.site-footer__column{text-align:left}}.site-footer__column:first-child{text-align:center}@media(min-width:768px){.site-footer__column:first-child{text-align:left}}.site-footer__logo{display:inline-block;margin-bottom:1rem;transition:opacity .3s ease-in-out}.site-footer__logo:hover{opacity:.8}.site-footer__logo img{height:130px;width:auto}.site-footer__title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;font-family:Nunito,sans-serif}.site-footer__title--primary{color:#cc6532}.site-footer__description{color:#6b7280;font-size:1.25rem;font-family:Comfortaa,cursive;font-weight:500}.site-footer__nav{display:flex;flex-direction:column;gap:.5rem}.site-footer__menu{display:flex;flex-direction:column;gap:.5rem;list-style:none;padding:0;margin:0}.site-footer__menu-link{color:#6b7280;transition:color .3s ease-in-out}.site-footer__menu-link:hover{color:#cc6532}.site-footer__contact-list{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.site-footer__contact-item{display:flex;align-items:center;justify-content:flex-start;color:#6b7280;font-family:Comfortaa,cursive}@media(min-width:768px){.site-footer__contact-item{justify-content:flex-start}}.site-footer__contact-icon{width:1.25rem;height:1.25rem;margin-right:.5rem;color:#cc6532;flex-shrink:0}.site-footer__contact-link{color:inherit;transition:color .3s ease-in-out}.site-footer__contact-link:hover{color:#cc6532}.site-footer__separator{border-top:1px solid #E5E7EB;margin:2rem 0}.site-footer__copyright-section{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.site-footer__copyright-text{font-size:.875rem;color:#6b7280;font-family:Comfortaa,cursive}.site-footer__made-with-love{font-size:.875rem;color:#9ca3af;font-family:Comfortaa,cursive}.btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .3s ease-in-out}.btn:focus{outline:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:#cc6532;color:#fff}.btn-primary:hover:not(:disabled){background-color:#9a4b24}.btn-secondary{background-color:#4a4a4a;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#313131}.btn-outline{background-color:transparent;border-color:#cc6532;color:#cc6532}.btn-outline:hover:not(:disabled){background-color:#cc6532;color:#fff}.btn-ghost{background-color:transparent;color:currentColor}.btn-ghost:hover:not(:disabled){background-color:#0000000d}.btn-lg{padding:.75rem 2rem;font-size:1rem}.btn-sm{padding:.25rem .5rem;font-size:.75rem}.bg-brown{background-color:#cc6532;color:#fff;text-decoration:none!important;border:none;outline:none}.bg-brown:hover{background-color:#9a4b24;color:#fff}.bg-brown a{text-decoration:none!important}.card{background-color:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:2rem;transition:box-shadow,transform .3s ease-in-out}.card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-2px)}.card-bordered{border:1px solid rgba(0,0,0,.1)}.card-compact{padding:1rem}.timeline-card{background-color:#fff;border-radius:2rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:box-shadow,transform .3s ease-in-out}.timeline-card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:translateY(-4px)}.project-card{background-color:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:box-shadow .3s ease-in-out}.project-card:hover{box-shadow:0 25px 50px -12px #00000040}.project-card .project-image{overflow:hidden}.project-card .project-image img{width:100%;height:12rem;object-fit:cover;transition:transform .3s ease-in-out}.project-card:hover .project-image img{transform:scale(1.05)}.project-card .project-content{padding:2rem}.skill-card{background-color:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:box-shadow .3s ease-in-out}.skill-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.form-control{width:100%;padding:.5rem 1rem;border:1px solid rgba(0,0,0,.2);border-radius:.5rem;font-size:1rem;transition:border-color,box-shadow .3s ease-in-out}.form-control:focus{outline:none;border-color:#cc6532;box-shadow:0 0 0 3px #cc65321a}.form-control:disabled{opacity:.5;cursor:not-allowed}.form-label{display:block;margin-bottom:.25rem;font-weight:500;font-size:.875rem}.form-group{margin-bottom:2rem}textarea.form-control{resize:vertical;min-height:120px}.input-group{display:flex;align-items:stretch}.input-group .form-control{border-radius:0}.input-group .form-control:first-child{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.input-group .form-control:last-child{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.input-group .btn{border-radius:0}.input-group .btn:first-child{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.input-group .btn:last-child{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.menu{display:flex;align-items:center;gap:2rem}.menu a{position:relative;text-decoration:none}.menu a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:#cc6532;transition:width .3s ease-in-out}.menu a:hover:after,.menu a.active:after{width:100%}.menu a{color:#262525;font-size:1rem;font-family:Nunito,sans-serif;transition:color .2s ease}@media(min-width:768px){.menu a{font-size:1.125rem}}@media(min-width:1024px){.menu a{font-size:1.25rem}}.menu a:hover{color:#cc6532}.menu-desktop{display:none}@media(min-width:1024px){.menu-desktop{display:flex}}.menu-mobile{display:none}@media(min-width:1024px){.menu-mobile{display:none}}.mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .3s ease-in-out}.mobile-menu-toggle:focus{outline:none}.mobile-menu-toggle{background-color:transparent;padding:.5rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center;width:44px;height:44px}.mobile-menu-toggle svg{width:24px;height:24px;color:#262525}.mobile-menu-toggle:hover{background-color:#cc65321a}.mobile-menu-toggle:hover svg{color:#cc6532}.mobile-menu-toggle:active{background-color:#cc653233}.mobile-menu-dropdown{position:fixed;inset:0;background-color:#00000080;z-index:1050;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.mobile-menu-dropdown:not(.hidden){opacity:1;visibility:visible}.mobile-menu-dropdown:not(.hidden) .mobile-menu-content{transform:translate(0)}.mobile-menu-content{position:absolute;top:0;right:0;width:80%;max-width:320px;height:100%;background-color:#fff;box-shadow:0 25px 50px -12px #00000040;padding:4rem 2rem;transform:translate(100%);transition:transform .3s ease;overflow-y:auto}.mobile-menu-content .menu{flex-direction:column;align-items:flex-start;gap:2rem;margin-top:4rem}.mobile-menu-content .menu a{font-size:1.25rem;padding:.5rem 0 1rem;width:100%;border-bottom:1px solid #E5E7EB}.btn-mobile-contact{width:100%;text-align:center;margin-top:4rem}.mobile-menu-close{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .3s ease-in-out}.mobile-menu-close:focus{outline:none}.mobile-menu-close{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:50%;background-color:#f3f4f6;display:flex;align-items:center;justify-content:center}.mobile-menu-close svg{width:20px;height:20px}.mobile-menu-close:hover{background-color:#e5e7eb}@keyframes dropdown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-content{animation:dropdown .3s ease-out}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:2rem}.p-8{padding:4rem}.p-12{padding:6rem}.p-16{padding:8rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:2rem;padding-right:2rem}.px-8{padding-left:4rem;padding-right:4rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:2rem;padding-bottom:2rem}.py-8{padding-top:4rem;padding-bottom:4rem}.py-12{padding-top:6rem;padding-bottom:6rem}.py-16{padding-top:8rem;padding-bottom:8rem}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-4{margin:1rem}.m-6{margin:2rem}.m-8{margin:4rem}.mx-auto{margin-left:auto;margin-right:auto}.mx-4{margin-left:1rem;margin-right:1rem}.mx-6{margin-left:2rem;margin-right:2rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:2rem;margin-bottom:2rem}.my-8{margin-top:4rem;margin-bottom:4rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:2rem}.mb-8{margin-bottom:4rem}.mb-12{margin-bottom:6rem}.mb-16{margin-bottom:8rem}.mt-4{margin-top:1rem}.mt-6{margin-top:2rem}.mt-8{margin-top:4rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:2rem}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}@media(min-width:768px){.md\:text-left{text-align:left}.md\:text-center{text-align:center}}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.text-6xl{font-size:3.75rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-brown{color:#cc6532}.text-dark-gray{color:#4a4a4a}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-white{color:#fff}.bg-white{background-color:#fff}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.rounded{border-radius:.25rem}.rounded-md{border-radius:.5rem}.rounded-lg{border-radius:1rem}.rounded-xl{border-radius:1.5rem}.rounded-2xl{border-radius:2rem}.rounded-full{border-radius:50%}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.shadow-2xl{box-shadow:0 25px 50px -12px #00000040}.w-full{width:100%}.w-auto{width:auto}.w-4{width:1rem}.w-5{width:1.25rem}.w-12{width:3rem}.w-20{width:5rem}.w-72{width:18rem}.w-80{width:20rem}.w-96{width:24rem}.h-full{height:100%}.h-auto{height:auto}.h-4{height:1rem}.h-5{height:1.25rem}.h-12{height:3rem}.h-48{height:12rem}.h-72{height:18rem}.h-80{height:20rem}.h-96{height:24rem}.h-0\.5{height:.125rem}.max-w-none{max-width:none}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.whitespace-nowrap{white-space:nowrap}.uppercase{text-transform:uppercase}.tracking-widest{letter-spacing:.1em}.leading-relaxed{line-height:1.625}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.transform{transform:translate(0)}.-translate-x-1\/2{transform:translate(-50%)}.translate-y-0{transform:translateY(0)}.-translate-y-1{transform:translateY(-.25rem)}.scale-105{transform:scale(1.05)}.transition-all{transition:all .3s ease-in-out}.transition-colors{transition:color,background-color,border-color .3s ease-in-out}.transition-transform{transition:transform .3s ease-in-out}.transition-shadow{transition:box-shadow .3s ease-in-out}.duration-300{transition-duration:.3s}.hover\:brightness-90:hover{filter:brightness(.9)}.hover\:underline:hover{text-decoration:underline}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:-translate-y-1:hover{transform:translateY(-.25rem)}.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.cursor-pointer{cursor:pointer}@media(min-width:768px){.md\:justify-start{justify-content:flex-start}.md\:justify-between{justify-content:space-between}.md\:flex-row{flex-direction:row}}@media(min-width:768px){.md\:space-y-0>*+*{margin-top:0}}@media(min-width:1024px){.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:py-16{padding-top:4rem;padding-bottom:4rem}.lg\:gap-12{gap:3rem}.lg\:justify-start{justify-content:flex-start}.lg\:text-left{text-align:left}}.mx-5{margin-left:1.25rem;margin-right:1.25rem}.mb-0{margin-bottom:0}.z-10{z-index:10}.border{border-width:1px}.border-t{border-top-width:1px}.border-4{border-width:4px}.border-8{border-width:8px}.border-white{border-color:#fff}.border-gray-200{border-color:#e5e7eb}.inset-0{inset:0}.top-0{top:0}.bottom-0{bottom:0}.left-1\/2{left:50%}.outline-none:focus{outline:none}.self-start{align-self:flex-start}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
