.rufales-contact-page{--contact-forest:var(--rufales-color-forest-900);--contact-paper:var(--rufales-color-canvas);--contact-cream:var(--rufales-color-surface);--contact-ink:var(--rufales-color-ink);--contact-muted:var(--rufales-color-muted);--contact-line:var(--rufales-color-border);background:var(--contact-paper);color:var(--contact-ink)}.rufales-contact-page .rufales-contact-shell{width:min(100% - 48px, 1120px);margin-inline:auto}.rufales-contact-page :is(h1,h2,h3,p,address,dl,dd){margin-top:0}.rufales-contact-page :is(h1,h2,h3){max-width:none;padding:0;color:var(--contact-forest);font-family:var(--rufales-font-sans);font-weight:600;line-height:var(--rufales-line-heading);letter-spacing:-.02em;overflow-wrap:anywhere}.rufales-contact-page h1{font-size:var(--rufales-font-size-3xl);margin-bottom:16px}.rufales-contact-page h2{font-size:var(--rufales-font-size-2xl);margin-bottom:24px}.rufales-contact-page p{padding-bottom:0}.rufales-contact-page a{color:var(--contact-forest);font-weight:600;text-decoration:none;text-underline-offset:.2em;overflow-wrap:anywhere}.rufales-contact-page a:hover{text-decoration:underline}.rufales-contact-page :is(a,button):focus-visible{outline:2px solid var(--contact-forest);outline-offset:4px}.rufales-contact-page a:is([href^="tel:"],[href^="mailto:"],.rufales-contact-map){display:inline-flex;align-items:center;min-height:44px;max-width:100%}.rufales-contact-page .rufales-contact-intro__inner{padding-block:40px 28px}.rufales-contact-page .rufales-contact-intro h1{margin:0}.rufales-contact-page .rufales-contact-people{padding-block:0 44px}.rufales-contact-page .rufales-contact-section{padding-block:36px}.rufales-contact-page .rufales-contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.rufales-contact-page .rufales-contact-card{display:flex;min-width:0;flex-direction:column;padding-top:20px;border-top:1px solid var(--contact-line)}.rufales-contact-page .rufales-contact-card__name{margin-bottom:12px;font-size:var(--rufales-font-size-xl);font-weight:600;letter-spacing:-.02em;line-height:1.35}.rufales-contact-page .rufales-contact-card__name span{display:inline-block;margin-left:8px;padding-left:11px;border-left:1px solid var(--contact-line);color:var(--contact-muted);font-size:var(--rufales-font-size-sm);font-weight:400;letter-spacing:0}.rufales-contact-page .rufales-contact-card__role{margin-bottom:24px;max-width:48ch;color:var(--contact-muted);font-size:var(--rufales-font-size-base);line-height:1.6;letter-spacing:0}.rufales-contact-page .rufales-contact-list{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin:auto 0 0}.rufales-contact-page .rufales-contact-list div{min-width:0}.rufales-contact-page .rufales-contact-list dt{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rufales-contact-page .rufales-contact-list a[href^="tel:"]{font-size:var(--rufales-font-size-xl);letter-spacing:-.02em}.rufales-contact-page .rufales-contact-list dd{margin:0}.rufales-contact-page .rufales-contact-section--details{background:var(--contact-cream)}.rufales-contact-page .rufales-contact-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px 48px}.rufales-contact-page .rufales-contact-details article{min-width:0}.rufales-contact-page .rufales-contact-details h2{margin-bottom:20px}.rufales-contact-page .rufales-contact-details address{font-style:normal;margin-bottom:12px}.rufales-contact-page .rufales-contact-details p{margin-bottom:12px}.rufales-contact-page .rufales-contact-company{padding-left:40px;border-left:1px solid var(--contact-line)}.rufales-contact-page .rufales-contact-company h2{font-size:var(--rufales-font-size-xl)}.rufales-contact-page .rufales-contact-office-label{color:var(--contact-muted)}.rufales-contact-page .rufales-contact-map{gap:10px;text-decoration:underline}.rufales-contact-page .rufales-contact-correspondence{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 32px;border-top:1px solid var(--contact-line);padding-top:20px;color:var(--contact-muted);font-size:var(--rufales-font-size-sm)}.rufales-contact-page .rufales-contact-correspondence h2{margin:0;font-size:var(--rufales-font-size-base);line-height:var(--rufales-line-body);letter-spacing:0}.rufales-contact-page .rufales-contact-correspondence address{margin:0}.rufales-contact-page .rufales-contact-write__inner{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}.rufales-contact-page .rufales-contact-write__heading h2{margin-bottom:16px}.rufales-contact-page .rufales-contact-write__heading p{max-width:34ch;margin:0;color:var(--contact-muted)}.rufales-contact-page .rufales-contact-form-wrap{min-width:0}.rufales-contact-page .rufales-contact-form-wrap :is(.et_pb_contact_form_container,.et_pb_contact_form,.et_pb_contact_field,.et_contact_bottom_container){margin:0;padding:0}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_form::after{display:none}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_field{float:none;width:auto;min-width:0;grid-column:1 / -1}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_field_half{grid-column:auto}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_form_label{display:block;margin-bottom:6px;font-size:var(--rufales-font-size-xs);font-weight:600;color:var(--contact-ink)}.rufales-contact-page .rufales-contact-form-wrap :is(input.input,textarea.input){box-sizing:border-box;width:100%;min-height:46px;padding:10px 12px;background:var(--contact-cream);border:1px solid var(--contact-line);border-radius:0;color:var(--contact-ink);font:inherit;font-size:16px;line-height:1.5}.rufales-contact-page .rufales-contact-form-wrap textarea.input{height:120px;min-height:120px;resize:vertical}.rufales-contact-page .rufales-contact-form-wrap :is(input.input,textarea.input):focus{outline:2px solid var(--contact-forest);outline-offset:2px}.rufales-contact-page .rufales-contact-form-wrap .et_contact_bottom_container{grid-column:1 / -1;float:none;text-align:left}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_submit.et_pb_button{margin:0;min-height:46px;padding:10px 20px!important;background:var(--contact-forest);border:1px solid var(--contact-forest);border-radius:0;color:var(--contact-paper)!important;font:600 var(--rufales-font-size-sm)/1.5 var(--rufales-font-sans)}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_submit.et_pb_button::after{display:none}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_submit.et_pb_button:hover{background:var(--rufales-color-forest-800)}@media (max-width:900px){.rufales-contact-page .rufales-contact-cards{gap:28px}.rufales-contact-page .rufales-contact-list{grid-template-columns:1fr}.rufales-contact-page .rufales-contact-details{gap:24px 28px}.rufales-contact-page .rufales-contact-company{padding-left:28px}.rufales-contact-page .rufales-contact-write__inner{grid-template-columns:minmax(0,1fr);gap:24px}.rufales-contact-page .rufales-contact-write__heading p{max-width:55ch}}@media (max-width:680px){.rufales-contact-page .rufales-contact-shell{width:calc(100% - 40px)}.rufales-contact-page .rufales-contact-intro__inner{padding-block:28px 20px}.rufales-contact-page .rufales-contact-section{padding-block:28px}.rufales-contact-page .rufales-contact-cards,.rufales-contact-page .rufales-contact-details{grid-template-columns:minmax(0,1fr)}.rufales-contact-page .rufales-contact-card{padding-top:16px}.rufales-contact-page .rufales-contact-card__role{margin-bottom:16px}.rufales-contact-page .rufales-contact-people{padding-block:0 28px}.rufales-contact-page .rufales-contact-list{gap:4px}.rufales-contact-page .rufales-contact-company{padding:24px 0 0;border-left:0;border-top:1px solid var(--contact-line)}.rufales-contact-page .rufales-contact-correspondence{display:block}.rufales-contact-page .rufales-contact-correspondence h2{margin-bottom:6px}.rufales-contact-page .rufales-contact-form-wrap .et_pb_contact_form{grid-template-columns:minmax(0,1fr)}}