.roux-contact,.roux-contact *,.roux-contact *::before,.roux-contact *::after{box-sizing:border-box}.roux-contact{width:100%;padding:var(--rc-pad-top,72px) 24px var(--rc-pad-bottom,72px);background:var(--rc-bg,#F3F0E9);color:var(--rc-text,#15191B);font-family:'Montserrat',Arial,sans-serif}.roux-contact__inner{width:min(100%,var(--rc-max-width,1380px));margin:0 auto;display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:clamp(42px,7vw,110px);align-items:start}.roux-contact__intro{padding-top:12px;position:sticky;top:120px}.roux-contact__eyebrow{margin:0 0 12px;color:var(--rc-accent);font-size:10px;line-height:1.2;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.roux-contact__heading{max-width:8ch;margin:0;color:var(--rc-heading);font-size:clamp(42px,5.3vw,76px);line-height:.92;font-weight:900;letter-spacing:-.06em;text-transform:uppercase}.roux-contact__intro-text{max-width:46ch;margin:20px 0 0;color:var(--rc-muted);font-size:14px;line-height:1.7;font-weight:500}.roux-contact__methods{margin-top:34px;border-top:1px solid var(--rc-border)}.roux-contact__method{min-height:78px;padding:15px 2px;border-bottom:1px solid var(--rc-border);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;color:var(--rc-heading);text-decoration:none;transition:transform .18s ease}.roux-contact__method:hover{transform:translateX(3px)}.roux-contact__method-icon{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--rc-heading) 14%,transparent);border-radius:50%;display:grid;place-items:center;color:var(--rc-heading);background:color-mix(in srgb,var(--rc-surface) 72%,transparent)}.roux-contact__method-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.roux-contact__method:first-child .roux-contact__method-icon svg path:first-child{fill:currentColor;stroke:none}.roux-contact__method:first-child .roux-contact__method-icon svg path:last-child{fill:var(--rc-bg);stroke:none}.roux-contact__method-copy small,.roux-contact__method-copy strong{display:block}.roux-contact__method-copy small{color:var(--rc-muted);font-size:8px;font-weight:900;letter-spacing:.13em}.roux-contact__method-copy strong{margin-top:5px;color:var(--rc-heading);font-size:13px;line-height:1.35;font-weight:800;overflow-wrap:anywhere}.roux-contact__method-arrow{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--rc-heading)}.roux-contact__method-arrow svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.roux-contact__form-card{padding:clamp(26px,4vw,48px);border:1px solid var(--rc-border);border-radius:var(--rc-radius);background:var(--rc-surface);box-shadow:0 18px 50px rgba(16,42,54,.07)}.roux-contact__form-card h2{margin:0 0 28px;color:var(--rc-heading);font-size:clamp(22px,2.3vw,32px);line-height:1.05;font-weight:900;letter-spacing:-.035em}.roux-contact__form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.roux-contact__field--full{grid-column:1/-1}.roux-contact__field label{display:block;margin-bottom:7px;color:var(--rc-heading);font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.roux-contact__field input,.roux-contact__field textarea,.roux-contact__field select{width:100%;border:1px solid var(--rc-border);border-radius:11px;background:#fff;color:var(--rc-text);font:inherit;font-size:13px;font-weight:600;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.roux-contact__field input,.roux-contact__field select{height:52px;padding:0 14px}.roux-contact__field textarea{min-height:150px;padding:14px;resize:vertical;line-height:1.55}.roux-contact__field :is(input,textarea,select):focus{border-color:var(--rc-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--rc-accent) 12%,transparent)}.roux-contact__select-wrap{position:relative}.roux-contact__select-wrap select{appearance:none;padding-right:42px;cursor:pointer}.roux-contact__select-wrap>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none}.roux-contact__select-wrap svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}.roux-contact__submit{width:100%;min-height:58px;margin-top:20px;padding:14px 20px;border:1px solid var(--rc-heading);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:14px;background:var(--rc-heading);color:#fff;cursor:pointer;font:inherit;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.18s ease}.roux-contact__submit:hover{background:var(--rc-accent);border-color:var(--rc-accent);transform:translateY(-1px)}.roux-contact__submit svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9}.roux-contact__success,.roux-contact__errors{margin:0 0 18px;padding:12px 14px;border-radius:10px;font-size:12px;line-height:1.5;font-weight:700}.roux-contact__success{display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--rc-accent) 9%,#fff);border:1px solid color-mix(in srgb,var(--rc-accent) 24%,transparent);color:var(--rc-heading)}.roux-contact__success-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--rc-accent);color:#fff}.roux-contact__success-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.3}.roux-contact__errors{background:#fff3f1;border:1px solid #e8b7ad;color:#8b2f20}.roux-contact :is(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--rc-accent) 45%,transparent);outline-offset:3px}@media(max-width:900px){.roux-contact__inner{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:40px}.roux-contact__intro{top:105px}}@media(max-width:749px){.roux-contact{padding-left:14px;padding-right:14px}.roux-contact__inner{grid-template-columns:1fr;gap:30px}.roux-contact__intro{position:static;padding-top:0}.roux-contact__heading{font-size:clamp(38px,13vw,58px)}.roux-contact__intro-text{margin-top:14px;font-size:13px}.roux-contact__methods{margin-top:24px}.roux-contact__method{min-height:70px}.roux-contact__form-card{padding:22px 16px;border-radius:min(var(--rc-radius),16px)}.roux-contact__form-grid{grid-template-columns:1fr;gap:14px}.roux-contact__field--full{grid-column:auto}.roux-contact__field input,.roux-contact__field select,.roux-contact__field textarea{font-size:16px}.roux-contact__submit{min-height:56px}}@media(prefers-reduced-motion:reduce){.roux-contact *{transition-duration:.01ms!important;animation-duration:.01ms!important}}