/* Creative AI — ivory minimal chat */
#creative-ai-launcher{position:fixed;right:26px;bottom:26px;z-index:9998;width:64px;height:64px;border:0;border-radius:22px;background:#f8f6f1;color:#25231f;box-shadow:0 12px 38px #0003;display:grid;place-items:center;cursor:pointer;transition:transform .25s,box-shadow .25s;border:1px solid #e9e5dc}
#creative-ai-launcher:hover{transform:translateY(-3px);box-shadow:0 16px 42px #0004}#creative-ai-launcher svg{width:27px;height:27px}#creative-ai-launcher .ai-pulse{position:absolute;right:8px;top:8px;width:9px;height:9px;background:#8b9b78;border:2px solid #f8f6f1;border-radius:50%}
#creative-ai-panel{position:fixed;right:26px;bottom:104px;z-index:9999;width:min(390px,calc(100vw - 28px));height:min(610px,calc(100dvh - 132px));background:#fbfaf7;color:#282722;border:1px solid #e9e6df;border-radius:24px;box-shadow:0 24px 80px #0004;display:none;overflow:hidden;font-family:Inter,Arial,sans-serif}
#creative-ai-panel.is-open{display:flex;flex-direction:column;animation:cpAiIn .24s ease-out}@keyframes cpAiIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.cp-ai-head{display:flex;align-items:center;gap:12px;padding:17px 18px;border-bottom:1px solid #eeece6;background:#fffefa}.cp-ai-avatar{width:42px;height:42px;border-radius:15px;background:#efede6;display:grid;place-items:center;color:#37352e;font-weight:800;font-size:15px;letter-spacing:-1px}.cp-ai-title{font-size:14px;font-weight:750;letter-spacing:.1px}.cp-ai-status{font-size:11px;color:#858278;margin-top:3px}.cp-ai-status:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#8b9b78;margin:0 6px 1px 0}.cp-ai-close{margin-left:auto;border:0;background:transparent;color:#77746b;font-size:23px;cursor:pointer;width:34px;height:34px;border-radius:10px}.cp-ai-close:hover{background:#f1efe9}
.cp-ai-messages{flex:1;overflow:auto;padding:18px 15px 12px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.cp-ai-msg{max-width:88%;padding:11px 13px;border-radius:16px;font-size:13px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.cp-ai-msg.bot{align-self:flex-start;background:#fff;border:1px solid #eeece6;border-bottom-left-radius:5px}.cp-ai-msg.user{align-self:flex-end;background:#eae7df;border:1px solid #e4e0d7;border-bottom-right-radius:5px}.cp-ai-quick{display:flex;gap:7px;flex-wrap:wrap;padding:0 15px 12px}.cp-ai-quick button{border:1px solid #e6e2d9;background:#fffefa;color:#625f55;border-radius:20px;padding:7px 10px;font-size:11px;cursor:pointer}.cp-ai-quick button:hover{background:#f0eee8;border-color:#d5d0c4}.cp-ai-compose{padding:12px 13px 14px;border-top:1px solid #eeece6;background:#fffefa}.cp-ai-form{display:flex;gap:8px;align-items:flex-end;background:#f4f2ec;border:1px solid #e9e6de;border-radius:17px;padding:7px}.cp-ai-form textarea{flex:1;resize:none;max-height:90px;min-height:34px;border:0;outline:0;background:transparent;color:#282722;font:13px/1.45 inherit;padding:8px 6px}.cp-ai-form textarea::placeholder{color:#a09c91}.cp-ai-send{width:36px;height:36px;flex:0 0 36px;border:0;border-radius:12px;background:#282722;color:#fff;cursor:pointer;display:grid;place-items:center}.cp-ai-send:disabled{opacity:.4;cursor:default}.cp-ai-send svg{width:17px;height:17px}.cp-ai-footnote{text-align:center;color:#a09c91;font-size:10px;margin-top:8px}.cp-ai-typing{display:flex;gap:4px;align-items:center;padding:13px 15px}.cp-ai-typing i{width:5px;height:5px;border-radius:50%;background:#aaa69c;animation:cpDot 1s infinite}.cp-ai-typing i:nth-child(2){animation-delay:.15s}.cp-ai-typing i:nth-child(3){animation-delay:.3s}@keyframes cpDot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@media(max-width:520px){#creative-ai-launcher{right:16px;bottom:16px;width:58px;height:58px;border-radius:20px}#creative-ai-panel{right:8px;bottom:84px;width:calc(100vw - 16px);height:min(650px,calc(100dvh - 100px));border-radius:21px}}
@media(prefers-reduced-motion:reduce){#creative-ai-panel.is-open{animation:none}#creative-ai-launcher{transition:none}}

/* v8 — tactile service cards, searchable interactive work catalogue */
.service-card{position:relative;overflow:hidden;border:1px solid rgba(195,154,255,.18);background:linear-gradient(145deg,rgba(35,25,55,.94),rgba(14,12,23,.98));box-shadow:0 14px 38px rgba(0,0,0,.18);transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}
.service-card:before{content:"";position:absolute;inset:-1px;background:linear-gradient(115deg,transparent 20%,rgba(195,154,255,.13) 48%,transparent 72%);transform:translateX(-120%);transition:transform .85s;pointer-events:none;z-index:2}
.service-card:hover:before{transform:translateX(120%)}
.service-card:hover{border-color:#b58aff88;box-shadow:0 22px 58px #0008,0 0 32px #9b5cff24}
.service-art{transition:filter .5s,transform .7s;transform-origin:center}
.service-card:hover .service-art{filter:saturate(1.22) brightness(1.12);transform:scale(1.025)}
.details-btn{cursor:pointer;transition:transform .25s,background .25s,box-shadow .25s}
.details-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #9b5cff30}
.catalog-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:14px;margin:0 0 24px}
.catalog-search{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 15px;border:1px solid #ffffff20;border-radius:12px;background:#171322;color:#cdb8f2}
.catalog-search span{font-size:23px}.catalog-search input{width:100%;border:0;outline:0;background:transparent;color:#fff;font:inherit}
.catalog-search input::placeholder{color:#8e849f}
.catalog-filters{display:flex;gap:7px;flex-wrap:wrap}
.catalog-filter{border:1px solid #ffffff20;border-radius:999px;background:#171322;color:#c9c1d5;padding:10px 14px;font:600 12px inherit;cursor:pointer;transition:.25s}
.catalog-filter:hover,.catalog-filter.is-active{color:#fff;border-color:#a878f5;background:#8d55d522;box-shadow:0 0 18px #9b5cff22}
.catalog-count{font-size:12px;color:#a99dbb;white-space:nowrap}
.portfolio-item.is-filtered-out{display:none}
#creative-ai-panel .cp-ai-quick button{transition:transform .2s,border-color .2s,background .2s}
#creative-ai-panel .cp-ai-quick button:hover{transform:translateY(-2px);border-color:#b58aff;background:#9b5cff20}
@media(max-width:760px){.catalog-toolbar{grid-template-columns:1fr;gap:10px}.catalog-filters{overflow-x:auto;flex-wrap:nowrap;padding:2px 0 6px}.catalog-filter{white-space:nowrap}.catalog-count{justify-self:end}}
@media(prefers-reduced-motion:reduce){.service-card,.service-art,.details-btn,.catalog-filter{transition:none!important}.service-card:before{display:none}}
