.contact-page{padding-bottom:4rem}.contact-page svg{fill:none;stroke:currentColor;stroke-width:1.8px;flex-shrink:0;width:16px;height:16px}.contact-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:1.75rem;display:grid}.contact-form{border:1px solid var(--cat-border);border-radius:var(--cat-radius);background:var(--cat-white);padding:clamp(1.25rem,3vw,1.75rem)}.contact-form-title{color:var(--cat-navy);font-size:1.1rem;display:block}.contact-form-sub{color:var(--cat-text-secondary);margin:.3rem 0 1.4rem;font-size:.86rem}.contact-form-grid{grid-template-columns:1fr 1fr;gap:1.1rem 1.25rem;display:grid}.contact-field{flex-direction:column;gap:.45rem;display:flex}.contact-field--full{grid-column:1/-1}.contact-field>span:first-child{color:var(--cat-navy);font-size:.84rem;font-weight:650}.contact-field em{color:#dc2626;font-style:normal}.contact-input-wrap{border:1px solid var(--cat-border);border-radius:var(--cat-radius-control);background:var(--cat-white);align-items:center;gap:.6rem;height:46px;padding:0 .85rem;transition:border-color .14s;display:flex}.contact-input-wrap:focus-within{border-color:var(--cat-navy-hover)}.contact-input-wrap svg{fill:none;width:17px;stroke:var(--cat-text-mute);color:var(--cat-text-mute);stroke-width:1.8px;flex-shrink:0}.contact-input-wrap input,.contact-input-wrap select{min-width:0;height:100%;color:var(--cat-text-primary);font:inherit;background:0 0;border:0;outline:0;flex:1}.contact-input-wrap select{color:var(--cat-text-primary)}.contact-input-wrap select:invalid{color:var(--cat-text-mute)}.contact-field textarea{border:1px solid var(--cat-border);border-radius:var(--cat-radius-control);background:var(--cat-white);color:var(--cat-text-primary);font:inherit;resize:vertical;padding:.75rem .85rem;transition:border-color .14s}.contact-field textarea:focus{border-color:var(--cat-navy-hover);outline:0}.contact-form-required{color:var(--cat-text-mute);margin:.6rem 0 1.2rem;font-size:.78rem}.contact-form button[type=submit]{gap:.55rem}.contact-form button[type=submit] svg{width:16px;height:16px}.contact-sidebar{border:1px solid var(--cat-border);border-radius:var(--cat-radius);background:var(--cat-white);flex-direction:column;gap:0;padding:clamp(1.25rem,3vw,1.75rem);display:flex}.contact-sidebar-title{color:var(--cat-navy);margin-bottom:1.25rem;font-size:1.05rem;display:block}.contact-channel{border-top:1px solid var(--cat-border);gap:1rem;padding:1.25rem 0;display:flex}.contact-channel:first-of-type{border-top:0;padding-top:0}.contact-channel:last-of-type{padding-bottom:0}.contact-channel-icon{border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.contact-channel-icon svg{width:19px}.contact-channel-icon--phone,.contact-channel-icon--whatsapp,.contact-channel-icon--mail,.contact-channel-icon--pin{background:var(--cat-surface-brand-soft);color:var(--cat-navy)}.contact-channel-icon--phone svg,.contact-channel-icon--mail svg,.contact-channel-icon--pin svg{fill:none;stroke:currentColor;stroke-width:1.8px}.contact-channel>div{flex-direction:column;gap:.35rem;min-width:0;display:flex}.contact-channel strong{color:var(--cat-navy);font-size:.92rem}.contact-channel a{color:var(--cat-navy-hover);font-size:.86rem;font-weight:650;text-decoration:none}.contact-channel a:hover{text-decoration:underline}.contact-channel-address{color:var(--cat-text-secondary);font-size:.84rem;line-height:1.5}.contact-channel-hours{color:var(--cat-text-mute);margin-top:.15rem;font-size:.76rem}.contact-office{border:1px solid var(--cat-border);border-radius:var(--cat-radius);background:var(--cat-white);grid-template-columns:260px minmax(0,1fr);align-items:center;gap:1.75rem;padding:clamp(1.25rem,3vw,1.75rem);display:grid}.contact-office-info{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.contact-office-info strong{color:var(--cat-navy);font-size:1.05rem}.contact-office-info p{color:var(--cat-text-secondary);margin:0 0 .3rem;font-size:.86rem;line-height:1.55}.contact-office-map{border-radius:var(--cat-radius-control);border:1px solid var(--cat-border);height:100%;min-height:220px;overflow:hidden}.contact-office-map iframe{border:0;width:100%;height:100%;min-height:220px;display:block}@media (max-width:960px){.contact-layout,.contact-office{grid-template-columns:1fr}.contact-office-map{height:260px}}@media (max-width:640px){.contact-form-grid{grid-template-columns:1fr}}.contact-select .cat-select-trigger{min-height:46px;font-weight:500}
