.contact-page{min-height:100vh}.contact-hero-section{padding:var(--section-padding-y-responsive) 0 0}.contact-hero-container{max-width:var(--container-max-width-responsive);margin:0 auto;padding:0 var(--section-padding-x-responsive)}.contact-hero-header{text-align:center;margin-bottom:var(--section-inner-gap)}.section-summary{font-family:var(--font-family-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-tertiary);letter-spacing:.1em;margin-bottom:var(--list-item-gap);text-transform:uppercase}.contact-hero-title{font-family:var(--font-family-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary);margin:0 0 var(--section-title-margin-bottom) 0}.contact-hero-subtitle{font-family:var(--font-family-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);max-width:var(--content-narrow-width);margin:0 auto;line-height:var(--line-height-normal)}.contact-content-section{padding:0 0 var(--section-padding-y-responsive)}.contact-content-container{max-width:var(--container-max-width-responsive);margin:0 auto;padding:0 var(--section-padding-x-responsive)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--grid-gap-lg);align-items:stretch}.contact-image-column{display:flex;align-items:stretch;justify-content:center}.contact-image-wrapper{width:100%;border-radius:var(--card-border-radius);overflow:hidden;border:1px solid var(--color-border-default);display:flex}.contact-image{width:100%;height:100%;display:block;object-fit:cover}.contact-form-column{display:flex}.contact-form-card{background:var(--color-bg-main);border:1px solid var(--color-border-default);border-radius:var(--card-border-radius);padding:var(--card-padding);width:100%;display:flex;flex-direction:column}.contact-form-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--list-item-gap);text-align:center}.contact-form-description{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 var(--section-inner-gap);line-height:var(--line-height-normal);text-align:center}.contact-form{display:flex;flex-direction:column;gap:var(--grid-gap-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--grid-gap-md)}.form-group{display:flex;flex-direction:column;gap:var(--list-item-gap)}.form-group label{font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.form-group label .required{color:#dc2626;margin-left:2px}.form-group input,.form-group textarea{font-family:var(--font-family-primary);font-size:var(--font-size-base);padding:var(--button-padding-y) var(--button-padding-x);border:1px solid var(--color-border-default);border-radius:var(--card-border-radius);background:var(--color-bg-white);color:var(--color-text-primary);transition:all .2s ease;width:100%;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #1034a614}.form-group textarea{resize:vertical;min-height:140px;font-family:var(--font-family-primary)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-tertiary)}.submit-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--list-item-gap);padding:var(--button-padding-y) var(--button-padding-x);border-radius:var(--card-border-radius);font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);background:var(--color-brand);color:#fff;border:2px solid var(--color-brand);cursor:pointer;transition:all .3s ease;min-height:56px;width:100%;box-sizing:border-box}.submit-button:hover{background:transparent;color:var(--color-brand)}.submit-button:hover .submit-button-icon{transform:translate(4px)}.submit-button-text{font-size:var(--font-size-base);line-height:var(--line-height-tight);font-weight:var(--font-weight-semibold);white-space:nowrap}.submit-button-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;transition:transform .3s ease}.submit-button:focus{outline:none;box-shadow:0 0 0 3px #1034a64d}@media (max-width: 1024px){.contact-grid{grid-template-columns:1fr;gap:var(--section-inner-gap)}.contact-form-column{position:static}}@media (max-width: 768px){.form-row{grid-template-columns:1fr;gap:var(--grid-gap-md)}}
