:root
{
    color-scheme:dark;
    --bg:#0a0e1a;
    --surface:#131829;
    --text:#f5f5f7;
    --muted:#a0a8b9;
    --line:rgba(208,213,223,.14);
    --accent:#ff7a1a;
    --green:#34d399;
    --sans:var(--font-inter),sans-serif;
    --display:var(--font-fraunces),Georgia,serif;
    --mono:var(--font-jetbrains-mono),monospace;
    --motion-fast:180ms;
    --motion-slow:550ms;
    --ease:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after
{
    box-sizing:border-box;
}
html
{
    scroll-behavior:smooth;
    scroll-padding-top:100px;
}
body
{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font:15px/1.6 var(--sans);
    -webkit-font-smoothing:antialiased;
}
button,input,select,textarea
{
    font:inherit;
}
button,a,input,select,textarea,summary
{
    -webkit-tap-highlight-color:transparent;
}
a
{
    color:inherit;
    text-decoration:none;
}
button
{
    color:inherit;
    cursor:pointer;
}
button:disabled
{
    cursor:wait;
    opacity:.65;
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=button]:focus-visible
{
    outline:2px solid var(--accent);
    outline-offset:5px;
}
button[hidden],[hidden]
{
    display:none!important;
}
::selection
{
    color:var(--bg);
    background:var(--accent);
}
h1,h2,h3,p
{
    margin:0;
}
h1,h2
{
    font-family:var(--display);
    font-weight:430;
    letter-spacing:-.055em;
    line-height:1.08;
}
h1 em,h2 em
{
    font-weight:370;
    color:var(--accent);
}
h2
{
    font-size:clamp(36px,4vw,56px);
}
h3
{
    font-size:22px;
    line-height:1.35;
    font-weight:500;
    letter-spacing:-.04em;
}
p
{
    color:var(--muted);
}
.section-shell
{
    padding-left:max(5vw,24px);
    padding-right:max(5vw,24px);
    max-width:1760px;
    margin:auto;
}
.eyebrow
{
    font:10px/1.6 var(--mono);
    letter-spacing:.16em;
    color:var(--muted);
    display:flex;
    align-items:center;
    gap:10px;
}
.status-dot
{
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--accent);
    box-shadow:0 0 16px #ff7a1a60;
    flex-shrink:0;
}
.header
{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:22px 5vw;
    gap:24px;
    border-bottom:1px solid var(--line);
    position:sticky;
    top:0;
    z-index:30;
    background:rgba(10,14,26,.90);
    backdrop-filter:blur(20px);
}
.brand
{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:24px;
    font-weight:650;
    letter-spacing:-1px;
}
.brand svg
{
    width:28px;
    height:28px;
}
.brand-orange
{
    color:var(--accent);
}
.header nav
{
    display:flex;
    gap:32px;
    font-size:12px;
    color:#b6bcc9;
}
.header nav a:hover,.footer a:hover
{
    color:var(--accent);
}
.button
{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    gap:24px;
    padding:16px 23px;
    border:1px solid var(--line);
    border-radius:8px;
    font-size:13px;
    font-weight:550;
    line-height:1.3;
    background:var(--surface);
    transition:background var(--motion-fast),transform var(--motion-fast) var(--ease);
}
.button:hover
{
    transform:translateY(-2px);
    background:#202739;
}
.button span[aria-hidden]
{
    font-size:20px;
    line-height:1;
}
.button-primary
{
    color:#19120c;
    border-color:var(--accent);
    background:var(--accent);
}
.button-primary:hover
{
    background:#ff9547;
}
.button-small
{
    padding:11px 16px;
    font-size:12px;
}
.button-header
{
    color:var(--accent);
    background:transparent;
    border-color:#ff7a1a70;
}
.menu-button
{
    display:none;
}
.mobile-nav
{
    position:fixed;
    top:78px;
    left:0;
    right:0;
    background:#101523;
    z-index:29;
    padding:24px;
    border-bottom:1px solid var(--line);
}
.mobile-nav a
{
    display:block;
    padding:14px 8px;
}
.skip-link
{
    position:fixed;
    z-index:100;
    top:12px;
    left:12px;
    padding:10px;
    background:var(--accent);
    color:var(--bg);
    transform:translateY(-150%);
}
.skip-link:focus
{
    transform:none;
}
.hero
{
    position:relative;
    min-height:770px;
    height:calc(100svh - 85px);
    max-height:980px;
    display:flex;
    align-items:center;
    overflow:clip;
    background:radial-gradient(ellipse at 74% 47%,#19233370,transparent 48%);
}
.hero-copy
{
    z-index:2;
    position:relative;
    width:48%;
    padding-bottom:65px;
    pointer-events:none;
}
.hero-copy a
{
    pointer-events:auto;
}
.hero h1
{
    font-size:clamp(67px,6.2vw,98px);
    margin:29px 0 28px;
    letter-spacing:-.064em;
}
.hero-description
{
    font-size:clamp(14px,1.13vw,17px);
    line-height:1.8;
    max-width:390px;
}
.hero-actions
{
    display:flex;
    align-items:center;
    gap:23px;
    margin:30px 0;
    flex-wrap:wrap;
}
.text-link
{
    display:inline-flex;
    align-items:center;
    gap:11px;
    font-size:12px;
    font-weight:500;
}
.text-link:hover
{
    color:var(--accent);
}
.play-icon
{
    display:grid;
    place-items:center;
    border:1px solid #ffffff30;
    border-radius:50%;
    width:29px;
    height:29px;
    font-size:15px;
}
.hero-proof
{
    display:flex;
    flex-direction:column;
    gap:6px;
    color:#7e899b;
    font-size:10px;
}
.hero-proof span::before
{
    content:'✓';
    color:var(--accent);
    margin-right:9px;
}
.yard-wrap
{
    position:absolute;
    width:67%;
    right:-7%;
    height:88%;
    top:0;
}
#yard
{
    width:100%;
    height:100%;
    display:block;
    opacity:0;
    position:relative;
    z-index:1;
}
.yard-wrap.loaded #yard
{
    opacity:1;
}
.yard-still
{
    position:absolute;
    inset:0;
    overflow:hidden;
    z-index:2;
    pointer-events:none;
    opacity:1;
    transition:opacity 650ms linear;
}
.yard-poster
{
    position:absolute;
    top:0;
    left:50%;
    width:auto;
    max-width:none;
    height:100%;
    transform:translateX(-50%);
}
.yard-wrap.loaded .yard-still
{
    opacity:0;
}
.yard-wrap.live .yard-still
{
    visibility:hidden;
}
.yard-loading
{
    display:none;
    position:absolute;bottom:4%;left:25%;font-size:10px;color:var(--muted);z-index:3;
}
.yard-wrap.failed .yard-loading
{
    display:block;
}
.yard-orbit
{
    position:absolute;
    border:1px solid #7d91ae12;
    border-radius:50%;
    width:83%;
    aspect-ratio:1;
    transform:rotateX(65deg) rotate(-22deg);
    top:10%;
    left:10%;
}
.yard-tag
{
    position:absolute;
    top:14%;
    left:28%;
    z-index:2;
    display:flex;
    align-items:center;
    gap:10px;
    font:9px var(--mono);
    letter-spacing:.1em;
    border:1px solid var(--line);
    border-radius:30px;
    padding:10px 15px;
    background:#101622dd;
}
.yard-tag .status-dot
{
    background:var(--green);
    box-shadow:0 0 10px #34d39950;
}
.scene-status
{
    position:absolute;
    left:25%;
    bottom:12%;
    background:#131829ef;
    border:1px solid #d0d5df30;
    border-radius:12px;
    padding:15px 21px 15px 15px;
    display:flex;
    align-items:center;
    gap:14px;
    z-index:3;
    box-shadow:0 12px 38px #0005;
}
.scene-status-icon
{
    background:#ff7a1a17;
    border:1px solid #ff7a1a35;
    width:37px;
    height:37px;
    display:grid;
    place-items:center;
    border-radius:9px;
    color:var(--accent);
    font-size:22px;
}
.scene-status span
{
    display:block;
    color:#8f9bad;
    font:9px var(--mono);
    margin-bottom:4px;
    letter-spacing:.06em;
}
.scene-status strong
{
    font-size:12px;
    font-weight:500;
}
.scene-toolbar
{
    position:absolute;
    right:16%;
    bottom:2%;
    display:flex;
    align-items:center;
    gap:8px;
    z-index:4;
}
.scene-toolbar>span
{
    font:8px var(--mono);
    letter-spacing:.1em;
    color:#758195;
    margin-right:9px;
}
.scene-toolbar button
{
    width:32px;
    height:32px;
    border:1px solid var(--line);
    border-radius:50%;
    background:#101622;
    font-size:15px;
}
.hero-bottom
{
    position:absolute;
    bottom:30px;
    left:5vw;
    right:5vw;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-top:1px solid var(--line);
    padding-top:23px;
    font:9px var(--mono);
    letter-spacing:.1em;
    color:#8490a3;
}
.hero-bottom a
{
    display:flex;
    align-items:center;
    gap:13px;
}
.scroll-line
{
    width:1px;
    height:21px;
    background:linear-gradient(var(--accent),#ff7a1a00);
}
.sector-strip
{
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    padding:27px 5vw;
    color:#bbc2ce;
    font-size:13px;
}
.sector-strip>span:first-child
{
    font:9px/1.6 var(--mono);
    letter-spacing:.1em;
    max-width:170px;
    color:#778397;
}
.strip-cross
{
    color:var(--accent);
    font-size:18px;
}
.flow-section,.solutions-section,.platform-section,.faq-section
{
    padding-top:88px;
    padding-bottom:88px;
}
.section-top
{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    margin-bottom:28px;
}
.section-top>p:last-child:not(.eyebrow)
{
    font-size:12px;
    line-height:1.7;
}
.split-heading
{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:70px;
}
.split-heading>p
{
    max-width:325px;
    font-size:14px;
    line-height:1.8;
}
.flow-grid
{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:42px;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
.flow-step
{
    padding:26px 25px 26px 0;
    border:0;
    border-right:1px solid var(--line);
    border-top:2px solid transparent;
    margin-top:-1px;
    background:transparent;
    text-align:left;
    transition:background var(--motion-fast),border-color var(--motion-fast);
}
.flow-step:not(:first-child)
{
    padding-left:25px;
}
.flow-step:last-child
{
    border-right:0;
}
.flow-step:hover,.flow-step.active
{
    background:linear-gradient(#ff7a1a07,transparent);
    border-top-color:var(--accent);
}
.step-number
{
    display:flex;
    justify-content:space-between;
    font:11px var(--mono);
    color:#737f91;
    margin-bottom:40px;
}
.step-number span
{
    color:var(--accent);
    font-size:20px;
}
.flow-step h3
{
    font-size:26px;
    margin-bottom:14px;
    font-family:var(--display);
}
.flow-step p
{
    font-size:12px;
    line-height:1.8;
    min-height:72px;
}
.step-caption
{
    font:8px var(--mono);
    letter-spacing:.09em;
    display:block;
    color:#8c98a9;
    margin-top:29px;
}
.small-note
{
    font-size:11px;
    color:#798599;
    max-width:790px;
    margin-top:23px;
}
.experience-section
{
    display:grid;
    grid-template-columns:1fr 1fr;
    position:relative;
    min-height:620px;
    align-items:center;
    padding-top:55px;
    padding-bottom:55px;
    background:linear-gradient(125deg,#151b2a,#0c111d 70%);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    overflow:hidden;
}
.experience-content
{
    z-index:2;
    max-width:540px;
    position:relative;
}
.experience-content h2
{
    margin:24px 0;
    font-size:clamp(36px,4vw,56px);
}
.experience-content>p:not(.eyebrow)
{
    font-size:14px;
    line-height:1.9;
    max-width:390px;
}
.check-list
{
    list-style:none;
    margin:26px 0 30px;
    padding:0;
    font-size:12px;
    color:#c5cad5;
}
.check-list li
{
    padding:7px 0;
}
.check-list li::before
{
    content:'✓';
    color:var(--accent);
    margin-right:12px;
}
.demo-caption
{
    display:block;
    margin-top:13px;
    color:#828da1;
    font-size:10px;
}
.tablet-wrap
{
    height:510px;
    width:100%;
    position:relative;
}
.tablet-wrap canvas
{
    width:100%;
    height:100%;
    position:relative;
    z-index:1;
}
.tablet-poster
{
    width:100%;
    height:100%;
    object-fit:contain;
    position:absolute;
}
.tablet-wrap.loaded .tablet-poster
{
    display:none;
}
.tablet-halo
{
    width:95%;
    aspect-ratio:1;
    border-radius:50%;
    background:radial-gradient(#ff7a1a0c,transparent 65%);
    position:absolute;
    inset:0;
}
.tablet-label
{
    display:flex;
    align-items:center;
    gap:9px;
    position:absolute;
    bottom:8px;
    left:50%;
    transform:translateX(-50%);
    white-space:nowrap;
    z-index:2;
    font:8px var(--mono);
    letter-spacing:.13em;
}
.section-index
{
    font:9px var(--mono);
    color:#7d8ba0;
}
.solutions-layout
{
    margin-top:50px;
}
.solution-panel
{
    display:grid;
    grid-template-columns:1.2fr 1fr;
    min-height:460px;
    align-items:center;
    background:radial-gradient(ellipse at 24% 55%,#1a233675,transparent 60%);
}
.solution-image-wrap
{
    height:410px;
}
.solution-image-wrap img
{
    width:100%;
    height:100%;
    object-fit:contain;
}
.solution-copy
{
    padding:35px 40px;
}
.industry-examples
{
    list-style:none;
    padding:0;
    margin:22px 0 0;
}
.industry-examples li
{
    padding:17px 0;
    border-top:1px solid var(--line);
}
.industry-examples h3
{
    font:500 18px/1.4 var(--sans);
    margin:0 0 6px;
    letter-spacing:-.03em;
}
.industry-examples p
{
    font-size:13px;
    line-height:1.7;
}
.solution-copy>p:not(.eyebrow)
{
    font-size:13px;
    line-height:1.8;
}
.solution-copy a
{
    margin-top:25px;
    color:var(--accent);
}
.platform-section
{
    border-top:1px solid var(--line);
    padding-top:85px;
}
.platform-intro
{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:60px;
    margin-top:26px;
}
.platform-intro>p
{
    max-width:315px;
    font-size:14px;
    line-height:1.8;
}
.capabilities
{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px;
    margin-top:28px;
}
.capability-icon
{
    width:45px;
    height:45px;
    display:grid;
    place-items:center;
    border:1px solid #ff7a1a40;
    border-radius:12px;
    color:var(--accent);
    font-size:23px;
    margin-bottom:23px;
}
.capabilities h3
{
    font-size:17px;
    margin-bottom:12px;
}
.capabilities p
{
    font-size:12px;
    line-height:1.9;
}
.contact-section
{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9%;
    background:radial-gradient(ellipse at 0 40%,#ff7a1a0e,transparent 60%),#101521;
    padding-top:100px;
    padding-bottom:100px;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}
.contact-copy
{
    padding-top:30px;
}
.contact-copy h2
{
    margin:25px 0;
}
.contact-copy>p:not(.eyebrow)
{
    max-width:365px;
    font-size:14px;
    line-height:1.9;
}
.contact-steps
{
    padding:0;
    margin:47px 0 0;
    list-style:none;
    font-size:12px;
    max-width:350px;
}
.contact-steps li
{
    border-top:1px solid var(--line);
    padding:17px 0;
    display:flex;
    gap:25px;
    align-items:center;
}
.contact-steps span
{
    font:9px var(--mono);
    color:var(--accent);
}
.contact-form
{
    padding:32px;
    background:#161c2b;
    border:1px solid #ffffff19;
    border-radius:16px;
    box-shadow:0 22px 70px #0002;
}
.form-kicker
{
    font:9px var(--mono);
    color:var(--accent);
    letter-spacing:.13em;
}
.contact-form h3
{
    font-size:23px;
    margin:12px 0 30px;
}
.contact-form label
{
    display:block;
    font-size:12px;
    font-weight:500;
    margin-bottom:18px;
    color:#bbc3d2;
}
.form-row
{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}
input,select,textarea
{
    display:block;
    width:100%;
    padding:13px 12px;
    border:1px solid #ffffff19;
    border-radius:7px;
    background:#0c111d;
    color:var(--text);
    font-size:12px;
    margin-top:7px;
    transition:border-color var(--motion-fast);
}
input:focus,textarea:focus,select:focus
{
    border-color:var(--accent);
}
textarea
{
    resize:vertical;
    min-height:90px;
}
::placeholder
{
    color:#6f7b90;
}
.optional
{
    color:#79869b;
    font-weight:400;
    padding-left:5px;
}
.contact-form .consent
{
    display:flex;
    gap:10px;
    align-items:flex-start;
    font-size:10px;
    font-weight:400;
    line-height:1.7;
}
.consent input
{
    width:14px;
    height:14px;
    flex-shrink:0;
    margin:2px 0 0;
    accent-color:var(--accent);
}
.inline-link
{
    background:none;
    padding:0;
    border:0;
    color:inherit;
    font-size:inherit;
    text-decoration:underline;
    text-underline-offset:3px;
}
.form-submit
{
    width:100%;
    justify-content:space-between;
}
.form-footnote
{
    font-size:9px;
    text-align:center;
    margin-top:14px;
    color:#7f8ca1;
}
.form-status:not(:empty)
{
    margin-top:16px;
    font-size:12px;
    color:var(--green);
}
.form-status.error
{
    color:#ffaaa5;
}
.honey
{
    position:absolute;
    left:-9999px;
}
.faq-section
{
    display:grid;
    grid-template-columns:.9fr 1.4fr;
    gap:12px 80px;
}
.faq-section>.eyebrow
{
    grid-column:1/-1;
    margin-bottom:25px;
}
.faq-section h2
{
    font-size:48px;
}
.faq-list details
{
    border-bottom:1px solid var(--line);
    padding:0 0 22px;
    margin-bottom:22px;
}
summary
{
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
    list-style:none;
    cursor:pointer;
    font-size:13px;
}
summary::-webkit-details-marker
{
    display:none;
}
summary span
{
    color:var(--accent);
    font-size:23px;
    font-weight:300;
}
details[open] summary span
{
    transform:rotate(45deg);
}
details p
{
    font-size:12px;
    line-height:1.9;
    margin-top:18px;
    max-width:540px;
}
.footer
{
    border-top:1px solid var(--line);
    padding-top:35px;
    padding-bottom:26px;
    overflow:hidden;
}
.footer-wordmark
{
    font-size:36px;
    line-height:1.1;
    font-weight:650;
    letter-spacing:-.055em;
    color:#d1d6df;
}
.footer-wordmark>span:first-child
{
    color:var(--accent);
}
.footer-bottom
{
    border-top:1px solid var(--line);
    padding-top:24px;
    margin-top:25px;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
    color:#8491a4;
    font-size:10px;
}
.footer-bottom>div
{
    display:flex;
    gap:24px;
}
dialog
{
    color:var(--text);
    background:var(--bg);
    border:1px solid #ffffff30;
    border-radius:16px;
    padding:0;
    max-height:94svh;
}
dialog::backdrop
{
    background:#030610d9;
    backdrop-filter:blur(10px);
}
.yms-dialog
{
    width:min(1280px,94vw);
}
.dialog-toolbar
{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px 23px;
    border-bottom:1px solid var(--line);
    gap:25px;
}
.dialog-toolbar strong
{
    display:block;
    font-size:14px;
    font-weight:500;
}
.dialog-toolbar span
{
    display:block;
    font-size:10px;
    color:var(--muted);
    margin-top:4px;
}
.dialog-close
{
    border:1px solid var(--line);
    width:35px;
    height:35px;
    background:var(--surface);
    border-radius:50%;
    font-size:24px;
    flex-shrink:0;
}
.yms-dialog .dialog-close
{
    display:grid;
    place-items:center;
    padding:0;
    line-height:1;
    transition:color var(--motion-fast),background var(--motion-fast),border-color var(--motion-fast);
}
.yms-dialog .dialog-close svg
{
    display:block;
    width:20px;
    height:20px;
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
}
.yms-dialog .dialog-close:hover,.yms-dialog .dialog-close:focus-visible
{
    color:#ff7474;
    background:#ef444426;
    border-color:#ef4444;
}
.yms-dialog iframe
{
    width:100%;
    height:min(73svh,752px);
    border:0;
    display:block;
}
.privacy-dialog
{
    width:min(630px,94vw);
    padding:40px;
}
.privacy-dialog>.dialog-close
{
    position:absolute;
    right:18px;
    top:18px;
}
.privacy-dialog h2
{
    font-size:40px;
    margin:25px 0;
}
.privacy-dialog p:not(.eyebrow)
{
    font-size:13px;
    margin:15px 0;
}
.privacy-done
{
    margin-top:15px;
}
@media(min-width:1700px)
{
    .hero h1{font-size:106px;}
}
@media(max-width:1100px)
{
    .header nav{gap:20px;}
    .hero{min-height:720px;}
    .hero-copy{width:51%;}
    .hero h1{font-size:76px;}
    .yard-wrap{right:-13%;width:73%;}
    .hero-actions{gap:15px;}
    .hero-actions .button{font-size:11px;padding:15px;}
    .hero-actions .text-link{font-size:11px;}
    .split-heading{gap:35px;}
    .split-heading>p{max-width:265px;}
    .flow-step{padding-right:17px;}
    .flow-step:not(:first-child){padding-left:17px;}
    .capabilities{gap:30px;}
    .contact-section{gap:5%;}
    .contact-form{padding:25px;}
    .form-row{grid-template-columns:1fr;gap:0;}
    .contact-copy h2{font-size:48px;}
}
@media(max-width:900px)
{
    html{scroll-padding-top:82px;}
    .header{padding:18px 22px;gap:15px;}
    .brand{font-size:22px;gap:9px;}
    .brand svg{width:23px;}
    .header nav{display:none;}
    .button-header{margin-left:auto;padding:10px 12px;font-size:10px;gap:10px;}
    .menu-button{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:8px 0 8px 8px;}
    .menu-button span{width:20px;height:1px;background:var(--text);}
    .hero{height:auto;max-height:none;min-height:960px;padding-top:53px;display:block;}
    .hero-copy{width:100%;padding-bottom:0;}
    .hero .eyebrow{font-size:8px;}
    .hero h1{font-size:clamp(54px,12.5vw,91px);margin:24px 0 22px;}
    .hero-description{font-size:13px;max-width:330px;}
    .hero-actions{margin-top:25px;}
    .hero-actions .button{font-size:11px;padding:14px 16px;gap:13px;}
    .hero-proof{flex-direction:row;flex-wrap:wrap;gap:5px 12px;font-size:8px;max-width:360px;}
    .hero-proof span::before{margin-right:5px;}
    .yard-wrap{position:relative;right:auto;top:auto;width:calc(100% + 64px);margin-left:-32px;height:420px;margin-top:-15px;}
    .yard-tag{top:10%;left:27%;font-size:7px;padding:8px 10px;}
    .scene-status{bottom:9%;left:19%;padding:11px;gap:9px;}
    .scene-status strong{font-size:10px;}
    .scene-status span{font-size:7px;}
    .scene-status-icon{width:28px;height:28px;font-size:17px;}
    .scene-toolbar{right:13%;bottom:0;}
    .scene-toolbar>span{font-size:7px;}
    .hero-bottom{bottom:20px;left:24px;right:24px;font-size:7px;padding-top:15px;}
    .hero-bottom>span{display:none;}
    .sector-strip{display:grid;grid-template-columns:1fr 1fr;padding:22px 24px;gap:16px 20px;font-size:11px;}
    .sector-strip>span:first-child{font-size:8px;}
    .strip-cross{display:none;}
    .flow-section,.solutions-section,.platform-section,.faq-section{padding-top:70px;padding-bottom:70px;}
    .section-top{margin-bottom:25px;}
    .section-top>p:last-child:not(.eyebrow),.section-index{display:none;}
    .eyebrow{font-size:8px;}
    h2{font-size:40px;}
    .split-heading,.platform-intro{display:block;}
    .split-heading>p,.platform-intro>p{margin-top:24px;max-width:100%;font-size:12px;}
    .flow-grid{grid-template-columns:1fr 1fr;margin-top:36px;}
    .flow-step{padding:22px 16px 24px 0;}
    .flow-step:not(:first-child){padding-left:17px;}
    .flow-step:nth-child(3){padding-left:0;border-top:1px solid var(--line);}
    .flow-step:nth-child(4){border-top:1px solid var(--line);}
    .flow-step:nth-child(2){border-right:0;}
    .step-number{margin-bottom:20px;font-size:9px;}
    .flow-step h3{font-size:24px;}
    .flow-step p{font-size:11px;min-height:85px;}
    .step-caption{font-size:6px;letter-spacing:.03em;margin-top:20px;}
    .small-note{font-size:10px;}
    .experience-section{grid-template-columns:1fr;padding-top:64px;padding-bottom:20px;}
    .experience-content h2{font-size:40px;}
    .experience-content>p:not(.eyebrow){font-size:12px;}
    .check-list{font-size:11px;margin-top:20px;}
    .tablet-wrap{width:100%;height:410px;}
    .tablet-label{bottom:8px;left:50%;font-size:7px;}
    .solution-panel{grid-template-columns:1fr;}
    .solution-image-wrap{height:300px;}
    .solution-copy{padding:5px 0 0;}
    .industry-examples h3{font-size:17px;}
    .solution-copy>p:not(.eyebrow){font-size:12px;}
    .capabilities{grid-template-columns:1fr;gap:27px;margin-top:40px;}
    .capabilities article{padding-left:65px;position:relative;}
    .capability-icon{position:absolute;left:0;top:0;width:39px;height:39px;}
    .capabilities h3{font-size:16px;}
    .capabilities p{font-size:12px;}
    .contact-section{grid-template-columns:1fr;padding-top:50px;padding-bottom:55px;gap:40px;}
    .contact-copy{padding-top:0;}
    .contact-copy h2{font-size:40px;}
    .contact-copy>p:not(.eyebrow){font-size:12px;}
    .contact-steps{margin-top:25px;font-size:11px;}
    .contact-form{padding:23px 20px;}
    .contact-form h3{font-size:20px;}
    .contact-form label{font-size:11px;}
    input,select,textarea{font-size:16px;padding:12px;}
    .contact-form .consent{font-size:10px;}
    .faq-section{display:block;}
    .faq-section h2{font-size:40px;margin:22px 0 40px;}
    summary{font-size:12px;}
    .footer{padding-top:30px;}
    .footer-wordmark{font-size:30px;}
    .footer-bottom{display:grid;grid-template-columns:1fr 1fr;font-size:9px;gap:20px;}
    .footer-bottom>span:nth-child(2){text-align:right;}
    .footer-bottom>span:last-child{text-align:right;}
    .footer-bottom>div{gap:16px;}
    .dialog-toolbar{padding:13px 14px;}
    .dialog-toolbar span{font-size:9px;}
    .yms-dialog iframe{height:76svh;}
    .privacy-dialog{padding:35px 24px;}
    .privacy-dialog h2{font-size:32px;}
}
@media(prefers-reduced-motion:reduce)
{
    html{scroll-behavior:auto;}
    *,*::before,*::after{animation:none!important;transition:none!important;}
    .button:hover{transform:none;}
}

#tablet[role=button]
{
    cursor:pointer;
}

/* Close views keep the registration legible while the yard remains the setting. */
#scene-fade
{
    opacity:0;
    position:absolute;
    inset:0;
    background:var(--bg);
    z-index:2;
    pointer-events:none;
}
#registration-preview
{
    position:absolute;
    top:110px;
    left:3vw;
    width:49%;
    z-index:5;
    background:#0a0e1a;
    border:1px solid #ff7a1a55;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 20px 60px #0005;
}
.registration-heading
{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:18px;
    border-bottom:1px solid var(--line);
}
.registration-heading span
{
    font:9px var(--mono);
    color:var(--accent);
    letter-spacing:.07em;
}
#registration-caption
{
    display:block;
    font-size:15px;
    font-weight:500;
    margin-top:6px;
}
.registration-screen
{
    width:100%;
    aspect-ratio:1280 / 752;
    overflow:hidden;
    position:relative;
}
#registration-frame,#registration-zoom-frame
{
    display:block;
    width:960px;
    height:564px;
    border:0;
    transform:scale(var(--registration-scale,1));
    transform-origin:top left;
}
#registration-preview>p
{
    border-top:1px solid var(--line);
    padding:10px 18px;
    font-size:10px;
}
.hero.is-registering .hero-copy
{
    visibility:hidden;
}
.scene-timeline
{
    position:absolute;
    left:25%;
    bottom:-3%;
    width:59%;
    height:16px;
    padding:0;
    margin:0;
    z-index:4;
    background:transparent;
    border:0;
    accent-color:var(--accent);
    cursor:pointer;
}
@media(max-width:900px)
{
    #registration-preview{top:30px;left:24px;width:calc(100% - 48px);}
    .registration-heading{padding:12px;gap:8px;}
    .registration-heading .button{padding:8px;font-size:9px;max-width:95px;}
    #registration-caption{font-size:13px;}

    #registration-preview>p{font-size:8px;padding:8px 12px;}
    .hero-copy{min-height:390px;}
    .scene-timeline{left:18%;width:69%;bottom:-6%;}
    .scene-toolbar{bottom:-1%;}
    .yard-wrap{margin-bottom:38px;}
    .hero{padding-bottom:80px;}
}

#yard,.yard-still
{
    mask-image:linear-gradient(90deg,transparent,#000 15%,#000 91%,transparent),linear-gradient(0deg,transparent,#000 14%,#000 91%,transparent);
    mask-composite:intersect;
}

.registration-actions
{
    display:flex;
    gap:8px;
    align-items:center;
}
.registration-zoom-dialog
{
    width:min(1400px,96vw,calc((94svh - 90px) * 1280 / 752));
}
@media(max-width:900px)
{
    .registration-actions{gap:5px;}
    .registration-actions .button{max-width:86px;}
    #registration-open{display:none;}
}

.registration-driver-status
{
    padding:9px 18px;
    font-size:12px;
    color:var(--muted);
    border-bottom:1px solid var(--line);
}
.registration-driver-status[data-status=required]
{
    color:#ffaaa5;
    background:#ef444418;
    border-left:3px solid #ef4444;
}
.registration-driver-status[data-status=complete]
{
    color:#6ee7b7;
    background:#34d39912;
    border-left:3px solid var(--green);
}

/* Phone layout uses native YMS breakpoints instead of a scaled desktop window. */
@media(max-width:900px)
{
    .header{padding:12px 16px;gap:12px;}
    .menu-button{min-width:44px;min-height:44px;justify-content:center;align-items:center;padding:8px;}
    .mobile-nav{top:69px;}
    .hero{min-height:0;padding-top:30px;padding-bottom:76px;}
    .hero-copy{min-height:350px;}
    .hero h1{font-size:clamp(48px,12vw,80px);margin:17px 0;}
    .hero-description{font-size:13px;line-height:1.65;}
    .desktop-break{display:none;}
    .hero-proof{display:none;}
    .hero-actions{margin:20px 0;}
    .yard-wrap{width:calc(100% + 32px);margin:0 -16px 32px;height:390px;}
    .yard-tag{top:12px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:8px;}
    .scene-status{left:12px;right:12px;bottom:64px;padding:10px 12px;}
    .scene-status strong{font-size:12px;}
    .scene-status span{font-size:9px;}
    .scene-toolbar{bottom:8px;right:12px;left:12px;justify-content:flex-end;}
    .scene-toolbar button{width:44px;height:44px;}
    .scene-toolbar>span{margin-right:auto;font-size:8px;}
    .scene-timeline{left:12px;width:calc(100% - 24px);bottom:-28px;height:32px;}
    #registration-preview{top:24px;left:16px;width:calc(100% - 32px);}
    .registration-heading{padding:10px;}
    .registration-heading .button{min-height:44px;max-width:none;font-size:11px;}
    .registration-driver-status{padding:8px 10px;font-size:11px;}
    .registration-zoom-dialog,.yms-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;}
    .registration-zoom-dialog[open],.yms-dialog[open]{display:flex;flex-direction:column;}
    .dialog-toolbar{flex:0 0 auto;padding:12px 16px;}
    .dialog-close{width:44px;height:44px;}
    .yms-dialog iframe{height:0;min-height:0;flex:1;}
    .registration-zoom-dialog .registration-screen{flex:1;aspect-ratio:auto;}
    #registration-zoom-frame{width:100%;height:100%;transform:none;}
    .employee-controls button{min-height:44px;}
    #employee-timeline{height:32px;}
}

.frame-message
{
    position:absolute;inset:0;z-index:20;background:#0a0e1af5;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;font-size:13px;
}
.frame-message button
{
    padding:12px 18px;min-height:44px;border:1px solid var(--accent);border-radius:8px;background:#ff7a1a19;
}
.yms-dialog{position:fixed;}
.yms-dialog>.frame-message{top:80px;}
@media(max-width:900px)
{
    .yard-loading{left:12px;bottom:112px;padding:5px 8px;border-radius:6px;background:#0a0e1abf;}
}
@media(max-width:400px)
{
    .header{padding-left:12px;padding-right:12px;gap:8px;}
    .brand{font-size:20px;gap:8px;}
    .button-header{padding:10px;font-size:10px;}
    .button-header span[aria-hidden]{display:none;}
    .flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .flow-step h3{hyphens:auto;overflow-wrap:anywhere;}
}

/* Consistent page rhythm and navigation across the product sections. */
h2,h3
{
    text-wrap:balance;
}
p
{
    text-wrap:pretty;
}
.section-shell:not(.hero)
{
    max-width:1440px;
}
.header nav a
{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    border-bottom:1px solid transparent;
    transition:color 180ms,border-color 180ms;
}
.header nav a:hover,.header nav a:focus-visible
{
    border-bottom-color:var(--accent);
}
.hero-description
{
    max-width:420px;
}
.hero-proof
{
    flex-direction:row;
    flex-wrap:wrap;
    gap:8px 18px;
    font-size:11px;
    max-width:460px;
}
.hero-actions .text-link
{
    min-height:44px;
}
.scene-toolbar button
{
    min-width:40px;
    min-height:40px;
}
.scene-toolbar button:hover
{
    border-color:#ff7a1a80;
    background:#202739;
}
.scene-timeline,#employee-timeline
{
    font-variant-numeric:tabular-nums;
}
.sector-strip
{
    justify-content:center;
    gap:32px;
    padding-block:23px;
}
.strip-cross
{
    font-size:15px;
    color:#5a6578;
}
.flow-step
{
    border-radius:0;
    padding-block:28px;
}
.flow-step h3
{
    font:550 22px/1.2 var(--sans);
    letter-spacing:-.035em;
}
.flow-step p
{
    font-size:13px;
    max-width:235px;
}
.step-number
{
    color:var(--accent);
    margin-bottom:24px;
    align-items:center;
    width:100%;
}
.step-caption
{
    font-size:9px;
    letter-spacing:.04em;
    margin-top:22px;
}
.perspective-links
{
    display:inline-flex;
    gap:4px;
    margin:22px 0 4px;
    padding:4px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#0a0e1a66;
}
.perspective-links a
{
    display:inline-flex;
    align-items:center;
    gap:16px;
    min-height:44px;
    padding:10px 16px;
    border-radius:8px;
    font-size:12px;
    color:var(--muted);
    transition:background 180ms,color 180ms;
}
.perspective-links [aria-current],.perspective-links a:hover
{
    background:#263044;
    color:var(--text);
}
.experience-content h2
{
    margin-top:22px;
}
.experience-content>p:not(.eyebrow)
{
    max-width:440px;
}
.check-list
{
    margin-block:22px;
    font-size:13px;
}
.solution-panel
{
    margin-top:20px;
    border:1px solid var(--line);
    border-radius:18px;
    background:radial-gradient(ellipse at 24% 55%,#1a233675,transparent 65%),#0e1420;
}
.capabilities-group
{
    border-top:1px solid var(--line);
    margin-top:40px;
    padding-top:30px;
}
.capabilities h3
{
    font-size:16px;
}
.capabilities p
{
    font-size:13px;
    line-height:1.75;
}
.capability-icon
{
    width:38px;
    height:38px;
    border-radius:10px;
    margin-bottom:16px;
    font-size:20px;
}
.faq-section
{
    border-top:1px solid var(--line);
}
.faq-list summary
{
    min-height:44px;
    font-size:14px;
}
.faq-list details
{
    padding-bottom:16px;
    margin-bottom:16px;
}
.contact-form
{
    box-shadow:0 12px 40px #0002;
    border-radius:18px;
}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea
{
    min-height:46px;
    font-size:14px;
}
.contact-form .consent
{
    font-size:11px;
}
.consent input
{
    width:18px;
    height:18px;
}
.footer-heading
{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
}
.footer-heading .text-link
{
    min-height:44px;
    color:var(--muted);
}
@media(max-width:900px)
{
    .hero-proof{display:none;}
    .sector-strip{justify-content:normal;gap:14px 20px;}
    .step-caption{font-size:8px;}
    .flow-step p{font-size:12px;min-height:0;}
    .flow-step h3{font-size:21px;}
    .flow-step{display:flex;flex-direction:column;}
    .step-caption{padding-top:20px;margin-top:auto;}
    .tablet-wrap{height:370px;margin-top:12px;}
    .experience-section{padding-bottom:36px;}
    .solution-copy{padding:0 22px 28px;}
    .solution-image-wrap{height:260px;}
    .capabilities-group{margin-top:30px;}
    .capabilities article{padding-left:56px;}
    .faq-list summary{font-size:13px;}
    .contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:16px;}
    .footer-heading .text-link{font-size:11px;}
    .perspective-links a{padding-inline:12px;font-size:12px;}
}

@media(max-width:400px)
{
    .flow-step h3{font-size:18px;}
}
