@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJbecmNE.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJnecmNE.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:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1JlFc-K.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:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1JlFc-K.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:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1JlFc-K.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:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLCz7Z1xlFQ.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:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDD4Z11lFc-K.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDD4Z1JlFc-K.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:Poppins;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDD4Z1xlFQ.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{color-scheme:dark;scroll-behavior:smooth;--motion-smooth: cubic-bezier(.22, 1, .36, 1);--motion-soft: cubic-bezier(.2, .8, .2, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem;scrollbar-gutter:stable}body{--bg-primary: #120709;--bg-secondary: rgba(43, 15, 17, .78);--surface: rgba(255, 255, 255, .08);--surface-strong: rgba(255, 255, 255, .14);--surface-soft: rgba(255, 255, 255, .05);--border: rgba(255, 255, 255, .14);--shadow: 0 24px 70px rgba(0, 0, 0, .22);--text-primary: #fff5f3;--text-secondary: rgba(255, 240, 238, .78);--accent: #ff0000;--accent-strong: #ff0000;--accent-soft: rgba(255, 0, 0, .2);--track: rgba(255, 255, 255, .12);--input-bg: rgba(255, 255, 255, .05);--content-max: 1320px;--page-gutter: clamp(1rem, 2vw, 2rem);margin:0;min-width:320px;overflow-x:hidden;font-family:Poppins,sans-serif;font-size:19px;line-height:1.7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background:radial-gradient(circle at top left,rgba(255,0,0,.24),transparent 32%),radial-gradient(circle at 85% 15%,rgba(255,64,64,.16),transparent 22%),linear-gradient(135deg,#120709,#1f0f13 42%,#12090a);transition:background .4s ease,color .4s ease}body.theme-light{--bg-primary: #fff8f7;--bg-secondary: rgba(255, 255, 255, .72);--surface: rgba(255, 255, 255, .62);--surface-strong: rgba(255, 255, 255, .82);--surface-soft: rgba(255, 255, 255, .5);--border: rgba(255, 0, 0, .18);--shadow: 0 28px 70px rgba(255, 0, 0, .14);--text-primary: #311616;--text-secondary: rgba(73, 34, 34, .74);--accent: #ff0000;--accent-strong: #ff0000;--accent-soft: rgba(255, 0, 0, .12);--track: rgba(255, 0, 0, .12);--input-bg: rgba(255, 255, 255, .78);color-scheme:light;background:radial-gradient(circle at top left,rgba(255,0,0,.18),transparent 30%),radial-gradient(circle at 90% 10%,rgba(255,82,82,.24),transparent 18%),linear-gradient(135deg,#fff8f7,#ffeceb 48%,#fff6f4)}body.theme-dark{color-scheme:dark}body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(circle at center,black 32%,transparent 85%);mask-image:radial-gradient(circle at center,black 32%,transparent 85%);pointer-events:none;opacity:.45}body.theme-light:before{opacity:.3}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}::selection{background:#ff000047}.scroll-progress{position:fixed;inset:0 auto auto 0;z-index:1200;height:4px;width:0;background:linear-gradient(90deg,var(--accent),#ff5c5c);box-shadow:0 8px 24px #ff000059}.loader-overlay{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:1.5rem;background:#12070980;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}body.theme-light .loader-overlay{background:#fff8f7a6}.loader-core{width:min(420px,100%);padding:2.25rem 2rem;display:grid;justify-items:center;gap:1rem;text-align:center}.loader-ring{width:92px;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.18);border-top-color:var(--accent);border-right-color:#ffd4d4d9;animation:spin 1.15s linear infinite}.loader-mark{margin-top:-5.85rem;width:74px;aspect-ratio:1;border-radius:24px;display:grid;place-items:center;font-family:Poppins,sans-serif;font-size:2rem;font-weight:700;color:var(--text-primary);background:linear-gradient(160deg,#ffffff24,#ff00003d);border:1px solid var(--border)}.loader-core p{margin:1rem 0 0;max-width:22rem;color:var(--text-secondary)}.particle-field{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.particle{position:absolute;display:block;border-radius:999px;background:radial-gradient(circle,#ffd6d6cc,#ff000038);box-shadow:0 0 30px #f003;opacity:.32;animation:drift linear infinite}.whatsapp-float{position:fixed;left:clamp(1rem,2vw,1.5rem);bottom:clamp(1rem,2vw,1.5rem);z-index:1150;width:3.9rem;height:3.9rem;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#25d366,#17b857);border:1px solid rgba(255,255,255,.24);box-shadow:0 16px 32px #25d36647,0 0 #25d36657;transition:transform .3s var(--motion-smooth),box-shadow .3s var(--motion-smooth),filter .3s var(--motion-smooth);animation:whatsappPulse 2.8s ease-in-out infinite}.whatsapp-float:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 22px 38px #25d36657,0 0 0 .45rem #25d3661a;filter:saturate(1.05)}.whatsapp-float svg{width:1.7rem;height:1.7rem;fill:currentColor}.site-header{position:sticky;top:0;z-index:1100;width:100%;padding:0}.navbar{width:100%;max-width:none;margin:0;padding:1rem var(--page-gutter);display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:0}.glass-panel{background:linear-gradient(180deg,var(--surface-strong),var(--surface));border:1px solid var(--border);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:var(--shadow);transform:translateZ(0);backface-visibility:hidden}.brand{display:inline-flex;align-items:center;gap:.9rem}.brand-mark{width:2.75rem;height:2.75rem;display:grid;place-items:center;border-radius:1rem;font-family:Poppins,sans-serif;font-weight:700;background:linear-gradient(145deg,var(--accent-strong),#ff4d4d);color:#fff;box-shadow:0 16px 32px #ff00003d}.brand-copy{display:grid;gap:.1rem}.brand-copy strong{font-family:Poppins,sans-serif;font-size:1.1rem}.brand-copy small{font-size:.92rem;color:var(--text-secondary)}.theme-toggle{font-size:1rem;font-weight:500;color:var(--text-secondary);transition:color .25s ease,transform .25s ease,background .25s ease}.theme-toggle:hover{color:var(--text-primary);transform:translateY(-1px)}.theme-toggle{border:1px solid var(--border);background:var(--surface-soft);border-radius:999px;padding:.65rem .95rem;display:inline-flex;align-items:center;gap:.4rem}.theme-toggle strong{color:var(--text-primary)}.portfolio-shell{width:100%;margin:0;padding:1.5rem 0 4.5rem}.hero-section,.content-section{scroll-margin-top:7rem;width:100%;padding-inline:var(--page-gutter)}.hero-section{padding:1.35rem var(--page-gutter) 2.75rem}.hero-stage,.about-card,.skill-card,.tool-card,.ai-category-card,.project-card,.contact-panel,.contact-form{border-radius:1.8rem}.hero-stage{position:relative;overflow:hidden;width:min(var(--content-max),100%);margin:0 auto;padding:clamp(1.2rem,2vw,2rem) clamp(1.2rem,2vw,2rem) 0;background:radial-gradient(circle at 72% 22%,rgba(255,0,0,.22),transparent 20%),linear-gradient(135deg,#101a24,#0f1822 48%,#17111d);border-color:#ff00002e}.hero-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,0,0,.08),transparent 18%),radial-gradient(circle at 82% 46%,rgba(255,0,0,.12),transparent 28%);pointer-events:none}body.theme-light .hero-stage{background:radial-gradient(circle at 72% 22%,rgba(255,0,0,.18),transparent 20%),linear-gradient(135deg,#16202a,#111c27 48%,#17131c)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);align-items:center;gap:2rem;min-height:40rem}.hero-copy:after,.project-card:after{content:"";position:absolute;inset:auto -10% -25% auto;width:12rem;height:12rem;border-radius:50%;background:radial-gradient(circle,rgba(255,0,0,.22),transparent 70%);pointer-events:none}.hero-tagline,.section-heading p,.card-heading p,.tool-card p,.project-card p,.contact-panel p,.contact-form .submit-note,.loader-core p{color:var(--text-secondary);font-size:1.18rem;line-height:1.75}.hero-copy{position:relative;padding:clamp(1rem,2vw,2rem) 0 clamp(1rem,2vw,1.5rem)}.hero-copy:after{display:none}.hero-hello,.section-heading h2{margin:0;font-family:Poppins,sans-serif}.hero-hello{font-size:clamp(4.3rem,8.8vw,6.8rem);line-height:.95;letter-spacing:-.04em;color:#fff8f7}.hero-hello span{color:red}.hero-name-line{display:flex;align-items:center;gap:1rem;margin:1.4rem 0 1.2rem}.hero-line{width:clamp(4rem,12vw,6.5rem);height:2px;flex:0 0 auto;background:linear-gradient(90deg,red,#ff00000f)}.hero-name-line p{margin:0;font-size:clamp(2.6rem,5.2vw,4rem);color:#fff7f5eb}.hero-copy-screenshot h1{margin:0;font-family:Poppins,sans-serif;font-size:clamp(4.8rem,9.3vw,7.9rem);line-height:.95;letter-spacing:-.05em;color:#fff9f8}.hero-copy-screenshot h2{margin:.95rem 0 1.1rem;font-size:clamp(1.28rem,2.3vw,1.65rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#ffa6a6bd}.hero-tagline{margin:0;max-width:36rem;font-size:1.4rem;color:#ffe6e2b8}.hero-actions{display:flex;flex-wrap:wrap;gap:.95rem;margin:2.1rem 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.95rem 1.35rem;border-radius:999px;border:1px solid transparent;font-size:1rem;font-weight:700;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease}.btn:hover{transform:translateY(-2px)}.hero-actions .btn{min-height:3.35rem;padding-inline:1.45rem;border-radius:.35rem}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--accent-strong),#ff3d3d);box-shadow:0 18px 34px #ff000047}.btn-outline{color:#fff8f7;border-color:#ff00008c;background:#ffffff05;box-shadow:inset 0 0 0 1px #ff000014}.btn-outline:hover{background:#ff00001a}.hero-visual-panel{position:relative;min-height:36rem;display:grid;place-items:center}.hero-visual-ring{position:absolute;top:50%;left:54%;width:min(27rem,78%);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);border:1.35rem solid #ff0000;box-shadow:0 0 0 1px #ff4e4e14,0 0 5rem #ff000038}.hero-symbol{position:absolute;font-size:clamp(4.5rem,10vw,6.5rem);font-weight:300;line-height:1;color:#ff000038;text-shadow:0 0 20px rgba(255,0,0,.12)}.hero-symbol-left{top:4rem;left:2.5rem}.hero-symbol-right{right:1.2rem;bottom:2rem}.hero-portrait{position:relative;width:min(100%,30rem);min-height:34rem;display:grid;place-items:end center}.portrait-glow{position:absolute;inset:auto auto 3.5rem 50%;width:16rem;height:8rem;transform:translate(-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,0,0,.28),transparent 72%);filter:blur(18px)}.hero-image-frame{position:relative;width:min(23rem,84%);height:31rem;box-shadow:inset 0 0 0 1px #ffffff0f,0 2rem 3rem #00000038;border-radius:1.75rem 1.75rem 1rem 1rem;overflow:hidden;display:grid;align-items:end;background:linear-gradient(180deg,#ffffff0f,#ffffff05),#0c141c59;border:1px solid rgba(255,255,255,.08)}.hero-image{width:120%;height:100%;object-fit:contain;object-position:center center;display:block;margin-bottom:100px;margin-right:150px}.hero-image-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:.55rem;padding:1.5rem;text-align:center;background:linear-gradient(180deg,#ff000029,#ffffff08),repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 14px,transparent 14px,transparent 28px);color:#fff0ecdb}.hero-image-placeholder span{font-family:Poppins,sans-serif;font-size:1.5rem}.hero-image-placeholder small{color:#ffe0dbb8;font-size:1.06rem}.hero-tech-strip{position:relative;z-index:1;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.75rem;margin-top:.4rem;padding:1.15rem 0;border-top:1px solid rgba(255,0,0,.14);color:#ffebe861;font-size:clamp(1.14rem,2.2vw,1.42rem)}.hero-tech-strip span{text-align:center;transition:color .28s var(--motion-soft),transform .28s var(--motion-soft)}.hero-tech-strip span:hover{color:#ffebe8cc;transform:translateY(-2px)}.eyebrow,.section-kicker{margin:0 0 1rem;color:var(--accent);font-size:1.02rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.project-card h3,.about-card h3,.skill-card h3,.tool-card h3,.ai-category-card h3,.contact-panel h3{display:block;margin-bottom:.45rem;font-family:Poppins,sans-serif;font-size:1.82rem}.project-badge{margin:0 0 .75rem;font-size:.98rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.tool-grid,.project-grid,.contact-grid,.about-grid{display:grid;gap:1.2rem}.content-section{padding:2.5rem var(--page-gutter)}.content-section>*{width:min(var(--content-max),100%);margin-inline:auto}.section-heading{max-width:48rem;margin-bottom:1.5rem}.section-heading h2{font-size:clamp(2.65rem,5.2vw,4.2rem);margin-bottom:.85rem}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-section{position:relative;overflow:hidden}.about-section:before,.about-section:after{content:"";position:absolute;inset:auto;border-radius:50%;pointer-events:none;filter:blur(12px);opacity:.75}.about-section:before{top:7%;left:-4rem;width:18rem;height:18rem;background:radial-gradient(circle,rgba(255,0,0,.18),transparent 68%);animation:aboutGlowDrift 8s ease-in-out infinite}.about-section:after{right:-3rem;bottom:8%;width:15rem;height:15rem;background:radial-gradient(circle,rgba(255,0,0,.14),transparent 70%);animation:aboutGlowDriftAlt 10s ease-in-out infinite}.about-section .section-heading{position:relative}.about-section .section-heading:after{content:"";display:block;width:clamp(8rem,20vw,12rem);height:4px;margin-top:1.1rem;border-radius:999px;background:linear-gradient(90deg,#ff0000f2,#f000);transform-origin:left center;transform:scaleX(.3);opacity:.55;transition:transform .7s ease,opacity .7s ease}.about-section.visible .section-heading:after{transform:scaleX(1);opacity:1}.about-card{position:relative;padding:1.5rem;overflow:hidden;background:linear-gradient(180deg,#ffffffeb,#fff8f8d1),linear-gradient(135deg,#ff00000d,#fff0);border:1px solid rgba(255,0,0,.12);box-shadow:0 24px 48px #ff000014,inset 0 1px #ffffff73;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}body.theme-dark .about-card{background:linear-gradient(180deg,#ffffff1a,#ffffff0f),linear-gradient(135deg,#ff00001f,#fff0)}.about-card:before{content:"";position:absolute;inset:-35% auto auto -10%;width:12rem;height:12rem;border-radius:50%;background:radial-gradient(circle,rgba(255,0,0,.12),transparent 70%);transform:scale(.9);animation:aboutPulse 5s ease-in-out infinite}.about-card:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.18) 34%,transparent 58%);transform:translate(-120%);opacity:0}.about-section.visible .about-card:after{animation:aboutSheen 1.35s ease .35s forwards}.about-card-left,.about-card-right{opacity:0;transform:translateY(32px)}.about-card-left{transform:translate3d(-42px,32px,0) rotate(-1.2deg)}.about-card-right{transform:translate3d(42px,32px,0) rotate(1.2deg)}.about-section.visible .about-card-left,.about-section.visible .about-card-right{opacity:1;transform:translateZ(0) rotate(0);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}.about-section.visible .about-card-right{transition-delay:.12s}.about-card:hover{transform:translateY(-10px) scale(1.01);border-color:#ff000038;box-shadow:0 30px 58px #ff000024,inset 0 1px #ffffff94}.about-card p,.difference-list,.difference-list li,.feature-list span{font-size:1.14rem}.feature-list,.tag-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.25rem}.feature-list span,.tag-row span,.project-badge{display:inline-flex;align-items:center;justify-content:center;padding:.55rem .8rem;border-radius:999px;background:var(--accent-soft);border:1px solid rgba(255,0,0,.2);transition:transform .28s ease,background .28s ease,box-shadow .28s ease,border-color .28s ease}.about-section .feature-list span{opacity:0;transform:translateY(18px) scale(.95)}.about-section.visible .feature-list span{opacity:1;transform:translateY(0) scale(1);animation:chipFloat 4.6s ease-in-out infinite;transition:opacity .45s ease,transform .45s ease}.about-section.visible .feature-list span:nth-child(1){transition-delay:.18s;animation-delay:.1s}.about-section.visible .feature-list span:nth-child(2){transition-delay:.26s;animation-delay:.45s}.about-section.visible .feature-list span:nth-child(3){transition-delay:.34s;animation-delay:.8s}.about-section.visible .feature-list span:nth-child(4){transition-delay:.42s;animation-delay:1.15s}.feature-list span:hover{transform:translateY(-5px) scale(1.03);background:#ff000024;border-color:#ff000052;box-shadow:0 12px 24px #ff00001f}.difference-list{margin:1rem 0 0;padding-left:1.2rem;color:var(--text-secondary);line-height:1.8}.about-section .difference-list li{opacity:0;transform:translate(18px)}.about-section.visible .difference-list li{opacity:1;transform:translate(0);transition:opacity .45s ease,transform .45s ease}.about-section.visible .difference-list li:nth-child(1){transition-delay:.2s}.about-section.visible .difference-list li:nth-child(2){transition-delay:.3s}.about-section.visible .difference-list li:nth-child(3){transition-delay:.4s}.about-section.visible .difference-list li:nth-child(4){transition-delay:.5s}.skills-grid{--skills-pointer-x: 50%;--skills-pointer-y: 50%;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;isolation:isolate}.skills-grid:before{content:"";position:absolute;inset:-1.5rem;z-index:-1;background:radial-gradient(18rem circle at var(--skills-pointer-x) var(--skills-pointer-y),rgba(255,0,0,.16),transparent 70%);filter:blur(18px);opacity:.9;transition:opacity .28s ease}.skill-card,.ai-category-card,.project-card,.contact-panel,.contact-form{padding:1.5rem}.card-heading{margin-bottom:1.2rem}.card-heading h3{margin:0 0 .35rem}.card-heading p,.tool-card p,.project-card p,.contact-panel p{margin:0}.skill-list{display:grid;gap:.9rem}.skill-card{position:relative;overflow:hidden;background:linear-gradient(160deg,#ffffffeb,#fff6f6c7),linear-gradient(135deg,rgba(255,0,0,.08),transparent 56%);border:1px solid rgba(255,0,0,.14);box-shadow:0 24px 54px #ff000017,inset 0 1px #ffffffc7;transition:transform .34s ease,border-color .34s ease,box-shadow .34s ease,opacity .45s ease}.skill-card:before,.skill-card:after{content:"";position:absolute;pointer-events:none}.skill-card:before{inset:0;background:radial-gradient(14rem circle at var(--skills-pointer-x) var(--skills-pointer-y),rgba(255,0,0,.18),transparent 72%);opacity:.9}.skill-card:after{inset:auto -18% 18% auto;width:8.5rem;aspect-ratio:1;border-radius:34% 66% 55% 45%;background:radial-gradient(circle,rgba(255,95,95,.22),transparent 70%);filter:blur(10px);animation:skillOrbDrift 7.5s ease-in-out infinite}body.theme-dark .skill-card{background:linear-gradient(180deg,#ffffff14,#ffffff0d),linear-gradient(135deg,rgba(255,0,0,.12),transparent 58%);border-color:#ffffff14}.skill-card:hover{transform:translateY(-10px) rotateX(3deg);border-color:#ff484857;box-shadow:0 32px 64px #ff000029,inset 0 1px #ffffffe0}.skill-card-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.skill-card-index,.skill-card-count{display:inline-flex;align-items:center;min-height:2.2rem;padding:.4rem .85rem;border-radius:999px;border:1px solid rgba(255,0,0,.14);background:#ffffffa3;color:var(--text-secondary);font-size:.88rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}body.theme-dark .skill-card-index,body.theme-dark .skill-card-count{background:#ffffff12;border-color:#ffffff14}.skill-card .card-heading{position:relative;z-index:1;margin-bottom:1.35rem}.skill-card .card-heading h3{margin-bottom:.45rem}.skill-card .card-heading p{max-width:28ch}.skill-item{position:relative;display:grid;gap:.85rem;padding:1rem;border-radius:1.4rem;background:linear-gradient(160deg,#ffffffbd,#fff5f58f),linear-gradient(135deg,rgba(255,0,0,.05),transparent 58%);border:1px solid rgba(255,0,0,.09);box-shadow:0 16px 34px #ff00000d,inset 0 1px #ffffffbf;overflow:hidden;transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease,background .32s ease,opacity .45s ease}.skill-item:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 24%,rgba(255,255,255,.32) 50%,transparent 76%);transform:translate(-130%);transition:transform .55s ease}body.theme-dark .skill-item{background:linear-gradient(180deg,#ffffff14,#ffffff0a),linear-gradient(135deg,rgba(255,0,0,.12),transparent 60%);border-color:#ffffff12}.skill-item:hover{transform:translate(8px) translateY(-6px);border-color:#ff484842;box-shadow:0 24px 40px #ff00001f,inset 0 1px #ffffffd1}.skill-item:hover:before{transform:translate(130%)}.skill-item-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem}.skill-logo-wrap{width:4.25rem;height:4.25rem;display:grid;place-items:center;padding:.72rem;border-radius:1.25rem;background:linear-gradient(160deg,#fffffff5,#fff3f3d1);border:1px solid rgba(255,0,0,.13);box-shadow:0 12px 28px #ff000014,inset 0 1px #ffffffeb;transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}body.theme-dark .skill-logo-wrap{background:#ffffff1a;border-color:#ffffff14}.skill-logo{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;transition:transform .32s ease}.skill-meta{display:grid;gap:.12rem;min-width:0}.skill-name,.ai-tool-chip strong,.social-list strong{font-size:1.16rem;font-weight:700}.skill-meta small{color:var(--text-secondary);font-size:.88rem;letter-spacing:.02em}.skill-level-badge{display:inline-flex;align-items:center;justify-content:center;min-width:4.5rem;min-height:3rem;padding:.55rem .8rem;border-radius:1rem;background:linear-gradient(135deg,#ff000024,#ff5a5a1f);border:1px solid rgba(255,0,0,.16);color:var(--accent);font-size:1.2rem;font-weight:800;box-shadow:inset 0 1px #ffffff6b;transition:transform .32s ease,box-shadow .32s ease}.progress-track{position:relative;width:100%;height:.9rem;overflow:hidden;border-radius:999px;background:linear-gradient(90deg,#ff000017,#ff000029),#ffffff70;box-shadow:inset 0 1px 3px #ff000017}.progress-track:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:translate(-100%);animation:skillTrackSweep 3.8s ease-in-out infinite}.progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-strong),#ff7070);box-shadow:0 8px 18px #ff000038;transform:scaleX(0);transform-origin:left center;transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .28s ease}#skills.visible .progress-fill{transform:scaleX(1)}.skill-card:hover .skill-logo-wrap{transform:translateY(-4px) rotate(-5deg);box-shadow:0 18px 32px #ff000024,inset 0 1px #fffffff0}.skill-card:hover .skill-logo{transform:scale(1.08)}.skill-card:hover .skill-level-badge{transform:translateY(-4px) scale(1.04);box-shadow:0 16px 28px #ff00001f,inset 0 1px #ffffff75}.skill-item:hover .progress-fill{filter:saturate(1.16) brightness(1.06)}#skills .skill-card,#skills .skill-item{opacity:0}#skills .skill-card{transform:translateY(28px) scale(.98)}#skills .skill-item{transform:translate(-16px)}#skills.visible .skill-card,#skills.visible .skill-item{opacity:1}#skills.visible .skill-card{transform:translateY(0) scale(1)}#skills.visible .skill-item{transform:translate(0)}#skills.visible .skill-card:nth-child(1){transition-delay:.08s}#skills.visible .skill-card:nth-child(2){transition-delay:.16s}#skills.visible .skill-card:nth-child(3){transition-delay:.24s}#skills.visible .skill-item:nth-child(1){transition-delay:.14s}#skills.visible .skill-item:nth-child(2){transition-delay:.2s}#skills.visible .skill-item:nth-child(3){transition-delay:.26s}#skills.visible .skill-item:nth-child(4){transition-delay:.32s}#skills.visible .skill-item:nth-child(5){transition-delay:.38s}#skills.visible .skill-item:nth-child(6){transition-delay:.44s}#skills.visible .skill-item:nth-child(7){transition-delay:.5s}@keyframes skillOrbDrift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(-10px,-14px,0) scale(1.06)}}@keyframes skillTrackSweep{0%{transform:translate(-100%)}50%,to{transform:translate(120%)}}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-card{display:flex;align-items:center;gap:1.2rem;padding:1.55rem;will-change:transform;transition:transform .32s var(--motion-smooth),border-color .32s var(--motion-smooth),box-shadow .32s var(--motion-smooth)}.tool-card:hover{transform:translateY(-6px);border-color:#ff000052}.tool-logo{max-width:4.8rem;max-height:3.25rem;width:auto;height:auto;object-fit:contain;display:block}.tool-logo-wrap{width:6rem;height:5.25rem;flex:0 0 6rem;border-radius:1.15rem;display:grid;place-items:center;padding:.8rem;background:linear-gradient(145deg,#ffffffeb,#fff5f5d1);border:1px solid rgba(255,0,0,.14);box-shadow:0 14px 26px #ff00001f,inset 0 1px #ffffffa6}body.theme-dark .tool-logo-wrap{background:linear-gradient(145deg,#ffffff1f,#ffffff14)}.project-card,.ai-tool-chip,.social-list a{transition:transform .25s ease,border-color .25s ease}.project-card:hover,.ai-tool-chip:hover,.social-list a:hover{transform:translateY(-6px);border-color:#ff000052}.ai-category-grid{display:grid;gap:1.2rem}.ai-category-card{overflow:hidden}.ai-marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.ai-marquee-track{display:flex;align-items:center;gap:.9rem;width:max-content;animation:aiMarquee 24s linear infinite;will-change:transform}.ai-category-card:hover .ai-marquee-track{animation-play-state:paused}.ai-tool-chip{display:inline-flex;align-items:center;gap:.8rem;min-width:13rem;padding:.85rem 1rem;border-radius:1.05rem;background:#ffffffa3;border:1px solid rgba(255,0,0,.11);box-shadow:0 10px 24px #ff000014,inset 0 1px #ffffffb8}body.theme-dark .ai-tool-chip{background:#ffffff0f;border-color:#ffffff14}.ai-tool-logo-wrap,.tool-icon{width:5.1rem;height:3.4rem;flex:0 0 5.1rem;display:grid;place-items:center;padding:.55rem;border-radius:.95rem;background:#ffffffb8;border:1px solid rgba(255,0,0,.1);box-shadow:0 10px 24px #ff000014,inset 0 1px #ffffffb3}body.theme-dark .ai-tool-logo-wrap,body.theme-dark .tool-icon{background:#ffffff14;border-color:#ffffff14}.ai-tool-logo{max-width:100%;max-height:100%;width:auto;height:auto;display:block;object-fit:contain}.tool-icon{color:var(--text-primary);font-size:1.15rem;font-weight:700}.ai-tool-chip strong{font-size:1.22rem;white-space:nowrap}#projects{position:relative;overflow:hidden}#projects>*{width:min(88rem,100%)}#projects:before,#projects:after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(24px)}#projects:before{top:8%;left:-6rem;width:18rem;height:18rem;background:radial-gradient(circle,rgba(255,0,0,.16),transparent 68%);animation:projectAuraLeft 8.5s ease-in-out infinite}#projects:after{right:-5rem;bottom:4%;width:20rem;height:20rem;background:radial-gradient(circle,rgba(255,77,77,.18),transparent 70%);animation:projectAuraRight 10s ease-in-out infinite}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;perspective:1600px;align-items:stretch}.project-card{position:relative;overflow:hidden;isolation:isolate;transform-style:preserve-3d;min-height:38rem;padding:2.2rem 2.2rem 4.4rem;border-radius:1.85rem;background:linear-gradient(160deg,#ff7474fa,#e21212fa 58%,#7e0000fa),radial-gradient(circle at 18% 18%,rgba(255,255,255,.26),transparent 24%);border:1px solid rgba(255,214,214,.36);box-shadow:0 24px 52px #f003,inset 0 1px #ffffff3d;transition:transform .36s ease,border-color .28s ease,box-shadow .28s ease,filter .28s ease;animation:projectCardFloat 7s ease-in-out infinite}.project-card h3{position:relative;z-index:1;margin:0 0 .95rem;color:#fff7f7;font-size:2rem;line-height:1.32;text-shadow:0 10px 24px rgba(79,0,0,.24)}.project-card p{position:relative;z-index:1;color:#fff1f1eb;text-shadow:0 6px 18px rgba(88,0,0,.18)}.project-card:before{content:"";position:absolute;inset:-18%;background:conic-gradient(from 180deg,#fff0,#ffffff2e 52deg,#fff0 110deg 360deg);animation:projectBeam 8s linear infinite;opacity:.7;z-index:0;transition:opacity .35s ease,transform .35s ease}.project-card:after{content:"";position:absolute;inset:auto -12% 12% auto;width:12rem;height:12rem;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.24),transparent 70%);pointer-events:none;z-index:0;transition:transform .35s ease,opacity .35s ease}.project-card:nth-child(2){animation-delay:.6s}.project-card:nth-child(3){animation-delay:1.2s}.project-card:hover{transform:translateY(-14px) rotateX(6deg) rotateY(-5deg) scale(1.02);border-color:#ffefef9e;box-shadow:0 40px 80px #ff000052,inset 0 1px #ffffff57;filter:saturate(1.08)}.project-card:nth-child(2):hover{transform:translateY(-14px) rotateX(6deg) rotateY(0) scale(1.02)}.project-card:nth-child(3):hover{transform:translateY(-14px) rotateX(6deg) rotateY(5deg) scale(1.02)}.project-card:hover:before{opacity:.95;transform:rotate(22deg) scale(1.05)}.project-card:hover:after{transform:translate3d(-12px,-10px,0) scale(1.08);opacity:.92}.project-card .tag-row,.project-card .project-link,.project-card .project-badge{position:relative;z-index:1}.project-card .tag-row{margin-top:1.5rem}.project-card .tag-row span{background:#ffffff1f;color:#fff7f7;border-color:#ffebeb42;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 18px #6300001f}.project-card:hover .tag-row span{transform:translateY(-5px);background:#ffffff2e;border-color:#fff4f46b}.project-card:hover .tag-row span:nth-child(2){transition-delay:.04s}.project-card:hover .tag-row span:nth-child(3){transition-delay:.08s}.project-card .project-badge{background:#ffffff24;color:#fff7f7;border-color:#ffefef66;box-shadow:0 12px 24px #68000024}.project-card:hover .project-badge{transform:translateY(-4px) scale(1.03);box-shadow:0 16px 30px #68000033}.project-card .project-link{align-items:center;gap:.5rem;padding:.8rem 1rem;border-radius:999px;background:#ffffff1f;border:1px solid rgba(255,245,245,.24);color:#fff7f7;text-shadow:0 4px 16px rgba(93,0,0,.3);box-shadow:0 14px 28px #63000024}.project-card .project-link:after{content:"->";font-size:1rem;transition:transform .25s ease,opacity .25s ease}.project-card:hover .project-link{transform:translateY(-3px);background:#fff3;border-color:#fffafa70}.project-card:hover .project-link:after{transform:translate(6px)}body.theme-dark .project-card{background:linear-gradient(160deg,#c61414f5,#800404fa 60%,#3a0202fa),radial-gradient(circle at 18% 18%,rgba(255,255,255,.15),transparent 24%)}.project-link{display:inline-flex;margin-top:1.35rem;font-size:1.06rem;font-weight:700}.contact-grid{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:stretch}#contact{position:relative;overflow:hidden}#contact:before,#contact:after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(28px)}#contact:before{top:10%;left:-5rem;width:16rem;height:16rem;background:radial-gradient(circle,rgba(255,0,0,.14),transparent 68%);animation:contactAuraLeft 8.2s ease-in-out infinite}#contact:after{right:-6rem;bottom:2%;width:18rem;height:18rem;background:radial-gradient(circle,rgba(255,96,96,.18),transparent 70%);animation:contactAuraRight 9.5s ease-in-out infinite}.contact-panel,.contact-form{position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.contact-panel:before,.contact-form:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.16) 36%,transparent 60%);transform:translate(-120%);opacity:0;pointer-events:none}.contact-panel:after,.contact-form:after{content:"";position:absolute;inset:auto -18% -28% auto;width:14rem;height:14rem;border-radius:50%;background:radial-gradient(circle,rgba(255,0,0,.14),transparent 72%);opacity:.75;pointer-events:none;z-index:0;transition:transform .35s ease,opacity .35s ease}#contact.visible .contact-panel,#contact.visible .contact-form{animation:contactPanelRise .8s cubic-bezier(.2,.8,.2,1) both}#contact.visible .contact-form{animation-delay:.12s}.contact-panel:hover,.contact-form:hover{transform:translateY(-10px);box-shadow:0 26px 52px #ff00001f,inset 0 1px #ffffff80;border-color:#ff000038}.contact-panel:hover:before,.contact-form:hover:before{animation:contactSheen 1.05s ease forwards}.contact-panel:hover:after,.contact-form:hover:after{transform:translate3d(-14px,-12px,0) scale(1.08);opacity:1}.social-list{display:grid;gap:.9rem;margin-top:1.35rem}.social-list a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-radius:1.15rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);overflow:hidden;position:relative;opacity:0;transform:translate(-16px);will-change:transform,opacity;transition:transform .32s var(--motion-smooth),border-color .32s var(--motion-smooth),box-shadow .32s var(--motion-smooth),opacity .42s var(--motion-soft),background .32s var(--motion-smooth)}body.theme-light .social-list a{background:#ffffff94}.social-list a:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.18) 42%,transparent 68%);transform:translate(-130%);pointer-events:none}#contact.visible .social-list a{opacity:1;transform:translate(0)}#contact.visible .social-list a:nth-child(1){transition-delay:.18s}#contact.visible .social-list a:nth-child(2){transition-delay:.28s}#contact.visible .social-list a:nth-child(3){transition-delay:.38s}.social-list a:after{content:"->";font-size:1rem;color:var(--accent);opacity:.7;transition:transform .22s ease,opacity .22s ease}.social-list a:hover{transform:translate(10px);box-shadow:0 14px 28px #ff00001a;background:#ffffff1f}.social-list a:hover:before{animation:contactRowSweep .9s ease forwards}.social-list a:hover:after{transform:translate(5px);opacity:1}.social-list span{font-size:1.06rem;color:var(--text-secondary)}.contact-form{display:grid;gap:1rem}.form-row{display:grid;gap:.45rem;opacity:0;transform:translateY(16px);position:relative;z-index:1}#contact.visible .form-row{opacity:1;transform:translateY(0);transition:opacity .5s var(--motion-soft),transform .5s var(--motion-smooth)}#contact.visible .form-row:nth-child(1){transition-delay:.16s}#contact.visible .form-row:nth-child(2){transition-delay:.24s}#contact.visible .form-row:nth-child(3){transition-delay:.32s}.form-row label{font-size:1.05rem;font-weight:600;transition:color .26s var(--motion-soft),transform .26s var(--motion-soft)}.form-row:focus-within label{color:var(--accent);transform:translate(4px)}.form-row input,.form-row textarea{width:100%;border:1px solid var(--border);border-radius:1rem;padding:.95rem 1rem;color:var(--text-primary);font-size:1.08rem;background:var(--input-bg);outline:none;transition:border-color .26s var(--motion-soft),box-shadow .26s var(--motion-soft),background .26s var(--motion-soft),transform .26s var(--motion-soft)}.form-row input::placeholder,.form-row textarea::placeholder{color:color-mix(in srgb,var(--text-secondary) 85%,transparent)}.form-row input:focus,.form-row textarea:focus{border-color:#ff000085;box-shadow:0 0 0 4px #ff00001f,0 14px 28px #ff000014;transform:translateY(-2px);background:#ffffffeb}body.theme-dark .form-row input:focus,body.theme-dark .form-row textarea:focus{background:#ffffff1a}.submit-btn{margin-top:.4rem;width:fit-content;position:relative;overflow:hidden;transition:transform .3s var(--motion-smooth),box-shadow .3s var(--motion-smooth),filter .3s var(--motion-smooth);animation:contactButtonPulse 2.8s ease-in-out infinite}.submit-btn:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.24) 42%,transparent 68%);transform:translate(-130%)}.submit-btn:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 20px 36px #ff00002e;filter:saturate(1.06);animation-play-state:paused}.submit-btn:hover:after{animation:contactButtonSweep .95s ease forwards}.submit-note{margin:0;animation:contactNoteRise .4s ease both}.site-footer{padding:0 var(--page-gutter) 2.5rem;font-size:1.05rem;text-align:center;color:var(--text-secondary)}.footer-socials{width:min(var(--content-max),100%);margin:0 auto 1.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem}.footer-social-button{width:4rem;height:4rem;display:inline-flex;align-items:center;justify-content:center;gap:0;padding:0;border-radius:1.2rem;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#111113f5,#1c1c1ff0);color:#f6f3f3;box-shadow:0 18px 32px #0000002e,inset 0 1px #ffffff0d;transition:transform .3s var(--motion-smooth),border-color .3s var(--motion-smooth),box-shadow .3s var(--motion-smooth),background .3s var(--motion-smooth)}.footer-social-button:hover{transform:translateY(-4px);border-color:#ff000047;box-shadow:0 24px 36px #00000038,0 0 0 .2rem #ff000014;background:linear-gradient(180deg,#18181bfa,#242427f5)}.footer-social-icon{width:1.45rem;height:1.45rem;display:inline-flex;align-items:center;justify-content:center;color:#fff}.footer-social-icon svg{width:100%;height:100%;fill:currentColor}.site-footer p{width:min(var(--content-max),100%);margin:0 auto}.reveal{opacity:0;filter:blur(8px);transform:translateY(28px) scale(.985);will-change:transform,opacity,filter;transition:opacity .9s var(--motion-smooth),transform .9s var(--motion-smooth),filter .9s var(--motion-smooth)}.reveal.visible{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}@keyframes drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-18px,0) scale(1.15)}}@keyframes whatsappPulse{0%,to{box-shadow:0 16px 32px #25d36647,0 0 #25d36647}50%{box-shadow:0 20px 36px #25d36657,0 0 0 .55rem #25d36614}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes aboutGlowDrift{0%,to{transform:translateZ(0) scale(1);opacity:.58}50%{transform:translate3d(26px,-18px,0) scale(1.1);opacity:.95}}@keyframes aboutGlowDriftAlt{0%,to{transform:translateZ(0) scale(1);opacity:.48}50%{transform:translate3d(-22px,20px,0) scale(1.08);opacity:.88}}@keyframes aboutPulse{0%,to{transform:scale(.92);opacity:.52}50%{transform:scale(1.08);opacity:.92}}@keyframes aboutSheen{0%{transform:translate(-120%);opacity:0}25%{opacity:.65}to{transform:translate(120%);opacity:0}}@keyframes chipFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.015)}}@keyframes aiMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes projectCardFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(-.7deg)}}@keyframes projectBeam{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes projectAuraLeft{0%,to{transform:translateZ(0) scale(1);opacity:.55}50%{transform:translate3d(22px,-18px,0) scale(1.08);opacity:.92}}@keyframes projectAuraRight{0%,to{transform:translateZ(0) scale(1);opacity:.48}50%{transform:translate3d(-20px,20px,0) scale(1.12);opacity:.9}}@keyframes contactPanelRise{0%{opacity:0;transform:translateY(26px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes contactSheen{0%{transform:translate(-120%);opacity:0}25%{opacity:.7}to{transform:translate(120%);opacity:0}}@keyframes contactButtonSweep{0%{transform:translate(-130%)}to{transform:translate(130%)}}@keyframes contactRowSweep{0%{transform:translate(-130%)}to{transform:translate(130%)}}@keyframes contactAuraLeft{0%,to{transform:translateZ(0) scale(1);opacity:.48}50%{transform:translate3d(22px,-16px,0) scale(1.08);opacity:.9}}@keyframes contactAuraRight{0%,to{transform:translateZ(0) scale(1);opacity:.52}50%{transform:translate3d(-18px,20px,0) scale(1.1);opacity:.94}}@keyframes contactNoteRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes contactButtonPulse{0%,to{box-shadow:0 14px 28px #ff00001f}50%{box-shadow:0 20px 38px #ff000038}}@media(max-width:1080px){.hero-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.hero-grid{min-height:auto}.skills-grid,.tool-grid,.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{min-height:auto;padding:2rem 1.9rem 3.7rem;border-radius:1.65rem}.ai-tool-chip{min-width:11.5rem}.hero-tech-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:980px){.content-section{padding:2rem var(--page-gutter)}.section-heading{margin-bottom:1.2rem}.section-heading h2{font-size:clamp(2.3rem,6vw,3.35rem)}.hero-grid{gap:1.5rem}.hero-copy-screenshot h1{font-size:clamp(4rem,10vw,6.2rem)}.hero-tagline{max-width:100%;font-size:1.22rem}.hero-visual-panel{min-height:24rem}.hero-image{width:100%;margin:0}.tool-card{padding:1.25rem}.project-grid{gap:1.35rem}.project-card{padding:1.8rem 1.55rem 3.2rem}.contact-grid{gap:1rem}}@media(max-width:860px){.site-header{padding-inline:0}.navbar{position:relative;padding:.95rem var(--page-gutter)}.ai-marquee{-webkit-mask-image:none;mask-image:none}.ai-tool-chip{min-width:10.5rem}.project-card{min-height:34rem;padding:1.8rem 1.45rem 3.4rem;border-radius:1.45rem}.ai-tool-logo-wrap,.tool-icon{width:4.4rem;height:3rem;flex-basis:4.4rem}.theme-toggle{padding-inline:1rem}.hero-copy,.about-card,.skill-card,.ai-category-card,.project-card,.contact-panel,.contact-form{padding:1.3rem}.hero-stage{padding-bottom:0}.hero-copy{padding-right:0}.hero-actions{width:100%}.hero-actions .btn{flex:1 1 12rem}.hero-visual-panel{min-height:26rem}.hero-visual-ring{width:min(21rem,74vw);left:50%}.hero-symbol-left{left:.5rem;top:2rem}.hero-symbol-right{right:.4rem;bottom:1.2rem}.hero-image-frame{width:min(19.5rem,80%);height:25rem}.tool-card{gap:1rem}.tool-logo-wrap{width:5.3rem;height:4.7rem;flex-basis:5.3rem}.contact-grid{grid-template-columns:1fr}.footer-socials{gap:.75rem}}@media(max-width:768px){.hero-stage{padding-inline:1rem}.hero-grid{gap:1.2rem}.hero-copy-screenshot h1{font-size:clamp(3.5rem,11vw,4.9rem)}.hero-copy-screenshot h2{max-width:100%}.hero-visual-panel{min-height:23rem}.hero-image-frame{width:min(17.5rem,82%);height:22rem}.hero-tech-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.section-heading{max-width:100%}.section-heading h2{font-size:clamp(2.1rem,7vw,2.8rem)}.skill-item{padding:.9rem}.project-grid{gap:1.1rem}.project-card{padding:1.5rem 1.25rem 2.5rem}.project-link{width:100%;justify-content:center}.contact-panel,.contact-form{padding:1.15rem}.footer-socials{margin-bottom:1.2rem}}@media(max-width:640px){body{--page-gutter: .85rem}.portfolio-shell{width:100%;padding-top:.65rem;padding-bottom:3rem}.site-header{padding-top:0}.navbar{gap:.75rem;padding:.8rem var(--page-gutter)}.brand{min-width:0}.brand-copy small{font-size:.82rem}.hero-section{padding-top:.35rem;padding-bottom:1.9rem}.content-section{padding:1.35rem var(--page-gutter)}.section-heading p,.card-heading p,.tool-card p,.project-card p,.contact-panel p,.contact-form .submit-note{font-size:1rem;line-height:1.62}.hero-actions,.submit-btn,.hero-actions .btn{width:100%}.theme-toggle{padding:.65rem .85rem;font-size:.92rem}.hero-hello{font-size:clamp(3.3rem,12vw,4.9rem)}.hero-name-line{gap:.75rem}.hero-name-line p{font-size:clamp(2.1rem,7vw,3rem)}.hero-copy-screenshot h1{font-size:clamp(3.7rem,12vw,5.5rem)}.hero-copy-screenshot h2{font-size:1rem;line-height:1.55;letter-spacing:.08em}.hero-tagline{font-size:1.02rem}.hero-tech-strip{grid-template-columns:repeat(2,minmax(0,1fr));font-size:.98rem;gap:.55rem;padding:.85rem 0 .95rem}.hero-visual-panel{min-height:22rem}.hero-symbol{font-size:3.6rem}.hero-image-frame{width:min(16.5rem,84%);height:21rem}.about-grid,.skills-grid,.tool-grid,.project-grid{grid-template-columns:1fr}.skill-card,.tool-card,.project-card,.contact-panel,.contact-form,.ai-category-card{padding:1.1rem}.skill-name,.ai-tool-chip strong,.social-list strong{font-size:1.02rem}.skill-logo-wrap{width:3.65rem;height:3.65rem;padding:.6rem}.skill-level-badge{min-width:4rem;min-height:2.6rem;font-size:1.02rem}.tool-card{align-items:flex-start}.tool-logo-wrap{width:4.8rem;height:4rem;flex-basis:4.8rem;padding:.65rem}.ai-category-card .card-heading p{max-width:100%}.ai-tool-chip{min-width:9.25rem;padding:.75rem .85rem;gap:.65rem}.ai-tool-logo-wrap,.tool-icon{width:3.8rem;height:2.8rem;flex-basis:3.8rem}.project-card{min-height:auto;border-radius:1.35rem;padding:1.4rem 1.2rem 2.25rem}.project-card h3{font-size:1.6rem}.skills-grid:before{inset:-.5rem}.skill-card-topline{flex-wrap:wrap}.skill-item-head{grid-template-columns:auto minmax(0,1fr);align-items:start}.skill-level-badge{grid-column:2;justify-self:start}.social-list a{align-items:flex-start;flex-direction:column}.social-list span{font-size:.95rem;word-break:break-word}.form-row input,.form-row textarea{font-size:1rem}.submit-btn{min-height:3.15rem}.footer-social-button{width:3.5rem;height:3.5rem;border-radius:1rem}.footer-social-icon{width:1.25rem;height:1.25rem}.whatsapp-float{width:3.4rem;height:3.4rem;left:.85rem;bottom:.85rem}.whatsapp-float svg{width:1.45rem;height:1.45rem}}@media(max-width:560px){.hero-name-line{align-items:flex-start;flex-direction:column;gap:.5rem;margin:1rem 0}.hero-line{width:3.25rem}.hero-tech-strip{grid-template-columns:1fr 1fr}.hero-symbol-left,.hero-symbol-right{display:none}.tool-card{flex-direction:column}.tool-logo-wrap{width:100%;height:4.25rem;flex-basis:auto}}@media(max-width:420px){body{--page-gutter: .7rem;font-size:17px}.portfolio-shell{padding-top:.45rem;padding-bottom:2.6rem}.content-section{padding:1.1rem var(--page-gutter)}.hero-section{padding-bottom:1.45rem}.navbar{padding-inline:.85rem}.brand{gap:.65rem}.brand-mark{width:2.4rem;height:2.4rem;border-radius:.85rem}.brand-copy strong{font-size:1rem}.hero-hello{font-size:2.9rem}.hero-name-line p{font-size:1.8rem}.hero-copy-screenshot h1{font-size:3rem}.section-heading h2{font-size:2rem}.hero-image-frame{width:min(14.2rem,88%);height:18.5rem}.hero-visual-ring{width:min(16rem,78vw);border-width:.95rem}.hero-tech-strip{font-size:.9rem}.skill-card-index,.skill-card-count{min-height:2rem;padding:.35rem .7rem;font-size:.76rem}.project-card h3{font-size:1.42rem}.footer-socials{gap:.6rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}body::-webkit-scrollbar{width:10px}body::-webkit-scrollbar-track{background:#ffffff0a}body::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,var(--accent-strong),#ff4d4d)}
