body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--primary:#0d9488;--primary-end:#0891b2;--primary-light:#2dd4bf;--gradient:linear-gradient(135deg,#0d9488,#0f766e);--gradient-text:linear-gradient(135deg,#0d9488,#0f766e);--cyan:#22d3ee;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--text-color:#0f172a;--text-muted:#475569;--bg-color:#f8fafc;--bg-secondary:#f1f5f9;--card-bg:#fff;--border:#0d94881f;--border-subtle:#64748b2e;--shadow-sm:0 1px 3px #0000000f;--shadow:0 4px 20px #00000012;--shadow-lg:0 24px 60px #0000001a;--shadow-color:0 8px 32px #0d94882e;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:20px}.dark-mode{--primary:#2dd4bf;--primary-end:#22d3ee;--primary-light:#5eead4;--gradient:linear-gradient(135deg,#2dd4bf,#14b8a6);--gradient-text:linear-gradient(135deg,#2dd4bf,#14b8a6);--text-color:#ccd6f6;--text-muted:#8892b0;--bg-color:#0a192f;--bg-secondary:#0d1f3c;--card-bg:#112240;--border:#2dd4bf1a;--border-subtle:#2dd4bf12;--shadow-sm:0 1px 3px #00000080;--shadow:0 4px 20px #00000080;--shadow-lg:0 24px 60px #000000b3;--shadow-color:0 8px 32px #2dd4bf1f}*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:400;line-height:1.6;margin:0}.portfolio{background-color:#f8fafc;background-color:var(--bg-color);color:#0f172a;color:var(--text-color);min-height:100vh;position:relative;transition:background-color .4s ease,color .4s ease}.portfolio:before{background-image:linear-gradient(rgba(13,148,136,.025) 1px,#0000 0),linear-gradient(90deg,rgba(13,148,136,.025) 1px,#0000 0);background-size:40px 40px;content:"";inset:0;pointer-events:none;position:fixed;z-index:0}.dark-mode.portfolio:before{background-image:linear-gradient(#2dd4bf0a 1px,#0000 0),linear-gradient(90deg,#2dd4bf0a 1px,#0000 0)}.nav{align-items:center;background-color:#f8fafc;background-color:var(--bg-color);border-bottom:1px solid #64748b2e;border-bottom:1px solid var(--border-subtle);display:flex;height:64px;justify-content:space-between;padding:0 3rem;position:fixed;transition:all .3s ease;width:100%;z-index:99}.dark-mode .nav{background-color:#0a192ff7;border-bottom-color:#2dd4bf1a}.logo{height:30px;padding:0 8px}.nav-links{align-items:center;display:flex;gap:0}.nav-links a{border-radius:6px;border-radius:var(--radius-sm);color:#475569;color:var(--text-muted);font-size:.875rem;font-weight:500;letter-spacing:0;padding:.5rem .9rem;text-decoration:none;transition:all .2s ease}.nav-links a:hover{color:#0d9488;color:var(--primary)}.theme-toggle{align-items:center;background:none;border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:6px;border-radius:var(--radius-sm);color:#475569;color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;margin-left:.75rem;margin-right:1rem;padding:.45rem;transition:all .2s ease}.theme-toggle:hover{border-color:#0d9488;border-color:var(--primary);color:#0d9488;color:var(--primary)}.main-content{margin:0 auto;max-width:1440px;padding:2rem 3rem;position:relative;z-index:1}.hero-section{margin:64px 0 6rem;padding:0}.hero-card{grid-gap:5rem;align-items:center;background:#fff;background:var(--card-bg);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:20px;border-radius:var(--radius-xl);box-shadow:0 24px 60px #0000001a;box-shadow:var(--shadow-lg);display:grid;gap:5rem;grid-template-columns:3fr 2fr;overflow:hidden;padding:4rem 5rem;position:relative}.dark-mode .hero-card{background:#0d2137;border-color:#2dd4bf1f}.hero-card:before{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);border-radius:4px 0 0 4px;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.hero-card:after{background:radial-gradient(circle,#0d948814 0,#0000 70%);border-radius:50%;content:"";height:350px;pointer-events:none;position:absolute;right:-100px;top:-100px;width:350px}.dark-mode .hero-card:after{background:radial-gradient(circle,#2dd4bf12 0,#0000 70%)}.hero-inner{display:flex;flex-direction:column;min-width:0;padding:.5rem 0;z-index:1}.hero-badges{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem}.badge{align-items:center;background:#0d948814;border:1px solid #0d94881f;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#0d9488;color:var(--primary);display:inline-flex;font-size:.75rem;font-weight:700;gap:.4rem;letter-spacing:.04em;padding:.3rem .85rem;text-transform:uppercase}.badge:before{animation:pulse-dot 2s infinite;background:#10b981;background:var(--success);border-radius:50%;content:"";height:6px;width:6px}.badge-location{background:#10b98112;border-color:#10b98126;color:#059669;font-weight:600;letter-spacing:0;text-transform:none}.dark-mode .badge-location{color:#34d399}.badge-location:before{display:none}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.hero-greeting{color:#0d9488;color:var(--primary);font-family:Fira Code,Courier New,monospace;font-size:.875rem;font-weight:600;letter-spacing:.08em;margin:0 0 .5rem;text-transform:uppercase}.hero-inner h1,.hero-name{color:#0f172a;color:var(--text-color);font-size:3.25rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0 0 .75rem}.gradient-text{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;color:#0000}.typewriter{font-family:Fira Code,Courier New,monospace;font-size:1.1rem;font-weight:500;margin:.5rem 0 1.25rem;min-height:1.8rem}.static-text,.typewriter{color:#475569;color:var(--text-muted)}.dynamic-text{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:#0000;font-weight:600}.specialty{color:#475569;color:var(--text-muted);font-size:.9625rem;font-weight:400;line-height:1.8;margin-bottom:0;max-width:580px}.specialty strong{color:#0d9488;color:var(--primary);font-weight:600}.hero-stack{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.25rem 0}.stack-pill{background:#f1f5f9;background:var(--bg-secondary);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:6px;border-radius:var(--radius-sm);color:#475569;color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.75rem;font-weight:500;letter-spacing:0;padding:.3rem .75rem;transition:all .2s ease}.stack-pill:hover{background:#0d94880f;border-color:#0d9488;border-color:var(--primary);color:#0d9488;color:var(--primary)}.dark-mode .stack-pill:hover{background:#2dd4bf0f}.hero-stats{border-bottom:1px solid #64748b2e;border-bottom:1px solid var(--border-subtle);border-top:1px solid #64748b2e;border-top:1px solid var(--border-subtle);display:flex;gap:0;margin-bottom:1.5rem;padding:1.25rem 0;width:fit-content}.stat-item{border-inline-end:1px solid #64748b2e;border-inline-end:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.15rem;margin-inline-end:2rem;padding-inline-end:2rem}.stat-item:last-child{border-inline-end:none;margin-inline-end:0;padding-inline-end:0}.stat-number{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1}.stat-label{color:#475569;color:var(--text-muted);font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.hero-actions{display:flex;flex-wrap:wrap;gap:.6rem}.cv-download-btn{align-items:center;background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);border-radius:6px;border-radius:var(--radius-sm);box-shadow:0 4px 16px #0d94884d;color:#fff;display:inline-flex;font-size:.875rem;font-weight:600;gap:.4rem;padding:.65rem 1.4rem;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.cv-download-btn:hover{opacity:.88;transform:translateY(-2px)}.github-btn{align-items:center;background:#0000;border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:6px;border-radius:var(--radius-sm);color:#0f172a;color:var(--text-color);display:inline-flex;font-size:.875rem;font-weight:600;gap:.4rem;padding:.65rem 1.4rem;text-decoration:none;transition:all .2s ease}.github-btn:hover{border-color:#0d9488;border-color:var(--primary);color:#0d9488;color:var(--primary);transform:translateY(-2px)}.linkedin-btn{align-items:center;background:#0000;border:1px solid #0a66c240;border-radius:6px;border-radius:var(--radius-sm);color:#0a66c2;display:inline-flex;font-size:.875rem;font-weight:600;gap:.4rem;padding:.65rem 1.4rem;text-decoration:none;transition:all .2s ease}.linkedin-btn:hover{background:#0a66c20f;transform:translateY(-2px)}.hero-visual{display:none}.hero-image{aspect-ratio:3/4;border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 0 0 1px #64748b2e,0 0 0 6px #f1f5f9,0 0 0 7px #64748b2e,0 8px 32px #0d94882e;box-shadow:0 0 0 1px var(--border-subtle),0 0 0 6px var(--bg-secondary),0 0 0 7px var(--border-subtle),var(--shadow-color);overflow:hidden;position:relative;width:100%;z-index:1}.hero-image img{height:100%;object-fit:cover;object-position:center top;width:100%}.hero-divider{display:none}.tech-icons{inset:0;pointer-events:none;position:absolute}.tech-icon{animation:float 3s ease-in-out infinite;background:#fff;background:var(--card-bg);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 4px 20px #00000012;box-shadow:var(--shadow);font-size:1.5rem;padding:.6rem;position:absolute}.tech-icon:first-child{animation-delay:0s;right:-8%;top:8%}.tech-icon:nth-child(2){animation-delay:.6s;left:-8%;top:70%}.tech-icon:nth-child(3){animation-delay:1.2s;right:-8%;top:38%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width:1080px){.hero-image img{object-position:center top}}@media (max-width:768px){.hero-card{border-radius:14px;border-radius:var(--radius-lg);gap:2rem;grid-template-columns:1fr;padding:2rem}.hero-image{aspect-ratio:unset;border-radius:50%;box-shadow:0 0 0 4px #f8fafc,0 0 0 6px #64748b2e,0 8px 32px #0d94882e;box-shadow:0 0 0 4px var(--bg-color),0 0 0 6px var(--border-subtle),var(--shadow-color);height:180px;margin:0 auto;order:-1;width:180px}.hero-image img{object-position:center top}.hero-inner h1,.hero-name{font-size:2.4rem}.hero-stats{gap:0}.stat-item{margin-inline-end:1.25rem;padding-inline-end:1.25rem}.specialty{max-width:100%}}.section-heading{color:#0f172a;color:var(--text-color);font-size:2.25rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;text-align:center}.section-heading span{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient-text);-webkit-background-clip:text;background-clip:text;color:#0000}.project-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:2rem 0 2.75rem}.filter-btn{background:#0000;border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:6px;border-radius:var(--radius-sm);color:#475569;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;letter-spacing:0;padding:.45rem 1.1rem;transition:all .2s ease}.filter-btn:hover{border-color:#0d9488;border-color:var(--primary);color:#0d9488;color:var(--primary)}.filter-btn.active{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);border-color:#0000;box-shadow:0 4px 14px #0d94884d;color:#fff}.projects-section{margin-bottom:5rem}.projects-section h2{font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem;text-align:center}.projects-header,.projects-list{display:none}.projects-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:2rem}.project-card{background:#fff;background:var(--card-bg);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.project-card:before{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .25s ease;z-index:1}.project-card:hover{border-color:#0d94881f;border-color:var(--border);box-shadow:0 24px 60px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-5px)}.project-card:hover:before{opacity:1}.project-image{background:#f1f5f9;background:var(--bg-secondary);height:200px;overflow:hidden;position:relative}.project-image img{height:100%;object-fit:contain;transition:transform .4s ease;width:100%}.project-card:hover .project-image img{transform:scale(1.03)}.project-image:after{background:linear-gradient(0deg,#0d948880 0,#0000 60%);content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.project-card:hover .project-image:after{opacity:1}.project-category{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000a6;border-radius:6px;border-radius:var(--radius-sm);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.05em;padding:.25rem .65rem;position:absolute;right:.75rem;text-transform:uppercase;top:.75rem;z-index:1}.project-info{display:flex;flex:1 1;flex-direction:column;padding:1.25rem 1.4rem 1.4rem}.project-info h3{color:#0f172a;color:var(--text-color);font-size:1rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .3rem}.project-subtitle{color:#475569;color:var(--text-muted);font-size:.8125rem;font-weight:400;line-height:1.55;margin:0 0 1rem}.project-details{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.project-date{color:#475569;color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.75rem;font-weight:500}.project-status{border-radius:6px;border-radius:var(--radius-sm);font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.project-status.completed{background:#10b9811a;border:1px solid #10b98133;color:#10b981}.project-status.in-progress{background:#0d94881a;border:1px solid #0d94881f;border:1px solid var(--border);color:#0d9488;color:var(--primary)}.project-status.in-production,.project-status.paused{background:#f59e0b1a;border:1px solid #f59e0b33;color:#f59e0b;color:var(--warning)}.project-tech-preview{margin-top:auto}.tech-preview-personal{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem}.tech-tag{align-items:center;border-radius:6px;border-radius:var(--radius-sm);display:inline-flex;font-family:Fira Code,Courier New,monospace;font-size:.7rem;font-weight:700;gap:.3rem;padding:.25rem .6rem}.tech-tag.personal{background:#0d948814;border:1px solid #0d94881f;border:1px solid var(--border);color:#0d9488;color:var(--primary)}.tech-tag.contributors{background:#6366f114;border:1px solid #6366f126;color:#6366f1}.personal-indicator{color:#f59e0b;color:var(--warning);font-size:.65rem}.tech-more{color:#475569;color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.72rem;padding:.2rem .45rem}.project-category-pill,.project-row,.project-row-arrow,.project-row-aside,.project-row-body,.project-row-index,.project-row-more,.project-row-tags,.project-row-tech,.project-row-thumb,.project-row-top,.projects-count{display:none}.project-modal{align-items:center;animation:fadeInOverlay .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUpModal .3s ease;background:#fff;background:var(--card-bg);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:20px;border-radius:var(--radius-xl);box-shadow:0 40px 120px #00000059;max-height:90vh;max-width:860px;overflow-y:auto;position:relative;width:100%}@keyframes slideUpModal{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content::-webkit-scrollbar{width:5px}.modal-content::-webkit-scrollbar-track{background:#0000}.modal-content::-webkit-scrollbar-thumb{background:#0d94881f;background:var(--border);border-radius:99px}.close-modal{align-items:center;background:#f1f5f9;background:var(--bg-secondary);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:6px;border-radius:var(--radius-sm);color:#475569;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.2rem;height:34px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:34px;z-index:2}.close-modal:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444;color:var(--danger)}.modal-info{padding:2rem 2.5rem 2.5rem}.modal-info h2{font-size:1.7rem;font-weight:900;letter-spacing:-.03em;margin:0 0 .3rem}.modal-subtitle{color:#475569;color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.88rem;margin:0 0 1.5rem}.modal-metadata{background:#f1f5f9;background:var(--bg-secondary);border:1px solid #64748b2e;border-left:3px solid #0d9488;border:1px solid var(--border-subtle);border-left:3px solid var(--primary);border-radius:10px;border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem;padding:1rem 1.25rem}.metadata-item{align-items:center;color:#475569;color:var(--text-muted);display:flex;font-size:.83rem;gap:.4rem}.metadata-item strong{color:#0f172a;color:var(--text-color);font-weight:700}.status-badge{align-items:center;border-radius:6px;border-radius:var(--radius-sm);display:inline-flex;font-size:.68rem;font-weight:700;letter-spacing:.05em;margin-left:.25rem;padding:.18rem .6rem;text-transform:uppercase}.status-badge.completed{background:#10b9811a;color:#10b981}.status-badge.in-progress{background:#0d94881a;color:#0d9488;color:var(--primary)}.status-badge.in-production,.status-badge.paused{background:#f59e0b1a;color:#f59e0b;color:var(--warning)}.modal-description{color:#0f172a;color:var(--text-color);font-size:.93rem;line-height:1.75;margin-bottom:1.75rem}.modal-description-list{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.75rem}.description-section{background:#0d94880a;border:1px solid #0d94881f;border-left:3px solid #0d9488;border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:0 6px 6px 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.9rem 1.1rem}.dark-mode .description-section{background:#2dd4bf0a}.description-section-title{color:#0d9488;color:var(--primary);font-family:Fira Code,Courier New,monospace;font-size:.68rem;font-weight:800;letter-spacing:.12em;margin:0 0 .6rem;text-transform:uppercase}.description-section ul{display:flex;flex-direction:column;gap:.35rem;list-style:disc;margin:0;padding-left:1.1rem}.description-section li{color:#0f172a;color:var(--text-color);font-size:.87rem;line-height:1.6}.modal-technologies{margin-bottom:1.75rem}.tech-section{margin-bottom:1rem}.tech-section-title{color:#475569;color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.72rem;font-weight:700;letter-spacing:.1em;margin-bottom:.6rem;text-transform:uppercase}.tech-tags{display:flex;flex-wrap:wrap;gap:.4rem}.view-project-btn{align-items:center;background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);border-radius:6px;border-radius:var(--radius-sm);box-shadow:0 4px 16px #0d94884d;color:#fff;display:inline-flex;font-size:.88rem;font-weight:700;gap:.5rem;letter-spacing:.02em;padding:.75rem 1.75rem;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.view-project-btn:hover{opacity:.88;transform:translateY(-2px)}.about-section{margin-bottom:5rem}.about-container{margin:0 auto;max-width:100%}.section-title{color:#0f172a;color:var(--text-color);font-size:2.25rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.5rem;text-align:center}.section-title:after{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);border-radius:99px;content:"";display:block;height:3px;margin:.75rem auto 2.75rem;width:36px}.about-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.about-card--wide{grid-column:1/-1}.about-card{background:#fff;background:var(--card-bg);border:1px solid #64748b2e;border:1px solid var(--border-subtle);border-radius:14px;border-radius:var(--radius-lg);box-shadow:0 1px 3px #0000000f;box-shadow:var(--shadow-sm);overflow:hidden;padding:2rem;position:relative;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.about-card:before{background:linear-gradient(135deg,#0d9488,#0f766e);background:var(--gradient);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .25s}.about-card:hover{border-color:#0d94881f;border-color:var(--border);box-shadow:0 4px 20px #00000012;box-shadow:var(--shadow);transform:translateY(-4px)}.about-card:hover:before{opacity:1}.card-header{gap:1rem;margin-bottom:1.25rem}.card-header,.card-icon{align-items:center;display:flex}.card-icon{background:#0d948814;border:1px solid #0d94881f;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);flex-shrink:0;height:44px;justify-content:center;transition:background .25s;width:44px}.about-card:hover .card-icon{background:#0d948824}.card-icon svg{stroke:#0d9488;stroke:var(--primary);height:20px;width:20px}.card-title{color:#0f172a;color:var(--text-color);font-size:1rem;font-weight:700;letter-spacing:-.01em;margin:0}.card-content{color:#475569;color:var(--text-muted);font-size:.875rem;line-height:1.75}.card-content p{margin:0 0 .75rem}.card-content p:last-child{margin-bottom:0}.card-content strong{color:#0f172a;color:var(--text-color);font-weight:600}.principles-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.principle-item{align-items:center;border-bottom:1px solid #64748b2e;border-bottom:1px solid var(--border-subtle);color:#475569;color:var(--text-muted);display:flex;font-size:.875rem;gap:.75rem;padding:.4rem 0}.principle-item:last-child{border-bottom:none}.principle-check{stroke:#0d9488;stroke:var(--primary);flex-shrink:0;height:16px;width:16px}.approach-steps{display:flex;flex-direction:column;gap:.85rem}.approach-step{align-items:flex-start;display:flex;gap:1rem}.step-number{align-items:center;background:#0d948814;border:1px solid #0d94881f;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#0d9488;color:var(--primary);display:flex;flex-shrink:0;font-family:Fira Code,Courier New,monospace;font-size:.75rem;font-weight:700;height:32px;justify-content:center;letter-spacing:.02em;min-width:32px}.step-content h4{color:#0f172a;color:var(--text-color);font-size:.875rem;font-weight:600;margin:0 0 .2rem}.step-content p{color:#475569;color:var(--text-muted);font-size:.8125rem;line-height:1.55;margin:0}.philosophy-quote{background:#0d94880d;border-left:3px solid #0d9488;border-left:3px solid var(--primary);border-radius:0 6px 6px 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:#0d9488;color:var(--primary);font-size:.9375rem;font-style:italic;font-weight:500;line-height:1.65;margin-bottom:1rem;padding:.9rem 1.1rem}.dark-mode .philosophy-quote{background:#2dd4bf0d}.philosophy-points{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.point-tag{background:#0d948812;border:1px solid #0d94881f;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#0d9488;color:var(--primary);font-size:.75rem;font-weight:600;padding:.3rem .75rem}@media (max-width:768px){.about-grid{grid-template-columns:1fr}.about-card--wide{grid-column:1}.section-title{font-size:1.875rem}}.contact-section{background:#fff;border:1px solid #64748b2e;border-radius:20px;border-top:3px solid #0d9488;box-shadow:0 4px 20px #00000012}.contact-subtitle{color:#475569}@media (max-width:768px){.main-content{padding:1rem 1.25rem}.projects-grid{grid-template-columns:1fr}.modal-content{border-radius:14px;border-radius:var(--radius-lg)}.modal-info{padding:1.5rem}.modal-metadata{flex-direction:column;gap:.5rem}.contact-section{padding:2rem 1.5rem}}@media (max-width:480px){.hero-name,.hero-text h1{font-size:2rem}.typewriter{font-size:1.1rem}.filter-btn{padding:.4rem .9rem}.section-heading,.section-title{font-size:1.8rem}}.about-content{border-radius:var(--radius-lg)}.about-content,.contact-section{background:var(--card-bg);border:1px solid var(--border-subtle);box-shadow:var(--shadow);padding:3rem}.contact-section{border-radius:var(--radius-xl);border-top:3px solid var(--primary);margin-bottom:3rem}.contact-header{margin-bottom:3rem;text-align:center}.contact-header h2{color:var(--text-color);font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem}.contact-subtitle{color:var(--text-muted);font-size:.95rem;margin:0}.contact-wrapper{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.contact-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;height:100%;padding:2rem}.contact-card-header{margin-bottom:1.75rem}.contact-card-header h3{color:var(--text-color);font-size:1.15rem;font-weight:800;letter-spacing:-.01em;margin:0 0 .35rem}.contact-card-header p{color:var(--text-muted);font-size:.86rem;margin:0}.contact-methods{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.contact-method{align-items:flex-start;display:flex;gap:1rem}.contact-icon{align-items:center;background:#0d948814;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.contact-icon svg{stroke:var(--primary);height:20px;width:20px}.contact-details h4{color:var(--text-color);font-size:.88rem;font-weight:700;margin:0 0 .2rem}.contact-details p{color:var(--text-muted);font-size:.85rem;margin:0}.availability{color:var(--text-muted);display:block;font-size:.72rem;margin-top:.2rem;opacity:.75}.social-networks{margin-top:auto;padding-top:1.5rem}.social-networks h4{color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.1em;margin:0 0 .9rem;text-transform:uppercase}.social-links{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.social-links span{align-self:center;color:var(--text-muted);font-size:.86rem;font-weight:500}.social-link{align-items:center;background:#0d948812;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;height:40px;justify-content:center;text-decoration:none;transition:all .25s;width:40px}.social-link:hover{background:var(--gradient);border-color:#0000;box-shadow:0 6px 20px #0d948840;transform:translateY(-3px)}.social-link img{height:18px;object-fit:contain;transition:filter .25s;width:18px}.social-link:hover img{filter:brightness(0) invert(1)}.contact-form-container{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:2rem}.contact-form{display:flex;flex-direction:column;gap:0;height:100%}.contact-form h3{color:var(--text-color);font-size:1.15rem;font-weight:800;letter-spacing:-.01em;margin:0 0 .35rem}.form-intro{color:var(--text-muted);font-size:.86rem;line-height:1.55;margin:0 0 1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);display:block;font-size:.75rem;font-weight:700;letter-spacing:.06em;margin-bottom:.4rem;text-transform:uppercase}.contact-form input,.contact-form textarea{background:var(--card-bg);border:1.5px solid var(--border-subtle);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-color);font-family:inherit;font-size:.88rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0d94881a;outline:none}.submit-button{background:var(--gradient);border:none;border-radius:var(--radius-sm);box-shadow:0 4px 20px #0d94884d;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:700;letter-spacing:.02em;margin-top:.5rem;padding:.85rem;transition:opacity .2s,transform .2s;width:100%}.submit-button:hover{opacity:.88;transform:translateY(-2px)}.submit-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.form-note{color:var(--text-muted);font-size:.72rem;margin:.6rem 0 0;text-align:center}.form-feedback{border-radius:var(--radius-sm);font-size:.86rem;font-weight:600;margin-bottom:1rem;padding:.8rem 1rem}.form-feedback.success{background:#10b98114;border:1px solid #10b98140;color:#10b981}.form-feedback.error{background:#ef444414;border:1px solid #ef444440;color:#ef4444}.skill-tags{display:flex;flex-wrap:wrap;gap:.35rem}.skill-tag{background:#0d948812;border-radius:var(--radius-sm);font-family:Fira Code,Courier New,monospace}@media (max-width:768px){.contact-section{padding:2rem 1.25rem}.contact-wrapper{gap:1.25rem;grid-template-columns:1fr}.contact-card,.contact-form-container{padding:1.5rem}.contact-header h2{font-size:2rem}}@media (max-width:480px){.contact-section{padding:1.5rem 1rem}}.hamburger-btn{background:none;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:none;margin-right:1rem;padding:.45rem;transition:all .2s ease}.hamburger-btn:hover{border-color:var(--primary);color:var(--primary)}.logo{height:28px;padding:0 6px}.lang-switcher{position:relative}.lang-btn{align-items:center;background:none;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;font-weight:500;gap:.4rem;padding:.4rem .75rem;transition:all .2s;white-space:nowrap}.lang-btn:hover{border-color:var(--primary);color:var(--primary)}.lang-flag{font-size:1rem}.lang-flag,.lang-label{line-height:1}.lang-chevron{flex-shrink:0;transition:transform .2s}.lang-chevron.open{transform:rotate(180deg)}.lang-dropdown{animation:fadeInDrop .15s ease;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:145px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:200}[dir=rtl] .lang-dropdown{left:0;right:auto}@keyframes fadeInDrop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.lang-option{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;font-weight:500;gap:.6rem;padding:.6rem 1rem;text-align:left;transition:background .15s,color .15s;width:100%}[dir=rtl] .lang-option{text-align:right}.lang-option:hover{background:var(--bg-secondary);color:var(--text-color)}.lang-option.active{background:#0d94880f;color:var(--primary);font-weight:700}[dir=rtl] .hero-card:before{border-radius:0 4px 4px 0;left:auto;right:0}[dir=rtl] .hero-card:after{left:-100px;right:auto}@media (max-width:768px){.nav{justify-content:space-between}.theme-toggle{margin-right:0}.hamburger-btn{align-items:center;display:flex;justify-content:center;position:relative;z-index:1000}.nav-links{align-items:stretch;background:var(--card-bg);border-bottom:1px solid var(--border-subtle);box-shadow:0 16px 40px #0000001f;display:none;flex-direction:column;gap:.1rem;left:0;padding:.75rem;position:absolute;right:0;top:100%}.nav-links.show-menu{display:flex}.nav-links a{border-radius:var(--radius-sm);padding:.6rem 1rem;text-align:center;width:100%}.nav-links a:hover{background:#0d94880f}.lang-btn{justify-content:center;width:100%}.lang-dropdown{left:0;min-width:0;min-width:auto;right:0}}.carousel-container{height:256px;overflow:hidden;position:relative;width:100%}.carousel-slides{bottom:0;display:flex;left:0;position:absolute;right:0;top:0;transition:transform .3s ease-in-out}.carousel-slide{flex-shrink:0;height:100%;object-fit:contain;width:100%}.carousel-button{align-items:center;background:#00000080;border:none;border-radius:9999px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.5rem;position:absolute;top:50%;transform:translateY(-50%);transition:background-color .3s}.carousel-button:hover{background:#000000b3}.carousel-button-previous{left:.5rem}.carousel-button-next{right:.5rem}.carousel-dots{bottom:.5rem;display:flex;gap:.5rem;left:50%;position:absolute;transform:translateX(-50%)}.carousel-dot{background:#ffffff80;border:none;border-radius:9999px;cursor:pointer;height:.5rem;padding:0;transition:background-color .3s;width:.5rem}.carousel-dot.active{background:#fff}.services-section{margin:1rem 0 5rem;padding:0}.services-container{margin:0 auto;max-width:100%}.services-header{margin-bottom:3rem;text-align:center}.services-title{color:var(--text-color);font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem}.services-underline{background:var(--gradient);border-radius:99px;height:3px;margin:.75rem auto 1.25rem;width:36px}.services-subtitle{color:var(--text-muted);font-size:.93rem;line-height:1.65;margin:0 auto;max-width:480px}.services-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:3rem}.service-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;padding:1.75rem;position:relative;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:before{background:var(--gradient);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .25s}.service-card:hover{border-color:var(--border);box-shadow:var(--shadow);transform:translateY(-4px)}.service-card:hover:before{opacity:1}.service-icon-wrapper{align-items:center;background:#0d948814;border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:48px;justify-content:center;margin-bottom:1.25rem;transition:background .25s,transform .25s;width:48px}.service-card:hover .service-icon-wrapper{background:#0d948824;transform:scale(1.08)}.service-icon{align-items:center;color:var(--primary);display:flex;height:22px;justify-content:center;width:22px}.service-icon svg{stroke:var(--primary);height:22px;width:22px}.service-title{color:var(--text-color);font-size:1rem;font-weight:800;letter-spacing:-.01em;margin:0 0 .55rem}.service-description{color:var(--text-muted);flex-grow:1;font-size:.85rem;line-height:1.65;margin:0 0 1.25rem}.service-skills{display:flex;flex-wrap:wrap;gap:.35rem}.service-skill-wrapper{position:relative}.service-skill{align-items:center;background:#0d948812;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);cursor:default;display:flex;font-family:Fira Code,Courier New,monospace;font-size:.7rem;font-weight:600;gap:.35rem;padding:.25rem .6rem;transition:all .2s}.service-skill:hover{background:#0d948824}.expertise-dots{align-items:center;display:flex;gap:2px}.expertise-dot{border-radius:50%;height:4px;transition:all .2s;width:4px}.expertise-dot.active{background:var(--primary)}.expertise-dot.inactive{background:var(--border-subtle)}.skill-tooltip{animation:fadeInTip .15s ease;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);bottom:calc(100% + 8px);box-shadow:var(--shadow);min-width:140px;padding:.5rem .8rem;pointer-events:none;z-index:10}.skill-tooltip,.skill-tooltip:after{left:50%;position:absolute;transform:translateX(-50%)}.skill-tooltip:after{border:5px solid #0000;border-top:5px solid var(--border-subtle);content:"";top:100%}.tooltip-level{color:var(--primary);font-family:Fira Code,Courier New,monospace;font-size:.7rem;font-weight:700}.tooltip-description{color:var(--text-muted);font-size:.68rem;margin-top:.1rem}@keyframes fadeInTip{0%{opacity:0;transform:translateX(-50%) translateY(4px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.satisfaction-container{background:#0d94880a;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem 2rem;text-align:center}.dark-mode .satisfaction-container{background:#2dd4bf0a}.satisfaction-content{align-items:center;display:flex;gap:.75rem;justify-content:center}.satisfaction-svg{stroke:var(--warning);fill:#f59e0b26;flex-shrink:0;height:22px;width:22px}.satisfaction{color:var(--text-color);font-size:1rem;font-weight:600;margin:0}@media (max-width:768px){.services-title{font-size:2rem}.services-grid{gap:1rem;grid-template-columns:1fr}.service-card{padding:1.5rem}}.experience-section{background:#0000;margin-bottom:5rem;padding:0}.experience-container{margin:0 auto;max-width:100%;padding:0}.experience-title{color:var(--text-color);font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem;text-align:center}.experience-underline{background:var(--gradient);border-radius:99px;height:3px;margin:0 auto 3.5rem;width:36px}.experience-timeline{display:flex;flex-direction:column;gap:1.25rem;position:relative}.experience-timeline:before{background:var(--gradient);content:"";height:100%;left:28px;opacity:.18;position:absolute;top:0;width:2px}.experience-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.75rem 1.75rem 1.75rem 4.5rem;position:relative;transition:transform .25s,box-shadow .25s,border-color .25s}.experience-card:hover{border-color:var(--border);box-shadow:var(--shadow);transform:translateY(-3px)}.experience-card:before{background:var(--gradient);border:3px solid var(--bg-color);border-radius:50%;box-shadow:0 0 0 2px var(--border);content:"";height:16px;left:20px;position:absolute;top:2rem;width:16px;z-index:1}.experience-header{margin-bottom:1rem}.experience-title-section{align-items:flex-start;display:flex;gap:1rem}.company-logo{flex-shrink:0;height:50px;position:relative;width:50px}.logo-entreprise{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);height:100%;object-fit:contain;padding:6px;width:100%}.logo-fallback{align-items:center;background:var(--gradient);border-radius:var(--radius-sm);color:#fff;display:none;font-size:1.4rem;font-weight:800;height:100%;justify-content:center;width:100%}.role-company-info{flex:1 1}.experience-header h3{color:var(--text-color);font-size:1.1rem;font-weight:800;letter-spacing:-.01em;margin:0 0 .35rem}.experience-meta{display:flex;flex-wrap:wrap;font-size:.82rem;gap:.3rem;justify-content:space-between}.company{color:var(--primary);font-weight:700}.duration{color:var(--text-muted);font-weight:600}.experience-description{display:flex;flex-direction:column;gap:.3rem;list-style:disc;margin:0 0 1.25rem;padding-left:1.1rem}.experience-description li{color:var(--text-muted);font-size:.86rem;line-height:1.65}.experience-skills{display:flex;flex-wrap:wrap;gap:.35rem}.skill-tag{background:#e11d4812;border:1px solid var(--border);border-radius:99px;color:var(--primary);font-size:.73rem;font-weight:600;padding:.25rem .65rem;transition:all .2s}.skill-tag:hover{background:var(--gradient);border-color:#0000;color:#fff}@media (max-width:768px){.experience-card{padding:1.25rem 1.25rem 1.25rem 3.75rem}.experience-card:before{height:14px;left:17px;top:1.4rem;width:14px}.experience-timeline:before{left:23px}.company-logo{height:44px;width:44px}}@media (max-width:480px){.experience-container{padding:0}.experience-card{padding:1rem 1rem 1rem 3.25rem}.experience-header h3{font-size:1rem}.experience-meta{flex-direction:column}}.education-section{margin-bottom:5rem}.education-container{margin:0 auto;max-width:100%;padding:0}.education-title{color:var(--text-color);font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem;text-align:center}.education-underline{background:var(--gradient);border-radius:99px;height:3px;margin:0 auto 3.5rem;width:36px}.education-timeline{display:flex;flex-direction:column;gap:1.25rem}.education-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:2rem;overflow:hidden;padding:1.75rem 2rem;position:relative;transition:transform .25s,box-shadow .25s,border-color .25s}.education-card:before{background:var(--gradient);border-radius:3px 0 0 3px;content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .25s;width:3px}.education-card:hover{border-color:var(--border);box-shadow:var(--shadow);transform:translateY(-3px)}.education-card:hover:before{opacity:1}.education-card-left{align-items:center;display:flex;flex-direction:column;gap:.6rem;min-width:76px;padding-top:.2rem}.education-badge{background:var(--gradient);border-radius:99px;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.07em;padding:.3rem .65rem;text-transform:uppercase;white-space:nowrap}.education-duration{color:var(--primary);font-size:.72rem;font-weight:700;text-align:center;white-space:nowrap}.education-card-right{flex:1 1}.education-degree{color:var(--text-color);font-size:1.05rem;font-weight:800;letter-spacing:-.01em;line-height:1.35;margin:0 0 .3rem}.education-school{color:var(--primary);font-size:.83rem;font-weight:700;margin:0 0 .7rem}.education-description{color:var(--text-muted);font-size:.86rem;line-height:1.65;margin:0 0 .9rem}.education-highlights{display:flex;flex-direction:column;gap:.3rem;list-style:none;margin:0;padding:0}.education-highlights li{color:var(--text-muted);font-size:.82rem;line-height:1.5;padding-left:1.1rem;position:relative}.education-highlights li:before{color:var(--primary);content:"▸";font-size:.72rem;left:0;position:absolute}@media (max-width:600px){.education-card{flex-direction:column;gap:1rem;padding:1.4rem}.education-card-left{align-items:center;flex-direction:row;min-width:0;min-width:auto}}.blog-section{margin-bottom:5rem}.blog-container{margin:0 auto;max-width:100%;padding:0}.blog-title{color:var(--text-color);font-size:2.5rem;font-weight:900;letter-spacing:-.03em;margin-bottom:.5rem;text-align:center}.blog-underline{background:var(--gradient);border-radius:99px;height:3px;margin:0 auto 1rem;width:36px}.blog-subtitle{color:var(--text-muted);font-size:.93rem;line-height:1.65;margin:0 auto 3rem;max-width:500px;text-align:center}.blog-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.blog-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);border-top:2px solid #0000;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.25rem;justify-content:space-between;padding:1.75rem;transition:transform .25s,box-shadow .25s,border-color .25s}.blog-card:hover{border-top-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-4px)}.blog-card-top{display:flex;flex-direction:column;gap:.65rem}.blog-meta{align-items:center;color:var(--primary);display:flex;font-family:Fira Code,Courier New,monospace;font-size:.75rem;font-weight:700;gap:.4rem}.blog-dot{opacity:.4}.blog-card-title{color:var(--text-color);font-size:1rem;font-weight:800;letter-spacing:-.01em;line-height:1.4;margin:0}.blog-card-summary{color:var(--text-muted);font-size:.84rem;line-height:1.65;margin:0}.blog-card-bottom{align-items:center;border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;padding-top:1rem}.blog-tags{display:flex;flex-wrap:wrap;gap:.3rem}.blog-tag{background:#0d948812;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);font-family:Fira Code,Courier New,monospace;font-size:.68rem;font-weight:600;padding:.18rem .5rem}.blog-read-btn{color:var(--primary);font-size:.82rem;font-weight:700;text-decoration:none;transition:opacity .2s;white-space:nowrap}.blog-read-btn:hover{opacity:.65}.blog-coming-soon{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-muted);font-family:Fira Code,Courier New,monospace;font-size:.72rem;font-weight:600;padding:.2rem .6rem;white-space:nowrap}@media (max-width:768px){.blog-grid{grid-template-columns:1fr}.blog-title{font-size:2rem}}
/*# sourceMappingURL=main.baaff628.css.map*/