/* The Butler is a working conversation, with the composer always close to the answer. */
body.web-butler{background:#111d18;color:#efeadd}.web-butler main{width:min(1240px,100% - 64px);margin:0 auto;padding:36px 0 48px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;min-height:calc(100svh - 78px)}
.butler-desk{padding:18px 26px 0 0;border-right:1px solid #cbb78e22}.butler-desk img{width:76px;height:76px;object-fit:contain;margin-bottom:20px}.butler-desk h1{font:38px/1.1 var(--serif);margin:10px 0 15px;letter-spacing:-.03em}.butler-desk>p:not(.club-eyebrow){font-size:12px;line-height:1.8;color:#aebba6}.butler-desk .club-eyebrow{font-size:9px;margin:0}.butler-session{border-top:1px solid #cbb78e22;margin-top:28px;padding:18px 0;font-size:11px;line-height:1.6;color:#b8baa7}.butler-desk>a{display:block;width:fit-content;margin:12px 0;font-size:12px;color:#d5bf96;text-decoration:none}
.web-butler .butler-main{display:flex;flex-direction:column;gap:0;width:100%;max-width:none;margin:0;padding:18px 0 0;min-width:0}.butler-main .butler-greeting{margin-bottom:20px}.butler-greeting .club-eyebrow{font-size:9px;margin-bottom:10px}.web-butler .butler-main h2{font:38px/1.15 var(--serif);letter-spacing:-.03em;margin:0 0 10px}.web-butler .butler-note{font:12px/1.6 var(--sans);margin:0;color:#aebba6}
.web-butler .butler-prompts{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 0 25px}.web-butler .butler-prompts button{background:#1a2b21;border:1px solid #cbb78e33;border-radius:3px;color:#e3dbc7;padding:13px 14px;min-height:67px;font-size:11px;line-height:1.5;text-align:left;width:100%;transform:none}.web-butler .butler-prompts button:hover{background:#233a2b;border-color:#cbb78e88}
.web-butler #conversation{width:100%;margin:0;flex:1;display:flex;flex-direction:column;gap:14px;grid-column:auto;grid-row:auto}.web-butler .message{margin:0;padding:20px 22px;font:14px/1.75 var(--sans);border-radius:4px;max-width:94%;scroll-margin-top:85px}.web-butler .message>strong{font-size:9px;letter-spacing:.16em;display:block;margin-bottom:10px}.web-butler .message.user{align-self:flex-end;background:#e6decc;color:#253528}.web-butler .message.assistant{align-self:flex-start;background:#1e3225;border:1px solid #c5ac7c1f;color:#e7e4d8}.web-butler .message.assistant>strong{color:#d6b887}.web-butler .message p{margin:8px 0}.web-butler .message table{font-size:12px}.web-butler .message ul{padding-left:20px}
.web-butler #question-form{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin:28px 0 0;padding:14px 0 0;border:0;border-top:1px solid #cbb78e33;background:#111d18;border-radius:0;position:sticky;bottom:0;grid-column:auto;grid-row:auto}.web-butler #question-form label{grid-column:1/-1;font-size:9px;color:#b5bfa9;letter-spacing:.14em}.web-butler #question{min-height:76px;max-height:180px;resize:vertical;padding:13px;background:#1a2b21;border:1px solid #cbb78e44;border-radius:3px;color:#eee8d9;font:14px/1.5 var(--sans);width:100%}.web-butler #send{align-self:stretch;margin:0;padding:0 18px;background:#d5c099;color:#1b291e;border:0;border-radius:3px;font-size:12px;transform:none}.web-butler #status{grid-column:1/-1;min-height:22px;margin:0 0 6px;font-size:11px;line-height:1.5}.web-butler #status.error{color:#f0b5a1}.has-conversation .butler-greeting{display:none}
@media(max-width:850px){.web-butler main{width:calc(100% - 40px);grid-template-columns:180px minmax(0,1fr);gap:25px}.butler-desk{padding-right:20px}.web-butler .butler-prompts{grid-template-columns:1fr}.web-butler .butler-prompts button{min-height:44px;padding:10px 13px}.butler-desk h1{font-size:30px}}
@media(max-width:600px){.web-butler main{display:block;width:calc(100% - 36px);padding-top:18px}.butler-desk{border:0;display:grid;grid-template-columns:42px 1fr;gap:0 12px;padding:0 0 15px;border-bottom:1px solid #cbb78e22}.butler-desk img{width:42px;height:42px;grid-row:1/3;margin:0}.butler-desk .club-eyebrow{grid-column:2;font-size:8px}.butler-desk h1{font-size:26px;grid-column:2;margin:3px 0 0}.butler-desk>p:not(.club-eyebrow),.butler-desk>a{display:none}.butler-session{grid-column:1/-1;margin-top:12px;padding:0;border:0;font-size:10px}.web-butler .butler-main{padding-top:22px}.web-butler .butler-main h2{font-size:29px}.web-butler .butler-prompts{gap:6px;margin-bottom:18px}.web-butler .message{scroll-margin-top:104px;max-width:100%;padding:15px;font-size:13px}.web-butler #question-form{margin-top:20px;gap:8px}.web-butler #send{font-size:11px;padding:0 12px}.web-butler #question{font-size:14px}.web-butler #conversation{min-height:80px}}
.web-butler .butler-suggest{appearance:none;display:inline;font:inherit;color:#e5ac78;background:none;border:0;border-bottom:1px dotted #e5ac78;padding:2px 0;text-align:left;cursor:pointer}.web-butler .butler-suggest:hover{color:#f2c79d}
@media(max-width:600px){
.has-conversation .butler-desk{display:none}
.web-butler .message table,.web-butler .message tbody,.web-butler .message tr,.web-butler .message td{display:block;width:100%;min-width:0}
.web-butler .message thead{display:none}
.web-butler .message .table-scroll{overflow:visible;border:0;background:none}
.web-butler .message tr{border:1px solid #cbb78e33;border-radius:4px;margin:0 0 8px;padding:2px 10px}
.web-butler .message td{display:flex;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid #cbb78e1f;padding:6px 0;text-align:right!important;overflow-wrap:anywhere}
.web-butler .message td:last-child{border-bottom:0}
.web-butler .message td::before{content:attr(data-label);flex:none;max-width:42%;text-align:left;color:#d6b887;font-size:11px}
.web-butler .message td:first-child{display:block;text-align:left!important;font-weight:700;color:#f3ede3}
.web-butler .message td:first-child::before{display:none}
.web-butler .message .butler-suggest{min-height:32px;padding:6px 0}
.web-butler #question-form{margin-top:12px;padding:10px 0 calc(10px + env(safe-area-inset-bottom));z-index:5}
.web-butler #question-form label{display:none}
.web-butler #question{height:52px;min-height:52px;max-height:110px;resize:none;padding:10px 12px}
.web-butler #send{min-height:48px}
.web-butler #status{margin:0}
}
