.concierge-page{background:var(--paper,#fbfaf4)}.concierge-shell{padding-top:46px;padding-bottom:65px}.concierge-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.concierge-heading h1{font-size:clamp(42px,5vw,68px);letter-spacing:-.045em;line-height:1.08;margin:10px 0 0}.concierge-badge{border:1px solid #aebfd3;color:#15365b;border-radius:30px;padding:9px 15px;font-size:14px;white-space:nowrap}.concierge-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px;align-items:start}.concierge-chat{border:1px solid #c8d2df;border-radius:20px;overflow:hidden;background:#fbfaf4;box-shadow:0 18px 48px #15365b12;position:sticky;top:100px}.concierge-chat-top{background:#15365b;color:#fbfaf4;padding:19px 25px;display:flex;justify-content:space-between;align-items:center;font-size:16px}.concierge-chat button{font:inherit;cursor:pointer}.concierge-chat-top button{border:0;color:inherit;background:transparent;padding:5px;font-size:14px}#concierge-log{height:300px;overflow-y:auto;overscroll-behavior:contain;padding:25px;scrollbar-width:thin}.concierge-message{max-width:95%;margin-bottom:23px;animation:concierge-enter .35s ease both}.concierge-message>span{font-size:13px;font-weight:600;color:#355d89}.concierge-message p{font-size:17px;line-height:1.55;margin:7px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.concierge-message.user{margin-left:10%;padding:14px 18px;border-radius:17px 17px 2px 17px;background:#e7effb}.concierge-message.user p{font-size:16px}.concierge-choices{display:flex;flex-wrap:wrap;gap:8px;padding:0 25px 15px}.concierge-choices:empty{padding-bottom:0}.concierge-choices button{background:transparent;border:1px solid #b1c3d8;border-radius:22px;padding:9px 13px;color:#15365b;font-size:14px;transition:background .2s,transform .2s}.concierge-choices button:hover{background:#e7effb;transform:translateY(-2px)}#concierge-form{margin:0 20px;padding:15px;border:1px solid #9fb2ca;border-radius:14px}#concierge-form label{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}#concierge-input{resize:vertical;width:100%;border:0;background:transparent;min-height:60px;max-height:180px;color:#1c1e23;font:inherit;font-size:16px;line-height:1.5}#concierge-input:focus{outline:2px solid #0755cf;outline-offset:3px}.concierge-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.concierge-compose-actions .button{min-height:43px;padding:10px 18px;font-size:15px}#concierge-mic{display:flex;align-items:center;gap:7px;background:none;border:0;color:#15365b;padding:9px 4px;font-size:14px}#concierge-mic[aria-pressed=true]{color:#0755cf;box-shadow:0 0 0 2px #0755cf40;border-radius:6px}#concierge-mic:disabled{opacity:.6;cursor:default}#concierge-voice-status{font-size:13px;line-height:1.45;color:#46576b;margin:6px 0 0}#concierge-voice-status:empty{display:none}.concierge-disclosure{font-size:13px;line-height:1.55;color:#46576b;padding:0 25px;margin:16px 0 22px}.concierge-results{min-width:0;padding:8px 0}.concierge-result-heading h2{font-size:clamp(28px,3vw,40px);line-height:1.12;letter-spacing:-.025em;margin:10px 0 18px}.concierge-context{color:#355d89;font-size:14px;line-height:1.6;margin-bottom:20px;overflow-wrap:anywhere}.concierge-empty{border-top:1px solid #b9c9db;padding:28px 0}.concierge-empty p{font-size:17px;line-height:1.6;color:#46576b}.concierge-empty a,.concierge-back{font-size:15px;color:#0755cf}.concierge-route{display:flex;justify-content:space-between;gap:14px;position:relative;margin:4px 0 30px;padding-top:20px}.concierge-route:before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:#0755cf;transform-origin:left;animation:concierge-line 1.1s ease both}.concierge-route span{position:relative;font-size:14px;color:#15365b}.concierge-route span:before{content:'';position:absolute;top:-24px;left:0;width:10px;height:10px;background:#0755cf;border:3px solid #fbfaf4;border-radius:50%}.concierge-match{padding:23px 25px;margin-bottom:16px;background:#e7effb;border:1px solid #d2deed;border-radius:16px;box-shadow:0 12px 25px #15365b12;animation:concierge-enter .5s ease both;animation-delay:calc(var(--order)*.1s);transition:transform .25s,box-shadow .25s}.concierge-match:hover{transform:translateY(-3px);box-shadow:0 17px 32px #15365b20}.concierge-match .eyebrow{font-size:12px;letter-spacing:.08em}.concierge-match h3{font-size:26px;line-height:1.2;margin:9px 0 12px}.concierge-match p{font-size:16px;line-height:1.55;margin:0 0 17px}.concierge-match a{color:#0755cf;font-size:16px;font-weight:600}.concierge-match small{display:block;color:#46576b;font-size:13px;line-height:1.5;margin-top:13px}#concierge-handoff{padding:26px;background:#15365b;color:#fbfaf4;border-radius:18px;margin-top:24px;box-shadow:0 18px 35px #15365b1c}#concierge-handoff[hidden]{display:none}#concierge-handoff h3{font-size:30px;margin:0 0 10px}#concierge-handoff p{font-size:15px;line-height:1.55}#concierge-contact-form{display:grid;gap:10px}#concierge-contact-form label{font-size:14px;margin-top:8px}#concierge-contact-form input,#concierge-contact-form select,#concierge-contact-form textarea{width:100%;min-width:0;background:#fbfaf4;color:#1c1e23;border:1px solid #b5c5d9;border-radius:8px;padding:12px;font:inherit;font-size:16px}#concierge-contact-form textarea{resize:vertical;line-height:1.5}#concierge-contact-form .button{justify-content:center;margin-top:10px;border:1px solid #91b8f3}#concierge-copy{background:transparent;color:#fbfaf4;border:1px solid #8fa8c6;border-radius:30px;padding:12px;font:inherit;cursor:pointer}.concierge-back{display:inline-block;margin-top:28px}.concierge-page button:focus-visible,.concierge-page a:focus-visible,.concierge-page input:focus-visible,.concierge-page select:focus-visible{outline:3px solid #579bf1;outline-offset:3px}.concierge-page .journey-rail{z-index:0;pointer-events:none}.concierge-shell{position:relative;z-index:1}@keyframes concierge-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes concierge-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(max-width:850px){.concierge-layout{grid-template-columns:1fr;gap:30px}.concierge-chat{position:static}.concierge-results{padding:0}.concierge-heading{align-items:flex-start}.concierge-shell{padding-top:30px}.concierge-result-heading h2{font-size:32px}#concierge-log{height:290px}}@media(max-width:480px){.concierge-badge{font-size:12px;padding:7px 9px}.concierge-heading{gap:10px}.concierge-heading h1{font-size:43px}.concierge-heading .eyebrow{font-size:11px}.concierge-chat-top{padding:16px}.concierge-choices{padding-left:16px;padding-right:16px}#concierge-log{padding:18px 16px}#concierge-form{margin:0 12px;padding:12px}.concierge-disclosure{padding:0 16px}.concierge-match,#concierge-handoff{padding:21px}.concierge-match h3{font-size:24px}}@media(prefers-reduced-motion:reduce){.concierge-page *{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
.concierge-offices-link{display:flex;align-items:center;gap:14px;border:1px solid #91abc9;border-radius:30px;padding:12px 17px;color:#15365b;font-size:15px;white-space:nowrap}.concierge-offices-link:hover{background:#e7effb}.concierge-page #global-offices{scroll-margin-top:120px;padding-top:65px;border-top:1px solid #c8d2df}.concierge-page #global-offices h2{font-size:clamp(34px,4.5vw,58px);line-height:1.1;letter-spacing:-.035em}.concierge-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.concierge-fields>div{min-width:0}.concierge-fields label{display:block;margin:0 0 7px!important}.concierge-fields label span{font-size:13px;color:#c2d4eb}.concierge-field-error{display:block;color:#ffe2d0;font-size:13px;line-height:1.4;margin-top:6px}.concierge-field-error:empty{display:none}#concierge-contact-form [aria-invalid=true]{border:2px solid #f9c49b}.concierge-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.concierge-privacy{font-size:13px!important;color:#cfdeee;margin:3px 0!important}.concierge-privacy a{color:inherit;text-decoration:underline}#concierge-send-enquiry:disabled{opacity:.55;cursor:not-allowed}#concierge-captcha{min-width:0;overflow:hidden}.concierge-product-check{display:flex;align-items:center;gap:10px;font-size:14px;color:#15365b;margin-top:16px;cursor:pointer}.concierge-product-check input{accent-color:#0755cf;width:18px;height:18px}.concierge-page #concierge-handoff{padding:24px}.concierge-page #concierge-handoff h3{font-size:28px}.concierge-page #concierge-selected{font-size:14px;margin-bottom:20px}.concierge-page .concierge-match{padding:20px 23px}.concierge-page .concierge-match p{font-size:15px}.concierge-page .concierge-match h3{font-size:24px}.concierge-page .contact-band{margin-top:0}@media(max-width:520px){.concierge-heading{flex-wrap:wrap}.concierge-fields{grid-template-columns:1fr}.concierge-offices-link{padding:10px 14px;font-size:14px}.concierge-page #global-offices{scroll-margin-top:90px}}
.concierge-page #concierge-handoff{margin-top:0}.concierge-page .concierge-results{padding-top:0}.concierge-page #concierge-matches:not(:empty){margin-top:24px}.concierge-page #concierge-form{margin-bottom:22px}.concierge-page #concierge-delivery:empty{display:none}.concierge-interest-field{margin-bottom:5px}.concierge-page #concierge-interest{font-size:15px;text-overflow:ellipsis}.concierge-page #concierge-handoff h3{margin-bottom:18px}.concierge-compose-actions [hidden]{display:none!important}

/* Full-width company and enquiry fields, with aligned desktop panels. */
.concierge-company-field label,#concierge-details-field label{display:block;margin:4px 0 7px}
.concierge-company-field label span,#concierge-details-field label span{font-size:13px;color:#c2d4eb}
#concierge-details{min-height:150px}
#concierge-contact-form textarea:focus-visible{outline:3px solid #579bf1;outline-offset:3px}
@media(min-width:851px){
 .concierge-layout{align-items:stretch;row-gap:0}
 .concierge-page .concierge-results{display:contents}
 .concierge-chat{grid-column:1;grid-row:1;position:static;display:flex;flex-direction:column}
 .concierge-page #concierge-handoff{grid-column:2;grid-row:1}
 .concierge-page #concierge-matches{grid-column:2;grid-row:2}
 #concierge-log{flex:1 1 300px;height:300px;min-height:180px;max-height:440px}
 #concierge-form{margin-top:auto;flex-shrink:0}
 .concierge-choices{max-height:155px;overflow-y:auto;flex-shrink:0}
}
