/* Reference-led homepage: near-black, subdued steel blue, pale chalk.
   A broad image-led hero pairs a technical monospace title with clear sans-serif copy. */
.dark-home{
 --paper:#080d11;--ink:#f1f1e9;--river:#a8c2d3;--muted:#abb5bd;
 --line:#2a343c;--white:#080d11;--sage:#111c24;--clay:#b8c7d1;
 background:var(--paper);color:var(--ink);
}
.dark-home .shell{width:min(1440px,calc(100% - 6rem))}
.dark-home h2{font-family:Arial,Helvetica,sans-serif;font-weight:500;letter-spacing:-.045em}
.dark-home .brand{font-size:1.6rem;letter-spacing:.03em;gap:.7rem}
.dark-home .brand svg{width:45px;color:#c5d2d9}
.dark-home .brand small{font-size:.6rem;letter-spacing:.34em;margin-top:.5rem}
.space-header{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;border:0;padding-block:1.75rem;gap:2rem}
.space-header nav{padding:.4rem .8rem;border:1px solid #38434a;border-radius:999px;background:#171d22;gap:.4rem;flex-wrap:nowrap}
.space-header nav a{padding:.6rem 1rem;border:0;font-size:.95rem}
.space-header nav a:last-child{border:0}
.space-header nav a:hover{color:#b4d0df}
.header-contact{justify-self:end;background:#45697d;color:#fff;padding:.85rem 1.5rem;border-radius:999px;text-decoration:none;white-space:nowrap;font-size:.95rem}
.header-contact span{margin-left:1.2rem}
.space-hero{position:relative;isolation:isolate;margin-top:-7.6rem;padding-top:8.8rem;overflow:hidden;background:#080d11}
.space-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;z-index:-2;opacity:.88}
.space-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,13,17,.5) 0%,rgba(8,13,17,0) 30%,rgba(8,13,17,.12) 46%,rgba(8,13,17,.86) 80%,#080d11 100%);pointer-events:none}
.hero-note{display:flex;justify-content:space-between;gap:1rem;font: .75rem/1.5 'Courier New',monospace;letter-spacing:.12em;color:#afbdc6}
.space-hero-content{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:5rem;padding-top:clamp(14rem,28vw,27rem);padding-bottom:3.5rem}
.hero-tag{display:inline-block;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;border:1px solid #566e7b;border-radius:999px;padding:.65rem 1.1rem;margin-bottom:1.5rem;background:rgba(8,13,17,.78);color:#d9e1e5}
.dark-home .space-hero h1{font-family:'Courier New',Courier,monospace;font-size:clamp(3.6rem,6.6vw,6.5rem);font-weight:400;line-height:1.02;letter-spacing:-.065em}
.dark-home .space-hero h1 em{color:inherit;font-style:normal}
.hero-intro{max-width:29rem;padding-bottom:.35rem}
.hero-intro>p:first-child{font-size:1.35rem;line-height:1.5;color:#f1f1e9}
.hero-intro-detail{font-size:.95rem;color:#bbc6cd}
.hero-buttons{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1.8rem}
.dark-home .action{background:#45697d;color:#fff;border-radius:999px;gap:1rem}
.dark-home .action:hover,.header-contact:hover{background:#52798f}
.secondary-action{background:#e9eceb;color:#15202a;padding:.9rem 1.25rem;border-radius:999px;text-decoration:none;font-size:.95rem}
.hero-bottom{display:flex;flex-wrap:wrap;gap:1.5rem 2.5rem;align-items:center;border-bottom:1px solid #303b43;padding-block:1.5rem;color:#b4c0c7;font-size:.85rem}
.hero-bottom>a{margin-left:auto;color:#e0e6e8;text-decoration:none}
.dark-home .decision-guide{padding-top:5rem;padding-bottom:5rem}
.dark-home .eyebrow{font-weight:400;letter-spacing:.14em;color:#9badb9}
.dark-home .section-heading{grid-template-columns:.8fr 1.6fr 1.2fr}
.dark-home .section-heading h2{font-size:clamp(2.2rem,3.5vw,3.6rem)}
.dark-home .service-row h3{font-size:1.4rem}
.dark-home .dark{background:#111c24;color:#f1f1e9}
.dark-home .dark .eyebrow{color:#a6bdca}
.dark-home .contact{background:#111c24}
.dark-home .contact h2{font-size:clamp(2.5rem,4.5vw,4.4rem)}
.dark-home a:focus-visible,.dark-home summary:focus-visible{outline-color:#b3d0e0}
.dark-home .footer-top{padding-block:3rem}
.dark-home .concepts{border-top:1px solid #26323a}
@media(min-width:1600px){.space-art{object-position:50% 45%}.space-hero-content{padding-top:29rem}}
@media(max-width:1100px){
 .dark-home .shell{width:calc(100% - 3rem)}
 .space-header{gap:1rem}.space-header nav a{padding:.6rem .7rem}
 .space-hero-content{gap:2rem;grid-template-columns:1.25fr 1fr}
 .dark-home .space-hero h1{font-size:clamp(3.4rem,6.5vw,5rem)}
 .hero-intro>p:first-child{font-size:1.15rem}
 .dark-home .section-heading{grid-template-columns:1fr 2fr}
}
@media(max-width:760px){
 .dark-home .shell{width:calc(100% - 2.5rem)}
 .space-header{grid-template-columns:1fr auto;padding-top:1.2rem;gap:1rem}
 .space-header nav{grid-row:2;grid-column:1/-1;justify-self:center;max-width:100%;gap:.2rem;padding:.25rem .5rem}
 .space-header nav a{font-size:.875rem;padding:.45rem .85rem}
 .header-contact{grid-row:1;grid-column:2;padding:.7rem 1rem;font-size:.875rem}
 .header-contact span{margin-left:.5rem}
 .space-hero{margin-top:-10rem;padding-top:11.5rem}
 .hero-note{font-size:.7rem;letter-spacing:.04em}
 .hero-note span:last-child{display:none}
 .space-art{height:650px;object-position:55% 0;opacity:.8}
 .space-hero-content{grid-template-columns:1fr;gap:1.8rem;padding-top:15rem;padding-bottom:1.5rem}
 .dark-home .space-hero h1{font-size:clamp(2rem,9.2vw,4.8rem);letter-spacing:-.06em}
 .hero-tag{font-size:.75rem;margin-bottom:1.1rem}
 .hero-intro{max-width:36rem}
 .hero-intro>p:first-child{font-size:1.1rem}
 .hero-buttons{margin-top:1.2rem;gap:.7rem}
 .hero-buttons a{font-size:.875rem;padding:.85rem 1.05rem}
 .hero-bottom{gap:.65rem 1.4rem;font-size:.75rem}
 .hero-bottom>a{margin-left:0;width:100%;padding-top:.5rem}
 .dark-home .decision-guide{padding-top:3rem;padding-bottom:3rem}
 .dark-home .section-heading{display:block}
 .dark-home .service-row h3{font-size:1.4rem}
}
@media(prefers-reduced-motion:reduce){.dark-home{scroll-behavior:auto}}
