.website-preview,.project:not(.large) .website-preview,.project.large .website-preview{height:auto!important;aspect-ratio:16/11!important;background:#080807;overflow:hidden;isolation:isolate;pointer-events:none}
.portfolio-shot{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center;background:#111;opacity:1!important;visibility:visible!important;user-select:none;-webkit-user-drag:none}
.website-preview picture{position:absolute;inset:0;display:block;width:100%;height:100%}
.project:hover .website-preview{transform:none!important}
.case-note{display:inline-block;color:#d2aa4f;font-size:.72rem;font-weight:700;letter-spacing:.16em;direction:ltr}
.hero:before,.hero:after,.work:before,.intelligence:before,.halo,.gold-ring{pointer-events:none!important}
.nav a,.hero a,.services button,.intelligence a,.final-cta a,.page-footer a,.chat-fab,.concierge button,.concierge a{pointer-events:auto!important;touch-action:manipulation;cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.concierge{width:min(480px,100%)!important}
.concierge .messages{padding-bottom:14px}
.chat-options{display:flex!important;gap:7px!important;overflow-x:auto!important;max-height:none!important;padding:10px 16px!important;scrollbar-width:none}
.chat-options::-webkit-scrollbar{display:none}
.chat-options button{width:auto!important;min-width:max-content;padding:9px 12px!important;border-radius:999px!important;font-size:.75rem;text-align:center!important}
.chat-composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 14px 8px;border-top:1px solid var(--dark-line);background:#0d0c0a}
.chat-composer input{min-width:0;width:100%;border:1px solid var(--dark-line);border-radius:3px;background:#17140f;color:#f7f0e2;padding:13px 14px;font:inherit;font-size:16px;outline:none}
.chat-composer input::placeholder{color:#817a6f}
.chat-composer input:focus{border-color:#d9b85f;box-shadow:0 0 0 3px rgba(217,184,95,.1)}
.chat-composer button{border:0;border-radius:3px;background:linear-gradient(105deg,#82601f,#e4c46c 50%,#947026);color:#111;padding:0 16px;font-weight:800}
.chat-composer button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:520px){.chat-composer{padding:10px}.chat-composer button{padding:0 13px}.concierge .messages{padding-right:13px;padding-left:13px}}
@media(max-width:820px){.website-preview,.project:not(.large) .website-preview,.project.large .website-preview{aspect-ratio:16/11!important}}
@media(max-width:520px){.website-preview,.project:not(.large) .website-preview,.project.large .website-preview{aspect-ratio:16/11!important}.portfolio-shot{object-fit:cover}.case-note{font-size:.68rem}}

/* Portfolio chatbot demos open on demand instead of sitting over the artwork. */
.project,.project.large{display:block!important}
.project:nth-child(even) .website-preview,.project:nth-child(even) .project-meta{order:initial!important}
.project-showcase{display:block;direction:ltr}
.project-showcase .website-preview{width:100%;height:auto!important;aspect-ratio:16/10!important}
.project-meta{margin-top:28px;max-width:980px;margin-right:auto}
.case-note{display:block;margin-top:16px}
.project-chat-trigger{direction:rtl;display:grid;grid-template-columns:auto minmax(0,1fr) 34px;align-items:center;gap:13px;width:min(100%,480px);margin-top:22px;padding:11px 12px;border:1px solid rgba(224,190,102,.42);border-radius:4px;background:linear-gradient(115deg,#17140e,#0d0c0a 62%,#241d0f);color:#f8f1e4;text-align:right;cursor:pointer;box-shadow:0 16px 40px rgba(0,0,0,.25);transition:.25s}
.project-chat-trigger{position:relative;z-index:12;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.project-chat-trigger:hover{transform:translateY(-2px);border-color:#e3c46e;box-shadow:0 20px 55px rgba(0,0,0,.32)}
.project-chat-trigger>span:nth-child(2){display:grid;line-height:1.3}.project-chat-trigger b{font-size:.92rem}.project-chat-trigger small{margin-top:3px;color:#aaa094;font-size:.76rem}
.trigger-demo{direction:ltr;border:1px solid rgba(224,190,102,.35);padding:6px 8px;color:#e0bd62;font:700 .68rem/1 Arial,sans-serif;letter-spacing:.1em}
.project-chat-trigger>i{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(224,190,102,.32);color:#e4c56d;font-style:normal}

.ai-demo-backdrop{position:fixed;inset:0;z-index:60;background:rgba(5,5,4,.62);backdrop-filter:blur(8px)}
.ai-demo-backdrop[hidden]{display:none!important;pointer-events:none!important}
.ai-demo-dialog{direction:rtl;position:fixed;z-index:61;top:0;right:0;width:min(500px,100%);height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;background:#fff;color:#27231d;box-shadow:-35px 0 100px rgba(0,0,0,.48);transform:translateX(102%);transition:transform .34s cubic-bezier(.22,.8,.28,1);overflow:hidden}
.ai-demo-dialog.open{transform:none}
.ai-demo-dialog>header{display:flex;align-items:center;gap:13px;padding:20px 18px 16px;border-top:4px solid #c99f48;border-bottom:1px solid #ece5d8;background:linear-gradient(180deg,#fff,#fffcf7)}
.ai-demo-mark{direction:ltr;width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #dac18c;border-radius:50%;background:linear-gradient(145deg,#fff,#f2e2bb);color:#8f6925;font:500 .9rem/1 Georgia,serif}
.ai-demo-dialog>header>div{display:grid;min-width:0;flex:1;line-height:1.25}.ai-demo-dialog>header b{direction:ltr;margin-top:4px;font:600 .94rem/1.2 "Avenir Next",Arial,sans-serif;letter-spacing:.05em;text-align:right}.ai-demo-dialog>header small{margin-top:4px;color:#777168;font-size:.78rem}
.demo-flag{direction:ltr;width:max-content;padding:4px 7px;border:1px solid #e0ca9c;color:#9a762f;font:750 .65rem/1 Arial,sans-serif;letter-spacing:.1em}
#aiDemoClose{width:38px;height:38px;border:1px solid #e8e0d3;border-radius:50%;background:#fff;color:#49433b;font-size:1.55rem;line-height:1;cursor:pointer}
.ai-demo-notice{padding:9px 16px;border-bottom:1px solid #eee7dc;background:#fbf7ee;color:#756a5a;text-align:center;font-size:.77rem;line-height:1.45}
.ai-demo-messages{min-height:0;overflow-y:auto;padding:24px 17px;background:radial-gradient(circle at 14% 8%,rgba(224,194,122,.12),transparent 28%),#fff;scrollbar-width:thin;scrollbar-color:#d6c39a transparent}
.bot-bubble{width:max-content;max-width:90%;padding:12px 14px;margin-bottom:11px;border-radius:17px;font-size:.92rem;line-height:1.62;white-space:pre-line;animation:botIn .24s ease-out}
.bot-bubble.assistant{margin-left:auto;border:1px solid #ece4d7;border-top-right-radius:4px;background:#faf7f1;color:#443f38}
.bot-bubble.user{margin-right:auto;border-bottom-left-radius:4px;background:linear-gradient(135deg,#a77c30,#dab968);color:#fff;box-shadow:0 8px 22px rgba(151,109,34,.17)}
.bot-bubble.typing{display:flex;gap:4px;width:max-content;padding:15px 17px}.bot-bubble.typing i{width:5px;height:5px;border-radius:50%;background:#ad8438;animation:botBlink .8s infinite}.bot-bubble.typing i:nth-child(2){animation-delay:.12s}.bot-bubble.typing i:nth-child(3){animation-delay:.24s}
.price-card{max-width:94%;margin:2px 0 14px auto;padding:14px;border:1px solid #ddc58d;background:linear-gradient(145deg,#fffdfa,#f8efd9);box-shadow:0 10px 30px rgba(121,88,28,.1)}.price-card b{display:block;color:#826329;font:500 1.05rem Georgia,serif}.price-card p{margin:7px 0 0;color:#575047;font-size:.86rem;line-height:1.55}.price-card small{display:block;margin-top:8px;color:#8e8579;font-size:.72rem}
.ai-demo-prompts{display:flex;gap:7px;overflow-x:auto;padding:10px 14px;border-top:1px solid #eee8dc;background:#fff;scrollbar-width:none}.ai-demo-prompts::-webkit-scrollbar{display:none}.ai-demo-prompts button{min-width:max-content;border:1px solid #e2d4b8;border-radius:999px;background:#fff;color:#795e2c;padding:9px 12px;font-size:.85rem;cursor:pointer}.ai-demo-prompts button:hover{border-color:#bd9345;background:#fffaf0}
.ai-demo-form{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;margin:0;padding:11px 13px;border-top:1px solid #eee8dc;background:#fbfaf7}.ai-demo-form input{width:100%;min-width:0;border:1px solid #ddd6ca;border-radius:14px;background:#fff;color:#25211d;padding:12px 14px;font:inherit;font-size:16px;outline:none}.ai-demo-form input::placeholder{color:#9e978e}.ai-demo-form input:focus{border-color:#bd9448;box-shadow:0 0 0 3px rgba(189,148,72,.12)}.ai-demo-form button{border:0;border-radius:14px;background:linear-gradient(145deg,#e1c67f,#987027);color:#fff;font-size:1.2rem;cursor:pointer;box-shadow:0 7px 18px rgba(143,100,31,.2)}.ai-demo-form button:disabled{opacity:.45}
.ai-demo-dialog>footer{direction:ltr;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px 12px;color:#9a7836;font:700 .68rem/1.3 Arial,sans-serif;letter-spacing:.05em}.ai-demo-dialog>footer button{direction:rtl;border:0;background:none;color:#71685d;text-decoration:underline;text-underline-offset:4px;font-size:.75rem;cursor:pointer}
@keyframes botIn{from{opacity:0;transform:translateY(5px)}}@keyframes botBlink{50%{opacity:.22}}
@media(max-width:820px){.project-showcase .website-preview{aspect-ratio:16/11!important}.project-meta{margin-top:24px}}
@media(max-width:520px){.project-showcase .website-preview{aspect-ratio:16/11!important}.project-chat-trigger{grid-template-columns:auto minmax(0,1fr) 32px;gap:9px;padding:10px}.project-chat-trigger b{font-size:.84rem}.project-chat-trigger small{font-size:.7rem}.trigger-demo{font-size:.62rem;padding:5px 6px}.ai-demo-dialog{width:100%}.ai-demo-dialog>header{padding:15px 13px 13px}.ai-demo-notice{font-size:.72rem}.ai-demo-messages{padding:18px 12px}.bot-bubble{font-size:.89rem}.ai-demo-dialog>footer{font-size:.61rem}}

/* The studio assistant is a first-class conversion path, separate from portfolio demos. */
.business-chat-button{border:0;font:inherit;cursor:pointer;touch-action:manipulation}
.business-chat-fab{direction:rtl;position:fixed;z-index:45;right:24px;bottom:22px;display:flex;align-items:center;gap:11px;min-width:270px;padding:10px 12px;border:1px solid rgba(232,199,112,.58);border-radius:999px;background:linear-gradient(115deg,rgba(17,15,11,.97),rgba(43,34,17,.97));color:#fff9ec;box-shadow:0 18px 60px rgba(0,0,0,.55),0 0 28px rgba(216,178,77,.16);cursor:pointer;touch-action:manipulation;backdrop-filter:blur(15px);transition:transform .2s,border-color .2s}
.business-chat-fab:hover{transform:translateY(-3px);border-color:#eccf7b}.business-chat-fab>i{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:50%;background:linear-gradient(145deg,#f1d77e,#9f7628);color:#111;font-style:normal;box-shadow:0 0 24px rgba(233,196,96,.22)}
.business-chat-fab>span{display:grid;text-align:right;line-height:1.2}.business-chat-fab b{direction:ltr;font:700 .78rem/1 "Avenir Next",Arial,sans-serif;letter-spacing:.12em}.business-chat-fab small{margin-top:5px;color:#c9c0b0;font-size:.72rem}
.hero-actions{flex-wrap:wrap}.hero-actions .booking-link{color:#e5c875;text-decoration:none;border-bottom:1px solid rgba(229,200,117,.48);padding-bottom:4px;font-weight:700}.hero-actions .booking-link:hover{color:#fff1b6;border-color:#fff1b6}
.booking-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.final-actions{display:flex;flex-direction:column;align-items:center;gap:16px}.final-actions .quiet-link{color:#c9c0b2;text-decoration:none;border-bottom:1px solid rgba(221,187,95,.45);padding-bottom:4px}.final-chat-link{border:0;border-bottom:1px solid rgba(221,187,95,.45);background:none;color:#e4d9c6;padding:0 0 4px}.final-chat-link:hover{color:#f4d989;border-color:#f4d989}
.chat-action-card{display:block;width:min(94%,360px);margin:4px 0 14px auto;padding:12px 14px;border:1px solid #d6b562;border-radius:12px;background:linear-gradient(120deg,#f9edc9,#fffaf0);color:#71511e;text-align:center;text-decoration:none;font-weight:750;box-shadow:0 10px 28px rgba(132,91,24,.13);cursor:pointer;touch-action:manipulation}
.chat-action-card.whatsapp{background:#fff;color:#6f531e}.chat-action-card.cal{background:linear-gradient(115deg,#9a7229,#e1c36d);color:#17120a;border-color:#bd913d}
.ai-demo-dialog.business-chat{background:#fff}.ai-demo-dialog.business-chat>header{border-top-color:#e8c45f;background:linear-gradient(145deg,#fff,#fff9e9)}.ai-demo-dialog.business-chat .demo-flag{background:#15120c;border-color:#b99139;color:#f0d477}.ai-demo-dialog.business-chat .ai-demo-notice{background:#17130d;color:#e9dcc2;border-color:#3b301b}.ai-demo-dialog.business-chat .ai-demo-messages{background:radial-gradient(circle at 10% 5%,rgba(226,190,94,.14),transparent 30%),#fff}
@media(max-width:640px){.hero-actions{align-items:flex-start}.hero-actions .booking-link{font-size:.82rem}.booking-button{width:min(100%,390px);text-align:center}.business-chat-fab{right:12px;bottom:12px;min-width:0;padding:8px}.business-chat-fab>span{display:none}.business-chat-fab>i{width:48px;height:48px}.ai-demo-dialog.open~.business-chat-fab,.ai-demo-dialog.open+.business-chat-fab{display:none}}

.lead-capture{overflow:auto;max-height:65vh;padding:16px;background:#15120d;border-top:1px solid #806633;direction:rtl;flex-shrink:0}.lead-capture[hidden]{display:none}.lead-capture h3{margin:0 0 8px;font-size:1rem;color:#f6e9c8}.lead-capture p{font-size:.85rem;line-height:1.6}.lead-capture label{display:grid;gap:5px;margin:9px 0;font-size:.85rem;color:#e9dfcb}.lead-capture input,.lead-capture textarea,.lead-capture select{box-sizing:border-box;width:100%;min-width:0;background:#090908;color:#fff;border:1px solid #786747;border-radius:7px;padding:9px;font:inherit}.lead-capture textarea{resize:vertical}.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.lead-capture .lead-check{display:flex;gap:9px;align-items:flex-start;line-height:1.6}.lead-check input{width:18px;height:18px;flex:none}.lead-controls{display:flex;flex-wrap:wrap;gap:8px}.lead-controls button,.lead-capture a{border:1px solid #c9a85a;border-radius:7px;background:#241f13;color:#f2d997;padding:9px;cursor:pointer;font:inherit;font-size:.85rem}.lead-controls button:disabled{opacity:.6;cursor:default}.lead-capture [type=submit]{background:#d2af62;color:#17120b}.lead-capture [data-actions]{display:flex;gap:8px;flex-wrap:wrap}.lead-capture [data-actions][hidden]{display:none}.lead-honey{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}.lead-capture :focus-visible{outline:2px solid #efd58e;outline-offset:2px}@media(max-width:420px){.lead-fields{grid-template-columns:1fr}.lead-capture{max-height:58vh}}
