@font-face{font-family:Inter;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/inter-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/inter-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/inter-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/inter-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/jetbrains-mono-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/jetbrains-mono-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/playfair-display-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/playfair-display-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/playfair-display-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/playfair-display-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg-base: #F5F7FF;--bg-surface: #FFFFFF;--bg-elevated: #EEF2FF;--bg-muted: #F0F4FE;--bg-surface-glass: #ffffffc7;--bg-dropdown-start: rgba(255, 255, 255, .98);--bg-dropdown-end: rgba(245, 247, 255, .98);--bg-header: rgba(255, 255, 255, .97);--blob-color-1: #d4e0ff;--blob-color-2: #fef3c7;--blob-opacity-1: .35;--blob-opacity-2: .25;--brand: #1e3a8a;--brand-mid: #1d4ed8;--brand-light: #3b82f6;--brand-hover: #1e40af;--brand-muted: rgba(30, 58, 138, .07);--brand-border: rgba(30, 58, 138, .18);--brand-glow: rgba(30, 58, 138, .15);--accent: #F59E0B;--accent-dark: #D97706;--accent-light: #FCD34D;--accent-muted: rgba(245, 158, 11, .1);--accent-border: rgba(245, 158, 11, .3);--accent-glow: rgba(245, 158, 11, .2);--border: #E2E8F4;--border-subtle: #EDF1F9;--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-inverse: #FFFFFF;--linkedin-bg: #0A66C2;--linkedin-fg: #FFFFFF;--success: #16a34a;--success-muted: rgba(22,163,74,.1);--error: #dc2626;--warning: #d97706;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius-xs: 4px;--radius-sm: 6px;--radius: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--shadow-xs: 0 1px 2px rgba(15,23,42,.04);--shadow-sm: 0 1px 4px rgba(15,23,42,.06), 0 1px 2px rgba(15,23,42,.04);--shadow-md: 0 4px 16px rgba(15,23,42,.08), 0 2px 6px rgba(15,23,42,.04);--shadow-lg: 0 12px 40px rgba(15,23,42,.11), 0 4px 12px rgba(15,23,42,.06);--shadow-xl: 0 20px 60px rgba(15,23,42,.14), 0 8px 20px rgba(15,23,42,.08);--shadow-brand: 0 4px 20px rgba(30,58,138,.22), 0 2px 8px rgba(30,58,138,.1);--shadow-accent:0 4px 20px rgba(245,158,11,.25);--ease: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--t-fast: .12s;--t: .22s;--t-slow: .38s;--t-slower: .6s}html.dark{--bg-base: #080C14;--bg-surface: #0F1626;--bg-elevated: #172033;--bg-muted: #121A2C;--bg-surface-glass: rgba(15, 22, 38, .78);--brand: #3b82f6;--brand-mid: #60a5fa;--brand-light: #93c5fd;--brand-hover: #2563eb;--brand-muted: rgba(59, 130, 246, .12);--brand-border: rgba(59, 130, 246, .28);--brand-glow: rgba(59, 130, 246, .22);--accent: #F59E0B;--accent-dark: #FBBF24;--accent-light: #FCD34D;--accent-muted: rgba(245, 158, 11, .15);--accent-border: rgba(245, 158, 11, .4);--accent-glow: rgba(245, 158, 11, .3);--border: #1E293B;--border-subtle: #162032;--text-primary: #F8FAFC;--text-secondary: #CBD5E1;--text-muted: #64748B;--text-inverse: #080C14;--linkedin-bg: #FFFFFF;--linkedin-fg: #080C14;--shadow-xs: 0 1px 2px rgba(0,0,0,.3);--shadow-sm: 0 1px 4px rgba(0,0,0,.4), 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.45), 0 2px 6px rgba(0,0,0,.3);--shadow-lg: 0 12px 40px rgba(0,0,0,.55), 0 4px 12px rgba(0,0,0,.35);--shadow-xl: 0 20px 60px rgba(0,0,0,.65), 0 8px 20px rgba(0,0,0,.45);--shadow-brand: 0 4px 20px rgba(59, 130, 246, .3), 0 2px 8px rgba(59, 130, 246, .15);--shadow-accent:0 4px 20px rgba(245, 158, 11, .35);--bg-dropdown-start: rgba(15, 22, 38, .98);--bg-dropdown-end: rgba(8, 12, 20, .98);--bg-header: rgba(15, 22, 38, .95);--blob-color-1: rgba(30, 58, 138, .25);--blob-color-2: rgba(245, 158, 11, .1);--blob-opacity-1: .15;--blob-opacity-2: .1}html.dark body{background-image:radial-gradient(circle,rgba(59,130,246,.055) 1px,transparent 1px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);line-height:1.6;color:var(--text-primary);background-color:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100vh;background-image:radial-gradient(circle,rgba(30,58,138,.055) 1px,transparent 1px);background-size:26px 26px}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:700;color:var(--text-primary);line-height:1.18;letter-spacing:-.025em}a{color:var(--brand-mid);text-decoration:none;transition:color var(--t) var(--ease)}a:hover{color:var(--brand)}button{font-family:var(--font-sans);font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--t) var(--ease);border:1px solid transparent;border-radius:var(--radius);background:var(--bg-surface);color:var(--text-primary)}button:focus-visible{outline:2px solid var(--brand-mid);outline-offset:2px}input,textarea,select{font-family:var(--font-sans);font-size:.95rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--t),box-shadow var(--t)}input{border-radius:0}input:focus,textarea:focus{outline:none;border-color:var(--brand-mid)}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}::selection{background:#1e3a8a1f;color:var(--brand)}*:focus:not(:focus-visible){outline:none;box-shadow:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes slideRight{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes underlineGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pulseDot{0%,to{box-shadow:0 0 #22c55e8c}50%{box-shadow:0 0 0 6px #22c55e00}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes blobMorph{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}33%{border-radius:40% 60% 70% 30%/40% 50% 60%}66%{border-radius:30% 60% 40% 70%/60% 40%}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmerSlide{0%{background-position:-200% center}to{background-position:200% center}}@keyframes cardIn{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scaleXIn{0%{transform:scaleX(.4);opacity:0}to{transform:scaleX(1);opacity:1}}@keyframes eyebrowPop{0%{opacity:0;transform:translateY(-8px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}#root{width:100%;margin:80px auto 0;text-align:center}.grecaptcha-badge{visibility:hidden}.cardPresentation{float:right;position:absolute;top:190px;right:70px;width:250px;margin-top:20px;border-radius:12px;box-shadow:var(--shadow-md)}@media(max-width:1024px){.cardPresentation{display:none}}.container{display:flex;justify-content:center;align-items:center;height:100vh;margin:-80px 0 0;background-color:var(--bg-base);overflow:hidden}.loaderWrapper{position:relative;display:inline-block}.loader{font-family:Playfair Display,Garamond,Baskerville,Georgia,serif;font-size:3rem;font-weight:800;color:var(--brand);letter-spacing:-.04em;text-transform:lowercase;white-space:nowrap;opacity:1;transition:opacity .5s ease-in-out}.text-reveal-container{position:relative;overflow:hidden;width:fit-content;max-width:100%;min-width:120px;transition:opacity 1.5s ease-out,transform 1.5s ease-out}.text-reveal-container.fade-out{opacity:0;transform:scale(.85);background:none}.text-slider{display:inline-block;transform:translate(calc(-100% + .5em));transition:transform 1s cubic-bezier(.25,.46,.45,.94)}.text-reveal-container.slide-reveal .text-slider{transform:translate(0)}.loader.animating .char-a1,.loader.animating .char-v,.loader.animating .char-i,.loader.animating .char-o,.loader.animating .char-r,.loader.animating .char-a2,.loader.animating .char-l,.loader.animating .char-e,.loader.animating .char-s{width:0!important;opacity:0!important}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.animated-bg{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.5s ease-in-out;pointer-events:none;z-index:0}.animated-bg.active{opacity:1;background:linear-gradient(90deg,#1e3a8a00,#1e3a8a14,#1e3a8a00);background-size:200% 100%;animation:shimmer 2.8s ease-in-out infinite}.project{background:var(--bg-base);position:relative;z-index:1}.project-eyebrow-wrapper{display:flex;justify-content:center;width:100%;padding-top:2.5rem;margin-bottom:-.5rem}.project-eyebrow-wrapper .about-eyebrow{opacity:1;transform:scale(1);display:inline-block}.project-header{display:flex;justify-content:space-between;align-items:center;padding:20px 150px;position:relative;z-index:20}.project-header:after{content:"";position:absolute;bottom:0;left:5%;width:90%;height:1px;background:var(--border)}.projects-note{margin-top:.4rem;font-size:.8rem;color:var(--text-secondary);display:inline-flex;align-items:center;font-style:normal;font-weight:500}.reveal-block{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal-block.reveal-visible{opacity:1;transform:translateY(0)}.project-title-container{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;text-align:right}.project-title-container .about-title{font-size:1.9rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.04em;line-height:1.15}.project-header.reveal-visible .about-eyebrow{animation:eyebrowPop .4s cubic-bezier(.34,1.56,.64,1) .1s both}.project-header.reveal-visible .about-title .highlight:after{transform:scaleX(1);opacity:.45}.selection{display:flex;gap:.4rem;align-items:center;font-family:var(--font-sans);font-size:.9rem;position:relative;flex-wrap:wrap;z-index:21}.selected-tech{list-style:none;padding:0;padding-left:.5rem;display:flex;gap:.5rem;flex-wrap:wrap;white-space:nowrap;align-items:center}.remove-tech{background:var(--accent-muted);color:var(--accent-dark);border:1px solid var(--accent-border);padding:.25rem .75rem;border-radius:99px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all var(--t, .22s) var(--ease, ease);display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 1px 2px #f59e0b0d}.remove-tech:hover{background:var(--accent);color:var(--text-inverse);border-color:var(--accent);transform:translateY(-1px) scale(1.02);box-shadow:var(--shadow-sm),0 4px 12px #f59e0b33}.remove-x{display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;line-height:1;margin-left:.15rem;margin-top:2px;transition:transform .2s ease,opacity .2s ease}.remove-tech:hover .remove-x{transform:rotate(90deg);opacity:1;margin-top:0}.sele{padding:.35rem .85rem;border-radius:var(--radius);border:1px solid transparent;border-bottom:2px solid transparent;transition:all var(--transition);background:transparent;color:var(--text-secondary);font-weight:500;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center}.sele:hover,.sele.active{color:var(--brand);background:var(--brand-muted);border-color:var(--brand-border)}.selec{background:var(--accent-muted);border-color:var(--accent-border)}.sele.selected{border-bottom:2px solid var(--brand);color:var(--brand);background:var(--brand-muted)}.project .selection .tech-dropdown{position:relative;z-index:22}.project .selection .dropdown-menu{position:absolute;top:calc(100% + 8px);left:50%;min-width:320px;width:min(420px,calc(100vw - 2rem));background:linear-gradient(180deg,var(--bg-dropdown-start),var(--bg-dropdown-end));padding:.65rem;display:flex;flex-direction:column;gap:.55rem;box-shadow:var(--shadow-xl);border-radius:var(--radius-lg);border:1px solid var(--border);z-index:1000;opacity:0;visibility:hidden;transform:translate(-50%) translateY(-8px) scale(.98);transition:opacity .22s cubic-bezier(.4,0,.2,1),visibility .22s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1);transform-origin:top center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.project .selection .dropdown-menu.open{opacity:1;visibility:visible;transform:translate(-50%) translateY(0) scale(1)}.dropdown-search{display:flex;align-items:center;gap:.5rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:.45rem .6rem;box-shadow:var(--shadow-xs)}.dropdown-search input{width:100%;border:none;outline:none!important;background:transparent;color:var(--text-primary);font-size:.88rem;padding:0;z-index:50}.dropdown-search input::placeholder{color:var(--text-muted)}.dropdown-count{flex-shrink:0;font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono)}.dropdown-tech-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;max-height:320px;overflow-y:auto;padding-right:.15rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.dropdown-tech-list::-webkit-scrollbar{width:6px}.dropdown-tech-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.project .selection .dropdown-menu li{margin:0}.dropdown-tech-item{width:100%;padding:.7rem .8rem;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:transform var(--transition),background var(--transition),color var(--transition),border-color var(--transition),box-shadow var(--transition);font-size:.86rem;font-weight:600;background:var(--bg-surface);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left}.dropdown-tech-item:hover{color:var(--brand);background:var(--brand-muted);border-color:var(--brand-border);transform:translateY(-1px);box-shadow:var(--shadow-xs)}.dropdown-tech-item.selec{background:linear-gradient(135deg,var(--accent-muted),var(--bg-surface));color:var(--text-primary);border-color:var(--accent-border);box-shadow:inset 0 0 0 1px #f59e0b14}.dropdown-tech-check{flex-shrink:0;min-width:1rem;text-align:center;color:var(--accent-dark);font-weight:800}.dropdown-empty{grid-column:1 / -1;padding:.9rem .75rem;color:var(--text-muted);font-size:.85rem;text-align:center;border:1px dashed var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated)}.project-content{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);margin:1rem;border-radius:var(--radius-md);padding:1.25rem;width:380px;max-width:380px;z-index:1;position:relative;cursor:pointer;transition:box-shadow .3s ease,border-color .3s ease}.project-content.reveal-block{opacity:0;filter:blur(10px);transform:translateY(24px);animation:none;transition:opacity .7s ease,filter .7s ease,transform .7s cubic-bezier(.1,.8,.2,1),box-shadow .3s ease,border-color .3s ease}.project-content.reveal-block.reveal-visible{opacity:1;filter:blur(0px);transform:translateY(0)}@keyframes cardIn{to{opacity:1;transform:translateY(0)}}.project-content:hover{box-shadow:var(--shadow-lg),0 10px 30px var(--brand-glow);border-color:var(--brand)}.ia-badge{background:var(--brand);color:var(--text-inverse);font-size:.68rem;font-weight:700;font-family:var(--font-mono);padding:.2rem .55rem;border-radius:99px;display:flex;align-items:center;gap:.3rem;letter-spacing:.04em;box-shadow:0 2px 8px #1e3a8a4d;border:1px solid var(--text-inverse)}.winner-badge{background:linear-gradient(135deg,#f7c948,#e6a817);color:#5a3e00;box-shadow:0 2px 8px #e6a81773;border:1px solid #fff3cf}.info-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);transition:color var(--transition),transform var(--transition);padding:0 0 4px;align-self:flex-end;z-index:2}.info-btn:hover{color:var(--brand);transform:scale(1.15) rotate(15deg)}.project-media-wrapper{position:relative;overflow:hidden;border-radius:var(--radius);margin-bottom:.85rem;border:1px solid var(--border-subtle);transform:translateZ(0);isolation:isolate}.project-media{width:100%;height:185px;object-fit:cover;display:block;border-radius:inherit;transition:transform .45s ease;will-change:transform}.project-content:hover .project-media{transform:scale(1.05)}.project-media-overlay{position:absolute;inset:0;background:#1e3a8abf;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;border-radius:var(--radius)}.project-media-overlay span{color:#fff;font-weight:600;font-size:.9rem;letter-spacing:.04em;transform:translateY(8px);transition:transform .3s ease}.project-content:hover .project-media-overlay{opacity:1}.project-content:hover .project-media-overlay span{transform:translateY(0)}.project-title{font-size:1.15rem;font-weight:700;margin:0 0 .3rem;color:var(--text-primary);text-align:left;letter-spacing:-.025em}.project-brief{color:var(--text-secondary);text-align:justify;margin-top:0;font-size:.875rem;line-height:1.6;flex:1}.project-brief p{margin:0;text-align:justify}.project-brief a{color:var(--brand);text-decoration:underline}.project-brief a:hover{color:var(--brand-hover)}.project-brief strong{color:var(--brand);font-weight:700}.project-tech{display:flex;gap:.4rem;flex-wrap:wrap;margin:.75rem 0 0}.tech-badge{background:var(--brand-muted);color:var(--brand);border:1px solid var(--brand-border);padding:.16rem .55rem;border-radius:99px;font-size:.72rem;font-weight:600;font-family:var(--font-mono);letter-spacing:.02em;transition:background var(--transition),color var(--transition)}.project-links{display:flex;gap:.6rem;justify-content:flex-end;align-items:center;padding-top:.85rem;margin-top:.75rem;border-top:1px solid var(--border-subtle)}.project-btn{display:inline-flex;align-items:center;gap:0;padding:.4rem .85rem;border-radius:var(--radius);text-decoration:none;font-weight:600;font-size:.82rem;transition:all var(--transition);white-space:nowrap}.project-btn--ghost{background:var(--bg-elevated);color:var(--brand);border:1px solid var(--brand-border)}.project-btn--ghost:hover{background:var(--brand-muted);border-color:var(--brand);color:var(--brand)}.project-btn--primary{background:var(--brand);color:var(--text-inverse);border:1px solid transparent}.project-btn--primary:hover{background:var(--brand-hover);color:var(--text-inverse);box-shadow:var(--shadow-brand);transform:translateY(-1px)}.desaparece{max-width:0;opacity:0;overflow:hidden;transition:all .45s ease;font-size:.8rem;white-space:nowrap}.project-btn:hover .desaparece{max-width:110px;opacity:1;padding-left:.5rem}.project-grid-wrapper{position:relative;overflow:hidden;transition:max-height .8s cubic-bezier(.1,.8,.2,1);z-index:1}.project-grid-wrapper.collapsed{max-height:675px}.project-grid-wrapper.expanded{max-height:6000px}.project-grid-fade{position:absolute;bottom:0;left:0;width:100%;height:180px;background:linear-gradient(to top,var(--bg-base) 15%,transparent 100%);pointer-events:none;z-index:5;transition:opacity .4s ease}.project-expand-action{display:flex;justify-content:center;position:relative;z-index:10;padding-bottom:3rem;margin-top:-1.5rem}.project-expand-btn{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:99px;padding:.65rem 1.6rem;font-size:.95rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;box-shadow:var(--shadow-sm);transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-expand-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md),0 8px 25px var(--brand-glow);border-color:var(--brand);color:var(--brand)}.project-grid{display:flex;flex-wrap:wrap;justify-content:center;margin:0;padding:.5rem 5px 1.5rem;min-height:280px;position:relative;z-index:1}@media(max-width:1130px){.project-header{padding-left:60px;padding-right:60px}}@media(max-width:855px){.project-header{flex-direction:column-reverse;padding:1.25rem 1rem;gap:.75rem}.project-title-container{align-items:center;text-align:center;margin-bottom:.5rem}.project-title-container .about-title{font-size:1.9rem}.selection{justify-content:center}.project .selection .tech-dropdown{position:static}.project .selection .dropdown-menu{position:fixed;left:50%;top:auto;transform:translate(-50%) translateY(-8px) scale(.98);width:min(92vw,400px);min-width:0;max-height:70vh;overflow-y:auto;z-index:9999}.project .selection .dropdown-menu.open{transform:translate(-50%) translateY(0) scale(1)}.dropdown-tech-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:240px}.dropdown-tech-item{padding:.55rem .65rem;font-size:.82rem}.tech-drop-btn{min-width:120px}}@media(max-width:520px){.selection{gap:.3rem;font-size:.82rem}.sele{padding:.28rem .6rem;font-size:.78rem}.tech-drop-btn{min-width:100px}.project .selection .dropdown-menu{width:min(96vw,340px);padding:.5rem;gap:.4rem}.dropdown-tech-list{grid-template-columns:1fr;max-height:220px;gap:.35rem}.dropdown-tech-item{padding:.5rem .6rem;font-size:.8rem}.dropdown-search{padding:.38rem .5rem}.dropdown-search input{font-size:.82rem}.selected-tech{flex-wrap:wrap;white-space:normal}.remove-tech{font-size:.74rem;padding:.18rem .5rem}}.project-info-container{display:flex;flex-direction:column;flex:1;text-align:left}@media(min-width:580px)and (max-width:823px){.project-content{flex-direction:row;width:calc(100% - 2rem);max-width:680px;align-items:stretch}.project-content .project-media-wrapper{flex:0 0 160px;width:160px;height:auto;margin-bottom:0;margin-right:1.25rem}.project-content .project-media{height:100%;width:100%;object-fit:cover}}@media(min-width:980px)and (max-width:1235px){.project-content{flex-direction:row;width:calc(50% - 2rem);max-width:560px;align-items:stretch}.project-content .project-media-wrapper{flex:0 0 150px;width:150px;height:auto;margin-bottom:0;margin-right:1.25rem}.project-content .project-media{height:100%;width:100%;object-fit:cover}}@media(min-width:1380px)and (max-width:1647px){.project-content{flex-direction:row;width:calc(33.333% - 2rem);max-width:480px;align-items:stretch}.project-content .project-media-wrapper{flex:0 0 140px;width:140px;height:auto;margin-bottom:0;margin-right:1.25rem}.project-content .project-media{height:100%;width:100%;object-fit:cover}}.project-action{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:46px;height:40px;padding-inline:12px;border:1px solid var(--brand-border);border-radius:10px;color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,var(--bg-surface));font-weight:600;text-decoration:none;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.project-action--primary{color:var(--text-inverse);background:var(--brand);border-color:var(--brand)}.project-action--primary:hover{color:var(--text-inverse);background:var(--brand-hover);border-color:var(--brand-hover)}.project-action--code:hover,.project-action--secondary:hover{color:var(--brand);background:color-mix(in srgb,var(--brand) 13%,var(--bg-surface));border-color:var(--brand)}.project-action svg{flex-shrink:0}.project-action-label{max-width:0;opacity:0;overflow:hidden;padding-left:0;font-size:var(--p3-text-caption, .75rem);white-space:nowrap;transition:max-width .45s ease,opacity .45s ease,padding-left .45s ease}.project-action:focus-visible .project-action-label{max-width:110px;opacity:1;padding-left:.5rem}@media(hover:hover){.project-action:hover .project-action-label{max-width:110px;opacity:1;padding-left:.5rem}.project-action--primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-brand)}}@media(prefers-reduced-motion:reduce){.project-action,.project-action-label{transition:none}}.project-window .cv-viewer.pw-scroll{display:flex;flex-direction:column;align-items:stretch;align-content:normal;gap:0;flex:1;width:100%;max-width:none;margin:0;padding:0;min-width:0;min-height:0;overflow:hidden}.cv-viewer>.pw-intro{flex:none}.cv-viewer>.pw-footer{align-self:stretch;width:100%;box-sizing:border-box}.cv-viewer-content{position:relative;flex:1;align-self:stretch;width:100%;min-width:0;min-height:0;display:flex;background:var(--bg-muted)}.cv-viewer iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0}.cv-viewer-status{margin:auto;padding:28px;text-align:center;color:var(--text-secondary)}.cv-viewer-status>svg{color:var(--brand)}.cv-viewer-status button,.cv-viewer-download{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface);color:var(--brand);font:500 .85rem/1.3 var(--font-sans);text-decoration:none;cursor:pointer}.cv-viewer-download{flex:none}.cv-viewer :is(button,a):focus-visible{outline:2px solid var(--brand);outline-offset:2px}.cv-viewer-hint{color:var(--text-muted);font-size:.75rem;line-height:1.5}.cv-viewer-spinner{animation:cv-viewer-spin .9s linear infinite}@keyframes cv-viewer-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.cv-viewer-spinner{animation:none}}@media(max-width:540px){.cv-viewer-hint{display:none}}.cv-pdf-document{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.cv-pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.cv-pdf-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-primary);cursor:pointer}.cv-pdf-toolbar button:hover{background:var(--bg-muted)}.cv-pdf-toolbar button:disabled{opacity:.35;cursor:default}.cv-pdf-toolbar output{min-width:48px;text-align:center;font-size:.8rem;font-variant-numeric:tabular-nums}.cv-pdf-viewport{flex:1;min-height:0;overflow:auto;padding:12px;overscroll-behavior:contain;touch-action:pan-x pan-y}.cv-pdf-page{position:relative;margin:0 auto 12px;background:#fff;box-shadow:0 2px 12px #0002;flex-shrink:0}.cv-pdf-page canvas{display:block;width:100%;height:100%}.project-workspace{position:fixed;inset:0;z-index:1100;pointer-events:none}.project-workspace--modal{background:#0f172a55;pointer-events:auto}.project-window{position:absolute;display:flex;flex-direction:column;container:project-window / inline-size;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 44px #09152924,0 2px 8px #09152914;pointer-events:auto;overflow:hidden;text-align:left;isolation:isolate}.project-window[data-active=true]{border-color:var(--brand-border);box-shadow:0 18px 60px #09152933,0 3px 12px #09152914}.project-window[hidden],.project-dock[hidden]{display:none}.project-window:focus{outline:none}.project-window{transform-origin:top left}.project-window--moving{pointer-events:none}.pw-genie{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.project-window :where(button,a,select):focus-visible,.project-dock button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.pw-titlebar{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px;padding:7px 100px;background:var(--bg-elevated);border-bottom:1px solid var(--border);flex-shrink:0}.pw-titlebar[data-cursor]{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.pw-titlebar[data-cursor=grabbing]{cursor:grabbing}.project-window[data-active=true] .pw-titlebar{background:var(--bg-muted)}.pw-controls{position:absolute;left:12px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:3px}.pw-controls button{width:23px;height:28px;position:relative;padding:0;display:grid;place-items:center;border:0;background:transparent;isolation:isolate}.pw-controls button:before{content:"";position:absolute;width:16px;height:16px;left:50%;top:50%;transform:translate(-50%,-50%);z-index:-1;border:1px solid #00000026;border-radius:50%;background:var(--pw-control-color);box-shadow:inset 0 1px #ffffff28;transition:filter .15s}.pw-controls button:hover:before{filter:brightness(.92)}.pw-controls .pw-close{--pw-control-color: #ff5f57;color:#82120d}.pw-controls .pw-minimize{--pw-control-color: #febc2e;color:#885900}.pw-controls .pw-maximize{--pw-control-color: #28c840;color:#096c19}.pw-controls button svg{opacity:0;transition:opacity .12s}.pw-controls:hover button svg,.pw-controls:focus-within button svg{opacity:1}.pw-drag{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:32px;padding:0 4px;border:0;border-radius:4px;background:transparent;color:var(--text-primary);font:500 .85rem var(--font-sans);cursor:inherit;touch-action:none;-webkit-user-select:none;user-select:none}.pw-drag span,.pw-bar-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.pw-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;padding:24px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.pw-overview{display:grid;gap:20px;align-items:start;padding-bottom:24px;border-bottom:1px solid var(--border)}.pw-intro{min-width:0}.pw-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.pw-badges span{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font:500 .6rem/1.5 var(--font-mono)}.pw-intro h2{font:600 clamp(1.5rem,4cqi,2rem)/1.15 var(--font-sans);letter-spacing:-.035em;color:var(--text-primary);margin:0 0 14px;overflow-wrap:anywhere}.portfolio-preview .pw-intro h2{font-family:var(--p3-serif);font-weight:500}.pw-summary{color:var(--text-secondary);font-size:.83rem;line-height:1.7}.pw-summary p{margin:0;text-align:left}.pw-summary strong{font-weight:500}.pw-tech{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:18px 0 0;padding:0}.pw-tech li{padding:4px 7px;border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);background:var(--bg-base);font:400 .6rem/1.5 var(--font-mono)}.pw-media{min-width:0;display:flex;flex-direction:column;gap:8px}.pw-media>img{display:block;width:100%;height:190px;object-fit:contain;background:var(--bg-muted);border:1px solid var(--border);border-radius:6px}.pw-video{gap:0;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface)}.pw-video-stage{position:relative;width:100%;aspect-ratio:16/9;min-height:200px;background:#101923}.pw-video-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.pw-video-host{position:absolute;inset:0;pointer-events:none;-webkit-user-select:none;user-select:none}.pw-video-host iframe{display:block;width:100%;height:100%;border:0;pointer-events:none}.pw-video-status{position:absolute;inset:0;display:grid;place-items:center;margin:0;padding:20px;color:#e1e8f1;background:#101923;text-align:center;font:400 14px/1.5 var(--font-sans)}.pw-video-controls{display:flex;align-items:center;gap:5px;padding:7px 9px;border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0}.pw-video-controls button{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:40px;height:36px;padding:0 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--brand);transition:background .15s,border-color .15s}.pw-video-controls button span{font:500 11px/1 var(--font-mono)}.pw-video-controls button:hover:not(:disabled){background:var(--brand-muted);border-color:var(--brand-border)}.pw-video-controls button:disabled{opacity:.4;cursor:default}.pw-video-controls .pw-video-toggle{background:var(--brand-muted);border-color:var(--brand-border)}.pw-video-controls .pw-video-enlarge{margin-left:auto}.pw-video:fullscreen{display:flex;flex-direction:column;width:100%;height:100%;border:0;border-radius:0}.pw-video--expanded{position:absolute;inset:48px 0 0;z-index:5;border:0;border-radius:0}.pw-video:fullscreen .pw-video-stage,.pw-video--expanded .pw-video-stage{flex:1;min-height:0;aspect-ratio:auto}.pw-video:fullscreen .pw-video-controls{padding:10px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}@media(pointer:coarse){.pw-video-controls button{min-width:44px;height:44px}}.pw-description{color:var(--text-secondary);font-size:.84rem;line-height:1.8;overflow-wrap:anywhere;max-width:82ch;margin:24px auto 8px}.pw-description :is(h1,h2,h3,h4){color:var(--text-primary);font:600 1.08rem/1.45 var(--font-sans);letter-spacing:-.02em;margin:24px 0 10px}.pw-description>:first-child{margin-top:0}.pw-description p{margin:0 0 14px;text-align:left}.pw-description :is(ul,ol){padding-left:22px;margin:0 0 18px}.pw-description li{margin-bottom:8px}.pw-description strong{color:var(--text-primary);font-weight:600}.pw-description blockquote{padding:12px 18px;border-left:2px solid var(--accent);margin:18px 0;background:var(--brand-muted)}.pw-description blockquote p:last-child{margin-bottom:0}.pw-description a{text-decoration:underline;text-underline-offset:3px}.pw-description hr{border:0;border-top:1px solid var(--border);margin:24px 0}.pw-description pre{max-width:100%;overflow:auto}.pw-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 26px 10px 24px;border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0}.pw-footer-note{color:var(--text-muted);font:400 .59rem var(--font-mono)}.pw-links{margin-inline-start:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 10px}.pw-resize{position:absolute;z-index:4;touch-action:none}.pw-resize-n,.pw-resize-s{left:14px;right:14px;height:7px;cursor:ns-resize}.pw-resize-n{top:0}.pw-resize-s{bottom:0;right:24px}.pw-resize-e,.pw-resize-w{top:14px;bottom:14px;width:7px;cursor:ew-resize}.pw-resize-e{right:0;bottom:24px}.pw-resize-w{left:0}.pw-resize-nw,.pw-resize-ne,.pw-resize-sw{width:14px;height:14px}.pw-resize-nw{top:0;left:0;cursor:nwse-resize}.pw-resize-ne{top:0;right:0;cursor:nesw-resize}.pw-resize-sw{bottom:0;left:0;cursor:nesw-resize}.pw-resize-se{right:0;bottom:0;width:24px;height:24px;display:grid;place-items:center;background:transparent;color:var(--text-muted);padding:3px;border:0;border-radius:4px 0 12px;cursor:nwse-resize}.project-window--interacting{-webkit-user-select:none;user-select:none}.project-window--interacting iframe{pointer-events:none}.pw-mobile-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.pw-mobile-nav button{display:flex;align-items:center;gap:6px;min-height:38px;background:none;border:0;color:var(--text-secondary);font-size:.7rem;padding:0;white-space:nowrap}.pw-mobile-nav select{min-width:0;max-width:46%;min-height:36px;padding:5px;background:var(--bg-base);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:.7rem}.project-window--compact{border-radius:10px}.project-window--compact .pw-titlebar{min-height:48px;padding-inline:70px}.project-window--compact .pw-bar-title{text-align:center;font-size:.75rem;font-weight:500}.project-window--compact .pw-scroll{padding:20px 16px}.project-window--compact .pw-footer{padding-inline:16px}.project-window--compact .pw-footer-note{display:none}.project-window--compact .pw-links{width:100%}.project-dock{position:absolute;left:0;right:0;margin-inline:auto;bottom:max(12px,env(safe-area-inset-bottom));z-index:100000;width:max-content;max-width:min(1100px,calc(100vw - 180px));padding:0 3px;border:0;isolation:isolate;pointer-events:auto}.project-dock:before{content:"";position:absolute;inset:auto 40px 0;height:74px;transform:scaleX(var(--dock-glass-scale, 1));transform-origin:center;z-index:-1;border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:20px;background:color-mix(in srgb,var(--bg-surface) 82%,transparent);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);box-shadow:0 8px 32px #09152926,inset 0 1px #ffffff50;pointer-events:none}.project-dock-icons{display:flex;align-items:flex-end;gap:3px;width:max-content;max-width:100%;height:106px;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;padding:30px 45px 5px;overscroll-behavior-x:contain;scrollbar-width:none}.project-dock-icons::-webkit-scrollbar{display:none}.project-dock-item{position:relative;flex:none;width:58px;transform:translate3d(var(--dock-x, 0px),0,0);display:flex;align-items:center;flex-direction:column;gap:4px;padding-top:2px}.project-dock-icon{position:relative;width:52px;height:52px;transform:scale(var(--dock-scale, 1));transform-origin:center bottom;flex-shrink:0;padding:3px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--border));border-radius:13px;background:var(--bg-surface);color:var(--brand);box-shadow:0 2px 5px #0915291a;overflow:hidden;transition:box-shadow .18s ease;will-change:transform}.project-dock-icon img{display:block;position:relative;width:100%;height:100%;object-fit:cover;border-radius:9px;pointer-events:none}.project-dock-icon img[hidden]{display:none}.project-dock-initials{position:absolute;inset:3px;display:grid;place-items:center;border-radius:9px;background:var(--brand-muted);font:600 16px var(--font-sans)}.project-dock-item:hover .project-dock-icon,.project-dock-icon:focus-visible{box-shadow:0 6px 12px #09152924}.project-dock-item[data-active=true] .project-dock-icon{border-color:var(--brand)}.project-dock-indicator{width:4px;height:4px;border-radius:50%;background:var(--text-muted)}.project-dock-item[data-active=true] .project-dock-indicator{background:var(--brand)}.project-dock-item[data-minimized=true] .project-dock-indicator{background:transparent}.project-dock-close{transform:translate3d(calc(var(--dock-grow, 0px) / 2),calc(-1 * var(--dock-grow, 0px)),0);position:absolute;right:0;top:-5px;width:20px;height:20px;display:grid;place-items:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 4px #09152922;opacity:0;pointer-events:none;transition:opacity .15s}.project-dock-item:hover .project-dock-close,.project-dock-item:focus-within .project-dock-close{opacity:1;pointer-events:auto}.project-dock-tooltip{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%);width:max-content;max-width:min(280px,calc(100vw - 32px));padding:7px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg-surface);color:var(--text-primary);box-shadow:0 4px 18px #09152922;text-align:center;pointer-events:none;font:500 13px/1.4 var(--font-sans)}.project-dock-tooltip span{display:block;color:var(--text-secondary);font-size:11px;font-weight:400}.pw-snap-preview{position:absolute;border:2px solid color-mix(in srgb,var(--brand) 60%,transparent);border-radius:12px;background:color-mix(in srgb,var(--brand) 12%,transparent);box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--bg-surface) 60%,transparent);pointer-events:none;transition:left .12s ease,top .12s ease,width .12s ease,height .12s ease}.pw-snap-preview span{display:block;width:max-content;margin:12px auto;padding:7px 12px;border-radius:20px;background:var(--brand);color:var(--text-on-brand, #fff);font:500 12px var(--font-sans)}.pw-layout-menu{position:fixed;z-index:1450;width:308px;max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box;padding:14px;border:1px solid var(--border);border-radius:18px;color:var(--text-primary);background:color-mix(in srgb,var(--bg-surface) 92%,transparent);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 12px 40px #09152930,0 2px 6px #09152918;pointer-events:auto;text-align:left}.pw-layout-heading{margin:0 4px 10px;color:var(--text-secondary);font:600 12px/1.4 var(--font-sans)}.pw-layout-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.pw-layout-menu button{display:flex;align-items:center;justify-content:center;min-height:44px;border:0;border-radius:7px;padding:7px;background:transparent;color:var(--text-primary);font:500 13px/1.4 var(--font-sans)}.pw-layout-menu button:not(:disabled):hover,.pw-layout-menu button[data-selected=true]{background:var(--brand-muted);color:var(--brand)}.pw-layout-menu button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.pw-layout-menu button:disabled{opacity:.25;cursor:default}.pw-layout-divider{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.pw-layout-menu .pw-layout-row{width:100%;justify-content:flex-start;gap:9px;min-height:36px}.pw-layout-row kbd{margin-left:auto;color:var(--text-secondary);font:11px var(--font-sans)}.pw-layout-shortcuts{display:grid;gap:4px;margin:12px 4px 0;color:var(--text-muted);font:11px/1.45 var(--font-sans)}.pw-layout-shortcuts kbd{color:var(--text-secondary);font:inherit}.pw-shortcut-system{color:var(--text-secondary);font-weight:600}.project-window:fullscreen{position:fixed;inset:0!important;width:100vw!important;height:100dvh!important;border-radius:0}body:has(.project-workspace) .chatbot-popup{z-index:1600}body:has(.project-workspace) .chatbot-button{z-index:1601}body:has(.project-window[data-expanded=true]:not([hidden])) :is(.chatbot-popup,.chatbot-button){z-index:1090}body:has(.project-workspace) .chat-tooltip{display:none}body:has(.project-workspace--modal) :is(.chatbot-popup,.chatbot-button){visibility:hidden}@container project-window (min-width: 660px){.pw-overview{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px}.pw-media>img{height:220px}}@container project-window (min-width: 1040px){.pw-scroll{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.4fr);gap:clamp(28px,3cqi,56px);align-items:start;align-content:start;width:100%;max-width:1680px;margin-inline:auto;padding:clamp(28px,2.5cqi,44px)}.pw-overview{grid-template-columns:minmax(0,1fr);gap:24px;padding:0;border:0}.pw-intro h2{font-size:clamp(2rem,3cqi,3.25rem)}.pw-summary{font-size:clamp(.95rem,1.05cqi,1.125rem);line-height:1.8}.pw-badges span,.pw-tech li{font-size:.75rem}.pw-media>img{height:auto;aspect-ratio:16 / 10}.pw-video:not(:fullscreen):not(.pw-video--expanded) .pw-video-stage{min-height:0}.pw-description{min-width:0;max-width:78ch;margin:0;padding-left:clamp(28px,3cqi,56px);border-left:1px solid var(--border);font-size:clamp(.95rem,1.05cqi,1.125rem);line-height:1.8}.pw-description :is(h1,h2,h3,h4){margin-top:26px;font-size:1.25em}.pw-description>:first-child{margin-top:0}.pw-description p{margin-bottom:12px;orphans:3;widows:3}.pw-description :is(li,blockquote,pre){break-inside:avoid}}@container project-window (max-width: 470px){.pw-scroll{padding:20px 16px}.pw-titlebar{gap:8px}.pw-footer-note{display:none}.pw-links{width:100%}.pw-media>img{height:160px}}@media(max-width:799px){.project-dock{max-width:calc(100vw - 160px)}}@media(hover:none){.pw-controls button svg{opacity:1}.project-dock-close{opacity:1;pointer-events:auto}}@media(prefers-reduced-motion:reduce){.project-window *,.project-dock *,.pw-snap-preview{transition:none!important}}.project-stage{--stage-width: clamp(136px, 10vw, 176px);position:absolute;z-index:100001;top:12px;bottom:88px;left:0;width:calc(var(--stage-width) + 32px);display:flex;align-items:center;pointer-events:none}.project-stage-rail{width:100%;max-height:100%;padding:16px 14px 16px 10px;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--brand-border) transparent;pointer-events:auto;border:1px solid #ffffff55;border-left:0;border-radius:0 26px 26px 0;background:radial-gradient(ellipse at 100% 0%,#ffffff50,transparent 48%),linear-gradient(115deg,#ffffff20,transparent 38%,transparent 68%,#ffffff18),color-mix(in srgb,var(--bg-surface) 14%,transparent);backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);box-shadow:inset 0 1px #ffffffb3,inset -1px 0 #fff6,inset 0 -1px #ffffff40,inset -3px 0 8px #ffffff18,1px 0 #0915290d,6px 12px 32px #0915291a}.project-stage-list{display:grid;gap:22px}.project-stage-item{position:relative;min-width:0;perspective:650px}.project-stage-select{display:block;width:100%;padding:0;border:0;background:none;color:var(--text-primary);text-align:left}.project-stage-preview{display:block;width:var(--stage-width);overflow:hidden;border:1px solid var(--brand-border);border-radius:8px;background:var(--bg-surface);box-shadow:3px 7px 15px #09152928,0 1px 3px #0915291a;transform:rotateY(16deg) rotate(-1.5deg);transform-origin:left center;transition:transform .22s,box-shadow .22s;pointer-events:none}.project-stage-select:is(:hover,:focus-visible) .project-stage-preview{transform:translate(3px) rotateY(0) rotate(0);box-shadow:3px 9px 20px #09152935}.project-stage-chrome{display:flex;align-items:center;gap:3px;height:17px;padding:0 6px;background:var(--bg-muted);border-bottom:1px solid var(--border)}.project-stage-chrome>i{flex:none;width:4px;height:4px;border-radius:50%;background:#ff5f57}.project-stage-chrome>i:nth-child(2){background:#febc2e}.project-stage-chrome>i:nth-child(3){background:#28c840}.project-stage-chrome>span{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-inline:3px 14px;text-align:center;color:var(--text-secondary);font:500 7px/1 var(--font-sans)}.project-stage-media{display:block;position:relative;aspect-ratio:16 / 9;margin:5px;border-radius:3px;overflow:hidden;background:var(--brand-muted)}.project-stage-media img{display:block;position:relative;width:100%;height:100%;object-fit:cover}.project-stage-media img[hidden]{display:none}.project-stage-fallback{position:absolute;inset:0;display:grid;place-items:center;padding:12px;color:var(--brand);text-align:center;font:600 12px/1.4 var(--font-sans)}.project-stage-tech{display:flex;gap:3px;overflow:hidden;white-space:nowrap;padding:1px 6px 7px}.project-stage-tech>span{padding:2px 3px;color:var(--text-secondary);background:var(--brand-muted);border-radius:2px;font:500 6px/1.2 var(--font-mono)}.project-stage-caption{display:flex;align-items:center;gap:6px;margin:5px 2px 0;min-height:27px;padding:2px 6px 2px 2px;width:fit-content;max-width:100%;box-sizing:border-box;border-radius:7px;background:color-mix(in srgb,var(--bg-surface) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.project-stage-mark{display:grid;place-items:center;flex:none;width:23px;height:23px;border:1px solid var(--brand-border);border-radius:6px;background:var(--brand);color:var(--text-on-brand, #fff);font:600 9px/1 var(--font-sans)}.project-stage-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:500 12px/1.4 var(--font-sans)}.project-stage-dot{flex:none;width:4px;height:4px;border-radius:50%;background:var(--brand)}.project-stage-item[data-minimized=true] .project-stage-dot{background:transparent;box-shadow:0 0 0 1px var(--text-muted)}.project-stage-close{position:absolute;right:0;top:-7px;display:grid;place-items:center;width:23px;height:23px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--bg-surface);color:var(--text-primary);box-shadow:0 2px 6px #09152924;opacity:0;pointer-events:none;transition:opacity .15s}.project-stage-item:is(:hover,:focus-within) .project-stage-close{opacity:1;pointer-events:auto}.project-stage-reveal{position:absolute;left:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:4px;padding:10px 7px;min-height:44px;border:1px solid var(--brand-border);border-left:0;border-radius:0 12px 12px 0;background:color-mix(in srgb,var(--bg-surface) 90%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:2px 3px 12px #0915291a;color:var(--brand);pointer-events:auto;font:600 11px/1 var(--font-sans)}.project-stage-rail[hidden],.project-stage-reveal[hidden]{display:none}.project-stage button:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:8px}.project-workspace:has(.project-window--interacting) .project-stage{visibility:hidden;opacity:0}.project-workspace:has(.project-window--interacting) .project-stage *{pointer-events:none;visibility:hidden}@media(hover:none){.project-stage-close{opacity:1;pointer-events:auto}}@media(prefers-reduced-motion:reduce){.project-stage *{transition:none!important}}.header{position:fixed;top:0;left:0;width:100%;height:66px;background:var(--bg-header);backdrop-filter:blur(16px) saturate(200%);-webkit-backdrop-filter:blur(16px) saturate(200%);display:flex;align-items:center;justify-content:center;padding:0 2.5rem;border-bottom:1px solid transparent;transition:background var(--t-slow) var(--ease),border-color var(--t-slow) var(--ease),box-shadow var(--t-slow) var(--ease);z-index:1000}.header.scrolled{background:var(--bg-header);border-bottom-color:var(--border);box-shadow:var(--shadow-sm)}.header-content{width:100%;max-width:1200px;display:flex;align-items:center;justify-content:flex-end;gap:1.5rem;position:relative}.header-logo{position:absolute;left:50%;transform:translate(-50%);height:46px;display:flex;align-items:center;transition:left var(--t-slow) var(--ease-out),transform var(--t-slow) var(--ease-out);will-change:left,transform}.logo-full{font-family:Playfair Display,Garamond,Baskerville,Georgia,serif;font-size:1.7rem;font-weight:800;color:var(--brand);letter-spacing:-.04em;white-space:nowrap;text-transform:lowercase;position:relative}.logo-full:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:var(--accent);border-radius:99px;transform:scaleX(0);transform-origin:left;transition:transform var(--t-slow) var(--ease-spring)}.header-logo:hover .logo-full:after{transform:scaleX(1)}.header.scrolled .header-logo{left:0;transform:translate(0)}.header-actions{display:flex;align-items:center;gap:.25rem}.menu-toggle{display:none;background:transparent;border:none;font-size:1.2rem;cursor:pointer;color:var(--text-secondary);padding:.45rem .55rem;border-radius:var(--radius-sm);transition:color var(--t),background var(--t)}.menu-toggle:hover{color:var(--brand);background:var(--brand-muted)}.header-nav{display:flex;gap:0;opacity:0;visibility:hidden;transition:opacity var(--t),visibility var(--t);position:absolute;left:50%;transform:translate(-50%)}.header.scrolled .header-nav{opacity:1;visibility:visible}.header-nav a{color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:.875rem;padding:.42rem .9rem;border-radius:var(--radius-sm);transition:color var(--t),background var(--t);white-space:nowrap;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;position:relative}.header-nav a:after{content:"";position:absolute;bottom:0;left:.9rem;right:.9rem;height:2px;background:var(--brand-mid);border-radius:99px;transform:scaleX(0);transition:transform var(--t) var(--ease-spring)}.header-nav a:hover{color:var(--brand);background:var(--brand-muted)}.header-nav a:hover:after{transform:scaleX(1)}.download-icon{transition:transform var(--t) var(--ease)}.header-nav a:hover .download-icon{transform:translateY(2px)}.lang-btn{padding:.38rem .9rem;background:var(--brand);color:var(--text-inverse);border:1px solid var(--brand);border-radius:var(--radius);font-weight:700;font-size:.78rem;text-transform:uppercase;cursor:pointer;transition:all var(--t) var(--ease);letter-spacing:.06em;min-width:52px;text-align:center}.lang-btn:hover{background:var(--brand-hover);border-color:var(--brand-hover);box-shadow:var(--shadow-brand);transform:translateY(-1px)}.lang-btn:active{transform:translateY(0);box-shadow:none}.theme-toggle-group{--btn-size: 30px;--gap-size: 2px;--padding-size: 3px;position:relative;display:inline-flex;align-items:center;background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--padding-size);gap:var(--gap-size);margin-right:.5rem;user-select:none;-webkit-user-select:none;touch-action:none;cursor:grab}.theme-toggle-group.dragging{cursor:grabbing}.theme-toggle-btn{position:relative;z-index:2;background:transparent;border:none;color:var(--text-secondary);width:var(--btn-size);height:var(--btn-size);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;cursor:inherit;transition:color var(--t) var(--ease);padding:0}.theme-toggle-btn:hover{color:var(--brand)}.theme-toggle-btn.active{color:var(--text-inverse);pointer-events:none}.theme-toggle-btn svg{transition:transform var(--t) var(--ease-spring)}.theme-toggle-btn:hover svg{transform:scale(1.1)}.theme-slider{position:absolute;top:var(--padding-size);left:var(--padding-size);width:var(--btn-size);height:var(--btn-size);background:var(--brand);border-radius:var(--radius-xl);z-index:1;transition:transform var(--t-slow) var(--ease-spring);box-shadow:var(--shadow-xs)}html.dark .theme-slider{box-shadow:0 0 10px var(--brand-glow)}.progress-bar{position:absolute;bottom:0;left:0;height:2px;width:100%;background:transparent}.progress-fill{height:100%;width:0%;background:var(--brand-mid);border-radius:0 99px 99px 0;transition:width .16s cubic-bezier(.1,.8,.2,1);box-shadow:0 0 6px #f59e0b66}.spinner{display:inline-block;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:1075px){.header{padding:0 1.5rem;height:62px}.header.scrolled .header-logo{display:none}.header-nav{transform:translate(-60%)}.header-logo{height:40px}}@media(max-width:717px){.header-content{gap:.5rem}.header-logo{display:inline;left:50%!important;transform:translate(-50%)!important;align-content:center}.header.scrolled .header-logo{display:inline;left:50%!important;transform:translate(-50%)!important}.menu-toggle{display:flex;align-items:center;justify-content:center}.header-nav,.header.scrolled .header-nav{position:fixed;top:62px;right:1rem;width:216px;background:var(--bg-surface);flex-direction:column;padding:.5rem;gap:0;box-shadow:var(--shadow-lg);border-radius:var(--radius-md);border:1px solid var(--border);z-index:999;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.96)!important;transition:all .25s cubic-bezier(.4,0,.2,1);transform-origin:top right;left:auto}.header-nav.open,.header.scrolled .header-nav.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)!important;width:190px}.header-nav a,.header.scrolled .header-nav a{padding:.8rem 1rem;border-radius:var(--radius-sm);width:100%;justify-content:flex-start;font-size:.8rem}.header-nav a:after{display:none}}@media(max-width:615px){.header-logo{left:0!important;transform:translate(0)!important;align-content:center}.header.scrolled .header-logo{left:0!important;transform:translate(0)!important}}@media(max-width:405px){.logo-full{font-size:1.45rem}.lang-btn{min-width:46px;padding:.35rem .6rem;font-size:.72rem}.theme-toggle-group{--btn-size: 24px;--gap-size: 1.5px;--padding-size: 2px}}@media(max-width:360px){.logo-full{font-size:1.2rem;align-items:center}.lang-btn{min-width:46px;padding:.35rem .6rem;font-size:.72rem}}.contact-popup-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .25s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.contact-popup{background:var(--bg-surface);border-radius:var(--radius-lg);max-width:720px;width:min(92%,720px);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;position:relative;border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:slideUp .28s ease-out}.contact-popup-header{flex-shrink:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.7rem 1rem;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.contact-popup-header-spacer{display:block}.contact-popup-body{overflow-y:auto;overflow-x:hidden;flex-grow:1;padding:1.5rem 2rem 2rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.contact-popup-body::-webkit-scrollbar{width:6px}.contact-popup-body::-webkit-scrollbar-track{background:transparent}.contact-popup-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.contact-popup-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.contact-popup-header h2{margin:0;color:var(--text-primary);font-size:1rem;font-weight:600;text-align:center;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-tabs{display:flex;gap:0;margin-bottom:1.75rem;border-bottom:1px solid var(--border)}.tab-button{flex:1;padding:.85rem 1rem;background:none;border:none;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-muted);transition:all var(--transition);border-bottom:2px solid transparent;margin-bottom:-1px;display:flex;align-items:center;justify-content:center;gap:.5rem;border-radius:0}.tab-button:hover{color:var(--text-secondary);background:var(--bg-elevated)}.tab-button.active{color:var(--brand);font-weight:600;border-bottom-color:var(--brand);background:transparent}.contact-info{display:flex;flex-direction:column;gap:.75rem}@media(min-width:640px){.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}}.info-item{display:flex;align-items:center;gap:1rem;padding:.9rem 1rem;background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius);transition:all var(--transition);text-decoration:none;color:inherit;cursor:pointer}.info-item:hover{background:var(--brand-muted);border-color:var(--brand-border);transform:translate(3px)}.info-icon{font-size:1.3rem;flex-shrink:0}.info-icon-img{width:1.3rem;height:1.3rem;object-fit:contain;flex-shrink:0}html.dark img.info-icon-img{filter:brightness(0) invert(1)}.info-content{flex:1;text-align:left}.info-content h3{margin:0 0 .2rem;font-size:.75rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.07em}.info-content a{color:var(--brand);text-decoration:none;font-size:.95rem;transition:color var(--transition)}.info-content a:hover{color:var(--brand-hover);text-decoration:underline}.info-content span,.info-content p{color:var(--text-secondary);font-size:.95rem;margin:0;-webkit-user-select:text;user-select:text}.form-group{margin-bottom:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-row .form-group{margin-bottom:.35rem}@media(max-width:600px){.form-row{grid-template-columns:1fr;gap:0}.form-row .form-group{margin-bottom:1rem}}.form-group label{display:block;margin-bottom:.45rem;color:var(--text-primary);font-weight:500;font-size:.875rem;text-align:left}.required-asterisk{color:var(--error);margin-left:.2rem;font-weight:700}.contact-info-text{display:block;margin:0 0 1.25rem;color:var(--text-muted);font-size:.8rem;font-style:italic;text-align:center}.form-group input,.form-group textarea{width:100%;padding:.7rem .9rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;font-family:var(--font-sans);transition:border-color var(--transition),box-shadow var(--transition);box-sizing:border-box;background:var(--bg-base);color:var(--text-primary)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-muted);background:var(--bg-surface)}.form-group textarea{resize:vertical;min-height:100px}.submit-button{display:block;width:auto;min-width:220px;margin-left:auto;padding:.85rem 1.75rem;background:var(--brand);color:var(--text-inverse);border:none;border-radius:var(--radius);font-size:.95rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition);letter-spacing:.01em}.submit-button:hover{background:var(--brand-hover);box-shadow:var(--shadow-brand);transform:translateY(-1px)}.submit-button:active{transform:translateY(0);box-shadow:none}.status-message{padding:.85rem 1rem;border-radius:var(--radius);margin-bottom:1rem;text-align:center;font-weight:500;font-size:.9rem}.status-message.success{background:var(--success-muted);color:var(--success);border:1px solid rgba(22,163,74,.25)}.status-message.error{background:var(--error-muted);color:var(--error);border:1px solid rgba(220,38,38,.2)}.status-message.sending{background:var(--brand-muted);color:var(--brand);border:1px solid var(--brand-border);display:flex;align-items:center;justify-content:center;gap:.75rem}.spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.contact-popup{width:96%}.contact-popup-body{padding:1.25rem}.contact-popup-header{padding:.6rem .75rem}.contact-popup-header h2{font-size:.9rem}.tab-button{font-size:.82rem;padding:.7rem .5rem}.info-item{padding:.75rem}.info-icon{font-size:1.1rem}}@media(max-width:600px){.submit-button{width:100%;min-width:0;margin-left:0}}.popup-confirm-overlay{position:fixed;inset:0;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));box-sizing:border-box;background:#0f172a6b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;z-index:2000;animation:confirmFadeIn .2s ease-out}.popup-confirm-container{position:relative;display:flex;flex-direction:column;width:min(100%,560px);max-height:100%;min-height:0;overflow:hidden;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:20px;box-shadow:0 24px 80px #0f172a3d;animation:confirmSlideUp .24s ease-out}.popup-confirm-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.popup-confirm-close:hover{background:var(--bg-elevated);color:var(--text-primary)}.confirmation-header{padding:28px 32px 22px;flex-shrink:0}.confirmation-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:18px;border-radius:14px;background:color-mix(in srgb,var(--brand) 8%,var(--bg-surface));color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 15%,transparent)}.confirmation-header .confirmation-eyebrow{margin:0 0 8px;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--text-muted)}.popup-confirm-container h3{margin:0 0 10px;font-size:clamp(1.45rem,4vw,1.8rem);letter-spacing:-.035em;line-height:1.2;color:var(--text-primary)}.confirmation-header>p:last-child{margin:0;max-width:42ch;font-size:.9rem;line-height:1.6;color:var(--text-secondary, var(--text-muted))}.confirmation-data{margin:0 32px 24px;padding:0 20px;min-height:0;overflow-y:auto;overscroll-behavior:contain;background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:12px}.confirmation-item{padding:15px 0;border-bottom:1px solid var(--border-subtle)}.confirmation-item:last-child{border-bottom:0}.confirmation-item dt{margin-bottom:5px;color:var(--text-muted);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.065em}.confirmation-item dd{margin:0;font-size:.95rem;line-height:1.6;overflow-wrap:anywhere}.confirmation-message dd{white-space:pre-wrap}.confirmation-buttons{display:flex;justify-content:space-between;gap:12px;padding:20px 32px;border-top:1px solid var(--border-subtle);flex-shrink:0}.confirmation-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 16px;border-radius:9px;font:600 .875rem var(--font-sans);cursor:pointer;transition:background .18s,box-shadow .18s}.popup-confirm-edit{background:transparent;color:var(--text-primary);border:1px solid var(--border)}.popup-confirm-edit:hover{background:var(--bg-elevated)}.popup-confirm-btn{background:var(--brand);color:var(--text-inverse);border:1px solid transparent}.popup-confirm-btn:hover{background:var(--brand-hover);box-shadow:var(--shadow-brand)}.popup-confirm-container button:focus-visible{outline:2px solid var(--brand);outline-offset:3px}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmSlideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:480px){.confirmation-header{padding:24px 20px 18px}.confirmation-data{margin:0 20px 20px;padding:0 16px}.confirmation-buttons{padding:16px 20px;flex-direction:column-reverse;gap:10px}}@media(max-height:600px){.confirmation-header{padding-top:18px;padding-bottom:14px}.confirmation-icon{display:none}.confirmation-header>p:last-child{font-size:.8rem}.confirmation-buttons{padding-top:12px;padding-bottom:12px}}@media(prefers-reduced-motion:reduce){.popup-confirm-overlay,.popup-confirm-container{animation:none}}.mac-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.mac-dot{width:13px;height:13px;padding:0;border-radius:50%;border:1px solid rgba(0,0,0,.1);display:block;flex-shrink:0}.mac-dot--close{background:#ff5f57;color:#7a0f0a;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0;transition:filter var(--t) var(--ease),transform var(--t) var(--ease)}.mac-dot--close svg{width:8px;height:8px;opacity:0;transition:opacity var(--t) var(--ease)}.mac-dot--close:hover{filter:brightness(1.06);transform:scale(1.08)}.mac-dot--close:hover svg,.mac-dot--close:focus-visible svg{opacity:1}.mac-dot--close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.mac-dot--close:disabled{cursor:default;transform:none;filter:none}.mac-dot--close:disabled svg{opacity:0}.mac-dot--min{background:#d3a444;cursor:default}.mac-dot--max{background:#58a361;cursor:default}html.dark .mac-dot{border-color:#00000047}@media(prefers-reduced-motion:reduce){.mac-dot--close{transition:none}.mac-dot--close:hover{transform:none}}.privacy-link-button{padding:0;border:0;color:inherit;background:none;font:inherit;text-decoration:underline;text-underline-offset:3px}.footer-privacy{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:14px 0;font-size:.875rem;color:var(--text-secondary)}.chatbot-privacy{font-size:.78rem;line-height:1.5;color:var(--text-secondary);padding:10px 14px;border-top:1px solid var(--border)}.chatbot-privacy label,.contact-privacy label{display:flex;align-items:flex-start;gap:8px}.chatbot-privacy input[type=checkbox],.contact-privacy input[type=checkbox]{width:16px;height:16px;flex:0 0 16px;margin:3px 0 0;accent-color:var(--brand);box-shadow:none}.chatbot-privacy a,.contact-privacy a{text-decoration:underline;text-underline-offset:2px}.chatbot-consent-actions{display:flex;flex-wrap:wrap;gap:8px}.chatbot-consent-actions button{flex:1;min-height:42px}.privacy-decline{padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);font:inherit}.chatbot-voice-consent{max-height:210px;overflow:auto;padding:14px;border-top:1px solid var(--border);font-size:.8rem;line-height:1.5}.chatbot-voice-consent p{margin:0 0 10px}.contact-privacy{margin:16px 0;font-size:.82rem;line-height:1.6;color:var(--text-secondary)}.contact-privacy label{margin:10px 0;font-size:inherit}.contact-privacy p{margin:10px 0}.privacy-activate{padding:10px 14px;border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:var(--text-inverse);font:inherit}.chatbot-privacy>span{display:block;margin-top:6px}.chatbot-privacy summary{cursor:pointer}.chatbot-privacy details{margin-top:4px}.cookie-banner{position:fixed;z-index:99990;bottom:20px;left:50%;transform:translate(-50%);width:min(980px,calc(100% - 32px));padding:22px 26px;border:1px solid var(--border);border-radius:16px;background:var(--bg-surface);color:var(--text-primary);box-shadow:0 12px 60px #132f4438;text-align:left}.cookie-banner h2{font-size:1.15rem;line-height:1.35;margin:0 0 8px}.cookie-banner p{font-size:.9rem;line-height:1.55;margin:0 0 10px}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.cookie-actions button{flex:1;padding:10px 16px;border:1px solid var(--brand);border-radius:8px;background:var(--bg-surface);color:var(--brand);font:inherit;font-size:.875rem;font-weight:600}.cookie-actions button:hover{background:var(--bg-base)}.cookie-actions .cookie-save{background:var(--brand);color:var(--text-inverse)}.cookie-dialog{width:min(610px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:26px;border:1px solid var(--border);border-radius:16px;background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-lg);text-align:left;font-size:.9rem;line-height:1.6}.cookie-dialog::backdrop{background:#13293f80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cookie-dialog-heading{display:flex;gap:16px;justify-content:space-between;align-items:center}.cookie-dialog h2{margin:0;font-size:1.6rem}.cookie-dialog-heading button{border:0;color:inherit;background:none;font-size:1.8rem;line-height:1;padding:6px}.cookie-category{display:flex;align-items:center;gap:24px;padding:20px 0;border-block-start:1px solid var(--border)}.cookie-category h3{font-size:1rem;margin:0 0 6px}.cookie-category p{margin:0;color:var(--text-secondary)}.cookie-category input{flex:0 0 22px;width:22px;height:22px;accent-color:var(--brand)}.cookie-required{flex:0 0 auto;font-size:.75rem;border:1px solid var(--border);border-radius:20px;padding:4px 10px}.cookie-dialog .cookie-scope,.cookie-banner .cookie-scope{font-size:.78rem;color:var(--text-secondary)}.custom-cursor-active .cookie-dialog,.custom-cursor-active .cookie-dialog *{cursor:auto!important}.custom-cursor-active .cookie-dialog button,.custom-cursor-active .cookie-dialog a,.custom-cursor-active .cookie-dialog input{cursor:pointer!important}body:has(.cookie-dialog[open]) .custom-cursor-container{visibility:hidden!important}@media(max-width:600px){.cookie-banner{padding:18px;bottom:12px;max-height:calc(100dvh - 24px);overflow:auto}.cookie-actions{gap:8px}.cookie-actions button{padding:10px;min-width:120px}.cookie-dialog{padding:20px}.cookie-category{gap:14px}.cookie-required{max-width:80px;text-align:center;line-height:1.4}}.chatbot-first-notice{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:var(--bg-muted);color:var(--text-secondary);font-size:.75rem;line-height:1.55}.chatbot-first-notice a{text-decoration:underline}details.chatbot-privacy{flex:none;padding:7px 14px}.chatbot-privacy>summary{width:fit-content;font-size:.73rem;line-height:1.6}.chatbot-privacy-options{max-height:150px;overflow-y:auto;padding:9px 0 2px}.chatbot-privacy-options p{margin:8px 0 0}.cookie-dialog{margin:auto;box-sizing:border-box;width:min(540px,calc(100vw - 32px))}.cookie-dialog h2{font-size:1.35rem;letter-spacing:-.035em}.cookie-dialog>p{margin:12px 0 20px}.cookie-category>div{flex:1}.cookie-category input[role=switch]{appearance:none;position:relative;width:42px;height:24px;flex:0 0 42px;border:1px solid var(--border);border-radius:20px;background:var(--bg-muted);cursor:pointer}.cookie-category input[role=switch]:before{content:"";position:absolute;width:16px;height:16px;top:3px;left:3px;border-radius:50%;background:var(--text-secondary);transition:transform .15s}.cookie-category input[role=switch]:checked{background:var(--brand);border-color:var(--brand)}.cookie-category input[role=switch]:checked:before{transform:translate(18px);background:#fff}.cookie-category input:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.cookie-banner{width:min(680px,calc(100% - 32px));padding:20px 24px}@media(prefers-reduced-motion:reduce){.cookie-category input[role=switch]:before{transition:none}}.lanyard-wrapper{position:absolute;top:0;left:0;right:0;width:100%;height:clamp(320px,88vh,900px);z-index:1;pointer-events:none;overflow:hidden}.lanyard-wrapper canvas{display:block;width:100%!important;height:100%!important;pointer-events:auto;touch-action:none}@media(max-width:1024px){.lanyard-wrapper{display:none}}@media(prefers-reduced-motion:reduce){.lanyard-wrapper{pointer-events:none}}.chatbot-button{position:fixed;bottom:32px;right:20px;width:56px;height:56px;background:var(--brand);color:var(--text-inverse);border:none;border-radius:50%;font-size:22px;cursor:pointer;box-shadow:var(--shadow-brand),var(--shadow-md);z-index:1000;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.chatbot-button:hover{background:var(--brand-hover);box-shadow:0 6px 24px #1e3a8a59,var(--shadow-md)}.chat-tooltip{position:fixed;bottom:44px;right:88px;background:var(--bg-surface);color:var(--text-primary);padding:7px 12px;border-radius:var(--radius);font-size:13px;font-weight:500;border:1px solid var(--border);box-shadow:var(--shadow-md);z-index:999;white-space:nowrap}.chatbot-popup{position:fixed;bottom:102px;right:20px;width:min(350px,calc(100vw - 40px));height:min(500px,calc(100vh - 250px));max-width:90vw;max-height:calc(100vh - 250px);background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:1000;display:flex;flex-direction:column;overflow:hidden}.chatbot-header{--chat-avatar-size: 52px;background:var(--brand);color:var(--text-inverse);padding:12px 14px;display:grid;grid-template-columns:var(--chat-avatar-size) minmax(0,1fr) var(--chat-avatar-size);align-items:center;gap:10px;border-radius:var(--radius-md) var(--radius-md) 0 0}.chatbot-avatar{width:var(--chat-avatar-size);height:var(--chat-avatar-size);border-radius:50%;object-fit:cover;background:#f0f0f0}.chatbot-heading{min-width:0;text-align:center}.chatbot-header .chatbot-heading h3{display:block;text-align:center;line-height:1.25}.chatbot-heading>span{display:block;margin-top:4px;line-height:1.4}.chatbot-reset{display:grid;place-items:center;justify-self:end;width:32px;height:32px;padding:0;border:0;border-radius:50%;color:inherit;background:transparent}.chatbot-reset:hover{background:#ffffff1a}.chatbot-reset:disabled{opacity:.4}.chatbot-header .chatbot-reset:focus-visible{outline:2px solid currentColor;outline-offset:2px}.chatbot-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-inverse);letter-spacing:-.02em;display:flex}.chatbot-header span{font-size:12px;opacity:.85;font-weight:400;letter-spacing:.2px;color:var(--text-inverse)}.chatbot-messages{flex:1;padding:10px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;background:var(--bg-base);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.chatbot-messages::-webkit-scrollbar{width:4px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.message{padding:8px 12px;max-width:82%;word-wrap:break-word;font-size:14.5px;line-height:1.45;border-radius:16px}.message.user{background:var(--brand);color:var(--text-inverse);align-self:flex-end;text-align:right;border-radius:16px 16px 4px}.message.bot{background:var(--bg-surface);color:var(--text-primary);align-self:flex-start;text-align:left;border-radius:16px 16px 16px 4px;border:1px solid var(--border-subtle)}.message.bot p{margin:.35em 0;font-size:14.5px}.message.bot p:first-child{margin-top:0}.message.bot p:last-child{margin-bottom:0}.message.bot code{background:var(--brand-muted);color:var(--brand);padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:13px}.message.bot pre{background:var(--bg-elevated);border:1px solid var(--border);padding:8px;border-radius:var(--radius);overflow-x:auto;margin:.4em 0;font-size:13px}.message.bot pre code{background:transparent;color:var(--text-primary);padding:0}.message.bot ul,.message.bot ol{margin:.35em 0;padding-left:1.2em;font-size:14.5px}.message.bot li{margin:.15em 0}.message.bot strong{font-weight:700}.message.bot em{font-style:italic}.message.bot a{color:var(--brand);text-decoration:underline}.message.bot a:hover{color:var(--brand-hover)}.message.bot blockquote{border-left:3px solid var(--accent);padding-left:8px;margin:.35em 0;color:var(--text-secondary);font-size:13.5px}.message.bot h1,.message.bot h2,.message.bot h3,.message.bot h4,.message.bot h5,.message.bot h6{margin:.35em 0;font-size:15px;font-weight:700;color:var(--text-primary)}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:7px;height:7px;background:var(--brand);border-radius:50%;animation:bounce 1.3s infinite ease-in-out both;opacity:.7}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.typing-indicator span:nth-child(3){animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.4}40%{transform:scale(1);opacity:1}}.message.system{background:var(--warning-muted);color:var(--warning);align-self:center;text-align:center;border:1px solid rgba(217,119,6,.2);font-weight:600;font-size:13px;border-radius:var(--radius)}.chatbot-input{margin:8px;border:1px solid var(--border);border-radius:var(--radius);display:flex;align-items:flex-end;background:var(--bg-surface);transition:border-color var(--transition),box-shadow var(--transition)}.chatbot-input:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-muted)}.chatbot-input input,.chatbot-input textarea{flex:1;padding:8px 10px;border:none;border-radius:var(--radius);outline:none;word-wrap:break-word;font-size:15px;line-height:1.4;box-sizing:border-box;background:transparent;color:var(--text-primary);box-shadow:none}.chatbot-input textarea{font-family:var(--font-sans);min-width:0;max-height:200px;overflow-y:auto;resize:none}.chatbot-input textarea:focus,.chatbot-input textarea:focus-visible{box-shadow:none;outline:none}.chatbot-input button{padding:0;background:transparent;border:none;cursor:pointer;margin-bottom:5px;margin-right:8px;border-radius:0}.chatbot-input button:not(:disabled) .send-icon{stroke:var(--brand)}.chatbot-input button:disabled .send-icon{stroke:var(--text-muted);cursor:not-allowed}.chatbot-input button:not(:disabled) .mic-icon{stroke:var(--brand)}.chatbot-input button:disabled .mic-icon{stroke:var(--text-muted);cursor:not-allowed}.send-icon,.mic-icon{padding-right:2px;padding-top:1px}@media(max-width:1075px){.chat-tooltip{display:none}}@media(max-width:768px){.chatbot-popup{width:340px;max-width:calc(100vw - 40px);height:460px;max-height:calc(100vh - 240px);right:20px;bottom:102px}.chatbot-header h3{font-size:15px}.chatbot-header span{font-size:11px}.message{font-size:14px;max-width:87%}.message.bot p,.message.bot ul,.message.bot ol,.message.bot a,.message.bot strong,.message.bot em{font-size:14px}}@media(max-width:480px){.chatbot-button{width:50px;height:50px;font-size:20px;bottom:32px;right:14px}.chatbot-popup{width:320px;max-width:calc(100vw - 20px);height:430px;max-height:calc(100vh - 200px);right:10px;bottom:100px;border-radius:var(--radius)}.chatbot-header{--chat-avatar-size: 44px;padding:10px 12px}.chatbot-header h3{font-size:14px}.chatbot-header span{font-size:10px}.chatbot-messages{padding:8px;gap:6px}.message{font-size:13px;padding:7px 10px;max-width:90%}.message.bot p,.message.bot ul,.message.bot ol,.message.bot a,.message.bot strong,.message.bot em{font-size:13px}.message.bot h1,.message.bot h2,.message.bot h3,.message.bot h4,.message.bot h5,.message.bot h6{font-size:14px}.message.bot code,.message.bot pre{font-size:12px}}@media(max-width:360px){.chatbot-popup{width:calc(100vw - 10px);height:400px;right:5px}.chatbot-header h3{font-size:13px}.chatbot-header span{font-size:10px}.message,.message.bot p,.message.bot ul,.message.bot ol,.message.bot a,.message.bot strong,.message.bot em{font-size:12px}}@media(max-height:600px){.chatbot-popup{height:480px;max-height:calc(100vh - 140px)}}.transcribing{animation:transcription-pulse 1.5s infinite;color:var(--brand)}@keyframes transcription-pulse{0%,to{opacity:1}50%{opacity:.45}}.recording-btn{animation:recording-pulse 2s infinite}@keyframes recording-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}.permission-popup{position:absolute;bottom:60px;right:-20px;background:var(--error);color:var(--text-inverse);padding:9px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;font-family:var(--font-sans);box-shadow:0 4px 16px #dc26264d;z-index:1000;max-width:200px;text-align:center;animation:fadeIn .25s ease-in-out}.permission-popup:after{content:"";position:absolute;bottom:-7px;right:32px;border-width:7px 7px 0;border-style:solid;border-color:var(--error) transparent transparent transparent}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}button.footer-back-top.scroll-up-btn{background:var(--bg-surface);color:var(--brand);border:1.5px solid var(--brand-border);box-shadow:var(--shadow-md);position:fixed;bottom:100px;right:29px;z-index:999;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease,background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}button.footer-back-top.scroll-up-btn.visible{opacity:1;pointer-events:auto;transform:translateY(0)}button.footer-back-top.scroll-up-btn:hover{background:var(--brand);color:var(--text-inverse);border-color:var(--brand);transform:translateY(-3px);box-shadow:var(--shadow-brand)}@media(max-width:480px){button.footer-back-top.scroll-up-btn{bottom:94px;right:22px}}.footer{background:var(--bg-surface);border-top:1px solid var(--border);padding:3rem 0 2.5rem;margin-top:4rem;width:100%;opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.footer.footer-visible{opacity:1;transform:translateY(0)}.footer-content{max-width:1200px;margin:0 auto;padding:0 3rem;text-align:center}.footer-top{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem;padding:0 1rem}.footer-brand{font-family:Playfair Display,Garamond,Baskerville,Georgia,serif;font-size:1.5rem;font-weight:800;color:var(--brand);letter-spacing:-.04em;text-transform:lowercase;display:inline-block;margin-bottom:.4rem;position:relative}.footer-brand:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background:var(--accent);border-radius:99px;transform:scaleX(0);transform-origin:left;transition:transform var(--t-slow) var(--ease-spring)}.footer-brand:hover:after{transform:scaleX(1)}.footer-tagline{color:var(--text-muted);font-size:.875rem;line-height:1.6;margin:0;font-weight:400}.footer-social{display:flex;gap:.4rem;align-items:center;justify-content:center;flex-wrap:wrap}.footer-social-link{color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition);padding:.45rem .75rem;display:flex;align-items:center;gap:.4rem;border-radius:var(--radius);border:1px solid transparent}.footer-social-link:hover{color:var(--brand);background:var(--brand-muted);border-color:var(--brand-border);transform:translateY(-1px)}.footer-cta-link{background:var(--brand);color:var(--text-inverse)!important;border-color:var(--brand)!important;font-weight:600}.footer-cta-link:hover{background:var(--brand-hover)!important;border-color:var(--brand-hover)!important;color:var(--text-inverse)!important;box-shadow:var(--shadow-brand);transform:translateY(-2px)}.footer-social-icon{width:16px;height:16px;object-fit:contain;transition:transform var(--transition);opacity:.8}html.dark img.footer-social-icon{filter:brightness(0) invert(1)}.footer-social-link:hover .footer-social-icon{transform:scale(1.15);opacity:1}.footer-social-divider{color:var(--border);font-size:1rem;-webkit-user-select:none;user-select:none}.footer-back-top{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border);border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition);flex-shrink:0;padding:0}.footer-back-top:hover{background:var(--brand);color:var(--text-inverse);border-color:var(--brand);transform:translateY(-3px);box-shadow:var(--shadow-brand)}.footer-divider{height:1px;background:var(--border);margin:1.5rem 0 1.25rem}.footer-copyright{color:var(--text-muted);font-size:.82rem;margin:0;font-weight:400}.footer-recaptcha{color:var(--text-muted);font-size:.75rem;margin:.4rem 0 0;font-weight:400}.footer-recaptcha a{color:var(--brand);text-decoration:none;transition:color var(--transition)}.footer-recaptcha a:hover{color:var(--brand-hover);text-decoration:underline}@media(max-width:1075px){.footer{padding:2.5rem 0 5rem}.footer-content{padding:0 1.5rem}.footer-top{gap:1.25rem}.footer-social{gap:.3rem}.footer-social-link{font-size:.82rem}.footer-social-icon{width:14px;height:14px}}@media(max-width:768px){.footer{padding:2rem 0 5rem;margin-top:3rem}.footer-content{padding:0 1.25rem;text-align:center}.footer-top{flex-direction:column;align-items:center;gap:1.25rem}.footer-logo{width:100%;text-align:center}.footer-brand{font-size:1.3rem}.footer-tagline{font-size:.85rem;max-width:100%}.footer-social{flex-wrap:wrap;gap:.4rem;justify-content:center}.footer-copyright{font-size:.78rem;text-align:center}.footer-recaptcha{font-size:.7rem;text-align:center}.footer-back-top{width:34px;height:34px}}@media(max-width:480px){.footer{padding:1.5rem 0 4.5rem}.footer-content{padding:0 1rem}.footer-social{width:100%;flex-direction:column;align-items:center}.footer-social-link{justify-content:center}.footer-divider{margin:1.25rem 0 1rem}.footer-social-divider{display:none}}.inf-wrapper{width:100%;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;box-sizing:border-box;background:var(--bg-surface);height:96px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:flex-start;position:relative;z-index:1}.inf-wrapper:before,.inf-wrapper:after{content:"";position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}.inf-wrapper:before{left:0;background:linear-gradient(to right,var(--bg-surface) 20%,transparent)}.inf-wrapper:after{right:0;background:linear-gradient(to left,var(--bg-surface) 20%,transparent)}.inf-track{display:flex;flex-shrink:0;width:max-content;gap:4rem;height:96px;will-change:transform;align-items:center;transition:none}.inf-item{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;height:70px;box-sizing:border-box;flex-shrink:0;cursor:default}.inf-item img{height:38px;max-width:100%;object-fit:contain;display:block;filter:grayscale(40%) opacity(.85);transition:filter .4s ease,transform .4s ease,opacity .4s ease}.inf-item span{height:70px;position:absolute;inset:0;display:flex;justify-content:center;align-items:center;opacity:0;transition:opacity .35s ease,transform .35s ease;font-weight:700;color:var(--brand);white-space:wrap;font-size:.95rem;font-family:var(--font-sans);letter-spacing:-.02em;padding:0 .5rem;text-align:center;transform:translateY(6px)}.inf-item:hover img{filter:grayscale(100%) opacity(0);transform:scale(.8)}.inf-item:hover span{opacity:1;transform:translateY(0)}@media(max-width:1024px){.inf-wrapper{height:84px}.inf-track{gap:3rem;height:84px}.inf-item{height:60px}.inf-item img{height:34px}.inf-item span{height:60px;font-size:.88rem}}@media(max-width:768px){.inf-wrapper{height:74px}.inf-track{gap:2.25rem;height:74px}.inf-item{height:52px}.inf-item img{height:28px}.inf-item span{height:52px;font-size:.82rem}.inf-wrapper:before,.inf-wrapper:after{width:50px}}@media(max-width:480px){.inf-wrapper{height:64px}.inf-track{gap:1.75rem;height:64px}.inf-item{height:44px}.inf-item img{height:24px}.inf-item span{height:44px;font-size:.78rem}.inf-wrapper:before,.inf-wrapper:after{width:32px}}.inicio{margin:1.5rem auto;margin-top:86px;padding:3.25rem 3.5rem;max-width:1060px;width:calc(100% - 3rem);position:relative;font-family:var(--font-sans);background:var(--bg-surface-glass);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease-out),transform .75s var(--ease-out),box-shadow var(--t-slow) var(--ease);z-index:3}.inicio:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.inicio.hero-visible{opacity:1;transform:translateY(0)}.inicio:hover{box-shadow:var(--shadow-lg)}.hero-eyebrow{display:inline-flex;align-items:center;gap:.55rem;background:var(--brand-muted);border:1px solid var(--brand-border);border-radius:99px;padding:.46rem 1rem;margin-bottom:1.4rem;font-size:.75rem;font-weight:600;color:var(--brand);letter-spacing:.05em;font-family:var(--font-mono);line-height:1;animation:eyebrowPop .55s var(--ease-spring) .2s both}.hero-eyebrow-dot{width:7px;height:7px;background:var(--success);border-radius:50%;animation:pulseDot 2.4s ease infinite;flex-shrink:0;position:relative;top:.5px}.hero-eyebrow-text{display:inline-block;line-height:1;transform:translateY(1px)}.hero-title{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.06;margin-bottom:0;font-weight:900;color:var(--text-primary);letter-spacing:-3px;animation:fadeUp .7s var(--ease-out) .35s both}.highlight-text{color:var(--brand-mid);display:inline;font-size:2rem}.highlight-text .text-type{display:inline;max-width:100%}.highlight-text .text-type__content{text-decoration-line:underline;text-decoration-color:var(--accent);text-decoration-thickness:.22em;text-underline-offset:.06em;text-decoration-skip-ink:none}.hero-description{margin-top:2rem;max-width:540px;padding-left:1.2rem;border-left:3px solid var(--accent);animation:fadeUp .7s var(--ease-out) .5s both}.hero-description p{font-size:clamp(.8rem,1.6vw,1rem);line-height:1.6;color:var(--text-secondary);margin-bottom:.6rem;word-break:break-word;text-align:justify;text-justify:inter-word;-webkit-text-size-adjust:100%;text-align-last:justify}.hero-description p:last-child{margin-bottom:0}.highlight-desc-text{color:var(--brand-mid);font-weight:800;text-decoration-line:underline;text-decoration-color:var(--accent);text-decoration-thickness:.22em;text-underline-offset:.06em;text-decoration-skip-ink:none}.hero-cta{display:flex;gap:.8rem;margin-top:2.25rem;flex-wrap:wrap;animation:fadeUp .7s var(--ease-out) .65s both}.hero-btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.5rem;background:var(--brand);color:var(--text-inverse);border:none;border-radius:var(--radius);font-weight:700;font-size:.9rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t) var(--ease);position:relative;overflow:hidden}.hero-btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.18) 50%,transparent 75%);transform:translate(-100%);transition:transform .55s ease}.hero-btn-primary:hover:after{transform:translate(100%)}.hero-btn-primary:hover{background:var(--brand-hover);box-shadow:var(--shadow-brand);transform:translateY(-2px)}.hero-btn-primary:active{transform:translateY(0);box-shadow:none}.hero-btn-arrow{display:inline-block;transition:transform var(--t) var(--ease)}.hero-btn-primary:hover .hero-btn-arrow{transform:translateY(3px)}.hero-btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.5rem;background:transparent;color:var(--brand);border:1.5px solid var(--brand-border);border-radius:var(--radius);font-weight:600;font-size:.9rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--t) var(--ease)}.hero-btn-secondary:hover{background:var(--brand-muted);border-color:var(--brand-mid);transform:translateY(-1px)}.hero-visual{position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:-1;pointer-events:none;animation:fadeIn 1s var(--ease-out) .6s both}.blob-shape{bottom:-80px;right:-60px;width:340px;height:340px;background:linear-gradient(135deg,var(--bg-elevated) 0%,var(--blob-color-1) 50%,var(--blob-color-2) 100%);border-radius:60% 40% 30% 70%/60% 30% 70% 40%;animation:blobMorph 10s ease-in-out infinite,floatY 7s ease-in-out infinite;position:relative}.blob-shape:before{content:"";position:absolute;top:12%;right:12%;width:90px;height:90px;background:var(--accent);border-radius:50%;opacity:var(--blob-opacity-1);filter:blur(38px)}.blob-shape:after{content:"";position:absolute;bottom:12%;left:12%;width:65px;height:65px;background:var(--brand-mid);border-radius:50%;opacity:var(--blob-opacity-2);filter:blur(28px)}@media(min-width:1025px){.inicio{--lanyard-column: 450px;margin-left:max(5.5rem,calc((100vw - 1060px - var(--lanyard-column)) / 2));margin-right:auto;width:calc(100% - 3rem - var(--lanyard-column));padding:3.25rem 2.25rem}.hero-title{font-size:clamp(2rem,4.2vw,3.3rem);min-height:139px!important;letter-spacing:-2px}.hero-visual{position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:-1;pointer-events:none;animation:fadeIn 1s var(--ease-out) .6s both}}@media(max-width:1024px){.inicio{padding:2.5rem;max-width:unset;width:calc(100% - 2rem)}.hero-title{min-height:15px!important;letter-spacing:-2px}}@media(max-width:768px){.inicio{margin-top:78px;padding:2rem 1.5rem}.hero-title{min-height:115px!important;letter-spacing:-2px}.hero-description{max-width:100%}}@media(max-width:480px){.inicio{margin:.5rem;margin-top:72px;padding:1.6rem 1.2rem;border-radius:var(--radius-lg)}.hero-eyebrow{font-size:.6rem}.hero-cta{flex-direction:column}.hero-btn-primary,.hero-btn-secondary{font-size:.8rem;width:100%;justify-content:center}}.text-type{display:inline-block;white-space:pre-wrap}.text-type__cursor{margin-left:.15rem;display:inline-block;opacity:1;font-weight:500;animation:textTypeCursorBlink .8s ease-in-out infinite alternate}.text-type__cursor--hidden{display:none}@keyframes textTypeCursorBlink{0%{opacity:1}to{opacity:0}}.about-timeline-container{padding:2.5rem 1.5rem 0;background-color:transparent;display:flex;justify-content:center;font-family:var(--font-sans);width:100%;opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.about-timeline-container.about-visible{opacity:1;transform:translateY(0)}.about-content{margin:1.5rem auto;padding:3.25rem 3.5rem;max-width:1960px;width:calc(100% - 3rem);position:relative;font-family:var(--font-sans);background:var(--bg-surface-glass);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;gap:1.25rem;overflow:hidden;transition:box-shadow var(--t-slow) var(--ease);text-align:center}.about-content:hover{box-shadow:var(--shadow-lg)}.about-eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);background:var(--brand-muted);padding:.28rem .8rem;border-radius:99px;border:1px solid var(--brand-border);transition:background var(--transition),box-shadow var(--transition);opacity:0;transform:scale(.85)}.about-timeline-container.about-visible .about-eyebrow{animation:eyebrowPop .4s cubic-bezier(.34,1.56,.64,1) .1s both}@keyframes eyebrowPop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.about-title{font-size:1.9rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.04em}.about-title .highlight{color:var(--brand-mid);position:relative;display:inline-block}.about-title .highlight:after{content:"";position:absolute;width:100%;height:4px;bottom:1px;left:0;background:var(--accent);opacity:0;z-index:-1;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .5s ease .4s,opacity .5s ease .4s}.about-timeline-container.about-visible .about-title .highlight:after{transform:scaleX(1);opacity:1}.about-description{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin:0;max-width:620px}.about-profile-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3.5rem;width:100%;text-align:left;margin-bottom:2.2rem;margin-top:.5rem;border-bottom:1px solid var(--border-subtle);padding-bottom:2.2rem}.about-bio-column{display:flex;flex-direction:column;gap:1.2rem}.about-bio-text{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0;text-align:justify;text-justify:inter-word}.about-bio-text .bio-strong,.pillar-desc .bio-strong{color:var(--text-primary);font-weight:600}.about-pillars-column{display:flex;flex-direction:column;gap:1.2rem}.pillars-section-title{font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin:0 0 .1rem}.pillars-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.35rem}.pillar-list-item{position:relative;padding-left:1.15rem}.pillar-list-item:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:2px;background:var(--border);transition:background var(--t)}.pillar-list-item:nth-child(1):before{background:var(--brand-mid)}.pillar-list-item:nth-child(2):before{background:var(--accent)}.pillar-list-item:nth-child(3):before{background:var(--brand)}.pillar-label{display:block;font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:.2rem}.pillar-desc{font-size:.84rem;line-height:1.5;color:var(--text-secondary);margin:0;text-align:justify;text-justify:inter-word}@media(max-width:1024px){.about-content{padding:2.5rem;max-width:unset;width:calc(100% - 2rem)}}@media(max-width:800px){.about-profile-grid{grid-template-columns:1fr;gap:2.2rem;margin-top:1.8rem;padding-top:1.8rem}.about-title{font-size:1.7rem}.about-description{font-size:.9rem}}@media(max-width:768px){.about-content{padding:2rem 1.5rem}.about-timeline-container{padding:2rem 1rem 0}}@media(max-width:480px){.about-content{margin:.5rem auto;padding:1.6rem 1.2rem;border-radius:var(--radius-lg);width:calc(100% - 1rem)}.about-bio-text{font-size:.9rem;line-height:1.7}.pillar-label{font-size:.9rem}.pillar-desc{font-size:.8rem}}.about-easter-egg-bug{position:absolute;bottom:5px;right:5px;z-index:10;display:inline-grid;place-items:center;width:30px;height:30px;padding:0;background:transparent;border:none;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;opacity:.3;transition:opacity .25s var(--ease),transform .2s var(--ease-spring)}.about-easter-egg-bug svg{grid-area:1 / 1;width:22px;height:22px;overflow:visible;filter:drop-shadow(1px 0 0 var(--bug-outline)) drop-shadow(-1px 0 0 var(--bug-outline)) drop-shadow(0 1px 0 var(--bug-outline)) drop-shadow(0 -1px 0 var(--bug-outline)) drop-shadow(0 2px 3px rgba(15,23,42,.25));transition:filter .2s var(--ease)}.about-easter-egg-bug:hover{opacity:1;transform:scale(1.25) rotate(-8deg)}.about-easter-egg-bug:hover svg{filter:drop-shadow(1px 0 0 var(--bug-outline)) drop-shadow(-1px 0 0 var(--bug-outline)) drop-shadow(0 1px 0 var(--bug-outline)) drop-shadow(0 -1px 0 var(--bug-outline)) drop-shadow(0 0 7px var(--bug-glow))}.about-easter-egg-bug:focus-visible{opacity:1;outline:2px solid var(--brand-mid);outline-offset:2px;border-radius:var(--radius-xs)}.about-easter-egg-bug .j1-legs--l,.about-easter-egg-bug .j1-legs--r,.about-easter-egg-bug .j1-antennae{animation-play-state:paused}.about-easter-egg-bug:hover .j1-legs--l,.about-easter-egg-bug:hover .j1-legs--r,.about-easter-egg-bug:hover .j1-antennae{animation-play-state:running}.about-easter-egg-reticle{grid-area:1 / 1;position:relative;width:30px;height:30px;opacity:0;transform:scale(1.25);transition:opacity .15s var(--ease),transform .15s var(--ease-spring)}.about-easter-egg-bug:hover .about-easter-egg-reticle,.about-easter-egg-bug:focus-visible .about-easter-egg-reticle{opacity:1;transform:scale(1)}.about-easter-egg-reticle i{position:absolute;width:7px;height:7px;border:2px solid var(--accent)}.about-easter-egg-reticle i:nth-child(1){top:0;left:0;border-right:0;border-bottom:0}.about-easter-egg-reticle i:nth-child(2){top:0;right:0;border-left:0;border-bottom:0}.about-easter-egg-reticle i:nth-child(3){bottom:0;left:0;border-right:0;border-top:0}.about-easter-egg-reticle i:nth-child(4){bottom:0;right:0;border-left:0;border-top:0}.timeline-container{display:grid;grid-template-columns:160px 1fr;background:var(--bg-surface);border-radius:var(--radius-lg);padding:2rem;font-family:var(--font-sans);overflow:hidden;position:relative;border:1px solid var(--border);box-shadow:var(--shadow-md);transition:box-shadow var(--t-slow) var(--ease),opacity .65s var(--ease),transform .65s var(--ease);opacity:0;transform:translateY(28px)}.timeline-container.reveal-visible{opacity:1;transform:translateY(0)}.timeline-container:hover{box-shadow:var(--shadow-lg)}.timeline-sidebar{display:flex;flex-direction:column;padding-top:50px;z-index:2;background:var(--bg-surface);border-right:1px solid var(--border)}.timeline-category{height:68px;display:flex;align-items:center;padding-right:16px;font-weight:600;color:var(--text-primary);font-size:.875rem;letter-spacing:-.01em;text-transform:capitalize;padding-left:8px;border-radius:var(--radius-sm) 0 0 var(--radius-sm);transition:background var(--transition),color var(--transition)}.timeline-category:nth-child(2n){background:var(--bg-base)}.timeline-content{position:relative;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.timeline-content::-webkit-scrollbar{height:5px}.timeline-content::-webkit-scrollbar-track{background:transparent}.timeline-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.timeline-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.timeline-header{height:50px;position:relative;border-bottom:1px solid var(--border);min-width:1800px}.timeline-year-marker{position:absolute;top:50px;bottom:-9999px;border-left:1px dashed var(--border);pointer-events:none;z-index:1}.timeline-year-label{position:absolute;top:-30px;left:0;transform:translate(-50%);font-weight:600;color:var(--text-muted);font-size:.75rem;font-family:var(--font-mono);background:var(--bg-surface);padding:2px 6px;border-radius:var(--radius-sm);letter-spacing:.04em}.timeline-year-marker:first-child .timeline-year-label{transform:translate(0)}.timeline-rows-container{display:flex;flex-direction:column;min-width:1800px;position:relative}.timeline-row-guide{height:68px;width:100%;position:relative;transition:background var(--transition)}.timeline-row-guide:nth-child(2n){background:var(--bg-base)}.timeline-item{box-sizing:border-box;position:absolute;height:40px;top:14px;border-radius:var(--radius);padding:0 14px;display:flex;flex-direction:column;justify-content:center;font-size:.83rem;overflow:hidden;white-space:nowrap;cursor:pointer;z-index:10;border:1px solid transparent;opacity:0;transform:scaleX(.4);transform-origin:left center;transition:filter .2s ease,box-shadow .2s ease,transform .2s ease}.timeline-container.reveal-visible .timeline-item{animation:scaleXIn .55s cubic-bezier(.34,1.56,.64,1) both}@keyframes scaleXIn{0%{opacity:0;transform:scaleX(.4)}to{opacity:1;transform:scaleX(1)}}.timeline-item.item-variant-0,.timeline-item.item-variant-2{background:var(--brand);color:var(--text-inverse);border-color:var(--brand-hover)}.timeline-item.item-variant-1,.timeline-item.item-variant-3{background:var(--accent);color:var(--text-primary);border-color:var(--accent-dark)}.timeline-item:hover{filter:brightness(1.1);box-shadow:0 4px 14px #0000002e;transform:translateY(-2px) scale(1.01);z-index:20}.timeline-item.item-variant-1:hover,.timeline-item.item-variant-3:hover{filter:brightness(1.06);box-shadow:0 4px 14px #eab3084d}.timeline-item-title{font-weight:600;letter-spacing:.01em;text-overflow:ellipsis;overflow:hidden}.timeline-item-sub{font-size:.68rem;opacity:.82}@media(max-width:768px){.timeline-container{grid-template-columns:90px 1fr;padding:1.25rem;width:96%}.timeline-category{font-size:.72rem;padding-right:8px}.timeline-item{font-size:.75rem;padding:0 10px}}@media(max-width:480px){.timeline-container{grid-template-columns:75px 1fr;padding:1rem;width:98%}.timeline-category{font-size:.65rem;padding-right:6px}.timeline-item{font-size:.65rem;padding:0 6px}}.timeline-tooltip{position:fixed;z-index:9999;max-width:280px;min-width:160px;display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--bg-surface, #fff);color:var(--text-primary);border:2.5px solid var(--text-primary);border-radius:18px;box-shadow:4px 5px #0000002e;pointer-events:none;font-family:var(--font-sans);opacity:0;transform:scale(.7);transform-origin:var(--tail-x, 50%) bottom;transition:opacity .16s ease,transform .22s cubic-bezier(.34,1.56,.64,1)}.timeline-tooltip.placement-bottom{transform-origin:var(--tail-x, 50%) top}.timeline-tooltip.is-visible{opacity:1;transform:scale(1)}.timeline-tooltip:before,.timeline-tooltip:after{content:"";position:absolute;left:var(--tail-x, 50%);width:0;height:0;border-style:solid}.timeline-tooltip.placement-top:before{bottom:-18px;transform:translate(-50%);border-width:18px 13px 0 13px;border-color:var(--text-primary) transparent transparent transparent}.timeline-tooltip.placement-top:after{bottom:-13px;transform:translate(-50%);border-width:14px 9px 0 9px;border-color:var(--bg-surface, #fff) transparent transparent transparent}.timeline-tooltip.placement-bottom:before{top:-18px;transform:translate(-50%);border-width:0 13px 18px 13px;border-color:transparent transparent var(--text-primary) transparent}.timeline-tooltip.placement-bottom:after{top:-13px;transform:translate(-50%);border-width:0 9px 14px 9px;border-color:transparent transparent var(--bg-surface, #fff) transparent}.timeline-tooltip-title{font-weight:800;font-size:.92rem;line-height:1.25;letter-spacing:-.01em;color:var(--brand)}.timeline-tooltip-dates{font-size:.72rem;font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.02em}.timeline-tooltip-desc{font-size:.78rem;line-height:1.4;color:var(--text-primary);opacity:.92}.timeline-tooltip-hint{margin-top:2px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-dark, var(--accent))}@media(max-width:480px){.timeline-tooltip{max-width:220px;padding:11px 13px}.timeline-tooltip-title{font-size:.84rem}}.timeline-item{background-image:linear-gradient(110deg,#ffffff1f,transparent 60%);box-shadow:inset 0 1px #ffffff40,0 2px 5px #09152912}.timeline-item.item-variant-0,.timeline-item.item-variant-2{background-image:linear-gradient(110deg,#ffffff1f,transparent 60%)}.timeline-item.item-variant-1,.timeline-item.item-variant-3{background-image:linear-gradient(110deg,#ffffff30,transparent 60%)}.timeline-category:before{content:"";flex:none;width:5px;height:5px;margin-right:9px;border-radius:50%;background:var(--accent)}.timeline-year-label{color:var(--brand)}.popup-timeline-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000;animation:timelineFadeIn .22s ease-in-out}@keyframes timelineFadeIn{0%{opacity:0}to{opacity:1}}.popup-timeline-container{text-align:left;position:relative;background:var(--bg-surface);border-radius:var(--radius-lg);max-width:720px;width:min(92%,720px);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:timelineSlideUp .26s ease-out}@keyframes timelineSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.popup-timeline-header{flex-shrink:0;display:flex;align-items:center;gap:1rem;padding:.7rem 1rem;background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.popup-timeline-body{overflow-y:auto;overflow-x:hidden;flex-grow:1;padding:1.5rem 2rem 2rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.popup-timeline-body::-webkit-scrollbar{width:6px}.popup-timeline-body::-webkit-scrollbar-track{background:transparent}.popup-timeline-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.popup-timeline-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(max-width:768px){.popup-timeline-container{width:92%}.popup-timeline-body{padding:1rem 1.25rem 1.25rem}.popup-timeline-title{font-size:1.2rem}.popup-timeline-header{padding:.6rem .75rem}}.popup-timeline-desc-container{margin-top:1rem}.popup-timeline-desc-text{margin-top:.5rem;line-height:1.65;color:var(--text-secondary);text-align:justify;padding-bottom:.75rem;font-size:.92rem}.popup-timeline-desc-text p{margin:0 0 .75rem;line-height:1.65}.popup-timeline-desc-text h3{margin:1.5rem 0 .65rem;color:var(--text-primary);font:600 1.05rem/1.4 var(--font-sans);text-align:left}.popup-timeline-desc-text strong{color:var(--text-primary)}.popup-timeline-desc-text p:last-child{margin-bottom:0}.popup-timeline-desc-text ul,.popup-timeline-desc-text ol{margin:0 0 .75rem 1.25rem;padding:0}.popup-timeline-desc-text li{margin-bottom:.25rem}.popup-timeline-desc-text a{color:var(--brand);text-decoration:underline}.popup-timeline-desc-text a:hover{color:var(--brand-hover)}.popup-timeline-title{margin-bottom:1.5rem;font-size:1.6rem;font-weight:800;color:var(--text-primary);letter-spacing:-.03em;text-align:left;text-decoration:none}.popup-timeline-title span{border-bottom:3px solid var(--accent);padding-bottom:0rem}.popup-timeline-meta{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:.25rem;color:var(--text-muted)}.popup-timeline-meta svg{flex-shrink:0;color:var(--text-muted)}.popup-timeline-range{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.85rem;letter-spacing:.01em}.popup-timeline-range-date{color:var(--text-secondary);font-weight:500;font-variant-numeric:tabular-nums}.popup-timeline-range-sep{color:var(--text-muted)}.popup-timeline-range-current{color:var(--accent-dark);font-weight:600}.popup-timeline-container strong{color:var(--brand);font-weight:700}.popup-timeline-container{width:min(94%,860px);max-width:860px;border-radius:20px}.popup-timeline-header{background:color-mix(in srgb,var(--brand) 5%,var(--bg-surface))}.popup-timeline-body{padding:clamp(24px,4vw,48px);background:radial-gradient(ellipse at top right,color-mix(in srgb,var(--accent) 7%,transparent),transparent 48%)}.popup-timeline-eyebrow{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px;color:var(--text-muted);font:500 .73rem/1.6 var(--font-mono)}.popup-timeline-eyebrow>span{color:var(--accent)}.popup-timeline-title{margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.12;font-weight:500;letter-spacing:-.035em}.popup-timeline-title span{border:0}.popup-timeline-meta{padding:7px 12px;border:1px solid var(--border);border-radius:99px;background:var(--bg-surface)}.popup-timeline-range{flex-wrap:wrap;font-size:.75rem}.popup-timeline-highlight{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin:28px 0;padding:22px 24px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 14px 14px 0;background:color-mix(in srgb,var(--brand) 4%,var(--bg-surface))}.popup-timeline-value{color:var(--brand);font:500 clamp(1.65rem,4vw,2.5rem)/1.15 Georgia,"Times New Roman",serif;letter-spacing:-.03em}.popup-timeline-highlight>div{flex:1 1 220px}.popup-timeline-highlight p{margin:0 0 5px;color:var(--text-primary);font-size:.95rem;line-height:1.5}.popup-timeline-highlight div>span{color:var(--text-muted);font-size:.78rem}.popup-timeline-desc-text{text-align:left;font-size:.97rem;line-height:1.8}.popup-timeline-desc-text p{line-height:1.8;margin-bottom:1rem}.popup-timeline-desc-text h3{display:flex;align-items:center;gap:10px;margin-top:2rem;font-size:1.08rem}.popup-timeline-desc-text h3:before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent)}.popup-timeline-desc-text li{padding-left:5px;margin-bottom:.8rem;line-height:1.75}.popup-timeline-desc-text li::marker{color:var(--accent)}@media(prefers-reduced-motion:reduce){.popup-timeline-overlay,.popup-timeline-container{animation:none}}:root{--bug-shell: #1e3a8a;--bug-shell-dark: #152a63;--bug-accent: #F59E0B;--bug-line: rgba(255, 255, 255, .5);--bug-outline: #ffffff;--bug-glow: rgba(30, 58, 138, .55)}html.dark{--bug-shell: #3b82f6;--bug-shell-dark: #1e3a8a;--bug-outline: #F8FAFC;--bug-glow: rgba(245, 158, 11, .6)}.j1-shell{fill:var(--bug-shell)}.j1-shell-dark{fill:var(--bug-shell-dark)}.j1-accent{fill:var(--bug-accent)}.j1-eye{fill:var(--bug-outline)}.j1-leg,.j1-antennae path{fill:none;stroke:var(--bug-shell-dark);stroke-width:3.2;stroke-linecap:round}.j1-leg--thin{stroke-width:2.4}.j1-seam{fill:none;stroke:var(--bug-line);stroke-width:2;stroke-linecap:round}.j1-accent-line{fill:none;stroke:var(--bug-accent);stroke-width:2.6;stroke-linecap:round}.j1-wing{fill:var(--bug-outline);fill-opacity:.75;stroke:var(--bug-shell-dark);stroke-width:1.6}.j1-wing-solid{fill:var(--bug-shell);fill-opacity:.9;stroke:var(--bug-shell-dark);stroke-width:2;stroke-linejoin:round}.j1-legs,.j1-antennae,.j1-wings{transform-box:view-box;transform-origin:32px 34px}.j1-legs--l{animation:j1LegsL .3s var(--ease) infinite alternate}.j1-legs--r{animation:j1LegsR .3s var(--ease) infinite alternate}.j1-antennae{transform-origin:32px 14px;animation:j1Antennae .9s var(--ease) infinite alternate}.j1-wing--l,.j1-wing--r{transform-box:view-box;transform-origin:32px 28px;animation:j1Wings .14s linear infinite alternate}@keyframes j1LegsL{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes j1LegsR{0%{transform:rotate(4deg)}to{transform:rotate(-4deg)}}@keyframes j1Antennae{0%{transform:rotate(-5deg)}to{transform:rotate(5deg)}}@keyframes j1Wings{0%{transform:scaleY(.55)}to{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.j1-legs--l,.j1-legs--r,.j1-antennae,.j1-wing--l,.j1-wing--r{animation:none!important}}.custom-cursor-container{position:fixed;left:0;top:0;pointer-events:none;z-index:999999;transform:translate3d(var(--x, -100px),var(--y, -100px),0);will-change:transform;display:block}.custom-cursor-wrapper{position:relative;width:24px;height:24px;display:block;transition:transform .1s cubic-bezier(.25,1,.5,1),scale .15s cubic-bezier(.34,1.56,.64,1)}.custom-cursor-wrapper svg{display:block;filter:drop-shadow(0 2px 4px rgba(30,58,138,.25)) drop-shadow(0 4px 12px rgba(15,23,42,.15))}.custom-cursor-container.type-default .custom-cursor-wrapper{transform:translate3d(-3px,-3px,0) rotate(-4deg)}.custom-cursor-container.type-pointer .custom-cursor-wrapper{transform:translate3d(-8px,-2px,0);scale:1.05}.custom-cursor-container.type-grab .custom-cursor-wrapper{transform:translate3d(-12px,-12px,0);scale:1.1}.custom-cursor-container.type-grabbing .custom-cursor-wrapper{transform:translate3d(-12px,-12px,0);scale:.95}.custom-cursor-container:is(.type-ew-resize,.type-ns-resize,.type-nwse-resize,.type-nesw-resize) .custom-cursor-wrapper{transform:translate3d(-12px,-12px,0)}@media(pointer:fine){.custom-cursor-active,.custom-cursor-active *{cursor:none!important}}.p3-projects.p3-section,.p3-catalog.p3-section{--p3-project-gutter: clamp(20px, 4vw, 80px);width:calc(100% - var(--p3-project-gutter) - var(--p3-project-gutter));max-width:1640px;margin-inline:auto}.p3-projects{padding:36px 0 52px}.p3-projects>.p3-section-heading{padding-top:32px;border-top:1px solid var(--border)}.p3-project-grid{--p3-project-gap: clamp(18px, 1.5vw, 28px);display:grid;grid-template-columns:repeat(4,minmax(0,380px));justify-content:center;gap:var(--p3-project-gap);margin-top:32px}.p3-project-card{position:relative;min-width:0;display:grid;grid-row:span 6;grid-template-rows:subgrid;row-gap:0;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;transition:border-color .22s,box-shadow .22s}.p3-project-image{position:relative;aspect-ratio:16 / 10;margin:10px 10px 0;border-radius:4px;overflow:hidden;background:var(--bg-elevated)}.p3-project-image img{position:relative;width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.p3-project-image img[hidden]{display:none}.p3-project-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,#203d60a8,#101e36d4);color:#faf8f2;opacity:0;pointer-events:none;transition:opacity .26s ease}.p3-project-overlay-label{position:relative;display:inline-flex;align-items:center;gap:12px;padding-block:12px;font:600 clamp(1rem,1.15vw,1.2rem)/1.4 var(--font-sans);letter-spacing:.035em;transform:translateY(7px);transition:transform .3s cubic-bezier(.2,.65,.3,1)}.p3-project-overlay-label svg{color:#e7c38d;flex-shrink:0}.p3-project-overlay-label:after{content:"";position:absolute;bottom:0;left:50%;width:32px;height:2px;background:#e7c38d;transform:translate(-50%)}.dark .p3-project-overlay{background:linear-gradient(145deg,#254567b8,#0b1729e6)}.p3-project-card:has(.p3-project-open:focus-visible) .p3-project-overlay{opacity:1}.p3-project-card:has(.p3-project-open:focus-visible) .p3-project-overlay-label{transform:translateY(0)}.p3-image-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:20px;color:var(--text-secondary);font:400 var(--p3-text-small)/1.6 var(--font-mono);text-align:center}.p3-project-body{padding:18px 18px 0;display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:0;min-width:0}.p3-project-labels{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-height:28px;margin-bottom:14px}.p3-project-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 9px;border:1px solid var(--brand-border);border-radius:999px;color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--bg-surface));font:600 var(--p3-text-meta)/1.2 var(--font-sans);white-space:nowrap}.p3-project-badge svg{flex-shrink:0;stroke-width:1.8}.p3-project-badge--collab{color:var(--text-secondary);background:var(--bg-base);border-color:var(--border)}.p3-project-badge--award{color:#805519;background:color-mix(in srgb,var(--accent) 15%,var(--bg-surface));border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.dark .p3-project-badge--award{color:#e8c58b}.p3-project-card h3{margin:0 0 10px}.p3-project-open{border:0;border-radius:0;background:none;padding:0;color:var(--text-primary);font:600 1.25rem/1.35 var(--font-sans);letter-spacing:-.025em;text-align:left;display:flex;align-items:baseline;justify-content:space-between;width:100%;gap:8px}.p3-project-open svg{flex-shrink:0;color:var(--text-secondary);transition:transform .22s}.p3-project-open:after{content:"";position:absolute;inset:0;border-radius:8px}.portfolio-preview .p3-project-open:focus-visible{outline:0}.p3-project-open:focus-visible:after{outline:2px solid var(--brand);outline-offset:4px}.p3-project-summary{color:var(--text-secondary);font-size:var(--p3-text-project);line-height:1.65;margin-bottom:18px}.p3-project-summary p{margin:0;text-align:left}.p3-project-summary strong{font-weight:400}.p3-project-stack{display:flex;flex-wrap:wrap;align-content:start;align-items:flex-start;gap:6px;padding:0;margin:0 0 18px;list-style:none}.p3-project-stack li{color:var(--brand);border:1px solid var(--brand-border);background:var(--brand-muted);border-radius:6px;padding:4px 8px;font:500 var(--p3-text-caption)/1.4 var(--font-mono)}.p3-project-links{display:flex;align-items:center;gap:10px;min-height:68px;border-top:1px solid var(--border-subtle);padding:12px 0}.p3-detail-hint{display:inline-flex;align-items:center;flex:1;min-width:0;gap:7px;font-size:var(--p3-text-control);line-height:1.5;color:var(--brand);margin-right:auto;white-space:nowrap}.p3-detail-hint>span{overflow:hidden;text-overflow:ellipsis}.p3-detail-hint svg{flex-shrink:0}.p3-projects-more{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px}.p3-projects-more>p{font-size:var(--p3-text-body);line-height:1.7;color:var(--text-secondary)}.p3-projects-more .p3-button{flex-shrink:0}.p3-project-count{border-left:1px solid currentColor;padding-left:12px;opacity:.8;font:400 var(--p3-text-small) var(--font-mono)}.p3-catalog{padding:22px 0 80px;min-height:75vh}.p3-back{color:var(--text-secondary);font-weight:400;font-size:var(--p3-text-control);text-decoration:none}.p3-catalog-heading{margin:30px 0 36px}.p3-catalog h1{font:500 clamp(2.8rem,4.5vw,4.5rem)/1.1 var(--p3-serif);letter-spacing:-.045em;margin:10px 0 20px}.p3-catalog-heading>p:last-child{color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.85;max-width:680px}.p3-catalog-filters{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;padding-block:18px;border-block:1px solid var(--border)}.p3-area-filters{display:flex;flex-wrap:wrap;gap:4px}.p3-area-filters button{display:flex;align-items:center;gap:7px;min-height:42px;border:1px solid transparent;background:none;border-radius:5px;padding:8px 14px;color:var(--text-secondary);font-size:var(--p3-text-control);white-space:nowrap}.p3-area-filters button[aria-pressed=true]{background:var(--brand-muted);color:var(--brand);border-color:var(--brand-border)}.p3-tech-filter{position:relative;z-index:6}.p3-tech-filter summary{cursor:pointer;display:flex;align-items:center;gap:9px;list-style:none;min-height:44px;font-size:var(--p3-text-control);color:var(--text-primary)}.p3-tech-filter summary::-webkit-details-marker{display:none}.p3-tech-filter summary:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.p3-tech-filter summary>span{color:var(--brand);font-size:var(--p3-text-small)}.p3-tech-filter[open] summary>svg{transform:rotate(180deg)}.p3-tech-panel{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);width:420px;padding:12px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,var(--bg-surface),var(--bg-base));border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-md)}.p3-tech-panel input[type=search],.p3-project-search input{min-width:0;width:100%;font:400 1rem var(--font-sans);border:1px solid var(--border);border-radius:4px;padding:10px;color:var(--text-primary);background:var(--bg-base)}.p3-tech-search{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 12px;background:var(--bg-surface);border:1px solid var(--brand-border);border-radius:9px;box-shadow:var(--shadow-xs)}.p3-tech-search input[type=search]{padding:0;border:0;border-radius:0;background:transparent}.p3-tech-search input:focus-visible{outline:none}.p3-tech-search:focus-within,.p3-project-search input:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.p3-tech-count{flex-shrink:0;color:var(--text-secondary);font:400 var(--p3-text-caption)/1.4 var(--font-mono);white-space:nowrap}.p3-tech-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:2px;max-height:min(340px,55dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--brand-border) transparent}.p3-tech-options>li{min-width:0}.p3-tech-options button{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;height:100%;min-height:46px;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:7px;background:var(--bg-surface);color:var(--text-secondary);font:600 var(--p3-text-control)/1.4 var(--font-sans);text-align:left;transition:background .18s,color .18s,border-color .18s,box-shadow .18s}.p3-tech-options button>span{min-width:0;overflow-wrap:anywhere}.p3-tech-options button>svg{flex-shrink:0;visibility:hidden}.p3-tech-options button[aria-pressed=true]{color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--bg-surface));border-color:var(--brand-border)}.p3-tech-options button[aria-pressed=true]>svg{visibility:visible}.portfolio-preview .p3-tech-options button:focus-visible{outline-offset:-3px}.p3-tech-empty{grid-column:1 / -1;padding:18px 12px;border:1px dashed var(--border);border-radius:7px;color:var(--text-secondary);font-size:var(--p3-text-small);text-align:center}.p3-project-search{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--text-secondary);width:min(410px,45%)}.p3-project-search svg{flex-shrink:0}.p3-project-search input{min-height:44px;background:var(--bg-surface)}.p3-project-search input::placeholder,.p3-tech-panel input::placeholder{color:var(--text-secondary);opacity:1}.p3-catalog-status{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;color:var(--text-secondary);font-size:var(--p3-text-small)}.p3-catalog-status>span{display:flex;align-items:center;gap:7px}.p3-catalog-status svg{flex-shrink:0}.p3-active-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.p3-active-filters button{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 10px;border:1px solid var(--border);border-radius:5px;background:var(--bg-surface);color:var(--text-primary);font-size:var(--p3-text-small)}.p3-active-filters .p3-reset{color:var(--text-secondary);background:transparent;border-color:transparent}.p3-catalog .p3-project-grid{margin-top:24px;row-gap:28px}.p3-projects-empty{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;padding:72px 20px;color:var(--text-secondary)}.p3-projects-empty h2{margin:0;font:500 1.2rem var(--font-sans);letter-spacing:-.02em;color:var(--text-primary)}.p3-projects-empty p{font-size:var(--p3-text-body)}@media(hover:hover){.p3-tech-options button:hover{color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--bg-surface));border-color:var(--brand-border);box-shadow:var(--shadow-xs)}.p3-tech-options button[aria-pressed=true]:hover{background:color-mix(in srgb,var(--brand) 16%,var(--bg-surface))}.p3-project-card:hover{border-color:var(--brand-border);box-shadow:0 6px 20px #101e360a}.p3-project-card:hover .p3-project-image img{transform:scale(1.035)}.p3-project-card:hover .p3-project-overlay{opacity:1}.p3-project-card:hover .p3-project-overlay-label{transform:translateY(0)}.p3-project-card:hover .p3-project-open svg{transform:translate(2px,-2px)}}@media(prefers-reduced-motion:reduce){.p3-project-overlay,.p3-project-overlay-label,.p3-tech-options button{transition:none}}@media(max-width:1647px){.p3-project-grid{grid-template-columns:repeat(3,minmax(0,380px))}}@media(max-width:1235px){.p3-project-grid{grid-template-columns:repeat(2,minmax(0,380px))}}@media(max-width:823px){.p3-project-grid{grid-template-columns:minmax(0,380px)}}@media(min-width:1236px)and (max-width:1647px){.p3-project-card:last-child:nth-child(3n+1){grid-column:2}.p3-project-card:nth-child(3n+1):nth-last-child(2),.p3-project-card:nth-child(3n+2):last-child{translate:calc(50% + var(--p3-project-gap) / 2) 0}}@media(min-width:824px)and (max-width:1235px){.p3-project-card:last-child:nth-child(odd){grid-column:1 / -1;width:calc((100% - var(--p3-project-gap)) / 2);justify-self:center}}@media(min-width:580px)and (max-width:823px){.p3-project-grid{--p3-project-media-width: 160px;grid-template-columns:minmax(0,680px)}}@media(min-width:980px)and (max-width:1235px){.p3-project-grid{--p3-project-media-width: 150px;grid-template-columns:repeat(2,minmax(0,560px))}}@media(min-width:1380px)and (max-width:1647px){.p3-project-grid{--p3-project-media-width: 140px;grid-template-columns:repeat(3,minmax(0,480px))}}@media(min-width:580px)and (max-width:823px),(min-width:980px)and (max-width:1235px),(min-width:1380px)and (max-width:1647px){.p3-project-card{grid-row:span 5;grid-template-columns:var(--p3-project-media-width) minmax(0,1fr);column-gap:0}.p3-project-image{grid-column:1;grid-row:1 / span 5;aspect-ratio:auto;min-height:0;margin:14px 0 14px 14px}.p3-project-image img{position:absolute;inset:0}.p3-project-body{grid-column:2;grid-row:1 / span 5;padding:14px 16px 0}.p3-project-overlay{padding:10px}.p3-project-overlay-label{flex-direction:column;gap:8px;text-align:center;font-size:1rem;letter-spacing:.015em}}@media(max-width:717px){.p3-projects{padding-top:8px;padding-bottom:40px}.p3-projects-more{align-items:flex-start;flex-direction:column;gap:16px}.p3-catalog{padding-top:12px}.p3-catalog-heading{margin-top:22px}.p3-catalog-filters{flex-wrap:wrap;gap:12px 20px}.p3-project-search{width:100%}.p3-catalog-status{align-items:flex-start;flex-direction:column;gap:8px}.p3-tech-filter{margin-left:auto}.p3-tech-panel{left:auto;right:0;transform:none;width:min(420px,calc(100vw - 2 * var(--p3-project-gutter)))}.p3-tech-options button{padding:11px 10px}}@media(max-width:560px){.p3-project-grid{gap:22px;margin-top:24px}.p3-project-body{padding:16px 18px 0}.p3-project-open{font-size:1.25rem}.p3-detail-hint{font-size:var(--p3-text-control)}}.p3-career{padding:64px 0 46px}.p3-career.p3-section{max-width:1680px;width:calc(100% - clamp(40px,6vw,96px))}.p3-career-journey{position:relative;width:100%;padding:clamp(28px,3vw,48px) clamp(16px,2.5vw,36px) 48px;background:var(--bg-surface);background:color-mix(in srgb,var(--bg-surface) 94%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg)}.p3-career-journey-content{position:relative;max-width:1240px;margin-inline:auto}.p3-career-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.p3-career-heading h2{margin:10px 0 0}.p3-career-views{display:flex;flex-wrap:wrap;gap:3px;padding:4px;border:1px solid var(--border);border-radius:7px;background:var(--bg-surface)}.p3-career-views button{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:4px;min-height:40px;padding:8px 14px;background:none;color:var(--text-secondary);font-size:var(--p3-text-control)}.p3-career-views button[aria-pressed=true]{color:var(--brand);background:var(--brand-muted);border-color:var(--brand-border)}.p3-career-timeline-icon{flex-shrink:0}.p3-career .p3-career-intro{max-width:730px;font-size:var(--p3-text-body);line-height:1.8;color:var(--text-secondary);margin:24px 0 32px}.p3-career-explorer{position:relative;display:grid;grid-template-columns:350px minmax(0,1fr);border-block:1px solid var(--border)}.p3-career-index{min-width:0;border-right:1px solid var(--border);align-self:stretch}.p3-career-index-sticky{position:sticky;top:80px;max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px);box-sizing:border-box;overflow-y:auto;padding:25px 24px 18px 0;scrollbar-width:thin;scroll-padding-block:12px}.p3-career-index-heading p{font:500 var(--p3-text-caption)/1.5 var(--font-mono);color:var(--text-primary);margin:0 0 7px}.p3-career-index-heading>span{display:block;color:var(--text-muted);font-size:var(--p3-text-small);line-height:1.7;max-width:230px}.p3-career-tabs{margin-top:24px}.p3-career-tabs button{position:relative;display:grid;grid-template-columns:36px 14px minmax(0,1fr) 14px;align-items:center;gap:8px;width:100%;min-height:65px;padding:10px 10px 10px 0;border:0;border-radius:5px;background:none;text-align:left;color:var(--text-secondary)}.p3-career-tabs button:before{content:"";position:absolute;top:0;bottom:0;left:50px;width:1px;background:var(--border)}.p3-career-tabs button:first-child:before{top:50%}.p3-career-tabs button:last-child:before{bottom:50%}.p3-career-year{font:400 var(--p3-text-meta) var(--font-mono);color:var(--text-muted)}.p3-career-node{position:relative;z-index:1;width:7px;height:7px;justify-self:center;border:1px solid var(--text-muted);background:var(--bg-base);border-radius:50%;transition:background .22s,box-shadow .22s}.p3-career-tab-copy{min-width:0}.p3-career-tab-copy strong{display:block;font-size:var(--p3-text-control);line-height:1.5;font-weight:500}.p3-career-tab-copy small{display:block;color:var(--text-muted);font-size:var(--p3-text-small);line-height:1.5;margin-top:3px}.p3-career-tab-arrow{opacity:0;transform:translate(-4px);transition:opacity .2s,transform .2s}.p3-career-tabs button:hover{background:var(--brand-muted)}.p3-career-tabs button[aria-selected=true]{color:var(--brand);background:var(--brand-muted)}.p3-career-tabs button[aria-selected=true] .p3-career-tab-copy strong{font-weight:600}.p3-career-tabs button[aria-selected=true] .p3-career-node{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 5px var(--bg-elevated)}.p3-career-tabs button[aria-selected=true] .p3-career-tab-arrow{opacity:1;transform:none}.p3-career-index-footer{display:flex;justify-content:space-between;padding:18px 10px 0 0;margin-top:18px;border-top:1px solid var(--border);color:var(--text-muted);font:400 var(--p3-text-meta) var(--font-mono)}.p3-career-panel{min-width:0;padding:26px 0 28px 40px}.p3-career-panel:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.p3-career-detail{animation:p3-career-enter .24s ease-out both}@keyframes p3-career-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.p3-career-detail-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 18px;font:400 var(--p3-text-caption)/1.7 var(--font-mono);color:var(--text-secondary);padding-bottom:22px;border-bottom:1px solid var(--border)}.p3-career-detail-top>span:first-child{color:var(--brand)}.p3-career-story{padding-top:24px}.p3-career-organization{color:var(--text-muted);font:500 var(--p3-text-caption)/1.6 var(--font-mono);margin-bottom:10px}.p3-career-detail h3{font:500 clamp(1.45rem,2.3vw,2.15rem)/1.22 var(--p3-serif);letter-spacing:-.03em;color:var(--text-primary);max-width:640px;margin:0 0 18px}.p3-career-lead{color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.8}.p3-career-evidence{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin:26px 0 24px;border-left:2px solid var(--accent);padding:6px 0 6px 20px}.p3-career-evidence>strong{font:500 clamp(1.4rem,2vw,2rem)/1.2 var(--p3-serif);color:var(--brand);white-space:nowrap}.p3-career-evidence>div{flex:1;min-width:160px}.p3-career-evidence p{font-size:var(--p3-text-control);line-height:1.6;margin:0;color:var(--text-primary)}.p3-career-evidence span{display:block;font-size:var(--p3-text-small);line-height:1.6;color:var(--text-muted);margin-top:4px}.p3-career-points{padding:0;margin:0 0 20px;list-style:none}.p3-career-points li{display:flex;align-items:flex-start;gap:12px;color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.7;margin:10px 0}.p3-career-points svg{flex-shrink:0;color:var(--brand);margin-top:4px}.p3-career select:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.p3-career-markdown{color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.85;padding-block:10px}.p3-career-markdown p{margin:0 0 16px;text-align:left}.p3-career-markdown strong{color:var(--text-primary);font-weight:600}.p3-career-markdown :is(ul,ol){padding-left:20px;margin:12px 0 18px}.p3-career-markdown li{margin-bottom:6px}.p3-career-markdown blockquote{border-left:2px solid var(--accent);margin:16px 0;padding-left:16px}.p3-career-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px;margin-top:10px}.p3-career-project{display:flex;min-width:0;width:100%;gap:16px;align-items:center;padding:12px;text-align:left;border:1px solid var(--border);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);transition:border-color .2s}.p3-career-projects--multiple .p3-career-project{gap:12px}.p3-career-projects--multiple .p3-career-project-media{width:72px}.p3-career-project:hover{border-color:var(--brand-border)}.p3-career-project-all{text-decoration:none;background:var(--brand-muted);border-color:var(--brand-border)}.p3-career-project-media{position:relative;display:grid;place-items:center;width:112px;aspect-ratio:16/9;overflow:hidden;border-radius:3px;border:1px solid var(--border-subtle);flex-shrink:0;color:var(--brand);background:var(--brand-muted)}.p3-career-project-media>img{width:100%;height:100%;object-fit:cover}.p3-career-project-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:#0000002e}.p3-career-project-play>svg{box-sizing:content-box;padding:8px;border-radius:50%;background:#000000a6}.p3-career-project-copy{min-width:0;flex:1}.p3-career-project small{display:block;color:var(--text-muted);font:400 var(--p3-text-caption)/1.6 var(--font-mono);margin-bottom:4px}.p3-career-project strong{display:block;font-size:1rem;font-weight:600;overflow-wrap:anywhere}.p3-career-project-copy>span{display:block;font-size:var(--p3-text-small);color:var(--brand);margin-top:5px}.p3-career-project>svg{flex-shrink:0;margin-right:4px;color:var(--brand)}.p3-career-ongoing{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:var(--p3-text-small);margin-top:18px}.p3-career-ongoing>span{width:5px;height:5px;border-radius:50%;background:var(--brand)}.p3-career-mobile-nav{display:none}.p3-career-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.p3-career-perspective{margin-bottom:48px}.p3-career-perspective-heading{margin-bottom:28px}.p3-career .p3-career-perspective-heading h2{margin:0 0 12px}.p3-career-perspective-heading p{color:var(--text-muted);font-size:var(--p3-text-body)}.p3-career-perspective-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);padding:4px 0 32px}.p3-career .p3-career-perspective-content p{max-width:none}.p3-career-perspective-content h3{font:500 var(--p3-text-caption) var(--font-mono);color:var(--brand);margin:10px 0 25px}.p3-career-pillar{border-left:1px solid var(--accent);padding-left:18px;margin-bottom:24px}.p3-career-pillar h4{font-size:1.125rem;font-weight:600;margin:0 0 8px}.p3-career-pillar p{font-size:var(--p3-text-body);line-height:1.75;color:var(--text-secondary)}.p3-career-bug{bottom:12px;right:12px}.p3-career-original .about-timeline-container{padding:0}.portfolio-preview .p3-career-original .about-content{width:100%;padding:24px 0 0;margin:0}.p3-career-original :is(.about-eyebrow,.about-title){display:none}@media(max-width:1100px){.p3-career-explorer{grid-template-columns:280px minmax(0,1fr)}.p3-career-index-sticky{padding-right:16px}.p3-career-panel{padding-left:28px}.p3-career-tab-copy strong{font-size:var(--p3-text-control)}.p3-career-evidence{gap:10px 18px}}@media(max-width:960px){.p3-career{padding-top:40px}.p3-career-perspective{margin-bottom:32px}.p3-career-heading{align-items:flex-start;flex-direction:column;gap:22px}.p3-career-views{width:100%}.p3-career-views button{flex:1;padding-inline:8px}.p3-career .p3-career-intro{margin:22px 0 24px;font-size:var(--p3-text-body)}.p3-career-explorer{display:block}.p3-career-index{display:none}.p3-career-panel{padding:20px 0 24px}.p3-career-mobile-nav{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border);padding:12px 0}.p3-career-mobile-nav>button{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--border);border-radius:4px;color:var(--brand);background:var(--bg-surface)}.p3-career-mobile-nav button:disabled{opacity:.35;cursor:default}.p3-career-mobile-nav label{flex:1;min-width:0}.p3-career-mobile-nav label>span{display:block;font-size:var(--p3-text-caption);color:var(--text-muted);margin-left:5px}.p3-career-mobile-nav select{display:block;width:100%;min-height:36px;padding:5px;font-size:1rem;border:0;background:var(--bg-base);color:var(--text-primary);border-radius:3px}.p3-career-detail-top{font-size:var(--p3-text-caption);padding-bottom:16px}.p3-career-detail h3{font-size:1.65rem}.p3-career-story{padding-top:20px}.p3-career-lead,.p3-career-points li{font-size:var(--p3-text-body)}.p3-career-evidence{padding-left:14px}.p3-career-evidence>strong{font-size:1.7rem}.p3-career-evidence>div{flex-basis:100%}.p3-career-projects{grid-template-columns:1fr}.p3-career-project{gap:12px;padding:10px}.p3-career-project-media{width:80px}.p3-career-project small{font-size:var(--p3-text-caption)}.p3-career-project>svg{width:17px;margin-right:0}.p3-career-perspective-content{grid-template-columns:1fr;gap:18px}}@media(prefers-reduced-motion:reduce){.p3-career *,.p3-career *:before{animation:none!important;transition:none!important}}html.portfolio-preview{--bg-base: #f7f7f2;--bg-surface: #fffefa;--bg-elevated: #eeefe9;--bg-muted: #f0f1ec;--bg-surface-glass: #fffefacc;--bg-header: #f7f7f2ed;--brand: #203d66;--brand-mid: #294f83;--brand-hover: #162e50;--brand-muted: #203d660a;--brand-border: #203d6630;--text-primary: #162b46;--text-secondary: #536173;--text-muted: #657183;--accent: #c19350;--border: #dce0dc;--border-subtle: #e9ebe5;--radius-xl: 16px;--radius-lg: 12px;--radius-md: 10px;--p3-serif: "Playfair Display", Georgia, serif;--p3-text-body: clamp(1rem, .95rem + .15vw, 1.125rem);--p3-text-project: clamp(.9375rem, .9rem + .1vw, 1rem);--p3-text-control: .9375rem;--p3-text-small: .875rem;--p3-text-caption: .8125rem;--p3-text-meta: .75rem;--p3-text-backdrop: url(#p3-text-backdrop-light)}html.portfolio-preview.dark{--bg-base: #101923;--bg-surface: #172330;--bg-elevated: #1f2d3c;--bg-muted: #1b2734;--bg-surface-glass: #172330d9;--bg-header: #101923ed;--brand: #92b7e4;--brand-mid: #a7c8ef;--brand-hover: #bdd7f8;--brand-muted: #92b7e40d;--brand-border: #92b7e440;--text-primary: #edf0ee;--text-secondary: #b5c0cd;--text-muted: #a0adbc;--accent: #d6b27b;--border: #31404e;--border-subtle: #243342;--p3-text-backdrop: url(#p3-text-backdrop-dark)}.portfolio-preview body{background-image:none}.portfolio-preview #root{text-align:left}.portfolio-preview :where(a,button):focus-visible{outline:2px solid var(--brand-mid);outline-offset:5px}.portfolio-preview :is(h1,h2)[tabindex="-1"]:focus{outline:none}.portfolio-preview :where(#projects,#about,#opportunities){scroll-margin-top:90px}.portfolio-preview .header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portfolio-preview .header-content{max-width:1380px}.portfolio-preview .header .header-logo{display:flex;flex-shrink:0}.portfolio-preview .logo-full{color:var(--text-primary);font-size:1.55rem;font-weight:600}.portfolio-preview .p3-skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--bg-surface);border:1px solid var(--brand);z-index:3000}.portfolio-preview .p3-skip:focus{top:12px}.portfolio-preview .inicio.p3-hero{border:0;border-radius:0;box-shadow:none;background:transparent;padding:28px 0 24px;margin-top:80px;margin-bottom:12px;max-width:940px;overflow:visible;text-align:left}.portfolio-preview .p3-hero:before{display:none}.p3-ink-filters{position:absolute;pointer-events:none}.p3-meta{font:500 var(--p3-text-meta)/1.7 var(--font-mono);letter-spacing:.095em;text-transform:uppercase;color:var(--text-secondary)}.p3-hero>.p3-meta{margin-bottom:24px}.p3-hello{position:relative;z-index:1;font-size:1.0625rem;margin-bottom:10px}.p3-hero h1{font:500 clamp(3.1rem,4.5vw,4.6rem)/1.06 var(--p3-serif);letter-spacing:-.055em}.p3-name-break{display:none}.p3-hero h1 em{font-weight:500;color:var(--brand)}.p3-role{max-width:620px;margin-top:20px;color:var(--brand);font:500 clamp(1.25rem,1.85vw,1.6rem)/1.5 var(--font-sans);letter-spacing:-.025em}.p3-role-grid{display:grid}.p3-role-grid>*{grid-area:1 / 1;min-width:0}.p3-role-sizer{visibility:hidden}.p3-role-sizer-cursor{display:inline-block;margin-left:.15rem}.p3-role .text-type__content,.p3-role-static{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 65%,transparent);text-decoration-thickness:2px;text-underline-offset:.25em}.p3-role .text-type__cursor{color:var(--brand)}.p3-role-static{display:none}.p3-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.p3-lead{max-width:620px;font-size:clamp(1.2rem,1.65vw,1.5rem);font-weight:500;line-height:1.45;letter-spacing:-.03em;margin-top:28px}.p3-bio{max-width:620px;font-size:var(--p3-text-body);line-height:1.7;color:var(--text-secondary);margin-top:20px}.p3-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.p3-hero .p3-actions{margin-top:28px}.p3-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:12px 20px;border-radius:5px;font-size:var(--p3-text-control);font-weight:600;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s}.p3-primary{background:var(--brand);color:var(--text-inverse);border:1px solid var(--brand)}.p3-primary:hover{background:var(--brand-hover);color:var(--text-inverse);box-shadow:0 3px 10px #101e3614}.portfolio-preview :is(.p3-primary,.project-action--primary)::selection,.portfolio-preview :is(.p3-primary,.project-action--primary) ::selection{background:var(--bg-surface);color:var(--text-primary);text-shadow:none}.p3-button svg,.p3-text-link svg{transition:transform .25s;flex-shrink:0}.p3-button:hover svg,.p3-text-link:hover svg{transform:translate(2px,-2px)}.p3-text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:var(--text-primary);font-size:var(--p3-text-control);font-weight:600;text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:6px}.p3-hero-links{max-width:620px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border);overflow:visible}.p3-hero-link-content{display:flex;align-items:center;gap:24px;overflow:visible}.p3-chat-invite{display:flex;align-items:center;gap:10px;text-align:left;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-primary);flex:1.5}.p3-chat-invite svg{flex-shrink:0}.p3-chat-invite>svg:first-child{color:var(--brand)}.p3-chat-invite>svg:last-child{margin-left:auto}.p3-chat-invite strong{display:block;font-size:var(--p3-text-control);font-weight:600}.p3-chat-invite small{display:block;color:var(--text-secondary);font-size:var(--p3-text-small);margin-top:4px}.p3-recruiter-link{color:var(--text-secondary);font-size:var(--p3-text-small);line-height:1.8;margin:0;flex:1}.p3-recruiter-link a{display:block;width:fit-content;text-decoration:underline;text-underline-offset:3px}.p3-hero-intro{position:relative}.p3-hero-name{min-width:0}.p3-hero-portrait{position:absolute;left:calc(100% + 54px);top:14px;width:clamp(200px,23vw,310px);isolation:isolate}.p3-hero-portrait[hidden]{display:none}.p3-hero-portrait:before,.p3-hero-portrait:after{content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:48% 48% 20% 20%}.p3-hero-portrait:before{inset:-9px 8px 12px -8px;border:1px solid var(--brand-border);transform:rotate(-5deg)}.p3-hero-portrait:after{inset:8px -8px -2px 10px;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);transform:rotate(4deg);-webkit-mask-image:linear-gradient(135deg,transparent 30%,#000 65%,transparent 95%);mask-image:linear-gradient(135deg,transparent 30%,#000 65%,transparent 95%)}.p3-portrait-image{aspect-ratio:4 / 5;border-radius:48% 48% 18% 18%;overflow:hidden;background:var(--bg-elevated);-webkit-mask-image:linear-gradient(to bottom,#000 72%,#000c 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 72%,#000c 88%,transparent 100%)}.p3-portrait-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%;filter:saturate(.75) contrast(1.02)}.p3-hero h1,.p3-hero .p3-hello{animation:p3-enter .8s cubic-bezier(.2,.7,.2,1) both}.p3-hero .p3-lead,.p3-hero .p3-bio{animation:p3-enter .8s .1s cubic-bezier(.2,.7,.2,1) both}.p3-hero .p3-actions{animation:p3-enter .8s .2s cubic-bezier(.2,.7,.2,1) both}@keyframes p3-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.p3-section{max-width:1240px;width:calc(100% - 96px);margin:0 auto;position:relative;z-index:3}.p3-section h2{font:500 clamp(2rem,3.2vw,3.15rem)/1.15 var(--p3-serif);letter-spacing:-.04em;margin:14px 0 24px}.p3-section p{max-width:630px}.p3-context{padding:76px 0 44px}.p3-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:32px}.p3-section-heading h2{margin:0}.p3-context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:40px}.p3-context-grid article{border-top:1px solid var(--border);padding-top:22px}.p3-index{font:400 var(--p3-text-meta)/1.7 var(--font-mono);color:var(--text-secondary)}.p3-context-grid h3{font-size:1.2rem;font-weight:600;letter-spacing:-.02em;margin:18px 0 12px}.p3-context-grid article>p:last-child{font-size:var(--p3-text-body);color:var(--text-secondary);line-height:1.85}.portfolio-preview .project{padding-bottom:50px}.portfolio-preview .project-content{box-shadow:none;border-color:var(--border);border-radius:10px}.portfolio-preview .project-content:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.portfolio-preview .project-title{letter-spacing:-.035em}.portfolio-preview .about-content{box-shadow:none;background:transparent;border:0;padding-top:48px}.portfolio-preview .about-content:hover{box-shadow:none}.portfolio-preview .about-bio-text{text-align:left}.portfolio-preview .about-title{font-weight:600}.p3-assistant{display:grid;grid-template-columns:240px 1fr;gap:72px;align-items:center;padding:80px 0}.p3-assistant p:not(.p3-meta){color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.85}.p3-assistant-portrait{width:240px;height:280px;background:var(--bg-elevated);overflow:hidden;border-radius:120px 120px 12px 12px;position:relative}.p3-assistant-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}.p3-assistant-portrait span{position:absolute;left:20px;bottom:14px;font:500 var(--p3-text-small) var(--font-mono);color:#fff;background:#162b46;padding:5px 10px;border-radius:4px}.p3-assistant .p3-example{border-left:2px solid var(--accent);padding-left:16px;margin:20px 0 24px;font-size:var(--p3-text-body)}.p3-opportunities{border-top:1px solid var(--border);padding:64px 0 24px}.p3-opportunity-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:72px}.p3-opportunity-copy>p:not(.p3-meta){color:var(--text-secondary);font-size:var(--p3-text-body);line-height:1.85}.p3-opportunity-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:44px 0 0}.p3-opportunity-facts>div{padding-top:20px;border-top:1px solid var(--border)}.p3-opportunities dt{color:var(--text-secondary);font-size:var(--p3-text-small);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.p3-opportunities dd{font-size:var(--p3-text-body);line-height:1.75}.p3-motion{width:100%;max-width:400px;justify-self:end;background:#101e36;position:relative;border-radius:12px;overflow:hidden}.p3-motion video{width:100%;height:auto;aspect-ratio:1;display:block}.portfolio-preview .chatbot-button{border-radius:16px;width:58px;height:58px}.portfolio-preview .chat-tooltip{border-radius:6px;box-shadow:var(--shadow-sm);font-size:var(--p3-text-caption)}.portfolio-preview .chatbot-popup{border-radius:12px;width:min(390px,calc(100vw - 32px))}.portfolio-preview .chatbot-header{border-radius:0}.portfolio-preview .chatbot-messages{text-align:left;padding:16px}@media(min-width:1025px){.portfolio-preview .inicio.p3-hero{--p3-hero-gap: clamp(32px, calc((100vw - 1040px) / 3), 360px);max-width:calc(620px + var(--p3-hero-gap));margin-left:max(5rem,calc((100vw - 1040px - var(--p3-hero-gap)) / 2));width:calc(100% - 530px)}.p3-hero--lanyard>:is(.p3-meta,.p3-role,.p3-lead,.p3-bio),.p3-hero--lanyard .p3-hero-name,.p3-hero--lanyard :is(.p3-text-link,.p3-hero-link-content){filter:var(--p3-text-backdrop)}.p3-hero-link-content{padding:24px;margin:-24px}.p3-hero .p3-readable{pointer-events:none}}@media(min-width:718px)and (max-width:1075px){.portfolio-preview .header{padding-inline:18px}.portfolio-preview .logo-full{font-size:1.25rem}.portfolio-preview .header-nav a{font-size:var(--p3-text-control);padding-inline:7px}}@media(max-width:1100px){.portfolio-preview .header .menu-toggle{display:flex;align-items:center;justify-content:center}.portfolio-preview .header .header-nav{position:fixed;top:62px;right:16px;left:auto;width:216px;flex-direction:column;padding:8px;gap:0;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(-8px)!important}.portfolio-preview .header .header-nav.open{opacity:1;visibility:visible;transform:none!important}.portfolio-preview .header .header-nav a{padding:12px 16px;width:100%;font-size:var(--p3-text-control)}}@media(max-width:1024px){.portfolio-preview .inicio.p3-hero{width:calc(100% - 80px);padding-top:24px}.p3-hero h1{font-size:clamp(3rem,5.8vw,4.2rem)}.p3-name-break{display:block}.p3-hero-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px}.p3-hero-portrait{position:relative;left:auto;top:auto;width:clamp(112px,20vw,160px);margin-right:8px}.p3-hero .p3-lead,.p3-hero .p3-bio{max-width:640px}.p3-section{width:calc(100% - 80px)}.p3-opportunity-intro{gap:36px}.p3-opportunity-facts{gap:24px}.p3-assistant{gap:48px}}@media(max-width:717px){.portfolio-preview .header .header-logo{position:static;left:0!important;transform:none!important}.portfolio-preview .header-content{justify-content:space-between}.portfolio-preview .inicio.p3-hero{width:calc(100% - 40px);margin:72px auto 12px;padding-top:20px}.p3-meta{font-size:var(--p3-text-meta);letter-spacing:.04em}.p3-hero>.p3-meta{margin-bottom:20px}.p3-hero h1{font-size:clamp(2.8rem,10vw,3.4rem)}.p3-hero-intro{gap:16px}.p3-hero-portrait{width:clamp(80px,24vw,128px);margin-right:4px}.p3-hero .p3-lead{font-size:clamp(1.2rem,1.65vw,1.5rem);max-width:420px;margin-top:24px}.p3-bio{font-size:var(--p3-text-body)}.p3-actions{gap:12px 20px}.p3-hero .p3-actions{margin-top:24px}.p3-hero-links{margin-top:24px;padding-top:18px}.p3-button{font-size:var(--p3-text-control);padding:12px 16px}.p3-text-link{font-size:var(--p3-text-control)}.p3-recruiter-link{max-width:310px}.p3-hero-link-content{align-items:stretch;flex-direction:column;gap:18px}.p3-recruiter-link a{display:inline-block;margin-left:4px}.p3-section{width:calc(100% - 40px)}.p3-section-heading{display:block}.p3-section-heading h2{margin-top:12px}.p3-context{padding-top:48px}.p3-context-grid{grid-template-columns:1fr;gap:24px;margin-top:28px}.p3-context-grid h3{margin-top:10px}.p3-assistant{grid-template-columns:1fr;gap:28px;padding-block:48px}.p3-assistant-portrait{width:120px;height:150px}.p3-assistant-portrait span{left:10px;bottom:8px}.p3-opportunities{padding:48px 0 12px}.p3-opportunity-intro{grid-template-columns:1fr;gap:28px}.p3-opportunity-facts{grid-template-columns:1fr;gap:20px;margin-top:28px}.p3-opportunities h2{max-width:480px}.p3-motion{max-width:320px;justify-self:center}.portfolio-preview .chat-tooltip{font-size:var(--p3-text-caption);max-width:calc(100vw - 100px);overflow-wrap:anywhere;white-space:normal;text-align:right}.portfolio-preview .chatbot-popup{right:16px;max-width:none}}@media(max-width:374px){.p3-hero h1{font-size:2.6rem}}@media(max-width:405px){.portfolio-preview .header{padding-inline:12px}.portfolio-preview .logo-full{font-size:1.15rem}.portfolio-preview .header-actions{gap:2px}.portfolio-preview .header .lang-btn{min-width:34px;padding-inline:7px}.portfolio-preview .header .menu-toggle{padding-inline:6px}}@media(prefers-reduced-motion:reduce){.portfolio-preview{scroll-behavior:auto}.portfolio-preview .header,.portfolio-preview .header *{transition:none!important}.portfolio-preview .p3-hero *,.portfolio-preview .p3-section *{animation:none!important;transition:none!important}.p3-role-animated{display:none}.p3-role-static{display:block}}.p3-cv-download{padding:0;border:0;background:transparent;font-family:inherit;cursor:pointer}.portfolio-preview .header-nav a{font-size:var(--p3-text-control)}.portfolio-preview .header .lang-btn{font-size:var(--p3-text-small)}.portfolio-preview :is(.footer-tagline,.footer-social-link){font-size:1rem}.portfolio-preview .footer-copyright{font-size:var(--p3-text-control)}.portfolio-preview .footer-recaptcha{font-size:var(--p3-text-small)}.portfolio-preview .inf-item span{font-size:var(--p3-text-control)}.portfolio-preview :is(.pw-summary,.pw-description){font-size:var(--p3-text-project)}.portfolio-preview .pw-description :is(h1,h2,h3,h4){font-size:1.25rem}.portfolio-preview :is(.pw-drag,.pw-bar-title,.pw-mobile-nav button){font-size:var(--p3-text-control)}.portfolio-preview :is(.pw-badges span,.pw-tech li,.pw-footer-note,.project-dock-label b){font-size:var(--p3-text-caption)}.portfolio-preview :is(.project-dock-label,.project-dock-tab button){font-size:var(--p3-text-small)}.portfolio-preview .pw-mobile-nav select{font-size:1rem}.portfolio-preview .chatbot-header h3{font-size:1.0625rem}.portfolio-preview .chatbot-header span{font-size:var(--p3-text-caption)}.portfolio-preview .message,.portfolio-preview .message.bot :is(p,ul,ol,li,a,strong,em,blockquote){font-size:1rem;line-height:1.6}.portfolio-preview .message.bot :is(h1,h2,h3,h4,h5,h6){font-size:1.125rem}.portfolio-preview .message.bot :is(code,pre){font-size:var(--p3-text-small)}.portfolio-preview .chatbot-input textarea{font-size:1rem}.portfolio-preview .contact-popup-header h2{font-size:1.0625rem}.portfolio-preview :is(.tab-button,.form-group label,.submit-button){font-size:var(--p3-text-control)}.portfolio-preview :is(.contact-info-text,.info-content h3){font-size:var(--p3-text-small)}.portfolio-preview .info-content :is(a,p,span),.portfolio-preview .form-group :is(input,textarea){font-size:1rem}@media(min-width:718px)and (max-width:1024px){.portfolio-preview .footer-top{gap:28px;padding-inline:0}.portfolio-preview .footer-logo{flex:1;min-width:0}.portfolio-preview .footer-social{flex:1}}@media(max-width:1024px),(max-height:600px){.portfolio-preview .chatbot-popup{right:max(16px,env(safe-area-inset-right));bottom:calc(88px + env(safe-area-inset-bottom));width:min(390px,calc(100vw - 32px));height:min(560px,calc(100dvh - 100px - env(safe-area-inset-bottom)));max-height:calc(100dvh - 100px - env(safe-area-inset-bottom))}.portfolio-preview .chatbot-messages{min-height:0}.portfolio-preview .chatbot-header,.portfolio-preview .chatbot-input{flex-shrink:0}.portfolio-preview .chatbot-privacy-options{max-height:min(150px,24dvh)}}@media(pointer:coarse){.portfolio-preview .header-nav{max-height:calc(100dvh - 80px);overflow-y:auto}.portfolio-preview .p3-career-views button{min-height:44px}.portfolio-preview .chatbot-reset{min-width:44px;min-height:44px}.portfolio-preview .project-window--compact .pw-controls button{width:30px;height:44px}.portfolio-preview .project-window--compact .pw-titlebar{padding-inline:82px}.portfolio-preview .project-window--compact .pw-bar-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}:root{--j1-panel-bar: #F0F4FE;--j1-scrim: rgba(15, 23, 42, .55);--j1-grid: rgba(30, 58, 138, .1);--j1-halo: #ffffff}html.dark{--j1-panel-bar: #121A2C;--j1-scrim: rgba(4, 7, 14, .68);--j1-grid: rgba(148, 163, 184, .1);--j1-halo: #F8FAFC}.juego1-overlay{position:fixed;inset:0;z-index:9000;pointer-events:none}.juego1-backdrop{position:fixed;inset:0;z-index:9200;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(120% 90% at 50% 0%,rgba(30,58,138,.18),transparent 60%),var(--j1-scrim);backdrop-filter:blur(10px) saturate(115%);-webkit-backdrop-filter:blur(10px) saturate(115%);animation:fadeIn .28s var(--ease-out) both}.juego1-backdrop--modal{z-index:9500}.juego1-panel{position:relative;z-index:1;width:100%;max-width:440px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);overflow:hidden;text-align:left;animation:j1PanelIn .34s var(--ease-spring) both}.juego1-panel-bar{display:flex;align-items:center;gap:.6rem;padding:.5rem .85rem;background:var(--j1-panel-bar);border-bottom:1px solid var(--border)}.juego1-panel-bar .mac-dot{width:11px;height:11px}.juego1-panel-bar .mac-dot--close:active{transform:scale(.95)}.juego1-panel-bar .mac-dot--close:focus-visible{outline-color:var(--brand-mid);outline-offset:3px}.juego1-panel-file{font-family:var(--font-mono);font-size:.72rem;font-weight:500;color:var(--text-muted);letter-spacing:.02em}.juego1-panel-meta{margin-left:auto;font-family:var(--font-mono);font-size:.64rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:.1rem .5rem}.juego1-panel-meta--ok{color:var(--success);border-color:var(--success-muted);background:var(--success-muted)}.juego1-panel-meta--err{color:var(--error);border-color:#dc262640;background:#dc262614}.juego1-panel-body{padding:1.6rem 1.5rem 1.4rem}.juego1-intro-card{max-width:420px}.juego1-intro-hero{position:relative;height:108px;margin-bottom:1.1rem;border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--bg-elevated);overflow:hidden;display:flex;align-items:center;justify-content:center}.juego1-intro-hero-grid{position:absolute;inset:0;background-image:linear-gradient(var(--j1-grid) 1px,transparent 1px),linear-gradient(90deg,var(--j1-grid) 1px,transparent 1px);background-size:18px 18px;mask-image:radial-gradient(circle at 50% 50%,#000 35%,transparent 78%);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 35%,transparent 78%)}.juego1-intro-hero-bug{position:relative;width:62px;height:62px;animation:j1Float 3.2s var(--ease) infinite alternate}.juego1-intro-hero-bug svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 6px 10px rgba(15,23,42,.22))}.juego1-eyebrow{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:.35rem}.juego1-intro-title{font-size:1.65rem;font-weight:800;color:var(--text-primary);letter-spacing:-.03em;line-height:1.1;margin-bottom:1.35rem}.juego1-intro-title:after{content:"";display:inline-block;width:.5ch;height:1.05em;margin-left:.28ch;vertical-align:-.16em;background:var(--brand);animation:j1Caret 1.05s steps(1) infinite}.juego1-intro-rules{list-style:none;padding:0;margin:0 0 1.5rem;border-top:1px solid var(--border-subtle)}.juego1-intro-rules li{display:flex;align-items:center;gap:.7rem;padding:.7rem .1rem;font-size:.875rem;line-height:1.45;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.juego1-intro-rules li strong{color:var(--text-primary);font-weight:700}.juego1-rule-index{font-family:var(--font-mono);font-size:.68rem;font-weight:600;color:var(--text-muted);opacity:.75;flex-shrink:0}.juego1-rule-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;border-radius:var(--radius-sm);background:var(--brand-muted);color:var(--brand)}.juego1-intro-buttons,.juego1-modal-buttons{display:flex;gap:.6rem;flex-wrap:wrap}.juego1-backdrop--countdown{z-index:9200}.juego1-countdown-ring{position:relative;width:190px;height:190px;display:grid;place-items:center}.juego1-countdown-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.juego1-ring-track,.juego1-ring-fill{fill:none;stroke-width:3;stroke-linecap:round}.juego1-ring-track{stroke:#f8fafc29;stroke-width:4}.juego1-ring-fill{stroke:var(--accent);stroke-width:4;stroke-dasharray:339.3;filter:drop-shadow(0 0 6px rgba(245,158,11,.5));animation:j1RingDeplete var(--count-dur, 3s) linear both}.juego1-countdown-number{font-family:var(--font-mono);font-size:5.5rem;font-weight:700;color:#f8fafc;line-height:1;letter-spacing:-.04em;text-shadow:0 8px 40px rgba(8,12,20,.55);animation:j1CountPop .4s var(--ease-spring) both}.juego1-countdown-number svg{color:#f8fafc;--bug-mark-seam: rgba(15, 23, 42, .55)}.juego1-countdown-text{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:#f8fafcb3;margin-top:1.5rem}.juego1-hud{position:fixed;top:0;left:0;right:0;z-index:9100;pointer-events:none;display:flex;justify-content:center;padding:.75rem .75rem 0}.juego1-hud-inner{position:relative;overflow:hidden;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem 1rem;background:var(--bg-surface-glass);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border:1px solid var(--border);border-radius:var(--radius-md);padding:.5rem .7rem .75rem;box-shadow:var(--shadow-md);animation:fadeDown .35s var(--ease-out) both;max-width:95vw;width:max-content}.juego1-hud-tag{display:inline-flex;align-items:center;gap:.4rem;color:var(--brand);--bug-mark-seam: var(--bg-surface)}.juego1-hud-tag-text{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary)}.juego1-hud-divider{width:1px;align-self:stretch;min-height:1.4rem;background:var(--border)}.juego1-hud-metric{display:flex;align-items:baseline;gap:.45rem}.juego1-hud-label{font-family:var(--font-mono);font-size:.62rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.juego1-hud-value{font-family:var(--font-mono);font-size:.95rem;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums}.juego1-hud-sep{color:var(--text-muted);margin:0 .05em;font-weight:400}.juego1-hud-value--urgent{color:var(--error);animation:j1Blink .9s steps(1) infinite}.juego1-ticks{display:flex;gap:3px;align-items:flex-end;height:14px}.juego1-tick{width:3px;height:8px;border-radius:1px;background:var(--border);transition:height .25s var(--ease-spring),background .2s var(--ease)}.juego1-tick--on{height:14px;background:var(--brand)}.juego1-hud-close-btn{pointer-events:all;margin-left:auto;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.04em;padding:.25rem .4rem .25rem .5rem;cursor:pointer;transition:color var(--t) var(--ease),border-color var(--t) var(--ease),background var(--t) var(--ease);display:inline-flex;align-items:center;gap:.35rem}.juego1-hud-close-btn:hover{color:var(--error);border-color:#dc262659;background:#dc262612}.juego1-timer-bar-container{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--border-subtle);overflow:hidden}.juego1-timer-bar{height:100%;background:var(--brand);transition:width .3s linear,background .3s var(--ease)}.juego1-timer-bar--warn{background:var(--accent)}.juego1-timer-bar--danger{background:var(--error);animation:j1BarDanger .5s ease infinite alternate}.juego1-kbd{font-family:var(--font-mono);font-size:.6rem;font-weight:600;line-height:1;letter-spacing:.04em;padding:.2rem .32rem;border-radius:4px;border:1px solid currentColor;opacity:.45;display:inline-flex;align-items:center}.juego1-urgency-overlay{position:fixed;inset:0;pointer-events:none;z-index:9005;box-shadow:inset 0 0 60px #dc262659;border:3px solid rgba(220,38,38,.28);animation:j1Urgency .6s infinite alternate ease-in-out}.juego1-backdrop .juego1-urgency-overlay{z-index:0}.juego1-urgency-overlay--static{animation:none;box-shadow:inset 0 0 90px #dc262673;border-color:#dc262659}@keyframes j1Urgency{0%{box-shadow:inset 0 0 30px #dc26262e;border-color:#dc26261f}to{box-shadow:inset 0 0 80px #dc262680;border-color:#dc262659}}.juego1-bug{position:fixed;pointer-events:all;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;z-index:9050;display:grid;place-items:center;width:3.4rem;height:3.4rem;padding:0;background:transparent;border:none;will-change:transform;animation:j1BugAppear .2s var(--ease-spring) both,j1BugCrawl var(--life, 1.3s) linear both}.juego1-bug,.juego1-intro-hero-bug{--bug-shell: #1e3a8a;--bug-shell-dark: #152a63;--bug-accent: #F59E0B;--bug-line: rgba(255, 255, 255, .5);--bug-outline: var(--j1-halo);--bug-glow: rgba(30, 58, 138, .55)}.juego1-bug--v1{--bug-shell: #334155;--bug-shell-dark: #1e293b;--bug-accent: #FCD34D;--bug-glow: rgba(51, 65, 85, .5)}.juego1-bug--v2{--bug-shell: #1d4ed8;--bug-shell-dark: #1e3a8a;--bug-accent: #93c5fd;--bug-glow: rgba(29, 78, 216, .5)}.juego1-bug--v3{--bug-shell: #B45309;--bug-shell-dark: #78350F;--bug-accent: #FCD34D;--bug-glow: rgba(180, 83, 9, .5)}html.dark .juego1-bug,html.dark .juego1-intro-hero-bug{--bug-shell: #3b82f6;--bug-shell-dark: #1e3a8a;--bug-glow: rgba(245, 158, 11, .6)}html.dark .juego1-bug--v1{--bug-shell: #64748B;--bug-shell-dark: #334155}html.dark .juego1-bug--v2{--bug-shell: #60a5fa;--bug-shell-dark: #2563eb}html.dark .juego1-bug--v3{--bug-shell: #F59E0B;--bug-shell-dark: #B45309;--bug-accent: #FDE68A}.juego1-bug-heading{display:block;width:100%;height:100%;transform:rotate(var(--rot, 0deg)) scale(var(--bug-scale, 1));transition:transform .13s var(--ease-spring);filter:drop-shadow(1.4px 0 0 var(--bug-outline)) drop-shadow(-1.4px 0 0 var(--bug-outline)) drop-shadow(0 1.4px 0 var(--bug-outline)) drop-shadow(0 -1.4px 0 var(--bug-outline)) drop-shadow(0 3px 5px rgba(15,23,42,.3))}.juego1-bug:hover .juego1-bug-heading{transform:rotate(var(--rot, 0deg)) scale(calc(var(--bug-scale, 1) * 1.2));filter:drop-shadow(1.4px 0 0 var(--bug-outline)) drop-shadow(-1.4px 0 0 var(--bug-outline)) drop-shadow(0 1.4px 0 var(--bug-outline)) drop-shadow(0 -1.4px 0 var(--bug-outline)) drop-shadow(0 0 9px var(--bug-glow))}.juego1-bug:active .juego1-bug-heading{transform:rotate(var(--rot, 0deg)) scale(calc(var(--bug-scale, 1) * .88))}.juego1-bug-art{display:block;width:100%;height:100%;animation:j1BugBob .42s var(--ease) var(--wiggle-delay, 0ms) infinite alternate}.juego1-bug-art svg,.juego1-intro-hero-bug svg{width:100%;height:100%;display:block;overflow:visible}.juego1-reticle{position:absolute;inset:1px;pointer-events:none;opacity:0;transform:scale(1.2);transition:opacity .13s var(--ease),transform .13s var(--ease-spring)}.juego1-bug:hover .juego1-reticle{opacity:1;transform:scale(1)}.juego1-reticle i{position:absolute;width:9px;height:9px;border:2px solid var(--accent)}.juego1-reticle i:nth-child(1){top:0;left:0;border-right:0;border-bottom:0}.juego1-reticle i:nth-child(2){top:0;right:0;border-left:0;border-bottom:0}.juego1-reticle i:nth-child(3){bottom:0;left:0;border-right:0;border-top:0}.juego1-reticle i:nth-child(4){bottom:0;right:0;border-left:0;border-top:0}.juego1-reticle--hero{position:absolute;inset:0;width:86px;height:86px;margin:auto;opacity:1;transform:none;animation:j1ReticlePulse 2.4s var(--ease) infinite}.juego1-bug--dying{animation-play-state:paused;pointer-events:none}.juego1-bug--dying .juego1-bug-art{animation:j1BugSquash .26s var(--ease-in) forwards}.juego1-bug--dying .juego1-reticle{opacity:0}.juego1-bug--escaping{pointer-events:none}.juego1-bug--escaping .juego1-bug-art{animation:j1BugEscape .35s var(--ease-in) forwards}.juego1-particle{position:fixed;pointer-events:none;z-index:9060;color:var(--accent);line-height:0;animation:j1ParticleFloat .6s var(--ease-out) forwards}.juego1-particle svg{filter:drop-shadow(0 0 3px var(--accent-glow))}.juego1-score-popup{position:fixed;pointer-events:none;z-index:9060;font-family:var(--font-mono);font-size:.75rem;font-weight:700;letter-spacing:.02em;color:var(--accent-dark);background:var(--bg-surface);border:1px solid var(--accent-border);border-radius:999px;padding:.05rem .4rem;box-shadow:var(--shadow-sm);animation:j1ScoreFloat .8s var(--ease-out) forwards}.juego1-confetti-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.juego1-modal{max-width:460px;text-align:center}.juego1-modal .juego1-panel-body{padding:1.5rem 1.5rem 1.4rem}.juego1-modal-art{display:block;width:116px;height:116px;margin:0 auto .9rem;animation:j1ArtPop .5s var(--ease-spring) .12s both}.juego1-modal-art svg{width:100%;height:100%;overflow:visible}.juego1-trophy{filter:drop-shadow(0 8px 18px rgba(245,158,11,.3))}.j1-tr-cup{fill:var(--accent)}.j1-tr-rim{fill:var(--accent-dark)}.j1-tr-handle{fill:none;stroke:var(--accent-dark);stroke-width:5;stroke-linecap:round}.j1-tr-stem{fill:var(--accent-dark)}.j1-tr-base{fill:var(--brand)}.j1-tr-plate{fill:var(--accent);opacity:.85}.j1-tr-mark path{fill:none;stroke:var(--bg-surface);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.juego1-crash{filter:drop-shadow(0 8px 18px rgba(220,38,38,.22))}.j1-crash-body{fill:var(--text-muted);opacity:.55}.j1-crash-head{fill:var(--text-secondary);opacity:.75}.j1-crash-seam,.j1-crash-legs path{fill:none;stroke:var(--text-muted);stroke-width:3;stroke-linecap:round}.j1-crash-x path{fill:none;stroke:var(--error);stroke-width:2.4;stroke-linecap:round}.juego1-modal-title{font-size:1.35rem;font-weight:800;letter-spacing:-.025em;line-height:1.25;margin-bottom:1.1rem}.juego1-modal-title--win,.juego1-modal-title--lose{color:var(--text-primary)}.juego1-modal-body{font-size:.9rem;color:var(--text-secondary);line-height:1.65;margin-bottom:1.4rem}.juego1-modal-body strong{color:var(--text-primary)}.juego1-modal-stats{display:flex;align-items:stretch;justify-content:center;gap:1.2rem;margin-bottom:1.3rem;padding:.8rem 1rem;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius)}.juego1-stat-sep{width:1px;background:var(--border)}.juego1-stat-item{display:flex;flex-direction:column;align-items:center;gap:.1rem;min-width:5.5rem}.juego1-stat-value{font-family:var(--font-mono);font-size:1.45rem;font-weight:700;color:var(--brand);line-height:1.1;font-variant-numeric:tabular-nums}.juego1-stat-value small{font-size:.6em;opacity:.6;margin-left:.05em}.juego1-stat-value--err{color:var(--error)}.juego1-stat-label{font-family:var(--font-mono);font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.09em;font-weight:500}.juego1-modal-buttons{justify-content:center}.juego1-btn{padding:.6rem 1.1rem;border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:600;font-size:.875rem;cursor:pointer;transition:all var(--t) var(--ease);border:1px solid transparent;pointer-events:all;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.juego1-btn--primary{background:var(--brand);color:var(--text-inverse);box-shadow:var(--shadow-brand)}.juego1-btn--primary:hover{background:var(--brand-hover);transform:translateY(-1px)}.juego1-btn--primary:active{transform:translateY(0)}.juego1-btn--secondary{background:transparent;color:var(--text-secondary);border-color:var(--border)}.juego1-btn--secondary:hover{background:var(--bg-elevated);color:var(--text-primary)}@keyframes j1PanelIn{0%{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes j1BugAppear{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes j1BugCrawl{0%{translate:0 0}to{translate:var(--dx, 0) var(--dy, 0)}}@keyframes j1BugBob{0%{transform:translateY(-.8px) rotate(-1.5deg)}to{transform:translateY(.8px) rotate(1.5deg)}}@keyframes j1BugSquash{0%{opacity:1;transform:scale(1)}45%{opacity:1;transform:scale(1.35,.55) translateY(6px)}to{opacity:0;transform:scale(1.6,.15) translateY(9px)}}@keyframes j1BugEscape{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.25) translateY(14px)}}@keyframes j1ParticleFloat{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(var(--dx, 20px),var(--dy, -40px)) scale(.35) rotate(140deg)}}@keyframes j1ScoreFloat{0%{opacity:0;transform:translateY(4px) scale(.9)}20%{opacity:1;transform:translateY(-6px) scale(1)}to{opacity:0;transform:translateY(-46px) scale(.95)}}@keyframes j1CountPop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes j1RingDeplete{0%{stroke-dashoffset:0}to{stroke-dashoffset:339.3}}@keyframes j1ArtPop{0%{opacity:0;transform:scale(.6) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes j1Float{0%{transform:translateY(-5px)}to{transform:translateY(5px)}}@keyframes j1Caret{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes j1Blink{0%,49%{opacity:1}50%,to{opacity:.35}}@keyframes j1BarDanger{0%{opacity:.55}to{opacity:1}}@keyframes j1ReticlePulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(.94)}}@media(max-width:860px){.juego1-hud-tag-text,.juego1-hud-divider{display:none}.juego1-hud-inner{gap:.4rem .8rem}}@media(max-width:600px){.juego1-hud{padding:.5rem .5rem 0}.juego1-hud-inner{width:calc(100vw - 1rem);justify-content:space-between;gap:.35rem .6rem;padding:.45rem .6rem .7rem}.juego1-hud-value{font-size:.85rem}.juego1-ticks,.juego1-hud-close-text,.juego1-hud-close-btn .juego1-kbd{display:none}.juego1-panel-body{padding:1.3rem 1.1rem 1.2rem}.juego1-intro-title{font-size:1.35rem}.juego1-intro-hero{height:92px}.juego1-intro-rules li{font-size:.82rem;gap:.55rem}.juego1-modal-title{font-size:1.15rem}.juego1-modal-art{width:92px;height:92px}.juego1-bug{width:3rem;height:3rem}.juego1-countdown-ring{width:148px;height:148px}.juego1-countdown-number{font-size:4rem}.juego1-btn{flex:1 1 auto}}@media(prefers-reduced-motion:reduce){.juego1-bug,.juego1-bug-art,.j1-legs--l,.j1-legs--r,.j1-antennae,.j1-wing--l,.j1-wing--r,.juego1-intro-hero-bug,.juego1-reticle--hero,.juego1-urgency-overlay{animation:none!important}.juego1-bug{opacity:1}}#root:has(.arango-page){margin-top:0!important}.arango-page{display:flex;flex-direction:column;min-height:100vh;background:#f4f3ee;color:#2c3e2d;font-family:var(--font-sans);position:relative;overflow-x:hidden}.arango-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:56px;background:#2d3b2d;border-bottom:1px solid rgba(0,0,0,.12)}.arango-header-logos{display:flex;align-items:center;gap:12px;text-decoration:none}.arango-logo-link,.javimorales-logo-link{display:flex;align-items:center;transition:opacity .15s ease}.arango-logo-link:hover,.javimorales-logo-link:hover{opacity:.8}.arango-logo{height:22px;width:auto;display:block}.logo-x{color:#ffffff73;font-family:var(--font-sans);font-size:.95rem;font-weight:300;-webkit-user-select:none;user-select:none;line-height:1}.javimorales-logo{height:22px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.95}.arango-lang{display:inline-flex;align-items:center;padding:2px;border-radius:99px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12)}.arango-lang-opt{appearance:none;border:none;background:transparent;padding:4px 11px;border-radius:99px;font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.04em;color:#ffffff8c;cursor:pointer;transition:color .15s ease,background .18s ease}.arango-lang-opt:hover{color:#fff}.arango-lang-opt.active{background:#b9ff38;color:#1a2b1a}.arango-lang-opt.active:hover{color:#1a2b1a}.arango-intro{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:44px 32px 0}.arango-intro-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.arango-intro-text{flex:1}.arango-intro h1{font-size:1.5rem;font-weight:700;color:#1a2b1a;letter-spacing:-.025em;line-height:1.3;margin-bottom:8px;text-align:left}.arango-intro-desc{font-size:.86rem;color:#5a6b5a;line-height:1.6;max-width:520px;text-align:left}.arango-status{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 10px;border-radius:20px;background:#b9ff38;border:none;font-size:.72rem;font-weight:600;color:#1a2b1a;white-space:nowrap;flex-shrink:0;margin-top:4px}.arango-status-dot{width:6px;height:6px;border-radius:50%;background:#2d3b2d;animation:arangoPulse 2.5s ease-in-out infinite}@keyframes arangoPulse{0%,to{opacity:1}50%{opacity:.35}}.arango-meta{display:flex;align-items:center;gap:20px;padding:14px 0;border-top:1px solid rgba(45,59,45,.1);border-bottom:1px solid rgba(45,59,45,.1);margin-bottom:24px}.arango-meta-item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#6b7b6b}.arango-meta-item svg{width:14px;height:14px;opacity:.45}.arango-meta-label{color:#3d4f3d}.arango-controls{position:relative;z-index:1;max-width:1200px;margin:0 auto 20px;padding:0 32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.arango-mode-switch{display:inline-flex;padding:3px;border-radius:22px;background:#2d3b2d0f;border:1px solid rgba(45,59,45,.1);flex-shrink:0}.arango-mode-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:none;background:transparent;border-radius:18px;font-size:.78rem;font-weight:600;color:#5a6b5a;cursor:pointer;transition:all .15s ease;font-family:var(--font-sans);white-space:nowrap}.arango-mode-btn:hover{color:#1a2b1a}.arango-mode-btn.active{background:#2d3b2d;color:#b9ff38;box-shadow:0 1px 4px #2d3b2d26}.arango-filters{position:relative;z-index:1;max-width:1200px;margin:0 auto 20px;padding:0 32px}.arango-filter-row{flex:1;min-width:0;display:flex;align-items:center;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.arango-filter-row::-webkit-scrollbar{display:none}.arango-filter-btn{padding:7px 16px;border-radius:20px;font-size:.78rem;font-weight:500;background:#fff;border:1px solid rgba(45,59,45,.15);color:#5a6b5a;cursor:pointer;transition:all .15s ease;white-space:nowrap;font-family:var(--font-sans)}.arango-filter-btn:hover{background:#fff;color:#1a2b1a;border-color:#2d3b2d4d}.arango-filter-btn.active{background:#2d3b2d;border-color:#2d3b2d;color:#b9ff38;font-weight:600}.arango-table-section{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 32px 64px}.arango-table-card{background:#fff;border:1px solid rgba(45,59,45,.1);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #2d3b2d0a,0 6px 24px #2d3b2d08}.arango-table-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(45,59,45,.08);background:#2d3b2d05}.arango-table-header-left{font-size:.84rem;font-weight:600;color:#1a2b1a}.arango-table-count{font-size:.72rem;color:#6b7b6b;font-family:var(--font-mono)}.arango-table-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(45,59,45,.25) transparent}.arango-table-scroll::-webkit-scrollbar{height:8px}.arango-table-scroll::-webkit-scrollbar-thumb{background:#2d3b2d38;border-radius:99px}.arango-table{width:100%;border-collapse:collapse}.arango-table--fixed{table-layout:fixed;min-width:840px}.arango-table thead th{padding:10px 16px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7b6b;text-align:left;border-bottom:1px solid rgba(45,59,45,.08);background:#2d3b2d06;white-space:nowrap;-webkit-user-select:none;user-select:none}.arango-table thead th:first-child{padding-left:20px}.arango-table thead th:last-child{padding-right:20px}.arango-table tbody tr{transition:background .12s ease}.arango-table tbody tr:hover:not(.arango-model-row){background:#b9ff380a}.arango-table tbody tr:not(:last-child) td{border-bottom:1px solid rgba(45,59,45,.06)}.arango-table tbody td{padding:12px 16px;font-size:.82rem;color:#3d4f3d;vertical-align:middle}.arango-table tbody td:first-child{padding-left:20px}.arango-table tbody td:last-child{padding-right:20px}.arango-model-row td{padding:10px 20px 9px!important;border-bottom:1px solid rgba(45,59,45,.08)!important;background:#f7f6f2;text-align:left}.arango-model-name{display:inline-flex;align-items:center;gap:8px;font-weight:650;font-size:.82rem;color:#1a2b1a;letter-spacing:-.01em}.arango-model-dot{width:8px;height:8px;border-radius:2px;background:#6fae2e;flex-shrink:0}.arango-model-size{font-weight:400;font-size:.72rem;color:#6b7b6b;margin-left:2px}.arango-config{font-family:var(--font-mono);font-size:.78rem;font-weight:450;color:#3d4f3d;white-space:nowrap}.arango-gpu-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:99px;font-size:.65rem;font-weight:700;font-family:var(--font-mono);white-space:nowrap;letter-spacing:.02em;background:#2d3b2d;color:#b9ff38;border:1px solid rgba(185,255,56,.25);box-shadow:0 1px 3px #0000000d}.arango-null{color:#c1c7bd;font-size:.82rem;-webkit-user-select:none;user-select:none}.arango-val{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:#1a2b1a}.arango-val-unit{font-weight:400;color:#6b7b6b;margin-left:2px;font-size:.72rem}.arango-vram{display:inline-flex;flex-direction:column;gap:1px;line-height:1.3}.arango-vram-cap{font-weight:400;color:#6b7b6b;margin-left:1px}.arango-vram-sub{font-family:var(--font-mono);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#8a968a}.arango-error-row,.arango-table tbody tr.arango-error-row{background:#fbedea}.arango-table tbody tr.arango-error-row:hover{background:#f8e3de}.arango-error-cell{white-space:normal}.arango-error-msg{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:.76rem;font-weight:600;color:#b23b2a}.arango-error-msg svg{color:#c0492f;flex-shrink:0}.arango-tip{position:relative;display:inline-flex;align-items:center;vertical-align:middle;margin-left:3px;color:#9aa89a;cursor:help;outline:none}.arango-tip:hover,.arango-tip:focus-visible{color:#6fae2e}.arango-tip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);width:max-content;max-width:260px;padding:9px 12px;border-radius:8px;background:#1a2b1a;color:#eaf0e4;font-size:.72rem;font-weight:400;line-height:1.45;letter-spacing:0;text-transform:none;text-align:left;white-space:normal;opacity:0;visibility:hidden;transition:opacity .15s ease,transform .15s ease;z-index:50;box-shadow:0 8px 24px #1a2b1a40;pointer-events:none}.arango-tip-line{display:block}.arango-tip-line+.arango-tip-line{margin-top:6px;padding-top:6px;border-top:1px solid rgba(234,240,228,.16)}.arango-tip-line.muted{color:#b9c7b3;font-size:.68rem}.arango-tip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1a2b1a}.arango-tip:hover .arango-tip-bubble,.arango-tip:focus-visible .arango-tip-bubble{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.arango-tip-bubble.below{bottom:auto;top:calc(100% + 8px);transform:translate(-50%) translateY(-4px)}.arango-tip-bubble.below:after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:#1a2b1a}.arango-tip:hover .arango-tip-bubble.below,.arango-tip:focus-visible .arango-tip-bubble.below{transform:translate(-50%) translateY(0)}.arango-gpu-wrap{display:inline-flex;align-items:center}.arango-texto{display:inline-flex;flex-direction:column;gap:1px;line-height:1.3}.arango-texto-sub{font-family:var(--font-mono);font-size:.66rem;font-weight:500;color:#8a968a;letter-spacing:-.01em}.arango-data-row.has-results{cursor:pointer}.arango-config-chev{color:#9aa89a;margin-right:4px;transition:transform .18s ease,color .15s ease;vertical-align:-2px}.arango-data-row.has-results:hover .arango-config-chev{color:#6fae2e}.arango-data-row.expanded .arango-config-chev{transform:rotate(90deg);color:#6fae2e}.arango-data-row.synced:not(.arango-model-row),.arango-table tbody tr.arango-data-row.synced{background:#b9ff3824!important}.arango-data-row.synced td{box-shadow:inset 0 1px #6fae2e4d,inset 0 -1px #6fae2e4d}.arango-detail-row td{padding:0!important;background:#f7f9f3;border-bottom:1px solid rgba(45,59,45,.08)!important}.arango-detail-row.synced td{background:#b9ff3814}.arango-detail{padding:16px 20px;animation:arangoDetailIn .22s ease}@keyframes arangoDetailIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.arango-detail-empty{padding:16px 20px;font-size:.76rem;color:#9aa89a;font-style:italic}.arango-detail-head{display:flex;align-items:center;gap:7px;color:#2d3b2d;margin-bottom:5px}.arango-detail-title{font-size:.82rem;font-weight:650;color:#1a2b1a}.arango-detail-prompts{margin-left:auto;padding:3px 10px;border-radius:99px;background:#2d3b2d0f;font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.02em;color:#5a6b5a;white-space:nowrap}.arango-detail-meta{display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:.7rem;color:#6b7b6b;margin-bottom:14px}.arango-detail-meta .sep{color:#c1c7bd}.arango-detail-grpo{color:#4a5a4a;font-weight:600}.arango-acc{max-width:460px}.arango-acc-rows{display:flex;flex-direction:column;gap:11px}.arango-acc-row{display:grid;grid-template-columns:82px 1fr 58px;align-items:center;gap:12px}.arango-acc-name{font-size:.76rem;font-weight:650;color:#3d4f3d}.arango-acc-name.muted{color:#98a398;font-weight:600}.arango-acc-track{position:relative;height:11px;border-radius:99px;background:#2d3b2d12;overflow:hidden}.arango-acc-fill{position:absolute;inset:0 auto 0 0;border-radius:99px;transition:width .6s cubic-bezier(.16,1,.3,1)}.arango-acc-fill.trained{background:linear-gradient(90deg,#6fae2e,#b9ff38);box-shadow:0 0 8px #b9ff3873}.arango-acc-fill.base{background:#c5cfbf}.arango-acc-seg{position:absolute;top:0;bottom:0;transition:width .6s cubic-bezier(.16,1,.3,1),left .6s cubic-bezier(.16,1,.3,1)}.arango-acc-seg.exact.trained{left:0;background:#4f8e22}.arango-acc-seg.set.trained{background:#b9ff38;box-shadow:inset 1.5px 0 #ffffffa6}.arango-acc-seg.exact.base{left:0;background:#9ca89a}.arango-acc-seg.set.base{background:#cdd6c7;box-shadow:inset 1.5px 0 #ffffffb3}.arango-acc-pct{font-family:var(--font-mono);font-size:.82rem;font-weight:700;color:#1a2b1a;text-align:right}.arango-acc-pct.muted{color:#98a398;font-weight:600}.arango-acc-foot{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.arango-acc-legend{display:inline-flex;align-items:center;gap:14px;margin-left:auto}.arango-acc-legend-item{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;color:#6b7b6b}.arango-acc-dot{width:9px;height:9px;border-radius:3px;flex-shrink:0}.arango-acc-dot.exact{background:#4f8e22}.arango-acc-dot.set{background:#b9ff38}.arango-acc-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border-radius:99px;font-family:var(--font-mono);font-size:.78rem;font-weight:700;background:#b9ff38;color:#1a2b1a;white-space:nowrap;box-shadow:0 1px 6px #b9ff3859}.arango-acc-badge.neg{background:#f3d2cc;color:#8e3324;box-shadow:none}.arango-acc-delta-txt{font-size:.76rem;color:#6b7b6b}.arango-bd{max-width:460px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(45,59,45,.08)}.arango-bd-head,.arango-bd-row{display:grid;grid-template-columns:1fr 86px 86px;align-items:center;gap:10px}.arango-bd-head{padding-bottom:8px;margin-bottom:2px;border-bottom:1px solid rgba(45,59,45,.07)}.arango-bd-col{text-align:right;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.arango-bd-col.trained{color:#4f8e22}.arango-bd-col.base{color:#98a398}.arango-bd-row{padding:6px 0}.arango-bd-row+.arango-bd-row{border-top:1px solid rgba(45,59,45,.05)}.arango-bd-label{display:inline-flex;align-items:center;font-size:.76rem;color:#5a6b5a}.arango-bd-val{text-align:right;font-family:var(--font-mono);font-size:.8rem;font-weight:600}.arango-bd-val.trained{color:#1a2b1a}.arango-bd-val.base{color:#8a968a}.arango-bd-val.strong{font-weight:750}.arango-bd-suf{font-weight:400;font-size:.68rem;color:#a7b0a4}.arango-detail-stats{display:flex;flex-wrap:wrap;gap:14px 28px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(45,59,45,.08)}.arango-detail-stat{display:flex;flex-direction:column;gap:3px}.arango-detail-stat-label{font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8a968a}.arango-detail-stat-value{font-family:var(--font-mono);font-size:.82rem;font-weight:650;color:#1a2b1a}.arango-detail-stat-sub{font-family:var(--font-mono);font-size:.66rem;color:#8a968a}.arango-empty-compare{padding:48px 20px;text-align:center;font-size:.85rem;color:#8a968a;background:#fff;border:1px dashed rgba(45,59,45,.18);border-radius:12px}.arango-compare-section,.arango-controls--wide{max-width:1680px}.arango-compare-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;align-items:flex-start}.arango-compare-card{flex:0 0 calc(50% - 8px);min-width:0}.arango-table--fixed thead th,.arango-table--fixed tbody td{white-space:normal;overflow-wrap:normal;word-break:keep-all;padding-left:10px;padding-right:10px}.arango-table--fixed thead th:first-child,.arango-table--fixed tbody td:first-child{padding-left:16px}.arango-table--fixed thead th:last-child,.arango-table--fixed tbody td:last-child{padding-right:16px}.arango-table--fixed thead th{line-height:1.3;vertical-align:bottom}@media(max-width:900px){.arango-compare-card{flex-basis:100%}}.arango-compare-card .arango-config{white-space:normal;line-height:1.35}.arango-table thead th.col-synced{background:#b9ff3829;color:#1a2b1a}.arango-table tbody td.col-synced{background:#b9ff381a;box-shadow:inset 1px 0 #6fae2e4d,inset -1px 0 #6fae2e4d}.arango-table tbody td.cell-focus{background:#b9ff383d;box-shadow:inset 0 0 0 1.5px #6fae2e8c}.arango-notes-section{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:0 32px 56px}.arango-notes{display:grid;grid-template-columns:1fr 1fr;gap:14px}.arango-note{display:flex;gap:10px;padding:14px 16px;background:#fff;border:1px solid rgba(45,59,45,.1);border-left:3px solid #B9FF38;border-radius:10px}.arango-note svg{flex-shrink:0;margin-top:2px;color:#6fae2e}.arango-note p{margin:0;font-size:.78rem;line-height:1.55;color:#5a6b5a}.arango-note strong{color:#1a2b1a;font-weight:650}.arango-note code{font-family:var(--font-mono);font-size:.72rem;padding:1px 5px;border-radius:4px;background:#2d3b2d12;color:#2d3b2d}.arango-footer{margin-top:auto;position:relative;z-index:1;text-align:center;padding:24px 32px;color:#8a968a;font-size:.75rem;border-top:1px solid rgba(45,59,45,.08)}.arango-footer a{color:#3d4f3d;text-decoration:none;font-weight:500;transition:color .15s ease}.arango-footer a:hover{color:#1a2b1a}@media(max-width:768px){.arango-header{padding:0 16px;height:50px}.arango-intro{padding:32px 16px 0}.arango-intro-top{flex-direction:column;gap:12px}.arango-intro h1{font-size:1.3rem}.arango-filters{padding:0 16px}.arango-table-section{padding:0 8px 48px}.arango-table-card{border-radius:8px}.arango-table-card:not(.arango-compare-card) .arango-table{min-width:600px}.arango-meta{flex-wrap:wrap;gap:12px}.arango-controls{padding:0 16px;gap:12px}.arango-notes-section{padding:0 16px 40px}.arango-notes{grid-template-columns:1fr}}@media(max-width:480px){.arango-intro h1{font-size:1.15rem}.arango-logo,.javimorales-logo{height:17px}.arango-header-logos{gap:8px}.logo-x{font-size:.8rem}.arango-tip-bubble{max-width:200px}.arango-acc-row{grid-template-columns:64px 1fr 50px;gap:9px}.arango-compare-card{flex-basis:100%;min-width:0}}
