._header_589ld_2{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#1a1a1acc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000}._logo_589ld_15 img{height:66px;vertical-align:middle}._navLinks_589ld_20{display:flex;gap:1.5rem;list-style:none}._navLinks_589ld_20 a{color:var(--primary-text-color);font-weight:500;font-size:1rem;position:relative;padding-bottom:5px;text-decoration:none}._navLinks_589ld_20 a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--accent-color);transition:width .3s ease}._navLinks_589ld_20 a:hover:after,._navLinks_589ld_20 a._active_589ld_47:after{width:100%}._navLinks_589ld_20 a._active_589ld_47{color:var(--accent-color)}._langSwitcher_589ld_55 button{background:none;border:1px solid var(--border-color);color:var(--primary-text-color);padding:.5rem 1rem;cursor:pointer;border-radius:5px;transition:background-color .3s,border-color .3s}._langSwitcher_589ld_55 button:hover{background-color:var(--accent-color);border-color:var(--accent-color)}@media (max-width: 768px){._header_589ld_2{flex-direction:column;gap:1rem;padding:1rem}._navLinks_589ld_20{flex-wrap:wrap;justify-content:center;gap:.5rem 1rem}}._footer_1egfi_1{position:absolute;bottom:0;width:100%;height:var(--footer-height);display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:var(--card-bg-color);border-top:1px solid var(--border-color);font-size:.9rem;gap:.5rem;padding:1rem 0;height:auto}._contactLinksContainer_1egfi_18{display:flex;gap:1.5rem;align-items:center}._contactIcon_1egfi_24{width:24px;height:24px;color:var(--primary-text-color);transition:color .3s ease,transform .3s ease}._contactIcon_1egfi_24:hover{color:var(--accent-color);transform:scale(1.1)}._loaderContainer_cdkyz_2{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background-color:var(--bg-color)}._loader_cdkyz_2{border:8px solid var(--border-color);border-top:8px solid var(--accent-color);border-radius:50%;width:60px;height:60px;animation:_spin_cdkyz_1 1s linear infinite}@keyframes _spin_cdkyz_1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._loaderText_cdkyz_25{margin-top:20px;color:var(--primary-text-color);text-align:center;font-size:1.1rem}._container_1jqf2_2{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;height:100vh;overflow:hidden;padding-bottom:158px}._name_1jqf2_16{font-size:4.5rem;font-weight:700;margin-bottom:.5rem}._subtitle_1jqf2_23{font-size:1.5rem;font-weight:300;color:#b0b0b0}._aboutContainer_1jxba_2{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;padding:2rem 1rem;padding-top:15vh}._description_1jxba_12{max-width:70ch;line-height:1.7}._projectsGrid_14dn8_1{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}._projectCard_14dn8_7{background-color:var(--card-bg-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}._projectCard_14dn8_7:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0003}._status-en-desarrollo_14dn8_22,._status-in-progress_14dn8_23{border-left:4px solid var(--border-color-dev)}._status-finalizado_14dn8_27,._status-finished_14dn8_28{border-left:4px solid var(--border-color-done)}._projectImage_14dn8_32{width:100%;height:200px;object-fit:contain;background-color:#222;transition:transform .3s ease;cursor:zoom-in}._projectCard_14dn8_7:hover ._projectImage_14dn8_32{transform:scale(1.05)}._projectContent_14dn8_45{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}._projectTitle_14dn8_52{font-size:1.5rem;margin-bottom:.5rem;color:var(--primary-text-color)}._projectStatusTag_14dn8_58{display:inline-block;background-color:var(--accent-color);color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:700;margin-left:10px;vertical-align:middle}._projectDescription_14dn8_70{font-size:.95rem;color:#b0b0b0;flex-grow:1;margin-bottom:1rem}._projectLinks_14dn8_77{margin-top:auto;display:flex;gap:1rem}._projectLinks_14dn8_77 a{background-color:transparent;border:1px solid var(--accent-color);color:var(--accent-color);padding:.5rem 1rem;border-radius:5px;text-transform:uppercase;font-weight:600;font-size:.8rem;transition:background-color .3s,color .3s}._projectLinks_14dn8_77 a:hover{background-color:var(--accent-color);color:var(--primary-text-color)}._contactIcon_14dn8_100{vertical-align:middle;margin-right:8px}._imageModalOverlay_14dn8_106{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:2000;cursor:pointer;animation:_fadeIn_14dn8_1 .3s ease}._imageModalContent_14dn8_121{position:relative;max-width:90vw;max-height:90vh;animation:_fadeInUp_14dn8_1 .3s ease}._imageModalContent_14dn8_121 img{width:100%;height:100%;object-fit:contain;border-radius:8px}._closeModalButton_14dn8_135{position:absolute;top:-15px;right:-15px;background-color:var(--accent-color);color:#fff;border:2px solid var(--bg-color);border-radius:50%;width:35px;height:35px;font-size:1.8rem;line-height:32px;text-align:center;cursor:pointer;transition:background-color .3s,transform .3s}._closeModalButton_14dn8_135:hover{background-color:var(--accent-color-hover);transform:scale(1.1)}@media (max-width: 768px){._closeModalButton_14dn8_135{width:30px;height:30px;font-size:1.5rem;line-height:28px;top:-10px;right:-10px}}._projectTechnologies_14dn8_168{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}._techTag_14dn8_175{background-color:var(--accent-color-hover);color:var(--primary-text-color);padding:.25rem .75rem;border-radius:15px;font-size:.8rem}._container_qo1qe_1{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1000;background:linear-gradient(to top,#fad0c4,#ffd1ff);overflow:hidden;display:flex;justify-content:center;align-items:center;font-family:Dancing Script,cursive,sans-serif}._overlay_qo1qe_31{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;z-index:1}._content_qo1qe_51{position:relative;z-index:10;text-align:center;color:#d6336c;opacity:0;transform:translateY(20px);transition:opacity 1.5s ease-out,transform 1.5s ease-out;padding:2rem;max-width:800px;width:95%}._visible_qo1qe_77{opacity:1;transform:translateY(0)}._title_qo1qe_87{font-size:3.5rem;margin-bottom:2rem;text-shadow:1px 1px 2px rgba(255,255,255,.8);background:linear-gradient(to right,#ff5e62,#f96);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}._photoContainer_qo1qe_109{margin:0 auto 2rem;width:200px;height:200px;border-radius:50%;overflow:hidden;border:5px solid rgba(255,255,255,.8);box-shadow:0 0 20px #ffb6c1cc;background:#fff;display:flex;justify-content:center;align-items:center}._photo_qo1qe_109{width:100%;height:100%;object-fit:cover}._photoPlaceholder_qo1qe_149{width:100%;height:100%;background:#ffe6eb;display:flex;justify-content:center;align-items:center;color:#ff6b6b;font-weight:700}._messageCard_qo1qe_171{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:20px;border:1px solid rgba(255,255,255,.6);box-shadow:0 8px 32px #1f26871a}._message_qo1qe_171{font-size:1.5rem;line-height:1.6;margin-bottom:1.5rem;color:#c2255c;text-shadow:none}._signature_qo1qe_205{font-size:1.2rem;font-style:italic;text-align:right;margin-top:1rem;color:#a61e4d}._hearts_qo1qe_223,._flowers_qo1qe_223{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:hidden}._heart_qo1qe_223,._flower_qo1qe_223{position:absolute;bottom:-50px;animation:_floatUp_qo1qe_1 15s linear infinite;opacity:.7}@keyframes _floatUp_qo1qe_1{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:.8}to{transform:translateY(-120vh) rotate(360deg);opacity:0}}:root{--bg-color: #1a1a1a;--primary-text-color: #f0f0f0;--accent-color: #ff4136;--accent-color-hover: #ff635a;--card-bg-color: #2a2a2a;--border-color: #444;--border-color-dev: #ff4136;--border-color-done: #01ff70;--font-family: "Poppins", sans-serif;--footer-height: 60px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--primary-text-color);padding-bottom:var( --footer-height );position:relative;min-height:100vh}body.no-scroll{overflow:hidden}main{padding:2rem 1rem;max-width:1200px;margin:0 auto}h1,h2,h3{font-weight:600;color:var(--primary-text-color);margin-bottom:1rem}h1{font-size:3rem}h2{font-size:2.2rem;color:var(--accent-color);border-bottom:2px solid var(--border-color);padding-bottom:.5rem;margin-bottom:2rem}p{line-height:1.7;margin-bottom:1rem;max-width:70ch}a{color:var(--accent-color);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-color-hover)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeIn .5s ease-in-out}.fade-in-up-animation{animation:fadeInUp .8s ease-out forwards}.typewriter-text:after{content:"_";animation:blink .7s infinite;font-weight:700}@keyframes blink{50%{opacity:0}}@media (max-width: 768px){h1{font-size:2.5rem}h2{font-size:1.8rem}}
