/* Salon Park Concierge — one conversation, designed for the screen in your hand. */
.concierge-window,.concierge-launcher,.concierge-page{--c-navy:#0b2349;--c-berry:#9b2859;--c-blush:#edc1d2;--c-paper:#fbfaf8;--c-muted:#5f6b7b;--c-line:#dfe3e8;--c-serif:Instrument,Georgia,serif;--c-sans:Manrope,Arial,sans-serif;font-family:var(--c-sans);color:var(--c-navy)}
.concierge-window *,.concierge-page *,.concierge-launcher *{box-sizing:border-box}
.concierge-window [hidden]{display:none!important}
.concierge-window button,.concierge-window input,.concierge-window textarea{font:inherit}
.concierge-window button,.concierge-window a,.concierge-launcher{touch-action:manipulation}
.concierge-window button:focus-visible,.concierge-window a:focus-visible,.concierge-window summary:focus-visible,.concierge-launcher:focus-visible{outline:3px solid #bf6189;outline-offset:3px}
.concierge-window button{cursor:pointer}
.concierge-window svg,.concierge-launcher svg{display:block;width:22px;height:22px;flex-shrink:0}
.concierge-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Launcher: a compact diamond button that never sits over page content. On larger screens it floats
   inside the page gutter (sized to fit it) and shows its label on hover or keyboard focus. On phones
   concierge.js docks it into a slot reserved at the end of the page's bottom bar. */
.concierge-launcher{--launcher-size:clamp(40px,calc(var(--gutter,72px) - 8px),52px);position:fixed;z-index:60;right:max(0px,calc((var(--gutter,72px) - var(--launcher-size)) / 2));bottom:24px;display:grid;place-items:center;width:var(--launcher-size);height:var(--launcher-size);padding:0;border:1px solid #ffffff38;border-radius:50%;background:var(--c-navy);color:white;box-shadow:0 8px 28px #081f4530;isolation:isolate;transition:transform .25s,box-shadow .25s}
.concierge-launcher:hover{transform:translateY(-3px);box-shadow:0 12px 36px #081f4545}
.concierge-launcher-symbol{display:grid;place-items:center;width:100%;height:100%;color:var(--c-blush)}
.concierge-launcher-symbol svg{width:68%;height:68%}
.concierge-launcher-label{position:absolute;right:calc(100% + 10px);top:50%;translate:0 -50%;padding:9px 16px;border-radius:30px;background:var(--c-navy);color:#fff;white-space:nowrap;box-shadow:0 8px 28px #081f4530;opacity:0;pointer-events:none;transition:opacity .2s}
.concierge-launcher:hover .concierge-launcher-label,.concierge-launcher:focus-visible .concierge-launcher-label{opacity:1}
.concierge-launcher small,.concierge-launcher strong{display:block;text-align:left}
.concierge-launcher small{font-size:12px;line-height:1.4;color:#d0d7e3;letter-spacing:.02em}
.concierge-launcher strong{font-size:14px;font-weight:650;line-height:1.5}
/* Docked: on phones concierge.js moves the launcher into the page's bottom bar (.concierge-bar), where
   it follows the bar's own visibility (menu open, booking button on screen). Sharing the bar, the main
   action may shrink (and wrap) but never pushes the bar off screen. */
@media(max-width:800px){
 .concierge-bar{grid-auto-flow:column;grid-auto-columns:auto}
 .profile-dock.concierge-bar:not(.folio-dock){grid-template-columns:53px 62px minmax(0,1fr)}
 .folio-dock.concierge-bar{grid-template-columns:50px 50px minmax(0,1fr)}
}
@media(max-width:480px){
 .profile-dock.concierge-bar:not(.folio-dock){grid-template-columns:46px 54px minmax(0,1fr);gap:8px;padding-inline:14px}
 .folio-dock.concierge-bar{grid-template-columns:auto auto minmax(0,1fr);gap:6px}
 .portfolio-page .folio-dock.concierge-bar .folio-button{padding-inline:12px;font-size:12px}
}
@media(max-width:380px){.profile-dock.concierge-bar:not(.folio-dock){grid-template-columns:44px 50px minmax(0,1fr);gap:6px;padding-inline:12px}}
/* With scripting on, the bar takes that shape from first paint and holds the slot until the button
   arrives, so nothing shifts. Without scripting there is no launcher, and no empty slot. */
@media(max-width:800px) and (scripting:enabled){
 body:has(>.concierge-launcher) :is(.app-dock,.profile-dock){grid-auto-flow:column;grid-auto-columns:auto}
 body:has(>.concierge-launcher) :is(.app-dock,.profile-dock)::after{content:'';display:block;flex:none;width:46px;height:46px;align-self:center}
 html.studio-design-embed body :is(.app-dock,.profile-dock)::after{display:none}
 body:has(>.concierge-launcher) .profile-dock:not(.folio-dock){grid-template-columns:53px 62px minmax(0,1fr)}
 body:has(>.concierge-launcher) .folio-dock{grid-template-columns:50px 50px minmax(0,1fr)}
}
@media(max-width:480px) and (scripting:enabled){
 body:has(>.concierge-launcher) .profile-dock:not(.folio-dock){grid-template-columns:46px 54px minmax(0,1fr);gap:8px;padding-inline:14px}
 body:has(>.concierge-launcher) .folio-dock{grid-template-columns:auto auto minmax(0,1fr);gap:6px}
 body:has(>.concierge-launcher) .folio-dock .folio-button{padding-inline:12px;font-size:12px}
}
@media(max-width:380px) and (scripting:enabled){body:has(>.concierge-launcher) .profile-dock:not(.folio-dock){grid-template-columns:44px 50px minmax(0,1fr);gap:6px;padding-inline:12px}}
html .concierge-launcher.concierge-docked{position:relative;inset:auto;z-index:auto;display:grid;place-items:center;gap:0;align-self:center;justify-self:end;flex:none;width:46px;height:46px;min-height:46px;margin:0;padding:0;border:1px solid #ffffff38;border-radius:50%;background:var(--c-navy);color:#fff;box-shadow:0 3px 12px #081f4524;visibility:inherit;pointer-events:auto;transform:none}
html .concierge-launcher.concierge-docked .concierge-launcher-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.concierge-launcher[aria-expanded=true]{opacity:0;pointer-events:none}
.concierge-window{background:var(--c-paper);padding:0;border:0;overflow:hidden;min-width:0;display:flex;flex-direction:column;isolation:isolate;text-align:left}
.concierge-dialog{position:fixed;inset:auto 24px 24px auto;width:min(600px,calc(100vw - 48px));height:min(840px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);max-width:calc(100vw - 48px);margin:0;border:1px solid #ffffff45;border-radius:22px;box-shadow:0 35px 100px #07193455}
.concierge-dialog:not([open]){display:none}
.concierge-dialog[open]{animation:concierge-panel-in .4s cubic-bezier(.2,.8,.2,1) both}
.concierge-dialog::backdrop{background:#071a3c59;backdrop-filter:blur(4px);animation:concierge-backdrop-in .3s ease both}
.concierge-header{flex-shrink:0;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 24px;background:var(--c-navy);color:white;position:relative;z-index:3}
.concierge-brand{display:flex;gap:12px;align-items:center;min-width:0}
.concierge-brand-symbol{width:40px;color:var(--c-blush);flex-shrink:0}
.concierge-brand-symbol svg{width:40px;height:40px}
.concierge-brand-name{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.21em;line-height:1.6;color:#d3dcea}
.concierge-brand strong{font:400 27px/1.12 var(--c-serif);letter-spacing:-.015em}
.concierge-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.concierge-language{display:flex;align-items:center;gap:1px;border:1px solid #ffffff25;border-radius:40px;padding:3px;margin-right:5px}
.concierge-language button{min-height:36px;min-width:37px;padding:7px 8px;color:#d9e0eb;font-size:11px;font-weight:700;background:transparent;border-radius:30px;border:0}
.concierge-language button[aria-pressed=true]{background:#fff;color:var(--c-navy)}
.concierge-icon-button{display:grid;place-items:center;background:transparent;color:white;width:40px;height:44px;padding:8px;border:0;border-radius:50%}
.concierge-icon-button:hover{background:#ffffff12}
.concierge-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b8c1ce transparent;padding:28px 26px 18px;scroll-padding-bottom:24px}
.concierge-welcome{padding-bottom:10px}
.concierge-eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;line-height:1.5;color:var(--c-berry);margin:0 0 18px}
.concierge-eyebrow>span:first-child{font-size:19px;font-weight:400;line-height:1}
.concierge-welcome h2{font:400 clamp(42px,4vw,53px)/.96 var(--c-serif);letter-spacing:-.037em;color:var(--c-navy);margin:0}
.concierge-welcome h2 em{color:var(--c-berry);font:italic 400 1em/.96 var(--c-serif);letter-spacing:-.025em}
.concierge-welcome-copy{font-size:14px;line-height:1.7;color:var(--c-muted);margin:17px 0 21px;max-width:41ch}
.concierge-art{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:6px 0 19px;overflow:clip;isolation:isolate}
.concierge-art-frame{height:140px;border-radius:4px;overflow:hidden;position:relative;margin:0;background:#dce0e6;z-index:1;transform:translateY(7px);box-shadow:0 4px 14px #0b234913}
.concierge-art-frame-2{transform:translateY(0);border-top-right-radius:38px}
.concierge-art-frame-3{transform:translateY(13px);border-bottom-left-radius:38px}
.concierge-art-frame-4{transform:translateY(4px)}
.concierge-art-frame img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .75s cubic-bezier(.2,.7,.3,1)}
.concierge-art-frame:hover img{transform:scale(1.05)}
.concierge-art-diamond{position:absolute;width:175px;height:175px;border:1px solid #9b285929;transform:rotate(45deg);left:50%;margin-left:-87px;top:-1px;z-index:0}
.concierge-starters{display:grid;gap:0;margin-top:15px;border-top:1px solid var(--c-line)}
.concierge-starters>button{display:flex;align-items:center;gap:14px;width:100%;min-height:78px;text-align:left;padding:16px 0;border:0;border-bottom:1px solid var(--c-line);background:transparent;color:var(--c-navy);transition:padding .2s,background .2s}
.concierge-starters>button:hover{padding-inline:10px;background:#f0edf0}
.concierge-starter-icon{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;color:var(--c-berry);border:1px solid #e5d3db;transform:rotate(45deg);border-radius:3px;margin:3px 5px}
.concierge-starter-icon svg{transform:rotate(-45deg);width:21px;height:21px}
.concierge-starters>button>span:nth-child(2){flex:1;min-width:0}
.concierge-starters strong{display:block;font-size:15px;line-height:1.45;font-weight:650;letter-spacing:-.025em}
.concierge-starters small{display:block;font-size:12px;line-height:1.65;color:var(--c-muted);margin-top:2px}
.concierge-starters>button>svg{width:20px;color:var(--c-berry)}
.concierge-thread{display:flex;flex-direction:column;gap:24px}
.concierge-thread:empty{display:none}
.concierge-message{min-width:0;animation:concierge-message-in .3s ease both}
.concierge-message.is-user{align-self:flex-end;max-width:87%;font-size:14px;line-height:1.65;background:var(--c-navy);color:white;border-radius:18px 18px 4px 18px;padding:14px 18px;overflow-wrap:anywhere}
.concierge-message.is-assistant{align-self:stretch;max-width:100%;font-size:15px;line-height:1.75}
.concierge-message p{max-width:none;margin:0 0 12px}
.concierge-message p:last-child{margin-bottom:0}
.concierge-answer{color:var(--c-navy);font-size:15px;line-height:1.75;overflow-wrap:anywhere}
.concierge-answer h2,.concierge-answer h3{font:400 31px/1.12 var(--c-serif);letter-spacing:-.03em;margin:18px 0 12px}
.concierge-answer a:not([class]){text-decoration:underline;text-underline-offset:4px}
.concierge-criteria{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.concierge-criteria>span{display:inline-flex;align-items:center;min-height:29px;padding:4px 10px;border:1px solid #d4dce7;border-radius:30px;background:#f0f3f8;font-size:11px;font-weight:650;line-height:1.5}
.concierge-results{display:grid;gap:16px;margin-top:18px}
.concierge-card{min-width:0;background:white;border:1px solid var(--c-line);border-radius:15px;overflow:hidden;box-shadow:0 4px 12px #0b234908;position:relative}
.concierge-card-cover{width:100%;height:190px;display:block;object-fit:cover;object-position:center;background:#dce2ea}
.concierge-card-cover img{width:100%;height:100%;object-fit:cover}
.concierge-card-identity{display:flex;align-items:center;gap:14px;padding:19px 20px 9px}
.concierge-card-identity img{width:54px;height:54px;object-fit:cover;object-position:center 25%;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);flex-shrink:0}
.concierge-card-identity>div{min-width:0}
.concierge-card-name{font:400 28px/1.1 var(--c-serif);letter-spacing:-.03em;color:var(--c-navy);overflow-wrap:anywhere}
.concierge-card-business{font-size:12px;line-height:1.6;color:var(--c-muted);margin-top:5px}
.concierge-card-meta{display:flex;flex-wrap:wrap;gap:6px 12px;padding:0 20px;margin-top:6px;font-size:11px;font-weight:600;line-height:1.7;color:var(--c-muted)}
.concierge-card-reasons{padding:10px 20px 0;margin:0;font-size:13px;line-height:1.7;color:#465971}
.concierge-card-reasons li{margin-left:16px;margin-bottom:5px;padding-left:2px}
.concierge-card-reasons span{display:block}
.concierge-card-actions{display:flex;flex-wrap:wrap;gap:8px;padding:16px 20px 20px}
.concierge-card-actions a,.concierge-actions a,.concierge-actions button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:11px 15px;border:1px solid var(--c-navy);background:var(--c-navy);border-radius:7px;font-size:12px;font-weight:650;line-height:1.5;color:white;transition:background .2s,transform .2s;text-decoration:none}
.concierge-card-actions a+a,.concierge-actions a+a,.concierge-actions button+button{background:transparent;color:var(--c-navy);border-color:#cfd7e3}
.concierge-card-actions a:hover,.concierge-actions a:hover,.concierge-actions button:hover{transform:translateY(-2px);background:var(--c-berry);color:white;border-color:var(--c-berry)}
.concierge-service-list{display:grid;gap:0;margin:18px 0;border-top:1px solid var(--c-line)}
.concierge-service{display:grid;grid-template-columns:1fr auto;gap:7px 18px;padding:16px 0;border-bottom:1px solid var(--c-line);font-size:14px;line-height:1.6}
.concierge-service strong{font-size:14px;font-weight:650}
.concierge-service p{grid-column:1/-1;font-size:13px;color:var(--c-muted);line-height:1.7;margin:0}
.concierge-service small{font-size:12px;color:var(--c-muted)}
.concierge-service a{grid-column:1/-1;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px;font-size:13px}
.concierge-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
.concierge-gallery figure{min-width:0;margin:0}
.concierge-gallery img{width:100%;height:220px;object-fit:cover;object-position:center;border-radius:10px;background:#e1e5ec}
.concierge-gallery figcaption{font-size:12px;line-height:1.6;color:var(--c-muted);padding:8px 3px 0}
.concierge-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.concierge-followups{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.concierge-followups:empty{display:none}
.concierge-followups button{min-height:44px;padding:11px 14px;border:1px solid #d0b1be;border-radius:30px;background:#fbf3f6;color:#792245;font-size:12px;line-height:1.5;text-align:left;transition:background .2s,border-color .2s}
.concierge-followups button:hover{background:#f2e0e8;border-color:#b66c8a}
.concierge-note{font-size:12px;line-height:1.75;color:var(--c-muted);padding-top:13px;margin-top:13px;border-top:1px solid var(--c-line)}
.concierge-status{margin:13px 0 0;color:var(--c-muted);font-size:13px;line-height:1.7}
.concierge-status:empty{display:none}
.concierge-status:not(:empty)::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--c-berry);margin-right:8px;animation:concierge-pulse 1.3s ease-in-out infinite}
.concierge-composer-wrap{flex-shrink:0;background:var(--c-paper);border-top:1px solid var(--c-line);padding:17px 24px 12px;z-index:3;box-shadow:0 -10px 24px #fbfaf899}
.concierge-composer{display:flex;align-items:flex-end;gap:10px;border:1px solid #bac4d4;border-radius:17px;background:white;padding:7px 8px 7px 16px;transition:border-color .2s,box-shadow .2s}
.concierge-composer:focus-within{border-color:var(--c-berry);box-shadow:0 0 0 3px #9b285910}
.concierge-input-label{min-width:0;flex:1}
.concierge-composer textarea{width:100%;display:block;resize:none;min-height:44px;max-height:120px;padding:11px 0 9px;border:0;background:transparent;font-size:16px;line-height:1.5;color:var(--c-navy);outline:0}
.concierge-composer textarea::placeholder{color:#69788d;opacity:1}
.concierge-send{height:44px;width:44px;display:grid;place-items:center;flex-shrink:0;background:var(--c-berry);color:white;border:0;border-radius:11px;transition:background .2s}
.concierge-send:hover{background:#7a1d45}
.concierge-send:disabled{opacity:.45;cursor:default}
.concierge-disclosure{color:var(--c-muted);font-size:12px;line-height:1.6;position:relative}
.concierge-disclosure summary{min-height:31px;display:flex;align-items:center;justify-content:center;gap:5px;list-style:none;cursor:pointer;font-size:12px}
.concierge-disclosure summary::-webkit-details-marker{display:none}
.concierge-status-dot{width:4px;height:4px;background:#a75477;border-radius:50%;margin-right:3px}
.concierge-disclosure-more{font-size:12px;margin-left:2px}
.concierge-disclosure>p{font-size:13px;line-height:1.65;margin:3px 0 7px;padding:8px 12px;background:#f1edf0;border-radius:7px;max-width:none}
.concierge-noscript{display:block;padding:12px;text-align:center;font-size:14px;text-decoration:underline}
.concierge-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--c-navy);min-height:760px;max-width:1800px;margin:0 auto;padding:52px clamp(24px,5vw,80px);gap:clamp(35px,6vw,100px);position:relative;overflow:clip}
.concierge-page-intro{min-width:0;color:white;align-self:center;position:relative;padding-block:18px 24px}
.concierge-page-back{display:inline-flex;align-items:center;gap:24px;font-size:12px;padding:10px 0;margin-bottom:43px;color:#c4d0e1;border-bottom:1px solid #758298;line-height:1.5}
.concierge-page-intro>.concierge-eyebrow{color:#ebc0d3;font-size:10px;margin-bottom:26px}
.concierge-page-intro h1{font:400 clamp(64px,6.1vw,100px)/.9 var(--c-serif);letter-spacing:-.055em;margin:0 0 28px}
.concierge-page-intro h1 em{color:#edc1d2;font:italic 400 1em/.94 var(--c-serif);letter-spacing:-.04em}
.concierge-page-intro>p:not(.concierge-eyebrow){font-size:15px;line-height:1.8;color:#cbd5e4;max-width:41ch;margin:0}
.concierge-art-editorial{margin-top:34px;padding-bottom:40px;gap:12px}
.concierge-art-editorial .concierge-art-frame{height:230px;border-radius:3px}
.concierge-art-editorial .concierge-art-frame-1{transform:translateY(22px);border-top-left-radius:70px}
.concierge-art-editorial .concierge-art-frame-2{transform:translateY(0)}
.concierge-art-editorial .concierge-art-frame-3{transform:translateY(34px)}
.concierge-art-editorial .concierge-art-frame-4{transform:translateY(12px);border-bottom-right-radius:70px}
.concierge-art-editorial .concierge-art-diamond{width:290px;height:290px;border-color:#edc1d24a;margin-left:-145px;top:-10px}
.concierge-page-footnote{display:flex;align-items:center;justify-content:space-between;color:#a6b8ce;font-size:10px;letter-spacing:.08em;margin-top:26px;padding-top:18px;border-top:1px solid #ffffff20}
.concierge-page-footnote>span:last-child{color:#d8adc3;font-size:22px;line-height:1}
.concierge-inline{align-self:center;height:790px;max-height:calc(100dvh - 155px);min-height:640px;border:1px solid #ffffff30;border-radius:19px;box-shadow:0 25px 65px #030e263d}
.concierge-inline .concierge-header{background:#fff;color:var(--c-navy);border-bottom:1px solid var(--c-line);min-height:83px}
.concierge-inline .concierge-brand-symbol{color:var(--c-berry)}
.concierge-inline .concierge-brand-name{color:var(--c-muted)}
.concierge-inline .concierge-language{border-color:#d7dce4}
.concierge-inline .concierge-language button{color:var(--c-muted)}
.concierge-inline .concierge-language button[aria-pressed=true]{background:var(--c-navy);color:white}
.concierge-inline .concierge-icon-button{color:var(--c-navy)}
.concierge-inline .concierge-icon-button:hover{background:#0b234909}
.concierge-inline .concierge-scroll{padding-top:35px}
.concierge-inline .concierge-welcome h2{font-size:clamp(40px,3.8vw,55px)}
.concierge-inline .concierge-welcome-copy{margin-top:22px;margin-bottom:30px}
.concierge-inline .concierge-starters>button{min-height:91px}
@keyframes concierge-panel-in{from{opacity:0;transform:translateY(24px) scale(.975)}to{opacity:1;transform:none}}
@keyframes concierge-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes concierge-message-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes concierge-pulse{50%{opacity:.3}}
@media(min-width:1600px){.concierge-page{padding-block:65px}.concierge-art-editorial .concierge-art-frame{height:275px}}
@media(max-width:1100px){.concierge-page{gap:34px;padding:34px}.concierge-page-intro h1{font-size:72px}.concierge-art-editorial{gap:8px}.concierge-art-editorial .concierge-art-frame{height:190px}.concierge-inline .concierge-scroll{padding-inline:22px}.concierge-inline .concierge-welcome h2{font-size:43px}.concierge-inline .concierge-header{padding-inline:19px}.concierge-inline .concierge-composer-wrap{padding-inline:18px}}
@media(max-width:800px){.concierge-page{grid-template-columns:1fr;padding:0;background:var(--c-paper);gap:0;min-height:0}.concierge-page-intro{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.concierge-inline{height:calc(100dvh - 77px);min-height:570px;max-height:none;align-self:stretch;border:0;border-radius:0;box-shadow:none}.concierge-inline .concierge-welcome h2{font-size:53px}.concierge-inline .concierge-scroll{padding:28px 26px}.concierge-inline .concierge-welcome-copy{margin:19px 0 25px}.concierge-inline .concierge-starters>button{min-height:86px}.concierge-inline .concierge-header{padding-inline:24px}.concierge-inline .concierge-composer-wrap{padding-bottom:calc(84px + env(safe-area-inset-bottom));padding-inline:24px}.concierge-inline .concierge-header-actions{gap:4px}}
@media(max-width:600px){.concierge-dialog{inset:var(--concierge-top,0px) 0 auto;width:100%;max-width:100%;height:var(--concierge-vh,100dvh);max-height:var(--concierge-vh,100dvh);border:0;border-radius:0;margin:0;box-shadow:none}.concierge-dialog[open]{animation:concierge-panel-in .3s cubic-bezier(.2,.8,.2,1) both}.concierge-header{min-height:78px;padding:13px 16px;padding-top:calc(13px + env(safe-area-inset-top));gap:8px}.concierge-brand{gap:9px}.concierge-brand-symbol{width:34px}.concierge-brand-symbol svg{width:34px;height:34px}.concierge-brand-name{font-size:9px;letter-spacing:.15em}.concierge-brand strong{font-size:25px}.concierge-header-actions{gap:0}.concierge-language{margin-right:1px;padding:2px}.concierge-language button{min-width:33px;min-height:36px;padding:6px;font-size:10px}.concierge-icon-button{width:36px;height:44px;padding:7px}.concierge-icon-button svg{width:21px;height:21px}.concierge-scroll{padding:27px 21px 20px}.concierge-eyebrow{font-size:9px;margin-bottom:17px}.concierge-welcome h2{font-size:48px;line-height:.98}.concierge-welcome-copy{font-size:14px;line-height:1.7;margin:17px 0 18px;max-width:34ch}.concierge-art{gap:6px;padding-bottom:15px}.concierge-art-frame{height:119px}.concierge-art-frame-2{border-top-right-radius:31px}.concierge-art-frame-3{border-bottom-left-radius:31px}.concierge-starters{margin-top:16px}.concierge-starters>button{min-height:76px;gap:11px;padding:13px 0}.concierge-starter-icon{width:34px;height:34px;margin:5px}.concierge-starter-icon svg{width:19px;height:19px}.concierge-starters strong{font-size:14px}.concierge-starters small{font-size:11px;margin-top:2px}.concierge-starters>button>svg{width:18px}.concierge-composer-wrap{padding:12px 16px calc(8px + env(safe-area-inset-bottom))}.concierge-composer{padding-left:13px;border-radius:15px;gap:7px}.concierge-disclosure summary{min-height:28px;font-size:12px;gap:4px}.concierge-disclosure>p{font-size:13px}.concierge-message.is-user{font-size:14px;padding:12px 15px;max-width:91%}.concierge-message.is-assistant,.concierge-answer{font-size:14px;line-height:1.8}.concierge-thread{gap:22px}.concierge-card-cover{height:185px}.concierge-card-identity{padding:17px 16px 7px;gap:11px}.concierge-card-identity img{width:49px;height:49px}.concierge-card-name{font-size:27px}.concierge-card-business{font-size:11px}.concierge-card-meta{padding-inline:16px}.concierge-card-reasons{padding:9px 16px 0;font-size:12px}.concierge-card-actions{padding:15px 16px 17px;gap:7px}.concierge-card-actions a{padding-inline:12px;font-size:11px;flex:1}.concierge-gallery{gap:8px}.concierge-gallery img{height:190px}.concierge-gallery figcaption{font-size:11px}.concierge-followups{gap:7px}.concierge-followups button{padding:10px 12px;font-size:12px}.concierge-inline .concierge-header{min-height:78px;padding:13px 20px}.concierge-inline .concierge-scroll{padding:29px 23px 20px}.concierge-inline .concierge-welcome h2{font-size:49px}.concierge-inline .concierge-composer-wrap{padding-inline:17px}.concierge-inline .concierge-starters>button{min-height:85px}}
@media(max-width:360px){.concierge-header{padding-inline:11px}.concierge-brand{gap:6px}.concierge-brand-symbol,.concierge-brand-symbol svg{width:30px}.concierge-brand strong{font-size:22px}.concierge-brand-name{font-size:8px}.concierge-icon-button{width:32px}.concierge-language button{min-width:29px}.concierge-scroll{padding-inline:17px}.concierge-welcome h2,.concierge-inline .concierge-welcome h2{font-size:43px}.concierge-welcome-copy{font-size:13px}.concierge-art-frame{height:104px}.concierge-starters small{font-size:10px}.concierge-starters strong{font-size:13px}.concierge-starter-icon{width:31px;height:31px;margin-inline:4px}.concierge-card-name{font-size:25px}.concierge-gallery img{height:155px}.concierge-inline .concierge-scroll{padding-inline:19px}.concierge-inline .concierge-header{padding-inline:15px}.concierge-disclosure summary{font-size:12px}}
@media(prefers-reduced-motion:reduce){.concierge-dialog[open],.concierge-dialog::backdrop,.concierge-message,.concierge-status:not(:empty)::before{animation:none}.concierge-launcher,.concierge-art-frame img,.concierge-starters>button,.concierge-card-actions a,.concierge-actions a,.concierge-actions button,.concierge-followups button{transition:none}.concierge-scroll{scroll-behavior:auto}}
/* Rendered answers share the same visual language as the directory. */
.concierge-card-body{min-width:0;padding-bottom:2px}
.concierge-initials{width:54px;height:54px;display:grid;place-items:center;flex-shrink:0;background:#e9e1e7;color:var(--c-berry);font:400 23px/1 var(--c-serif);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.concierge-card-specialties{font-size:13px;line-height:1.7;color:var(--c-muted);padding:5px 20px 0}
.concierge-card-ask{display:flex;flex-wrap:wrap;gap:7px;padding:0 20px 18px}
.concierge-card-ask button{min-height:44px;background:#f8f2f5;color:var(--c-berry);border:1px solid #e4ced8;border-radius:25px;padding:9px 13px;font-size:12px;line-height:1.5}
.concierge-card-ask button:hover{background:#efdbe4}
.concierge-answer-mark{display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--c-berry);margin-bottom:10px}
.concierge-answer-mark svg{width:18px;height:18px}
.concierge-service details{grid-column:1/-1;font-size:13px;color:var(--c-muted)}
.concierge-service summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;font-size:13px;color:var(--c-berry)}
.concierge-service summary::-webkit-details-marker{display:none}
.concierge-service summary::after{content:'+';font-size:21px;font-weight:400}
.concierge-service details[open] summary::after{content:'−'}
.concierge-service details p{padding-bottom:10px}
.concierge-language button{min-width:44px;min-height:44px}
.concierge-icon-button{width:44px;min-height:44px}
.concierge-disclosure summary{min-height:44px}
.concierge-starters strong{font-size:15px}
.concierge-starters small{font-size:14px;line-height:1.5}
.concierge-card-reasons{font-size:14px}
.concierge-card-business{font-size:13px}
.concierge-card-actions a,.concierge-actions a,.concierge-actions button{font-size:13px}
.concierge-launcher[hidden]{display:none!important}
@media(max-width:600px){.concierge-starters>button{min-height:82px}.concierge-card-specialties{padding-inline:16px}.concierge-card-ask{padding-inline:16px}.concierge-card-ask button{font-size:12px}.concierge-card-meta{font-size:12px}.concierge-card-actions a{font-size:12px}.concierge-header{gap:5px}.concierge-language{margin-right:0}.concierge-brand-symbol,.concierge-brand-symbol svg{width:30px}.concierge-brand{gap:7px}}
@media(max-width:360px){.concierge-header{padding-inline:9px}.concierge-header-actions{gap:0}.concierge-brand-symbol{display:none}.concierge-brand-name{font-size:9px}.concierge-brand strong{font-size:25px}.concierge-brand{padding-left:5px}.concierge-welcome-copy{font-size:14px}.concierge-starters small{font-size:13px}.concierge-starters strong{font-size:14px}.concierge-inline .concierge-header{padding-inline:10px}}

/* Component shapes used by the guide renderer. */
.concierge-card-cover{position:relative;padding:0;border:0;overflow:hidden;text-align:left}
.concierge-card-cover>span{position:absolute;left:15px;bottom:13px;background:#0b2349e8;color:white;backdrop-filter:blur(6px);border:1px solid #ffffff45;border-radius:24px;padding:7px 12px;font-size:11px;font-weight:600}
.concierge-card-identity .concierge-card-meta{padding:0;margin:0 0 5px;display:block;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.concierge-card-identity .concierge-card-business{margin:5px 0 0}
.concierge-card-identity .concierge-card-name{margin:0}
.concierge-card-reasons{display:flex;flex-wrap:wrap;gap:5px}
.concierge-card-reasons>span{font-size:11px;line-height:1.5;background:#f2edf1;color:#7b3354;border:1px solid #e4d6df;border-radius:20px;padding:4px 9px}
button.concierge-card-ask{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 40px);min-height:44px;margin:0 20px 17px;padding:11px 0;border:0;border-top:1px solid var(--c-line);border-radius:0;background:transparent;color:var(--c-berry);font-size:12px;line-height:1.5;text-align:left}
button.concierge-card-ask:hover{color:var(--c-navy)}
details.concierge-service{display:block}
details.concierge-service>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;color:var(--c-navy);font-size:14px;line-height:1.6}
details.concierge-service>summary::-webkit-details-marker{display:none}
details.concierge-service>summary::after{content:'+';font-size:20px;font-weight:400;flex-shrink:0;color:var(--c-berry)}
details.concierge-service[open]>summary::after{content:'−'}
details.concierge-service>summary>span{flex:1}
details.concierge-service>summary>strong{white-space:nowrap;font-size:13px}
details.concierge-service>p{margin:10px 0 0;padding:0 0 5px;font-size:13px;line-height:1.75}
.concierge-gallery>button{min-width:0;position:relative;padding:0;border:0;border-radius:10px;background:#e2e5eb;overflow:hidden}
.concierge-gallery>button>span{position:absolute;bottom:10px;right:10px;background:#0b2349dd;color:white;padding:4px 8px;border-radius:20px;font-size:10px}
@media(max-width:600px){button.concierge-card-ask{width:calc(100% - 32px);margin-inline:16px}}
