:root{color-scheme:light;--bg:#f7f9fc;--surface:#fff;--surface-2:#eaf0f8;--ink:#17243d;--muted:#5a6880;--line:#182d4926;--accent:#3159e8;--accent-ink:#fff;--soft:#e0e8ff;--soft-ink:#203365;--soft-muted:#41547d;--header-bg:#f7f9fce8;--error:#a62744;--panel-shadow:0 24px 80px #18325724;--chrome-filter:invert(1) hue-rotate(145deg) saturate(.8);--chrome-blend:multiply}
:root[data-theme=dark]{color-scheme:dark;--bg:#0c1210;--surface:#141e18;--surface-2:#202d24;--ink:#f0f5e9;--muted:#a3b3a7;--line:#e0efdc29;--accent:#c2ed72;--accent-ink:#17230f;--soft:#cde8aa;--soft-ink:#26391c;--soft-muted:#465c35;--header-bg:#0c1210eb;--error:#f5b7c3;--panel-shadow:0 24px 80px #0006;--chrome-filter:hue-rotate(170deg) saturate(.85);--chrome-blend:screen}
.theme-changing body,.theme-changing section,.theme-changing header,.theme-changing article,.theme-changing button{transition:background-color .6s,color .6s,border-color .6s}
.header{background:var(--header-bg)}.header::after{content:"";position:absolute;bottom:-1px;left:0;height:2px;width:100%;background:var(--accent);transform:scaleX(var(--scroll-progress,0));transform-origin:left;pointer-events:none}.header-actions{gap:12px}.language{margin-right:8px}.language>span{color:var(--line)}.nav{background:var(--surface)}.nav a{color:var(--muted)}.nav a.active,.nav a:hover{background:var(--surface-2)}
.utility-button{position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;transition:background .25s,transform .3s}.utility-button:hover{background:var(--surface-2);transform:translateY(-2px)}.utility-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.theme-sun{display:none}[data-theme=dark] .theme-sun{display:block}[data-theme=dark] .theme-moon{display:none}.notification-count{position:absolute;right:-5px;top:-4px;min-width:17px;padding:2px 4px;background:var(--accent);color:var(--accent-ink);font-size:10px;font-weight:800;border-radius:12px}.notification-count[hidden]{display:none}
.hero::before{background:radial-gradient(ellipse,color-mix(in srgb,var(--accent) 12%,transparent),transparent 65%)}.hero-copy>p,.art-caption,.art-cross,.muted-heading,.service-card>p{color:var(--muted)}.hero-art::before{filter:var(--chrome-filter);mix-blend-mode:var(--chrome-blend)}.twin-sculpture{text-shadow:1px 2px 0 color-mix(in srgb,var(--ink) 45%,transparent),5px 12px 30px color-mix(in srgb,var(--ink) 20%,transparent)}.floating-tag{background:color-mix(in srgb,var(--surface) 82%,transparent);border-color:var(--line);box-shadow:var(--panel-shadow)}.art-orbit,.art-orbit::after{border-color:var(--line)}.status-dot{background:var(--accent);box-shadow:0 0 14px color-mix(in srgb,var(--accent) 30%,transparent)}.button-light:hover{color:var(--accent-ink)}.button-arrow{border-color:currentColor}.ticker,.preloader{color:var(--accent-ink)}.loader-track{background:color-mix(in srgb,var(--accent-ink) 20%,transparent)}.loader-track i{background:var(--accent-ink)}
.service-card{position:relative;overflow:hidden;transform-style:preserve-3d}.service-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(350px circle at var(--pointer-x,50%) var(--pointer-y,0%),color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%);opacity:0;transition:opacity .4s}.service-card:hover::after{opacity:1}.service-card:hover{background:var(--surface);border-color:var(--accent);box-shadow:var(--panel-shadow)}.card-featured,.card-featured:hover{background:var(--accent);color:var(--accent-ink)}.card-featured .card-top,.card-featured .service-icon,.card-featured>p{color:var(--accent-ink)}.card-featured .card-tags span,.card-featured .card-link,.card-featured .circle-arrow{border-color:color-mix(in srgb,var(--accent-ink) 30%,transparent)}.card-featured .card-link:hover .circle-arrow{background:var(--accent-ink);color:var(--accent)}
.about{background:var(--surface)}.about-pills span{transition:transform .3s,background .3s}.about-pills span:hover{transform:translateY(-5px) rotate(-3deg);background:var(--surface-2)}.showcase,.contact,.chat-side{background:var(--soft);color:var(--soft-ink)}.showcase-word{color:var(--soft-ink)}.showcase-card{background:color-mix(in srgb,var(--soft) 65%,white);border-color:color-mix(in srgb,var(--soft-ink) 15%,transparent)}.showcase-card p,.contact .eyebrow,.contact .small-meta,.contact-main p,.contact-bottom>span:last-child,.chat-side-copy,.chat-side-note,.chat-side-eyebrow{color:var(--soft-muted)}.showcase-card .status-dot,.contact-mini .status-dot{background:var(--soft-ink)}.showcase-card a,.showcase-bottom,.contact-bottom{border-color:color-mix(in srgb,var(--soft-ink) 25%,transparent)}.contact-outline{-webkit-text-stroke-color:var(--soft-ink)}.contact-orb,.contact-orb:hover{background:var(--soft-ink);color:var(--soft)}.process-grid article{position:relative;border-color:var(--line)}.process-grid article::before{content:"";position:absolute;top:-1px;left:0;width:100%;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease)}.process-grid article.phase-visible::before{transform:scaleX(1)}.step-number{color:var(--accent);display:block;transition:transform .6s}.phase-visible .step-number{transform:translateX(5px)}
.chat-main{background:var(--bg)}.chat-progress-track{background:color-mix(in srgb,var(--soft-ink) 20%,transparent)}.chat-progress-track i{background:var(--soft-ink)}.chat-header-icon,.message-bubble,.chat-choice,.chat-review{border-color:var(--line)}.chat-close:hover,.review-row{background:var(--surface)}.chat-transcript{scrollbar-color:var(--muted) transparent}.message-avatar,.user .message-avatar{background:color-mix(in srgb,var(--accent) 12%,transparent)}.user .message-bubble,.chat-send,.button-accent,.success-icon{background:var(--accent);color:var(--accent-ink)}.chat-composer{background:var(--surface)}.chat-field-wrap{background:var(--bg);border-color:var(--line)}.chat-field-wrap:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.chat-field::placeholder{color:var(--muted)}.chat-field[aria-invalid=true]{text-decoration-color:var(--error)}.chat-send:hover{background:var(--accent);filter:brightness(1.1)}.chat-choice:hover,.chat-choice:focus-visible,.chat-choice.suggested{background:color-mix(in srgb,var(--accent) 12%,transparent)}.chat-error{color:var(--error)}.chat-error:not(:empty){border-color:color-mix(in srgb,var(--error) 25%,transparent);background:color-mix(in srgb,var(--error) 5%,transparent)}.chat-success{border-color:color-mix(in srgb,var(--accent) 30%,transparent);background:linear-gradient(140deg,color-mix(in srgb,var(--accent) 10%,transparent),var(--surface))}.chat-message:not(:nth-last-child(-n+2)){animation:none}
.notifications-panel{position:fixed;right:var(--gutter);top:98px;z-index:60;width:min(430px,calc(100vw - 32px));max-height:min(680px,calc(100dvh - 125px));padding:22px;overflow:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--panel-shadow);animation:panelIn .35s var(--ease)}.notifications-panel[hidden],.cookie-notice[hidden]{display:none}.notifications-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.notifications-heading h2{font:600 1.2rem var(--body);letter-spacing:-.025em}.notification-action{display:inline-block;color:var(--accent);font-size:.875rem;line-height:1.6;padding:8px 0;text-align:left}.notification-action:hover{text-decoration:underline;text-underline-offset:4px}.notifications-close{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:32px;height:32px;padding:0;font-size:1.5rem;color:var(--ink)}.notification-list{list-style:none;padding:0;margin:12px 0 0}.notification-item{position:relative;border-top:1px solid var(--line);padding:19px 0;overflow-wrap:anywhere}.notification-item.is-unread::before{content:"";position:absolute;right:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.notification-meta{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--muted);margin-bottom:10px}.notification-item h3{font-size:1rem;margin-bottom:8px}.notification-item p{font-size:.9375rem;line-height:1.7;color:var(--muted)}.notification-item .notification-detail{padding:12px;background:var(--surface-2);color:var(--ink);border-radius:10px;white-space:pre-wrap;margin-top:10px}.notification-empty{text-align:center;padding:30px 8px;line-height:1.8;color:var(--muted)}.notification-empty h3{font-size:1rem;color:var(--ink);margin-bottom:8px}.notification-empty p{font-size:.875rem}.empty-bell{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 20px;border:1px solid var(--line);border-radius:50%;font-size:2rem;color:var(--accent)}.notification-error{font-size:.875rem;line-height:1.7;padding:14px;border-radius:10px;background:var(--surface-2);color:var(--muted)}
.cookie-notice{position:fixed;left:24px;bottom:24px;z-index:45;max-width:530px;padding:22px;display:flex;gap:22px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:17px;box-shadow:var(--panel-shadow);animation:panelIn .5s var(--ease)}.cookie-notice strong{display:block;font-size:.9375rem;font-weight:500;line-height:1.7}.cookie-notice p{font-size:.75rem;line-height:1.7;color:var(--muted);margin-top:8px}.cookie-notice button{background:var(--accent);color:var(--accent-ink);border-radius:24px;padding:12px 18px;font-size:.875rem;flex-shrink:0}
@keyframes panelIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:760px){.header-actions{gap:7px}.language{margin-right:2px}.utility-button{width:35px;height:35px}.utility-button svg{width:17px;height:17px}.header .brand{font-size:1.25rem;gap:9px}.notifications-panel{top:119px;right:16px;max-height:calc(100dvh - 140px)}.cookie-notice{left:12px;right:12px;bottom:12px;padding:17px;gap:14px}.nav{background:none}}
@media(max-width:380px){.cookie-notice{flex-direction:column;align-items:flex-start}.header-actions{gap:4px}.language{gap:1px}.header{column-gap:7px}}
@media(prefers-reduced-motion:reduce){.service-card,.showcase-card{transform:none!important}.header::after{display:none}*,*::before,*::after{animation:none!important;transition:none!important}}

.chat-side-body>.eyebrow{color:var(--soft-muted)}
.notifications-controls{display:flex;align-items:center;gap:8px}.notifications-refresh{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:50%;font-size:1.3rem}.notifications-refresh:disabled{opacity:.45;cursor:wait}.notifications-refresh:hover{text-decoration:none;background:var(--surface-2)}

.clarification-dialog .chat-answer-form>.button{margin-top:16px}.clarification-dialog .chat-transcript{padding-top:35px}.clarification-dialog .chat-identity h2{overflow-wrap:anywhere}.clarification-dialog .chat-controls{flex-shrink:0}
@media(max-width:760px){.clarification-dialog .chat-header{gap:10px}.clarification-dialog .chat-header-icon{display:none}.clarification-dialog .chat-transcript{padding-top:22px}}
