:root{--bg:#061120;--bg2:#0a1728;--panel:#0d1d31;--line:#1c3653;--text:#eef5ff;--muted:#9bb0c8;--blue:#1769ff;--cyan:#25d0e7;--green:#39d98a;--orange:#ff9f43;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#040c17 0%,#071425 40%,#06101d 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px max(24px,calc((100vw - var(--max))/2));background:rgba(4,12,23,.84);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}.brand img{width:145px;height:auto;display:block}.site-header nav{display:flex;gap:28px}.site-header a{color:#cfe0f3;text-decoration:none;font-size:.94rem}.site-header nav a:hover{color:white}.menu{display:none;background:none;color:white;border:1px solid var(--line);border-radius:8px;padding:8px 12px}.section{max-width:var(--max);margin:auto;padding:110px 24px}.hero{min-height:760px;display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);font-weight:750;margin:0 0 18px}.hero h1{font-size:clamp(2.8rem,5vw,5.4rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 28px;max-width:900px}.hero h1 span{color:#95b9e8}.lead{font-size:1.22rem;max-width:720px;color:#b9c9db}.actions{display:flex;gap:14px;margin:34px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:9px;text-decoration:none;font-weight:700}.primary{background:linear-gradient(135deg,var(--blue),#1454d8);color:white;box-shadow:0 12px 34px rgba(23,105,255,.28)}.secondary{border:1px solid #39536f;color:#dce9f8;background:rgba(255,255,255,.025)}.trust{display:flex;flex-wrap:wrap;gap:14px;color:#8fa9c4;font-size:.88rem}.trust span:before{content:'✓';color:var(--green);margin-right:7px}.hero-visual{position:relative}.hero-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle,var(--blue) 0%,transparent 65%);filter:blur(65px);opacity:.2}.screen-card{position:relative;background:linear-gradient(145deg,#0e2037,#081321);border:1px solid #244565;border-radius:18px;padding:18px;box-shadow:0 28px 80px rgba(0,0,0,.45);transform:perspective(1000px) rotateY(-5deg) rotateX(2deg)}.screen-top{height:34px;display:flex;align-items:center;gap:7px;border-bottom:1px solid #17314d}.screen-top span{width:8px;height:8px;border-radius:50%;background:#30445c}.screen-top b{margin-left:auto;color:#7692b2;font-size:.72rem}.drop-zone{margin:26px 5px;padding:40px 20px;text-align:center;border:1px dashed #31557a;border-radius:12px;background:#0a1829;display:flex;flex-direction:column;gap:5px}.drop-icon{font-size:2rem;color:var(--cyan)}.drop-zone small{color:var(--muted)}.mini-timeline{height:165px;position:relative;padding-top:15px}.mini-timeline i{display:block;height:18px;border-radius:4px;margin:12px 12px;background:linear-gradient(90deg,#28a952,#52da81);width:82%}.mini-timeline i.short{width:48%;margin-left:24%}.mini-timeline i.data{background:linear-gradient(90deg,#d9791f,var(--orange));width:88%}.mini-timeline i.offset{width:64%;margin-left:18%}.mini-timeline em{position:absolute;left:57%;top:3px;bottom:10px;width:1px;background:#fff;box-shadow:0 0 12px #fff}.screen-footer{display:flex;justify-content:space-between;border-top:1px solid #17314d;padding:15px 4px 2px;font-size:.82rem;color:#84a1bf}.screen-footer span:before{content:'●';color:var(--green);margin-right:7px}.intro{max-width:900px;text-align:center}.intro h2,.section-heading h2,.preview-copy h2,.grow h2,.cta h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.12;letter-spacing:-.035em;margin:0 0 20px}.intro p:last-child,.preview-copy p,.grow p,.cta p{font-size:1.12rem;color:#a9bdd1}.workflow{padding-top:70px}.section-heading{max-width:760px;margin-bottom:44px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps article,.reassurance article,.cards article{background:linear-gradient(160deg,rgba(16,35,58,.95),rgba(8,22,38,.95));border:1px solid #1a3856;border-radius:14px;padding:28px}.steps span{font-size:.8rem;color:var(--cyan);font-weight:800}.steps h3,.reassurance h3,.cards h3{font-size:1.2rem;margin:16px 0 8px}.steps p,.reassurance p,.cards p{color:#9fb4ca;margin:0}.product-preview,.grow{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;align-items:center}.product-preview figure,.grow figure{margin:0}.product-preview img,.grow img{width:100%;display:block;border-radius:12px;border:1px solid #294661;box-shadow:0 24px 60px rgba(0,0,0,.35)}figcaption{color:#708ba7;font-size:.78rem;margin-top:10px}.reassurance{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:60px}.icon{font-size:2rem;color:var(--cyan)}.grow{grid-template-columns:1fr 1fr}.grow ul{columns:2;padding-left:20px;color:#b8cbe0}.grow li{margin:8px 0}.applications{padding-top:70px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.cta{margin-bottom:80px;background:linear-gradient(135deg,#102b50,#091b31);border:1px solid #22517e;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:40px;padding:58px}.cta div{max-width:760px}.cta .button{white-space:nowrap}footer{max-width:var(--max);margin:auto;padding:38px 24px 60px;border-top:1px solid #17314d;display:flex;align-items:center;gap:24px;color:#7892ad}footer img{width:110px}.fine{margin-left:auto}.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header nav{display:none}.menu{display:block}.hero,.product-preview,.grow{grid-template-columns:1fr}.hero{padding-top:70px}.hero-visual{max-width:650px}.steps{grid-template-columns:repeat(2,1fr)}.reassurance{grid-template-columns:1fr}.cta{flex-direction:column;align-items:flex-start}.site-header.open nav{display:flex;position:absolute;left:0;right:0;top:77px;padding:22px 24px;background:#081522;flex-direction:column}}@media(max-width:600px){.section{padding:75px 20px}.hero h1{font-size:2.75rem}.actions{flex-direction:column}.steps,.cards{grid-template-columns:1fr}.grow ul{columns:1}.cta{margin:0 16px 55px;padding:34px 25px}.screen-card{transform:none}.fine{display:none}footer{flex-wrap:wrap}}


/* --------------------------------------------------
   Inline content links
   Keeps links the same colour as surrounding text,
   but makes them bold and gives a subtle cyan hover.
--------------------------------------------------- */

p a,
li a {
    color: inherit;
    font-weight: 700;
    text-decoration: none;
}

p a:hover,
li a:hover {
    color: var(--cyan);
    text-decoration: underline;
}

/* Hero workflow rotation */
.hero-screen-rotation {
    position: relative;
    transform: perspective(1000px) rotateY(-5deg) rotateX(2deg);
}

.hero-screen-rotation .screen-card {
    width: 100%;
    min-width: 0;
    transform: translateX(18px) scale(.985);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .85s ease, transform .85s cubic-bezier(.22,.75,.24,1), visibility 0s linear .85s;
}

.hero-screen-rotation .screen-state:first-child {
    position: relative;
}

.hero-screen-rotation .screen-state + .screen-state {
    position: absolute;
    inset: 0;
}

.hero-screen-rotation .screen-state.is-active {
    z-index: 2;
    transform: translateX(0) scale(1);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.stageplayer-card {
    display: flex;
    flex-direction: column;
}

.stage-workspace {
    display: grid;
    grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
    grid-template-rows: 250px 54px;
    gap: 12px;
    padding: 24px 5px 20px;
}

.stage-video,
.stage-data {
    min-width: 0;
    border: 1px solid #24415f;
    border-radius: 10px;
    overflow: hidden;
    background: #081523;
}

.stage-video {
    position: relative;
    background: linear-gradient(150deg,#19334d 0%,#0c2033 55%,#07121e 100%);
}

.video-scene {position:absolute;inset:0;overflow:hidden}
.video-scene .horizon {position:absolute;left:-10%;right:-10%;top:42%;height:1px;background:#496782;transform:rotate(-3deg)}
.video-scene .path {position:absolute;left:12%;right:-5%;bottom:7%;height:36%;border-top:2px solid rgba(37,208,231,.42);border-radius:50%;transform:rotate(-8deg)}
.video-scene .subject {position:absolute;left:55%;top:42%;width:38px;height:64px;border-radius:20px 20px 10px 10px;background:linear-gradient(180deg,#a3bacd,#38566f);box-shadow:0 0 38px rgba(37,208,231,.22)}
.video-scene .subject:before {content:"";position:absolute;width:21px;height:21px;border-radius:50%;left:8px;top:-14px;background:#b7c8d6}
.video-label {position:absolute;left:12px;top:12px;padding:4px 8px;border-radius:5px;background:rgba(3,11,19,.7);color:#c7d8e8;font-size:.65rem;letter-spacing:.04em;text-transform:uppercase}

.stage-data {display:grid;grid-template-rows:1fr auto;padding:14px 12px 12px}
.data-plot {position:relative;min-height:0;background:linear-gradient(rgba(54,84,111,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(54,84,111,.1) 1px,transparent 1px);background-size:100% 25%,25% 100%;border-radius:6px}
.data-plot svg {width:100%;height:100%;display:block;overflow:visible}
.data-plot path {fill:none;vector-effect:non-scaling-stroke}
.data-plot .grid-line {stroke:#29425a;stroke-width:1;stroke-dasharray:2 5}
.data-plot .plot {stroke-width:2.4;stroke-linecap:round}
.data-plot .plot.cyan {stroke:var(--cyan);color:rgba(37,208,231,.35)}
.data-plot .plot.orange {stroke:var(--orange);color:rgba(255,159,67,.3)}
.stage-playhead {position:absolute;left:58%;top:0;bottom:0;width:1px;background:#eef5ff;box-shadow:0 0 8px rgba(255,255,255,.75)}
.plot-legend {display:flex;flex-wrap:wrap;gap:12px;padding-top:10px;color:#8fa8bf;font-size:.66rem}
.plot-legend span:before {content:"";display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%}
.plot-legend .cyan-key:before {background:var(--cyan)}
.plot-legend .orange-key:before {background:var(--orange)}

.stage-annotations {grid-column:1 / -1;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #203c59;border-radius:9px;background:#091727;overflow:hidden}
.stage-annotations span {display:flex;align-items:center;gap:6px;min-width:0;padding:5px 8px;border-radius:6px;background:#10243a;color:#91abc3;font-size:.64rem;white-space:nowrap}
.stage-annotations i {width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 7px rgba(37,208,231,.55)}

/* Stageplayer hero: recognisable multi-camera analysis layout */
.stageplayer-card {min-height:529px}
.stageplayer-ui {flex:1;min-height:0;display:grid;grid-template-rows:minmax(145px,1fr) minmax(150px,.92fr) 48px;gap:8px;padding-top:14px}
.stage-cameras {display:grid;grid-template-columns:1fr 1fr;gap:7px;min-height:0}
.stage-camera {position:relative;min-width:0;overflow:hidden;border:1px solid #29445d;border-radius:7px;background:linear-gradient(145deg,#293846,#182735 48%,#0c1721)}
.stage-camera span {position:absolute;left:8px;top:8px;padding:3px 6px;border-radius:4px;background:rgba(2,8,14,.72);color:#d5e0e9;font-size:.55rem;letter-spacing:.04em;text-transform:uppercase}
.stage-room {position:absolute;inset:0;overflow:hidden;background:linear-gradient(180deg,rgba(201,188,161,.22),rgba(47,68,82,.1) 48%,rgba(5,12,18,.45))}
.stage-room:before,.stage-room:after {content:"";position:absolute;background:rgba(196,211,219,.16)}
.stage-room:before {left:8%;right:8%;top:12%;height:1px;box-shadow:0 22px rgba(196,211,219,.11),0 44px rgba(196,211,219,.08)}
.stage-room:after {top:0;bottom:0;left:25%;width:1px;box-shadow:42px 0 rgba(196,211,219,.1),84px 0 rgba(196,211,219,.08)}
.room-line {position:absolute;left:-8%;right:-8%;bottom:29%;height:1px;background:#667b8b;transform:rotate(-4deg)}
.room-table {position:absolute;right:6%;bottom:14%;width:46%;height:24%;border-radius:3px;background:linear-gradient(160deg,#8b8070,#394a55 68%);clip-path:polygon(9% 0,100% 14%,88% 100%,0 81%)}
.room-subject {position:absolute;left:48%;bottom:16%;width:30px;height:58px;border-radius:16px 16px 8px 8px;background:linear-gradient(180deg,#b56e5e,#6e4350 48%,#405463);box-shadow:0 7px 18px rgba(0,0,0,.28)}
.room-subject:before {content:"";position:absolute;left:7px;top:-13px;width:17px;height:17px;border-radius:50%;background:#c8b7a1}
.angle-b .stage-room {transform:scaleX(-1)}
.angle-b .stage-camera span {transform:scaleX(-1)}
.angle-b .room-subject {left:54%}

.stage-chart-panel {display:grid;grid-template-columns:minmax(0,1fr) 94px;min-height:0;border:1px solid #263f57;border-radius:7px;overflow:hidden;background:#070e15}
.stage-chart {position:relative;min-width:0;background:linear-gradient(180deg,#101820,#070d13)}
.stage-chart svg {display:block;width:100%;height:100%}
.stage-chart path {fill:none;vector-effect:non-scaling-stroke}
.stage-grid {stroke:#26313b;stroke-width:.8;opacity:.65}
.signal {stroke-width:1.8;stroke-linecap:round}
.signal-orange {stroke:#ff963f}.signal-green {stroke:#36c765}.signal-purple {stroke:#9a65d1}
.stage-red-playhead {position:absolute;top:0;bottom:0;left:57%;width:2px;background:#fa3434;box-shadow:0 0 8px rgba(250,52,52,.38)}
.stage-signals {display:flex;flex-direction:column;justify-content:center;gap:8px;padding:9px;border-left:1px solid #263f57;background:#111a22;color:#aebdca;font-size:.56rem;overflow:hidden}
.stage-signals span {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stage-signals span:before {content:"";display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:2px;vertical-align:-1px}
.orange-signal:before {background:#ff963f}.green-signal:before {background:#36c765}.purple-signal:before {background:#9a65d1}

.stage-transport {display:flex;align-items:center;gap:9px;min-width:0;padding:6px 8px;border:1px solid #263f57;border-radius:7px;background:#0a131c;color:#b9c9d7;font-size:.62rem}
.stage-transport strong {display:grid;place-items:center;width:25px;height:25px;border:1px solid #53697a;border-radius:50%;color:white;font-size:.55rem}
.stage-transport b {color:#e6eef5;font-variant-numeric:tabular-nums}
.stage-tracks {position:relative;display:flex;flex:1;min-width:0;height:31px;flex-direction:column;gap:2px;padding-top:1px}
.stage-tracks i {display:block;height:8px;border-radius:2px;background:linear-gradient(90deg,#37ae50,#60d971)}
.stage-tracks i:nth-child(2) {width:92%}.stage-tracks i:nth-child(3) {width:76%}
.stage-tracks em {position:absolute;top:0;bottom:0;left:62%;width:2px;background:#ffb02e;box-shadow:0 0 6px rgba(255,176,46,.55)}

@media(max-width:900px) {
    .hero-screen-rotation {max-width:650px}
}

@media(max-width:600px) {
    .hero-screen-rotation {transform:none}
    .hero-screen-rotation .screen-card {padding:14px}
    .stage-workspace {grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-rows:190px 48px;padding:18px 2px 15px;gap:8px}
    .stage-data {padding:10px 8px 8px}
    .stage-annotations span {padding:4px 6px;font-size:.58rem}
    .stage-annotations span:last-child {display:none}
    .stageplayer-card {min-height:480px}
    .stageplayer-ui {grid-template-rows:minmax(125px,1fr) minmax(135px,.9fr) 44px}
    .stage-chart-panel {grid-template-columns:minmax(0,1fr) 76px}
    .stage-signals {padding:6px;font-size:.49rem}
    .room-subject {transform:scale(.82);transform-origin:bottom center}
}

.language-switch {display:inline-flex;align-items:center;gap:7px;margin-left:4px;padding-left:18px;border-left:1px solid #29425a;font-size:.78rem}
.language-switch a,.language-switch strong {font-size:.78rem;font-weight:750;letter-spacing:.06em}
.language-switch strong {color:var(--cyan)}

@media(max-width:900px) {
    .language-switch {margin:5px 0 0;padding:14px 0 0;border-left:0;border-top:1px solid #1d3854}
}

@media(prefers-reduced-motion:reduce) {
    .hero-screen-rotation .screen-card {transition:none;transform:none}
}

/* Contact form */
.contact-section {display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:start}
.contact-copy {max-width:650px}
.contact-details {margin-top:28px!important;font-size:.95rem!important}
.contact-details a {border-bottom:1px solid rgba(37,208,231,.4)}
.contact-form {display:grid;gap:16px;width:100%;padding:24px;border:1px solid #2a527a;border-radius:14px;background:rgba(5,16,29,.48)}
.form-row {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form label {display:grid;gap:7px;color:#c7d8e9;font-size:.78rem;font-weight:700}
.contact-form input,.contact-form textarea {width:100%;border:1px solid #365473;border-radius:8px;background:#071523;color:var(--text);font:inherit;font-size:.95rem;padding:11px 12px;outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form textarea {resize:vertical;min-height:124px}
.contact-form input:focus,.contact-form textarea:focus {border-color:var(--cyan);box-shadow:0 0 0 3px rgba(37,208,231,.12)}
.contact-form .button {border:0;cursor:pointer;width:fit-content}
.form-note {color:#7892ad;line-height:1.45}
.form-status {padding:11px 13px;border-radius:8px;background:rgba(57,217,138,.1);border:1px solid rgba(57,217,138,.35);color:#a8ecc8;font-size:.88rem}
.form-status.is-error {background:rgba(255,159,67,.1);border-color:rgba(255,159,67,.4);color:#ffd0a3}
.website-field {position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}

@media(max-width:900px) {
    .contact-section {grid-template-columns:1fr}
    .contact-form {max-width:650px}
}

@media(max-width:600px) {
    .form-row {grid-template-columns:1fr}
    .contact-form {padding:20px}
    .contact-form .button {width:100%;white-space:normal;text-align:center}
}

/* Stageplayer outcome */
.stageplayer-result {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:58px;align-items:center;margin-top:20px;margin-bottom:20px;padding-top:72px;padding-bottom:72px;border:1px solid #1d466b;border-radius:18px;background:radial-gradient(circle at 12% 15%,rgba(23,105,255,.17),transparent 42%),linear-gradient(145deg,#0d2038,#081522)}
.stageplayer-result-copy h2 {font-size:clamp(2rem,3.7vw,3.45rem);line-height:1.1;letter-spacing:-.035em;margin:0 0 20px}
.stageplayer-result-copy>p:not(.eyebrow) {color:#aec1d5;font-size:1.08rem;margin:0 0 28px}
.stageplayer-capabilities {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.stageplayer-capabilities article {min-width:0;padding:22px;border:1px solid #214260;border-radius:12px;background:rgba(6,17,31,.68)}
.stageplayer-capabilities span {color:var(--cyan);font-size:.7rem;font-weight:800;letter-spacing:.08em}
.stageplayer-capabilities h3 {margin:11px 0 7px;font-size:1.02rem}
.stageplayer-capabilities p {margin:0;color:#91aac2;font-size:.88rem;line-height:1.55}

@media(max-width:900px) {
    .stageplayer-result {grid-template-columns:1fr;gap:38px;margin-left:20px;margin-right:20px}
}

@media(max-width:600px) {
    .stageplayer-result {margin-left:12px;margin-right:12px;padding:42px 20px}
    .stageplayer-capabilities {grid-template-columns:1fr}
}
