/* The canvas and CSS share one continuously interpolated service palette. */
:root{--service-rgb:144,186,239}
.world-atmosphere{background:radial-gradient(ellipse at 50% 38%,rgba(var(--service-rgb),.018),transparent 65%)!important}
.home-copy .hero-actions{gap:25px}.home-copy .gold-button{min-width:190px}.hero-call{display:inline-flex;align-items:center;gap:9px;min-height:48px;font-size:14px;color:#d2d9dc;padding:7px 2px;border-bottom:1px solid transparent}.hero-call:hover{color:var(--gold);border-bottom-color:var(--gold)}
body[data-service] .aurelia-input-form{border-color:rgba(var(--service-rgb),.4)}
body[data-service] .voice-mic,body[data-service] .voice-send,body[data-service] .guide-explain{border-color:rgba(var(--service-rgb),.4)}body[data-service] .voice-mic svg{stroke:var(--gold)}
body[data-service][data-detail=true] .page-window{border-color:rgba(var(--service-rgb),.24);background:linear-gradient(150deg,rgba(var(--service-rgb),.075),#080e14f7 65%)}
body[data-detail=true] .information-top{border-bottom-color:rgba(var(--service-rgb),.17)}
body:not([data-service=reception]) #bubble-links a span{max-width:155px;white-space:normal;text-align:center;width:max-content;line-height:1.3!important}
body:not([data-service=reception])[data-detail=true] #bubble-links a span{max-width:116px;font-size:11px!important}
#bubble-links a[aria-current=page]{outline:1px solid rgba(var(--service-rgb),.65);outline-offset:5px}
.service-topic .info-heading{margin-bottom:13px}.service-topic .info-lead{font-size:16px!important;line-height:1.6!important}
.topic-visual{height:136px;margin:21px 0 21px;position:relative;border-block:1px solid rgba(var(--service-rgb),.18);overflow:hidden;background:radial-gradient(ellipse at 50% 50%,rgba(var(--service-rgb),.08),transparent 65%)}
.topic-visual svg{width:100%;height:100%;fill:rgba(var(--service-rgb),.018);stroke:rgba(var(--service-rgb),.72);stroke-width:1;stroke-linejoin:round;stroke-linecap:round;position:relative;z-index:1}
.topic-visual i{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(var(--service-rgb),.05),transparent 65%);animation:service-light 8s ease-in-out infinite;pointer-events:none}
.topic-visual[data-topic-visual=marketing] svg g{transform-origin:250px 77px;animation:signal-breathe 7s ease-in-out infinite}
.topic-visual[data-topic-visual=video]{background:linear-gradient(90deg,#05080c80,rgba(var(--service-rgb),.06),#05080c80)}
.topic-disclosures{display:grid;gap:9px}.topic-disclosures .service-item summary{padding:14px 19px;min-height:52px}.topic-disclosures .service-item summary h3{font-size:16px}.topic-disclosures .service-item{border-color:rgba(var(--service-rgb),.19)}.topic-disclosures .service-item[open]{border-color:rgba(var(--service-rgb),.43)}
.scope-list{display:grid;gap:15px;padding-top:3px!important}.scope-list h4{font-size:14px;color:#edf1ef;font-weight:400;margin:0 0 3px}.scope-list p{font-size:14px;line-height:1.65;color:#b6c3c9}.topic-price{display:block;font-size:24px;font-weight:400;color:var(--gold);margin:0 0 8px}.topic-steps{padding-left:22px;margin:2px 0 3px;display:grid;gap:9px;font-size:14px}.topic-steps li{padding-left:4px}.topic-steps li::marker{color:var(--gold)}.service-topic>.info-actions{margin-top:19px;gap:12px 20px}.service-topic>.info-actions button{font-size:14px}
.home-copy .eyebrow,.guide-status,.page-label{transition:color .7s}.desktop-navigation a[aria-current=page]{border-color:var(--gold)}
@keyframes service-light{0%,15%{transform:translateX(-90%)}65%,100%{transform:translateX(90%)}}
@keyframes signal-breathe{0%,100%{opacity:.72;transform:scale(.98)}50%{opacity:1;transform:scale(1.02)}}
body[data-motion=paused] .topic-visual *{animation-play-state:paused!important}
@media(min-width:1001px) and (max-height:790px){.topic-visual{height:105px;margin:16px 0}.topic-disclosures .service-item summary{padding:10px 16px;min-height:45px}.service-topic>.info-actions{margin-top:15px}.service-topic .info-lead{font-size:15px!important}}
@media(max-width:1000px){.home-copy .hero-actions{gap:20px}.home-copy .gold-button{min-width:170px}.hero-call{font-size:13px}.topic-visual{height:117px;margin:19px 0}.service-topic .info-lead{font-size:15px!important}.topic-disclosures .service-item summary{padding:13px 16px}.service-topic>.info-actions{gap:7px 14px}.service-topic>.info-actions button{font-size:13px}}
@media(max-width:600px){.home-copy .hero-actions{gap:17px}.home-copy .gold-button{min-width:163px;font-size:15px;padding-inline:16px}.hero-call{font-size:12px;gap:7px}.hero-call svg{width:16px}.topic-visual{height:105px}.topic-disclosures .service-item summary h3{font-size:15px}.service-topic .info-heading{font-size:28px!important}.service-topic .info-lead{font-size:14px!important}}
@media(prefers-reduced-motion:reduce){.topic-visual *{animation:none!important}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Luminous service atmosphere. The ghost core keeps its approved material. */
:root{--ambient-sky:82,114,139;--ambient-horizon:43,79,108;--ambient-floor:24,43,61;--text:#f6f8fb;--muted:#dce5ec}
body[data-service=websites]{--ambient-sky:131,91,104;--ambient-horizon:104,49,67;--ambient-floor:55,30,45}
body[data-service=marketing]{--ambient-sky:107,114,122;--ambient-horizon:66,78,92;--ambient-floor:38,46,59}
body[data-service=video]{--ambient-sky:111,98,143;--ambient-horizon:75,57,114;--ambient-floor:38,31,65}
html{background:#263d50}body{background:rgb(var(--ambient-floor));color:#f6f8fb}
.site-shell{background:linear-gradient(165deg,rgba(var(--ambient-horizon),.55),rgba(var(--ambient-floor),.9))}
.main-stage{background:radial-gradient(ellipse at 50% 27%,rgb(var(--ambient-sky)),rgba(var(--ambient-sky),.42) 33%,transparent 75%),linear-gradient(145deg,rgb(var(--ambient-horizon)),rgb(var(--ambient-floor)))}
.world-atmosphere{z-index:0;background:none!important}.scene-shade{display:none}
#aurelia-canvas{z-index:3;filter:none;pointer-events:none}
body .site-header{background:rgba(var(--ambient-floor),.88);border-color:#c9e0ef38}
body .brand-title,body .desktop-navigation a{color:#eef3f8}
body .desktop-navigation a[aria-current=page]{color:#fff;border-color:var(--gold)}
body .language-control select{background:rgba(var(--ambient-floor),.85);border-color:#d6e8f35c;color:#f5f8fb}
body .site-footer{color:#dce4ee;border-color:#d4e6f333}
body .site-footer .quiet,body .site-footer a,body .chat-status,body .voice-sound{color:#e0e9f0}
body .home-copy .description,body .home-copy .service-intro{color:#f0f4f8;text-shadow:0 1px 7px #15213155}
body .home-copy .eyebrow{color:#f0f5fb}.aurelia-label{color:#f6f8fb;background:rgba(var(--ambient-floor),.8);border-color:#e2edf154}
body .gold-button{background:linear-gradient(130deg,#dceeff29,rgba(var(--ambient-floor),.75));border-color:#dceeff99;color:#fff;box-shadow:0 6px 24px #0b152229}
body .hero-call{color:#eff5fc}body .hero-call:hover{color:#fff}
body .aurelia-input-form{background:linear-gradient(115deg,#213547,rgba(var(--ambient-floor),.98));border-color:#d2e7f66b;box-shadow:0 5px 25px #10203226}
body .aurelia-input-form input{color:#fff}body .aurelia-input-form input::placeholder{color:#dce5ed}
body .voice-send,body .voice-mic{color:#f5f8fc;background:#d3e5f00d;border-color:#dce7ef69}
body .voice-stop{color:#e9f1f7;background:transparent}body .voice-stop:disabled{opacity:.56}
body[data-service][data-detail=true] .page-window{z-index:2;border-color:#d6e6f260;background:linear-gradient(135deg,rgba(var(--ambient-floor),.97),#1b2a3bf7 88%);box-shadow:0 14px 42px #0b142333}
body .information-top{background:rgba(var(--ambient-horizon),.25);border-bottom-color:#e2edf12e}
body .information-body{color:#e9eff5}body .info-lead,body .scope-list p{color:#dbe5ee}
body .info-card,body .service-item,body .offer-main,body .plan-choice,body .industry-choice{border-color:#c5dcea40;background:linear-gradient(135deg,#d3e7f20d,#14223445)}
body .outline,body .guide-explain{color:#f4f8fb;background:#c2deed14;border-color:#daeaf187}
body .information-top .close-page{background:#deedfa0d;border-color:#d5e6ee52;color:#f2f6fa}
.aurelia-guide{z-index:6}.guide-status{color:#e9f0f6}
/* True round bubbles; labels sit outside so longer service names remain legible. */
#bubble-links{position:absolute;inset:0;z-index:8;pointer-events:none}
#bubble-links a.satellite-link{pointer-events:auto;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #ecf5ff85;border-radius:50%;aspect-ratio:1;min-width:0;min-height:0;background:radial-gradient(circle at 29% 20%,#f0f8ff35,rgba(var(--ambient-floor),.92) 62%);box-shadow:inset 1px 1px 7px #e1f1ff24,inset -2px -4px 9px #06111e3d,0 6px 17px #101b2e2e;overflow:visible;outline-offset:5px;transition:border-color .3s,box-shadow .3s,transform .3s}
#bubble-links a.satellite-link::before{content:'';position:absolute;inset:5px;border-radius:50%;border:1px solid #f4faff12;pointer-events:none}
#bubble-links a.satellite-link::after{content:'';position:absolute;top:8%;left:21%;width:38%;height:16%;border-radius:50%;background:linear-gradient(#f5faff4d,#ffffff00);transform:rotate(-25deg);pointer-events:none}
.satellite-icon{width:22px;height:22px;fill:none;stroke:#f2f7ff;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;opacity:.95;pointer-events:none}
#bubble-links a.satellite-link span.satellite-label{position:absolute!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;display:block;width:var(--bubble-label-width,135px)!important;max-width:none!important;padding:0!important;font-size:14px!important;line-height:1.4!important;font-weight:400;color:#f6f8fb!important;opacity:1!important;text-align:left!important;white-space:normal!important;text-shadow:0 1px 7px #0a162e55;letter-spacing:.05px!important}
#bubble-links a[data-side=left] span.satellite-label{right:calc(100% + 15px)!important;left:auto!important;text-align:right!important}
#bubble-links a[data-side=right] span.satellite-label{left:calc(100% + 15px)!important;right:auto!important}
#bubble-links a.satellite-link:hover,#bubble-links a.satellite-link:focus-visible{border-color:#fff;box-shadow:inset 1px 1px 9px #e7f3ff49,0 0 0 5px #dfefff0d,0 0 28px rgba(var(--service-rgb),.3);transform:translate(-50%,-50%) scale(1.075)}
#bubble-links a.satellite-link[aria-current=page]{outline:none;border:2px solid #f3f8ff;box-shadow:inset 0 0 15px rgba(var(--service-rgb),.24),0 0 0 5px rgba(var(--service-rgb),.14)}
#bubble-links a.satellite-link[aria-current=page] span.satellite-label{font-weight:600}
#bubble-links a.satellite-link:focus-visible{outline:2px solid #fff}
@media(min-width:1001px){
 body[data-detail=true] .page-window{left:3.5%;right:42%;top:12px;bottom:12px}
 .aurelia-guide{left:60.5%;right:2.5%}
 .guide-copy{top:var(--guide-copy-top);max-width:none;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:3px 12px;text-align:left;padding:0 12px}
 .guide-copy h2{font-size:34px;line-height:1.1;margin:0;grid-column:1;grid-row:1;letter-spacing:-1px}
 .guide-status{font-size:11px;margin:4px 0 0;grid-column:1;grid-row:2;justify-content:flex-start;min-height:18px}
 .guide-description,.guide-topic{display:none}.guide-explain{grid-column:2;grid-row:1/3;font-size:12px;min-height:42px;padding:10px 14px}
 .guide-desktop-label{display:none}.guide-mobile-label{display:inline}
 body[data-detail=true] #bubble-links a.satellite-link{padding:0;border-radius:50%;gap:0}
 body[data-detail=true] #bubble-links a.satellite-link span.satellite-label{top:calc(100% + 7px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;font-size:11px!important;line-height:1.3!important;text-align:center!important}
 body[data-detail=true] .satellite-icon{width:20px;height:20px}
}
@media(min-width:1001px) and (max-height:700px){.guide-copy h2{font-size:28px}.guide-explain{font-size:11px;padding:8px 10px;min-height:38px}.guide-status{font-size:10px}}
@media(max-width:1000px){
 #bubble-links{display:none}body .main-stage{background:radial-gradient(ellipse at 50% 22%,rgb(var(--ambient-sky)),transparent 85%),linear-gradient(rgb(var(--ambient-horizon)),rgb(var(--ambient-floor)))}
 body .mobile-navigation{background:rgba(var(--ambient-floor),.96);border-color:#d8e8f03d}
 body .mobile-navigation>a,body .mobile-navigation>button{color:#eff5fc;border-color:#dce9f26b}
 body .mobile-navigation nav{background:rgb(var(--ambient-floor));border-color:#dce9f26b}
 .mobile-navigation nav a{border:1px solid #d5e4f04d;background:#dce9f00d;color:#eff5fc}
 .mobile-navigation nav a[aria-current=page]{border-color:#f4f8ff;background:#dce9f022}
}
body[data-motion=paused] #bubble-links a{transition:none!important}
