/* Homepage enquiry and square video framed around the upper part of the portrait clip. */
.xlogin-section { --contact-bg:#061226; --contact-ink:#fff; --contact-muted:#a9b4c5; --contact-field:#0c1a2e; --contact-line:#ffffff26; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(32px,5vw,80px); width:100%; max-width:1600px; min-height:0; margin-inline:auto; padding:72px clamp(24px,4vw,64px); background:var(--contact-bg); color:var(--contact-ink); overflow:visible; }
html.light .xlogin-section { --contact-bg:#fff; --contact-ink:#061226; --contact-muted:#5d6879; --contact-field:#fff; --contact-line:#06122629; }
html.light .xlogin-eyebrow { color:#b95000; }
.xlogin-section .xlogin-left { padding:0; min-width:0; background:var(--contact-bg); }
.xlogin-section .xlogin-inner { width:100%; max-width:560px; margin:0 auto; gap:0; }
.xlogin-eyebrow { display:block; margin-bottom:16px; color:#ea720f; font:700 12px/1.4 var(--font); letter-spacing:.12em; }
.xlogin-section .xlogin-title { margin:0 0 14px; color:var(--contact-ink); text-align:left; font:600 clamp(30px,3vw,44px)/1.15 var(--font); letter-spacing:-.04em; }
.xlogin-intro { margin:0 0 28px; color:var(--contact-muted); font:400 16px/1.6 var(--font); text-wrap:pretty; }
.bb-contact-form { display:grid; gap:16px; font-family:var(--font); }
.bb-contact-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; }
.bb-contact-field { display:grid; min-width:0; gap:8px; }
.bb-contact-field label { color:var(--contact-ink); font-size:13px; font-weight:600; }
.bb-contact-field input,.bb-contact-field select,.bb-contact-field textarea { box-sizing:border-box; width:100%; min-width:0; min-height:48px; margin:0; padding:12px 14px; border:1px solid var(--contact-line); border-radius:8px; background:var(--contact-field); color:var(--contact-ink); font:400 15px/1.45 var(--font); color-scheme:dark; }
html.light .bb-contact-field input,html.light .bb-contact-field select,html.light .bb-contact-field textarea { color-scheme:light; }
.bb-contact-field textarea { resize:vertical; min-height:104px; max-height:300px; }
.bb-contact-field input::placeholder,.bb-contact-field textarea::placeholder { color:var(--contact-muted); opacity:1; }
.bb-contact-field select { padding-right:30px; }
.bb-contact-form :is(input,select,textarea,button):focus-visible,.bb-contact-details a:focus-visible,.bb-contact-privacy a:focus-visible { outline:2px solid #ea720f; outline-offset:3px; }
.bb-contact-consent { display:flex; align-items:center; min-height:44px; gap:12px; color:var(--contact-muted); font-size:12px; line-height:1.6; cursor:pointer; }
.bb-contact-consent input { flex-shrink:0; width:18px; height:18px; margin:0; accent-color:#ea720f; }
.bb-contact-submit { display:flex; align-items:center; justify-content:space-between; min-height:50px; width:100%; padding:12px 18px; border:1px solid #ea720f; border-radius:8px; background:#ea720f; color:#061226; font:700 15px/1.4 var(--font); cursor:pointer; transition:background .2s; }
.bb-contact-submit:hover { background:#ff8b29; }
.bb-contact-submit:disabled { opacity:.65; cursor:wait; }
.bb-contact-privacy { margin:0; color:var(--contact-muted); font:400 11px/1.7 var(--font); }
.bb-contact-privacy a { margin-left:.3em; color:var(--contact-ink); text-underline-offset:3px; }
.bb-contact-status { margin:0; padding:12px 14px; border:1px solid #22c55e66; border-radius:8px; color:var(--contact-ink); background:#22c55e0d; font:400 14px/1.6 var(--font); }
.bb-contact-status[hidden] { display:none; }
.bb-contact-status.is-error { border-color:#ef444480; background:#ef44440d; }
.bb-contact-details { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:24px; padding-top:20px; border-top:1px solid var(--contact-line); }
.bb-contact-details a { display:flex; flex-direction:column; justify-content:center; gap:5px; min-height:48px; color:var(--contact-ink); text-decoration:none; }
.bb-contact-details a > span { color:var(--contact-muted); font-size:11px; }
.bb-contact-details strong { font-size:13px; font-weight:600; overflow-wrap:anywhere; }
.bb-contact-details a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.xlogin-section .xlogin-art { width:100%; aspect-ratio:1 / 1; height:auto; min-height:0; align-self:center; overflow:hidden; border-radius:12px; background:#061226; }
.xlogin-section .xlogin-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 20%; }
@media(max-width:1100px) and (min-width:861px) { .bb-contact-row { grid-template-columns:1fr; } }
@media(max-width:860px) { .xlogin-section { grid-template-columns:minmax(0,1fr); gap:36px; padding:56px 24px; } .xlogin-section .xlogin-art { max-width:560px; margin-inline:auto; } }
@media(max-width:480px) { .xlogin-section { padding:48px 20px; } .bb-contact-row { grid-template-columns:1fr; } .xlogin-intro { font-size:15px; } .bb-contact-field input,.bb-contact-field select,.bb-contact-field textarea { font-size:16px; } }
@media(prefers-reduced-motion:reduce) { .bb-contact-submit { transition:none; } }
