/* Shared material: directional highlights, translucent faces, quiet depth. */
:root { --glass-line: #ffffff30; --glass-shadow: inset 0 1px 0 #ffffff21, inset 0 -1px 0 #ffffff08, 0 20px 65px #0005; }
.floating-nav {
  border-color: #ffffff38;
  background: linear-gradient(125deg, #484b4f73, #1b1c2180 48%, #31303461);
  box-shadow: inset 0 1px 0 #ffffff24, inset 0 -1px 0 #0004, 0 12px 40px #0004;
  backdrop-filter: blur(28px) saturate(1.35);
  -webkit-backdrop-filter: blur(28px) saturate(1.35);
}
.floating-nav .nav-project { background: linear-gradient(140deg, #fffef4f0, #d6d8d4ed); box-shadow: inset 0 1px 0 #fff, 0 3px 12px #0002; }
.mobile-menu-panel { background: linear-gradient(140deg, #33363bea, #111317f5); border-color: #ffffff32; box-shadow: var(--glass-shadow); }
.product-jump-links a { padding: 9px 18px; border: 1px solid #ffffff1c; border-radius: 30px; background: linear-gradient(125deg, #ffffff0a, #ffffff02); box-shadow: inset 0 1px 0 #ffffff09; }
.product-jump-links { gap: 12px; }
.product-jump-links a:hover { border-color: #ffffff4c; background: #ffffff10; }
.product-hellohub .product-visual-stage { position:relative; isolation: isolate; }
.product-hellohub .product-visual-stage::before { content: ''; position: absolute; inset: -9% -6%; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at 85% 30%, #8aa6b829, transparent 62%), radial-gradient(ellipse at 5% 80%, #dab39a1c, transparent 60%); }
.product-hellohub .product-feature-panel {
  border: 1px solid #ffffffaf; border-radius: 24px;
  background: radial-gradient(ellipse at 100% 0, #dbeaffab, transparent 62%), linear-gradient(145deg, #ffffffed, #e6edf1d6);
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 #fff7, 0 30px 90px #0006, 0 0 0 1px #fff1;
  backdrop-filter: blur(30px) saturate(1.2); -webkit-backdrop-filter: blur(30px) saturate(1.2);
}
.product-hellohub .product-panel-top { background: #ffffff55; border-bottom-color: #ffffffa8; }
.product-hellohub .product-panel-bottom { border-top-color: #c7d3dd66; }
.product-hellohub :is(.product-ui-kicker,.product-template-heading > span,.product-flow-node small,.product-panel-bottom,.product-connection-summary > span) { color:#5e7080; }
.product-hellohub :is(.product-connection-node,.product-template,.product-flow-node) { border-color: #ffffffc9; background: linear-gradient(135deg, #ffffffda, #ffffff70); box-shadow: inset 0 1px 0 #fff, 0 10px 22px #53677710; }
.product-hellohub :is(.product-connection-hub,.product-flow-hub) { background: linear-gradient(145deg, #dce8f8d6, #bdd0e1a3); border-color: #ffffffbf; }
#audithub { background: radial-gradient(ellipse at 65% 45%, #7893a70c, transparent 60%); }
#audithub .ps-mini-ui { border-color: #ffffff30; background: radial-gradient(ellipse at 95% 0, #c8d8eb18, transparent 65%), linear-gradient(140deg, #ffffff14, #ffffff03); box-shadow: var(--glass-shadow); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
#audithub :is(.ps-report-sheet,.ps-query) { border-color: #ffffff2d; background: linear-gradient(145deg, #aebbd319, #ffffff07); box-shadow: inset 0 1px 0 #ffffff17, 0 14px 30px #0003; }
.gmb-hubai-stage {
  isolation: isolate; border-radius: 25px; border-color: #ffffff36;
  background: radial-gradient(ellipse at 100% 0, #b7957820, transparent 55%), linear-gradient(140deg, #9cabc323, #1b2228b0 54%, #14181dcc);
  box-shadow: var(--glass-shadow); backdrop-filter: blur(28px) saturate(1.15); -webkit-backdrop-filter: blur(28px) saturate(1.15);
}
.gmb-hubai-stage-header { background: #ffffff05; border-radius: 24px 24px 0 0; border-bottom-color: #ffffff1a; }
.gmb-hubai-message { border-color: #ffffff24; box-shadow: inset 0 1px 0 #ffffff10, 0 7px 18px #0001; }
.gmb-hubai-customer { background: linear-gradient(125deg, #7b93af30, #c4d4e70c); }
.gmb-hubai-assistant { background: linear-gradient(130deg, #b99d7e1b, #ffffff06); }
.gmb-hubai :is(.gmb-hubai-source-icon,.gmb-hubai-transfer-node) { background: linear-gradient(135deg, #ffffff15, #ffffff05); border-color: #ffffff27; box-shadow: inset 0 1px 0 #ffffff13; }
.contact-section { isolation: isolate; background: radial-gradient(ellipse at 83% 85%, #526c871a, transparent 61%), radial-gradient(ellipse at 95% 0, #ad8c6510, transparent 50%); }
.contact-section::before { opacity: .6; mask-image: linear-gradient(180deg, transparent, #000); -webkit-mask-image: linear-gradient(180deg, transparent, #000); }
.contact-cta { padding: 19px 22px; border: 1px solid #ffffff37; border-radius: 16px; background: linear-gradient(120deg, #ffffff13, #ffffff04); box-shadow: var(--glass-shadow); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
.contact-cta:hover { background: linear-gradient(120deg, #ffffff1f, #ffffff09); border-color: #ffffff68; }
.site-footer { display:block; padding-bottom: 24px; overflow:hidden; background: radial-gradient(ellipse at 65% 35%, #506e8b10, transparent 65%), linear-gradient(180deg, #ffffff03, transparent); }
.footer-grid { display:grid; grid-template-columns: 1fr 1fr 1fr; gap:48px; padding:24px 0 72px; }
.footer-grid > div { display:flex; flex-direction:column; align-items:start; gap:14px; }
.footer-label { width:100%; margin:0 0 11px; padding-top:20px; border-top:1px solid #ffffff28; color:#9095a0; font:400 11px/1.6 var(--secondary); letter-spacing:.12em; }
.footer-grid a, .footer-location { font:400 clamp(16px,1.5vw,24px)/1.5 var(--secondary); color:#c4c7ce; }
.footer-grid a:hover { color:#fff; }.footer-location { color:#818791; }
.site-footer > .footer-signature { display:flex; justify-content:center; align-items:center; gap:1.8vw; padding:4vw 0 5vw; color:#ecebe7; }
.footer-signature img { width:8vw; height:8vw; max-width:165px; max-height:165px; flex:0 0 auto; object-fit:contain; }
.site-footer .footer-signature > span { color:inherit; font:400 16.7vw/.85 'Helvetica Neue',Helvetica,Arial,sans-serif; letter-spacing:-.075em; white-space:nowrap; }
.footer-signature sup { display:inline-block; vertical-align:top; margin:1vw 0 0 1vw; font-size:2vw; letter-spacing:0; }
.footer-end { display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid #ffffff1c; padding-top:26px; }
.footer-end > a { font:400 13px/1.5 var(--secondary); color:#b8bdc5; white-space:nowrap; }.footer-end > a span { margin-left:20px; }
@media (max-width:760px) {
  .product-jump-links { gap: 9px; }.product-jump-links a { padding: 8px 15px; }
  .product-hellohub .product-feature-panel, .gmb-hubai-stage { border-radius: 20px; }
  .contact-cta { font-size: 18px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:32px 20px; padding:5px 0 25px; }.footer-grid>div:last-child { grid-column:1 / -1; }
  .footer-grid a,.footer-location { font-size:16px; }.footer-label { font-size:9px; }
  .site-footer > .footer-signature { padding:40px 0; gap:2vw; }.site-footer .footer-signature > span { font-size:15.7vw; }.footer-signature sup { font-size:2.5vw; }
  .footer-end { align-items:start; gap:20px; }.footer-end .footer-bottom { display:grid; gap:9px; }.footer-end > a { font-size:11px; }.footer-end > a span { margin-left:6px; }
}
@media (prefers-reduced-motion:reduce) { .product-jump-links a,.contact-cta { transition: none; } }
