@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fedc26ee63fcaec8-s.02czzqz1-~g8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:400;font-display:swap;src:url(../media/007e7b3a2585cf73-s.0e1aobv_i~5st.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Libre Bodoni;font-style:normal;font-weight:400;font-display:swap;src:url(../media/bc08847c33d5f82d-s.p.0i0~c_1k9kzpi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fedc26ee63fcaec8-s.02czzqz1-~g8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:500;font-display:swap;src:url(../media/007e7b3a2585cf73-s.0e1aobv_i~5st.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Libre Bodoni;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bc08847c33d5f82d-s.p.0i0~c_1k9kzpi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fedc26ee63fcaec8-s.02czzqz1-~g8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:600;font-display:swap;src:url(../media/007e7b3a2585cf73-s.0e1aobv_i~5st.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Libre Bodoni;font-style:normal;font-weight:600;font-display:swap;src:url(../media/bc08847c33d5f82d-s.p.0i0~c_1k9kzpi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fedc26ee63fcaec8-s.02czzqz1-~g8c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Libre Bodoni;font-style:normal;font-weight:700;font-display:swap;src:url(../media/007e7b3a2585cf73-s.0e1aobv_i~5st.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Libre Bodoni;font-style:normal;font-weight:700;font-display:swap;src:url(../media/bc08847c33d5f82d-s.p.0i0~c_1k9kzpi.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Bodoni Fallback;src:local(Times New Roman);ascent-override:83.42%;descent-override:29.43%;line-gap-override:0.0%;size-adjust:110.77%}.libre_bodoni_768df14b-module__JIVqYW__className{font-family:Libre Bodoni,Libre Bodoni Fallback;font-style:normal}.libre_bodoni_768df14b-module__JIVqYW__variable{--font-display:"Libre Bodoni", "Libre Bodoni Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_6e92a373-module__LNvura__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_6e92a373-module__LNvura__variable{--font-sans:"Inter", "Inter Fallback"}
:root{--ink:#171614;--ink-deep:#0c0c0b;--paper:#ece8dd;--paper-soft:#ded8c9;--muted:#1716149e;--muted-light:#ece8dda8;--line:#17161424;--line-light:#ece8dd29;--coral:#ff5138;--acid:#dbeec0;--green:#25ee68;--max:1480px;--display:var(--font-display,"Libre Bodoni", "Bodoni 72", Didot, Baskerville, "Times New Roman", serif);--sans:var(--font-sans,Inter, Arial, Helvetica, sans-serif)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink-deep)}body{background:var(--ink-deep);color:var(--paper);font-family:var(--sans);letter-spacing:0;text-rendering:geometricprecision;margin:0}a{color:inherit;text-decoration:none}button,textarea,summary{font:inherit}button,summary{cursor:pointer}::selection{background:var(--coral);color:var(--paper)}:focus-visible{outline:2px solid var(--coral);outline-offset:4px}.skip-link{z-index:120;background:var(--ink);color:var(--paper);text-transform:uppercase;border-radius:5px;padding:12px 14px;font-size:.8rem;font-weight:900;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-shell{background:var(--ink-deep);min-height:100svh;overflow-x:clip}.scroll-progress{z-index:110;background:linear-gradient(90deg, var(--coral), var(--acid), var(--green));transform-origin:0;pointer-events:none;will-change:transform;width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(0)}.loader{z-index:100;background:linear-gradient(180deg, #ff51380f, transparent 36%), var(--paper);color:var(--ink);place-items:center;padding:clamp(18px,5vw,54px);display:grid;position:fixed;inset:0;overflow:hidden}.loader:before{content:"";pointer-events:none;background-image:linear-gradient(#1716140e 1px,#0000 1px),linear-gradient(90deg,#1716140e 1px,#0000 1px);background-size:62px 62px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}html[data-intro-played=true] .loader{opacity:0;visibility:hidden;display:none}html[data-intro-played=true] .loader-line{transform:scaleX(1)}.loader-panel{z-index:1;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ece8dddb;width:min(100%,980px);padding:clamp(30px,4.8vw,48px);position:relative;box-shadow:0 30px 90px #1716141f}.loader-kicker{color:var(--coral);letter-spacing:.14em;text-transform:uppercase;margin:0 0 20px;font-size:.78rem;font-weight:900}.loader-title{max-width:880px;font-family:var(--display);text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(3.05rem,5.35vw,5.65rem);font-weight:700;line-height:.96}.loader-copy{color:#171614bd;gap:18px;max-width:720px;margin-top:24px;font-size:clamp(1.04rem,1.6vw,1.22rem);font-weight:900;line-height:1.55;display:grid}.loader-copy p{margin:0}.loader-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.loader-action{text-transform:uppercase;border-radius:5px;justify-content:center;align-items:center;min-height:52px;padding:0 18px;font-size:.78rem;font-weight:900;line-height:1;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.loader-action:hover,.loader-action:focus-visible,.loader-cv-links a:hover,.loader-cv-links a:focus-visible{transform:translateY(-3px)}.loader-action.is-primary{border:1px solid var(--ink);background:var(--ink);color:var(--paper)}.loader-action.is-secondary{color:var(--ink);background:0 0;border:1px solid #17161452}.loader-cv-links{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.loader-cv-links a{color:#171614c7;text-transform:uppercase;border:1px solid #1716142e;border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:0 13px;font-size:.76rem;font-weight:900;transition:transform .18s,background .18s,color .18s;display:inline-flex}.loader-cv-links a:hover,.loader-cv-links a:focus-visible{background:var(--ink);color:var(--paper)}.loader-email{color:#17161485;margin-top:28px;font-size:.9rem;font-weight:900;display:inline-flex}.loader-line{background:var(--coral);width:100%;height:6px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav-shell{z-index:50;color:#fff;mix-blend-mode:difference;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 32px;display:grid;position:fixed;inset:0 0 auto}.brand-mark{width:48px;height:48px;font-family:var(--display);text-transform:uppercase;align-content:center;font-size:1.2rem;font-weight:700;line-height:.9;display:inline-grid}.brand-mark span:last-child{padding-left:18px}.nav-shell nav{text-transform:uppercase;justify-content:center;gap:24px;font-size:.82rem;font-weight:900;display:flex}.nav-shell a{transition:transform .18s,opacity .18s}.nav-shell a:hover,.nav-shell a:focus-visible{opacity:.72;transform:translateY(-2px)}.nav-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.nav-language{border:1px solid #ffffff61;border-radius:3px;align-items:center;gap:2px;min-height:48px;padding:4px;display:inline-flex}.nav-language button,.nav-cv{text-transform:uppercase;border-radius:2px;place-items:center;min-height:38px;font-size:.78rem;font-weight:900;line-height:1;transition:transform .18s,border-color .18s,background .18s,color .18s;display:inline-grid}.nav-language button{color:#fff;cursor:pointer;background:0 0;border:0;width:40px}.nav-language button.is-active{color:#000;background:#fff}.nav-cv{color:#fff;border:1px solid #61ffdecc;min-width:52px;padding:0 12px}.nav-language button:hover,.nav-language button:focus-visible,.nav-cv:hover,.nav-cv:focus-visible{transform:translateY(-2px)}.nav-cta{color:#000;text-transform:uppercase;background:#fff;border-radius:5px;align-items:center;gap:10px;min-height:52px;padding:0 14px 0 6px;font-size:.82rem;font-weight:900;display:inline-flex}.nav-cta-thumb{width:40px;height:40px;color:var(--paper);font-family:var(--display);background:linear-gradient(140deg,#ffffff29,#0000 45%),#2a2926;border-radius:3px;place-items:center;font-size:.88rem;display:grid}.hero-section{background:var(--paper);min-height:100svh;color:var(--ink);padding:106px 32px 34px;position:relative;overflow:hidden}.hero-section.has-hero-video{isolation:isolate;background:var(--ink-deep);color:var(--paper)}.hero-section.has-hero-video:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(at 73% 54%,#ece8dd1a,#0000 34%),radial-gradient(at 78% 46%,#5d7eff1c,#0000 42%);position:absolute;inset:0}.hero-video-layer{z-index:0;pointer-events:none;background:radial-gradient(circle at 78% 24%, #435bff42, transparent 32%), radial-gradient(circle at 24% 68%, #ff51381f, transparent 28%), linear-gradient(115deg, #05060af5 0%, #070a12d6 44%, #0c0c0bf5 100%), url(/videos/hero-rcr-poster.webp), var(--ink-deep);background-position:50%;background-size:cover;position:absolute;inset:0;overflow:hidden}.hero-video{object-fit:cover;opacity:.74;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-video-overlay{background:radial-gradient(at 70% 52%,#05080f0f,#05080f80 72%),linear-gradient(90deg,#080807e6 0%,#080807b8 32%,#08080752 62%,#08080785 100%),linear-gradient(#080807a3 0%,#0808071f 44%,#210805d1 100%);position:absolute;inset:0}.hero-kicker{z-index:4;width:min(100%, var(--max));color:#171614b8;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;margin:0 auto 36px;font-size:.78rem;font-weight:900;display:flex;position:relative}.has-hero-video .hero-kicker{color:#ece8ddc2}.hero-title{z-index:4;width:min(100%,1430px);font-family:var(--display);text-transform:uppercase;margin:0 auto;font-size:clamp(5.4rem,7.15vw,7.95rem);font-weight:700;line-height:1.1;position:relative}.has-hero-video .hero-title{text-shadow:0 18px 42px #00000094}.hero-line{white-space:nowrap;padding-bottom:.18em;display:block;overflow:hidden}.hero-line-inner{display:block}.hero-line-combo{align-items:center;gap:38px;display:flex}.hero-script{color:var(--coral);text-transform:lowercase;font-family:Brush Script MT,Segoe Script,cursive;font-size:.48em;font-style:normal;font-weight:700;line-height:1;display:inline-block;transform:rotate(-4deg)}.hero-identity{z-index:2;pointer-events:none;width:min(43vw,620px);min-width:470px;position:absolute;bottom:-42px;left:70%;transform:translate(-50%)}.identity-card{min-height:700px;color:var(--paper);position:relative;overflow:visible}.identity-card:before{content:"";filter:blur(22px);opacity:.72;background:radial-gradient(at 50% 76%,#0c0c0b75,#0000 68%);height:38%;position:absolute;bottom:6%;left:22%;right:22%}.identity-card:after{content:"";z-index:3;mix-blend-mode:screen;pointer-events:none;background:linear-gradient(#0000,#ff513829,#ff51388a);height:28%;position:absolute;inset:auto 0 0}.identity-label,.identity-status{z-index:4;color:#ece8ddb8;text-transform:uppercase;justify-content:space-between;font-size:.72rem;font-weight:900;display:flex;position:absolute;left:54px;right:54px}.identity-label{top:96px}.identity-status{bottom:44px}.identity-portrait{z-index:2;position:absolute;inset:92px -24% 0;overflow:visible}.identity-ring{z-index:2;mix-blend-mode:screen;opacity:.5;pointer-events:none;border:1px solid #ece8dd38;border-radius:50%;position:absolute;inset:16% 30% 28%}.identity-ring:before,.identity-ring:after{content:"";border-radius:inherit;position:absolute}.identity-ring:before{border:1px solid #ece8dd29;inset:16%}.identity-ring:after{border:1px solid #ff51386b;inset:32%}.identity-photo{z-index:1;filter:grayscale()contrast(1.12)brightness(.88);background-image:url(/ricardo-hero-cutout-arms-crossed.png);background-position:bottom;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 84%,#000000db 92%,#0000 100%);mask-image:linear-gradient(#000 0% 84%,#000000db 92%,#0000 100%)}.identity-photo:after{content:none}.identity-scan{z-index:5;background:linear-gradient(#0000,#fff3,#0000);width:100%;height:90px;position:absolute;top:-90px;left:0}.has-hero-video .identity-scan{opacity:.36}.has-hero-video .identity-card:after{background:linear-gradient(#0000,#ff513814,#ff51384d)}.hero-coral{z-index:1;pointer-events:none;background:linear-gradient(#ff513800,#ff5138e6);height:42%;position:absolute;inset:auto 0 0}.has-hero-video .hero-coral{mix-blend-mode:screen;opacity:.62;background:linear-gradient(#ff513800,#ff513857);height:48%}.hero-note{z-index:5;color:#171614e0;max-width:390px;margin:0;font-size:1rem;line-height:1.45;position:absolute;bottom:34px;left:32px}.has-hero-video .hero-note{color:#ece8dddb;text-shadow:0 12px 28px #0000007a}.hero-actions{z-index:5;gap:12px;display:flex;position:absolute;bottom:108px;right:32px}.hero-action,.contact-actions a,.ai-chat-form button{text-transform:uppercase;border-radius:5px;justify-content:center;align-items:center;min-height:50px;font-size:.82rem;font-weight:900;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.hero-action{gap:10px;padding:0 18px}.hero-action:hover,.hero-action:focus-visible,.contact-actions a:hover,.contact-actions a:focus-visible{transform:translateY(-4px)}.hero-action.is-primary{background:var(--ink);color:var(--paper)}.has-hero-video .hero-action.is-primary{background:var(--paper);color:var(--ink)}.hero-action.is-secondary,.contact-actions a{color:inherit;border:1px solid}.has-hero-video .hero-action.is-secondary{color:var(--paper);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ece8dd0f;border-color:#ece8dd9e}.action-thumb{width:34px;height:34px;color:var(--paper);font-family:var(--display);background:linear-gradient(145deg,#ece8dd38,#0000),#3a3935;border-radius:3px;place-items:center;display:grid}.signal-strip{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.signal-marquee-track{color:#171614b8;text-transform:uppercase;white-space:nowrap;gap:42px;width:max-content;padding:20px 0;font-size:.82rem;font-weight:900;display:flex}.experience-summary,.proposal-section,.about-section,.demos-section,.contact-section{padding:128px 32px}.experience-summary{border-top:1px solid var(--line);background:var(--paper);color:var(--ink)}.proposal-section,.demos-section{background:var(--ink-deep);color:var(--paper)}.cases-heading p{color:var(--coral);text-transform:uppercase;margin:0 0 24px;font-size:.82rem;font-weight:900}.experience-summary-inner,.proposal-section>h2,.proposal-grid,.about-layout,.skills-map,.education-list,.demos-section>h2,.demo-index{width:min(100%, var(--max));margin-left:auto;margin-right:auto}.experience-summary-inner{grid-template-columns:minmax(0,.58fr) minmax(420px,.86fr);align-items:end;gap:64px;display:grid}.proposal-section h2,.experience-summary h2,.about-section h2,.demos-section h2,.contact-section h2,.cases-heading h2{font-family:var(--display);text-transform:uppercase;text-wrap:balance;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:0;font-size:clamp(3.45rem,4.85vw,5.15rem);font-weight:700;line-height:1.02}.proposal-section h2,.experience-summary h2,.demos-section h2{max-width:1180px}.summary-grid{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.summary-grid article{background:var(--paper);min-height:210px;padding:22px}.summary-grid span,.summary-grid strong{text-transform:uppercase;font-size:.78rem;font-weight:900;display:block}.summary-grid span{color:var(--coral)}.summary-grid strong{color:var(--ink);margin-top:38px}.summary-grid p{color:var(--muted);margin:16px 0 0;line-height:1.52}.proposal-grid{background:var(--line-light);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:64px;display:grid}.proposal-grid article{background:#11110f;min-height:350px;padding:28px}.proposal-grid span,.proposal-grid small{text-transform:uppercase;font-size:.78rem;font-weight:900;display:block}.proposal-grid span{color:var(--coral)}.proposal-grid small{color:var(--muted-light);margin-top:42px}.proposal-grid h3{text-transform:uppercase;margin:18px 0 0;font-size:1.35rem;line-height:1.08}.proposal-grid p{color:var(--muted-light);margin:22px 0 0;line-height:1.55}.cases-section{background:var(--ink-deep);color:var(--paper);position:relative}.cases-heading{z-index:3;text-align:center;place-items:center;min-height:100svh;padding:96px 32px;display:grid;top:0}.cases-heading p{color:var(--paper)}.cases-heading em{color:var(--coral);text-transform:lowercase;font-family:Brush Script MT,Segoe Script,cursive;font-size:1.2em;font-style:normal}.cases-heading h2{color:var(--paper);font-size:clamp(4.45rem,6.25vw,6.55rem)}.cases-horizontal{z-index:4;background:var(--ink-deep);min-height:100svh;position:relative;overflow:hidden}.cases-list{z-index:1;will-change:transform;align-items:stretch;width:max-content;min-height:100svh;display:flex;position:relative}.case-study{width:100vw;min-height:100svh;padding:96px max(32px, calc((100vw - var(--max)) / 2 + 32px));isolation:isolate;perspective:1100px;flex:0 0 100vw;grid-template-columns:minmax(320px,.42fr) minmax(0,1fr);align-items:center;gap:52px;display:grid;position:relative;overflow:hidden}.case-study.is-reverse{grid-template-columns:minmax(0,1fr) minmax(320px,.42fr)}.case-study.is-reverse .case-media{grid-column:2}.case-study.is-reverse .case-copy{grid-area:1/1}.case-study.has-app-preview{grid-template-columns:minmax(0,.74fr) minmax(430px,.62fr)}.case-study.is-reverse.has-app-preview{grid-template-columns:minmax(430px,.62fr) minmax(0,.74fr)}.case-lines{pointer-events:none;position:absolute;inset:0}.case-line{will-change:transform;background:#ece8ddd1;width:2px;height:24%;position:absolute;top:18%}.case-line:first-child{left:8%}.case-line:nth-child(2){top:28%;left:13%}.case-line:nth-child(3){top:15%;right:10%}.case-media{z-index:1;will-change:transform;position:relative}.case-media-link{color:inherit;outline-offset:8px;display:block}.case-media-link .case-device{transition:filter .22s,transform .22s}.case-media-link:hover .case-device,.case-media-link:focus-visible .case-device{filter:contrast(1.08)saturate(1.04);transform:translateY(-4px)}.case-device{background:radial-gradient(circle at 72% 18%, #ff513847, transparent 22%), linear-gradient(135deg, var(--paper) 0%, #bdb5a7 100%);min-height:440px;color:var(--ink);border-radius:6px;position:relative;overflow:hidden}.case-device:before{content:"";background-image:linear-gradient(#1716141f 1px,#0000 1px),linear-gradient(90deg,#1716141f 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0}.case-device.is-web-catalog{color:var(--paper);background:radial-gradient(circle at 78% 16%,#ff513847,#0000 28%),linear-gradient(142deg,#0b0c0a 0%,#171614 50%,#ece8dd 50.2%,#d7cfbf 100%)}.case-device.is-web-catalog:before{opacity:.28;background-image:linear-gradient(#ece8dd21 1px,#0000 1px),linear-gradient(90deg,#ece8dd21 1px,#0000 1px)}.case-device>span{z-index:1;color:#171614b8;text-transform:uppercase;font-size:.72rem;font-weight:900;position:absolute;top:22px;left:22px}.case-device.is-web-catalog>span{color:#ece8ddb8}.case-media-action{z-index:2;background:var(--ink);color:var(--paper);text-transform:uppercase;border-radius:999px;padding:9px 12px;font-size:.7rem;font-style:normal;font-weight:900;line-height:1;position:absolute;top:22px;right:22px}.case-device.is-web-catalog .case-media-action{background:var(--coral);color:var(--paper)}.case-web-catalog-visual{z-index:2;grid-template-rows:auto 1fr auto auto;grid-template-columns:1.05fr .95fr;gap:12px;display:grid;position:absolute;inset:70px 24px 24px}.case-web-browser,.case-web-feature,.case-web-products,.case-web-stats{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0c0ba8;border:1px solid #ece8dd38;box-shadow:0 18px 42px #00000047}.case-web-browser{text-transform:uppercase;border-radius:999px;grid-column:1/-1;align-items:center;gap:10px;padding:10px 12px;font-size:.68rem;font-weight:900;display:flex}.case-web-browser strong{color:var(--coral);font-family:var(--display);margin-right:auto;font-size:1.35rem;line-height:.8}.case-web-browser i,.case-web-stats span{color:#ece8ddb8;font-style:normal}.case-web-hero{background:linear-gradient(#0000 0%,#000000ad 100%),linear-gradient(135deg,#3a332f 0%,#f16d4d 58%,#f6e7cf 100%);border-radius:6px;flex-direction:column;justify-content:end;min-height:178px;padding:18px;display:flex}.case-web-hero small,.case-web-feature span{color:#ece8ddb8;text-transform:uppercase;font-size:.68rem;font-weight:900}.case-web-hero b{max-width:11ch;font-family:var(--display);text-transform:uppercase;margin-top:8px;font-size:clamp(2.2rem,5vw,4rem);line-height:.82;display:block}.case-web-feature{border-radius:6px;flex-direction:column;justify-content:end;padding:18px;display:flex}.case-web-feature strong{text-transform:uppercase;margin-top:8px;font-size:1rem;line-height:1.05;display:block}.case-web-feature p{color:#ece8dd9e;margin:10px 0 0;font-size:.72rem;font-weight:900}.case-web-products{border-radius:6px;grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px;display:grid}.case-web-products b{text-transform:uppercase;background:#ece8dd1a;border-radius:4px;place-items:end start;min-height:58px;padding:10px;font-size:.72rem;display:grid}.case-web-products b:nth-child(2){background:var(--coral)}.case-web-stats{text-transform:uppercase;border-radius:999px;grid-column:1/-1;justify-content:space-between;padding:10px 14px;font-size:.68rem;font-weight:900;display:flex}.case-bars{z-index:1;grid-template-columns:repeat(4,1fr);align-items:end;gap:10px;height:160px;display:grid;position:absolute;bottom:28px;left:28px;right:28px}.case-bars i{background:var(--ink);border-radius:4px 4px 0 0;display:block}.case-bars i:first-child{height:42%}.case-bars i:nth-child(2){background:var(--coral);height:76%}.case-bars i:nth-child(3){height:58%}.case-bars i:nth-child(4){height:92%}.case-mini-grid{z-index:1;gap:8px;display:grid;position:absolute;top:82px;left:28px}.case-mini-grid b{text-transform:uppercase;background:#ece8dd8a;border:1px solid #17161442;border-radius:999px;padding:8px 10px;font-size:.7rem}.case-device.is-talent-map{background:#080912;border:1px solid #ece8dd2e;min-height:min(58vh,540px);box-shadow:0 1.4rem 3.5rem #00000047,inset 0 1px #ffffff1a}.case-device.is-talent-map:before{z-index:2;background:linear-gradient(#080912d1 0%,#0000 18%),linear-gradient(90deg,#08091247,#0000 34% 70%,#0809125c)}.case-device.is-talent-map>span{z-index:3;color:#ece8dddb}.case-device.is-app-screenshot{aspect-ratio:16/9;background:#060605;border:1px solid #ece8dd2e;min-height:0;box-shadow:0 1.4rem 3.5rem #0000004d,inset 0 1px #ffffff14}.case-device.is-app-screenshot:before{z-index:2;background:linear-gradient(#06060529 0%,#0000 18% 78%,#06060533),linear-gradient(90deg,#06060529,#0000 20% 82%,#0606052e)}.case-device.is-app-screenshot>span{z-index:3;color:#ece8ddeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0606059e;border:1px solid #ece8dd33;border-radius:999px;padding:8px 10px;line-height:1;top:14px;left:14px}.case-app-preview{z-index:1;display:grid;position:absolute;inset:0;overflow:hidden}.case-app-preview img{object-fit:cover;object-position:50% 50%;filter:saturate(1.03)contrast(1.02);width:100%;height:100%;transform:none}.case-app-preview span{display:none}.case-copy{z-index:2;text-align:center;will-change:transform;position:relative}.case-kicker{color:#ece8ddb8;text-transform:uppercase;justify-content:center;gap:12px;margin:0 0 12px;font-size:.84rem;font-weight:900;display:flex}.case-kicker span{color:var(--coral);font-size:2.1rem;line-height:.72}.case-title{max-width:780px;font-family:var(--display);text-transform:uppercase;text-wrap:balance;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;margin:0 auto;font-size:clamp(3.35rem,4.75vw,5.05rem);font-weight:700;line-height:1}.case-body{max-width:720px;color:var(--muted-light);margin:26px auto 0;font-size:1.06rem;line-height:1.55}.case-stack{flex-wrap:wrap;justify-content:center;gap:8px;margin:26px 0 0;padding:0;list-style:none;display:flex}.case-stack li,.skill-chip{text-transform:uppercase;border:1px solid;border-radius:999px;padding:9px 12px;font-size:.72rem;font-weight:900}.case-link{background:var(--paper);min-height:42px;color:var(--ink);text-transform:uppercase;border-radius:5px;justify-content:center;align-items:center;margin-top:28px;padding:0 16px;font-size:.76rem;font-weight:900;transition:transform .18s,background .18s;display:inline-flex}.case-link:hover,.case-link:focus-visible{background:var(--coral);color:var(--paper);transform:translateY(-3px)}.about-section{background:var(--paper);color:var(--ink)}.about-layout{grid-template-columns:minmax(0,.62fr) minmax(420px,.8fr);align-items:start;gap:70px;display:grid}.about-layout h2{position:sticky;top:96px}.about-layout>div:first-child p{max-width:600px;color:var(--muted);margin:28px 0 0;font-size:1.08rem;line-height:1.6}.experience-list{border-top:1px solid var(--line)}.experience-row{border-bottom:1px solid var(--line);grid-template-columns:54px 1fr auto;gap:22px;padding:30px 0;display:grid}.experience-row>span,.experience-row strong{color:var(--coral);font-weight:900}.experience-row h3{text-transform:uppercase;margin:0 0 8px;font-size:1.5rem}.experience-row p{color:var(--muted);margin:0;line-height:1.45}.experience-row ul{color:#171614b8;grid-column:2/-1;margin:0;padding-left:18px;line-height:1.58}.skills-map{border-top:1px solid var(--line);margin-top:104px}.skill-band{border-bottom:1px solid var(--line);grid-template-columns:260px 1fr;gap:32px;padding:26px 0;display:grid}.skill-band h3{text-transform:uppercase;margin:0;font-size:1.35rem}.skill-band div{flex-wrap:wrap;gap:9px;display:flex}.skill-chip{color:var(--ink);transition:transform .18s,background .18s,color .18s}.skill-chip:hover{background:var(--ink);color:var(--paper);transform:translateY(-3px)}.education-list{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;margin-top:72px;display:grid}.education-list article{background:var(--paper);min-height:230px;padding:26px}.education-list span{color:var(--coral);text-transform:uppercase;font-size:.74rem;font-weight:900}.education-list h3{text-transform:uppercase;margin:40px 0 14px;font-size:1.45rem}.education-list p{color:var(--muted);margin:0;line-height:1.48}.demo-index{border-top:1px solid var(--line-light);margin-top:70px;display:grid}.demo-link{border-bottom:1px solid var(--line-light);min-height:118px;color:var(--paper);grid-template-columns:70px 170px minmax(240px,.55fr) minmax(320px,1fr) 76px;align-items:center;gap:22px;display:grid;position:relative;overflow:hidden}.demo-link:before{content:"";background:var(--paper);transform-origin:bottom;transition:transform .26s;position:absolute;inset:0;transform:scaleY(0)}.demo-link>*{z-index:1;position:relative}.demo-link:hover,.demo-link:focus-visible{color:var(--ink)}.demo-link:hover:before,.demo-link:focus-visible:before{transform:scaleY(1)}.demo-link span{color:var(--coral);font-family:var(--display);font-size:2.15rem;line-height:1}.demo-link small{color:currentColor;text-transform:uppercase;font-size:.74rem;font-weight:900}.demo-link strong{font-family:var(--display);text-transform:uppercase;font-size:1.95rem;line-height:1}.demo-link p{color:var(--muted-light);margin:0;line-height:1.48}.demo-link:hover p,.demo-link:focus-visible p{color:#171614b3}.demo-link b{text-transform:uppercase;border:1px solid;border-radius:999px;justify-self:end;padding:9px 11px;font-size:.7rem}.contact-section{width:100%;min-height:92svh;padding-right:max(32px, calc((100vw - var(--max)) / 2 + 32px));padding-bottom:150px;padding-left:max(32px, calc((100vw - var(--max)) / 2 + 32px));background:var(--paper);color:var(--ink);grid-template-columns:minmax(320px,.42fr) minmax(0,1fr);align-items:center;gap:72px;margin:0;display:grid}.faq-list{background:var(--line);gap:1px;display:grid}.faq-list details{background:var(--paper);padding:22px 0}.faq-list summary{text-transform:uppercase;font-size:1.1rem;font-weight:900;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list p{color:var(--muted);margin:16px 0 0;line-height:1.58}.contact-actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.contact-actions a{padding:0 18px}.contact-actions a:first-child{background:var(--ink);color:var(--paper)}.ai-chat{--chat-bg:#0f0f0df5;--chat-surface:#ece8dd16;--chat-surface-strong:#ece8dd24;--chat-line:#ece8dd2e;--chat-muted:#ece8dd94;--chat-coral-soft:#ff513829;--chat-coral-line:#ff513880;z-index:60;color:var(--paper);position:fixed;bottom:22px;right:22px}.ai-chat-toggle{border:1px solid var(--chat-line);min-height:52px;color:var(--paper);text-transform:uppercase;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(135deg,#171614eb,#0c0c0bdb);border-radius:999px;align-items:center;gap:10px;padding:0 18px;font-weight:900;display:inline-flex;box-shadow:0 16px 48px #00000052}.ai-chat-toggle span{background:var(--coral);border-radius:50%;width:10px;height:10px;box-shadow:0 0 18px #ff5138bf}.ai-chat-panel{border:1px solid var(--chat-line);background:linear-gradient(180deg, #ff51380e, transparent 32%), linear-gradient(135deg, #ece8dd0e, transparent 36%), var(--chat-bg);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-radius:8px;flex-direction:column;width:min(420px,100vw - 28px);height:min(720px,100svh - 112px);display:flex;position:absolute;bottom:68px;right:0;overflow:hidden;box-shadow:0 30px 86px #0000007a,inset 0 1px #ece8dd14}.ai-chat-header{border-bottom:1px solid var(--chat-line);justify-content:space-between;gap:18px;padding:20px;display:flex}.ai-chat-header span,.ai-chat-message span,.ai-chat-disclaimer,.ai-chat-form label,.ai-chat-form-row span{color:var(--chat-muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.ai-chat-header h2{text-transform:uppercase;margin:6px 0;font-size:1.1rem}.ai-chat-header p{color:#ece8ddad;margin:0;font-size:.86rem;line-height:1.45}.ai-chat-close{border:1px solid var(--chat-line);width:38px;height:38px;color:var(--paper);background:#ece8dd0a;border-radius:50%;flex:none}.ai-chat-messages{flex:190px;min-height:0;padding:18px;overflow:auto}.ai-chat-message{margin-bottom:14px}.ai-chat-message p,.ai-chat-loading,.ai-chat-error{border-radius:8px;margin:6px 0 0;padding:13px 14px;line-height:1.5}.ai-chat-message.is-assistant p{background:var(--chat-surface);color:#ece8dde6;border:1px solid #ece8dd14}.ai-chat-message.is-user p{color:#140f0d;background:linear-gradient(135deg,#ff5138f0,#ff7454e0);border:1px solid #ff513861}.ai-chat-suggestions{gap:8px;max-height:156px;margin:0;padding:0 18px 18px;list-style:none;display:grid;overflow:auto}.ai-chat-suggestions button{border:1px solid var(--chat-line);color:#ece8dddb;text-align:left;background:#ece8dd09;border-radius:8px;width:100%;padding:10px}.ai-chat-form{border-top:1px solid var(--chat-line);gap:10px;padding:18px;display:grid}.ai-chat-form textarea{resize:none;border:1px solid var(--chat-line);width:100%;color:var(--paper);outline-offset:2px;background:#ece8dd13;border-radius:8px;outline:2px solid #0000;padding:12px}.ai-chat-form textarea:focus{border-color:var(--chat-coral-line);background:#ece8dd1a}.ai-chat-form textarea:focus-visible{outline-offset:2px;outline:2px solid #ff51389e}.ai-chat-form-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-chat-form button{background:var(--coral);color:#120f0d;border:0;border-radius:6px;min-height:40px;padding:0 16px;box-shadow:0 14px 34px #ff513838}.ai-chat-form button:disabled,.ai-chat-suggestions button:disabled{cursor:not-allowed;opacity:.45}.ai-chat-loading{background:var(--chat-coral-soft);color:#ff9b87;border:1px solid #ff51382e}.ai-chat-error{color:#ffb29f;background:#ff513824;border:1px solid #ff513847;margin:0 18px 12px}.ai-chat-disclaimer{margin:0;padding:0 18px 18px;line-height:1.45}@media (max-width:1240px){.hero-title{font-size:5.95rem}.hero-identity{width:min(54vw,620px);min-width:0}.proposal-section h2,.experience-summary h2,.about-section h2,.demos-section h2,.contact-section h2{font-size:3.62rem}.case-title{font-size:3.82rem}.cases-heading h2{font-size:5rem}.demo-link{grid-template-columns:58px 130px minmax(210px,.5fr) minmax(260px,1fr) 70px}}@media (max-width:920px){.nav-shell{color:var(--ink);mix-blend-mode:normal;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ece8ddf0;border-bottom:1px solid #1716141a;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;padding:12px}.nav-shell nav{scrollbar-width:none;white-space:nowrap;justify-content:flex-start;gap:14px;font-size:.68rem;display:flex;overflow-x:auto}.nav-actions{gap:8px}.nav-language{border-color:#17161438;min-height:44px}.nav-language button{width:34px;min-height:34px;color:var(--ink)}.nav-language button.is-active{background:var(--ink);color:var(--paper)}.nav-cv{min-width:44px;min-height:44px;color:var(--ink);border-color:#008f7bb8}.nav-shell nav::-webkit-scrollbar{display:none}.nav-cta{min-height:44px}.nav-cta-thumb{width:34px;height:34px}.hero-section{min-height:auto;padding:96px 16px 0}.hero-video-layer{background-position:58% 42%}.hero-video,.has-hero-video .identity-scan{display:none}.hero-kicker{gap:8px;margin-bottom:28px;display:grid}.hero-title{font-size:3.75rem;line-height:1.12}.hero-line{white-space:normal;padding-bottom:.18em}.hero-line-combo{margin-bottom:.08em;padding-bottom:.24em;display:block}.hero-script{margin-top:20px;margin-bottom:.28em;font-size:.54em;line-height:1.14;display:block}.hero-identity{width:min(100%,500px);margin:26px auto 0;position:relative;bottom:auto;left:auto;transform:none}.identity-card{min-height:470px}.identity-card:before{height:58%;inset:auto 6% 0}.identity-label,.identity-status{left:34px;right:34px}.identity-label{top:72px}.identity-portrait{inset:0 -30%}.identity-photo{background-size:auto 108%}.hero-coral{height:28%}.hero-note,.hero-actions{position:relative;bottom:auto;left:auto;right:auto}.hero-note{max-width:none;margin:28px 0 0}.hero-actions{flex-wrap:wrap;margin-top:22px;padding-bottom:26px}.proposal-section,.experience-summary,.about-section,.demos-section,.contact-section{padding:82px 16px}.proposal-section h2,.experience-summary h2,.about-section h2,.demos-section h2,.contact-section h2,.cases-heading h2{font-size:2.58rem}.proposal-grid,.experience-summary-inner,.summary-grid,.about-layout,.contact-section,.education-list{grid-template-columns:1fr}.proposal-grid article{min-height:0}.cases-heading{min-height:auto;padding:82px 16px 36px}.case-study,.case-study.is-reverse{flex:none;grid-template-columns:1fr;gap:34px;width:auto;min-height:auto;padding:82px 16px}.cases-horizontal{min-height:auto;overflow:visible}.cases-list{will-change:auto;width:auto;min-height:0;display:block}.case-study.has-app-preview,.case-study.is-reverse.has-app-preview{grid-template-columns:1fr}.case-study.is-reverse .case-media,.case-study.is-reverse .case-copy{grid-area:auto}.case-device{min-height:320px}.case-title{font-size:2.72rem}.case-kicker{align-items:center}.about-layout h2{position:static}.experience-row,.skill-band{grid-template-columns:1fr}.experience-row ul{grid-column:auto}.demo-link{grid-template-columns:1fr;gap:10px;min-height:0;padding:24px 0}.demo-link b{justify-self:start}.faq-list details{padding:20px 0}.contact-section{padding-bottom:132px}.ai-chat{bottom:14px;right:14px}.ai-chat-panel{height:calc(100svh - 96px)}.ai-chat-header{padding:17px 18px}.ai-chat-header h2{font-size:1rem}.ai-chat-header p{font-size:.82rem}.ai-chat-messages{flex-basis:210px}.ai-chat-suggestions{max-height:138px;padding-bottom:14px}.ai-chat-suggestions button{padding:9px 10px}.ai-chat-toggle{min-height:44px;padding:0 13px;font-size:.76rem}}@media (max-width:520px){.loader{align-items:start;padding:14px;overflow-y:auto}.loader:before{-webkit-mask-image:none;mask-image:none}.loader-panel{margin:auto 0;padding:28px 18px}.loader-copy{gap:12px}.loader-action{width:100%}.loader-email{overflow-wrap:anywhere;max-width:100%}.nav-cta{padding:0 12px}.nav-cta .nav-cta-thumb{display:none}.nav-cta span:last-child{display:inline}.nav-shell{grid-template-columns:auto auto;justify-content:space-between}.nav-shell nav{display:none}.hero-title{font-size:2.9rem}.hero-line-combo{padding-bottom:.34em}.hero-script{margin-top:16px;font-size:.5em}.hero-action{width:100%}.proposal-section h2,.experience-summary h2,.about-section h2,.demos-section h2,.contact-section h2,.case-title,.cases-heading h2{font-size:2rem;line-height:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.hero-video{display:none}}
