/*
! tailwindcss v3.4.1 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
}.container {
  width: 100%;
}@media (min-width: 640px) {

  .container {
    max-width: 640px;
  }
}@media (min-width: 768px) {

  .container {
    max-width: 768px;
  }
}@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}.prose {
  color: var(--tw-prose-body);
  max-width: 65ch;
}.prose :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}.prose :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-links);
  text-decoration: underline;
  font-weight: 500;
}.prose :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-bold);
  font-weight: 600;
}.prose :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}.prose :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: upper-alpha;
}.prose :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: lower-alpha;
}.prose :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: upper-alpha;
}.prose :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: lower-alpha;
}.prose :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: upper-roman;
}.prose :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: lower-roman;
}.prose :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: upper-roman;
}.prose :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: lower-roman;
}.prose :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: decimal;
}.prose :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
  font-weight: 400;
  color: var(--tw-prose-counters);
}.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker {
  color: var(--tw-prose-bullets);
}.prose :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.25em;
}.prose :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  border-color: var(--tw-prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em;
}.prose :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 500;
  font-style: italic;
  color: var(--tw-prose-quotes);
  border-inline-start-width: 0.25rem;
  border-inline-start-color: var(--tw-prose-quote-borders);
  quotes: "\201C""\201D""\2018""\2019";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding-inline-start: 1em;
}.prose :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
  content: open-quote;
}.prose :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
  content: close-quote;
}.prose :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: 0.8888889em;
  line-height: 1.1111111;
}.prose :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 900;
  color: inherit;
}.prose :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333;
}.prose :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 800;
  color: inherit;
}.prose :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: 0.6em;
  line-height: 1.6;
}.prose :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 700;
  color: inherit;
}.prose :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.5;
}.prose :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 700;
  color: inherit;
}.prose :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}.prose :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  display: block;
  margin-top: 2em;
  margin-bottom: 2em;
}.prose :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}.prose :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  font-weight: 500;
  font-family: inherit;
  color: var(--tw-prose-kbd);
  box-shadow: 0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%), 0 3px 0 rgb(var(--tw-prose-kbd-shadows) / 10%);
  font-size: 0.875em;
  border-radius: 0.3125rem;
  padding-top: 0.1875em;
  padding-inline-end: 0.375em;
  padding-bottom: 0.1875em;
  padding-inline-start: 0.375em;
}.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-code);
  font-weight: 600;
  font-size: 0.875em;
}.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
  content: "`";
}.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
  content: "`";
}.prose :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
  font-size: 0.875em;
}.prose :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
  font-size: 0.9em;
}.prose :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: inherit;
}.prose :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-pre-code);
  background-color: var(--tw-prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: 0.875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: 0.375rem;
  padding-top: 0.8571429em;
  padding-inline-end: 1.1428571em;
  padding-bottom: 0.8571429em;
  padding-inline-start: 1.1428571em;
}.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before {
  content: none;
}.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after {
  content: none;
}.prose :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: 0.875em;
  line-height: 1.7142857;
}.prose :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-th-borders);
}.prose :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-inline-start: 0.5714286em;
}.prose :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-td-borders);
}.prose :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  border-bottom-width: 0;
}.prose :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  vertical-align: baseline;
}.prose :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  border-top-width: 1px;
  border-top-color: var(--tw-prose-th-borders);
}.prose :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  vertical-align: top;
}.prose :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  text-align: start;
}.prose :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
  margin-bottom: 0;
}.prose :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  color: var(--tw-prose-captions);
  font-size: 0.875em;
  line-height: 1.4285714;
  margin-top: 0.8571429em;
}.prose {
  --tw-prose-body: #374151;
  --tw-prose-headings: #111827;
  --tw-prose-lead: #4b5563;
  --tw-prose-links: #111827;
  --tw-prose-bold: #111827;
  --tw-prose-counters: #6b7280;
  --tw-prose-bullets: #d1d5db;
  --tw-prose-hr: #e5e7eb;
  --tw-prose-quotes: #111827;
  --tw-prose-quote-borders: #e5e7eb;
  --tw-prose-captions: #6b7280;
  --tw-prose-kbd: #111827;
  --tw-prose-kbd-shadows: 17 24 39;
  --tw-prose-code: #111827;
  --tw-prose-pre-code: #e5e7eb;
  --tw-prose-pre-bg: #1f2937;
  --tw-prose-th-borders: #d1d5db;
  --tw-prose-td-borders: #e5e7eb;
  --tw-prose-invert-body: #d1d5db;
  --tw-prose-invert-headings: #fff;
  --tw-prose-invert-lead: #9ca3af;
  --tw-prose-invert-links: #fff;
  --tw-prose-invert-bold: #fff;
  --tw-prose-invert-counters: #9ca3af;
  --tw-prose-invert-bullets: #4b5563;
  --tw-prose-invert-hr: #374151;
  --tw-prose-invert-quotes: #f3f4f6;
  --tw-prose-invert-quote-borders: #374151;
  --tw-prose-invert-captions: #9ca3af;
  --tw-prose-invert-kbd: #fff;
  --tw-prose-invert-kbd-shadows: 255 255 255;
  --tw-prose-invert-code: #fff;
  --tw-prose-invert-pre-code: #d1d5db;
  --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
  --tw-prose-invert-th-borders: #4b5563;
  --tw-prose-invert-td-borders: #374151;
  font-size: 1rem;
  line-height: 1.75;
}.prose :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
  margin-bottom: 0;
}.prose :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-start: 0.375em;
}.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-start: 0.375em;
}.prose :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}.prose :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 1.25em;
}.prose :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-bottom: 1.25em;
}.prose :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 1.25em;
}.prose :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-bottom: 1.25em;
}.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}.prose :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}.prose :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0.5em;
  padding-inline-start: 1.625em;
}.prose :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
}.prose :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
}.prose :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
}.prose :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
}.prose :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-start: 0;
}.prose :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-end: 0;
}.prose :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-top: 0.5714286em;
  padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-inline-start: 0.5714286em;
}.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-start: 0;
}.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  padding-inline-end: 0;
}.prose :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 2em;
  margin-bottom: 2em;
}.prose :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-top: 0;
}.prose :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
  margin-bottom: 0;
}.prose-neutral {
  --tw-prose-body: #404040;
  --tw-prose-headings: #171717;
  --tw-prose-lead: #525252;
  --tw-prose-links: #171717;
  --tw-prose-bold: #171717;
  --tw-prose-counters: #737373;
  --tw-prose-bullets: #d4d4d4;
  --tw-prose-hr: #e5e5e5;
  --tw-prose-quotes: #171717;
  --tw-prose-quote-borders: #e5e5e5;
  --tw-prose-captions: #737373;
  --tw-prose-kbd: #171717;
  --tw-prose-kbd-shadows: 23 23 23;
  --tw-prose-code: #171717;
  --tw-prose-pre-code: #e5e5e5;
  --tw-prose-pre-bg: #262626;
  --tw-prose-th-borders: #d4d4d4;
  --tw-prose-td-borders: #e5e5e5;
  --tw-prose-invert-body: #d4d4d4;
  --tw-prose-invert-headings: #fff;
  --tw-prose-invert-lead: #a3a3a3;
  --tw-prose-invert-links: #fff;
  --tw-prose-invert-bold: #fff;
  --tw-prose-invert-counters: #a3a3a3;
  --tw-prose-invert-bullets: #525252;
  --tw-prose-invert-hr: #404040;
  --tw-prose-invert-quotes: #f5f5f5;
  --tw-prose-invert-quote-borders: #404040;
  --tw-prose-invert-captions: #a3a3a3;
  --tw-prose-invert-kbd: #fff;
  --tw-prose-invert-kbd-shadows: 255 255 255;
  --tw-prose-invert-code: #fff;
  --tw-prose-invert-pre-code: #d4d4d4;
  --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
  --tw-prose-invert-th-borders: #525252;
  --tw-prose-invert-td-borders: #404040;
}.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}.visible {
  visibility: visible;
}.invisible {
  visibility: hidden;
}.collapse {
  visibility: collapse;
}.\!static {
  position: static !important;
}.static {
  position: static;
}.fixed {
  position: fixed;
}.absolute {
  position: absolute;
}.relative {
  position: relative;
}.sticky {
  position: sticky;
}.isolate {
  isolation: isolate;
}.float-right {
  float: right;
}.float-left {
  float: left;
}.mx-auto {
  margin-left: auto;
  margin-right: auto;
}.mt-8 {
  margin-top: 2rem;
}.box-content {
  box-sizing: content-box;
}.\!block {
  display: block !important;
}.block {
  display: block;
}.inline-block {
  display: inline-block;
}.inline {
  display: inline;
}.flex {
  display: flex;
}.table {
  display: table;
}.inline-table {
  display: inline-table;
}.table-caption {
  display: table-caption;
}.table-cell {
  display: table-cell;
}.table-column {
  display: table-column;
}.table-column-group {
  display: table-column-group;
}.table-footer-group {
  display: table-footer-group;
}.table-header-group {
  display: table-header-group;
}.table-row-group {
  display: table-row-group;
}.table-row {
  display: table-row;
}.grid {
  display: grid;
}.contents {
  display: contents;
}.list-item {
  display: list-item;
}.hidden {
  display: none;
}.size-full {
  width: 100%;
  height: 100%;
}.h-0 {
  height: 0px;
}.h-6 {
  height: 1.5rem;
}.max-w-3xl {
  max-width: 48rem;
}.max-w-7xl {
  max-width: 80rem;
}.max-w-none {
  max-width: none;
}.flex-shrink {
  flex-shrink: 1;
}.flex-grow {
  flex-grow: 1;
}.grow {
  flex-grow: 1;
}.border-collapse {
  border-collapse: collapse;
}.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.select-all {
  -webkit-user-select: all;
     -moz-user-select: all;
          user-select: all;
}.resize {
  resize: both;
}.columns-2 {
  -moz-columns: 2;
       columns: 2;
}.flex-wrap {
  flex-wrap: wrap;
}.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}.rounded {
  border-radius: 0.25rem;
}.border {
  border-width: 1px;
}.bg-neutral-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(247 243 234 / var(--tw-bg-opacity));
}.p-1 {
  padding: 0.25rem;
}.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}.font-semibold {
  font-weight: 600;
}.uppercase {
  text-transform: uppercase;
}.lowercase {
  text-transform: lowercase;
}.capitalize {
  text-transform: capitalize;
}.italic {
  font-style: italic;
}.ordinal {
  --tw-ordinal: ordinal;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.tracking-normal {
  letter-spacing: 0em;
}.text-neutral-950 {
  --tw-text-opacity: 1;
  color: rgb(85 82 77 / var(--tw-text-opacity));
}.underline {
  text-decoration-line: underline;
}.overline {
  text-decoration-line: overline;
}.line-through {
  text-decoration-line: line-through;
}.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}.outline {
  outline-style: solid;
}.ring {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}.grayscale {
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}.invert {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.\[hostname\:port\] {
  hostname: port;
}:root{--pd-paper: #f7f3ea;--pd-ink: #55524d;--pd-muted: #6f6a60;--pd-rule: rgb(25 24 21 / 18%);--pd-rule-strong: rgb(25 24 21 / 42%);--pd-accent: #e3ceb8;--pd-button: #dfceba;--pd-olive: #67735f}html{scroll-behavior:smooth}body{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;position:relative;background:var(--pd-paper);color:var(--pd-ink)}body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M0 .5H100M.5 0V100' fill='none' stroke='%23191815' stroke-opacity='.18' stroke-width='1' stroke-dasharray='18 14'/%3E%3C/svg%3E");background-size:7.02rem 7.02rem}body>*{position:relative;z-index:1}a,button{text-underline-offset:.22em}a:focus-visible,button:focus-visible{outline:2px solid var(--pd-accent);outline-offset:4px}.prose,.prose-neutral{--tw-prose-headings: var(--pd-ink);--tw-prose-links: var(--pd-ink);--tw-prose-bold: var(--pd-ink);--tw-prose-quotes: var(--pd-ink);--tw-prose-kbd: var(--pd-ink);--tw-prose-code: var(--pd-ink)}.technical-header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto auto;gap:1rem;align-items:center;border-bottom:1px solid var(--pd-rule-strong);background:rgba(247,243,234,.92);padding:.85rem clamp(1rem,3vw,2.5rem);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.technical-brand{display:inline-flex;align-items:center;margin-left:clamp(1rem,3vw,3rem);width:-moz-fit-content;width:fit-content;color:inherit;text-decoration:none}.technical-brand__logo{display:block;width:clamp(9rem,16vw,13rem);height:auto}.technical-menu-toggle{display:inline-grid;width:3.35rem;height:3.35rem;place-items:center;justify-self:end;border:1px solid var(--pd-ink);background:rgba(0,0,0,0)}.technical-menu-toggle span,.technical-menu-toggle span::before,.technical-menu-toggle span::after{display:block;width:1.45rem;height:1px;background:var(--pd-ink);content:""}.technical-menu-toggle span::before{transform:translateY(-0.45rem)}.technical-menu-toggle span::after{transform:translateY(0.4rem)}.technical-nav{display:none}.technical-nav__list,.technical-mobile-menu__list,.drawing-title-block__links{margin:0;padding:0;list-style:none}.technical-nav__list{display:flex;gap:clamp(1rem,2vw,2rem);align-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1rem;text-transform:uppercase}.technical-nav__list a{color:var(--pd-muted);text-decoration:none}.technical-nav__list a:hover,.technical-nav__list a:focus{color:var(--pd-accent)}.technical-mobile-menu[hidden]{display:none}.technical-mobile-menu{position:fixed;inset:0;z-index:70}.technical-mobile-menu__backdrop{position:absolute;inset:0;border:0;background:rgba(25,24,21,.44)}.technical-mobile-menu__panel{position:absolute;top:0;right:0;display:grid;gap:1.5rem;width:min(24rem,88vw);height:100%;align-content:start;border-left:1px solid var(--pd-ink);background:var(--pd-paper);padding:1.25rem;transform:translateX(100%);transition:transform 220ms ease}.technical-mobile-menu.is-open .technical-mobile-menu__panel{transform:translateX(0)}.technical-mobile-menu__head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--pd-rule-strong);padding-bottom:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9rem}.technical-mobile-menu__head button{min-width:3.1rem;min-height:3.1rem;border:1px solid var(--pd-ink);background:rgba(0,0,0,0);font-size:1.75rem}.technical-mobile-menu__list{display:grid;gap:.65rem}.technical-mobile-menu__list a{display:block;min-height:3.35rem;border-bottom:1px solid var(--pd-rule);color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.05rem;text-decoration:none;text-transform:uppercase}.viewport-readout{position:fixed;right:1rem;bottom:1rem;z-index:45;display:none;gap:.35rem;border:1px solid var(--pd-rule-strong);background:rgba(247,243,234,.82);padding:.55rem .65rem;color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.62rem;line-height:1.35;pointer-events:none}.viewport-readout span{display:block}.technical-homepage{overflow:hidden}.technical-hero{position:relative;display:grid;grid-template-columns:minmax(0, 1fr) minmax(18rem, 0.72fr);gap:clamp(2rem,5vw,5rem);min-height:min(52rem,100vh - 5rem);align-items:center;border-bottom:1px solid var(--pd-rule-strong);padding:clamp(6rem,12vw,10rem) clamp(1rem,5vw,5rem) clamp(4rem,7vw,7rem)}.technical-hero__frame{position:absolute;inset:1rem;display:grid;grid-template-columns:repeat(2, auto);align-content:space-between;justify-content:space-between;color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.62rem;letter-spacing:0;pointer-events:none}.technical-hero__geometry{position:absolute;inset:0;overflow:hidden;pointer-events:none}.technical-hero__axis{position:absolute;background:var(--pd-accent);opacity:.54}.technical-hero__axis--x{top:42%;left:10%;width:66%;height:1px}.technical-hero__axis--y{top:18%;left:68%;width:1px;height:56%}.technical-hero__point{position:absolute;width:.8rem;height:.8rem;border:1px solid var(--pd-accent);border-radius:50%}.technical-hero__point--a{top:41%;left:18%}.technical-hero__point--b{top:41%;left:68%}.technical-hero__point--c{top:63%;left:68%}.technical-hero__content{position:relative;z-index:1;max-width:58rem}.technical-hero__media{position:relative;z-index:1;align-self:stretch;min-height:clamp(24rem,45vw,38rem);margin:0;border:1px solid var(--pd-rule-strong);background:var(--pd-paper);overflow:hidden}.technical-hero__media::before{content:"";position:absolute;inset:0;z-index:1;border:.75rem solid var(--pd-paper);pointer-events:none}.technical-hero__media img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.technical-kicker{margin:0 0 1rem;color:var(--pd-accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;font-weight:700;text-transform:uppercase}.technical-hero h1{max-width:13ch;margin:0;font-size:clamp(2.75rem,8vw,7rem);font-weight:800;letter-spacing:0;line-height:.86;text-transform:uppercase}.technical-hero__intro{max-width:42rem;margin-top:2rem;color:var(--pd-muted);font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.65}.technical-button{display:inline-flex;min-height:3rem;align-items:center;margin-top:2rem;border:1px solid var(--pd-button);background:var(--pd-button);padding:.8rem 1.1rem;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;text-decoration:none;text-transform:uppercase;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.technical-button:hover,.technical-button:focus{border-color:var(--pd-ink);background:var(--pd-ink);color:var(--pd-paper)}.technical-hero__title-block{position:relative;z-index:1;grid-column:1/-1;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));max-width:44rem;margin:4rem 0 0;border-top:1px solid var(--pd-rule-strong);border-left:1px solid var(--pd-rule-strong);background:#f7f3ea;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.technical-hero__title-block div{display:grid;gap:.35rem;border-right:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong);padding:.85rem}.technical-hero__title-block dt{color:var(--pd-muted);font-size:.65rem;text-transform:uppercase}.technical-hero__title-block dd{margin:0;color:var(--pd-ink);font-size:.78rem;text-transform:uppercase}.technical-band{display:grid;gap:clamp(2rem,5vw,4rem);border-bottom:1px solid var(--pd-rule-strong);padding:clamp(4rem,8vw,8rem) clamp(1rem,5vw,5rem)}.technical-section-heading{display:grid;gap:1rem;max-width:52rem}.technical-section-heading h2{margin:0;color:var(--pd-ink);font-size:clamp(2.4rem,6vw,6rem);font-weight:800;line-height:.95;text-transform:uppercase}.technical-section-heading div{color:var(--pd-muted);font-size:1.05rem;line-height:1.75}.technical-band--register{background:var(--pd-paper) url("../images/bg-services.png") center/cover no-repeat}.capability-register{display:grid;border-top:1px solid var(--pd-rule-strong)}.capability-register__row{display:grid;grid-template-columns:5rem minmax(0, 1fr);gap:.45rem 1.5rem;align-items:baseline;border-bottom:1px solid var(--pd-rule-strong);padding:1.15rem 0}.capability-register__row span,.technical-process span{color:var(--pd-accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700}.capability-register__row span{color:var(--pd-muted);font-weight:800}.capability-register__row h3,.technical-process h3{margin:0;color:var(--pd-ink);font-size:clamp(1.05rem,2vw,1.45rem);font-weight:750;text-transform:uppercase}.capability-register__row p,.technical-process p{margin:0;color:var(--pd-muted);line-height:1.65}.capability-register__row p{grid-column:2;max-width:54rem}.technical-band--sequence{background:rgba(103,115,95,.08)}.technical-process{display:grid;grid-template-columns:repeat(5, minmax(0, 1fr));gap:1px;margin:0;padding:0;list-style:none;background:var(--pd-rule-strong)}.technical-process li{display:grid;gap:1rem;min-height:17rem;align-content:center;justify-items:center;background:var(--pd-paper);padding:1.25rem;text-align:center}.technical-process__icon{width:3rem;height:3rem;color:var(--pd-accent);stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter}.engineer-record{display:grid;grid-template-columns:minmax(0, 1fr) minmax(18rem, 0.8fr);gap:clamp(2rem,5vw,5rem);align-items:start}.engineer-record__statement{color:var(--pd-muted);font-size:clamp(1.15rem,2vw,1.65rem);line-height:1.65}.engineer-record__details{display:grid;gap:1.5rem;justify-items:start}.engineer-record__portrait{justify-self:center;width:clamp(9rem,16vw,13rem);aspect-ratio:1;margin:0;overflow:hidden;border:1px solid var(--pd-rule-strong);border-radius:50%;background:var(--pd-paper)}.engineer-record__portrait img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:47% 31%;object-position:47% 31%}.engineer-record__credentials{display:grid;width:100%;margin:0;border-top:1px solid var(--pd-rule-strong)}.engineer-record__credentials div{display:grid;grid-template-columns:4.5rem minmax(0, 1fr);gap:1rem;align-items:stretch;border-bottom:1px solid var(--pd-rule);padding:1rem 0}.engineer-record__credentials dt{display:grid;align-items:center;color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;font-weight:800}.engineer-record__credentials dd{display:grid;align-items:center;margin:0;color:var(--pd-muted);line-height:1.55}.field-note{max-width:46rem;border:1px solid var(--pd-rule-strong);border-left:.35rem solid var(--pd-accent);padding:1.25rem;background:rgba(247,243,234,.7);color:var(--pd-muted);line-height:1.7}.project-initiation-layout{display:grid;gap:1.5rem;align-items:stretch}.project-initiation-sheet{display:grid;max-width:54rem;border-top:1px solid var(--pd-rule-strong);border-left:1px solid var(--pd-rule-strong)}.project-initiation-layout .project-initiation-sheet{max-width:none}.project-initiation-sheet div{display:grid;grid-template-columns:minmax(10rem, 0.38fr) minmax(0, 1fr);border-right:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong)}.project-initiation-sheet span,.project-initiation-sheet strong{display:grid;align-items:center;padding:1rem}.project-initiation-sheet span{color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;text-transform:uppercase}.project-initiation-sheet strong{border-left:1px solid var(--pd-rule);font-weight:650}.project-initiation-sheet .technical-button{justify-self:start;margin:1.25rem}.project-initiation-media{min-height:24rem;margin:0;overflow:hidden;border:1px solid var(--pd-rule-strong);background:var(--pd-paper)}.project-initiation-media img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.contact-page-grid{display:grid;gap:clamp(2rem,5vw,4rem);align-items:start}.contact-page-info,.contact-page-form,.contact-page-maps{display:grid;gap:1.5rem}.contact-page-grid p{margin:0}.contact-page-details{display:grid;border-top:1px solid var(--pd-rule-strong);border-left:1px solid var(--pd-rule-strong)}.contact-page-details p{display:grid;grid-template-columns:minmax(7rem, 0.32fr) minmax(0, 1fr);border-right:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong)}.contact-page-details strong,.contact-page-details a,.contact-page-details span{padding:.9rem 1rem}.contact-page-details strong{color:var(--pd-muted);font-size:.72rem;text-transform:uppercase}.contact-page-details a,.contact-page-details span{border-left:1px solid var(--pd-rule)}.contact-page-map{display:grid;gap:.65rem;margin:0}.contact-page-map figcaption{color:var(--pd-muted);font-size:1rem;font-weight:700;text-transform:uppercase}.contact-page-map iframe{width:100%;aspect-ratio:4/3;height:auto;border:1px solid var(--pd-rule-strong);background:var(--pd-paper)}.contact-page-form .wpcf7{margin-top:0}.contact-page-form .wpcf7 label{align-items:center}.contact-page-form .wpcf7-form-control-wrap{align-self:stretch}.about-company{position:relative;display:grid;gap:clamp(2.5rem,7vw,7rem);overflow:hidden;padding:clamp(5.5rem,10vw,9rem) clamp(1rem,4vw,4rem) clamp(4.5rem,8vw,8rem)}.about-company::before,.about-company::after{position:absolute;pointer-events:none;content:""}.about-company::before{top:clamp(7rem,12vw,11rem);right:clamp(1rem,5vw,6rem);width:clamp(9rem,24vw,24rem);aspect-ratio:1;border:1px solid var(--pd-rule);border-radius:50%;opacity:.78}.about-company::after{top:clamp(9rem,16vw,17rem);right:clamp(4rem,12vw,16rem);width:clamp(5rem,13vw,12rem);height:1px;background:var(--pd-rule-strong);transform:rotate(-34deg);transform-origin:right center}.about-company__frame{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:.75rem;border-top:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong);padding:.75rem 0;color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(.64rem,1vw,.78rem);letter-spacing:0;text-transform:uppercase}.about-company__hero{display:grid;gap:clamp(2rem,6vw,5rem);align-items:end;min-height:clamp(20rem,40vw,32rem)}.about-company__copy{max-width:74rem}.about-company__copy h1{max-width:11ch;margin:0;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(3.25rem,13vw,12rem);font-weight:700;letter-spacing:0;line-height:.88;text-transform:uppercase}.about-company__intro{color:var(--pd-muted);font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.65}.about-company__intro p,.about-company__body p,.about-company__faq-answer p{margin:0}.about-company__intro p+p,.about-company__body p+p,.about-company__faq-answer p+p{margin-top:1rem}.about-company__sheet{display:grid;gap:clamp(2rem,5vw,4.5rem)}.about-company__office{display:grid;gap:clamp(1.5rem,4vw,3rem);border-top:1px solid var(--pd-ink);border-bottom:1px solid var(--pd-rule-strong);background:rgba(103,115,95,.08);padding:clamp(1.25rem,3vw,2rem) 0}.about-company__office-label,.about-company__register-heading,.about-company__faq-heading{display:grid;gap:.55rem;align-content:start;color:var(--pd-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:uppercase}.about-company__office-label span,.about-company__register-heading span,.about-company__faq-heading span{color:var(--pd-accent);font-size:.72rem;font-weight:700}.about-company__office-label strong,.about-company__register-heading strong,.about-company__faq-heading strong{color:var(--pd-ink);font-size:clamp(.9rem,1.5vw,1.1rem);line-height:1.35}.about-company__office-copy{display:grid;gap:clamp(1.25rem,3vw,2rem);max-width:68rem}.about-company__body{display:grid;gap:1rem;max-width:58rem;color:var(--pd-ink);font-size:clamp(1.05rem,1.65vw,1.45rem);line-height:1.72}.about-company__register{display:grid;gap:clamp(1.25rem,3vw,2rem)}.about-company__principles{display:grid;border-top:1px solid var(--pd-rule-strong)}.about-company__principles article{display:grid;grid-template-columns:minmax(4.5rem, 0.22fr) minmax(10rem, 0.78fr) minmax(0, 1.35fr);gap:clamp(1rem,3vw,2.5rem);align-items:start;border-bottom:1px solid var(--pd-rule);padding:clamp(1.25rem,3vw,2rem) 0}.about-company__principles span{color:var(--pd-accent);font-size:.78rem;font-weight:700}.about-company__principles h2{margin:0;color:var(--pd-ink);font-size:clamp(1.1rem,2vw,1.65rem);line-height:1.1;text-transform:uppercase}.about-company__principles p{margin:0;color:var(--pd-muted);line-height:1.65}.about-company__faq{display:grid;gap:clamp(1.25rem,3vw,2rem);border-top:1px solid var(--pd-ink);padding:clamp(1rem,2vw,1.5rem) 0}.about-company__faq-list{display:grid;border-top:1px solid var(--pd-rule-strong)}.about-company__faq-item{border-bottom:1px solid var(--pd-rule);color:var(--pd-muted)}.about-company__faq-item summary{display:grid;grid-template-columns:minmax(4.5rem, 0.18fr) minmax(0, 1fr) auto;gap:clamp(1rem,3vw,2rem);align-items:center;min-height:4.5rem;cursor:pointer;list-style:none;padding:clamp(1rem,2vw,1.35rem) 0}.about-company__faq-item summary::-webkit-details-marker{display:none}.about-company__faq-index{color:var(--pd-accent);font-size:.78rem;font-weight:700}.about-company__faq-item summary strong{color:var(--pd-ink);font-size:clamp(1rem,1.8vw,1.35rem);line-height:1.3}.about-company__faq-toggle{position:relative;display:inline-grid;width:2rem;height:2rem;place-items:center;justify-self:end;border:1px solid var(--pd-rule-strong);color:var(--pd-ink);font-size:1.3rem;font-weight:700;line-height:1}.about-company__faq-toggle>span{grid-area:1/1}.about-company__faq-toggle-close,.about-company__faq-item[open] .about-company__faq-toggle-open{display:none}.about-company__faq-item[open] .about-company__faq-toggle-close{display:block}.about-company__faq-answer{display:grid;grid-template-columns:minmax(4.5rem, 0.18fr) minmax(0, 1fr);gap:clamp(1rem,3vw,2rem);padding:0 0 clamp(1rem,2vw,1.5rem);line-height:1.65}.about-company__faq-answer>*{grid-column:2;max-width:58rem}.projects-index{display:grid;gap:clamp(3rem,7vw,6rem);padding:clamp(5.5rem,10vw,9rem) clamp(1rem,4vw,4rem) clamp(4.5rem,8vw,8rem)}.projects-index__header{display:grid;gap:clamp(1.5rem,5vw,4rem);align-items:end;border-bottom:1px solid var(--pd-rule-strong);padding-bottom:clamp(1.5rem,4vw,3rem)}.projects-index__header h1{max-width:10ch;margin:0;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(3.1rem,12vw,10rem);font-weight:700;letter-spacing:0;line-height:.88;text-transform:uppercase}.projects-index__intro{max-width:38rem;color:var(--pd-muted);font-size:clamp(1rem,1.45vw,1.28rem);line-height:1.7}.projects-index__intro p{margin:0}.projects-index__register{display:grid;border-top:1px solid var(--pd-ink)}.projects-index__row{display:grid;grid-template-columns:minmax(5rem, 0.2fr) minmax(9rem, 0.45fr) minmax(15rem, 1fr) minmax(12rem, 0.55fr);gap:clamp(1rem,3vw,2.5rem);align-items:start;border-bottom:1px solid var(--pd-rule);padding:clamp(1.35rem,3vw,2.25rem) 0}.projects-index__ref span{display:inline-grid;min-width:4.7rem;min-height:4.7rem;place-items:center;border:1px solid var(--pd-rule-strong);color:var(--pd-muted);font-size:.72rem;font-weight:700}.projects-index__media{margin:0;border:1px solid var(--pd-rule);background:var(--pd-paper)}.projects-index__media img{display:block;width:100%;aspect-ratio:4/3;height:auto;-o-object-fit:cover;object-fit:cover;filter:saturate(0.86) contrast(1.04)}.projects-index__main{display:grid;gap:1rem}.projects-index__main h2{margin:0;color:var(--pd-ink);font-size:clamp(1.35rem,3vw,2.7rem);line-height:1;text-transform:uppercase}.projects-index__main p{max-width:48rem;margin:0;color:var(--pd-muted);line-height:1.7}.projects-index__meta{display:grid;gap:.85rem;margin:0}.projects-index__meta div{display:grid;gap:.25rem}.projects-index__meta dt{color:var(--pd-muted);font-size:.68rem;font-weight:700;text-transform:uppercase}.projects-index__meta dd{margin:0;color:var(--pd-ink);font-size:.82rem;line-height:1.55}.projects-index__services{grid-column:3/5;display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.projects-index__services li{border:1px solid var(--pd-rule);padding:.42rem .55rem;color:var(--pd-muted);font-size:.68rem;text-transform:uppercase}.projects-index__link{grid-column:3/5;display:inline-flex;min-height:3rem;align-items:center;justify-self:start;border:1px solid var(--pd-button);background:var(--pd-button);padding:.8rem 1.1rem;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;text-decoration:none;text-transform:uppercase;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.projects-index__link:hover,.projects-index__link:focus{border-color:var(--pd-ink);background:var(--pd-ink);color:var(--pd-paper)}.services-index,.service-detail{display:grid;gap:clamp(3rem,7vw,6rem);padding:clamp(5.5rem,10vw,9rem) clamp(1rem,4vw,4rem) clamp(4.5rem,8vw,8rem)}.services-index__header,.service-detail__hero{display:grid;gap:clamp(1.5rem,5vw,4rem);align-items:end;border-bottom:1px solid var(--pd-rule-strong);padding-bottom:clamp(1.5rem,4vw,3rem)}.services-index__header h1,.service-detail__hero h1{max-width:10ch;margin:0;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(3.1rem,12vw,10rem);font-weight:700;letter-spacing:0;line-height:.88;text-transform:uppercase}.services-index__intro,.service-detail__intro{max-width:38rem;color:var(--pd-muted);font-size:clamp(1rem,1.45vw,1.28rem);line-height:1.7}.services-index__intro p,.service-detail__intro p,.service-detail__row-copy p{margin:0}.services-index__grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));border-top:1px solid var(--pd-ink);border-left:1px solid var(--pd-rule)}.services-index__item{display:grid;gap:1rem;align-content:start;border-right:1px solid var(--pd-rule);border-bottom:1px solid var(--pd-rule);padding:clamp(1rem,2vw,1.5rem);color:inherit;text-decoration:none;cursor:pointer;transition:background-color 180ms ease,border-color 180ms ease}.services-index__item:hover,.services-index__item:focus-visible{background:rgba(227,206,184,.16)}.services-index__item figure{margin:0 0 .5rem;border:1px solid var(--pd-rule);background:var(--pd-paper)}.services-index__item img{display:block;width:100%;aspect-ratio:4/3;height:auto;-o-object-fit:cover;object-fit:cover;filter:saturate(0.9) contrast(1.05)}.services-index__item>span:not(.services-index__link),.service-detail__row-copy span{color:var(--pd-accent);font-size:.72rem;font-weight:700;text-transform:uppercase}.services-index__item h2,.service-detail__row-copy h2{margin:0;color:var(--pd-ink);font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.05;text-transform:uppercase}.services-index__item p,.service-detail__row-copy div{color:var(--pd-muted);line-height:1.65}.services-index__link{display:inline-flex;min-height:3rem;align-items:center;justify-self:start;border:1px solid var(--pd-button);background:var(--pd-button);padding:.8rem 1.1rem;color:var(--pd-ink);font-size:.78rem;font-weight:700;text-decoration:none;text-transform:uppercase;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.services-index__item:hover .services-index__link,.services-index__item:focus-visible .services-index__link{border-color:var(--pd-ink);background:var(--pd-ink);color:var(--pd-paper)}.service-detail__zigzag{display:grid;gap:clamp(3rem,7vw,6rem)}.service-detail__row{display:grid;grid-template-columns:minmax(0, 0.82fr) minmax(18rem, 0.68fr);gap:clamp(1.5rem,5vw,4rem);align-items:center}.service-detail__row:nth-child(even){grid-template-columns:minmax(18rem, 0.68fr) minmax(0, 0.82fr)}.service-detail__row:nth-child(even) .service-detail__row-copy{order:2}.service-detail__row-copy{display:grid;gap:1rem;max-width:43rem}.service-detail__row-media{margin:0;border:1px solid var(--pd-rule-strong);background:var(--pd-paper)}.service-detail__row-media img{display:block;width:100%;aspect-ratio:4/3;height:auto;-o-object-fit:cover;object-fit:cover;filter:saturate(0.9) contrast(1.05)}.project-file{color:var(--pd-ink)}.project-file__hero{position:relative;display:grid;grid-template-columns:minmax(0, 1fr) minmax(14rem, 24rem);gap:clamp(1.5rem,4vw,3rem);align-items:end;min-height:clamp(26rem,48vw,38rem);padding:clamp(5.5rem,10vw,9rem) clamp(1rem,4vw,4rem) clamp(3rem,7vw,6rem);overflow:hidden}.project-file__frame{position:absolute;inset:1rem;display:grid;grid-template-columns:repeat(2, auto);align-content:space-between;justify-content:space-between;color:var(--pd-muted);font-size:.62rem;pointer-events:none;text-transform:uppercase}.project-file__heading{position:relative;z-index:2;max-width:65rem}.project-file__heading h1{max-width:11ch;margin:0;color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(3.1rem,11vw,10rem);font-weight:700;letter-spacing:0;line-height:.88;text-transform:uppercase}.project-file__heading>p:not(.technical-kicker){max-width:42rem;margin:clamp(1.25rem,3vw,2.5rem) 0 0;border-left:1px solid var(--pd-rule-strong);padding-left:clamp(1rem,2vw,1.5rem);color:var(--pd-muted);font-size:clamp(1rem,1.6vw,1.35rem);line-height:1.65}.project-file__cover{position:relative;z-index:1;width:min(100%,24rem);margin:0;border:1px solid var(--pd-rule-strong);background:var(--pd-paper);justify-self:end}.project-file__cover img{display:block;width:100%;aspect-ratio:1/1;height:auto;-o-object-fit:cover;object-fit:cover;filter:saturate(0.9) contrast(1.05)}.project-file__body{display:grid;grid-template-columns:minmax(0, 1fr) minmax(18rem, 0.34fr);gap:clamp(2rem,5vw,4rem);padding:0 clamp(1rem,4vw,4rem) clamp(4.5rem,8vw,8rem)}.project-file__section{display:grid;gap:clamp(1.5rem,4vw,3rem)}.project-file__section--gallery{grid-column:1/-1}.project-file__section-heading{display:grid;gap:.75rem}.project-file__section-heading h2{margin:0;color:var(--pd-ink);font-size:clamp(2rem,5vw,4.8rem);line-height:.96;text-transform:uppercase}.project-file__text{max-width:58rem;color:var(--pd-muted);font-size:clamp(1.05rem,1.55vw,1.35rem);line-height:1.75}.project-file__text p{margin:0}.project-file__text p+p{margin-top:1rem}.project-file__facts{display:grid;align-content:start;border-top:1px solid var(--pd-ink);border-left:1px solid var(--pd-rule)}.project-file__facts div{display:grid;gap:.6rem;border-right:1px solid var(--pd-rule);border-bottom:1px solid var(--pd-rule);padding:clamp(1rem,2vw,1.35rem)}.project-file__facts span{color:var(--pd-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.project-file__facts strong{color:var(--pd-ink);font-size:.92rem;line-height:1.55}.project-file__facts ul{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}.project-file__facts li{border:1px solid var(--pd-rule);padding:.42rem .55rem;color:var(--pd-muted);font-size:.68rem;text-transform:uppercase}.project-gallery{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1px;background:var(--pd-rule-strong)}.project-gallery__item{position:relative;display:block;min-height:12rem;border:0;background:var(--pd-paper);padding:0;color:var(--pd-ink);cursor:zoom-in}.project-gallery__item img{display:block;width:100%;aspect-ratio:4/3;height:auto;-o-object-fit:cover;object-fit:cover;transition:filter 180ms ease}.project-gallery__item span{position:absolute;left:.75rem;bottom:.75rem;background:rgba(247,243,234,.86);padding:.35rem .45rem;color:var(--pd-muted);font-size:.65rem;font-weight:700;text-transform:uppercase}.project-gallery__item:hover img,.project-gallery__item:focus-visible img{filter:saturate(0.85) contrast(1.12)}.project-lightbox{width:min(72rem,92vw);max-width:none;border:1px solid var(--pd-rule-strong);background:var(--pd-paper);padding:clamp(.75rem,2vw,1.25rem)}.project-lightbox::backdrop{background:rgba(25,24,21,.72)}.project-lightbox [data-lightbox-image]{display:block;width:100%;height:min(72vh,42rem);-o-object-fit:contain;object-fit:contain;background:rgba(25,24,21,.06)}.project-lightbox__bar{display:flex;gap:.5rem;align-items:center;justify-content:space-between;margin-bottom:.75rem}.project-lightbox__control,.project-lightbox__close{display:inline-flex;min-height:3rem;align-items:center;border:1px solid var(--pd-button);background:var(--pd-button);padding:.8rem 1.1rem;color:var(--pd-ink);cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;text-decoration:none;text-transform:uppercase;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.project-lightbox__control:hover,.project-lightbox__control:focus-visible,.project-lightbox__close:hover,.project-lightbox__close:focus-visible{border-color:var(--pd-ink);background:var(--pd-ink);color:var(--pd-paper)}.wpcf7{margin-top:2rem;border-top:1px solid var(--pd-rule-strong);border-left:1px solid var(--pd-rule-strong);color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.wpcf7 form{display:grid}.wpcf7 form>p{display:grid;margin:0}.wpcf7 label{display:grid;grid-template-columns:minmax(10rem, 0.38fr) minmax(0, 1fr);align-items:stretch;margin:0;border-right:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong);color:var(--pd-muted);font-size:.72rem;font-weight:700;line-height:1.4;text-transform:uppercase}.wpcf7-form-control-wrap{display:block;border-left:1px solid var(--pd-rule)}.wpcf7 label,.wpcf7 input,.wpcf7 textarea{width:100%}.wpcf7 label{padding-left:1rem}.wpcf7 input,.wpcf7 textarea{min-height:3.25rem;border:0;border-radius:0;background:#f7f3ea;padding:.95rem 1rem;color:var(--pd-ink);font:inherit;outline:0;box-shadow:inset 0 0 0 1px var(--pd-rule-strong)}.wpcf7 textarea{min-height:10rem;resize:vertical}.wpcf7 input:focus,.wpcf7 textarea:focus{background:#f7f3ea;box-shadow:inset 0 0 0 2px var(--pd-accent)}.wpcf7 .wpcf7-submit{justify-self:end;width:auto;min-height:3rem;margin:1.25rem;border:1px solid var(--pd-button);background:var(--pd-button);padding:.8rem 1.1rem;color:var(--pd-ink);cursor:pointer;font-size:.78rem;font-weight:700;text-transform:uppercase;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease}.wpcf7 .wpcf7-submit:hover,.wpcf7 .wpcf7-submit:focus-visible{border-color:var(--pd-ink);background:var(--pd-ink);color:var(--pd-paper)}.wpcf7 form .wpcf7-response-output{margin:0;border:0;border-top:1px solid var(--pd-rule-strong);padding:1rem;color:var(--pd-muted);font-size:.78rem}.wpcf7-not-valid-tip{padding:.35rem 1rem .75rem;color:var(--pd-accent);font-size:.7rem;font-weight:700;text-transform:uppercase}.drawing-title-block{position:relative;border-top:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong);background:rgba(247,243,234,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--pd-ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.drawing-title-block__grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));border-left:1px solid var(--pd-rule-strong)}.drawing-title-block__grid div{display:grid;gap:.4rem;min-height:5rem;align-content:center;border-right:1px solid var(--pd-rule-strong);border-bottom:1px solid var(--pd-rule-strong);padding:.85rem calc(clamp(1rem,3vw,2.5rem) + clamp(1rem,3vw,3rem))}.drawing-title-block span{color:var(--pd-muted);font-size:.65rem;text-transform:uppercase}.drawing-title-block strong{font-size:.78rem;text-transform:uppercase}.drawing-title-block__bottom{display:grid;grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);gap:1rem 2rem;align-items:center;padding:1rem clamp(1rem,3vw,2.5rem);color:var(--pd-muted);font-size:.75rem}.drawing-title-block__bottom p{margin:0}.drawing-title-block__bottom nav{justify-self:center}.drawing-title-block__links{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.drawing-title-block a{color:inherit;text-decoration:none}.drawing-title-block a:hover,.drawing-title-block a:focus{color:var(--pd-accent)}.cursor-callout{position:fixed;top:var(--cursor-y, 0);left:var(--cursor-x, 0);z-index:90;display:none;transform:translate(0.85rem, 0.85rem);border:1px solid var(--pd-accent);background:var(--pd-paper);padding:.25rem .4rem;color:var(--pd-accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.62rem;pointer-events:none;text-transform:uppercase}.cursor-callout.is-visible{display:block}.js .motion-reveal{opacity:0;transform:translateY(1.5rem);filter:blur(0.18rem);transition:opacity 700ms ease,transform 700ms ease,filter 700ms ease;transition-delay:var(--motion-delay, 0ms);will-change:opacity,transform,filter}.js .motion-reveal.is-visible{opacity:1;transform:translateY(0);filter:blur(0);will-change:auto}@media(min-width: 768px){.technical-header{grid-template-columns:auto minmax(0, 1fr)}.technical-nav{display:block;margin-right:clamp(1rem,3vw,3rem);justify-self:end}.technical-menu-toggle{display:none}}@media(min-width: 1024px){.viewport-readout{display:grid}}@media(max-width: 1023px){.technical-hero{grid-template-columns:1fr}.technical-hero__media{min-height:24rem}.technical-process,.engineer-record,.drawing-title-block__grid,.about-company__office{grid-template-columns:1fr 1fr}.about-company__principles article{grid-template-columns:minmax(4rem, 0.2fr) minmax(0, 1fr)}.about-company__principles p{grid-column:2}.projects-index__row{grid-template-columns:minmax(4rem, 0.18fr) minmax(9rem, 0.34fr) minmax(0, 1fr)}.projects-index__meta,.projects-index__services,.projects-index__link{grid-column:3}.services-index__grid{grid-template-columns:repeat(2, minmax(0, 1fr))}.service-detail__row,.service-detail__row:nth-child(even){grid-template-columns:minmax(0, 1fr)}.service-detail__row:nth-child(even) .service-detail__row-copy{order:0}.project-file__body{grid-template-columns:1fr}.project-gallery{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(max-width: 767px){body::before{background-size:4.39rem 4.39rem}.technical-hero{min-height:auto;padding-top:5rem}.technical-hero__media{min-height:18rem}.technical-hero__frame{inset:.75rem;grid-template-columns:1fr}.technical-hero__axis--y,.technical-hero__point--c{display:none}.technical-hero__title-block,.capability-register__row,.technical-process,.engineer-record,.drawing-title-block__grid,.about-company__frame,.about-company__principles article,.projects-index__header,.projects-index__row,.services-index__header,.services-index__grid,.project-initiation-sheet div{grid-template-columns:1fr}.about-company{padding-top:4rem}.about-company::before,.about-company::after{display:none}.about-company__hero{min-height:auto}.about-company__copy h1{font-size:clamp(3rem,18vw,5.8rem)}.about-company__principles p{grid-column:auto}.about-company__faq-item summary{grid-template-columns:minmax(0, 1fr) auto;gap:.55rem}.about-company__faq-index{grid-column:1/-1}.about-company__faq-answer{grid-template-columns:1fr}.about-company__faq-answer>*{grid-column:auto}.projects-index{padding-top:4rem}.projects-index__header h1{font-size:clamp(3rem,18vw,5.8rem)}.services-index,.service-detail{padding-top:4rem}.services-index__header h1,.service-detail__hero h1{font-size:clamp(3rem,18vw,5.8rem)}.projects-index__meta,.projects-index__services,.projects-index__link{grid-column:auto}.project-file__hero{grid-template-columns:1fr;min-height:auto;padding-top:4rem}.project-file__cover{width:min(100%,18rem);justify-self:start}.project-file__frame{position:static;grid-template-columns:1fr;gap:.35rem;margin-bottom:1rem}.project-file__heading h1{font-size:clamp(3rem,18vw,5.8rem)}.project-file__body{padding-top:0}.project-gallery{grid-template-columns:1fr}.capability-register__row{gap:.6rem}.capability-register__row p{grid-column:auto}.technical-process li{min-height:0}.project-initiation-sheet strong{border-top:1px solid var(--pd-rule);border-left:0}.contact-page-details p{grid-template-columns:1fr}.contact-page-details a,.contact-page-details span{border-top:1px solid var(--pd-rule);border-left:0}.wpcf7 label{grid-template-columns:1fr;gap:0;padding-left:0;padding-top:.85rem}.contact-page-form .wpcf7 label{padding-bottom:.85rem}.wpcf7-form-control-wrap{margin-top:.85rem;border-top:1px solid var(--pd-rule);border-left:0}.wpcf7 .wpcf7-submit{justify-self:start}}@media(min-width: 1024px){.projects-index__header{grid-template-columns:minmax(0, 1fr) minmax(18rem, 0.42fr)}.about-company__hero{grid-template-columns:minmax(0, 1fr) minmax(16rem, 0.3fr)}.about-company__office{grid-template-columns:minmax(10rem, 0.32fr) minmax(0, 1fr)}.project-initiation-layout{grid-template-columns:minmax(0, 0.95fr) minmax(20rem, 0.65fr)}.contact-page-maps{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}.technical-mobile-menu__panel,.js .motion-reveal{transition:none}.js .motion-reveal{opacity:1;transform:none;filter:none}}.placeholder\:block::-moz-placeholder {
  display: block;
}.placeholder\:block::placeholder {
  display: block;
}.placeholder\:inline::-moz-placeholder {
  display: inline;
}.placeholder\:inline::placeholder {
  display: inline;
}.focus\:not-sr-only:focus {
  position: static;
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  overflow: visible;
  clip: auto;
  white-space: normal;
}.focus\:fixed:focus {
  position: fixed;
}.focus\:left-4:focus {
  left: 1rem;
}.focus\:top-4:focus {
  top: 1rem;
}.focus\:z-50:focus {
  z-index: 50;
}.focus\:bg-neutral-50:focus {
  --tw-bg-opacity: 1;
  background-color: rgb(247 243 234 / var(--tw-bg-opacity));
}.focus\:px-4:focus {
  padding-left: 1rem;
  padding-right: 1rem;
}.focus\:py-2:focus {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}.focus\:text-neutral-950:focus {
  --tw-text-opacity: 1;
  color: rgb(85 82 77 / var(--tw-text-opacity));
}@media (min-width: 640px) {

  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}@media (min-width: 1024px) {

  .lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmaWxlOi8vL2hvbWUvZGRldi9wcm9qZWN0cy9wcm9qZWN0cy9kZXNpZ25vdXMvcGRlbmdpbmVlcmluZy93cC1jb250ZW50L3RoZW1lcy9kZXNpZ25vdXMvYXNzZXRzL3Njc3MvYXBwLnNjc3MiLCJmaWxlOi8vL2hvbWUvZGRldi9wcm9qZWN0cy9wcm9qZWN0cy9kZXNpZ25vdXMvcGRlbmdpbmVlcmluZy93cC1jb250ZW50L3RoZW1lcy9kZXNpZ25vdXMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fcGFnZS1idWlsZGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZUFDQSxxQkFDQSxvQkNGQSxNQUNFLG9CQUNBLGtCQUNBLG9CQUNBLCtCQUNBLHNDQUNBLHFCQUNBLHFCQUNBLG9CQUdGLEtBQ0UsdUJBR0YsS0FDRSx3RUFDQSxrQkFDQSwyQkFDQSxvQkFHRixhQUNFLFdBQ0EsZUFDQSxRQUNBLFVBQ0Esb0JBQ0EsV0FDQSx3UEFDQSxnQ0FHRixPQUNFLGtCQUNBLFVBR0YsU0FFRSw0QkFHRixxQ0FFRSxtQ0FDQSxtQkFHRixzQkFFRSxtQ0FDQSxnQ0FDQSwrQkFDQSxpQ0FDQSw4QkFDQSwrQkFHRixrQkFDRSxnQkFDQSxNQUNBLFdBQ0EsYUFDQSxnQ0FDQSxTQUNBLG1CQUNBLDhDQUNBLGlDQUNBLHNDQUNBLDJCQUdGLGlCQUNFLG9CQUNBLG1CQUNBLGlDQUNBLGtCQUNBLGNBQ0EscUJBR0YsdUJBQ0UsY0FDQSw2QkFDQSxZQUdGLHVCQUNFLG9CQUNBLGNBQ0EsZUFDQSxtQkFDQSxpQkFDQSwrQkFDQSx5QkFHRixtR0FHRSxjQUNBLGNBQ0EsV0FDQSx5QkFDQSxXQUdGLG9DQUNFLCtCQUdGLG1DQUNFLDZCQUdGLGVBQ0UsYUFHRiw4RUFHRSxTQUNBLFVBQ0EsZ0JBR0YscUJBQ0UsYUFDQSx5QkFDQSxtQkFDQSx3RUFDQSxlQUNBLHlCQUdGLHVCQUNFLHNCQUNBLHFCQUdGLDBEQUVFLHVCQUdGLCtCQUNFLGFB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 */