/* Sources: approved SVG geometry; theme.typography.json roles; reasons.json elements. */
:root {
  --gd-scale: 1;
  --gd-body: 14px;
  --gd-font-mono: "Suisse Intl Mono", monospace;
  --gd-section: 0px;
}
@media (max-width: 1439px) { :root { --gd-scale: sqrt(calc(100vw / 1440px)); } }
* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body { margin: 0; background: var(--gd-paper); color: var(--gd-ink); }
.wp-site-blocks, .gd-main, .entry-content { padding: 0; margin: 0; }
.gd-section { margin: 0; padding: calc(40px * var(--gd-scale) + 10px) 0 calc(90px * var(--gd-scale)); }
.gd-section p, .gd-section figure, .gd-section h1, .gd-section h2, .gd-section h3 { margin: 0; }
.gd-page p { max-width: none; }
.gd-copy-mobile { display: none; }
.gd-body { font-family: "Suisse Intl", sans-serif; font-size: var(--gd-body); line-height: 1.3571428571; font-weight: 300; }
.gd-heading { font-size: var(--wp--preset--font-size--heading); font-weight: 350; line-height: 1.1; letter-spacing: -.02em; }
.gd-card-title { font-size: var(--wp--preset--font-size--lede); font-weight: 350; line-height: 1.08; letter-spacing: -.02em; }
.gd-link, .gd-front-list { font-family: var(--gd-font-mono); font-weight: 400; font-size: var(--wp--preset--font-size--machine); line-height: 1.55; }
.gd-link a, .gd-front-list a { color: inherit; text-decoration: none; border-bottom: 1px solid color-mix(in srgb, currentColor 22%, transparent); }
.gd-link a::after, .gd-front-list a::after { content: " →"; font-family: "Suisse Intl", sans-serif; }
.gd-link a:hover, .gd-link a:focus-visible, .gd-front-list a:hover, .gd-front-list a:focus-visible { border-bottom-color: currentColor; }
a:focus-visible { outline: 1px solid currentColor; outline-offset: 4px; }
.gd-frame { background: color-mix(in srgb, var(--gd-ink) 8%, transparent); outline: 1px solid color-mix(in srgb, var(--gd-ink) 35%, transparent); outline-offset: -1px; }
.gd-frame img { display: block; width: 100%; height: 100%; object-fit: cover; }
.gd-frame img[src$="placeholder.svg"] { opacity: 0; }
.gd-l01 { background: var(--gd-black); color: var(--gd-ink-on-black); padding-bottom: calc(120px * var(--gd-scale)); }
.gd-hero-inner { padding-top: 0; }
.gd-entry { grid-column: 1 / -1; min-height: calc(100svh - 50px); display: flex; flex-direction: column; justify-content: center; }
.gd-hero-statement { margin-top: 32px !important; }
.gd-prose-slot > p + p { margin-top: .85em; }
.gd-prose-slot strong { font-family: "Suisse Intl", sans-serif; font-weight: 500; }
.gd-prose-slot { overflow-wrap: break-word; hyphens: auto; }
.gd-invite { grid-column: 1 / -1; margin-top: 24px !important; }
.gd-methods-forms { grid-column: 1 / -1; max-width: 60ch; margin-top: 60px; }
.gd-domains-heading { padding-top: 50px; }
.gd-domains-heading > .gd-heading { grid-column: 1 / -1; }
.gd-cta a::after { content: none; }
.gd-hero-line { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.gd-hero-title { font-size: var(--wp--preset--font-size--display); font-weight: 350; line-height: .96; letter-spacing: -.025em; white-space: nowrap; }
.gd-enter { flex-shrink: 0; font-size: var(--wp--preset--font-size--machine); }
.gd-enter a { display: inline-block; min-height: 44px; padding-block: .6em; margin-block: -.6em; }
.gd-front-lists { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--gd-gap); margin: calc(max(60px, 80px * var(--gd-scale)) + 22px) 0 20px; }
.gd-front-list { list-style: none; padding: 0; margin: 0; }
.gd-front-list li { margin: 0; min-height: 22px; max-width: none; }
.gd-l06 .gd-page { padding-top: 10px; }
.gd-l06 .gd-card-title { grid-column: 1 / -1; margin-bottom: 28px; }
.gd-l06 .gd-cta { grid-column: 1 / -1; margin-top: 12px; margin-bottom: 36px; }
.gd-card-media { width: 100%; }
.gd-card-media.wp-block-media-text { display: block; position: relative; padding: 0; }
.gd-card-media > .wp-block-media-text__media { position: absolute; inset: 0; width: 100%; height: 100%; }
.gd-card-media > .wp-block-media-text__content { display: none; }
.gd-card-media video { display: block; width: 100%; height: 100%; object-fit: contain; }
.gd-l06 .gd-text > *, .gd-l05 .gd-prose > * { break-inside: auto; }
.gd-caption { font-family: var(--gd-font-mono); font-weight: 400; font-size: var(--wp--preset--font-size--caption); line-height: 1.45; letter-spacing: .01em; }
.gd-l02 .gd-page, .gd-case2 .gd-page { align-items: start; padding-top: 10px; }
.gd-l02 .gd-text-left, .gd-l02 .gd-strip, .gd-l02 .gd-text-right { grid-row: 1; }
.gd-text-left .gd-heading, .gd-case2 .gd-heading { margin-bottom: 24px; }
.gd-text-right { padding-top: calc(var(--wp--preset--font-size--heading) * 1.1 + 24px); }
.gd-l02 .gd-text-right { padding-top: 0; }
.gd-work-copy + .gd-work-copy { margin-top: 48px; }
.gd-work-copy .gd-heading { margin-bottom: 24px; }
.gd-work-copy > :is(h1,h2,p):empty { display: none; }
.gd-l02 .gd-strip .gd-frame { aspect-ratio: 4 / 3; }
.gd-dark-frame { background: color-mix(in srgb, var(--gd-ink) 85%, transparent); }
.gd-frame a { display: block; height: 100%; }
.gd-case-tile, .gd-method-tile { position: relative; }
.gd-case-tile .gd-tile-name, .gd-method-tile .gd-tile-name { position: absolute; color: var(--gd-ink-on-black); pointer-events: none; font: 400 var(--wp--preset--font-size--machine)/1.55 var(--gd-font-mono); }
.gd-case-tile .gd-tile-name { top: calc(100cqw * .375); left: 50%; width: max-content; max-width: 90%; text-align: center; transform: translate(-50%,-50%); }
.gd-case-tile { container-type: inline-size; }
.gd-tile-name { border-bottom: 1px solid color-mix(in srgb, currentColor 22%, transparent); }
.gd-tile-name::after { content: ' →'; font-family: 'Suisse Intl', sans-serif; }
.gd-case-tile:has(a:hover) .gd-tile-name, .gd-case-tile:has(a:focus-visible) .gd-tile-name,
.gd-method-tile:has(a:hover) .gd-tile-name, .gd-method-tile:has(a:focus-visible) .gd-tile-name { border-bottom-color: currentColor; }
.gd-case-tile .gd-caption { padding-top: 8px; }
.gd-case-tile .gd-frame a:focus-visible, .gd-method-tile a:focus-visible { outline-color: var(--gd-ink); }
.gd-method-tile .gd-tile-name { bottom: 8px; left: 8px; font-size: var(--wp--preset--font-size--machine); }
.gd-l03 { --gd-band-cols: 3; --gd-caption-cols: 3; }
.gd-l03 .gd-page { padding-top: 10px; }
.gd-l03 .gd-intro-a { grid-column: 1 / span 4; }
.gd-l03 .gd-intro-b { grid-column: 5 / span 4; padding-top: calc(var(--wp--preset--font-size--heading) * 1.1 + 24px); }
.gd-l03 .gd-heading { margin-bottom: 24px; }
.gd-l03 .gd-band { margin-top: 60px; }
.gd-l03 .gd-captions { margin-top: 80px; row-gap: 40px; }
.gd-caption-heading { font: 400 var(--wp--preset--font-size--machine)/1.55 var(--gd-font-mono); letter-spacing: 0; margin-bottom: 8px !important; }
.gd-l07 .gd-page { padding-top: 26px; align-items: start; }
.gd-l07 .gd-print-stack { grid-column: 4 / span 6; }
.gd-l07 .gd-body, .gd-l07 .gd-print-first { grid-row: 1; }
.gd-l07 .gd-print-first { margin-top: 14px; }
.gd-l07 .gd-h1 { grid-row: 2; margin-top: calc(60px * var(--gd-scale) + 10px); margin-bottom: calc(40px * var(--gd-scale) + 10px); }
.gd-l07 .gd-print-second { grid-row: 3; }
.gd-l08 .gd-h1 { margin: calc(10px * var(--gd-scale)) 0 40px; }
.gd-l08 .gd-band { width: calc(100% + var(--gd-gutter)); }
.gd-l08 .gd-h2, .gd-l08 .gd-body { margin-top: calc(50px * var(--gd-scale)); }
.gd-lede { font-family: "Suisse Intl", sans-serif; font-size: var(--wp--preset--font-size--lede); line-height: 1.08; font-weight: 350; letter-spacing: -.02em; }
.gd-minor-heading { font-size: var(--wp--preset--font-size--body); font-weight: 500; line-height: 1.55; letter-spacing: 0; margin-bottom: 14px !important; }
.gd-l08 .gd-h2 .gd-lede { max-width: none; }
.gd-centered { grid-column: 1 / -1; text-align: center; margin: 10px 0 30px !important; }
.gd-l05 .wp-block-separator.gd-rule { border: 0; width: 100%; height: 1px; opacity: .35; margin: 30px 0 40px; background: var(--gd-ink); }
.gd-l05 .gd-glossary { columns: 2; column-gap: var(--gd-gap); }
.gd-gloss-entry { break-inside: avoid; display: grid; grid-template-columns: 36px 1fr; padding-bottom: 30px; }
.gd-gloss-number { font: 400 12px/1.55 var(--gd-font-mono); }
.gd-gloss-title { font-size: var(--wp--preset--font-size--body); line-height: 1.55; letter-spacing: 0; font-weight: 500; margin-bottom: 8px !important; }
.gd-l04 .gd-lede { max-width: none; font-family: var(--gd-font-mono); font-size: var(--gd-body); line-height: 1.5; font-weight: 400; letter-spacing: 0; }
.gd-l04 .gd-cells { margin-top: 40px; grid-auto-flow: row; grid-auto-rows: minmax(44px, auto); }
.gd-l04 .gd-cell { position: relative; color: var(--gd-ink); outline-color: color-mix(in srgb, var(--gd-ink) 35%, transparent); background: color-mix(in srgb, var(--gd-ink) 4%, transparent); font: 400 var(--wp--preset--font-size--machine)/1.55 var(--gd-font-mono); }
.gd-l04 .gd-cell-label { font-size: inherit; align-self: end; position: static; z-index: 1; }
.gd-l04 .gd-cell-label a::before { content: ''; position: absolute; inset: 0; }
.gd-cell-image { position: absolute; inset: 0; margin: 0; overflow: hidden; background: color-mix(in srgb, var(--gd-ink) 8%, transparent); }
.gd-cell-image img { height: 100%; width: 100%; object-fit: cover; }
.gd-cell-image img[src$="placeholder.svg"] { opacity: 0; }
.gd-cell-image a { display: block; width: 100%; height: 100%; }
.gd-cell--img .gd-cell-label { align-self: end; margin-top: auto; }
.gd-cell--img .gd-cell-number { display: none; }
.gd-case1 .gd-h1 { margin: calc(90px * var(--gd-scale) - var(--wp--preset--font-size--heading)) 0 calc(110px * var(--gd-scale) - var(--wp--preset--font-size--heading)); }
.gd-case1 .gd-link { margin-top: 12px; margin-bottom: calc(90px * var(--gd-scale) - 12px); }
.gd-case1 .gd-captions { display: block; columns: 3; column-gap: var(--gd-gap); }
.gd-case2 .gd-text, .gd-case2 .gd-frames { grid-row: 1; }
.gd-case1 .gd-case-image img, .gd-case2 .gd-case-image img { object-fit: contain; }
.gd-case-image { background: transparent; }
.gd-section .gd-case-credits { margin-top: 24px; }
.gd-section .gd-case-back { margin-top: 24px; }
.gd-case-tile .gd-tile-name { background: rgb(0 0 0 / .72); padding: 3px 8px; }
.gd-footer { margin: 0; padding: 0 var(--gd-gutter); display: flex; align-items: center; border-top: 1px solid color-mix(in srgb, var(--gd-ink) 12%, transparent); min-height: calc(90px * var(--gd-scale) + 30px); }
.gd-footer p { margin: 0; font-family: var(--gd-font-mono); font-size: var(--wp--preset--font-size--machine); font-weight: 400; }
.gd-footer { justify-content: space-between; gap: 24px; flex-wrap: wrap; padding-block: 28px; }
.gd-footer-links { display: flex; flex-wrap: wrap; gap: 12px 28px; }
.gd-light-readout { padding: 19px var(--gd-gutter); font: 400 11px/16px var(--gd-font-mono); color: color-mix(in srgb, var(--gd-ink) 70%, var(--gd-paper)); }
.gd-method-tile .gd-tile-name { background: rgb(0 0 0 / .72); padding: 3px 8px; max-width: calc(100% - 16px); }
.gd-cell--img .gd-cell-label { color: #fff; background: rgb(0 0 0 / .78); padding: 4px 8px; }
.gd-privacy { max-width: 76ch; padding: 60px var(--gd-gutter); margin: auto; }
.gd-privacy h1 { margin-bottom: 40px; }
.gd-privacy h2 { margin: 32px 0 12px; font-size: 1.4em; }
.gd-privacy p { margin: 0 0 1em; }
@media (min-width: 601px) and (max-width: 1024px) {
  .gd-l07 .gd-print-stack { grid-column: 3 / span 3; }
  .gd-l03 .gd-intro-a { grid-column: 1 / span 3; }
  .gd-l03 .gd-intro-b { grid-column: 4 / span 3; }
}
@media (max-width: 600px) {
  .gd-copy-desktop { display: none; }
  .gd-copy-mobile { display: block; }
  .gd-l03 { --gd-band-cols: 2; --gd-caption-cols: 1; }
  .gd-l07 .gd-print-stack { grid-column: 1 / -1; }
  .gd-hero-inner { padding-top: 0; }
  .gd-hero-line { display: block; }
  .gd-hero-title { font-size: clamp(40px, 11vw, 48px); white-space: normal; }
  .gd-phone-line { display: block; }
  .gd-enter { text-align: right; margin-top: 8px !important; }
  .gd-front-list li { padding-bottom: 6px; }
  .gd-front-lists { display: block; }
  .gd-front-extra { display: none; }
  .gd-l06 .gd-card-title { margin-bottom: 36px; }
  .gd-l02 .gd-text-left, .gd-l02 .gd-strip, .gd-l02 .gd-text-right { grid-row: auto; }
  .gd-l02 .gd-text-right, .gd-l02 .gd-work-copy:not(:has(.gd-work-title)) { display: none; }
  .gd-l02 .gd-work-title { margin-bottom: 30px; }
  .gd-l02 .gd-work-subtitle { display: none; }
  .gd-text-right { padding-top: 30px; padding-bottom: 30px; }
  .gd-l03 .gd-intro-a, .gd-l03 .gd-intro-b { grid-column: 1 / -1; }
  .gd-l03 .gd-intro-b { padding-top: 30px; }
  .gd-l03 .gd-band { margin-top: 40px; }
  .gd-l03 .gd-captions { margin-top: 30px; row-gap: 20px; }
  .gd-l07 .gd-body, .gd-l07 .gd-print-first, .gd-l07 .gd-print-second, .gd-l07 .gd-h1 { grid-row: auto; }
  .gd-l07 .gd-print-first { margin-top: 30px; }
  .gd-l08 .gd-band { width: calc(100% + 2 * var(--gd-gutter)); }
  .gd-l08 .gd-body { margin-top: 36px; }
  .gd-l05 .gd-glossary { columns: 1; }
  .gd-l04 .gd-cell--responsive { grid-row: auto; aspect-ratio: 1 / .55; }
  .gd-l04 .gd-cell--responsive .gd-cell-image { display: none; }
  .gd-l04 .gd-cells { grid-template-columns: 1fr; gap: 0; }
  .gd-l04 .gd-cell { grid-row: auto; aspect-ratio: auto; display: grid; grid-template-columns: 2.5em 1fr; align-items: baseline; gap: 12px; padding: 12px 0; background: none; outline: none; border-bottom: 1px solid color-mix(in srgb, currentColor 22%, transparent); }
  .gd-l04 .gd-cell-image { display: none; }
  .gd-l04 .gd-cell--img .gd-cell-number { display: block; }
  .gd-l04 .gd-cell-label { margin: 0; }
  .gd-cell--img .gd-cell-label { color: inherit; background: none; padding: 0; }
  .gd-case1 .gd-captions { columns: 1; }
  .gd-case2 .gd-text, .gd-case2 .gd-frames { grid-row: auto; }
  .gd-case2 .gd-text { margin-bottom: 30px; }
}
