.projects.svelte-15ldjzo{padding:var(--section-padding);background:var(--color-white)}.projects-header.svelte-15ldjzo{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:3rem;display:flex}.projects-grid.svelte-15ldjzo{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.project-card.svelte-15ldjzo{border-radius:var(--radius-lg);background:var(--color-white);border:1px solid var(--color-border);transition:all var(--transition);flex-direction:column;display:flex;overflow:hidden}.project-card.svelte-15ldjzo:hover{box-shadow:var(--shadow);border-color:#0000;transform:translateY(-4px)}.project-img-wrap.svelte-15ldjzo{aspect-ratio:16/10;position:relative;overflow:hidden}.project-img-wrap.svelte-15ldjzo img:where(.svelte-15ldjzo){object-fit:cover;width:100%;height:100%;transition:transform .4s}.project-card.svelte-15ldjzo:hover .project-img-wrap:where(.svelte-15ldjzo) img:where(.svelte-15ldjzo){transform:scale(1.05)}.project-category.svelte-15ldjzo{background:var(--color-primary);color:var(--color-white);letter-spacing:.08em;text-transform:uppercase;border-radius:100px;padding:.3rem .75rem;font-size:.72rem;font-weight:600;position:absolute;inset-block-end:1rem;inset-inline-start:1rem}.project-body.svelte-15ldjzo{flex:1;padding:1.75rem}.project-body.svelte-15ldjzo h3:where(.svelte-15ldjzo){font-family:var(--font-display);color:var(--color-dark);margin-bottom:.75rem;font-size:1.35rem}.project-body.svelte-15ldjzo p:where(.svelte-15ldjzo){color:var(--color-muted);font-size:.93rem;line-height:1.7}.contact.svelte-1sty2sf{padding:var(--section-padding);background:var(--color-dark)}.contact-inner.svelte-1sty2sf{grid-template-columns:1fr 1.4fr;align-items:start;gap:5rem;display:grid}.contact-info.svelte-1sty2sf .section-label:where(.svelte-1sty2sf){color:var(--color-accent);background:#4cafa01f;border-color:#4cafa040}.contact-info.svelte-1sty2sf .section-heading:where(.svelte-1sty2sf){color:var(--color-white);margin-block:1rem 1.25rem}.contact-info.svelte-1sty2sf .section-subheading:where(.svelte-1sty2sf){color:#ffffffa6}.contact-details.svelte-1sty2sf{flex-direction:column;gap:1rem;margin-top:2.5rem;display:flex}.contact-details.svelte-1sty2sf li:where(.svelte-1sty2sf){color:#ffffffb3;align-items:center;gap:.75rem;font-size:.95rem;display:flex}.contact-details.svelte-1sty2sf svg:where(.svelte-1sty2sf){color:var(--color-accent);flex-shrink:0}.contact-details.svelte-1sty2sf a:where(.svelte-1sty2sf){color:#ffffffd9;transition:color var(--transition)}.contact-details.svelte-1sty2sf a:where(.svelte-1sty2sf):hover{color:var(--color-primary)}.form-wrap.svelte-1sty2sf{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:2.5rem}form.svelte-1sty2sf{flex-direction:column;gap:1.25rem;display:flex}.form-row.svelte-1sty2sf{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.form-group.svelte-1sty2sf{flex-direction:column;gap:.4rem;display:flex}label.svelte-1sty2sf{color:var(--color-dark);font-size:.875rem;font-weight:600}label.svelte-1sty2sf abbr:where(.svelte-1sty2sf){color:var(--color-primary);margin-left:2px;text-decoration:none}input.svelte-1sty2sf,textarea.svelte-1sty2sf{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-body);color:var(--color-text);background:var(--color-surface);transition:border-color var(--transition), box-shadow var(--transition);width:100%;padding:.7rem 1rem;font-size:.95rem}input.svelte-1sty2sf::placeholder,textarea.svelte-1sty2sf::placeholder{color:var(--color-muted);opacity:.7}input.svelte-1sty2sf:focus,textarea.svelte-1sty2sf:focus{border-color:var(--color-primary);background:var(--color-white);outline:none;box-shadow:0 0 0 3px #e8622a1f}textarea.svelte-1sty2sf{resize:vertical;min-height:120px}.submit-btn.svelte-1sty2sf{align-self:flex-start;padding:.875rem 2.25rem}.success.svelte-1sty2sf{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1rem 0;display:flex}.success-icon.svelte-1sty2sf{background:var(--color-accent);width:56px;height:56px;color:var(--color-white);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.success.svelte-1sty2sf h3:where(.svelte-1sty2sf){font-family:var(--font-display);color:var(--color-dark);font-size:1.4rem}.success.svelte-1sty2sf p:where(.svelte-1sty2sf){color:var(--color-muted);font-size:.95rem}@media (width<=900px){.contact-inner.svelte-1sty2sf{grid-template-columns:1fr;gap:3rem}}@media (width<=560px){.form-row.svelte-1sty2sf{grid-template-columns:1fr}.form-wrap.svelte-1sty2sf{padding:1.75rem}}
