.avb-contact-page,.avb-contact-page *{box-sizing:border-box}
body.avb-contact-screen{background:#152947;min-height:0!important}
body.avb-contact-screen.admin-bar .vp-nav:not(.is-flow-header){top:var(--avb-menu-admin,32px)!important}
.avb-contact-page{--avb-contact-admin:0px;color:#fff;background:#152947;font-family:var(--avb-font-body,'DM Sans',Arial,sans-serif)}
body.admin-bar .avb-contact-page{--avb-contact-admin:32px}
.avb-contact-hero{position:relative;min-height:calc(100svh - var(--avb-contact-admin));display:flex;align-items:center;isolation:isolate;background:#152947;padding:136px 0 32px}
.avb-contact-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.avb-contact-hero__overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,rgba(21,41,71,.90),rgba(21,41,71,.84) 55%,rgba(21,41,71,.91))}
.avb-contact-hero__inner{width:90vw;max-width:none;margin:0 auto}
.avb-contact-page h1{margin:0 0 clamp(18px,3vh,30px)!important;font-family:var(--avb-font-headings,Playfair,serif)!important;font-size:clamp(34px,4.4vw,56px)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:.004em;text-align:left;color:#fff!important}
.avb-contact-page h1 span,.avb-contact-page h1 em{display:block}.avb-contact-page h1 em{font-weight:400;color:#fff!important}
.avb-contact-form,.avb-contact-form *{box-sizing:border-box}
.avb-contact-form{--avb-feedback-gold:#8a683f;--avb-form-line:#d2b389;--avb-form-focus:#d2b389;width:100%;margin:0;position:relative;color:#fff;font-family:var(--avb-font-body,'DM Sans',Arial,sans-serif);font-weight:300}
.avb-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 40px}
.avb-contact-field label{display:block;margin:0 0 12px;font-size:9px;line-height:1.5;font-weight:400;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.76)}
.avb-contact-field input,.avb-contact-field textarea{width:100%;border:0!important;border-bottom:1px solid var(--avb-form-line)!important;border-radius:0!important;background:transparent!important;color:#fff!important;box-shadow:none!important;padding:10px 0!important;font:300 16px/1.65 var(--avb-font-ui,'DM Sans',Arial,sans-serif)!important;letter-spacing:.01em;transition:border-color .2s,background-color .2s;scroll-margin-top:160px}
.avb-contact-field input{height:48px!important}.avb-contact-field textarea{height:110px;min-height:96px;resize:vertical}
.avb-contact-form .avb-contact-field input:focus,.avb-contact-form .avb-contact-field textarea:focus{outline:2px solid transparent!important;outline-offset:3px;border-bottom:3px solid var(--avb-form-focus)!important;background:transparent!important;box-shadow:none!important}
.avb-contact-field--wide{grid-column:1/-1}
.avb-contact-consent{display:flex;gap:10px;align-items:flex-start;margin:24px 0 28px;font-size:11px;line-height:1.8;font-weight:300;color:rgba(255,255,255,.78)}
.avb-contact-consent input{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:#a48053}.avb-contact-consent a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.avb-contact-actions{display:flex;align-items:center;gap:24px}
.avb-contact-actions button{display:flex;justify-content:space-between;gap:38px;align-items:center;min-height:46px;padding:13px 26px;background:#8a683f!important;color:#fff!important;border:1px solid var(--avb-form-line)!important;border-radius:0!important;font:400 10px/1.4 var(--avb-font-ui,'DM Sans',Arial,sans-serif)!important;text-transform:uppercase;letter-spacing:.15em;white-space:nowrap;cursor:pointer}
.avb-contact-actions button:hover,.avb-contact-actions button:focus-visible{background:#152947!important;outline:2px solid #d2b389;outline-offset:3px}.avb-contact-actions button:disabled{opacity:.65;cursor:wait}
.avb-contact-form .avb-contact-consent input:focus-visible,.avb-contact-form .avb-contact-consent a:focus-visible,.avb-contact-form .avb-contact-actions button:focus-visible{outline:2px solid var(--avb-form-focus)!important;outline-offset:4px!important}
.avb-contact-form .avb-contact-actions button:focus-visible{background:#152947!important}
.avb-contact-submit-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none}.avb-contact-submit-arrow svg{display:block;width:26px;height:14px;fill:none;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;transition:transform .42s cubic-bezier(.22,1,.36,1)}.avb-contact-actions button:hover .avb-contact-submit-arrow svg,.avb-contact-actions button:focus-visible .avb-contact-submit-arrow svg{transform:translateX(3px)}
.avb-contact-status{margin:0;font-size:12px;line-height:1.5;color:#fff}.avb-contact-status:empty{display:none}.avb-contact-status[data-error=true]{color:#ffdbd6}
.avb-contact-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
@media(max-width:782px){body.admin-bar .avb-contact-page{--avb-contact-admin:46px}body.avb-contact-screen.admin-bar .vp-nav:not(.is-flow-header){top:var(--avb-menu-admin,46px)!important}}
@media(max-width:767px){.avb-contact-hero{padding:112px 0 28px}.avb-contact-page h1{font-size:clamp(27px,7.6vw,40px)!important;margin-bottom:22px!important}.avb-contact-fields{gap:24px 20px}.avb-contact-field label{font-size:8px;letter-spacing:.13em;margin-bottom:10px}.avb-contact-field textarea{height:96px}.avb-contact-consent{font-size:10px;line-height:1.8;margin:22px 0 24px}.avb-contact-actions{flex-direction:column;align-items:stretch;gap:12px}.avb-contact-actions button{justify-content:center;width:100%}}
@media(max-height:800px) and (min-width:768px){.avb-contact-hero{padding-top:124px;padding-bottom:18px}.avb-contact-page h1{font-size:38px!important;margin-bottom:18px!important}.avb-contact-page .avb-contact-fields{gap:22px 40px}.avb-contact-page .avb-contact-field textarea{height:96px}.avb-contact-page .avb-contact-consent{margin:18px 0}}
@media(prefers-reduced-motion:reduce){.avb-contact-field input,.avb-contact-field textarea,.avb-contact-submit-arrow svg{transition:none}.avb-contact-actions button:hover .avb-contact-submit-arrow svg,.avb-contact-actions button:focus-visible .avb-contact-submit-arrow svg{transform:none}}

@media print{.avb-property-form{display:none!important}}

/* The homepage keeps its light editorial panel and uses the shared form. */
.avb-home-form{margin-top:32px}
.avb-home-form .avb-contact-form{--avb-feedback-gold:#8a683f;--avb-form-line:#8a683f;--avb-form-focus:#8a683f;color:#152947}
.avb-home-form .avb-contact-field label{color:#53637a}
.avb-home-form .avb-contact-field input,.avb-home-form .avb-contact-field textarea{color:#152947!important}
.avb-home-form .avb-contact-consent{color:#53637a}
.avb-home-form .avb-contact-consent a,.avb-home-form .avb-contact-status{color:#152947!important}
.avb-home-form .avb-contact-status[data-error=true]{color:#943b32!important}

@media(forced-colors:active){.avb-contact-form :is(input,textarea,a,button):focus-visible{outline:2px solid Highlight!important}.avb-contact-form input,.avb-contact-form textarea{border-bottom-color:CanvasText!important}}

@media(min-width:1101px){.avb-contact-page .avb-contact-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.avb-contact-page h1{margin-bottom:clamp(30px,4vh,46px)!important}.avb-contact-page .avb-contact-field textarea{height:136px}}
@media(max-height:800px) and (min-width:1101px){.avb-contact-page h1{margin-bottom:24px!important}.avb-contact-page .avb-contact-field textarea{height:96px}}
