.nodejs-tech-stack-section{background-color:#fff}.tech-stack-accordion{display:flex;flex-direction:column;gap:20px;max-width:1200px;margin:0 auto}.tech-stack-card{border:1px solid #f0f0f0;border-radius:12px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff}.tech-stack-card:hover{border-color:#ec732333;box-shadow:0 10px 30px -10px rgba(236,115,35,.1)}.tech-stack-card.expanded{border-color:#f0f0f0;box-shadow:0 4px 20px rgba(0,0,0,.05)}.card-header{padding:24px 30px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:#fff;transition:background-color .2s ease;background:none;border:none;width:100%;text-align:left;cursor:pointer}.card-header:hover{background-color:#fafafa}.header-left{display:flex;align-items:center;gap:24px}.category-icon-wrapper{width:56px;height:56px;background:#fdf2e9;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.category-text-heading{font-size:22px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.category-text p{font-size:16px;color:#666;margin:0;font-weight:400}.header-right{display:flex;align-items:center}.card-content{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s ease;opacity:0;background-color:#fff}.tech-stack-card.expanded .card-content{max-height:1000px;opacity:1;border-top:1px solid #f5f5f5}.items-grid{padding:30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:24px;gap:24px}.tech-item{padding:24px;background:#eee;border:1px solid #f0f0f0;border-radius:8px;transition:transform .2s ease,box-shadow .2s ease}.tech-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.04);border-color:#ec732322}.tech-item-heading{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 12px}.tech-item p{font-size:16px;line-height:26px;color:#555;margin:0}.transition-transform{transition-property:transform}.duration-300{transition-duration:.3s}.rotate-180{transform:rotate(180deg)}@media (max-width:768px){.card-header{padding:20px}.header-left{gap:16px}.category-icon-wrapper{width:48px;height:48px}.category-text-heading{font-size:18px}.category-text p{font-size:14px}.items-grid{padding:20px;grid-template-columns:1fr}}