/* Contact visual refinement: continuous canvas, copper details, native Elementor form. */
.rf-contact { --rf-contact-accent:#c9855c; --rf-contact-muted:#a6a7a8; }
.rf-contact-page .elementor-location-header.is-scrolled { background:#0d0f10!important; }
.rf-contact h1,.rf-contact h2,.rf-contact blockquote p { font-family:Arial,Helvetica,sans-serif; text-transform:none; }
.rf-contact p { letter-spacing:normal; }
.rf-contact-hero,.rf-contact-hero__inner,.rf-contact-hero__copy,.rf-contact-trust,.rf-contact-trust__inner,.rf-contact-trust__inner > *:not(:last-child),.rf-contact-work__scope { border:0; }
.rf-contact-hero__inner { grid-template-columns:1.05fr 1fr; height:auto; min-height:480px; padding-block:48px; gap:32px; }
.rf-contact-hero__copy { padding:32px 0; }
.rf-contact-hero h1 { font-size:clamp(48px,5.3vw,80px); font-weight:400; line-height:1.02; letter-spacing:-.055em; }
.rf-contact-hero__copy > p:not(.rf-contact-kicker) { max-width:410px; font-size:16px; line-height:1.7; margin-top:24px!important; }
.rf-contact-hero__actions { margin-top:28px; gap:28px; flex-wrap:wrap; }
.rf-contact-hero__actions a { letter-spacing:.07em; font-size:11px; }
.rf-contact-hero__image { height:auto; min-height:350px; border:0; background:#0d0f10; }
.rf-contact-hero__image::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,#0d0f10,transparent 22%),linear-gradient(0deg,#0d0f10,transparent 26%); }
.rf-contact-hero__image img { object-position:60% center; }
.rf-contact-page .elementor-element.rf-contact-work { border:0; padding-block:40px 64px!important; }
.rf-contact-page .elementor-element.rf-contact-work > .elementor-container { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); border:0; gap:clamp(40px,7vw,112px); }
.rf-contact-scope { padding:12px 0; }
.rf-contact-scope h2 { font-size:clamp(32px,3vw,44px); line-height:1.08; margin-bottom:30px; }
.rf-contact-scope li { grid-template-columns:46px 1fr; min-height:70px; }
.rf-contact-scope li svg { width:26px; height:26px; display:block; transition:transform .3s ease; }
.rf-contact-scope li:hover svg { transform:rotate(-8deg) scale(1.1); }
.rf-contact-scope li strong { font-size:14px; letter-spacing:0; text-transform:none; font-weight:400; }
.rf-contact-scope > p { font-size:14px; max-width:320px; }
.rf-contact-page .rf-contact .rf-contact-work__form > .elementor-widget-wrap { padding:0!important; }
.rf-contact .rf-contact-form-heading { font-size:32px; line-height:1.1; letter-spacing:-.04em; }
.rf-contact .rf-contact-form-intro { color:#a6a7a8; font-size:14px; margin:10px 0 28px; }
.rf-contact-work__form .elementor-field-label { font-size:12px!important; letter-spacing:.02em; text-transform:none; color:#c6c6c5!important; }
.rf-contact-work__form .elementor-field-group { margin-bottom:20px!important; }
.rf-contact-work__form input.elementor-field,.rf-contact-work__form textarea.elementor-field { min-height:52px; font-size:16px!important; letter-spacing:0; background:#121516!important; border-color:#303435!important; padding:14px 16px; }
.rf-contact-work__form textarea.elementor-field { min-height:130px; }
.rf-contact-work__form .elementor-field::placeholder { color:#929697!important; font-size:14px; }
.rf-contact-work__form .elementor-button { background:#c9855c!important; color:#0d0f10!important; border-color:#c9855c!important; min-height:54px; letter-spacing:.06em; font-size:11px!important; font-weight:600!important; }
.rf-contact-work__form .elementor-button-icon { color:inherit; }
.rf-contact-work__form .elementor-button:hover { background:#dfa27c!important; color:#0d0f10!important; }
.rf-contact-trust__inner { grid-template-columns:1.1fr 1fr 1fr; gap:48px; padding-block:48px 64px; border-top:1px solid #282c2e; }
.rf-contact-trust__inner > * { padding:0; }
.rf-contact-trust blockquote { display:block; }
.rf-contact-trust blockquote > span { display:none; }
.rf-contact-trust blockquote p { font-size:30px; line-height:1.12; }
.rf-contact-direct h2,.rf-contact-process h2 { font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.rf-contact-direct a,.rf-contact-direct p,.rf-contact-process p { font-size:14px; line-height:1.6; }
.rf-contact-direct i { color:#c9855c; }
.rf-contact-process { border:0; grid-column:auto; }
.rf-contact-footer { border-top:1px solid #282c2e; }
@media(max-width:900px) {
 .rf-contact-hero__inner { grid-template-columns:1fr 1fr; min-height:0; gap:16px; }
 .rf-contact-hero__copy { min-height:0; }
 .rf-contact-hero h1 { font-size:48px; }
 .rf-contact-page .elementor-element.rf-contact-work > .elementor-container { gap:40px; }
 .rf-contact-trust__inner { grid-template-columns:1fr 1fr; gap:32px; }
 .rf-contact-trust blockquote { grid-column:1/-1; }
}
@media(max-width:767px) {
 .rf-contact-hero__inner { grid-template-columns:1fr; width:calc(100% - 40px); padding-block:24px 0; gap:0; }
 .rf-contact-hero__copy { padding:24px 0; }
 .rf-contact-hero h1 { font-size:clamp(42px,11vw,64px); line-height:1.03; }
 .rf-contact-kicker { margin-bottom:24px!important; }
 .rf-contact-hero__actions { flex-direction:row; gap:22px; margin-top:20px; }
 .rf-contact-hero__image { min-height:0; height:220px; aspect-ratio:auto; }
 .rf-contact-page .elementor-element.rf-contact-redesign .elementor-element.rf-contact-work { width:calc(100% - 40px)!important; margin-inline:auto!important; padding-block:32px 40px!important; }
 .rf-contact-page .elementor-element.rf-contact-work > .elementor-container { grid-template-columns:1fr; gap:44px; }
 .rf-contact-scope { padding:0!important; }
 .rf-contact-scope h2 br { display:none; }
 .rf-contact-scope li { min-height:58px; }
 .rf-contact-page .rf-contact .rf-contact-work__form > .elementor-widget-wrap { padding:0!important; }
 .rf-contact-trust__inner { width:calc(100% - 40px); grid-template-columns:1fr; padding-block:36px; }
 .rf-contact-trust__inner > * { padding:0; }
 .rf-contact-trust__inner > *:not(:last-child) { border:0; }
 .rf-contact-direct a { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) { .rf-contact-scope li:hover svg { transform:none; } }

.rf-contact-work__form input.elementor-field,.rf-contact-work__form textarea.elementor-field { letter-spacing:0!important; }
@media(max-width:767px) {
 body.rf-contact-page .elementor-element.rf-contact-redesign .elementor-element.rf-contact-work { width:100%!important; }
 body.rf-contact-page .rf-contact .rf-contact-scope,
 body.rf-contact-page .rf-contact .rf-contact-work__form > .elementor-widget-wrap { padding-inline:20px!important; }
}
body.rf-contact-page .rf-contact-redesign .elementor-element.rf-contact-work > .elementor-container { padding-bottom:56px!important; }
