:root {
  --bg: #11100f; --ink: #f0e7da; --accent: #d74b31; --second: #a4a0ff;
  --wrap: min(1280px, calc(100% - 48px));
  color: var(--ink); background: var(--bg); font-family: Arial, sans-serif; line-height: 1.65;
}
* { box-sizing: border-box; }
body { margin: 0; overflow-x: hidden; }
img { display: block; width: 100%; height: auto; object-fit: cover; }
a { color: inherit; }
.skip { position: fixed; left: 8px; top: 8px; transform: translateY(-150%); background: white; padding: .5rem; z-index: 99; }
.skip:focus { transform: none; }
.de-head { width: var(--wrap); margin: auto; min-height: 84px; display: flex; align-items: center; gap: 2rem; border-bottom: 1px solid; }
.de-brand { font-size: 1.35rem; font-weight: 900; text-decoration: none; margin-right: auto; }
.de-head nav { display: flex; gap: 1.25rem; }
.de-head nav a { text-decoration: none; }
.de-toggle { display: none; border: 1px solid; background: var(--accent); padding: .55rem .8rem; }
.eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; font-weight: 800; }
h1 { font-size: clamp(3.3rem, 7vw, 7.8rem); line-height: .94; letter-spacing: -.065em; margin: .35rem 0 1.2rem; }
h2 { font-size: clamp(2rem, 4vw, 4.2rem); line-height: 1.05; letter-spacing: -.04em; }
.button { display: inline-block; background: var(--accent); color: var(--ink); border: 2px solid var(--ink); padding: .7rem 1rem; font-weight: 800; text-decoration: none; }
.de-hero,.de-cover,.de-stage,.de-map,.de-intro { width: var(--wrap); margin: 2rem auto 0; display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; }
.de-hero figure,.de-cover figure,.de-intro figure { margin: 0; }
.de-hero img,.de-cover img,.de-stage>img,.de-map>figure img,.de-intro img { height: 620px; }
.de-cover { display:block; }.de-cover h1 { max-width: 980px; }.de-cover p { max-width: 680px; }.de-cover figure { margin-top: 3rem; }
.de-bench,.de-issue,.de-field,.de-route,.de-inputs { width: var(--wrap); margin: 6rem auto; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.de-bench img,.de-issue img,.de-field img,.de-route img,.de-inputs img { height: 480px; }
.de-strip,.de-columns,.de-tiles,.de-research { width: var(--wrap); margin: 5rem auto; display:grid; grid-template-columns: repeat(3,1fr); border-top:2px solid; }
.de-strip article,.de-columns article,.de-tiles article,.de-research article { padding:2rem; border-right:1px solid; }
.de-wide,.de-photo { margin: 5rem 0; display:grid; grid-template-columns: 1.5fr .5fr; background:var(--second); }
.de-wide img,.de-photo img { height:600px; }.de-wide figcaption,.de-photo div { padding:3rem; align-self:end; }
.de-signal,.de-scale,.de-questions { width:min(980px,calc(100% - 48px)); margin:7rem auto; }
.wave { height:90px; background:repeating-linear-gradient(90deg,var(--accent) 0 3px,transparent 3px 11px); clip-path:polygon(0 45%,8% 10%,16% 80%,24% 25%,32% 70%,40% 5%,48% 85%,56% 20%,64% 75%,72% 35%,80% 90%,88% 15%,100% 50%,100% 58%,0 58%); }
.de-mix { display:grid; grid-template-columns:.55fr 1.5fr .55fr; background:var(--ink); color:var(--bg); align-items:center; }.de-mix img { height:580px; }.de-mix article { padding:2rem; }
.de-scale { display:grid; grid-template-columns:.7fr 1.3fr; gap:3rem; align-items:center; }.de-scale blockquote { font-size:1.55rem; }.de-scale img { height:480px; }
.de-questions { display:grid; grid-template-columns:1fr 1fr; gap:4rem; }
.de-research { grid-template-columns:repeat(3,1fr) 1.4fr; }.de-research img { height:360px; }
.de-page { width:var(--wrap); margin:3rem auto; display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:end; }.de-page img { height:520px; }
.de-prose,.de-legal,.de-form { width:min(900px,calc(100% - 48px)); margin:5rem auto; }.de-prose p,.de-legal p { max-width:72ch; }.de-legal section { border-top:1px solid; }.de-form{padding:2rem;border:2px solid}.de-form label{display:block;font-weight:700;margin:1rem 0}.de-form input,.de-form select,.de-form textarea{display:block;width:100%;padding:.8rem;margin-top:.35rem;border:1px solid;background:transparent;color:inherit}
.de-foot { margin-top:6rem; background:var(--ink); color:var(--bg); padding:3rem max(24px,calc((100% - 1280px)/2)); display:grid; grid-template-columns:1fr 1fr auto; gap:2rem; }.de-foot address { font-style:normal; }
@media(max-width:800px){ .de-head nav{display:none;position:absolute;top:75px;left:24px;right:24px;background:var(--bg);padding:1rem;border:2px solid;flex-direction:column;z-index:9}.de-head nav.open{display:flex}.de-toggle{display:block} .de-hero,.de-stage,.de-map,.de-intro,.de-bench,.de-issue,.de-field,.de-route,.de-inputs,.de-page,.de-questions,.de-scale{grid-template-columns:1fr} .de-strip,.de-columns,.de-tiles,.de-research,.de-mix,.de-foot{grid-template-columns:1fr} h1{font-size:3.7rem} .de-hero img,.de-cover img,.de-stage>img,.de-map>figure img,.de-intro img{height:420px} }

/* Site-specific privacy choice */
.de-choice{position:fixed;right:28px;top:96px;z-index:40;width:min(390px,calc(100% - 32px));padding:1.4rem;background:#f7e85d;color:#151515;box-shadow:10px 10px 0 #151515;border:2px solid #151515}.de-choice p{margin:0 0 1rem}.de-choice>div{display:flex;justify-content:flex-end;gap:.6rem}.de-choice button{padding:.55rem .9rem;border:2px solid #151515;background:#fff;font-weight:800}.de-choice button[data-accept]{background:#151515;color:#fff}.de-choice.is-hidden{display:none}@media(max-width:680px){.de-choice{top:auto;right:16px;bottom:16px}}