/* Shared contact form layout, scoped to avoid changing other page forms. */
#contactForm, #vtoContactForm {display:flex;flex-direction:column;gap:18px;width:100%;max-width:820px;margin:24px auto;box-sizing:border-box;text-align:left;}
#contactForm > label, #vtoContactForm > label {display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;margin:0;padding:0;text-align:left;font-size:15px;font-weight:600;line-height:1.5;color:#24343b;}
#contactForm input:not([type=radio]), #contactForm textarea, #vtoContactForm input:not([type=radio]), #vtoContactForm textarea {display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:0;padding:12px 14px;border:1px solid #ccd7dc;border-radius:8px;background:#fff;font-family:inherit;font-size:16px;line-height:1.5;font-weight:400;color:#24343b;}
#contactForm input:not([type=radio]), #vtoContactForm input:not([type=radio]) {min-height:48px;font-size:16px;font-weight:400;}
#contactForm textarea, #vtoContactForm textarea {min-height:140px;font-size:16px;font-weight:400;resize:vertical;}
#contactForm .contact-interest, #vtoContactForm .contact-interest {width:100%;box-sizing:border-box;border:0;padding:0;margin:0;min-width:0;text-align:left;}
#contactForm .contact-interest legend, #vtoContactForm .contact-interest legend {display:block;width:100%;padding:0;margin:0 0 8px;border:0;font-size:15px;line-height:1.5;font-weight:600;color:#24343b;}
#contactForm .contact-interest label, #vtoContactForm .contact-interest label {display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;gap:10px;width:100%;padding:7px 0;margin:0;text-align:left;font-size:15px;line-height:1.5;font-weight:400;cursor:pointer;}
#contactForm .contact-interest input, #vtoContactForm .contact-interest input {appearance:auto;position:static;flex:0 0 18px;width:18px;height:18px;min-height:0;padding:0;margin:2px 0 0;accent-color:#24584e;}
#contactForm > button, #vtoContactForm > button {align-self:flex-start;width:auto;min-height:46px;margin:0;padding:12px 24px;background:#214f45;color:#fff;border:0;border-radius:8px;font-size:16px;font-weight:600;}
#vtoContactForm > p:empty {display:none;}
@media(max-width:600px){#contactForm,#vtoContactForm{margin:20px auto;gap:16px;}#contactForm > button,#vtoContactForm > button{width:100%;}}
/* Keep the VTO enquiry fields directly under the Contact Us heading. */
#vtoContactForm{margin-left:0;margin-right:0}
.vto-contact-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center;margin-top:24px}
.vto-contact-columns #vtoContactForm{max-width:none;margin:0;min-width:0}
.vto-contact-columns .vto-contact-image{margin:0;min-width:0}
.vto-contact-columns .vto-contact-image img{display:block;width:100%;height:auto;object-fit:contain;border-radius:16px}
@media(max-width:700px){.vto-contact-columns{grid-template-columns:minmax(0,1fr);gap:24px}.vto-contact-columns .vto-contact-image{width:100%;max-width:480px;justify-self:center}}
/* Reduce the contact artwork by 30% on both VTO pages. */
.vto-contact-columns .vto-contact-image{width:70%;justify-self:center}
@media(max-width:700px){.vto-contact-columns .vto-contact-image{width:70%;max-width:336px}}

.vto-contact-success{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:32px 28px;border:1px solid #b7dcc4;border-radius:16px;background:#eaf6ee;color:#1d5c3a}
.vto-contact-success[hidden],#vtoContactForm[hidden]{display:none}
.vto-contact-success:focus{outline:none}
.vto-contact-success-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#1f8a4c;color:#fff;font-size:28px;font-weight:700;margin-bottom:8px}
.vto-contact-success h3{margin:0;font-size:22px;line-height:1.3;color:#1d5c3a}
.vto-contact-success p{margin:4px 0 14px;font-size:15px;color:#2f5d45}
/* Space below the contact section on every screen size. */
main #contact.vto-contact-section{margin-bottom:56px}
@media(max-width:700px){main #contact.vto-contact-section{margin-bottom:48px}}

.vto-contact-closing{margin:2lh 0;font-weight:700;line-height:1.6}

/* Use the hero heading typography, retaining the closing sentence and its spacing. */
main .vto-contact-closing.vto-section-title{margin:2lh 0;text-transform:none}

.vto-contact-section>.vto-contact-closing{display:block;width:100%;max-width:none;box-sizing:border-box}

/* Keep the closing headline near the legal links, with breathing room below them. */
main #contact.vto-contact-with-closing{margin-bottom:8px;padding-bottom:12px}
main #contact.vto-contact-with-closing>.vto-contact-closing.vto-section-title{margin:32px 0 0}
.merchant-landing .vto-legal-links{margin-top:0;padding-bottom:32px;flex-wrap:wrap}
@media(max-width:700px){main #contact.vto-contact-with-closing{margin-bottom:8px;padding-bottom:12px}.merchant-landing .vto-legal-links{padding-bottom:24px}}
