.contact-hero{padding:var(--space-6xl) 0 var(--space-4xl)}.contact-hero__title{margin:0}.contact-info{display:grid;grid-template-columns:1fr;gap:var(--space-3xl);padding:0 0 var(--space-4xl)}@media (min-width: 768px){.contact-info{grid-template-columns:1fr 1fr}}.contact-info__heading{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:var(--fw-regular);margin:0 0 var(--space-md)}.contact-info__text{font-size:var(--text-base);margin:0 0 var(--space-xs);line-height:1.6}.contact-info__text a{color:var(--color-text);text-decoration:none;transition:color var(--ease-fast)}.contact-info__text a:hover{color:var(--green)}.contact-form{padding:var(--space-4xl) 0;border-top:var(--border-thin) var(--color-border)}.contact-form__heading{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:var(--fw-regular);margin:0 0 var(--space-md)}.contact-form__desc{font-size:var(--text-base);line-height:1.6;margin:0 0 var(--space-lg);max-width:600px}.contact-people{padding:var(--space-4xl) 0;border-top:var(--border-thin) var(--color-border)}.contact-people__title{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--fw-regular);margin:0 0 var(--space-2xl)}.contact-people__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2xl)}@media (min-width: 768px){.contact-people__grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.contact-people__grid{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1600px){.contact-people__grid{grid-template-columns:repeat(6,1fr)}}.contact-card__img{position:relative;aspect-ratio:1;overflow:hidden;margin-bottom:var(--space-sm)}.contact-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--ease-mid)}.contact-card__img:after{content:"";position:absolute;left:0;top:0;width:23px;height:3px;background:var(--color-text-inverse);box-shadow:0 9px 0 var(--color-text-inverse),0 18px 0 var(--color-text-inverse),0 27px 0 var(--color-text-inverse),0 36px 0 var(--color-text-inverse),0 45px 0 var(--color-text-inverse);pointer-events:none}.contact-card:hover .contact-card__img img{transform:scale(1.05)}.contact-card__name{font-family:var(--font-display);font-size:var(--text-body-lg);font-weight:var(--fw-regular);margin:0 0 var(--space-2xs)}.contact-card__role{font-size:var(--text-sm);color:var(--color-text-muted);margin:0 0 var(--space-xs)}.contact-card__links{display:flex;flex-wrap:wrap;gap:var(--space-sm);font-size:.8rem}.contact-card__links a{color:var(--color-text);text-decoration:none;transition:color var(--ease-fast)}.contact-card__links a:hover{color:var(--green)}.contact-offices{padding:var(--space-4xl) 0;border-top:var(--border-thin) var(--color-border)}.contact-offices__title{font-family:var(--font-display);font-size:var(--text-display);font-weight:var(--fw-regular);margin:0 0 var(--space-2xl)}.contact-offices__grid{display:grid;grid-template-columns:1fr;gap:var(--space-2xl)}@media (min-width: 768px){.contact-offices__grid{grid-template-columns:1fr 1fr}}@media (min-width: 1600px){.contact-offices__grid{grid-template-columns:repeat(4,1fr)}}.office-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:color var(--ease-fast)}.office-card:hover{color:var(--green)}.office-card__img{position:relative;aspect-ratio:3 / 2;overflow:hidden;margin-bottom:var(--space-md)}.office-card__img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--ease-mid)}.office-card:hover .office-card__img img{transform:scale(1.05)}.office-card__img:after{content:"";position:absolute;left:0;top:0;width:23px;height:3px;background:var(--color-text-inverse);box-shadow:0 9px 0 var(--color-text-inverse),0 18px 0 var(--color-text-inverse),0 27px 0 var(--color-text-inverse),0 36px 0 var(--color-text-inverse),0 45px 0 var(--color-text-inverse);pointer-events:none}.office-card__name{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--fw-regular);margin:0 0 var(--space-xs)}.office-card__address{font-size:var(--text-base);margin:0 0 var(--space-2xs);line-height:1.5}.office-card__floor{font-size:var(--text-sm);color:var(--color-text-muted);margin:0}
