@font-face{font-family:"DM Sans";src:url("/fonts/dm-sans-regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"DM Sans";src:url("/fonts/dm-sans-bold.woff2") format("woff2");font-weight:700 800;font-display:swap}
:root{color-scheme:light;--night:#121923;--paper:#f7f7f0;--white:#fff;--ink:#1b242b;--muted:#505d65;--rule:#cbd2ca;--lime:#c0f572;--forest:#28473b;--blue:#dceaf5;--edge:clamp(1.15rem,5vw,4rem);font-family:"DM Sans",Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-size:1rem;line-height:1.58}a{color:inherit}a:focus-visible{outline:3px solid #317954;outline-offset:5px}a:hover{text-decoration-thickness:2px}img,svg{max-width:100%}.skip{position:absolute;top:.5rem;left:.5rem;padding:.5rem;background:var(--white);color:var(--ink);transform:translateY(-200%);z-index:3}.skip:focus{transform:none}
.wrap{width:min(100%,88rem);margin:auto;padding-inline:var(--edge)}.mast,.hero,.contact{background:var(--night);color:var(--white)}.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:5rem}.logo{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none}.logo img{display:block;width:10.5rem;height:auto}.mast nav{display:flex;align-items:center;gap:clamp(.85rem,3vw,2.6rem)}.mast nav a,.foot a{text-decoration:none}.mast nav a:hover,.foot a:hover{text-decoration:underline}.mast .project{color:var(--lime)}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:clamp(2rem,5vw,5rem);min-height:36rem;padding-block:4rem 5.5rem}.overline{display:flex;align-items:center;gap:.7rem;text-transform:uppercase;font-size:.75rem;line-height:1.25;letter-spacing:.16em;font-weight:800}.overline:before{content:"";width:1.75rem;height:1px;background:currentColor}.hero .overline,.contact .overline{color:var(--lime)}h1,h2,h3,p{margin:0}h1,h2{line-height:1.02;letter-spacing:-.068em}h1{font-size:clamp(3rem,7.4vw,7.2rem);margin-block:1.35rem}.hero h1 span{color:var(--lime)}.hero p,.contact p{color:#c4cdd5;max-width:36rem;font-size:clamp(1rem,1.6vw,1.2rem)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.4rem;margin-top:1.8rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:3rem;padding:.6rem 1rem;background:var(--lime);color:var(--night);border:1px solid var(--lime);text-decoration:none;font-weight:800}.btn:hover{background:var(--white);border-color:var(--white)}.textlink{font-weight:750;text-underline-offset:.25em}.art{position:relative;border:1px solid #344343;aspect-ratio:1.05;background:radial-gradient(ellipse at 50% 52%,#314945,#171f2b 72%);display:grid;place-items:center;min-width:0}.art:before{position:absolute;inset:0;content:"";background-image:linear-gradient(#b1c6ba1e 1px,transparent 1px),linear-gradient(90deg,#b1c6ba1e 1px,transparent 1px);background-size:1.65rem 1.65rem}.art img{position:relative;width:77%;filter:drop-shadow(0 12px 30px #141c22)}.art-label{position:absolute;bottom:.7rem;left:.8rem;right:.8rem;display:flex;justify-content:space-between;color:#d2dfd6;letter-spacing:.12em;font-size:.64rem;text-transform:uppercase}
section:not(.hero){scroll-margin-top:1rem}.section{padding-block:clamp(3.5rem,8vw,7rem)}.section .overline{color:var(--forest);margin-bottom:.85rem}h2{font-size:clamp(2.5rem,5vw,5.15rem)}.section-top{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:1.2rem 3rem;margin-bottom:2rem}.section-top p{color:var(--muted);max-width:30rem}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.service{padding:clamp(1.15rem,3vw,2.15rem);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.n{color:var(--forest);font-size:.72rem;font-weight:800;letter-spacing:.12em}.service h3{font-size:1.32rem;letter-spacing:-.035em;margin:.9rem 0 .3rem}.service p{color:var(--muted)}
.work{background:#e7eee4}.case{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border:1px solid #cbd6cc}.case-art{display:grid;place-items:center;min-height:15rem;background:var(--forest);color:#d2edce;overflow:hidden}.case-art img{width:80%;height:auto}.case-copy,.product{padding:clamp(1.4rem,4vw,3rem)}.tag{display:inline-block;color:var(--forest);font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.case h3,.product h3{font-size:clamp(1.7rem,3vw,3rem);line-height:1.12;letter-spacing:-.06em;margin:.5rem 0 .6rem}.case p,.product p{color:var(--muted);margin-bottom:1.1rem;max-width:30rem}
.product-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem}.product{border:1px solid var(--rule)}.product:first-child{background:var(--blue)}.product.future{border-style:dashed}.product .vela-logo{width:6rem;height:auto;display:block;margin:.55rem 0 .3rem}.contact .wrap{padding-block:clamp(3.5rem,8vw,6rem)}.contact h2{margin:.8rem 0 1rem}.contact .email{color:var(--lime);text-underline-offset:.3em;overflow-wrap:anywhere}.foot{background:var(--night);color:#c4cdd5;font-size:.84rem}.foot .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding-block:1.1rem;border-top:1px solid #49545a}.foot a:hover{color:var(--lime)}.foot address{font-style:normal}.foot .links{display:flex;flex-wrap:wrap;gap:.55rem 1.1rem}.foot .links a{white-space:nowrap}
@media(max-width:800px){.hero .wrap{min-height:0}.hero .wrap,.section-top{grid-template-columns:1fr}.art{max-width:29rem;width:100%}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:570px){.mast .wrap{align-items:flex-start;flex-direction:column;gap:.6rem;padding-block:.85rem}.mast nav{flex-wrap:wrap;font-size:.9rem}.hero .wrap{padding-block:2.8rem 3.6rem}.service-grid,.case,.product-grid{grid-template-columns:1fr}.case-art{min-height:12rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
