/* Preview-only motion. The approved blueprints carry the visual emphasis. */
#cc-home-consistency .hp-about p strong{font-weight:400}
#cc-home-consistency .hp-section h2{color:#369b54}
#cc-home-consistency .hp-services,#cc-home-consistency .hp-partner{background:#16394d}
#cc-home-consistency .hp-services h2,#cc-home-consistency .hp-partner h2,#cc-home-consistency .hp-inquiry h2{color:#80cb99}
#cc-home-consistency .hp-canadian .canada-flag{width:48px;height:24px;color:#fff;flex:none}
#cc-home-consistency .hp-canadian .cc-flag-badge{text-transform:none;letter-spacing:0;font-size:14px}
#cc-home-consistency .hp-service-grid{gap:32px 24px;max-width:1020px;margin-inline:auto}
#cc-home-consistency .hp-service{min-width:0;position:relative;padding:0;border:0;background:transparent;--hp-glow-angle:135deg}
#cc-home-consistency .hp-service-art::before,#cc-home-consistency .hp-service-art::after{content:'';position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity 200ms ease;background:conic-gradient(from var(--hp-glow-angle),transparent 0 55%,#2c70b0 70%,#80cb99 83%,#b8f2d0 87%,transparent 98%)}
#cc-home-consistency .hp-service-art::before{padding:2px;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;z-index:2}
#cc-home-consistency .hp-service-art::after{inset:-3px;filter:blur(9px);z-index:-1}
#cc-home-consistency .hp-service:hover .hp-service-art::before,#cc-home-consistency .hp-service:focus-within .hp-service-art::before,#cc-home-consistency .hp-service.is-running .hp-service-art::before{opacity:1}
#cc-home-consistency .hp-service:hover .hp-service-art::after,#cc-home-consistency .hp-service:focus-within .hp-service-art::after,#cc-home-consistency .hp-service.is-running .hp-service-art::after{opacity:.2}
#cc-home-consistency .hp-service-art{display:block;position:relative;isolation:isolate;width:100%;aspect-ratio:4/3;padding:0;border:0;border-radius:28px;overflow:visible;background:transparent;color:#fff;cursor:pointer}
#cc-home-consistency .hp-art-content{display:block;position:absolute;inset:0;border-radius:inherit;overflow:hidden}
#cc-home-consistency .hp-service-art .hp-art-content>img,#cc-home-consistency .hp-service-art .hp-art-content>svg{display:block;position:static;width:100%;height:100%;max-width:none;object-fit:contain}
#cc-home-consistency .hp-service-art .hp-art-content>video{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;opacity:0;transition:opacity 150ms linear;pointer-events:none}
#cc-home-consistency .hp-service-art .hp-art-content>.hp-cad-traces{position:absolute;inset:0;pointer-events:none}
#cc-home-consistency .hp-cad-traces path{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
#cc-home-consistency .is-running .hp-cad-traces path{animation:hp-route-draw 4s ease both}
#cc-home-consistency .is-running .hp-cad-traces path:nth-child(2){animation-delay:.2s}
#cc-home-consistency .is-running .hp-cad-traces path:nth-child(3){animation-delay:.4s}
#cc-home-consistency .is-running .hp-cad-traces path:nth-child(4){animation-delay:.6s}
#cc-home-consistency .is-running .hp-cad-traces path:nth-child(5){animation-delay:.8s}
@keyframes hp-route-draw{0%{stroke-dashoffset:1;opacity:0}8%{opacity:1}65%,85%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
#cc-home-consistency .hp-service.is-ready video{opacity:1}
#cc-home-consistency .hp-service-grid .hp-service-title{display:block;min-height:0;padding:15px 0 0;border:0}
#cc-home-consistency .hp-service-title h3{font-size:17px;font-weight:500;line-height:1.45}
#cc-home-consistency .hp-service:hover .hp-service-title{color:#a0ddb2}
#cc-home-consistency .hp-service-art:focus-visible{outline:3px solid #80cb99;outline-offset:4px}
#cc-home-consistency .hp-service .cc-pcb-travelling-board{transform:translate(0,0)}
#cc-home-consistency .hp-service.is-running .cc-pcb-travelling-board{animation:hp-pcb-travel 4200ms cubic-bezier(.45,0,.2,1) both}
@keyframes hp-pcb-travel{0%,8%{transform:translate(0,0)}48%,62%{transform:translate(88px,34.7px)}100%{transform:translate(0,0)}}
#cc-home-consistency .hp-logo-window{overflow-x:auto;scrollbar-width:thin}
#cc-home-consistency .hp-logo-track{display:flex;width:max-content}
#cc-home-consistency .hp-logo-group{display:flex;align-items:center;justify-content:space-around;gap:32px;padding:0 24px;flex:none}
#cc-home-consistency .hp-logo-group img{display:block;flex:none;width:160px;height:58px;object-fit:contain}
#cc-home-consistency .hp-logo-group [alt="University of Waterloo"]{width:210px}
#cc-home-consistency .hp-logo-controls{display:flex;justify-content:flex-end;margin-top:10px}
#cc-home-consistency .hp-logo-pause,#cc-home-consistency .hp-depth-toggle{font:inherit;font-size:13px;border:1px solid currentColor;border-radius:4px;padding:7px 12px;min-height:44px;background:transparent;color:inherit;cursor:pointer}
#cc-home-consistency .hp-logo-window.is-looping{overflow:hidden}
#cc-home-consistency .hp-logo-window.is-looping .hp-logo-track{animation:hp-logo-travel 36s linear infinite;animation-play-state:paused}
#cc-home-consistency .hp-logo-window.is-playing:not(:hover):not(:focus-within) .hp-logo-track{animation-play-state:running}
@keyframes hp-logo-travel{to{transform:translateX(calc(-1 * var(--hp-logo-distance)))}}
#cc-home-consistency .hp-industry-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
#cc-home-consistency .hp-industry-heading h2{margin:0}
#cc-home-consistency .hp-depth-toggle[aria-pressed=true]{background:#16394d;color:#fff;border-color:#16394d}
#cc-home-consistency .hp-industry-image{display:block;overflow:hidden;perspective:800px}
#cc-home-consistency .hp-industry-image img{display:block;transition:transform 250ms ease;transform:rotateX(0deg) rotateY(0deg) scale(1)}
@media(hover:hover) and (pointer:fine){#cc-home-consistency .hp-industry-image img{transform:rotateX(var(--hp-rx,0deg)) rotateY(var(--hp-ry,0deg)) scale(var(--hp-scale,1))}}
#cc-home-consistency .hp-faq details{position:relative;border-left:3px solid transparent;padding-left:17px}
#cc-home-consistency .hp-faq details[open]{border-left-color:#369b54}
#cc-home-consistency .hp-faq summary{list-style:none;position:relative;padding-right:40px;cursor:pointer}
#cc-home-consistency .hp-faq summary::-webkit-details-marker{display:none}
#cc-home-consistency .hp-faq summary::before,#cc-home-consistency .hp-faq summary::after{content:'';position:absolute;right:8px;top:29px;width:14px;height:2px;background:currentColor;transition:transform 220ms ease}
#cc-home-consistency .hp-faq summary::after{transform:rotate(90deg)}
#cc-home-consistency .hp-faq details[open] summary::after{transform:rotate(0deg)}
@container(max-width:860px){#cc-home-consistency .hp-service-grid{gap:28px 22px}}
@container(max-width:580px){#cc-home-consistency .hp-service-grid{gap:28px}#cc-home-consistency .hp-service-title h3{font-size:18px}#cc-home-consistency .hp-industry-heading{align-items:flex-start;flex-direction:column;gap:12px}#cc-home-consistency .hp-logo-group{padding:0 12px;gap:28px}#cc-home-consistency .hp-logo-group img{width:140px;height:48px}}
@media(prefers-reduced-motion:reduce){#cc-home-consistency .hp-service.is-running .cc-pcb-travelling-board,#cc-home-consistency .hp-logo-track,#cc-home-consistency .hp-cad-traces path{animation:none!important}#cc-home-consistency .hp-service-art video{display:none}#cc-home-consistency .hp-industry-image img{transform:none!important;transition:none}#cc-home-consistency summary::before,#cc-home-consistency summary::after,#cc-home-consistency .hp-service-art::before,#cc-home-consistency .hp-service-art::after{transition:none}}

#cc-home-consistency .hp-solution .hp-industry-image img{width:100%;height:170px;object-fit:cover}
