.services{z-index:1;position:relative;overflow-x:hidden}.services .container{max-width:1400px}.services__header{text-align:center;margin-bottom:var(--space-3xl)}.services__header .section-subtitle{max-width:650px;margin:0 auto}.services__bento{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid;position:relative}.services__card{cursor:pointer;background:var(--clr-surface,#0f172aa6);border:1px solid var(--clr-border,#ffffff14);-webkit-backdrop-filter:blur(12px);height:100%;box-shadow:var(--shadow-sm,0 10px 30px -10px #0000001a);border-radius:16px;flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.services__card-inner{z-index:2;flex-direction:column;height:100%;padding:28px;display:flex;position:relative}.services__card-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.services__card-icon{color:#fff;width:44px;height:44px;box-shadow:0 4px 14px color-mix(in srgb, var(--theme-color,#38bdf8) 35%, transparent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.services__card-metrics{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.metric-pill{font-family:"JetBrains Mono", monospace, var(--font-mono,monospace);color:var(--clr-text);background:var(--clr-surface-light,#ffffff0d);border:1px solid var(--clr-border,#ffffff1a);border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.metric-label{color:var(--theme-color,#38bdf8)}.services__card-title{color:var(--clr-text);letter-spacing:-.01em;margin-bottom:8px;font-size:1.2rem;font-weight:700}.services__card-desc{color:var(--clr-text-secondary);flex-grow:1;margin-bottom:20px;font-size:.88rem;line-height:1.6}.services__card-features{flex-wrap:wrap;gap:6px;margin-bottom:24px;display:flex}.services__feature-tag{color:var(--clr-text-secondary);background:var(--clr-surface-light,#ffffff0a);border:1px solid var(--clr-border,#ffffff14);border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.services__card:hover .services__feature-tag{color:var(--clr-text);border-color:color-mix(in srgb, var(--theme-color,#38bdf8) 40%, transparent)}.services__card-footer{border-top:1px solid var(--clr-border,#ffffff0f);margin-top:auto;padding-top:14px}.services__learn-more{color:var(--theme-color,#38bdf8);align-items:center;gap:8px;font-size:.82rem;font-weight:600;transition:gap .2s;display:inline-flex}.services__card:hover .services__learn-more{gap:12px}.services__card-glow{background:radial-gradient(circle at 85% 15%, color-mix(in srgb, var(--theme-color,#7c3aed) 12%, transparent) 0%, transparent 70%);opacity:0;pointer-events:none;z-index:1;width:100%;height:100%;transition:opacity .4s;position:absolute;top:0;right:0}.services__card:hover .services__card-glow{opacity:1}.services__card-border{opacity:0;pointer-events:none;-webkit-mask-composite:xor;z-index:3;border-radius:16px;padding:1px;transition:opacity .3s;position:absolute;inset:0;mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-position:0 0,0 0;mask-size:auto,auto;mask-repeat:repeat,repeat;mask-clip:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.services__card:hover .services__card-border{opacity:.8}.services__card:hover{border-color:color-mix(in srgb, var(--theme-color,#38bdf8) 60%, transparent);box-shadow:0 15px 35px -10px #0000001f, 0 0 25px color-mix(in srgb, var(--theme-color,#38bdf8) 15%, transparent)}.service-modal-overlay{-webkit-backdrop-filter:blur(12px);z-index:9999;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.service-modal-content{border:2px solid color-mix(in srgb, var(--theme-color,#7c3aed) 60%, #e2e8f0);width:100%;max-width:720px;box-shadow:0 25px 50px -12px #00000026, 0 0 40px color-mix(in srgb, var(--theme-color,#7c3aed) 30%, transparent);-ms-overflow-style:none;scrollbar-width:none;background:#fff;border-radius:24px;max-height:calc(100svh - 48px);padding:36px;position:relative;overflow-y:auto}.service-modal-content::-webkit-scrollbar{width:0;height:0;display:none}.service-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}.service-modal-close:hover{color:#ef4444;background:#fee2e2;border-color:#fca5a5;transform:rotate(90deg)}.service-modal-header{align-items:center;gap:16px;margin-bottom:28px;display:flex}.service-modal-header h3{color:#0f172a;margin-top:2px;font-size:1.5rem;font-weight:700}.service-modal-body{flex-direction:column;gap:24px;display:flex}.modal-section h4{font-size:.82rem;font-family:"JetBrains Mono", monospace, var(--font-mono,monospace);text-transform:uppercase;letter-spacing:1.2px;color:var(--theme-color,#0284c7);margin-bottom:10px;font-weight:700}.modal-section .detailed-info{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px;font-size:.95rem;line-height:1.65}.modal-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.stack-badges{flex-wrap:wrap;gap:8px;display:flex}.tech-badge{color:#0f172a;font-family:"JetBrains Mono", monospace, var(--font-mono,monospace);background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:.8rem;font-weight:600}.modal-metrics{flex-direction:column;gap:8px;display:flex}.modal-metric-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.modal-metric-val{font-family:"JetBrains Mono", monospace, var(--font-mono,monospace);font-size:.92rem;font-weight:700}.modal-metric-lbl{color:#64748b;font-size:.78rem}.service-modal-footer{justify-content:flex-end;margin-top:32px;display:flex}@media (width<=1024px){.services__bento{grid-template-columns:repeat(2,1fr)}.services__card--large{grid-column:span 1}}@media (width<=640px){.services__bento,.modal-grid{grid-template-columns:1fr}.service-modal-overlay{padding:16px}.service-modal-content{max-height:calc(100svh - 32px);padding:24px}}
