/* Contact layout: compact dark introduction and clear light content area. */
.eloi-premium main.contact-editorial{max-width:none;margin:0;padding:0;background:#f2f3f4;color:#171b1e}
.contact-page-container{max-width:1224px;padding:0 40px;margin:0 auto}
.contact-page-hero{background:#0b0d0e;padding:62px 0 54px}
.eloi-premium .contact-page-hero h1{font-size:clamp(36px,4vw,56px);line-height:1.12;letter-spacing:-.04em;color:#f5f6f7;margin:16px 0 20px}
.contact-page-hero p{font-size:18px;line-height:1.65;color:#aeb7bd;margin:0}
.contact-editorial .nd-contact-options{gap:34px;margin:0;padding:48px 0 38px;border-bottom:1px solid #d6dce0}
.contact-editorial .nd-contact-options article{border:0;padding:0;min-width:0}
.eloi-premium .contact-editorial .nd-contact-options article>a{font-size:clamp(22px,2vw,30px);line-height:1.3;font-weight:700;color:#171b1e;margin:10px 0 6px}
.contact-editorial .nd-contact-options p{color:#56636d;font-size:16px;line-height:1.65;margin:0}
.eloi-premium .contact-page-enquiry{padding:48px 0 80px;background:transparent!important;color:#171b1e;border:0}
.eloi-premium .contact-page-enquiry>.inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:none;padding:0;margin:0;gap:60px;align-items:stretch}
.contact-page-copy{display:flex;flex-direction:column;min-width:0}
.eloi-premium .contact-page-copy h2{font-size:36px;line-height:1.2;letter-spacing:-.035em;color:#171b1e;margin:10px 0 18px}
.contact-page-copy>p,.contact-partner-card p{font-size:17px;line-height:1.7;color:#56636d;margin:0}
.contact-company-visual{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:22px;align-items:center;margin:32px 0}
.contact-company-details address{font-size:16px;line-height:1.8;font-style:normal;color:#171b1e;margin-top:16px;overflow-wrap:anywhere}
.contact-company-details strong{font-weight:600}
.contact-red-photo{margin:0;background:#050505;border-radius:3px;overflow:hidden}
.contact-red-photo img{display:block;width:100%;height:auto;object-fit:contain}
.contact-partner-card{margin-top:auto;padding:30px 32px;border:1px solid #d5dce1;background:#fff}
.contact-partner-card h3{color:#171b1e;font-size:21px;line-height:1.3;letter-spacing:-.02em;margin:0 0 8px}
.contact-partner-card .nd-primary{margin-top:24px}
.eloi-premium .contact-page-enquiry form{background:#15191d;border:1px solid #252b30;border-radius:5px;padding:32px;color:#dbe0e4;gap:16px;min-width:0;align-self:start}
.contact-page-enquiry form .form-pair{grid-template-columns:1fr;gap:16px}
.eloi-premium .contact-page-enquiry form label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600;color:#dbe0e4}
.eloi-premium .contact-page-enquiry form input,.eloi-premium .contact-page-enquiry form select,.eloi-premium .contact-page-enquiry form textarea{width:100%;min-height:44px;padding:10px 12px;box-sizing:border-box;background:#0b0e10;border:1px solid #343c42;border-radius:3px;color:#fff;font-size:16px;font-weight:400;line-height:1.5;color-scheme:dark}
.eloi-premium .contact-page-enquiry form textarea{resize:vertical;min-height:125px}
.eloi-premium .contact-page-enquiry form input:focus,.eloi-premium .contact-page-enquiry form select:focus,.eloi-premium .contact-page-enquiry form textarea:focus{outline:2px solid #f47920;outline-offset:2px}
.contact-page-enquiry form input::placeholder,.contact-page-enquiry form textarea::placeholder{color:#b2bbc2}
.eloi-premium .contact-page-enquiry form small{color:#b2bbc2;font-size:12px;line-height:1.6}
.contact-page-enquiry form small a{color:#ffab68}
.contact-page-enquiry form button.btn{width:100%;background:#f47920;color:#121719;border:0;border-radius:3px;padding:13px 20px;font-weight:700}
.contact-page-enquiry form .form-status:empty{display:none}
.contact-page-enquiry form .form-status{color:#fff;line-height:1.6;margin:0}
.contact-page-enquiry fieldset{border:1px solid #49545d;padding:16px;min-width:0}
@media(max-width:1000px){.contact-page-enquiry>.inner{gap:32px!important}.contact-company-visual{grid-template-columns:1fr}.contact-red-photo{max-width:220px}.contact-partner-card{padding:24px}.contact-editorial .nd-contact-options{gap:22px}.eloi-premium .contact-editorial .nd-contact-options article>a{font-size:22px}}
@media(max-width:750px){.contact-page-container{padding:0 24px}.contact-page-hero{padding:42px 0}.contact-page-hero p{font-size:16px}.contact-editorial .nd-contact-options{grid-template-columns:1fr;gap:28px;padding:34px 0}.eloi-premium .contact-page-enquiry>.inner{grid-template-columns:1fr;gap:32px!important}.eloi-premium .contact-page-enquiry{padding:34px 0 48px}.eloi-premium .contact-page-enquiry form{padding:24px}.contact-company-visual{grid-template-columns:minmax(0,1fr) 150px;gap:16px}.contact-page-copy>p,.contact-partner-card p{font-size:16px}.eloi-premium .contact-page-copy h2{font-size:32px}}
@media(max-width:420px){.contact-company-visual{grid-template-columns:1fr}.contact-red-photo{max-width:210px}.eloi-premium .contact-page-enquiry form{padding:20px}}

/* Start immediately below the menu and place the supplied photo in the hero. */
.eloi-premium main.contact-editorial{padding-top:0}
.contact-page-hero{padding:30px 0}
.contact-page-hero>.contact-page-container{display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:40px}
.contact-hero-copy{min-width:0}
.eloi-premium .contact-page-hero h1{font-size:clamp(36px,3.5vw,52px)}
.contact-page-hero .contact-red-photo{width:260px;max-width:none;height:270px;background:transparent;border-radius:0;justify-self:end}
.contact-page-hero .contact-red-photo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:lighten}
.contact-company-block{margin:32px 0}
@media(max-width:750px){.contact-page-hero>.contact-page-container{grid-template-columns:minmax(0,1fr) 160px;gap:20px}.contact-page-hero .contact-red-photo{width:160px;height:210px}.eloi-premium .contact-page-hero h1{font-size:34px}}
@media(max-width:550px){.contact-page-hero>.contact-page-container{grid-template-columns:1fr;gap:20px}.contact-page-hero .contact-red-photo{width:190px;height:210px;justify-self:center}.eloi-premium .contact-page-hero h1{font-size:36px}}
