.portfolio-block-heading .type-wrap{display:inline-flex;align-items:center;overflow:hidden;white-space:nowrap;vertical-align:bottom}.portfolio-block-heading .type-text{display:inline-block;white-space:nowrap;overflow:hidden;vertical-align:bottom}.portfolio-block-heading .type-cursor{display:inline-block;margin-left:2px;color:var(--accent);opacity:0;transition:opacity .2s}.portfolio-block-heading .type-wrap.typing .type-cursor,.portfolio-block-heading .type-wrap.typed .type-cursor{opacity:1;animation:type-blink 1s steps(2) infinite}.portfolio-tabs{grid-template-columns:1fr;width:max-content;max-width:100%;margin-left:auto;margin-right:auto}.portfolio-tab{padding-inline:48px;min-width:220px}.portfolio-panel{text-align:center}.portfolio-block-heading{justify-content:space-between}.tech-stack-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:760px;margin:0 auto}.tech-card{min-height:140px;padding:20px 14px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(145deg,#202022,#121214);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.tech-card:hover{transform:translateY(-7px);border-color:rgba(185,255,76,.5);box-shadow:0 16px 30px #0007}.tech-icon{width:56px;height:56px;display:block;object-fit:contain}.tech-icon-dark{padding:7px}.tech-card h3{margin:0;font-size:12px;font-weight:500;color:var(--cream)}.tech-card p{display:none}@media(max-width:900px){.tech-stack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.tech-stack-grid{gap:12px}.tech-card{min-height:128px;border-radius:18px}.tech-icon{width:48px;height:48px}}
