.contact-page{padding-top:2rem}.contact-page__grid{display:grid;grid-gap:1.15rem;gap:1.15rem;align-items:stretch}.contact-card{display:flex;flex-direction:column;height:100%;padding:1.35rem 1.25rem 1.5rem;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.contact-card h2{margin-bottom:1rem;font-family:var(--font-display);font-size:1.3rem;color:var(--text);letter-spacing:-.02em}.contact-card__lead{margin:-.35rem 0 1.15rem;color:var(--text-muted);font-size:.94rem}.contact-card--form .contact-form{flex:1 1;display:grid;align-content:start}.contact-info__list{display:grid;grid-gap:1rem;gap:1rem;flex:1 1}.contact-info__list li{display:grid;grid-template-columns:28px 1fr;grid-gap:.75rem;gap:.75rem;align-items:start}.contact-info__list .icon{color:var(--primary);margin-top:.15rem}.contact-info__list strong{display:block;margin-bottom:.2rem;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.contact-info__list a,.contact-info__list span{display:block;color:var(--text);font-weight:650;font-size:.96rem;line-height:1.45}.contact-info__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:auto;padding-top:1.35rem}@media (max-width:719px){.contact-info__actions,.contact-map__caption{display:grid;grid-template-columns:1fr}.contact-form .btn,.contact-info__actions .btn,.contact-map__caption .btn{width:100%;justify-self:stretch}}.contact-map{margin:1.75rem 0 0}.contact-map__frame{overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow-md);background:var(--sand);aspect-ratio:16/9}.contact-map__frame img{width:100%;height:100%;object-fit:cover}.contact-map__caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.85rem;margin-top:.9rem}.contact-map__caption strong{display:block;color:var(--primary-dark);font-size:.98rem}.contact-map__caption span{color:var(--text-muted);font-size:.9rem}@media (min-width:900px){.contact-page__grid{grid-template-columns:.9fr 1.15fr;gap:1.35rem;align-items:stretch}.contact-card{padding:1.6rem 1.5rem 1.75rem}}.contact-form{position:relative;display:grid;grid-gap:1rem;gap:1rem;width:100%}.contact-form__grid{display:grid;grid-gap:.9rem;gap:.9rem;width:100%}.contact-form label{display:flex;flex-direction:column;gap:.4rem;min-width:0}.contact-form label>span{color:var(--text);font-size:.86rem;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;padding:.8rem .9rem;border-radius:12px;border:1px solid var(--border);background:#fff;color:var(--text);-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.contact-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235c6f76' d='M1.4 0.6 6 5.2 10.6.6 12 2 6 8 0 2z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}.contact-form textarea{resize:vertical;min-height:120px;line-height:1.5}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:rgba(26,74,99,.45);box-shadow:0 0 0 4px rgba(26,74,99,.12)}.contact-form__note{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.45}.contact-form__feedback{margin:0;padding:.75rem .9rem;border-radius:12px;font-size:.9rem;line-height:1.45}.contact-form__feedback--ok{background:rgba(22,120,78,.1);color:#145c3c}.contact-form__feedback--err{background:rgba(170,40,40,.1);color:#8a1f1f}.contact-form__hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-form .btn{justify-self:start;min-width:180px}.contact-form .btn:disabled{opacity:.7;cursor:wait}@media (min-width:720px){.contact-form__grid{grid-template-columns:1fr 1fr}.contact-form__message{grid-column:1/-1}}