.header{position:fixed;top:0;left:0;right:0;z-index:999;background:#080a12cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.header .container{padding:1rem var(--gap)}.nav{display:flex;justify-content:space-between;align-items:center;gap:2rem}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--text);font-weight:800;font-size:1.3rem}.logo{width:40px;height:40px;border-radius:0;object-fit:cover}.brand-name{background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{color:var(--muted);text-decoration:none;font-weight:500;transition:color .3s ease}.nav-links a:hover{color:var(--accent)}.menu-toggle{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer}.menu-toggle span{width:25px;height:3px;background:var(--text);border-radius:2px;transition:all .3s ease}@media (max-width: 768px){.menu-toggle{display:flex}.nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:1rem;padding:2rem;background:var(--bg-2);border-bottom:1px solid var(--border);max-height:0;overflow:hidden;opacity:0;transition:all .3s ease;z-index:998}.nav-links.open{max-height:600px;opacity:1}.nav-links a{padding:12px 18px;border-radius:16px;background:transparent;border:2px solid var(--accent);color:var(--text);font-weight:600;text-decoration:none;display:block;width:100%;text-align:center;transition:all .2s ease}.nav-links a:active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-color:transparent}}.hero{padding-top:120px;padding-bottom:4rem;position:relative;z-index:1;scroll-margin-top:70px}.hero .container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-content{animation:fadeInUp .8s ease-out}.kicker{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.dot{width:8px;height:8px;border-radius:50%;background:var(--accent-2);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.2;margin:0 0 1.5rem;color:var(--text);letter-spacing:-.5px}.gradient{background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-lead{font-size:1.1rem;color:var(--muted);line-height:1.8;margin-bottom:2rem;max-width:550px}.hero-cta{display:flex;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.hero-tech{margin-top:2rem}.tech-label{color:var(--muted);font-size:.9rem;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:1px;font-weight:600}.tech-badges{display:flex;gap:.75rem;flex-wrap:wrap}.badge{padding:8px 16px;border-radius:6px;background:#58a6ff14;border:1px solid rgba(88,166,255,.2);color:var(--accent-2);font-size:.85rem;font-weight:500}.hero-visual{animation:fadeInUp .8s ease-out .1s backwards}.code-block{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 50px #7c5cff33}.code-header{padding:1rem;background:#0000004d;border-bottom:1px solid var(--border);font-size:.85rem;color:var(--muted);font-family:Monaco,Courier New,monospace}.code-block pre{padding:1.5rem;margin:0;overflow-x:auto;font-family:Monaco,Courier New,monospace;font-size:.9rem;line-height:1.6;color:var(--accent-2)}.code-block code{background:none}@media (max-width: 1024px){.hero .container{grid-template-columns:1fr;gap:2rem}.hero-visual{order:-1}.code-block pre{font-size:.8rem;padding:1rem}}@media (max-width: 768px){.hero{padding-top:100px;padding-bottom:2rem}.hero-title{font-size:1.8rem}.hero-lead{font-size:1rem}.hero-cta{flex-direction:column}.hero-cta .btn{width:100%;justify-content:center}}.projects{padding:6rem var(--gap)!important;scroll-margin-top:70px;background:linear-gradient(180deg,#58a6ff08,#1f6efb08)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2rem;margin-top:2rem}.project-card{padding:2rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);transition:all .3s ease;display:flex;flex-direction:column;gap:1.5rem;height:100%}.project-card:hover{background:#ffffff1a;border-color:var(--accent);transform:translateY(-8px);box-shadow:0 20px 50px #7c5cff33}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.card-header h3{margin:0;font-size:1.3rem;color:var(--text);flex:1}.badge-mern{display:inline-block;padding:4px 12px;border-radius:4px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:var(--bg);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.project-description{color:var(--muted);line-height:1.6;margin:0;font-size:.95rem}.project-section{display:flex;flex-direction:column;gap:.75rem}.section-title{font-size:.9rem;font-weight:700;color:var(--accent);margin:0;text-transform:uppercase;letter-spacing:.5px}.tech-list{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{display:inline-block;padding:6px 12px;border-radius:4px;background:#58a6ff14;border:1px solid rgba(88,166,255,.15);color:var(--accent-2);font-size:.75rem;font-weight:500}.features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.features-list li{color:var(--muted);font-size:.9rem;padding-left:1.5rem;position:relative}.features-list li:before{content:"✓";position:absolute;left:0;color:var(--accent-4);font-weight:700}@media (max-width: 768px){.projects{padding:3rem var(--gap)!important}.projects-grid{grid-template-columns:1fr}.project-card{padding:1.5rem}}.skills{padding:6rem var(--gap)!important;scroll-margin-top:70px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:3rem 0}.skill-group{padding:2rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);transition:all .3s ease}.skill-group:hover{background:#ffffff1a;border-color:var(--accent)}.group-title{font-size:1.2rem;font-weight:700;margin:0 0 1.5rem;color:var(--accent)}.skill-items{display:flex;flex-direction:column;gap:1.5rem}.skill-item{display:flex;flex-direction:column;gap:.5rem}.skill-header{display:flex;justify-content:space-between;align-items:center}.skill-name{color:var(--text);font-weight:600;font-size:.95rem}.skill-level{color:var(--accent);font-weight:700;font-size:.85rem}.progress-bar{height:6px;border-radius:3px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:3px;transition:width .6s ease-out}.skills-highlight{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:4rem}.highlight-card{padding:2rem;border-radius:var(--radius);background:linear-gradient(135deg,#58a6ff0d,#1f6efb0d);border:1px solid var(--border);transition:all .3s ease}.highlight-card:hover{border-color:var(--accent);transform:translateY(-4px)}.highlight-card h3{margin:0 0 1rem;font-size:1.15rem;color:var(--accent)}.highlight-card p{margin:0;color:var(--muted);line-height:1.6;font-size:.95rem}@media (max-width: 768px){.skills{padding:3rem var(--gap)!important}.skills-grid,.skills-highlight{grid-template-columns:1fr}}.contact{padding:6rem var(--gap)!important;scroll-margin-top:70px;background:linear-gradient(180deg,#1f6efb08,#58a6ff08)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:3rem}.info-card{padding:2.5rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);height:fit-content}.info-card .logo{width:80px;height:80px;border-radius:12px;object-fit:cover;margin-bottom:1.5rem;border:2px solid var(--border)}.info-card h3{font-size:1.5rem;margin:0 0 2rem;color:var(--text)}.benefits{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:1.5rem}.benefits li{display:flex;gap:1rem;align-items:flex-start}.benefits .icon{font-size:1.4rem;min-width:40px;text-align:center;color:var(--accent);font-weight:600;display:flex;align-items:center;justify-content:center}.benefits .icon svg{width:28px;height:28px;stroke-linecap:round;stroke-linejoin:round}.benefits strong{display:block;color:var(--text);margin-bottom:.25rem}.benefits p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}.availability{display:flex;align-items:center;gap:.75rem;padding-top:1.5rem;border-top:1px solid var(--border);color:var(--accent-4);font-weight:600}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-4);animation:pulse 2s ease-in-out infinite}.contact-form{padding:2.5rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);display:flex;flex-direction:column;gap:1.5rem}.contact-form .form-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:2px solid var(--border);align-self:center;margin-bottom:.5rem}.form-group input,.form-group textarea{padding:12px 16px;border-radius:8px;border:1px solid var(--border);background:#0003!important;color:var(--text);font-family:inherit;font-size:1rem;transition:all .3s ease;box-sizing:border-box}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);background:#0000004d!important;box-shadow:0 0 0 3px #7c5cff1a}.form-group textarea{resize:vertical;min-height:150px;font-size:.95rem}.form-group.full{grid-column:1 / -1}.contact-form .btn{width:100%;justify-content:center;padding:14px 24px;font-size:1rem}.success-message{padding:12px 16px;border-radius:8px;background:#5eead426;border:1px solid rgba(94,234,212,.3);color:var(--accent-4);text-align:center;font-weight:600;animation:fadeInUp .3s ease-out}.error-message{padding:12px 16px;border-radius:8px;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444;text-align:center;font-weight:600;animation:fadeInUp .3s ease-out}.contact-form .btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.contact-grid{grid-template-columns:1fr}.info-card{height:auto}}@media (max-width: 768px){.contact{padding:3rem var(--gap)!important}.contact-grid{gap:2rem}.info-card,.contact-form{padding:1.5rem}.benefits li{gap:.75rem}}.footer{background:#0000004d;border-top:1px solid var(--border);padding:4rem var(--gap) 2rem;margin-top:4rem;position:relative;z-index:1}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h4{margin:0 0 1rem;font-size:1.1rem;color:var(--accent)}.footer-section p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.6}.footer-section ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.footer-section a{color:var(--muted);text-decoration:none;font-size:.95rem;transition:color .3s ease}.footer-section a:hover{color:var(--accent)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid var(--border);color:var(--muted);font-size:.9rem}.footer-bottom p{margin:0}@media (max-width: 768px){.footer{padding:2rem var(--gap);margin-top:2rem}.footer-content{grid-template-columns:1fr;gap:1.5rem}}.hosting-page{min-height:100vh;padding:6rem 2rem 4rem;background:var(--bg)}.hosting-header{text-align:center;margin-bottom:4rem;animation:fadeInUp .8s ease-out}.hosting-header h1{font-size:3.5rem;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.hosting-header .sub{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.hosting-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1200px;margin:0 auto}.hosting-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:3rem;animation:fadeInUp .8s ease-out .2s both;transition:all .3s ease}.hosting-card:hover{background:#ffffff1a;border-color:var(--accent)}.hosting-card h2{font-size:2rem;margin-bottom:1.5rem;color:var(--text)}.price{display:flex;align-items:baseline;gap:.5rem;margin-bottom:2rem}.price .amount{font-size:3rem;font-weight:700;color:var(--accent)}.price .period{color:var(--text-secondary);font-size:1rem}.features{list-style:none;margin-bottom:2rem}.features li{padding:.75rem 0;color:var(--text-secondary);border-bottom:1px solid var(--border);font-size:.95rem}.features li:last-child{border-bottom:none}.full-width{width:100%;padding:1rem;font-size:1rem;font-weight:600;border-radius:.5rem;margin-top:2rem;display:flex;align-items:center;justify-content:center}.hosting-info{animation:fadeInUp .8s ease-out .3s both}.hosting-info h3{font-size:2rem;margin-bottom:2rem;color:var(--text)}.info-list{display:flex;flex-direction:column;gap:2rem}.info-item{background:var(--card);border-left:4px solid var(--info-stripe-color, var(--accent));padding:1.5rem;border-radius:.5rem;transition:border-color .3s ease}.info-item h4{color:var(--accent);margin-bottom:.5rem;font-size:1.1rem}.info-item p{color:var(--text-secondary);line-height:1.6}.StripeElement{margin:1rem 0}.success-banner,.canceled-banner{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;animation:slideDown .3s ease-out}.success-banner{background:linear-gradient(135deg,#58a6ff33,#58a6ff1a);border-bottom:2px solid var(--accent)}.canceled-banner{background:linear-gradient(135deg,#ff6b6b33,#ff6b6b1a);border-bottom:2px solid #ff6b6b}.banner-content h3{margin:0 0 .5rem;color:var(--text);font-size:1.1rem}.banner-content p{margin:0;color:var(--text-secondary);font-size:.9rem}.banner-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:.5rem;margin-left:2rem;transition:color .2s ease}.banner-close:hover{color:var(--text)}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 768px){.success-banner,.canceled-banner{flex-direction:column;align-items:flex-start;gap:1rem}.banner-close{align-self:flex-end;margin-left:0}}@media (max-width: 768px){.hosting-page{padding:4rem 1rem 2rem}.hosting-header h1{font-size:2.5rem}.hosting-grid{grid-template-columns:1fr;gap:2rem}.hosting-card{padding:2rem}.price .amount{font-size:2.5rem}.hosting-info h3{font-size:1.5rem}}.domain-form{display:flex;flex-direction:column;gap:1.5rem;animation:fadeIn .3s ease-out}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;font-size:.95rem;color:var(--text-primary)}.form-group input{padding:.75rem 1rem;border:1px solid var(--border);border-radius:.375rem;background:var(--bg);color:var(--text-primary);font-size:1rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--accent);background:#ffffff05;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1)}.form-group small{font-size:.85rem;color:var(--text-secondary)}.btn.secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn.secondary:hover{background:var(--bg-tertiary);border-color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.preview-container{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary);color:var(--text-primary);overflow:hidden}.preview-header{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0}.preview-back-btn{padding:.5rem 1rem;background:var(--accent-color);color:#fff;border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:background .2s}.preview-back-btn:hover{background:var(--accent-hover);opacity:.9}.preview-info{flex:1}.preview-info h1{font-size:1.25rem;font-weight:600;margin:0;padding:0}.preview-url{margin:.25rem 0 0;font-size:.875rem;color:var(--text-secondary);font-family:Monaco,Courier New,monospace}.preview-iframe-wrapper{flex:1;position:relative;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:1rem;background:var(--bg-secondary)}.preview-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);z-index:10;gap:1rem}.spinner{width:2.5rem;height:2.5rem;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.preview-loading p{font-size:.875rem;color:var(--text-secondary)}.preview-iframe{width:100%;height:100%;border:none}.preview-device-frame{position:relative;border:8px solid #333;border-radius:.5rem;box-shadow:0 10px 40px #0000004d;overflow:hidden;background:#fff;transition:all .3s ease}.preview-device-frame.preview-device-desktop{width:100%!important;height:100%!important;border:none;box-shadow:none;border-radius:0}.preview-footer{display:flex;justify-content:center;align-items:center;gap:1rem;padding:.75rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0;flex-wrap:wrap}.preview-device-buttons{display:flex;gap:.5rem}.preview-device-btn{padding:.5rem;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;outline:none;display:flex;align-items:center;justify-content:center}.preview-device-btn:focus{outline:none}.preview-device-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.preview-device-btn:hover,.preview-device-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.preview-reload-btn{padding:.5rem 1rem;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.preview-reload-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}@media (max-width: 768px){.preview-header{flex-direction:column;align-items:flex-start;gap:.5rem}.preview-info h1{font-size:1rem}.preview-back-btn{width:100%;text-align:center}}.app{display:flex;flex-direction:column;min-height:100vh;position:relative}main{flex:1;position:relative;z-index:1}.sticky-cta{position:fixed;bottom:2rem;right:2rem;z-index:100;padding:12px 20px;border-radius:50px;background:#58a6ff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:none;transition:all .3s ease,opacity .5s ease;opacity:1;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutAnimation{0%{opacity:1}to{opacity:0}}.sticky-cta.envelope-out{animation:fadeOutAnimation .5s ease-out forwards;pointer-events:none}.sticky-cta:hover{transform:scale(1.05)}@media (max-width: 768px){.sticky-cta{display:none!important}}:root{--bg: #0f1117;--bg-2: #161b22;--text: #e6edf3;--text-secondary: #8b949e;--muted: #8b949e;--accent: #58a6ff;--accent-2: #79c0ff;--accent-3: #1f6feb;--accent-4: #39dd8c;--glass: rgba(255, 255, 255, .05);--card: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .1);--shadow: 0 8px 24px rgba(0, 0, 0, .6);--radius: 12px;--radius-lg: 16px;--container: 1200px;--gap: clamp(16px, 2vw, 28px)}*{box-sizing:border-box}html,body,#root{height:100%}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text);background:#0c0e18}#root{display:flex;flex-direction:column}.aurora{position:fixed;top:-20%;right:-10%;bottom:-10%;left:-10%;pointer-events:none;z-index:0;filter:blur(80px);opacity:.15}.aurora:before,.aurora:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:conic-gradient(from 0deg,#58a6ff4d,#1f6efb4d,#39dd8c33,#58a6ff4d);animation:spin 24s linear infinite}.aurora:after{animation-duration:38s;animation-direction:reverse;opacity:.6}@keyframes spin{to{transform:rotate(1turn)}}.container{width:min(100% - 2 * var(--gap),var(--container));margin-inline:auto}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 18px;border-radius:16px;border:1px solid var(--border);background:linear-gradient(180deg,#ffffff0f,#ffffff05);color:var(--text);text-decoration:none;font-weight:700;box-shadow:var(--shadow);transition:transform .2s ease,filter .2s ease,border-color .2s ease;cursor:pointer;border:none}.btn:hover{transform:translateY(-2px);border-color:#ffffff47}.btn.accent{background:linear-gradient(135deg,var(--accent),var(--accent-2));border:none;color:#fff;font-weight:600}.btn.accent:hover{filter:brightness(1.1)}.btn.outline{background:transparent;border:2px solid var(--accent);color:var(--text);font-weight:600;transition:all .2s ease}.btn.outline:active{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border-color:transparent}.btn.ghost{background:transparent;border:1px solid var(--border)}.btn.ghost:hover{background:#ffffff0a}.chip{display:inline-block;padding:6px 12px;border-radius:20px;background:var(--glass);border:1px solid var(--border);font-size:.85rem;font-weight:600;color:var(--muted);white-space:nowrap}section{position:relative;z-index:1;padding:var(--gap)}.section-head{text-align:center;margin-bottom:3rem}.section-head h2{font-size:clamp(2rem,5vw,3.5rem);margin:0 0 1rem;background:linear-gradient(135deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.section-head .sub{font-size:1.1rem;color:var(--muted);max-width:600px;margin:0 auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--gap);margin-top:2rem}.card{padding:2rem;border-radius:var(--radius);background:var(--card);border:1px solid var(--border);transition:all .3s ease}.card:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-8px)}.card h3{margin-top:0;font-size:1.3rem;color:var(--text)}.card p{color:var(--muted);line-height:1.6}.tag-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.tag-row .chip{font-size:.75rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.reveal{animation:fadeInUp .6s ease-out forwards}.reveal:nth-child(2){animation-delay:.1s}.reveal:nth-child(3){animation-delay:.2s}@media (max-width: 768px){.grid{grid-template-columns:1fr}.section-head h2{font-size:2rem}}
