/* Blueprint v8: Lichtprojektion auf bedrucktem Zeichenpapier. */
:root,:root:not([data-theme="dark"]){--bg:#075da4;--ink:#edf7fd;--ink-muted:#d2e8f5;--line:rgb(224 245 255 / .58)}
:root[data-theme="dark"]{--bg:#073455;--ink:#e1edf5;--ink-muted:#bed7e7;--line:rgb(216 240 255 / .44)}
body{
 background-image:linear-gradient(rgb(210 242 255 / .048) 1px,transparent 1px),linear-gradient(90deg,rgb(210 242 255 / .048) 1px,transparent 1px),linear-gradient(rgb(210 242 255 / .075) 1px,transparent 1px),linear-gradient(90deg,rgb(210 242 255 / .075) 1px,transparent 1px),radial-gradient(ellipse at 0% 15%,rgb(6 153 203 / .26),transparent 62%),linear-gradient(100deg,transparent 40%,rgb(0 20 58 / .24));
 background-size:10px 10px,10px 10px,50px 50px,50px 50px,100% 1800px,100% 100%;
 background-repeat:repeat,repeat,repeat,repeat,repeat-y,no-repeat;
}
body::before{background-image:url('assets/blueprint-stock.svg');background-size:360px 360px;opacity:.3;mix-blend-mode:soft-light}
/* The stationary print receives moving light, never a scrolling image behind text. */
.blueprint-page h1,.blueprint-page .chapter h2{font-family:'General Sans',sans-serif;font-weight:700;letter-spacing:-.035em;filter:drop-shadow(var(--print-shadow-x,1.2px) var(--print-shadow-y,1.8px) .6px rgb(0 24 47 / .36))}
@supports (-webkit-background-clip:text){
 .blueprint-page h1,.blueprint-page .chapter h2,.blueprint-page .header .brand{
  background-image:url('assets/print-grain.svg');background-size:300px 180px;background-repeat:repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
 }
 .blueprint-page .hero-copy .outline-word,.blueprint-page .section-heading .outline-word,.blueprint-page .contact-heading .outline-word,.blueprint-page .intro-copy .outline-word,.blueprint-page h1 .title-dot{
  -webkit-text-fill-color:transparent!important;color:inherit!important;background:none!important;-webkit-text-stroke:0!important;
 }
}
.blueprint-page .hero-kicker,.hero-topline,.chapter-caption,.blueprint-page .kicker,.section-note,.intro-signature,.blueprint-page .chapter-lead,.service-row,.blueprint-guides,.hero-margin-note{ text-shadow:.3px .5px 0 rgb(0 29 50 / .18)}
.blueprint-page .hero-copy{top:9.5rem}
.blueprint-page .exploration-hero h1{font-size:clamp(3rem,9.2vw,8.8rem)}
.blueprint-dimensioned h1{padding-block:.25rem .4rem;border-color:rgb(239 251 255 / .7)}
.blueprint-dimensioned::before{content:'';position:absolute;left:-.3rem;right:-.3rem;bottom:-.25rem;height:calc(1.08em + 1.7rem);border-inline:1px solid var(--line);pointer-events:none}
.blueprint-page::after{border-color:rgb(229 247 255 / .66);opacity:.9}
.blueprint-page .chapter::after{opacity:.8}
/* Die beleuchtete Papierfläche gehört zum Dokument und fährt beim Scrollen vorbei. */
.paper-scene{position:absolute;z-index:0;inset:0 0 auto;height:143vw;min-height:1100px;background:url('assets/blueprint-daylight-v2.png') left top/100% auto no-repeat;pointer-events:none;mask-image:linear-gradient(black 0 75%,transparent 100%)}
[data-theme="dark"] .paper-scene{filter:brightness(.65) saturate(.95)}
.gobo-light,.paper-cast-shadow{display:none!important}
.cursor-light,[data-theme="dark"] .cursor-light{z-index:5;mix-blend-mode:screen;background:radial-gradient(ellipse at center,rgb(174 229 249 / .10),rgb(129 214 242 / .035) 25%,transparent 62%);filter:none;transition:opacity .45s}
.cursor-light.is-lit{opacity:1}
/* Fibres, pressure marks and an irregular folded edge. */
.folder-object-front,:root:not([data-theme="dark"]) .folder-object-front,[data-theme="dark"] .folder-object-front,
.folder-object-back,:root:not([data-theme="dark"]) .folder-object-back,[data-theme="dark"] .folder-object-back{
 background-image:url('assets/manila-fiber.svg'),linear-gradient(128deg,transparent 47%,rgb(189 150 92 / .055) 48%,transparent 49%),radial-gradient(ellipse at 4% 0%,#f9e6c4,transparent 65%),linear-gradient(110deg,#edcf9e,#e9cca0 45%,#d8b98b);
 background-size:180px 180px,9px 9px,100% 100%,100% 100%;
 border-color:#b89b6e;box-shadow:inset 0 1px 1px #fff1d5,inset -1px -2px 3px rgb(115 78 33 / .23),2px 9px 9px -5px rgb(0 18 39 / .65),4px 20px 20px -11px rgb(0 18 39 / .66);
}
.folder-object-front::before{border-top:3px solid rgb(255 240 206 / .6);background:linear-gradient(180deg,rgb(255 246 220 / .22),transparent 18%,transparent 94%,rgb(108 74 35 / .12));border-radius:9px 9px 10px 10px}
.folder-object-front::after{top:5px;height:2px;background:linear-gradient(90deg,transparent,rgb(135 99 52 / .32) 12%,rgb(255 241 216 / .5) 68%,transparent);rotate:-.15deg}
.folder-object-title{font-family:'IBM Plex Sans',sans-serif;font-weight:600;letter-spacing:-.045em;text-shadow:.4px .6px 0 rgb(20 57 89 / .16)}
@supports (-webkit-background-clip:text){.folder-object-title{background-image:url('assets/blueprint-stock.svg'),linear-gradient(#123960,#234b71);background-size:180px 180px,100% 100%;background-blend-mode:multiply,normal;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(.3px .5px .15px rgb(18 44 72 / .2))}}
.folder-object-meta,.folder-object-role{color:#163e65;text-shadow:.25px .35px 0 rgb(20 57 89 / .12)}
.folder-object-front>*{flex-shrink:0}.folder-object-meta{padding-top:.35rem}
.folder-object-back::before,[data-theme="dark"] .folder-object-back::before{background:#efd7ae url('assets/manila-fiber.svg');background-size:180px 180px;box-shadow:inset 0 1px #fff3d6}
.folder-tab-number{background:transparent;font-size:.72rem;font-weight:600;top:-16px;padding-inline:8px}
.envelope-front{background-image:url('assets/manila-fiber.svg'),linear-gradient(34deg,transparent 49%,rgb(115 77 32 / .22) 49.8%,rgb(255 243 211 / .52) 50.4%,transparent 51%),linear-gradient(-34deg,transparent 49.2%,rgb(108 74 36 / .16) 49.9%,rgb(255 235 198 / .3) 50.5%,transparent 51%),radial-gradient(ellipse at 10% 10%,#f3dcb6,transparent 65%),linear-gradient(110deg,#ebd1a9,#d9ba8f);background-size:180px 180px,100% 100%,100% 100%,100% 100%,100% 100%;box-shadow:inset 0 1px #ffebc8,inset 0 -3px 6px rgb(117 76 25 / .25),2px 12px 14px -7px rgb(0 16 35 / .7)}
.envelope-back,.envelope-flap,.flight-sheet,.blueprint-page .inquiry-wizard{background-size:180px 180px,100% 100%,100% 100%}
.envelope-to{color:#163e65;text-shadow:.3px .4px 0 rgb(20 57 89 / .12)}
.portfolio-page .cut-frame{background-image:url('assets/manila-fiber.svg');border-color:#efe3cb;box-shadow:2px 5px 4px rgb(0 18 39 / .2),8px 22px 28px -13px rgb(0 18 39 / .6)}
.portfolio-page .hero-socials a,.blueprint-page .hero-action,.blueprint-page .secondary-action,.blueprint-page .contact-action{border-color:rgb(239 250 255 / .8);box-shadow:0 1px 0 rgb(0 28 53 / .12),inset 0 1px rgb(255 255 255 / .08);text-shadow:.3px .5px 0 rgb(0 25 45 / .18)}
.blueprint-page .hero-socials a:hover,.blueprint-page .hero-action:hover,.blueprint-page .contact-action:hover{background:rgb(227 246 255 / .12);box-shadow:0 3px 7px rgb(0 25 45 / .16)}
.motion-paused .gobo-light::before,.motion-paused .paper-cast-shadow::before{animation-play-state:paused}
@media(min-width:768px) and (max-width:999px){.folder-object-front{padding:.75rem;gap:.12rem}.folder-object-title{font-size:1.35rem}}
@media(max-width:767px){.blueprint-page .hero-copy{top:8rem}.blueprint-page .exploration-hero h1{font-size:clamp(2.7rem,11vw,4.9rem)}.blueprint-dimensioned::before{height:5.5rem}.gobo-light,.paper-cast-shadow{inset:-20% -10%}.gobo-light::before{background-size:auto;filter:blur(5px);mask-image:linear-gradient(90deg,black,rgba(0,0,0,.5) 65%,transparent)}.folder-object-title{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){.gobo-light::before,.paper-cast-shadow::before{animation:none}.gobo-light,.paper-cast-shadow{transform:none!important;will-change:auto}.blueprint-page h1,.blueprint-page .chapter h2{filter:drop-shadow(1px 2px .6px rgb(0 24 47 / .36))}}
@media print{body::before,.gobo-light,.paper-cast-shadow,.cursor-light{display:none}.blueprint-page h1,.blueprint-page .chapter h2,.blueprint-page .header .brand,.folder-object-title{-webkit-text-fill-color:black;background:none;filter:none}}

/* Die Registrierung, Druckschrift und Kopfzeile folgen dem Referenzblatt. */
.blueprint-page{--header-height:108px}
.blueprint-page .header,.blueprint-page .header.is-scrolled,.blueprint-page .header:not(.is-scrolled){position:fixed;z-index:50;top:0;left:0;right:0;height:var(--header-height);display:flex;align-items:center;justify-content:initial;gap:1.2rem;padding:1.4rem 6.5%;border:0;background:var(--bg) url('assets/blueprint-daylight-v2.png') left top/100% auto no-repeat;box-shadow:none;transition:none}
[data-theme="dark"] .blueprint-page .header{background-image:linear-gradient(rgb(0 19 34 / .35),rgb(0 19 34 / .35)),url('assets/blueprint-daylight-v2.png')}
.header-rules{position:absolute;inset:0 3%;width:94%;height:100%;pointer-events:none;color:#dff2fc;opacity:.75}
.blueprint-page .header .brand{font:700 clamp(2rem,4.6vw,3.3rem)/1 'General Sans',sans-serif;letter-spacing:-.055em;flex-shrink:0;position:relative;z-index:1}
.blueprint-page .header-nav{margin-left:auto;gap:0;padding:0 0 .6rem;position:relative;border-bottom:1px solid rgb(234 249 255 / .85);display:flex;align-items:center}
.blueprint-page .header-nav a{font:400 clamp(.85rem,1.65vw,1.25rem)/1.2 'IBM Plex Sans',sans-serif;gap:.55rem;padding:0 1.15rem;text-decoration:none;min-height:30px}
.blueprint-page .header-nav a:first-child{padding-left:0}.blueprint-page .header-nav a:last-child{padding-right:0;border-left:1px solid var(--ink);margin-left:.2rem}
.blueprint-page .theme-toggle{border:0;border-left:1px solid var(--line);border-radius:0;width:35px;min-width:35px;height:35px;padding-left:.55rem;background:transparent}
.blueprint-page .page-progress{z-index:51;height:1px}
.blueprint-page .hero-topline{top:calc(var(--header-height) + 12px);left:6.5%;right:6.5%;font:.78rem/1.3 monospace;color:var(--ink);letter-spacing:0}
.blueprint-page .hero-copy{top:calc(var(--header-height) + 61px);left:6.5%;width:77%}
.blueprint-page .hero-kicker{font:.87rem/1.3 monospace;margin:0 0 1.25rem;color:var(--ink);letter-spacing:-.035em;white-space:nowrap}
.blueprint-page .exploration-hero h1{display:flex;align-items:baseline;flex-wrap:nowrap;gap:.12em;border:0;padding:0;font:700 clamp(3rem,8.8vw,8.8rem)/1.02 'General Sans',sans-serif;letter-spacing:-.055em;position:relative;background:none;-webkit-text-fill-color:var(--ink);filter:none}
.blueprint-dimensioned::before,.blueprint-dimensioned h1::before,.blueprint-dimensioned h1::after{display:none}
.hero-word{position:relative;white-space:nowrap;filter:drop-shadow(1px 1.4px .4px rgb(0 29 58 / .38));padding-block:.035em .055em}
.hero-word::before{content:'';position:absolute;inset:0 -.025em;pointer-events:none;border:1px solid rgb(232 249 255 / .7);border-inline-style:dashed;background:repeating-linear-gradient(90deg,transparent 0 16%,rgb(237 250 255 / .75) 16% calc(16% + 1px),transparent calc(16% + 1px) 33%) left top/100% 5px repeat-x}
.hero-word::after{content:'';position:absolute;pointer-events:none;inset:-.075em -.04em;background:linear-gradient(var(--ink),var(--ink)) left .055em/9px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) right .055em/9px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) left calc(100% - .055em)/9px 1px no-repeat,linear-gradient(var(--ink),var(--ink)) right calc(100% - .055em)/9px 1px no-repeat}
@supports(-webkit-background-clip:text){.hero-word,.blueprint-page .chapter h2,.blueprint-page .header .brand{background:url('assets/print-grain.svg') 0 0/190px 130px repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}
.blueprint-page .hero-arrow{position:absolute;width:.38em;height:.38em;left:calc(100% + .06em);bottom:0;margin:0;color:var(--ink);stroke-width:1.2;filter:none}
.hero-margin-note{top:calc(var(--header-height) + 94px);right:5%;width:13%;font:.7rem/1.55 monospace;padding:.75rem .5rem;border-block:1px solid var(--line)}
.hero-margin-note::before{content:'';position:absolute;left:-5px;top:-8px;bottom:-8px;border-left:1px solid var(--line)}
.blueprint-page .hero-medium,.blueprint-page .exploration-hero .hero-medium{inset:20rem 2% 8rem}
.blueprint-page .lens-readout{top:3%;left:5%;font:.64rem/1.5 monospace;gap:.7rem}.blueprint-page .optics-scale{font:.55rem/1.5 monospace}
.blueprint-page .explore-caption{display:none}
.blueprint-page .hero-bottom{left:6.5%;right:6.5%;bottom:5rem;gap:1.5rem;align-items:center;flex-wrap:wrap}
.explore-hint{display:flex;gap:.8rem;align-items:center;margin:0 0 0 auto;max-width:18rem;font:.63rem/1.45 monospace;letter-spacing:-.03em;color:var(--ink)}
.explore-hint svg{width:22px;height:38px;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.touch-hint{display:none}
.blueprint-page .hero-socials{gap:1rem}.blueprint-page .hero-socials a{border:1px solid #eef8fd;background:#e7f3fa;color:#104d7f;font-weight:500;box-shadow:1px 3px 2px rgb(0 28 54 / .25);padding:.75rem 1.2rem;min-height:50px;gap:.9rem;border-radius:0;position:relative}
.blueprint-page .hero-socials a::before{content:'';position:absolute;left:8px;right:8px;bottom:5px;height:1px;background:#07548c;opacity:.4}
.blueprint-page .hero-socials a:hover{background:#f7fbfe;translate:0 -2px;box-shadow:1px 5px 4px rgb(0 28 54 / .3)}
.blueprint-page .social-links a{border-bottom:2px solid var(--ink);font-size:1rem;padding:.65rem .9rem}
.blueprint-page .chapter{scroll-margin-top:var(--header-height)}
.blueprint-page::after{inset:20px 3% 30px}.blueprint-page .hero::after,.blueprint-page .chapter::after{opacity:.8}
.blueprint-page .chapter::before{content:'';height:12px;width:12px;left:calc(3% - 6px);top:-6px;background:linear-gradient(var(--ink),var(--ink)) center/1px 12px no-repeat,linear-gradient(var(--ink),var(--ink)) center/12px 1px no-repeat}
.blueprint-page .works .section-heading h2{margin-bottom:.4rem}.blueprint-page .works .section-heading{margin-bottom:1.25rem}
.margin-study{display:block;width:190px;height:auto;margin:.75rem 0 1.75rem;pointer-events:none;opacity:.8}
.folder-object{backface-visibility:hidden}.folder-object-front,.folder-object-paper{backface-visibility:hidden}
.folder-archive.is-swaying .folder-object{transition:none!important;will-change:transform}
.folder-cover:hover .folder-object-paper,.folder-cover:focus-visible .folder-object-paper{will-change:transform}
.dossier-extraction-media{will-change:transform;backface-visibility:hidden}.project-dossier.is-extracting .dossier-head{opacity:1}
/* Der Brief wird mechanisch aus dem Schlitz gezogen, ohne Überblendung. */
.blueprint-page .contact-form-wrap{align-self:start}.blueprint-page .contact-envelope{overflow:visible;transition:none;min-height:420px;rotate:-.65deg}
.blueprint-page .contact-envelope.is-open{min-height:0;padding-bottom:270px;rotate:-.65deg}
.blueprint-page .is-open .envelope-front{height:320px;padding:1.5rem;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start}
.blueprint-page .is-open .envelope-to{font-size:.8rem}.blueprint-page .is-open .envelope-stamp{display:grid}.blueprint-page .is-open .envelope-open{margin-top:1rem}
.blueprint-page .is-open .envelope-flap{transition:none;z-index:0;transform:rotateX(170deg)}
.blueprint-page .inquiry-wizard{margin-inline:3%;width:94%;padding-bottom:4.25rem!important;transform-origin:center bottom;will-change:auto}
.blueprint-page .contact-envelope.is-unfolding .inquiry-wizard{will-change:transform,clip-path;pointer-events:none}
.blueprint-page .contact-envelope.is-posted{padding-bottom:0;min-height:460px;rotate:0deg}
.blueprint-page .contact-envelope:not(.is-open) .envelope-flap{z-index:1}
.blueprint-page .inquiry-wizard .secondary-action{border-color:var(--paper-ink)}
@media(min-width:1000px){.blueprint-page .hero-copy{width:76%}.blueprint-page .hero-bottom{gap:1.2rem}.explore-hint{max-width:15rem}}
@media(min-width:768px){.blueprint-page .hero{min-height:max(100dvh,1000px)}}
@media(max-width:999px){.blueprint-page .hero-copy{width:85%}.hero-margin-note{display:none}.explore-hint{margin-left:0;max-width:none}}
@media(max-width:767px){
 .blueprint-page{--header-height:83px}.blueprint-page .header,.blueprint-page .header.is-scrolled,.blueprint-page .header:not(.is-scrolled){padding:1rem 6.5%;gap:.7rem}
 .blueprint-page .header .brand{font-size:1.8rem}.blueprint-page .header-nav a{font-size:.75rem;padding-inline:.65rem;gap:.25rem}.blueprint-page .theme-toggle{width:25px;min-width:25px;height:28px;padding-left:.45rem}
 .blueprint-page .hero-topline{font-size:.55rem;top:98px}.blueprint-page .hero-copy{top:145px;width:87%}.blueprint-page .hero-kicker{white-space:normal;font-size:.6rem;max-width:100%;margin-bottom:1.1rem}
 .blueprint-page .exploration-hero h1{font-size:clamp(2.4rem,11vw,4.8rem);display:grid;grid-template-columns:max-content max-content;gap:.06em .14em;line-height:1.1}.hero-word:nth-child(3){grid-column:1/-1;width:max-content}.blueprint-page .hero-arrow{position:absolute;left:4.3em;bottom:.15em;width:.45em;height:.45em}
 .hero-word::before{border-width:.6px}.blueprint-page .hero-medium,.blueprint-page .exploration-hero .hero-medium{inset:21rem 1% 12.3rem}.blueprint-page .lens-readout{top:0;font-size:.55rem}.blueprint-page .optics-scale{top:1.4rem;left:5%;right:auto;font-size:.5rem}
 .blueprint-page .hero-bottom{bottom:4rem;gap:.7rem;display:flex;flex-direction:row}.blueprint-page .hero-socials a,.blueprint-page .hero-action{font-size:.75rem;min-height:44px;padding:.65rem .9rem}.blueprint-page .hero-socials{gap:.8rem}
 .explore-hint{font-size:.5rem;gap:.6rem;margin-top:.25rem}.explore-hint svg{width:16px;height:28px}.blueprint-page .chapter-caption{bottom:1.3rem}
 .blueprint-page .is-open .envelope-front{height:280px;padding:1.15rem}.blueprint-page .contact-envelope.is-open{padding-bottom:235px}.blueprint-page .inquiry-wizard{padding:1.15rem 1.15rem 4.25rem!important}
 .margin-study{width:155px}.paper-scene{min-height:700px;height:1700px;background-size:auto 1700px;background-position:30% 0}
}
@media(max-width:359px){.blueprint-page .header .brand{font-size:1.55rem}.blueprint-page .header-nav a{font-size:.68rem;padding-inline:.5rem}.blueprint-page .hero-kicker{font-size:.56rem}}
@media(hover:none),(pointer:coarse){.pointer-hint{display:none}.touch-hint{display:inline}}
@media(prefers-reduced-motion:reduce){.folder-object,.folder-object-paper{transition:none!important;will-change:auto!important}.blueprint-page .contact-envelope.is-unfolding .inquiry-wizard{will-change:auto}}
@media print{.paper-scene,.header-rules,.hero-word::before,.hero-word::after{display:none}.hero-word{-webkit-text-fill-color:black;background:none;filter:none}}
