.contact-landing{overflow-x:hidden}.contact-landing .contact-hero.landing-hero{min-height:min(72vh,640px)}.contact-landing .contact-hero .contact-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;opacity:.35;pointer-events:auto}.contact-landing .contact-form-section{padding:clamp(48px,8vw,96px) 0}.contact-landing .contact-form__inner{max-width:720px;margin:0 auto}.contact-landing .contact-card{background:var(--landing-surface);border:1px solid var(--landing-outline);border-radius:var(--landing-radius-lg);box-shadow:var(--landing-elevation-2);padding:clamp(28px,4vw,48px)}.contact-landing .contact-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-landing .contact-form__field--full{grid-column:1 / -1}.contact-landing .contact-label{display:block;font-size:14px;font-weight:600;color:var(--landing-on-surface);margin-bottom:8px}.contact-landing .contact-input,.contact-landing .contact-select,.contact-landing .contact-textarea{width:100%;padding:12px 14px;font-size:16px;font-family:inherit;color:var(--landing-on-surface);background:var(--landing-surface);border:1px solid var(--landing-outline);border-radius:var(--landing-radius-sm);transition:border-color .2s,box-shadow .2s}.contact-landing .contact-input:focus,.contact-landing .contact-select:focus,.contact-landing .contact-textarea:focus{outline:none;border-color:var(--landing-secondary);box-shadow:0 0 0 4px #4abbd626}.contact-landing .contact-textarea{min-height:160px;resize:vertical}.contact-landing .contact-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;font-size:16px;font-weight:600;font-family:inherit;color:var(--landing-on-primary);background:linear-gradient(135deg,var(--landing-primary),#2079bd);border:none;border-radius:var(--landing-radius-pill);cursor:pointer;box-shadow:0 4px 16px #165ca04d;transition:transform .2s,box-shadow .2s}.contact-landing .contact-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #165ca059}.contact-landing .contact-info-section{padding:clamp(48px,8vw,96px) 0 clamp(64px,10vw,112px)}.contact-landing .contact-info__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:720px;margin:0 auto}.contact-landing .contact-info-card{background:var(--landing-surface);border:1px solid var(--landing-outline);border-radius:var(--landing-radius-md);padding:32px 24px;text-align:center;box-shadow:var(--landing-elevation-1);opacity:0;transform:translateY(20px);transition:opacity .5s var(--landing-ease),transform .5s var(--landing-ease),box-shadow .3s,border-color .2s}.contact-landing .contact-info-card.is-visible{opacity:1;transform:translateY(0)}.contact-landing .contact-info-card:hover{transform:translateY(-4px);box-shadow:var(--landing-elevation-3);border-color:#4abbd659}.contact-landing .contact-info-icon{width:56px;height:56px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--landing-primary);background:var(--landing-primary-container);border-radius:50%}.contact-landing .contact-info-title{font-size:1.0625rem;font-weight:700;color:var(--landing-on-surface);margin:0 0 10px}.contact-landing .contact-info-text{font-size:15px;line-height:1.6;color:var(--landing-on-surface-variant);margin:0 0 6px}@media(max-width:768px){.contact-landing .contact-form__grid,.contact-landing .contact-info__grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.contact-landing .contact-info-card{opacity:1;transform:none;transition:none}}
