.technologies-page{background:linear-gradient(#0a0a0a 0%,#1a1a1a 100%);min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.tech-hero{text-align:center;padding:8rem 0 6rem;position:relative}.tech-title{color:#fffffff2;letter-spacing:.05em;text-shadow:0 2px 8px #00000080;margin-bottom:2rem;font-family:Plus Jakarta Sans,Arial,sans-serif;font-size:3.5rem;font-weight:700;line-height:1.2}.tech-subtitle{color:#fffc;text-shadow:0 1px 4px #0000004d;max-width:900px;margin:0 auto;font-size:1.25rem;line-height:1.8}.tech-search{padding:3rem 0;position:relative}.search-box{-webkit-backdrop-filter:blur(20px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;align-items:center;gap:1rem;max-width:700px;margin:0 auto;padding:1.25rem 2rem;transition:all .3s;display:flex}.search-box:focus-within{background:#ffffff14;border-color:#fff3;transform:translateY(-2px);box-shadow:0 8px 32px #0003}.search-box svg{color:#fff9;flex-shrink:0}.search-box input{color:#ffffffe6;background:0 0;border:none;outline:none;flex:1;font-size:1.1rem;font-weight:400}.search-box input::placeholder{color:#ffffff80}.tech-list{padding:4rem 0}.tech-grid-wrapper{position:relative}.tech-grid{will-change:max-height;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1.5rem;transition:max-height .8s cubic-bezier(.4,0,.2,1);display:grid;position:relative;overflow:hidden}.tech-grid.expanded{max-height:none}.tech-grid.expanding .tech-card{animation:.5s ease-out forwards fadeInUp}.tech-grid.expanding .tech-card:first-child{animation-delay:50ms}.tech-grid.expanding .tech-card:nth-child(2){animation-delay:80ms}.tech-grid.expanding .tech-card:nth-child(3){animation-delay:.11s}.tech-grid.expanding .tech-card:nth-child(4){animation-delay:.14s}.tech-grid.expanding .tech-card:nth-child(5){animation-delay:.17s}.tech-grid.expanding .tech-card:nth-child(6){animation-delay:.2s}.tech-grid.expanding .tech-card:nth-child(7){animation-delay:.23s}.tech-grid.expanding .tech-card:nth-child(8){animation-delay:.26s}.tech-grid.expanding .tech-card:nth-child(n+9){animation-delay:.29s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.tech-grid-overlay{-webkit-backdrop-filter:blur(10px);pointer-events:none;z-index:10;background:linear-gradient(#0a0a0a00 0%,#0a0a0acc 50%,#0a0a0af2 100%);justify-content:center;align-items:center;height:200px;transition:opacity .5s cubic-bezier(.4,0,.2,1),visibility .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;bottom:0;left:0;right:0}.tech-grid-overlay.hidden,.tech-grid.expanded~.tech-grid-overlay{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px)}.expand-button{-webkit-backdrop-filter:blur(20px);color:#ffffffe6;cursor:pointer;pointer-events:all;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex;box-shadow:0 8px 32px #0000004d}.expand-button:hover{background:#fff3;border-color:#fff6;transform:translateY(-2px);box-shadow:0 12px 40px #0006}.expand-button:active{transform:translateY(0)}.expand-button svg{transition:transform .5s cubic-bezier(.4,0,.2,1)}.tech-grid.expanded~.tech-grid-overlay .expand-button svg{transform:rotate(180deg)}@keyframes pulse{0%,to{box-shadow:0 8px 32px #0000004d,0 0 #fff6}50%{box-shadow:0 8px 32px #0000004d,0 0 0 8px #fff0}}.expand-button:not(:hover){animation:2s ease-in-out infinite pulse}.collapse-card{cursor:pointer;opacity:1;transition:opacity .3s,transform .3s,all .3s;transform:scale(1);background:#fffffff2!important;border:2px solid #fff!important}.collapse-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #ffffff4d;background:#fff!important}.collapse-card-button{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:1rem;width:100%;height:100%;padding:0;display:flex}.collapse-card-button svg{color:#1a1a1a;transition:transform .3s}.collapse-card:hover .collapse-card-button svg{transform:translateY(-3px)}.collapse-card-button h3{margin:0;font-weight:600;color:#1a1a1a!important}@media (width<=768px){.tech-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem}.expand-button{padding:.75rem 1.5rem;font-size:.9rem}.tech-grid-overlay{height:150px}}.tech-card{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:2rem 1rem;transition:all .3s}.tech-card:hover{background:#ffffff1a;transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.tech-icon-container{margin-bottom:1rem}.tech-card h3{color:#ffffffe6;font-size:1rem;font-weight:600}.tech-card.hidden{display:none}.featured-stacks{padding:4rem 0}.stacks-title{text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:3rem;font-size:2.5rem;font-weight:700}.stacks-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;display:grid}.stack-card{backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;padding:2rem;transition:all .3s}.stack-card:hover{border-color:#fff3;transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.stack-header{align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.stack-header svg{color:#667eea;flex-shrink:0;margin-top:.25rem}.stack-title-wrapper{flex:1}.stack-title-wrapper h3{color:#fffffff2;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.stack-subtitle{color:#ffffffb3;margin:0 0 .5rem;font-size:.95rem;line-height:1.5}.stack-examples{color:#ffffff80;margin:0;font-size:.85rem;font-style:italic}.stack-techs{background:#0003;border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem 1.25rem;min-height:80px;margin-bottom:1.5rem;padding:2rem 1.5rem;display:flex}.tech-badge{color:#ffffffe6;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff26;border-radius:10px;align-items:center;gap:.75rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.tech-badge:hover{background:#ffffff26;border-color:#ffffff40;transform:scale(1.05)}.tech-badge svg{flex-shrink:0;width:26px;height:26px}.tech-separator{color:#fff6;flex-shrink:0;margin:0 .25rem}.tech-or{color:#ffffff80;padding:0 .5rem;font-size:.9rem;font-weight:500}.stack-why{margin:0;padding:0;list-style:none}.stack-why li{color:#fffc;margin-bottom:.75rem;padding-left:1.5rem;font-size:.95rem;line-height:1.6;position:relative}.stack-why li:before{content:"✓";color:#667eea;font-size:1.1rem;font-weight:700;position:absolute;left:0}.stack-why li:last-child{margin-bottom:0}@media (width<=768px){.stacks-grid{grid-template-columns:1fr}.stack-card{padding:1.5rem}.stack-techs{gap:.75rem 1rem;padding:1.5rem 1rem}.tech-badge{gap:.5rem;padding:.6rem 1.2rem;font-size:.85rem}.tech-badge svg{width:22px;height:22px}}.cta-section{background:linear-gradient(135deg,#6495ed1a 0%,#9370db1a 100%);padding:8rem 2rem;position:relative;overflow:hidden}#cta-canvas-container{z-index:0;pointer-events:none;width:100%;height:150vh;position:absolute;top:0;left:0}#cta-canvas-container canvas{width:100%;height:100%;position:absolute;top:0;left:0}.cta-container{z-index:1;max-width:1200px;margin:0 auto;position:relative}.cta-content{text-align:center;max-width:800px;margin:0 auto}.cta-title{color:#fffffff2;letter-spacing:.05em;text-shadow:0 2px 8px #00000080;margin-bottom:2rem;font-family:Plus Jakarta Sans,Arial,sans-serif;font-size:3.5rem;font-weight:700}.cta-description{color:#fffc;text-shadow:0 1px 4px #0000004d;margin-bottom:3rem;font-size:1.25rem;line-height:1.8}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.cta-btn{color:#fffc;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:12px;justify-content:center;align-items:center;min-width:200px;padding:.875rem 1.75rem;font-size:1.05rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.cta-btn:hover{-webkit-backdrop-filter:blur(20px);color:#fffffff2;background:#ffffff1a;transform:translateY(-3px);box-shadow:0 12px 40px #0006}.cta-btn-primary{flex-shrink:0;width:220px;padding:1.5rem 3rem!important;font-size:1.35rem!important}.cta-btn-secondary{flex-shrink:0;width:220px;animation:3s ease-in-out infinite subtleGlowCTA;padding:1.5rem 3rem!important;font-size:1.35rem!important}@keyframes subtleGlowCTA{0%,to{border-color:#fff3;box-shadow:0 0 10px #ffffff1a}50%{border-color:#ffffff80;box-shadow:0 0 20px #ffffff4d,0 0 30px #fff3}}.cta-btn-secondary:hover{animation:none;color:#000!important;background:#fff!important;border-color:#fff!important}@media (width<=768px){.tech-hero{padding:6rem 0 4rem}.tech-title{margin-bottom:1.5rem;font-size:2.5rem}.tech-subtitle{padding:0 1rem;font-size:1.1rem}.tech-search{padding:2rem 0}.search-box{max-width:100%;padding:1rem 1.5rem}.search-box input{font-size:1rem}.cta-section{padding:6rem 1rem}.cta-container{padding:0 1rem}.cta-content{max-width:100%;padding:0}.cta-title{margin-bottom:1.5rem;padding:0;font-size:2.5rem}.cta-description{margin-bottom:2rem;padding:0;font-size:1.1rem}.cta-buttons{flex-direction:column;gap:1rem;width:100%;max-width:100%;margin:0;padding:0}.cta-btn,.cta-btn-primary,.cta-btn-secondary{box-sizing:border-box!important;width:100%!important;min-width:auto!important;max-width:100%!important;margin:0!important;padding:1.25rem 1.5rem!important;font-size:1.15rem!important}}
