:root{color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{display:block;margin:0;background-repeat:no-repeat;background-attachment:fixed;background-color:var(--bg-page-1)!important}h2{font-family:Montserrat;font-weight:700;font-size:2em}h3{font-family:Montserrat;font-weight:400;font-size:2em}.sourcesanspro-text{font-family:Source Sans Pro;color:var(--text-secondary-1)!important;font-size:1rem}.montserrat-text{font-family:Montserrat;color:var(--text-secondary-1)!important;font-size:1rem}#intro{padding:60px 0;min-height:100vh;display:flex;align-items:center}#about,#projects,#experience,#skills,#contact{padding:60px 0}#projects{background-color:var(--bg-page-2)}#projects-divider{background-color:#fff}.btn-skills{background-color:var(--bg-surface-1);padding:.5rem;margin:.5rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease-in-out,filter .2s ease-in-out}.btn-skills:hover{filter:drop-shadow(3px 3px 1px #00000050);transform:scale(var(--btn-hover-scale))}.btn-skills svg{width:64px;height:64px;display:inline-block;fill:currentColor}.btn-skills img{width:64px;height:64px;display:inline-block}.skill-badge{padding:10px;border-radius:5px;background-color:var(--accent-shadow);margin:.25rem}@media (min-width: 575.98px){.btn-projects{font-family:Montserrat;background-color:var(--accent);color:var(--btn-text)!important;font-size:1.5rem!important;box-shadow:none!important;outline:none!important;border-radius:5px}.btn-icon{font-size:3rem!important}}:root{--bg-page-1: #383838;--bg-page-2: #ffffff;--bg-surface-1: #efefef;--bg-surface-2: #dddddd;--text-primary-1: #ffffff;--text-secondary-1: #efefef;--text-primary-2: #790000;--text-secondary-2: #a40000;--accent-light: #d9c084;--accent-primary: #a5915f;--accent-shadow: #978249;--accent: #978249;--social-icon: var(--accent);--btn-bg: #978249;--btn-text: #efefef;--btn-hover-scale: 1.05;--badge-bg: #978249;--badge-text: #efefef;--badge-hover-scale: 1.05}[data-theme=dark]{--bg-page-1: #0f172a;--bg-page-2: #020617;--bg-surface-1: #1b2e58;--bg-surface-2: #1f2933;--text-primary-1: #e5e7eb;--text-secondary-1: #9ca3af;--text-primary-2: #60a5fa;--text-secondary-2: #3b82f6;--accent-light: #93c5fd;--accent-primary: #3b82f6;--accent-shadow: #1e40af;--accent: #2563eb;--btn-bg: #2563eb;--btn-text: #e5e7eb;--btn-hover-scale: 1.05;--badge-bg: #1e40af;--badge-text: #e5e7eb;--badge-hover-scale: 1.05}[data-theme=dark2]{--bg-page-1: #0b1020;--bg-page-2: #050814;--bg-surface-1: #121a2f;--bg-surface-2: #1a2442;--text-primary-1: #f1f5f9;--text-secondary-1: #b6c0d1;--text-primary-2: #7dd3fc;--text-secondary-2: #38bdf8;--accent-light: #67e8f9;--accent-primary: #0ea5e9;--accent-shadow: #075985;--accent: #0284c7;--btn-bg: #0284c7;--btn-text: #f1f5f9;--btn-hover-scale: 1.05;--badge-bg: #075985;--badge-text: #e2e8f0;--badge-hover-scale: 1.05}[data-theme=light]{--bg-page-1: #f8fafc;--bg-page-2: #eef2f7;--bg-surface-1: #ffffff;--bg-surface-2: #e5e9f0;--text-primary-1: #1e293b;--text-secondary-1: #475569;--text-primary-2: #0f766e;--text-secondary-2: #115e59;--accent-light: #5eead4;--accent-primary: #14b8a6;--accent-shadow: #0f766e;--accent: #2dd4bf;--btn-bg: #14b8a6;--btn-text: #ffffff;--btn-hover-scale: 1.05;--badge-bg: #0f766e;--badge-text: #ffffff;--badge-hover-scale: 1.05}[data-theme=light2]{--bg-page-1: #dcf6ef;--bg-page-2: #0f172a;--bg-surface-1: #ffffff;--bg-surface-2: #e2e8f0;--text-primary-1: #0f172a;--text-secondary-1: #475569;--text-primary-2: #2563eb;--text-secondary-2: #0ea5e9;--accent-light: #7dd3fc;--accent-primary: #2563eb;--accent-shadow: #1e3a8a;--accent: #14b8a6;--btn-bg: #2563eb;--btn-text: #ffffff;--btn-hover-scale: 1.05;--badge-bg: #14b8a6;--badge-text: #ffffff;--badge-hover-scale: 1.05}[data-theme=sunset]{--bg-page-1: #0f0826;--bg-page-2: #fff6ef;--bg-surface-1: #221834;--bg-surface-2: #fff1e6;--text-primary-1: #fff7f3;--text-secondary-1: #e6cfc6;--text-primary-2: #fb7185;--text-secondary-2: #f97316;--accent-light: #ffd6b5;--accent-primary: #fb7185;--accent-shadow: #9b2c63;--accent: #f97316;--btn-bg: #f97316;--btn-text: #ffffff;--btn-hover-scale: 1.05;--badge-bg: #fb7185;--badge-text: #ffffff;--badge-hover-scale: 1.05}[data-theme=forest]{--bg-page-1: #06281e;--bg-page-2: #eaf7f0;--bg-surface-1: #0b3b30;--bg-surface-2: #10b981;--text-primary-1: #e6fff7;--text-secondary-1: #9df2de;--text-primary-2: #2dd4bf;--text-secondary-2: #e6fff7;--accent-light: #a7f3d0;--accent-primary: #10b981;--accent-shadow: #065f46;--accent: #059669;--btn-bg: #10b981;--btn-text: #ffffff;--btn-hover-scale: 1.05;--badge-bg: #059669;--badge-text: #ffffff;--badge-hover-scale: 1.05}.nav-link{font-family:Montserrat;color:var(--text-secondary-1)!important;font-size:125%;position:relative}.nav-link:before{content:"";position:absolute;display:block;width:100%;height:2px;bottom:0;left:0;background-color:var(--text-secondary-1);transform:scaleX(0);transition:transform .3s ease}.nav-link:hover:before{color:var(--text-secondary-1)!important;transform:scaleX(1)}.navbar-nav li{padding:0rem 1rem}#resumeModal .modal-content{background-color:var(--bg-page-1);border:2px solid var(--accent);border-radius:.5rem 1rem;font-family:Montserrat,sans-serif;transform:translateY(30px);opacity:0;transition:all .4s ease-in-out}#resumeModal.show .modal-content{transform:translateY(0);opacity:1}#resumeModal .modal-title{color:var(--text-primary-1);font-weight:600}#resumeModal .btn-close{background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23efefef'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;opacity:.8}#resumeModal .btn-close:hover{opacity:1}#resumeModal .modal-body .btn{background-color:var(--badge-bg);color:#efefef;border:2px solid var(--accent-light);font-weight:600;border-radius:.75rem;padding:.75rem 2rem;transition:.2s ease-in-out}#resumeModal .modal-body .btn:hover{background-color:var(--btn-bg);color:var(--btn-text);transform:scale(.95)}#resumeModal .modal-footer p{color:#ccc;font-size:.9rem;margin:0}.symbols{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:-1}.symbols li{position:absolute;display:block;list-style:none;width:20px;height:20px;animation:floatUpRotate 25s linear infinite;bottom:calc(-40px - 1vh);border-radius:50%;animation-delay:0s}.symbols li:nth-child(1){left:25%;width:30px;height:30px;animation-duration:20s}.symbols li:nth-child(2){left:10%;width:20px;height:20px;animation-duration:25s}.symbols li:nth-child(3){left:70%;width:20px;height:20px;animation-duration:20s}.symbols li:nth-child(4){left:40%;width:35px;height:35px;animation-duration:15s}.symbols li:nth-child(5){left:65%;width:20px;height:20px;animation-duration:20s}.symbols li:nth-child(6){left:75%;width:40px;height:40px;animation-duration:25s}.symbols li:nth-child(7){left:35%;width:30px;height:30px;animation-duration:30s}.symbols li:nth-child(8){left:50%;width:25px;height:25px;animation-duration:35s}.symbols li:nth-child(9){left:20%;width:25px;height:25px;animation-duration:40s}.symbols li:nth-child(10){left:85%;width:50px;height:50px;animation-duration:45s}@keyframes floatUpRotate{0%{transform:translateY(0) rotate(0);opacity:0}50%{transform:translateY(-50vh) rotate(360deg);opacity:.5}to{transform:translateY(-100vh) rotate(720deg);opacity:0}}.name{font-family:Montserrat;color:var(--accent-light)!important;font-size:3.5em;font-weight:800;transition:ease-in-out .2s;filter:drop-shadow(2px 2px 1px var(--accent-primary))}.typewriter-title{font-family:Source Sans Pro;color:var(--text-primary-1)!important;font-size:1.5em;display:inline}.typed-cursor{height:100%;color:var(--accent-light)!important;font-size:150%}.intro-image{width:30vw;border-radius:50%}.social-buttons{margin-top:.5rem;padding:.5rem;border:none!important;background-color:transparent!important;border-radius:15%;transition:.2s ease-in-out;will-change:transform;display:inline-block;transform-origin:center}.social-buttons:hover{background-color:#0000001a!important;transform:scale(var(--btn-hover-scale))}.chevron-down{animation-name:floating;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:ease-in-out}@keyframes floating{0%{transform:translate(0)}50%{transform:translateY(1vw)}to{transform:translate(0)}}.section-title{font-family:Montserrat;color:var(--text-primary-1);font-size:3rem;font-weight:700}.about-text{font-family:Source Sans Pro;color:var(--text-secondary-1)!important;font-size:1.65rem;line-height:normal;margin-top:1rem}.intrest-image{width:100%}.highlight{color:var(--accent-light);font-weight:700;transition:.3s ease}.carousel-item{transition:transform .6s ease-in-out}.line-break{width:40px;height:5px;margin:0}.btn-projects{font-family:Montserrat;background-color:var(--accent);color:var(--btn-text)!important;font-size:4vw;box-shadow:none!important;outline:none!important;border-radius:5px;transition:transform .15s ease-in-out,background-color .15s ease-in-out}.btn-projects:hover{background-color:var(--accent-primary);transform:scale(var(--btn-hover-scale))}.btn-projects.active,.btn-projects:focus,.btn-projects:active{background-color:var(--accent-primary)!important;color:#fff;border-color:var(--accent-primary)}#projects .row{align-items:stretch}.projects-large-cards{align-items:center;border-radius:12px;overflow:hidden;background-color:var(--bg-surface-2);height:100%;transition:.2s ease-in-out;border:none}.card-container.active{display:block}.card-container.hide{display:none}.projects-large-cards:hover{box-shadow:#0003 0 3px 3px -2px,#00000024 0 3px 4px,#0000001f 0 1px 8px;transform:translateY(-5px)}.projects-large-cards:hover .card-img-projects{filter:brightness(100%);transition:.5s ease-in-out}.card-body-large-cards{text-align:start;width:100%;height:100%;padding:2rem;display:flex;flex-direction:column;justify-content:flex-start}.card-body{text-align:start;width:100%;padding-left:2rem;padding-right:2rem;display:flex;flex-direction:column;justify-content:flex-start;color:var(--text-secondary-2)!important}.card-text{font-family:Montserrat;color:var(--text-secondary-2)!important}.card-img-projects{position:relative;width:100%;height:100%;filter:brightness(75%);transition:.5s ease-in-out;object-fit:cover;object-position:center top}.col-lg-4.card-container{display:flex;flex-direction:column}.projects-small-cards{background-color:var(--bg-surface-2);display:flex;flex-direction:column;border-radius:12px;overflow:hidden;min-height:320px;transition:.25s ease-in-out;border:none;flex:1 1 auto}.projects-small-cards:hover{box-shadow:#0206171f 0 8px 20px;transform:translateY(-6px) scale(1.01)}.project-image-wrapper{width:100%;height:clamp(160px,28vh,260px);overflow:hidden;background:linear-gradient(180deg,#00000008,#00000005);flex:0 0 auto}.project-card-image{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:brightness(.75);transition:transform .6s ease,filter .4s ease;transform-origin:center}.projects-small-cards:hover .project-card-image{transform:scale(1.03);filter:brightness(1)}.card-body{text-align:start;width:100%;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;color:var(--text-primary-2)!important;flex:1 1 auto}.project-title{font-size:1.5rem;color:var(--text-secondary-2);margin-bottom:.5rem}.landscape-img{width:20rem!important}.badges-group-large{text-align:start;padding-left:2rem;padding-right:2rem}.badges-group-small{display:flex;justify-content:center;gap:.5rem;padding:1rem 0;flex:0 0 auto}.projects-skill-badge,.skill-badge{padding:6px 12px;border-radius:8px;background-color:var(--badge-bg);color:var(--badge-text);margin:.25rem;font-size:.875rem;display:inline-flex;align-items:center;justify-content:center;min-height:36px}.projects-link-badge{width:44px;height:44px;padding:0;border-radius:50%;background-color:var(--badge-bg);color:var(--badge-text);display:inline-flex;align-items:center;justify-content:center;transition:transform .15s ease-in-out,filter .15s ease-in-out}.projects-link-badge:hover{transform:scale(var(--badge-hover-scale))}.projects-badge-icons{width:20px;height:20px;display:block}.experience-mobile-view{display:none}@media (max-width: 768px){.timeline:after,.timeline-container:after{content:none;display:none}.experience-desktop-view{display:none}.row.timeline-container{width:100%;margin-left:0;margin-right:0;padding-inline:.75rem;box-sizing:border-box}.timeline{margin:0}.experience-mobile-view{position:relative;display:grid;grid-template-columns:84px 1fr;gap:1rem;align-items:center;background-color:var(--bg-surface-1);width:100%;margin:.9rem 0;padding:1rem;border-radius:14px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;box-shadow:0 12px 30px #02061754;min-height:96px;border:1px solid rgba(255,255,255,.02)}.experience-mobile-view:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent),var(--accent-primary));border-top-left-radius:14px;border-bottom-left-radius:14px}.experience-mobile-view:hover{transform:translateY(-6px);box-shadow:0 18px 42px #02061773}.experience-mobile-view:active{transform:translateY(-2px)}.mobile-logo-wrapper{width:84px;height:84px;background-color:#fff;padding:8px;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:none}.mobile-logo-wrapper img{width:100%;height:100%;object-fit:contain;border-radius:8px;display:block}.mobile-text-content{text-align:left}.mobile-text-content h2{color:var(--text-primary-1);font-size:1.05rem;margin:0 0 6px;font-weight:700;line-height:1.05}.mobile-text-content h3{color:var(--text-secondary-1);font-size:.95rem;margin:0;font-weight:600;opacity:.95}.mobile-text-content .duration-text{color:var(--text-secondary-1);font-size:.82rem;margin-top:8px;opacity:.9}@media (max-width: 360px){.experience-mobile-view{grid-template-columns:72px 1fr;padding:.8rem;min-height:84px}.mobile-logo-wrapper{width:72px;height:72px}}}.timeline-icon{max-width:100%;max-height:150px;object-fit:contain}.timeline{position:relative;margin:0}.timeline:after{content:"";position:absolute;width:6px;background-color:var(--accent);top:0;bottom:0;left:0%;margin-left:-3px}.timeline-container:after{content:"";position:absolute;width:25px;height:25px;left:-13px;background-color:var(--bg-page-1);border:4px solid var(--text-secondary-1);top:45%;border-radius:50%;z-index:1}.experience-large-card{background-color:transparent;width:90%;max-width:1100px;height:auto;border:none;margin-left:auto;margin-right:auto;transition:transform .25s ease-in-out;cursor:pointer;padding:.5rem 0}.experience-large-card:hover{transform:translateY(-6px)}.experience-large-card:focus-within{outline:2px solid rgba(0,0,0,.08);outline-offset:6px}.experience-large-card-preview{position:relative;grid-area:revert;width:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:12px;overflow:hidden;padding:2rem 2.5rem 1.5rem;background-size:cover;background-position:center;min-height:20rem;box-shadow:0 10px 30px #00000073;transition:transform .25s ease,box-shadow .25s ease;grid-area:1/1!important}.experience-large-card-preview:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,#000000bf,#000000b3 35%,#00000059 60%,#0000);z-index:1;pointer-events:none}.experience-large-card-preview h2,.experience-large-card-preview h3,.experience-large-card-preview .sourcesanspro-text{position:relative;z-index:2;color:var(--text-primary-1);text-shadow:0 3px 12px rgba(0,0,0,.6)}.experience-large-card-preview h3{color:var(--text-secondary-1)}.experience-large-card-preview .btn-skills{position:absolute;bottom:1.25rem;left:1.25rem;z-index:2;width:120px;height:120px;display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border-radius:14px;background-color:#fff;box-shadow:0 8px 20px #00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.experience-large-card-preview .btn-skills img,.experience-large-card-preview .btn-skills .timeline-icon{width:calc(100% - 1rem);height:calc(100% - 1rem);object-fit:contain;border-radius:10px}@media (max-width: 768px){.experience-large-card-preview .btn-skills{width:88px;height:88px;left:1rem;bottom:1rem}.experience-large-card-preview .btn-skills img,.experience-large-card-preview .btn-skills .timeline-icon{width:calc(100% - .6rem);height:calc(100% - .6rem)}}.experience-large-card:hover .experience-large-card-preview{transform:translateY(-6px) scale(1.007);box-shadow:0 16px 40px #0000008c}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1050;overflow-y:auto;animation:fadeIn .3s ease-out}.modal-content{background-color:var(--bg-surface-1);color:var(--accent-light);padding:0;border-radius:12px;max-width:900px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #00000080;position:relative;transform:scale(1);transition:transform .3s ease-out;animation:slideInUp .4s ease-out}.modal-header-banner{padding:2rem 2rem 0rem;display:flex;align-items:center;gap:2rem}.modal-logo-container{flex-shrink:0;width:150px;height:150px;padding:10px;background-color:#fff;border-radius:25px;display:flex;justify-content:center;align-items:center;transition:box-shadow .2s}.modal-logo-link{text-decoration:none}.modal-logo{max-width:100%;max-height:150px;object-fit:contain}.modal-info-text{flex-grow:1}.modal-info-text h2{color:var(--text-primary-1);font-size:2rem;margin-bottom:.25rem}.modal-info-text h3{color:var(--text-secondary-1);margin-top:0;font-size:1.1rem}.modal-description-content{padding:2rem;padding-block:0rem}.modal-skills-content{padding:0rem 2rem 2rem}.modal-description-content h4{color:var(--text-secondary-1);margin-bottom:1rem;font-size:1.5rem;border-bottom:1px solid #444;padding-bottom:.5rem}.modal-description-content li{line-height:150%;font-size:16px;color:var(--text-secondary-1)}@media (max-width: 768px){.modal-content{padding:1.5rem;width:95%}}.modal-close-button{position:absolute;top:15px;right:15px;background:none;border:none;color:var(--text-primary-1);font-size:2rem;cursor:pointer;line-height:1;transition:color .2s}.modal-close-button:hover{color:var(--accent)}.modal-details h2{color:#978249;margin-top:0;margin-bottom:.5rem;font-size:2.5rem}.modal-details h3{font-style:italic;color:#ccc;margin-top:0;margin-bottom:1rem;font-size:1.25rem}.modal-details p{line-height:1.6;margin-bottom:1.5rem;font-size:1.1rem}.modal-link{display:inline-block;padding:.5rem 1rem;background-color:var(--btn-bg);color:var(--btn-text);text-decoration:none;border-radius:6px;font-weight:700;transition:background-color .2s,transform .15s}.modal-link:hover{background-color:var(--accent-primary);transform:translateY(-2px)}.modal-gallery-section .carousel{background-color:var(--bg-surface-2)}.modal-gallery-section{padding:0 2rem 2rem}.modal-gallery-section h4{color:#efefef;margin-bottom:1rem;font-size:1.5rem;border-bottom:1px solid #444;padding-bottom:.5rem}.modal-gallery-section .carousel{border-radius:8px;overflow:hidden;box-shadow:0 4px 15px #0006;background-color:#1a1a1a;position:relative}.modal-gallery-section .modal-gallery-image{width:100%;height:450px;object-fit:cover}@media (max-width: 768px){.modal-gallery-section .modal-gallery-image{height:250px}}.modal-gallery-section .carousel-control-prev,.modal-gallery-section .carousel-control-next{width:40px;height:40px;border-radius:50%;background-color:#000000b3;opacity:.8;transition:opacity .3s ease,background-color .3s ease;top:50%;transform:translateY(-50%);margin:0 5px}.modal-gallery-section .carousel-control-prev:hover,.modal-gallery-section .carousel-control-next:hover{background-color:#000000e6;opacity:1}.modal-gallery-section .carousel-indicators{background-color:#000000b3;opacity:.8}@media (max-width: 768px){.modal-header-banner{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem 1.5rem 0rem}.modal-logo-link{width:100%;display:flex;justify-content:center;margin-bottom:.5rem}.modal-logo-container{width:100px;height:100px}.modal-info-text{width:100%;text-align:left}.modal-info-text h2,.modal-info-text h3{text-align:left}.modal-description-content,.modal-gallery-section{padding-left:1.5rem;padding-right:1.5rem}}.triggerAnimation{animation:slide-in 2s;animation-iteration-count:1}@keyframes slide-in{0%{opacity:0;transform:translate(1px)}to{opacity:1;transform:translate(0)}}.social-icon{width:50px;height:auto;color:var(--social-icon);display:inline-block}
