/* Homepage-only interaction layer for the Odoo arteries scene. */
.hero .scene { position:relative; }
.sco-arteries-overlay { position:absolute; inset:0; z-index:12; pointer-events:none; direction:rtl; }
.sco-arteries-toolbar { position:absolute; z-index:4; inset:16px 18px auto auto; display:flex; align-items:center; gap:12px; max-width:calc(100% - 36px); pointer-events:auto; }
.sco-arteries-hint { max-width:min(470px,55vw); padding:9px 13px; border:1px solid rgba(224,215,230,.2); border-radius:999px; color:#ddd4e2; background:rgba(24,18,27,.78); font-size:12px; line-height:1.6; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
.sco-arteries-expand { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:9px 15px; border:1px solid rgba(255,255,255,.24); border-radius:999px; color:#f8f4f8; background:rgba(27,20,30,.88); font-family:inherit; font-size:12px; font-weight:600; line-height:1.2; cursor:pointer; box-shadow:0 5px 20px #0003; transition:background .2s ease,border-color .2s ease,transform .2s ease; }
.sco-arteries-expand:hover { background:#39283e; border-color:#18c7b8; transform:translateY(-1px); }
.sco-arteries-expand:focus-visible,.sco-artery-label:focus-visible,.sco-arteries-close:focus-visible { outline:2px solid #20d1c3; outline-offset:3px; }
.sco-arteries-svg { position:absolute; inset:0; z-index:2; overflow:visible; pointer-events:none; }
.sco-artery-route { display:none; }
.sco-artery-route.is-visible { display:block; }
.sco-artery-hit { fill:none; stroke:transparent; stroke-width:26; stroke-linecap:round; pointer-events:stroke; cursor:pointer; }
.sco-artery-line { fill:none; stroke-width:3.3; stroke-linecap:round; stroke-dasharray:11 8; pointer-events:none; filter:drop-shadow(0 0 5px currentColor); animation:sco-artery-flow 1.4s linear infinite; }
.sco-artery-route.is-green .sco-artery-line { stroke:#18d1bd; color:#18d1bd; }
.sco-artery-route.is-blue .sco-artery-line { stroke:#56b6ff; color:#56b6ff; }
.sco-artery-route.is-active .sco-artery-line { stroke-width:5; filter:drop-shadow(0 0 9px currentColor); }
@keyframes sco-artery-flow { to { stroke-dashoffset:-38; } }
.sco-arteries-labels { position:absolute; inset:0; z-index:3; pointer-events:none; }
.sco-artery-label { position:absolute; max-width:220px; padding:8px 12px; border:1px solid currentColor; border-radius:999px; font-family:inherit; font-size:11px; font-weight:600; line-height:1.3; white-space:nowrap; color:#f6f3f8; background:rgba(23,18,27,.93); box-shadow:0 4px 18px #0005; cursor:pointer; pointer-events:auto; transform:translate(0,0); }
.sco-artery-label.is-green { border-color:#18d1bd; }
.sco-artery-label.is-blue { border-color:#56b6ff; }
.sco-artery-label[aria-pressed="true"] { background:#453349; box-shadow:0 0 0 2px currentColor,0 5px 22px #0006; }
.sco-artery-destination { position:absolute; z-index:2; max-width:150px; padding:8px 11px; border:1px solid rgba(24,209,189,.75); border-radius:12px; color:#f7f3f8; background:rgba(25,19,28,.94); font-size:11px; font-weight:600; white-space:nowrap; box-shadow:0 5px 18px #0005; }
.sco-arteries-detail { position:absolute; z-index:5; right:18px; bottom:56px; width:min(480px,calc(100% - 36px)); padding:20px 22px 19px; border:1px solid rgba(223,207,224,.28); border-radius:18px; color:#f7f3f8; background:rgba(24,18,27,.96); box-shadow:0 16px 45px #0008; pointer-events:auto; -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
.sco-arteries-detail[hidden] { display:none; }
.sco-arteries-detail[data-color="green"] { border-color:rgba(24,209,189,.7); }
.sco-arteries-detail[data-color="blue"] { border-color:rgba(86,182,255,.72); }
.sco-arteries-detail h3 { margin:0 35px 8px 0; font-size:18px; line-height:1.55; }
.sco-arteries-detail p { margin:0; color:#ded5e2; font-size:13px; line-height:1.85; }
.sco-arteries-detail .sco-arteries-kicker { margin-bottom:6px; color:#20d1c3; font-size:11px; letter-spacing:.02em; }
.sco-arteries-detail .sco-arteries-lead { margin-bottom:7px; color:#f2eaf2; }
.sco-arteries-detail-body { font-size:13px; line-height:1.85; color:#cfc4d3; }
.sco-arteries-close { position:absolute; top:12px; left:13px; width:30px; height:30px; border:1px solid #ffffff35; border-radius:50%; color:white; background:transparent; font-size:20px; line-height:1; cursor:pointer; }
.sco-arteries-fullscreen { position:fixed!important; inset:0!important; z-index:2147482000!important; width:100vw!important; height:100vh!important; height:100dvh!important; min-height:0!important; margin:0!important; border:0!important; border-radius:0!important; overflow:hidden!important; background:#100d12!important; }
.sco-arteries-fullscreen .react-flow { position:absolute!important; inset:0!important; width:100%!important; height:100%!important; }
.sco-arteries-fullscreen .scene-caption { bottom:15px!important; }
.sco-arteries-fullscreen .sco-arteries-detail { bottom:64px; }
html.sco-arteries-lock-scroll,html.sco-arteries-lock-scroll body { overflow:hidden!important; }
body.sco-home-auto-hide-ready .site-header { transition:transform .28s ease, height .46s cubic-bezier(.2,.8,.2,1),background-color .35s ease,box-shadow .35s ease; }
body.sco-home-auto-hide-ready .site-header.sco-home-nav-hidden { transform:translateY(calc(-100% - 8px)); pointer-events:none; }
body.sco-home-auto-hide-ready .site-header.sco-home-nav-hidden:focus-within { transform:translateY(0); pointer-events:auto; }
@media (max-width:760px) {
  .sco-arteries-toolbar { inset:9px 9px auto auto; max-width:calc(100% - 18px); gap:7px; }
  .sco-arteries-hint { max-width:calc(100vw - 190px); padding:7px 9px; font-size:10px; border-radius:12px; }
  .sco-arteries-expand { min-height:38px; padding:8px 10px; font-size:11px; }
  .sco-arteries-detail { right:9px; bottom:48px; width:calc(100% - 18px); padding:15px 16px; border-radius:14px; }
  .sco-arteries-detail h3 { font-size:16px; }
  .sco-arteries-detail p,.sco-arteries-detail-body { font-size:12px; }
  .sco-artery-label { max-width:158px; padding:7px 9px; font-size:10px; }
  .sco-artery-destination { padding:7px 9px; font-size:10px; }
  .sco-arteries-fullscreen .sco-arteries-detail { bottom:54px; }
}
@media (prefers-reduced-motion:reduce) {
  .sco-artery-line { animation:none; }
  .sco-arteries-expand,.site-header { transition:none!important; }
}
