:root{--color-white: #ffffff;--color-text: #1a1a1a;--color-text-secondary: #606672;--color-border: #e5e7eb;--color-bg-blush: #fdf2f8;--color-bg-lavender: #f5f3ff;--color-brand-pink: #ec4899;--color-brand-purple: #8b5cf6;--color-brand-pink-light: #fbcfe8;--color-brand-purple-light: #ddd6fe;--color-brand-shadow: #7c3aed;--gradient-brand: linear-gradient(135deg, #ec4899, #8b5cf6);--gradient-brand-soft: linear-gradient(135deg, rgba(236, 72, 153, .08), rgba(139, 92, 246, .08));--font-body: "Inter Tight", system-ui, -apple-system, sans-serif;--font-display: "Cal Sans", "Inter Tight", system-ui, sans-serif;--max-width: 1280px;--page-padding: 24px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 14px rgba(0, 0, 0, .06), 0 2px 6px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .08), 0 4px 10px rgba(0, 0, 0, .04)}@media(min-width:768px){:root{--page-padding: 40px}}@media(min-width:1024px){:root{--page-padding: 48px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--color-text);background:var(--color-white);min-height:100vh;display:flex;flex-direction:column}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600}h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:500;letter-spacing:-.02em}h2{font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:-.01em}h3{font-size:clamp(1.125rem,2vw,1.5rem)}p{margin-bottom:1em}p:last-child{margin-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:.9375rem;font-weight:600;text-decoration:none;cursor:pointer;border:none;transition:transform .1s ease,box-shadow .1s ease}.btn-primary{background:var(--gradient-brand);color:#fff;box-shadow:4px 4px 0 var(--color-brand-shadow)}.btn-primary:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--color-brand-shadow)}.btn-primary:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--color-brand-shadow)}.btn-secondary{background:transparent;color:var(--color-brand-purple);border:1.5px solid var(--color-brand-purple-light);box-shadow:3px 3px 0 var(--color-brand-purple-light)}.btn-secondary:hover{transform:translate(1.5px,1.5px);box-shadow:1.5px 1.5px 0 var(--color-brand-purple-light);border-color:var(--color-brand-purple)}.btn-secondary:active{transform:translate(3px,3px);box-shadow:0 0 0 var(--color-brand-purple-light)}.btn-sm{padding:10px 20px;font-size:.875rem}.tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-pill);font-size:.8125rem;font-weight:500;background:var(--color-bg-lavender);color:var(--color-brand-purple)}.tag-status-open{background:#ecfdf5;color:#059669}.tag-status-closed{background:#fffbeb;color:#d97706}.card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--page-padding)}.section{padding:80px 0}@media(max-width:768px){.section{padding:48px 0}}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}:focus-visible{outline:2px solid var(--color-brand-purple);outline-offset:2px}.gradient-text{background:var(--gradient-brand);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
