:root{color-scheme:light;--ink:#152744;--blue:#2154e8;--muted:#53617b;--line:#d5deef;--pale:#f1f5ff;--white:#fff;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6;background:#fff}
*{box-sizing:border-box}body{margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--blue);text-underline-offset:.24em}a:hover{text-decoration-thickness:2px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #d57600;outline-offset:5px}main:focus{outline:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.12;font-weight:600;letter-spacing:-.035em}h1{font-size:4.6rem;max-width:18ch}h2{font-size:2.8rem;max-width:20ch}h3{font-size:1.7rem}p+p{margin-top:1.2em}p{overflow-wrap:break-word}section[id]{scroll-margin-top:1.5rem}.wrap{width:min(1248px,calc(100% - 80px));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-10rem;padding:1rem;background:#fff;z-index:10}.skip-link:focus{top:1rem}.site-header{display:flex;align-items:center;gap:2.4rem;min-height:104px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:.8rem;align-items:center;color:var(--ink);font-size:1.35rem;letter-spacing:-.04em;font-weight:700;text-decoration:none;flex-shrink:0}.brand img{width:46px;height:50px}.site-header nav{display:flex;flex-wrap:wrap;gap:2.4rem;margin-left:auto}.site-header nav a{font-size:.95rem;font-weight:600;color:var(--ink);padding:.6rem 0;text-decoration:none}.site-header nav a[aria-current]{color:var(--blue);border-bottom:2px solid}.language{font-size:.9rem;text-decoration:none;border-left:1px solid var(--line);padding-left:2rem}.eyebrow{text-transform:uppercase;font-size:.74rem;letter-spacing:.13em;font-weight:700;color:var(--blue);margin-bottom:1.7rem}.hero{padding-block:5.5rem 5rem}.hero h1{margin-bottom:1.7rem}.hero .lead{font-size:1.14rem;color:var(--muted);max-width:53ch}.home-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:5rem;align-items:center}.home-hero h1{font-size:4.05rem;max-width:18ch}.actions{display:flex;gap:1rem 1.6rem;align-items:center;flex-wrap:wrap;margin-top:1.75rem}.actions a{font-weight:600;text-decoration:none;padding:.4rem 0}.hero .actions a:first-child,.cta-band .actions a:first-child{padding:.85rem 1.1rem;background:var(--blue);color:white;border-radius:5px}.note{font-size:.88rem;color:var(--muted);max-width:48ch;margin-top:1rem}.workflow{background:var(--pale);padding:2.4rem;border:1px solid #e4eafd;border-radius:12px}.workflow .eyebrow{margin-bottom:1.5rem}.workflow ol{padding:0;margin:0;list-style:none}.workflow li{background:white;padding:1.2rem 1.15rem;display:flex;gap:1rem;border:1px solid var(--line);border-radius:7px;position:relative}.workflow li+li{margin-top:1.7rem}.workflow li+li:before{content:'↓';color:var(--blue);position:absolute;top:-1.9rem;left:1.25rem}.workflow li>span{font-size:.78rem;color:var(--blue);padding-top:.3rem}.workflow li strong{font-size:1.14rem}.workflow li p{font-size:.85rem;color:var(--muted);line-height:1.45;margin-top:.25rem}.diagram-note{font-size:.78rem;color:var(--muted);margin-top:1.5rem}.section{padding-block:5rem}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:6rem}.split>div p{max-width:62ch}.split>div{min-width:0}.split p{color:var(--muted)}.work-band,.about-band{background:var(--pale);border-block:1px solid var(--line)}.section-heading{margin-bottom:2.8rem}.section-heading .eyebrow{margin-bottom:.8rem}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.product-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:2rem}.project-number{font-size:.73rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}.product-card h3{font-size:2rem;margin-bottom:1rem}.product-card>p:not(.project-number){font-size:.96rem;color:var(--muted);min-height:6.7em}.product-card>p strong{font-weight:400}.product-card>p a{white-space:normal;display:block;font-weight:600;margin-top:.6rem}.screen{min-width:0}.product-card .screen{margin-top:1.6rem}.image-link{display:block;text-decoration:none;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#f8f9fc}.image-frame{display:flex;height:270px;align-items:center;justify-content:center;padding:.8rem}.image-frame img{width:100%;height:100%;object-fit:contain}.enlarge{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;padding:.65rem .85rem;border-top:1px solid var(--line);background:#fff}.image-link:hover{border-color:var(--blue)}figcaption{font-size:.91rem;line-height:1.5;margin-top:.8rem}figcaption small{display:block;font-size:.73rem;color:var(--muted);margin-top:.3rem}.cta-band{padding-block:5rem;display:flex;justify-content:space-between;gap:3rem}.cta-band h2{max-width:24ch;margin-bottom:1.2rem}.cta-band p:not(.eyebrow){max-width:65ch;color:var(--muted)}.big-arrow{font-size:7rem;line-height:1;color:var(--blue);align-self:center}.case-section{border-top:1px solid var(--line)}.case-section:nth-of-type(3){background:var(--pale)}.case-copy{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.4fr);gap:5rem;margin-bottom:3rem}.case-copy .eyebrow{margin-bottom:1rem}.case-copy h3{margin-bottom:1.2rem;max-width:26ch}.case-copy p{color:var(--muted);max-width:70ch}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.steps{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1.2fr);gap:2rem;padding-block:2.5rem;border-bottom:1px solid var(--line)}.step-number{font-size:.86rem;color:var(--blue);padding-top:.2rem}.step h2{font-size:1.8rem}.step p{color:var(--muted)}.about-mark{margin-top:2rem;width:85px}.contact-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:5rem;align-items:center}.contact-hero h1{font-size:3.7rem}.contact-card{background:var(--blue);color:#fff;padding:2.5rem;border-radius:10px;min-width:0}.contact-card .eyebrow{color:#fff}.email{font-size:1.65rem;line-height:1.3;display:block;color:#fff;text-decoration:none;overflow-wrap:anywhere}.contact-card .actions a{color:#fff!important;border:1px solid #a9bfff}.contact-person{font-size:.85rem;margin-top:2rem;color:#e1e9ff}.contact-details{border-top:1px solid var(--line)}footer{background:#142a53;color:white}.footer-inner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;padding-block:3.5rem;align-items:start}footer .brand,footer a{color:white}footer p{font-size:.88rem;color:#d5dff3}footer .copyright{font-size:.76rem;margin-top:.8rem}footer a{overflow-wrap:anywhere}dialog{padding:0;border:0;border-radius:10px;width:min(1200px,94vw);max-width:94vw;max-height:92vh;max-height:92dvh;color:var(--ink)}dialog::backdrop{background:rgb(12 26 53 / .8)}dialog[open]{display:flex;flex-direction:column}.dialog-toolbar{display:flex;align-items:center;gap:1rem;justify-content:space-between;border-bottom:1px solid var(--line);padding:1rem;flex-shrink:0}.dialog-toolbar p{font-size:.95rem}.dialog-toolbar button{border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);padding:.45rem .8rem;flex-shrink:0}.dialog-content{overflow:auto;min-height:0;padding:1rem}.dialog-content img{margin:auto;max-height:65vh;max-height:65dvh;width:auto;object-fit:contain}.dialog-note{font-size:.8rem;padding:1rem;margin:0!important;border-top:1px solid var(--line);flex-shrink:0}.dialog-note a{display:inline-block}
@media(max-width:1000px){h1{font-size:3.5rem}.home-hero h1{font-size:3.2rem}.home-hero{gap:2.5rem}.workflow{padding:1.5rem}.split{gap:3rem}.contact-hero{gap:2rem}.contact-hero h1{font-size:3rem}.contact-card{padding:1.5rem}.email{font-size:1.3rem}.case-copy{gap:3rem}.image-frame{height:230px}.step{grid-template-columns:40px minmax(0,1fr) minmax(0,1.3fr);gap:1.3rem}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.site-header{gap:1rem;flex-wrap:wrap;padding-block:1rem}.site-header .brand{font-size:1.2rem}.site-header .brand img{width:36px;height:39px}.site-header nav{order:3;width:100%;gap:1.6rem;margin:0;border-top:1px solid var(--line);padding-top:.35rem}.language{margin-left:auto;padding-left:1rem}.hero{padding-block:3rem}.home-hero,.contact-hero,.split,.case-copy{grid-template-columns:1fr;gap:2.2rem}.hero h1,.home-hero h1,.contact-hero h1{font-size:2.6rem;max-width:20ch}.hero .lead{font-size:1rem}.workflow{padding:1.6rem}.workflow li{padding:1rem}.section{padding-block:3rem}h2{font-size:2rem;max-width:24ch}.product-grid,.gallery{grid-template-columns:1fr;gap:2rem}.product-card{padding:1.25rem}.product-card>p:not(.project-number){min-height:0}.image-frame{height:270px}.cta-band{padding-block:3rem}.big-arrow{display:none}.step{grid-template-columns:2rem minmax(0,1fr);gap:1rem;padding-block:2rem}.step>div{grid-column:2}.step h2{font-size:1.6rem}.case-copy{margin-bottom:2rem}.case-copy h3{font-size:1.65rem}.footer-inner{grid-template-columns:1fr;padding-block:2.5rem;gap:1.5rem}.contact-card{padding:1.5rem}.email{font-size:1.5rem}.eyebrow{font-size:.7rem}.dialog-toolbar{align-items:flex-start}.dialog-note{font-size:.75rem}.actions{gap:.6rem 1rem}}
h1,h2,h3{overflow-wrap:anywhere}.home-hero,.contact-hero{grid-template-columns:repeat(auto-fit,minmax(min(100%,25rem),1fr))}.workflow li>div{min-width:0;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(max-width:720px){.workflow{padding:24px}.workflow li{padding:16px;display:block}.workflow li>span{display:block;padding-top:0;margin-bottom:8px}.product-card{padding:20px}.contact-card{padding:24px}.step{grid-template-columns:28px minmax(0,1fr);gap:12px}.workflow li+li:before{left:16px}}
