/* Cascading service navigator and shared motion system. */
@property --edge-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
.brand-site{isolation:isolate}.living-background{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;transform:translate(var(--pointer-x,0),var(--pointer-y,0));transition:transform 1.8s ease}
.living-background i{position:absolute;width:65vw;height:65vh;border-radius:50%;background:radial-gradient(ellipse,#20bfff16,transparent 68%);animation:ambient-drift 22s ease-in-out infinite alternate;will-change:transform}
.living-background i:nth-child(1){left:-20%;top:8%}.living-background i:nth-child(2){right:-20%;top:10%;background:radial-gradient(ellipse,#9270ff1b,transparent 65%);animation-delay:-12s;animation-duration:28s}.living-background i:nth-child(3){left:30%;bottom:-20%;background:radial-gradient(ellipse,#36ddda12,transparent 70%);animation-delay:-7s;animation-duration:32s}
@keyframes ambient-drift{from{transform:translate(-5%,-7%) scale(.9)}to{transform:translate(18%,20%) scale(1.2)}}
@keyframes edge-orbit{to{--edge-angle:360deg}}
.brand-site :is(.offering-card,.process-step,.cta-panel,.concept-card){position:relative;isolation:isolate;min-width:0}
.brand-site :is(.offering-card,.process-step,.cta-panel,.concept-card)::after{content:'';position:absolute;inset:0;width:auto;height:auto;border:0;border-radius:inherit;padding:1px;pointer-events:none;box-shadow:none;background:conic-gradient(from var(--edge-angle),transparent 5%,#52d9ff77 20%,transparent 35%,transparent 55%,#ab8aff70 75%,transparent 90%);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;animation:edge-orbit 14s linear infinite;z-index:2}
.brand-site :is(.offering-card,.process-step,.cta-panel,.concept-card):hover{box-shadow:0 0 24px #51d9ff12,inset 0 0 30px #51d9ff06;border-color:#62d9ff70}
.brand-site .process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.brand-site .process-step{padding:30px!important;border-radius:22px;overflow:hidden}
.brand-site .process-step h3{margin:0 0 14px}.brand-site .process-step p{margin:0;line-height:1.75;overflow-wrap:anywhere}
.brand-site .cta-panel{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:40px!important;border-radius:26px;overflow:hidden}
.brand-site .cta-panel>div{min-width:0;max-width:800px}.brand-site .cta-panel h2{margin:0 0 16px}.brand-site .cta-panel p{margin:0;line-height:1.75}.brand-site .cta-panel>.btn{flex-shrink:0}
.motion-control{position:fixed;bottom:14px;right:16px;z-index:95;border:1px solid var(--concept-line);border-radius:999px;padding:7px 12px;background:var(--concept-card);color:var(--concept-muted);font-size:11px;cursor:pointer;box-shadow:0 5px 20px #0002}.motion-control:disabled{cursor:default}
.motion-paused .living-background i,.motion-paused .brand-site *::after,.motion-paused .signal-waves{animation-play-state:paused!important}.motion-paused .living-background{transform:none;transition:none}
.cascade-open{overflow:hidden}
.cascade-dialog{--guide-surface:#091525;--guide-text:#eef7ff;--guide-muted:#aabdce;--guide-line:#6ccfff36;color:var(--guide-text);background:var(--guide-surface);width:min(860px,calc(100% - 36px));max-width:none;max-height:min(850px,calc(100dvh - 44px));padding:0;border:1px solid #67cfff80;border-radius:27px;box-shadow:0 0 0 6px #62cfff06,0 0 65px #48cfff13,0 40px 140px #0009;overflow:hidden}
.cascade-dialog::backdrop{background:#020914bd;backdrop-filter:blur(12px)}
.cascade-shell{display:flex;flex-direction:column;max-height:min(848px,calc(100dvh - 46px));background:radial-gradient(ellipse at 100% 0,#735bdb15,transparent 60%)}
.cascade-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 30px 21px;border-bottom:1px solid var(--guide-line)}
.cascade-eyebrow{font-size:10px;font-weight:800;letter-spacing:.17em;color:#75deff}.brand-site .cascade-header h2{font-size:23px;margin:7px 0 0;line-height:1.25;color:var(--guide-text)}
.cascade-close{width:38px;height:38px;flex-shrink:0;border:1px solid var(--guide-line);border-radius:50%;background:#ffffff05;color:var(--guide-text);font-size:25px;cursor:pointer}
.cascade-trail{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:13px 30px;border-bottom:1px solid var(--guide-line);font-size:11px;color:var(--guide-muted)}
.cascade-crumb{border:0;background:none;color:#7fddff;cursor:pointer;padding:3px 0;font:inherit}
.cascade-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:28px 30px 30px;scrollbar-width:thin;scrollbar-color:#315b75 transparent}
.cascade-response{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}
.cascade-avatar{flex:0 0 34px;height:34px;background:url('logo-light.svg') center/23px no-repeat;border:1px solid var(--guide-line);border-radius:11px;font-size:0}
.cascade-bubble{padding:17px 20px;background:#5ecfff08;border:1px solid var(--guide-line);border-radius:0 18px 18px 18px;min-width:0;animation:cascade-in .28s ease-out}
.cascade-bubble h3{color:var(--guide-text);font-size:21px;line-height:1.25;margin:0 0 10px}.cascade-bubble p{color:var(--guide-muted);font-size:14px;line-height:1.7;margin:0}
.cascade-options{display:grid;gap:12px;margin-left:48px}.cascade-root{grid-template-columns:repeat(2,minmax(0,1fr))}
.cascade-choice{position:relative;display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px 20px;border:1px solid var(--guide-line);border-radius:16px;background:radial-gradient(circle at var(--edge-x,50%) var(--edge-y,50%),#5ecfff0c,transparent 80%),#ffffff03;color:var(--guide-text);font-size:14px;cursor:pointer;transition:transform .18s,border-color .18s,background .18s;animation:cascade-in .3s ease both}
.cascade-choice:nth-child(2){animation-delay:.05s}.cascade-choice:nth-child(3){animation-delay:.1s}.cascade-choice:nth-child(4){animation-delay:.15s}
.cascade-choice:hover{transform:translateY(-2px);border-color:#70dfff;background-color:#60cfff0c}
.cascade-choice-tag{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#83dfff}.cascade-choice strong{font-size:17px;line-height:1.3}.cascade-choice-copy{font-size:12px;line-height:1.6;color:var(--guide-muted)}.cascade-choice-arrow{color:#83dfff;font-size:12px;margin-top:auto;padding-top:4px}
.cascade-link{display:inline-block;color:#83dfff;font-size:13px;text-decoration:underline;text-underline-offset:4px;padding:8px 0}.cascade-wide{grid-column:1/-1}.cascade-brief{padding:20px 22px;background:#ffffff03;border:1px solid var(--guide-line);border-radius:17px}.cascade-brief h4{margin:0 0 12px;font-size:14px}.cascade-brief ul{margin:0;padding-left:20px;color:var(--guide-muted);font-size:14px;line-height:1.9}
.cascade-actions{display:flex;gap:12px 20px;flex-wrap:wrap;align-items:center;margin-top:7px}.cascade-reply:empty{display:none}.cascade-reply{margin:24px 0 0 48px;color:var(--guide-muted);font-size:14px}.cascade-user-question{margin-left:auto;max-width:90%;padding:12px 16px;background:#64d9ff14;border-radius:16px 0 16px 16px;color:var(--guide-text);overflow-wrap:anywhere}
.cascade-footer{padding:18px 30px 16px;border-top:1px solid var(--guide-line);background:var(--guide-surface)}
.cascade-form{display:flex;align-items:center;gap:8px;border:1px solid var(--guide-line);border-radius:15px;padding:6px 7px 6px 12px;background:#030b1560}.cascade-form input{border:0;box-shadow:none;background:transparent;color:var(--guide-text);padding:8px 3px;font-size:14px;min-width:0}.cascade-form input::placeholder{color:var(--guide-muted)}.cascade-form:focus-within{outline:2px solid #56ceff;outline-offset:2px}.cascade-form button{width:37px;height:37px;flex-shrink:0;border:0;border-radius:10px;background:#80e2ff;color:#052031;font-size:22px;cursor:pointer}
.cascade-footnote{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;color:var(--guide-muted);padding-top:10px}.cascade-back{border:0;background:transparent;color:#83dfff;font-size:12px;cursor:pointer;padding:4px}.cascade-back[hidden]{display:none}
@keyframes cascade-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
html[data-theme=light] .cascade-dialog{--guide-surface:#f8fbff;--guide-text:#102c49;--guide-muted:#496079;--guide-line:#126b9a30;border-color:#8cc2e0;box-shadow:0 30px 120px #001b4b33}
html[data-theme=light] .cascade-dialog::backdrop{background:#10203a66}
html[data-theme=light] .cascade-dialog :is(.cascade-eyebrow,.cascade-crumb,.cascade-choice-tag,.cascade-choice-arrow,.cascade-link,.cascade-back){color:#006c96}
html[data-theme=light] .cascade-avatar{background-image:url('logo.svg')}
html[data-theme=light] .cascade-form{background:white}
html[data-theme=light] .living-background{opacity:.7}
@media(max-width:960px){.brand-site .process-grid{grid-template-columns:1fr;gap:18px}.brand-site .cta-panel{flex-direction:column;align-items:flex-start}}
@media(max-width:600px){.cascade-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:21px}.cascade-shell{max-height:calc(100dvh - 22px)}.cascade-header{padding:19px 18px 16px}.brand-site .cascade-header h2{font-size:19px}.cascade-trail{padding:10px 18px}.cascade-scroll{padding:20px 18px}.cascade-options,.cascade-reply{margin-left:0}.cascade-root{grid-template-columns:1fr}.cascade-response{gap:9px}.cascade-avatar{flex-basis:27px;height:27px;background-size:19px;border-radius:8px}.cascade-bubble{padding:14px}.cascade-bubble h3{font-size:18px}.cascade-choice{padding:15px 17px}.cascade-footer{padding:13px 18px}.cascade-footnote{font-size:9px}.brand-site .process-step{padding:25px!important}.brand-site .cta-panel{padding:27px!important;gap:24px}.living-background i{animation-duration:36s;opacity:.65}.motion-control{bottom:9px;right:10px;font-size:10px}.cascade-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.living-background i,.cascade-dialog *,.brand-site *::after{animation:none!important;transition:none!important}.living-background{transform:none!important}.cascade-choice:hover{transform:none}}
