@import url("https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600&family=Fira+Sans:wght@400;500;600;700&display=swap");:root{--blue:#0b3767;--blue2:#0e4e8a;--paper:#f4f0e5;--ink:#102538;--amber:#f0a11f;--grid:#8ab2d04d;--white:#fffdf6;--red:#ad261f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "Fira Sans",sans-serif;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px}img{display:block;max-width:100%}a{color:inherit}.skip{position:fixed;top:1rem;left:1rem;transform:translateY(-180%);background:#fff;color:#000;padding:.7rem;z-index:100}.skip:focus{transform:none}:focus-visible{outline:3px solid var(--amber);outline-offset:3px}header{height:82px;background:var(--blue);color:#fff;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0 clamp(1rem,3.5vw,4rem);gap:2rem;border-bottom:4px solid var(--amber);position:sticky;top:0;z-index:30}.brand{display:flex;gap:.75rem;align-items:center;text-decoration:none;font-family:"Fira Code",monospace;font-size:.78rem;line-height:1.2}.brand img{width:42px;height:42px}.drawing-id{text-align:center;font:500 .7rem "Fira Code",monospace;letter-spacing:.16em}header nav{display:flex;gap:1.2rem}header nav a{text-decoration:none;font:.74rem "Fira Code",monospace;white-space:nowrap}.menu{display:none;background:var(--amber);border:0;color:#17202a;min-height:44px;padding:0 .9rem}.blueprint-hero{min-height:calc(100dvh - 82px);display:grid;grid-template-columns:1.15fr .85fr;position:relative;background-color:#0b3767;color:#fff;background-image:linear-gradient(#ffffff18 1px,transparent 1px),linear-gradient(90deg,#ffffff18 1px,transparent 1px);background-size:32px 32px;border-bottom:1px solid #fff}.coordinates{position:absolute;right:1.2rem;top:1rem;font:11px "Fira Code",monospace;color:#b9d7ee}.hero-copy{padding:clamp(5rem,10vw,10rem) clamp(1.2rem,6vw,7rem);position:relative}.code{font:600 .72rem "Fira Code",monospace;letter-spacing:.14em;color:var(--blue2)}.hero-copy .code,.scope-canvas .code,.limits .code,.brief .code{color:#ffd17d}.hero-copy h1,.context h1,.context h2,.scope-title h1,.scope-title h2,.sequence h2,.limits h2,.brief h1,.brief h2,.contact-title h2,.faq h2,.legal-sheet h1,.ack h1{font:600 clamp(2.5rem,5.8vw,6rem)/1.03 "Fira Sans",sans-serif;letter-spacing:-.04em;margin:1rem 0 2rem;overflow-wrap:break-word;hyphens:auto}
.legal-sheet h2{overflow-wrap:break-word}
.quicklinks{background:var(--white);border-bottom:3px solid var(--ink);padding:clamp(3rem,6vw,6rem) max(1.2rem,calc((100vw - 1280px)/2))}
.quicklinks>p.code{margin-bottom:.5rem}
.quicklinks h2{font-size:clamp(2rem,4vw,3.2rem);margin:0 0 2.5rem}
.quicklinks .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--ink)}
.quicklinks .tiles a{display:block;padding:2rem;border-right:1px solid var(--ink);text-decoration:none;color:var(--ink)}
.quicklinks .tiles a:last-child{border-right:0}
.quicklinks .tiles span{display:block;font:11px "Fira Code",monospace;color:var(--blue2);margin-bottom:.6rem}
.quicklinks .tiles h3{font:600 1.3rem "Fira Sans",sans-serif;margin:0 0 .6rem}
.quicklinks .tiles p{margin:0;font-size:.95rem}
.quicklinks .tiles em{display:block;margin-top:1rem;font:600 .75rem "Fira Code",monospace;font-style:normal;color:var(--amber)}
.index-context{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border-bottom:3px solid var(--ink)}
.index-context>*{padding:clamp(2rem,5vw,4rem);border-right:1px solid var(--ink)}
.index-context dl div{border-bottom:1px solid var(--ink);padding:.8rem 0}
.index-context dt{font:11px "Fira Code",monospace;text-transform:uppercase}
.index-context dd{margin:.2rem 0 0;font-weight:600}
@media(max-width:960px){.quicklinks .tiles{grid-template-columns:1fr}.quicklinks .tiles a{border-right:0;border-bottom:1px solid var(--ink)}.quicklinks .tiles a:last-child{border-bottom:0}.index-context{grid-template-columns:1fr}.index-context>*{border-right:0;border-bottom:1px solid var(--ink)}}.hero-copy>p:not(.code){font-size:1.18rem;max-width:44rem;color:#e1edf7}.action{display:inline-flex;gap:1.5rem;background:var(--amber);color:#17202a;text-decoration:none;padding:1rem 1.2rem;font:600 .85rem "Fira Code",monospace;text-transform:uppercase}.machine-cut{margin:0;align-self:end;position:relative;border-left:1px solid #9fc5df;height:73%;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%,0 14%)}.machine-cut img{width:100%;height:100%;object-fit:cover;filter:grayscale(.7) contrast(1.1)}figcaption{font:11px "Fira Code",monospace}.machine-cut figcaption{position:absolute;bottom:0;left:0;background:var(--paper);color:var(--ink);padding:.5rem}.scale{position:absolute;left:1rem;bottom:1rem;font:11px "Fira Code",monospace;transform:rotate(-90deg);transform-origin:left bottom}.scale span{display:inline-block;width:80px;border-top:1px solid #fff;margin:0 .5rem}.context{display:grid;grid-template-columns:.75fr 1fr .75fr;background:var(--paper);border-bottom:3px solid var(--ink)}.context>*{padding:clamp(2rem,5vw,5rem);border-right:1px solid var(--ink)}.context h2{font-size:clamp(2rem,4vw,4rem)}.identity div{border-bottom:1px solid var(--ink);padding:1rem 0}.identity dt{font:11px "Fira Code",monospace;text-transform:uppercase}.identity dd{margin:.25rem 0 0;font-weight:600}.scope-canvas{background:var(--blue);color:#fff;padding:clamp(3rem,7vw,7rem) max(1.2rem,calc((100vw - 1280px)/2))}.scope-title{display:grid;grid-template-columns:.4fr 1fr 1fr;gap:2rem;align-items:start}.scope-title h2{font-size:clamp(2.3rem,4.5vw,4.8rem);margin-top:0}.axis{display:grid;grid-template-columns:repeat(4,1fr);margin-top:4rem;border:1px solid #8eb5d0}.axis article{padding:2rem;border-right:1px solid #8eb5d0;position:relative}.axis article:last-child{border:0}.axis article>span{position:absolute;right:1rem;top:1rem;font:11px "Fira Code",monospace}.axis img{width:35px;height:35px;filter:brightness(0) invert(1);margin-bottom:2rem}.axis h3{font:600 1rem "Fira Code",monospace;color:#ffd17d}.photo-equation{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border-bottom:3px solid var(--ink)}.photo-equation>*{min-width:0}.photo-equation figure{margin:0}.photo-equation img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.formula{overflow-wrap:break-word}.equation{padding:clamp(3rem,7vw,7rem)}.formula{font:clamp(2rem,4.2vw,3.6rem)/1.25 "Fira Code",monospace;hyphens:auto}.formula b{color:var(--amber)}.sequence{display:grid;grid-template-columns:.7fr 1fr .65fr;background:var(--paper);border-bottom:3px solid var(--ink)}.sequence>*{padding:clamp(2rem,4vw,4rem);border-right:1px solid var(--ink)}.sequence h2{font-size:clamp(2rem,4vw,4rem)}.sequence ol{list-style:none;margin:0}.sequence li{display:grid;grid-template-columns:.45fr 1fr;gap:1rem;border-top:1px solid var(--ink);padding:1.5rem 0}.sequence li b{font-family:"Fira Code",monospace}.sequence figure{margin:0;padding:0;position:relative}.sequence figure img{width:100%;height:100%;object-fit:cover}.sequence figure figcaption{position:absolute;bottom:0;background:var(--paper);padding:.5rem}.profile-supporting,.fokus-supporting{margin:0;background:var(--white);border-bottom:3px solid var(--ink)}
.profile-supporting img,.fokus-supporting img{width:100%;max-height:520px;object-fit:cover;filter:grayscale(.4)}
.profile-supporting figcaption,.fokus-supporting figcaption{font:11px "Fira Code",monospace;padding:.7rem clamp(1.2rem,4vw,4rem);background:var(--paper)}
.fokus-supporting{display:grid;grid-template-columns:1fr 1fr}
.fokus-supporting figure{margin:0;position:relative}
.fokus-supporting img{max-height:340px}
.fokus-caption{margin:0;font:11px "Fira Code",monospace;padding:.7rem clamp(1.2rem,4vw,4rem);background:var(--paper);border-bottom:3px solid var(--ink)}
.limits{display:grid;grid-template-columns:.5fr 1fr .7fr;background:var(--amber);color:#17202a;padding:4rem max(1.2rem,calc((100vw - 1280px)/2));gap:2rem}.limits .code{color:#593600}.limits h2{font-size:3rem;margin:0}.stamp{border:4px double #17202a;align-self:center;padding:1.5rem;transform:rotate(-2deg);font:1rem "Fira Code",monospace;text-align:center}.brief{display:grid;grid-template-columns:.7fr 1.3fr;background:var(--blue);color:#fff}.brief-intro,.brief form{padding:clamp(2rem,6vw,6rem)}.brief h2{font-size:clamp(2.4rem,4.8vw,5rem)}.brief-summary{margin-top:3rem;border:1px dashed #9fc5df;padding:1.2rem}.brief-summary span{font:11px "Fira Code",monospace;color:#ffd17d}.brief form{background:var(--white);color:var(--ink)}fieldset{border:0;padding:0;margin:0}legend,label{display:block;font:600 .78rem "Fira Code",monospace;margin:1rem 0 .4rem}.choices{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.choices label{margin:0;position:relative;display:block}.choices input{position:absolute;opacity:0;width:1px;height:1px;left:0;top:0}.choices span{display:flex;align-items:center;min-height:52px;border:1px solid var(--ink);padding:.7rem;cursor:pointer}.choices input:checked+span{background:var(--blue);color:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}input,textarea{width:100%;font:inherit;border:1px solid #466176;border-radius:0;padding:.85rem;background:#fff;color:var(--ink)}.error{display:block;color:#a51f19;min-height:1.3em}.accept{display:flex;gap:.7rem;font-family:"Fira Sans",sans-serif;font-weight:400}.accept input{width:20px;height:20px}.submit-line{display:flex;align-items:center;gap:1rem;margin-top:1.5rem}.submit-line button{background:var(--amber);color:#17202a;border:2px solid #17202a;min-height:50px;padding:0 2.2rem;font:600 1rem "Fira Code",monospace}.fine{font-size:.82rem}.contact-title{display:grid;grid-template-columns:.4fr .8fr 1fr;background:var(--paper);border-bottom:3px solid var(--ink)}.contact-title>*{padding:clamp(2rem,4vw,4rem);border-right:1px solid var(--ink)}.contact-title h2{font-size:3rem}.contact-title dl div{display:grid;grid-template-columns:.7fr 1.3fr;padding:.75rem 0;border-top:1px solid var(--ink)}.contact-title dt{font:11px "Fira Code",monospace}.contact-title dd{margin:0;overflow-wrap:anywhere}.faq,.legal-sheet,.ack{max-width:980px;margin:auto;padding:clamp(4rem,8vw,8rem) 1.2rem}.faq details{border:1px solid var(--ink);border-bottom:0;padding:1.1rem;background:var(--paper)}.faq details:last-child{border-bottom:1px solid}.faq summary{font-family:"Fira Code",monospace;cursor:pointer}.legal-sheet{background:var(--white);max-width:900px}.legal-sheet h1{font-size:clamp(3rem,6vw,6rem);border-bottom:4px solid var(--blue);padding-bottom:1rem}.legal-sheet h2{font:600 1.4rem "Fira Code",monospace;margin-top:2.8rem}.legal-sheet p{max-width:75ch}.legal-sheet table{width:100%;border-collapse:collapse;table-layout:fixed}.legal-sheet th,.legal-sheet td{border:1px solid var(--ink);padding:.7rem;text-align:left;overflow-wrap:anywhere}.revision{font-family:"Fira Code",monospace}.ack{min-height:66vh}.ack-grid{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink);margin:2rem 0}.ack-grid div{padding:1rem;border-right:1px solid}.ack-grid span{display:block;font:11px "Fira Code",monospace}.ack-grid a{overflow-wrap:anywhere}footer{background:#071f37;color:#fff;display:grid;grid-template-columns:1fr 1fr .6fr;padding:3rem max(1.2rem,calc((100vw - 1280px)/2));gap:2rem}.title-block{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;border:1px solid #7ba2c0;padding:1rem;font:11px "Fira Code",monospace}.footer-contact a{overflow-wrap:anywhere}footer nav{display:flex;flex-direction:column;gap:.5rem}.cookie{display:none;position:fixed;bottom:1rem;right:1rem;left:1rem;background:var(--white);color:var(--ink);border:2px solid var(--ink);padding:1rem;z-index:50;grid-template-columns:1fr auto auto;gap:1rem;align-items:center}.cookie.visible{display:grid}.cookie button{min-height:44px;border:1px solid;background:#fff;padding:.6rem}.cookie button:last-child{background:var(--blue);color:#fff}@media(max-width:960px){header{grid-template-columns:auto 1fr auto}.drawing-id{display:none}.menu{display:block}header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--blue);padding:1rem;flex-direction:column}header nav.open{display:flex}.context,.scope-title,.sequence,.contact-title{grid-template-columns:1fr}.context>*,.sequence>*,.contact-title>*{border-right:0;border-bottom:1px solid}.axis{grid-template-columns:1fr 1fr}.limits{grid-template-columns:1fr 1fr}.limits .code{grid-column:1/-1}}@media(max-width:680px){.blueprint-hero,.photo-equation,.brief,.fokus-supporting{grid-template-columns:1fr}.machine-cut{height:380px;border-left:0}.scope-title{display:block}.axis{display:block}.axis article{border-right:0;border-bottom:1px solid #8eb5d0}.sequence{display:block}.sequence>*{border-right:0}.limits,.form-grid,.choices,footer{grid-template-columns:1fr}.limits .code{grid-column:auto}.cookie{grid-template-columns:1fr}.ack-grid{grid-template-columns:1fr}.ack-grid div{border-right:0;border-bottom:1px solid}.hero-copy h1{font-size:3rem}.contact-title dl div{grid-template-columns:1fr}.submit-line{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}