@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:block;src:url("/fonts/plus-jakarta-sans-latin-069be307.woff2") format("woff2")}@font-face{font-family:"Lora";font-style:normal;font-weight:700 800;font-display:block;src:url("/fonts/lora-latin-700-aa5ff4f2.woff2") format("woff2")}@font-face{font-family:"Libre Baskerville";font-style:italic;font-weight:400;font-display:block;src:url("/fonts/libre-baskerville-italic-latin-30500bfe.woff2") format("woff2")}:root{--sans: "Plus Jakarta Sans", system-ui, sans-serif;--display: "Lora", Georgia, serif;--serif: "Libre Baskerville", Georgia, serif}h1{font-family:var(--display);font-weight:700}*,*::before,*::after{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{display:flex;flex-direction:column;min-height:100vh;margin:0;font-family:var(--sans);font-weight:500;line-height:1.6;color:var(--black);background:var(--cream);-webkit-font-smoothing:antialiased}.site-page{flex:1 0 auto}a{color:inherit}em{font-family:var(--serif);font-style:italic;font-weight:400}.site-header{display:grid;grid-template-columns:1fr auto;grid-template-areas:"logo end" "nav nav";gap:1rem 1.5rem;align-items:center;padding:1.25rem 1.5rem;background:var(--cream);border-bottom:1px solid var(--rule)}@media (max-width: 22.999rem){.site-header{grid-template-columns:1fr;grid-template-areas:"logo" "end";gap:0.35rem;padding:1rem 1.25rem}.site-header .site-header__end{justify-self:start;padding-left:2.05rem}}@media (min-width: 48rem){.site-header{grid-template-columns:1fr auto 1fr;grid-template-areas:"logo nav end";padding:1.5rem 2.5rem}}.site-header--overlay{position:absolute;top:0;left:0;right:0;z-index:10;background:transparent;border-bottom:none;color:var(--white)}.site-header--overlay .site-header__logo,.site-header--overlay .site-header__nav a,.site-header--overlay .site-header__email{color:var(--white)}.site-header--overlay .site-header__nav a:hover,.site-header--overlay .site-header__nav a[aria-current="page"],.site-header--overlay .site-header__email:hover{opacity:0.75}.site-header__logo{-ms-grid-row:1;-ms-grid-column:1;grid-area:logo;display:inline-flex;align-items:center;gap:0.55rem;font-size:1.1rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;text-decoration:none}.studio-main .site-header > .site-header__logo{-ms-grid-row:1;-ms-grid-column:1}.experiment-detail-header .site-header > .site-header__logo{-ms-grid-row:1;-ms-grid-column:1}.site-header__mark{width:1.5rem;height:1.5rem;flex:0 0 auto}.site-header__nav{-ms-grid-row:3;-ms-grid-column:1;-ms-grid-column-span:3;grid-area:nav;display:flex;justify-content:center;gap:2rem}.site-header__nav a{font-size:0.68rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;text-decoration:none;color:var(--black)}.site-header__nav a:hover,.site-header__nav a[aria-current="page"]{opacity:0.55}.site-header__end{-ms-grid-row:1;-ms-grid-column:3;grid-area:end;justify-self:end}.experiment-detail-header .site-header > .site-header__end{-ms-grid-row:1;-ms-grid-column:2}@media (max-width: 22.999rem){.site-header__logo{-ms-grid-row:1;-ms-grid-column:1}.site-header__end{-ms-grid-row:3;-ms-grid-column:1}}@media (min-width: 48rem){.site-header__logo{-ms-grid-row:1;-ms-grid-column:1}.site-header__nav{-ms-grid-row:1;-ms-grid-column:2;-ms-grid-column-span:1}.site-header__end{-ms-grid-row:1;-ms-grid-column:3}}.site-header__email{font-size:0.68rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;text-decoration:none;color:var(--black);white-space:nowrap}.site-header__email:hover{opacity:0.55}.btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.9rem 1.6rem;border-radius:999px;font-family:var(--sans);font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:opacity 0.2s ease}.btn:hover{opacity:0.85}.btn--lime{background:var(--lime);color:var(--black)}.btn--outline{background:transparent;border:1.5px solid var(--black);color:var(--black)}.btn--ghost-light{color:var(--white);border:1px solid rgba(var(--paper-rgb), 0.5);background:rgba(var(--black-rgb), 0.18);backdrop-filter:blur(0.35rem)}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center}.hero__image{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;filter:brightness(0.55) saturate(0.9)}.hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg, rgba(var(--black-rgb), 0.55) 0%, rgba(var(--black-rgb), 0.25) 50%, rgba(var(--black-rgb), 0.45) 100%)}.hero__content{position:relative;z-index:1;padding:7rem 1.5rem 4rem;max-width:52rem}@media (min-width: 48rem){.hero__content{padding:8rem 2.5rem 5rem}}.hero__title{margin:0 0 2rem;font-size:clamp(2.75rem, 7vw, 5rem);font-weight:800;line-height:1.05;letter-spacing:-0.03em;color:var(--white);text-transform:capitalize}.hero__sub{margin:1.25rem 0 0;max-width:22rem;font-size:0.95rem;font-weight:500;line-height:1.55;color:rgba(var(--paper-rgb), 0.75)}.hero__actions{display:flex;flex-wrap:wrap;gap:0.75rem}.solar-page{--solar-ink: var(--pine);min-height:calc(100vh - 11rem);padding:clamp(2rem, 5vw, 5rem) 1.5rem}@media (min-width: 48rem){.solar-page{padding-inline:2.5rem}}.solar-page .solar-chart{max-width:82rem;margin:0 auto}.solar-chart__heading{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}@media (min-width: 42rem){.solar-chart__heading{flex-direction:row;align-items:flex-end;justify-content:space-between}}.solar-chart__heading h1{margin:0;font-size:clamp(2.75rem, 7vw, 6.5rem);font-weight:800;line-height:0.95;letter-spacing:-0.055em}.solar-chart__eyebrow{margin:0 0 0.75rem;font-size:0.66rem;font-weight:700;letter-spacing:0.17em;text-transform:uppercase}.solar-chart__legend{display:flex;flex-wrap:wrap;gap:0.75rem 1.25rem;font-size:0.7rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase}.solar-chart__legend span{display:inline-flex;align-items:center;gap:0.5rem}.solar-key{display:inline-block;width:0.7rem;height:0.7rem;border-radius:50%;flex:0 0 auto}.solar-key--generation{background:var(--sun);border:1px solid var(--black)}.solar-key--usage{background:var(--solar)}.solar-chart__plot{position:relative;min-height:20rem;padding:1rem;overflow:hidden;color:var(--white);background:var(--solar-ink);border-radius:0.25rem 2rem 0.25rem 0.25rem;box-shadow:0 1.5rem 4rem rgba(var(--black-rgb), 0.18)}@media (min-width: 48rem){.solar-chart__plot{padding:1.5rem}}.solar-chart__plot svg{display:block;width:100%;height:auto;min-height:18rem;overflow:visible}.solar-chart__gridline{stroke:rgba(var(--paper-rgb), 0.12);stroke-width:1;stroke-dasharray:3 7}.solar-chart__axis-label{fill:rgba(var(--paper-rgb), 0.45);font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:0.06em}.solar-chart__axis-title{fill:rgba(var(--paper-rgb), 0.72);font-family:var(--sans);font-size:14px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}.solar-chart__line{fill:none;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.solar-chart__line--generation{stroke:var(--sun)}.solar-chart__line--usage{stroke:var(--solar)}.solar-chart__crosshair{opacity:0;stroke:rgba(var(--paper-rgb), 0.38);stroke-width:1;stroke-dasharray:4 5;vector-effect:non-scaling-stroke}.solar-chart__dot{opacity:0;stroke:var(--solar-ink);stroke-width:2;filter:drop-shadow(0 0 2px var(--paper));vector-effect:non-scaling-stroke}.solar-chart__dot--generation{fill:var(--sun)}.solar-chart__dot--usage{fill:var(--solar)}.solar-chart.is-ready .solar-chart__crosshair,.solar-chart.is-ready .solar-chart__dot{animation:solar-marker-in 0.25s 1.35s ease-out forwards}.solar-chart__hit-area{fill:transparent;cursor:crosshair}.solar-chart__hit-area:focus{outline:none;stroke:rgba(var(--sun-rgb), 0.75);stroke-width:2}.solar-chart__status{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:rgba(var(--paper-rgb), 0.58);font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.solar-chart.is-ready .solar-chart__status{display:none}.solar-chart__readout{display:flex;min-height:2.25rem;flex-wrap:wrap;align-items:center;gap:0.5rem 1.25rem;padding:0 0.75rem 0.5rem;font-size:0.74rem;color:rgba(var(--paper-rgb), 0.68);opacity:0}.solar-chart__readout strong{color:var(--white);letter-spacing:0.08em}.solar-chart__readout span{display:inline-flex;align-items:center;gap:0.4rem}.solar-chart__readout .solar-key{width:0.55rem;height:0.55rem}.solar-chart.is-ready .solar-chart__readout{animation:solar-marker-in 0.3s 1.4s ease-out forwards}@keyframes solar-marker-in{to{opacity:1}}@media (prefers-reduced-motion: reduce){.solar-chart.is-ready .solar-chart__crosshair,.solar-chart.is-ready .solar-chart__dot,.solar-chart.is-ready .solar-chart__readout{animation:none;opacity:1}}.experiment-detail--ansible-homelab .experiment-detail__body{max-width:82rem}.homelab-section-label{margin:0 0 0.85rem;font-size:0.66rem;font-weight:800;letter-spacing:0.18em;text-transform:uppercase}.homelab-totals{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));margin:1rem 0 0;border-top:2px solid var(--black);border-left:2px solid var(--black)}.homelab-totals div{min-height:8rem;padding:1rem;border-right:2px solid var(--black);border-bottom:2px solid var(--black)}.homelab-totals dt{font-size:0.62rem;font-weight:800;letter-spacing:0.13em;text-transform:uppercase}.homelab-totals dd{margin:1.2rem 0 0;font-size:clamp(1.7rem, 4vw, 3rem);font-weight:800;line-height:1}@media (min-width: 48rem){.homelab-totals{grid-template-columns:repeat(4, minmax(0, 1fr))}}.homelab-nodes{max-width:82rem;margin:0 auto;padding-bottom:0;color:var(--black)}.homelab-section-heading{display:grid;gap:1rem;margin-bottom:clamp(2rem, 5vw, 4rem)}.homelab-section-heading h2{margin:0;font-size:clamp(3.2rem, 8vw, 7rem);line-height:0.86;letter-spacing:-0.065em}@media (min-width: 48rem){.homelab-section-heading{grid-template-columns:1fr 2fr;align-items:end}}.homelab-node-grid{display:grid;gap:1.25rem}@media (min-width: 64rem){.homelab-node-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}.homelab-node{display:grid;grid-template-columns:minmax(6.75rem, 0.72fr) minmax(0, 1.28fr);min-width:0;overflow:hidden;color:var(--black);background:var(--paper);border:2px solid var(--black)}.homelab-node:nth-child(2){background:var(--sun)}.homelab-node:nth-child(3){background:var(--lake)}.homelab-node:nth-child(4){background:var(--blue);color:var(--paper)}@media (min-width: 40rem){.homelab-node{grid-template-columns:minmax(13rem, 0.78fr) minmax(0, 1.22fr)}}.homelab-node__art{display:grid;min-width:0;place-items:center;padding:0.75rem;overflow:hidden;border-right:2px solid currentColor;background-image:linear-gradient(rgba(var(--black-rgb), 0.08) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--black-rgb), 0.08) 1px, transparent 1px);background-size:24px 24px}.homelab-node__art img{display:block;width:100%;max-height:13rem;-o-object-fit:contain;object-fit:contain}@media (min-width: 40rem){.homelab-node__art{padding:1rem}.homelab-node__art img{max-height:21rem}}.homelab-node__copy{display:flex;min-width:0;flex-direction:column;padding:1rem 0.9rem}.homelab-node__copy h3{margin:0 0 1rem;font-size:clamp(1.3rem, 5.5vw, 1.8rem);line-height:0.95;letter-spacing:-0.045em}@media (min-width: 40rem){.homelab-node__copy{padding:clamp(1.4rem, 3vw, 2rem)}.homelab-node__copy h3{font-size:clamp(1.8rem, 3.2vw, 2.8rem)}}.homelab-node__index,.homelab-node__role{margin:0;font-size:0.61rem;font-weight:800;letter-spacing:0.15em;text-transform:uppercase}.homelab-node__role{margin:0.85rem 0 0.35rem;color:var(--solar)}@media (min-width: 40rem){.homelab-node__role{margin-top:1.5rem}}.homelab-node--agent .homelab-node__role{color:var(--sun)}.homelab-node--proxy .homelab-node__role{color:var(--white)}.homelab-node__specs{display:flex;flex-wrap:wrap;gap:0.3rem;margin:0.75rem 0 0;padding:0;list-style:none}.homelab-node__specs li{padding:0.28rem 0.4rem;font-size:0.52rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;border:1px solid currentColor}@media (min-width: 40rem){.homelab-node__specs{gap:0.4rem;margin-top:auto}.homelab-node__specs li{padding:0.35rem 0.55rem;font-size:0.58rem}}.homelab-nodes__prose{margin-top:clamp(2rem, 5vw, 4rem)}.homelab-nodes__prose p{margin:0;font-size:clamp(1rem, 1.4vw, 1.1rem);line-height:1.75}.homelab-nodes__prose p+p{margin-top:1.25rem}.homelab-nodes__prose a{font-weight:800;text-decoration-thickness:0.1em;text-underline-offset:0.2em}.homelab-graph-field{margin-inline:calc(50% - 50vw);padding:clamp(4rem, 8vw, 7rem) 1.5rem;color:var(--paper);background:var(--pine);border-block:2px solid var(--black)}.experiment-figure.homelab-graph{width:100%;max-width:82rem;margin:0 auto;margin-left:auto;color:var(--paper);background:var(--pine);border:0;transform:none}.experiment-figure__heading.homelab-graph__heading{align-items:baseline;padding:0 0 clamp(1.25rem, 3vw, 2rem)}.experiment-figure__heading.homelab-graph__heading>div{display:flex;width:100%;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.5rem 2rem}.experiment-figure__heading.homelab-graph__heading h2{margin:0;font-size:clamp(2.5rem, 5vw, 4.75rem);line-height:0.9;letter-spacing:-0.06em}.homelab-graph__eyebrow{margin:0 0 0.75rem;font-size:0.65rem;font-weight:800;letter-spacing:0.17em;text-transform:uppercase}.homelab-graph__updated{margin:0;font-size:0.68rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.homelab-graph__meta{display:flex;flex-direction:column;align-items:flex-start;gap:0.2rem}.homelab-graph__note{margin:0;color:rgba(var(--paper-rgb), 0.62);font-size:0.68rem}.homelab-chart-grid{position:relative;display:grid;gap:2px;background:var(--paper);border:2px solid var(--paper)}@media (min-width: 64rem){.homelab-chart-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}.homelab-chart{min-width:0;padding:clamp(0.85rem, 1.75vw, 1.35rem);color:var(--paper);background:var(--black)}.homelab-chart svg{display:block;width:100%;height:auto}.homelab-chart__heading{display:flex;align-items:flex-start;flex-direction:column;gap:0.4rem;margin-bottom:0.5rem}.homelab-chart__heading h3{flex-shrink:0;margin:0;font-size:clamp(1.35rem, 2.2vw, 2rem);letter-spacing:-0.04em;white-space:nowrap}.homelab-chart__readout{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0.3rem 0.65rem;font-size:0.52rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}.homelab-chart__reading::before{display:inline-block;width:0.45rem;height:0.45rem;margin-right:0.25rem;background:currentColor;content:""}.homelab-chart__reading--roc{color:var(--sun)}.homelab-chart__reading--bluejay{color:var(--blue)}.homelab-chart__reading--kinglet{color:var(--lake)}.homelab-chart__reading--robin{color:var(--solar)}.homelab-chart__readout strong{width:auto;color:var(--paper)}.homelab-chart__gridline{stroke:rgba(var(--paper-rgb), 0.12);stroke-width:1;vector-effect:non-scaling-stroke}.homelab-chart__axis-label{fill:rgba(var(--paper-rgb), 0.55);font-family:var(--sans);font-size:11px;font-weight:700}.homelab-chart__line{fill:none;stroke-width:3;stroke-linecap:square;stroke-linejoin:bevel;vector-effect:non-scaling-stroke;opacity:0;animation:homelab-line-in 450ms ease-out forwards}.homelab-chart__line--roc{stroke:var(--sun)}.homelab-chart__line--bluejay{stroke:var(--blue);animation-delay:80ms}.homelab-chart__line--kinglet{stroke:var(--lake);animation-delay:160ms}.homelab-chart__line--robin{stroke:var(--solar);animation-delay:240ms}.homelab-chart__crosshair{stroke:var(--paper);stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.homelab-chart__dot{stroke:var(--black);stroke-width:2;vector-effect:non-scaling-stroke}.homelab-chart__dot--roc{fill:var(--sun)}.homelab-chart__dot--bluejay{fill:var(--blue)}.homelab-chart__dot--kinglet{fill:var(--lake)}.homelab-chart__dot--robin{fill:var(--solar)}.homelab-chart__hit-area{fill:transparent;cursor:crosshair}.homelab-chart__hit-area:focus{outline:none;stroke:var(--paper);stroke-width:2}.homelab-graph__status{position:absolute;inset:0;display:grid;place-items:center;margin:0;color:var(--paper);font-size:0.7rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase}.homelab-graph.is-ready .homelab-graph__status{display:none}@keyframes homelab-line-in{to{opacity:1}}@media (prefers-reduced-motion: reduce){.homelab-chart__line{animation:none;opacity:1}}.homelab-control{display:grid;gap:clamp(1.5rem, 3vw, 2.5rem);max-width:82rem;margin:clamp(5rem, 11vw, 10rem) auto 0;padding-bottom:clamp(4rem, 10vw, 8rem)}.homelab-control>h2{margin:0;font-size:clamp(3rem, 6vw, 5.8rem);line-height:0.86;letter-spacing:-0.06em}.homelab-control__features{margin:0;padding:0;list-style:none;border-top:2px solid var(--black)}.homelab-control__features li{padding:clamp(0.85rem, 1.75vw, 1.15rem) 0;border-bottom:2px solid var(--black)}.homelab-control__features p{margin:0;font-size:clamp(0.92rem, 1.2vw, 1rem);line-height:1.6}.homelab-control__features a{font-weight:800;text-decoration-thickness:0.1em;text-underline-offset:0.2em}@media (min-width: 48rem){.homelab-control__features{display:grid;grid-template-columns:repeat(6, minmax(0, 1fr));-moz-column-gap:clamp(1.25rem, 2.5vw, 2rem);column-gap:clamp(1.25rem, 2.5vw, 2rem)}.homelab-control__features li{padding:clamp(0.85rem, 1.5vw, 1.1rem) 0}.homelab-control__features li:nth-child(1),.homelab-control__features li:nth-child(2),.homelab-control__features li:nth-child(3){grid-column:span 2}.homelab-control__features li:nth-child(4),.homelab-control__features li:nth-child(5){grid-column:span 3}}.homelab-control__feature-label{margin:0 0 0.35rem;font-size:0.61rem;font-weight:800;letter-spacing:0.15em;text-transform:uppercase;color:var(--solar)}.homelab-control__facts{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));margin:2rem 0 0;border-top:1px solid var(--black)}.homelab-control__facts div{padding:0.85rem 0;border-bottom:1px solid var(--black)}.homelab-control__facts dt{font-size:0.6rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase}.homelab-control__facts dd{margin:0.2rem 0 0;font-size:1.4rem;font-weight:800}.homelab-registry{margin:0;overflow:hidden;background:var(--black);border:2px solid var(--black);border-radius:0 2.5rem 0 0}.homelab-registry a{display:block}.homelab-registry img{display:block;width:100%;height:auto}.homelab-timeline{max-width:82rem;margin:0 auto;padding:clamp(1rem, 3vw, 2.5rem) 0 clamp(5rem, 11vw, 10rem);color:var(--black)}.homelab-timeline__eras{border-top:2px solid var(--black)}.homelab-era{display:grid;border-bottom:2px solid var(--black)}@media (min-width: 58rem){.homelab-era{grid-template-columns:minmax(17rem, 0.72fr) minmax(0, 1.65fr)}}.homelab-era__header{position:relative;padding:clamp(1.35rem, 3vw, 2.25rem);background:var(--paper);border-bottom:2px solid var(--black)}.homelab-era__header h3{max-width:23rem;margin:0;font-size:clamp(1.65rem, 3vw, 2.7rem);line-height:0.98;letter-spacing:-0.05em}@media (min-width: 58rem){.homelab-era__header{border-right:2px solid var(--black);border-bottom:0}}.homelab-era__marker{display:block;width:2.75rem;height:0.65rem;margin-bottom:clamp(1.5rem, 3vw, 3rem);background:var(--solar);border:1px solid var(--black)}.homelab-era__content{min-width:0;padding:clamp(1.35rem, 4vw, 3.5rem)}.homelab-era__content p,.homelab-era__content li{font-size:clamp(0.98rem, 1.25vw, 1.08rem);line-height:1.72}.homelab-era__content p{margin:0}.homelab-era__content p+p,.homelab-era__content p+ul,.homelab-era__content ul+p,.homelab-era__content p+figure,.homelab-era__content figure+p,.homelab-era__content p+.highlighter-rouge,.homelab-era__content .highlighter-rouge+p,.homelab-era__content p+pre,.homelab-era__content pre+p{margin-top:1.4rem}.homelab-era__content ul{margin-bottom:0;padding-left:1.25rem;list-style-type:square}.homelab-era__content li+li{margin-top:0.65rem}.homelab-era__content li::marker{color:var(--solar)}.homelab-era__content a{font-weight:800;text-decoration-color:var(--solar);text-decoration-thickness:0.12em;text-underline-offset:0.18em}.homelab-era__content a:hover,.homelab-era__content a:focus-visible{background:var(--sun)}.homelab-era__content :not(pre)>code{padding:0.08em 0.25em;font-size:0.88em;background:var(--paper);border:1px solid currentColor}.homelab-timeline__figure{margin:0;overflow:hidden;background:var(--black);border:2px solid var(--black);border-radius:0 2.5rem 0 0}.homelab-timeline__figure a{display:block}.homelab-timeline__figure img{display:block;width:100%;height:auto}.homelab-timeline__figure--graph{padding:clamp(0.5rem, 1.5vw, 1rem);background:var(--pine);border-radius:0}.homelab-timeline__code-figure{margin:clamp(2rem, 4vw, 3rem) 0}.homelab-timeline__code,.language-yaml.highlighter-rouge pre.highlight{max-width:100%;margin:0;padding:clamp(1rem, 2.5vw, 1.75rem);overflow-x:auto;color:var(--paper);background:var(--pine);border:2px solid var(--black);border-radius:0 2.5rem 0 0;scrollbar-color:var(--solar) var(--black);scrollbar-width:thin;-moz-tab-size:2;-o-tab-size:2;tab-size:2}.homelab-timeline__code::-webkit-scrollbar,.language-yaml.highlighter-rouge pre.highlight::-webkit-scrollbar{height:0.75rem}.homelab-timeline__code::-webkit-scrollbar-track,.homelab-timeline__code::-webkit-scrollbar-corner,.language-yaml.highlighter-rouge pre.highlight::-webkit-scrollbar-track,.language-yaml.highlighter-rouge pre.highlight::-webkit-scrollbar-corner{background:var(--black)}.homelab-timeline__code::-webkit-scrollbar-thumb,.language-yaml.highlighter-rouge pre.highlight::-webkit-scrollbar-thumb{background:var(--solar);border:2px solid var(--black);border-radius:0}.homelab-timeline__code::-webkit-scrollbar-thumb:hover,.language-yaml.highlighter-rouge pre.highlight::-webkit-scrollbar-thumb:hover{background:var(--sun)}.homelab-timeline__code code,.language-yaml.highlighter-rouge pre.highlight code{font-size:clamp(0.72rem, 1.2vw, 0.88rem);line-height:1.65}.homelab-timeline__code .yaml-key,.language-yaml.highlighter-rouge pre.highlight .yaml-key{color:var(--sun)}.homelab-timeline__code .yaml-value,.language-yaml.highlighter-rouge pre.highlight .yaml-value{color:var(--paper)}.homelab-timeline__code .yaml-string,.language-yaml.highlighter-rouge pre.highlight .yaml-string{color:var(--lake)}.homelab-timeline__code .yaml-number,.language-yaml.highlighter-rouge pre.highlight .yaml-number{color:var(--solar)}.homelab-timeline__code .yaml-url,.language-yaml.highlighter-rouge pre.highlight .yaml-url{color:var(--lake)}.homelab-timeline__code .yaml-punctuation,.language-yaml.highlighter-rouge pre.highlight .yaml-punctuation{color:var(--coral)}.homelab-timeline__code .yaml-comment,.language-yaml.highlighter-rouge pre.highlight .yaml-comment{color:var(--mint);font-style:italic}.homelab-timeline__code .na,.language-yaml.highlighter-rouge pre.highlight .na{color:var(--sun)}.homelab-timeline__code .s,.homelab-timeline__code .nv,.language-yaml.highlighter-rouge pre.highlight .s,.language-yaml.highlighter-rouge pre.highlight .nv{color:var(--paper)}.homelab-timeline__code .s1,.language-yaml.highlighter-rouge pre.highlight .s1{color:var(--lake)}.homelab-timeline__code .m,.language-yaml.highlighter-rouge pre.highlight .m{color:var(--solar)}.homelab-timeline__code .nn,.homelab-timeline__code .pi,.language-yaml.highlighter-rouge pre.highlight .nn,.language-yaml.highlighter-rouge pre.highlight .pi{color:var(--coral)}.homelab-timeline__code .c1,.language-yaml.highlighter-rouge pre.highlight .c1{color:var(--mint);font-style:italic}.solar-learnings{max-width:82rem;margin:clamp(4rem, 9vw, 8rem) auto 0;padding-top:clamp(2rem, 4vw, 3.5rem)}.solar-learnings__heading{display:grid;gap:1rem;margin-bottom:clamp(2rem, 5vw, 4rem)}@media (min-width: 48rem){.solar-learnings__heading{grid-template-columns:minmax(0, 1.5fr) minmax(16rem, 0.5fr);align-items:end}}.solar-learnings__heading h2{margin:0;font-size:clamp(3.25rem, 9vw, 7.5rem);font-weight:800;line-height:0.82;letter-spacing:-0.065em}.solar-learnings__heading>p{max-width:27rem;margin:0;font-size:clamp(1rem, 1.6vw, 1.25rem);line-height:1.45}.solar-learnings__eyebrow{margin:0 0 0.75rem;font-size:0.68rem;font-weight:800;letter-spacing:0.18em;text-transform:uppercase}.solar-learnings__timeline{position:relative}.solar-learnings__timeline ol{position:relative;margin:0;padding:0;list-style:none}.solar-learnings__timeline ol::before{position:absolute;top:0;bottom:0;left:0.4rem;width:2px;content:"";background:var(--solar-ink)}@media (min-width: 48rem){.solar-learnings__timeline ol::before{left:9.75rem}}.solar-learning{position:relative;display:grid;gap:0.65rem;max-width:82rem;margin:0 auto;padding:0 0 2rem 2rem}.solar-learning::before{position:absolute;top:0.2rem;left:0;width:0.85rem;height:0.85rem;content:"";background:var(--sun);border:2px solid var(--solar-ink);border-radius:50%}.solar-learning::after{position:absolute;top:1rem;bottom:0;left:0.4rem;width:2px;content:"";background:var(--solar-ink)}.solar-learning:last-of-type::after{display:none}@media (min-width: 48rem){.solar-learning{grid-template-columns:8rem 1fr;gap:3.5rem;padding-left:0}.solar-learning::before{left:9.35rem}.solar-learning::after{left:9.75rem}}.solar-learning .solar-learning__stage{margin:0;padding-top:0.05rem;font-size:0.69rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.solar-learning__card{display:grid;border:2px solid var(--solar-ink);background:rgba(var(--paper-rgb), 0.22)}@media (min-width: 42rem){.solar-learning__card{grid-template-columns:1fr 1fr}}.solar-learning__card>div{padding:clamp(1.2rem, 3vw, 2rem)}.solar-learning__card>div+div{border-top:2px solid var(--solar-ink)}@media (min-width: 42rem){.solar-learning__card>div+div{border-top:0;border-left:2px solid var(--solar-ink)}}.solar-learning__card h3{margin:0 0 0.65rem;color:var(--solar);font-size:0.66rem;font-weight:800;letter-spacing:0.15em;text-transform:uppercase}.solar-learning__card p{margin:0;font-size:clamp(1rem, 1.7vw, 1.25rem);line-height:1.5}.intro{background:var(--mint);padding:4rem 1.5rem}@media (min-width: 48rem){.intro{padding:5rem 2.5rem}}.intro__inner{max-width:72rem;margin:0 auto;display:grid;gap:3rem;align-items:center}@media (min-width: 56rem){.intro__inner{grid-template-columns:1fr 1fr;gap:4rem}}.intro__copy h2{margin:0 0 1.5rem;font-size:clamp(2rem, 4.5vw, 3rem);font-weight:800;line-height:1.1;letter-spacing:-0.02em}.intro__copy p{margin:0 0 1rem;font-size:0.95rem;font-weight:500;line-height:1.7;color:var(--muted);max-width:28rem}.intro__copy .btn{margin-top:0.5rem}.intro__visual img{display:block;width:100%;height:auto;border-radius:0.75rem;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover}.intro__caption{margin:1rem 0 0;font-size:0.85rem;font-weight:500;line-height:1.5;color:var(--muted);text-align:right}.intro__caption strong{color:var(--black);font-weight:700}.page-intro{padding:2rem 1.5rem 3rem;background:var(--mint)}@media (min-width: 48rem){.page-intro{padding:2.5rem 2.5rem 3.5rem}}.page-intro--banner{position:relative;display:flex;align-items:flex-end;padding:1.5rem 1.5rem 2rem;min-height:14rem;overflow:hidden;background:var(--mint)}@media (min-width: 48rem){.page-intro--banner{padding:2rem 2.5rem 2.5rem;min-height:18rem}}.page-intro--banner .page-intro__inner{width:100%}.page-intro__image{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.page-intro__inner{position:relative;z-index:1;max-width:72rem;margin:0 auto}.page-intro__inner h1{margin:0 0 0.5rem;font-size:clamp(2.5rem, 5vw, 3.5rem);font-weight:800;letter-spacing:-0.02em;line-height:1.05}.page-intro__inner p{margin:0;font-size:1rem;font-weight:500;color:var(--muted)}.games-section{padding:4rem 1.5rem;background:var(--cream)}@media (min-width: 48rem){.games-section{padding:5rem 2.5rem}}.games-section--page{padding-top:2rem}.games-section__inner{max-width:72rem;margin:0 auto}.games-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:2.5rem}.games-section__head h2{margin:0;font-size:clamp(1.75rem, 3vw, 2.25rem);font-weight:800;letter-spacing:-0.02em}.games-section__link{font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;text-decoration:none;color:var(--muted)}.games-section__link:hover{color:var(--black)}.game-grid{list-style:none;margin:0;padding:0;display:grid;gap:2.5rem}@media (min-width: 40rem){.game-grid{grid-template-columns:repeat(2, 1fr);gap:2.5rem 2rem}}.game--card{display:flex;flex-direction:column;overflow:hidden;border:2px solid var(--ink);background:var(--paper)}.game--card .game__image{border-bottom:2px solid var(--ink);border-radius:0;background:var(--sun)}.game--card .game__body{padding:1.15rem 1.25rem 1.35rem}.game__image{display:block;overflow:hidden;line-height:0;text-decoration:none;border-radius:0.5rem;background:var(--rule)}.game__image img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;-o-object-fit:cover;object-fit:cover;transition:transform 0.4s ease}.game__image:hover img{transform:scale(1.02)}.game__body{padding-top:1rem}.game__title{margin:0 0 0.35rem;font-size:1.15rem;font-weight:700;letter-spacing:-0.01em}.game__title a{text-decoration:none;color:var(--black)}.game__title a:hover{opacity:0.6}.game__status{margin:0 0 0.35rem;font-size:0.8rem;font-weight:500;color:var(--muted)}.game__desc{margin:0 0 0.75rem;font-size:0.9rem;font-weight:500;color:var(--muted);line-height:1.55}.game__link{font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;color:var(--black)}.game__link:hover{opacity:0.55}.muted{color:var(--muted);font-weight:500}.dead-run-full-link{padding:0.8rem 1rem;border:2px solid var(--ink);color:var(--ink);background:var(--sun);font-size:0.68rem;font-weight:800;letter-spacing:0.12em;text-decoration:none;text-transform:uppercase;transition:transform 180ms ease}.dead-run-full-link:hover{transform:translateY(-0.2rem)}.dead-run-cabinet{grid-area:cabinet;margin:-2px -2px -2px 0;overflow:hidden;padding:0.5rem;border:2px solid var(--ink);background:var(--black)}.dead-run-cabinet iframe{display:block;width:100%;aspect-ratio:9 / 16;border:0;background:var(--black)}@media (min-width: 56rem){.dead-run-cabinet iframe{aspect-ratio:16 / 9}}.dead-run-cabinet__bar{display:flex;align-items:center;justify-content:space-between;height:2.4rem;padding:0 0.75rem;color:rgba(var(--paper-rgb), 0.58);font-size:0.58rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.dead-run-cabinet__status{display:inline-flex;align-items:center;gap:0.5rem}.dead-run-cabinet__status i{width:0.5rem;height:0.5rem;border-radius:50%;background:var(--sun);box-shadow:0 0 0.8rem rgba(var(--sun-rgb), 0.7)}.video-study-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.25rem;margin:2rem 0 3rem}@media (max-width: 48rem){.video-study-grid{grid-template-columns:1fr}}.video-study{margin:0;border:2px solid var(--ink);background:var(--paper)}.video-study--course{grid-column:1 / -1}.video-study figcaption{padding:1rem;border-top:2px solid var(--ink);font-size:0.82rem;line-height:1.55}.video-study__frame{background:var(--ink)}.video-study__frame iframe{display:block;width:100%;aspect-ratio:16 / 9;border:0}.studio-work{--work-green: var(--pine);color:var(--ink);background:var(--cream)}.work-intro{min-height:18rem;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem 0 2.75rem}@media (min-width: 48rem){.work-intro{min-height:19rem}}.work-intro h1{margin:0;max-width:78rem;font-size:clamp(3.7rem, 8.4vw, 8.6rem);font-weight:800;line-height:0.84;letter-spacing:-0.07em}.work-intro h1 em{color:var(--solar)}.work-intro__kicker,.case-study__meta,.case-study__label{font-size:0.62rem;font-weight:700;line-height:1.35;letter-spacing:0.13em;text-transform:uppercase}.work-intro__kicker{margin:0 0 1.5rem}.work-intro__lede{max-width:46rem;margin:2rem 0 0;font-size:clamp(0.95rem, 1.4vw, 1.15rem);font-weight:600;line-height:1.45}.work-notes{padding-bottom:0.75rem}.case-study-list{display:grid;gap:0.75rem}.case-study{position:relative;overflow:hidden;padding:clamp(1.4rem, 3vw, 2.5rem);border:2px solid var(--ink);background:var(--paper)}.case-study::before{content:"";position:absolute;inset:0 0 0 64%;pointer-events:none;background-image:linear-gradient(rgba(var(--ink-rgb), 0.12) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.12) 1px, transparent 1px);background-size:1.5rem 1.5rem}.case-study>*{position:relative;z-index:1}.case-study:nth-child(1){border-radius:0 0 4rem 0}.case-study:nth-child(2){border-radius:3.5rem 0 0}.case-study:nth-child(3){border-radius:0 0 0 4rem}.case-study:nth-child(4){border-radius:0 3.5rem 0 0}.case-study:nth-child(5){border-radius:0 0 4rem}.case-study--solar{background-color:var(--solar)}.case-study--lake{background-color:var(--lake);background-image:repeating-linear-gradient(135deg, transparent 0, transparent 1rem, rgba(var(--ink-rgb), 0.07) 1rem, rgba(var(--ink-rgb), 0.07) 1.1rem)}.case-study--sun{background-color:var(--sun);background-image:radial-gradient(rgba(var(--ink-rgb), 0.16) 0.08rem, transparent 0.1rem);background-size:1.1rem 1.1rem}.case-study--berry{color:var(--white);background-color:var(--raspberry);background-image:linear-gradient(rgba(var(--ink-rgb), 0.14) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.14) 1px, transparent 1px);background-size:1.5rem 1.5rem}.case-study--ink{color:var(--white);background:var(--work-green)}.case-study__number{position:absolute;top:0.75rem;right:1.25rem;font-size:clamp(4rem, 9vw, 8rem);font-weight:800;line-height:1;letter-spacing:-0.08em;opacity:0.16}.case-study__header{max-width:58rem;padding-right:3.5rem}.case-study__meta{margin:0 0 1.1rem}.case-study__title{margin:0;max-width:52rem;font-size:clamp(2.25rem, 5vw, 4.8rem);font-weight:800;line-height:0.94;letter-spacing:-0.055em;text-wrap:balance}.case-study__summary{max-width:48rem;margin:1.25rem 0 0;font-size:clamp(0.92rem, 1.25vw, 1.08rem);font-weight:600;line-height:1.48}.case-study__grid{display:grid;gap:1.5rem;margin-top:clamp(2.5rem, 6vw, 5rem);padding-top:1.5rem;border-top:2px solid currentColor}@media (max-width: 55.999rem){.case-study__grid{border-top:0}}@media (min-width: 56rem){.case-study__grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:0}}.case-study__block{min-width:0}@media (min-width: 56rem){.case-study__block{padding-right:1.5rem}.case-study__block+.case-study__block{padding-left:1.5rem;border-left:1px solid currentColor}}.case-study__label{margin:0 0 1rem}@media (max-width: 55.999rem){.case-study__label{margin-bottom:0.35rem;padding-bottom:0.5rem;border-bottom:2px solid currentColor;font-size:0.72rem;font-weight:800}}@media (max-width: 55.999rem){.case-study__block:last-child .case-study__label{border-bottom:0}}.case-study__list{list-style:none;margin:0;padding:0;font-size:0.84rem;font-weight:600;line-height:1.5}.case-study__list li{padding:0.7rem 0;border-top:1px solid currentColor}.case-study__list li:last-child{border-bottom:1px solid currentColor}@media (max-width: 55.999rem){.case-study__list li:first-child{border-top:0}}.work-section__cta{display:flex;flex-direction:column;align-items:flex-start;gap:0.5rem;margin-top:0.75rem;padding:clamp(1.5rem, 4vw, 3rem);border:2px solid var(--ink);border-radius:0 4rem 0 0;color:var(--white);background:var(--ink)}.work-section__cta p{margin:0;font-size:0.65rem;font-weight:700;letter-spacing:0.13em;text-transform:uppercase}.work-section__cta a{font-size:clamp(2rem, 5vw, 4.5rem);font-weight:800;line-height:1;letter-spacing:-0.05em;text-decoration:none}.work-section__cta a:hover{color:var(--solar)}.studio-home{color:var(--ink);background:linear-gradient(rgba(var(--ink-rgb), 0.045) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.045) 1px, transparent 1px),var(--cream);background-size:2rem 2rem}.studio-main{padding:0.5rem 1.25rem 0}@media (min-width: 48rem){.studio-main{padding:0.5rem 2rem 0}}.studio-main .site-header{grid-template-columns:1fr;grid-template-areas:"logo";gap:0;padding:0.35rem 0;border-top:2px solid var(--ink);border-bottom:0;background:transparent}@media (min-width: 48rem){.studio-main .site-header{grid-template-columns:1fr;grid-template-areas:"logo";padding:0.35rem 0}.studio-main .site-header > .site-header__logo{-ms-grid-row:1;-ms-grid-column:1}}.studio-main .site-header__end{display:none}.studio-intro{display:flex;align-items:flex-end;padding:2rem 0 3rem}@media (min-width: 48rem){.studio-intro{padding:2.5rem 0 3.25rem}}@media (min-width: 80rem){.studio-intro{padding:clamp(1rem, 2.25vh, 1.125rem) 0 clamp(1.75rem, 3.5vh, 2rem)}}.studio-intro__title{margin:0;max-width:70rem;font-size:clamp(3.5rem, 7.25vw, 7rem);font-weight:800;line-height:0.86;letter-spacing:-0.065em}.studio-intro__title em{color:var(--solar)}@media (min-width: 80rem) and (max-height: 56rem){.studio-intro__title{font-size:clamp(3.5rem, 10vh, 7rem)}}.project-cards__grid{display:grid;grid-template-columns:1fr;gap:0.65rem}@media (min-width: 44rem){.project-cards__grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 44rem) and (max-width: 79.999rem){.project-cards__grid .project-card:last-child{grid-column:1 / -1}}@media (min-width: 80rem){.project-cards__grid{grid-template-columns:repeat(12, minmax(0, 1fr));grid-auto-rows:clamp(17rem, calc((100svh - 19.875rem) / 2), 18rem)}.project-cards__grid .project-card:nth-child(1){grid-column:span 5;border-radius:0 0 4rem 0}.project-cards__grid .project-card:nth-child(2){grid-column:span 4}.project-cards__grid .project-card:nth-child(3){grid-column:span 3}.project-cards__grid .project-card:nth-child(4){grid-column:span 4}.project-cards__grid .project-card:nth-child(5){grid-column:span 3;border-radius:0 0 0 3.5rem}.project-cards__grid .project-card:nth-child(6){grid-column:span 5}.project-cards__grid .project-card:nth-child(7),.project-cards__grid .project-card:nth-child(8),.project-cards__grid .project-card:nth-child(9){grid-column:span 4}}.project-cards__feature-row{display:grid;grid-template-columns:1fr;gap:0.65rem;margin-top:0.65rem}@media (min-width: 44rem){.project-cards__feature-row{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 44rem) and (max-width: 79.999rem){.project-cards__feature-row .project-card{min-height:20rem}}@media (min-width: 80rem){.project-cards__feature-row{grid-auto-rows:clamp(11rem, calc((100svh - 19.875rem) / 2), 16.75rem)}}.project-card{position:relative;min-height:17rem;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:1.35rem;border:2px solid var(--ink);color:var(--ink);background:var(--paper);text-decoration:none;isolation:isolate;transition:transform 180ms ease}.project-card::before,.project-card::after{pointer-events:none}.project-card>*{position:relative;z-index:2}.project-card:hover{transform:translateY(-0.25rem)}@media (min-width: 80rem){.project-card{min-height:0}}.project-card__image,.project-card__wash{position:absolute;inset:0;width:100%;height:100%}.project-card__image{z-index:-2;-o-object-fit:cover;object-fit:cover;transition:transform 500ms ease}.project-card:hover .project-card__image{transform:scale(1.025)}.project-card__wash{z-index:-1;background:linear-gradient(180deg, rgba(var(--ink-rgb), 0.08), rgba(var(--ink-rgb), 0.88))}.project-card__arrow{position:absolute;top:1.05rem;right:1.15rem;font-size:1.5rem;line-height:1}.project-card__meta{margin:0;padding-right:2.5rem;font-size:0.58rem;font-weight:700;line-height:1.35;letter-spacing:0.12em;text-transform:uppercase}.project-card__body{max-width:35rem}.project-card__title{margin:0;font-size:clamp(1.65rem, 3vw, 2.6rem);font-weight:800;line-height:0.96;letter-spacing:-0.045em;text-wrap:balance}.project-card__description{display:-webkit-box;overflow:hidden;margin:0.65rem 0 0;max-width:40rem;font-size:0.78rem;font-weight:600;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:3}.project-card--solar-chart{height:17rem;justify-content:flex-start;padding:1rem;color:var(--white);background:var(--pine)}.project-card--solar-chart .project-card__meta{margin-bottom:0.3rem;color:rgba(var(--paper-rgb), 0.58)}.project-card--solar-chart .project-card__title{font-size:clamp(1.45rem, 2.2vw, 2rem)}.project-card--solar-chart .solar-chart__legend{flex-wrap:nowrap;gap:0.35rem 0.75rem;font-size:0.5rem}.project-card--solar-chart .solar-chart__readout{min-height:1.25rem;gap:0.25rem 0.7rem;margin-top:0.25rem;padding:0.4rem 0 0;border-top:1px solid rgba(var(--paper-rgb), 0.14);font-size:0.55rem}@media (min-width: 80rem){.project-card--solar-chart{height:auto;border-radius:0 2rem 0 0}}.solar-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem;padding-right:2.5rem;padding-bottom:0.5rem;border-bottom:1px solid rgba(var(--paper-rgb), 0.14);pointer-events:none}.solar-card__arrow{color:var(--white)}.solar-card__link{position:absolute;inset:0;z-index:3}.solar-card__link:focus-visible{outline:3px solid var(--sun);outline-offset:-0.35rem}.solar-card__plot{position:relative;z-index:4;display:grid;grid-template-rows:minmax(0, 1fr) auto;flex:1;width:100%;min-height:0;pointer-events:none}.solar-card__plot svg{display:block;width:100%;height:100%;min-height:0}.solar-card__plot .solar-chart__hit-area{pointer-events:auto;cursor:pointer}.project-card--forest{color:var(--white);background-color:var(--raspberry);background-image:linear-gradient(rgba(var(--ink-rgb), 0.14) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.14) 1px, transparent 1px);background-size:1.2rem 1.2rem}.project-card--forest.project-card--image .project-card__image{inset:0.9rem 1.5rem auto auto;width:55%;height:42%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--forest.project-card--image .project-card__wash{background:none}.project-card--forest .project-card__body{max-width:72%}.project-card--forest .project-card__title{font-size:clamp(2.25rem, 4vw, 3.6rem)}@media (min-width: 80rem){.project-card--forest.project-card--image .project-card__image{width:52%;height:62%}}.project-card--experiments{color:var(--white);background-color:var(--blue)}.project-card--experiments .project-card__experiment-art{--ring-step: clamp(4.5rem, 8vw, 7rem);position:absolute;z-index:1;top:0.5rem;right:0.5rem;height:56%;aspect-ratio:900 / 877;pointer-events:none}.project-card--experiments .project-card__experiment-art::before{content:"";position:absolute;z-index:0;top:18.9%;left:18.4%;width:250vmax;height:250vmax;background:repeating-radial-gradient(circle, transparent 0, transparent calc(var(--ring-step) - 0.1rem), rgba(var(--paper-rgb), 0.1) calc(var(--ring-step) - 0.1rem), rgba(var(--paper-rgb), 0.1) var(--ring-step));transform:translate(-50%, -50%)}.project-card--experiments .project-card__experiment-art .project-card__image{z-index:1;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.project-card--experiments .project-card__wash{background:none}.project-card--experiments .project-card__body{max-width:70%}.project-card--experiments .project-card__title{font-size:clamp(2rem, 3.5vw, 3.2rem)}.project-card--experiments:hover .project-card__image{transform:none}@media (min-width: 44rem){.project-card--experiments .project-card__experiment-art{right:0.75rem}}@media (min-width: 80rem){.project-card--experiments .project-card__experiment-art{top:0.5rem;right:1rem;height:58%}.project-card--experiments .project-card__body{max-width:55%}}.project-card--solar{background:var(--solar)}.project-card--solar::before{content:"";position:absolute;z-index:-1;inset:0;background-image:repeating-linear-gradient(0deg, transparent 0, transparent 0.72rem, rgba(var(--ink-rgb), 0.045) 0.72rem, rgba(var(--ink-rgb), 0.045) 0.76rem)}.project-card--solar.project-card--image .project-card__image{inset:1rem 1rem auto auto;width:42%;height:55%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--solar.project-card--image .project-card__wash{background:none}@media (min-width: 80rem){.project-card--solar.project-card--image .project-card__image{right:2.25rem;width:46%;height:60%}.project-card--solar .project-card__body{max-width:60%}}.project-card--lake{background-color:var(--lake);background-image:radial-gradient(rgba(var(--ink-rgb), 0.14) 0.08rem, transparent 0.1rem);background-position:0.4rem 0.25rem;background-size:1.2rem 1.2rem}.project-card--lake.project-card--image .project-card__image{inset:1rem 2.75rem auto auto;width:48%;height:52%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--lake.project-card--image .project-card__wash{background:none}.project-card--lake .project-card__body{max-width:68%}.project-card--lora.project-card--image .project-card__image,.project-card--fibre.project-card--image .project-card__image{inset:1rem 2.75rem auto auto;width:48%;height:52%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--lora.project-card--image .project-card__wash,.project-card--fibre.project-card--image .project-card__wash{background:none}.project-card--lora .project-card__body,.project-card--fibre .project-card__body{max-width:68%}.project-card--lora{background-color:var(--sun);background-image:linear-gradient(rgba(var(--ink-rgb), 0.09) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.09) 1px, transparent 1px);background-size:1.2rem 1.2rem}.project-card--fibre{color:var(--white);background-color:var(--purple);background-image:repeating-linear-gradient(-12deg, transparent 0, transparent 2.7rem, rgba(var(--ink-rgb), 0.14) 2.7rem, rgba(var(--ink-rgb), 0.14) 2.78rem)}.project-card--fibre.project-card--image .project-card__image{width:56%;height:62%}.project-card--lime{background:var(--sun)}.project-card--lime::before{content:"";position:absolute;z-index:-1;inset:0 0 0 68%;background-image:-webkit-image-set(url("../images/responsive/hero-1416-e00536d7.webp") type("image/webp"), url("../images/hero-1a30ca16.png") type("image/png"));background-image:image-set(url("../images/responsive/hero-1416-e00536d7.webp") type("image/webp"), url("../images/hero-1a30ca16.png") type("image/png"));background-position:84% center;background-size:cover;filter:saturate(1.3) contrast(1.05);mix-blend-mode:multiply;opacity:0.7}.project-card--lime::after{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg, var(--sun) 0%, var(--sun) 65%, rgba(var(--sun-rgb), 0.08))}.project-card--berry{color:var(--white);background-color:var(--berry);background-image:linear-gradient(rgba(var(--ink-rgb), 0.12) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.12) 1px, transparent 1px);background-position:-0.4rem 0.3rem;background-size:1.15rem 1.15rem}.project-card--berry .project-card__title{font-family:var(--sans);font-weight:800;letter-spacing:-0.045em}.project-card--berry.project-card--image .project-card__image{inset:1.25rem 3rem auto auto;width:62%;height:64%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--berry.project-card--image .project-card__wash{background:none}.project-card--berry .project-card__body{max-width:72%}.project-card--homelab{color:var(--ink);background-color:var(--gold);background-image:linear-gradient(rgba(var(--ink-rgb), 0.1) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.1) 1px, transparent 1px);background-size:1.2rem 1.2rem}.project-card--homelab.project-card--image .project-card__image{inset:2.5rem 4rem auto auto;width:48%;height:52%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--homelab.project-card--image .project-card__wash{background:none}.project-card--homelab .project-card__body{max-width:68%}.project-card--inky{color:var(--paper);background:var(--aubergine);background-image:repeating-linear-gradient(0deg, transparent 0, transparent 0.55rem, rgba(var(--paper-rgb), 0.045) 0.55rem, rgba(var(--paper-rgb), 0.045) 0.61rem)}.project-card--inky.project-card--image .project-card__image{inset:1rem 4rem auto auto;width:45%;height:58%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--inky.project-card--image .project-card__wash{background:none}.project-card--inky .project-card__body{max-width:50%}@media (min-width: 44rem) and (max-width: 79.999rem){.project-card--inky.project-card--image .project-card__image{inset:3.25rem 4rem auto auto;width:40%;height:42%}.project-card--inky .project-card__body{max-width:82%}}.project-card--garage{color:var(--paper);background-color:var(--clay);background-image:repeating-linear-gradient(-45deg, transparent 0, transparent 2.2rem, rgba(var(--paper-rgb), 0.05) 2.2rem, rgba(var(--paper-rgb), 0.05) 2.3rem)}.project-card--garage.project-card--image .project-card__image{inset:1rem 4rem auto auto;width:45%;height:58%;-o-object-fit:contain;object-fit:contain;-o-object-position:right top;object-position:right top}.project-card--garage.project-card--image .project-card__wash{background:none}.project-card--garage .project-card__body{max-width:50%}@media (min-width: 44rem) and (max-width: 79.999rem){.project-card--garage.project-card--image .project-card__image{inset:3.75rem 4rem auto auto;width:52%;height:40%}.project-card--garage .project-card__body{max-width:82%}}@media (max-width: 29.999rem){.project-card--lora.project-card--image .project-card__image{top:3.25rem;right:3.5rem;width:44%;height:48%}.project-card--lake.project-card--image .project-card__image{top:2.5rem;right:3.5rem;width:44%;height:48%}.project-card--experiments .project-card__experiment-art{top:3.25rem;right:3.5rem;height:48%}.project-card--inky.project-card--image .project-card__image{top:2rem;right:4rem;width:38%;height:50%}.project-card--garage.project-card--image .project-card__image{top:2.5rem;right:4rem}.project-card--lora.project-card--image .project-card__image[src*="ansible-homelab"]{right:0.25rem;width:40%;height:34%}}@media (min-width: 24rem) and (max-width: 29.999rem){.project-card--lora.project-card--image .project-card__image[src*="building-house"]{right:0.5rem;width:40%;height:42%}}@media (min-width: 30rem) and (max-width: 43.999rem){.project-card--forest.project-card--image .project-card__image{inset:1.75rem clamp(3rem, 10vw, 4rem) auto auto;width:58%;height:clamp(10rem, 62%, 11.5rem)}.project-card--solar.project-card--image .project-card__image,.project-card--lake.project-card--image .project-card__image,.project-card--lora.project-card--image .project-card__image,.project-card--fibre.project-card--image .project-card__image,.project-card--homelab.project-card--image .project-card__image,.project-card--berry.project-card--image .project-card__image{top:1.75rem;right:clamp(3rem, 10vw, 4rem);height:clamp(10rem, 64%, 11.5rem)}.project-card--lake.project-card--image .project-card__image,.project-card--lora.project-card--image .project-card__image,.project-card--homelab.project-card--image .project-card__image{width:52%}.project-card--experiments .project-card__experiment-art{top:1.75rem;right:clamp(3rem, 10vw, 4rem);height:clamp(10rem, 64%, 11.5rem)}.project-card--lora.project-card--image .project-card__image[src*="ansible-homelab"]{top:2rem;right:0.25rem;width:44%;height:52%}.project-card--lora.project-card--image .project-card__image[src*="building-house"]{top:2rem;right:0.5rem;width:38%;height:52%}}@media (min-width: 44rem) and (max-width: 79.999rem){.project-card--lora.project-card--image .project-card__image[src*="ansible-homelab"]{top:1rem;right:0.5rem;width:34%;height:72%}}.project-card{--project-card-art-anchor-x: 72%;container-type:inline-size}.responsive-image{display:contents}.project-card.project-card--image>.responsive-image>.project-card__image[src]{top:var(--project-card-art-top, 3.25rem);left:var(--project-card-art-x, var(--project-card-art-anchor-x));right:auto;width:clamp(6rem, 28cqw, 18rem);height:clamp(4.25rem, 20cqw, 7.5rem);-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;transform:translateX(-50%)}@container (max-width: 32rem){.project-card.project-card--image>.responsive-image>.project-card__image[src]{top:var(--project-card-art-top, 3.25rem);left:var(--project-card-art-x, var(--project-card-art-anchor-x));right:auto;width:clamp(6rem, 28cqw, 8.5rem);height:clamp(4.25rem, 20cqw, 7.5rem);-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;transform:translateX(-50%)}}.studio-home .project-card--forest.project-card--image .project-card__image,.studio-home .project-card--solar.project-card--image .project-card__image,.studio-home .project-card--lake.project-card--image .project-card__image,.studio-home .project-card--lora.project-card--image .project-card__image,.studio-home .project-card--fibre.project-card--image .project-card__image,.studio-home .project-card--berry.project-card--image .project-card__image,.studio-home .project-card--homelab.project-card--image .project-card__image,.studio-home .project-card--inky.project-card--image .project-card__image,.studio-home .project-card--garage.project-card--image .project-card__image{top:var(--project-card-art-top, 0.75rem);left:var(--project-card-art-x, var(--project-card-art-anchor-x));right:auto;width:var(--project-card-art-width);height:auto;-o-object-position:center;object-position:center;transform:translateX(-50%)}.studio-home .project-card--forest{--project-card-art-width: clamp(7rem, 45cqw, 8.75rem)}.studio-home .project-card--solar{--project-card-art-width: clamp(5rem, 30cqw, 7rem)}.studio-home .project-card--lake{--project-card-art-width: clamp(5rem, 29cqw, 7.375rem)}.studio-home .project-card--lora{--project-card-art-width: clamp(6rem, 36cqw, 8.5rem)}.studio-home .project-card--fibre{--project-card-art-width: clamp(6rem, 38cqw, 9rem)}.studio-home .project-card--berry{--project-card-art-anchor-x: 67.5%;--project-card-art-width: clamp(7rem, 40cqw, 10rem)}.studio-home .project-card--homelab{--project-card-art-width: clamp(6rem, 36cqw, 9rem)}.studio-home .project-card--inky{--project-card-art-width: clamp(7rem, 45cqw, 10rem)}.studio-home .project-card--garage{--project-card-art-width: clamp(8.25rem, 55cqw, 11.5rem)}.studio-home .project-card--experiments .project-card__experiment-art{top:var(--project-card-art-top, 0.75rem);left:var(--project-card-art-x, var(--project-card-art-anchor-x));right:auto;width:clamp(6rem, 36cqw, 7rem);height:auto;aspect-ratio:900 / 877;transform:translateX(-50%)}.studio-home .project-card--image:hover>.responsive-image>.project-card__image{transform:translateX(-50%)}@container (max-width: 17.5rem){.studio-home .project-card__image,.studio-home .project-card__experiment-art{--project-card-art-anchor-x: 62%}}@container (max-width: 15rem){.studio-home .project-card--solar .project-card__image{--project-card-art-anchor-x: 72%}.studio-home .project-card--garage .project-card__image{--project-card-art-anchor-x: 58%}}@media (min-width: 30rem) and (max-width: 79.999rem){.studio-home .project-card--forest{--project-card-art-width: clamp(9rem, 50cqw, 11rem)}}@media (min-width: 80rem){.studio-home .project-card--forest{--project-card-art-width: clamp(10rem, 50cqw, 13rem)}.studio-home .project-card--forest .project-card__body,.studio-home .project-card--solar .project-card__body{max-width:50%}}.studio-home .site-footer{display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:1.25rem;padding:1.5rem 1.25rem;color:var(--ink);background:var(--cream);text-align:left}.studio-home .site-footer>p:first-child{grid-column:1 / -1;padding-bottom:1.15rem;border-bottom:1px solid rgba(var(--ink-rgb), 0.22);font-size:0.95rem;line-height:1.45}.studio-home .site-footer>p:first-child .site-footer__email{display:block}@media (min-width: 48rem){.studio-home .site-footer{grid-template-columns:minmax(13rem, 1fr) auto auto;align-items:center;gap:clamp(1.5rem, 4vw, 4rem);padding:1.35rem 2rem 1.5rem}.studio-home .site-footer>p:first-child{grid-column:auto;padding-bottom:0;border-bottom:0}.studio-home .site-footer>p:first-child .site-footer__email{display:inline}}.studio-home .site-footer a{text-decoration:none}.studio-home .site-footer .site-footer__copy{margin-top:0;align-self:end;color:rgba(var(--ink-rgb), 0.65);font-size:0.75rem;opacity:1;white-space:nowrap}.studio-home .site-footer .site-footer__links{display:flex;justify-content:flex-start;gap:clamp(1rem, 5vw, 2rem);margin-top:0;font-size:0.8rem}@media (max-width: 23rem){.studio-home .site-footer .site-footer__links{gap:0.8rem;font-size:0.75rem}}.experiments-page{--experiment-paper: var(--paper);--experiment-ink: var(--ink);--experiment-green: var(--pine);--experiment-shadow: var(--ink);--experiment-orange: var(--solar);--experiment-cyan: var(--lake);--experiment-acid: var(--sun);overflow:hidden;color:var(--experiment-ink);background:linear-gradient(rgba(var(--ink-rgb), 0.045) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.045) 1px, transparent 1px),var(--cream);background-size:2rem 2rem}.experiments-intro{position:relative;display:grid;grid-template-columns:minmax(0, 1fr) minmax(17rem, 0.38fr);align-items:center;gap:clamp(2rem, 5vw, 5rem);min-height:24rem;padding-block:2.5rem 3rem}.experiments-intro__copy{position:relative;z-index:1}.experiments-subscribe{display:inline-grid;grid-template-columns:3.1rem minmax(0, 1fr) auto;align-items:stretch;max-width:23rem;min-height:3.1rem;margin-top:1.6rem;border:2px solid var(--experiment-ink);color:var(--experiment-ink);background:var(--experiment-paper);box-shadow:0.28rem 0.28rem 0 var(--experiment-ink);text-decoration:none;transition:box-shadow 150ms ease, transform 150ms ease}.experiments-subscribe:hover{box-shadow:0.12rem 0.12rem 0 var(--experiment-ink);transform:translate(0.16rem, 0.16rem)}.experiments-subscribe:focus-visible{outline:3px solid var(--experiment-orange);outline-offset:4px}.experiments-subscribe__icon{display:grid;place-items:center;border-right:2px solid var(--experiment-ink);background:var(--experiment-orange)}.experiments-subscribe__icon svg{width:1.8rem;height:1.8rem}.experiments-subscribe__copy{display:grid;align-content:center;gap:0.2rem;padding:0.55rem 0.8rem}.experiments-subscribe__copy strong{font-size:0.73rem;letter-spacing:0.09em;line-height:1.2;text-transform:uppercase}.experiments-subscribe__copy small{font-size:0.66rem;line-height:1.25}.experiments-subscribe__arrow{align-self:center;padding-right:0.75rem;font-size:1rem}.experiments-subscribe--quiet{grid-template-columns:1.45rem minmax(0, auto) auto;gap:0.45rem;min-height:auto;margin-top:1.25rem;border:0;border-bottom:1px solid rgba(var(--ink-rgb), 0.42);color:var(--experiment-green);background:transparent;box-shadow:none}.experiments-subscribe--quiet:hover{border-bottom-color:var(--experiment-orange);box-shadow:none;transform:none}.experiments-subscribe--quiet .experiments-subscribe__icon{border:0;background:transparent}.experiments-subscribe--quiet .experiments-subscribe__icon svg{width:1.15rem;height:1.15rem}.experiments-subscribe--quiet .experiments-subscribe__copy{display:flex;align-items:baseline;gap:0.45rem;padding:0.22rem 0}.experiments-subscribe--quiet .experiments-subscribe__copy strong{font-size:0.64rem}.experiments-subscribe--quiet .experiments-subscribe__copy small{font-size:0.62rem}.experiments-subscribe--quiet .experiments-subscribe__arrow{padding-right:0;font-size:0.8rem}.experiments-hidden-intro{display:block;min-height:22rem;padding-block:3rem}.experiments-orbit{position:relative;width:28vw;max-width:23rem;aspect-ratio:1;justify-self:end}@media (max-width: 47.999rem){.experiments-intro{display:block;min-height:auto;padding-bottom:2.75rem}.experiments-orbit{position:absolute;top:-1rem;right:-3rem;width:12rem}}.experiments-orbit__ring{position:absolute;inset:8%;border:2px solid var(--experiment-ink);border-radius:50%}.experiments-orbit__ring::after{position:absolute;top:-0.55rem;left:50%;width:1rem;height:1rem;content:"";border:2px solid var(--experiment-ink);border-radius:50%;background:var(--experiment-acid)}.experiments-orbit__ring--one{animation:experiments-spin 16s linear infinite}.experiments-orbit__ring--two{inset:23%;border-style:dashed;animation:experiments-spin 22s linear infinite reverse}.experiments-orbit__ring--two::after{background:var(--experiment-orange)}.experiments-orbit__core{position:absolute;inset:34%;display:grid;place-content:center;border-radius:50%;color:var(--experiment-paper);background:var(--experiment-green);text-align:center;transform:rotate(7deg)}.experiments-orbit__core span{font-size:0.48rem;letter-spacing:0.16em;text-transform:uppercase}.experiments-orbit__core strong{font-size:1.25rem;line-height:1}.experiments-orbit__label{position:absolute;z-index:2;padding:0.25rem 0.55rem;color:var(--experiment-paper);background:var(--experiment-green);font-size:0.55rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.experiments-orbit__label--past{top:35%;left:0;transform:rotate(-8deg)}.experiments-orbit__label--now{top:20%;right:-2%;color:var(--experiment-ink);background:var(--experiment-orange);transform:rotate(6deg)}.experiments-orbit__label--next{right:5%;bottom:20%;color:var(--experiment-ink);background:var(--experiment-acid);transform:rotate(-4deg)}.experiments-era__head p,.experiment-card__index,.experiment-card__category,.experiments-filter__controls button,.experiments-colophon span{font-size:0.64rem;font-weight:800;letter-spacing:0.17em;text-transform:uppercase}.experiments-filter{padding:1rem 1.5rem 1.15rem;border-top:2px solid var(--experiment-ink);border-bottom:2px solid var(--experiment-ink);background:var(--experiment-cyan)}.experiments-filter[hidden]{display:none}@media (min-width: 48rem){.experiments-filter{padding:1.1rem 2.5rem 1.25rem}}.experiments-filter__controls{display:flex;flex-wrap:wrap;gap:0.55rem}@media (min-width: 48rem){.experiments-filter__controls{justify-content:center}}.experiments-filter__controls button{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:0.65rem;min-height:2.55rem;padding:0.55rem 0.65rem 0.55rem 0.8rem;border:2px solid var(--experiment-ink);border-radius:0;color:var(--experiment-ink);background:var(--experiment-paper);font-size:0.75rem;cursor:pointer;transition:transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease}.experiments-filter__controls button small{display:grid;width:1.4rem;height:1.4rem;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:0.625rem;letter-spacing:0;line-height:1}.experiments-filter__controls button:hover{background:var(--experiment-acid)}.experiments-filter__controls button[aria-pressed="true"]{background:var(--experiment-orange);box-shadow:0.22rem 0.22rem 0 var(--experiment-ink);transform:translate(-0.1rem, -0.1rem)}.experiments-filter__controls button:focus-visible{outline:3px solid var(--experiment-ink);outline-offset:3px}.experiments-filter__status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.experiments-timeline{display:block}.experiments-subscribe-panel{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:clamp(2rem, 7vw, 7rem);padding:clamp(2.5rem, 6vw, 5.5rem) clamp(1.5rem, 5vw, 5rem);color:var(--experiment-paper);background:var(--experiment-green)}.experiments-subscribe-panel .experiments-subscribe{margin-top:0}@media (max-width: 47.999rem){.experiments-subscribe-panel{grid-template-columns:1fr;gap:1.75rem}}.experiments-subscribe-panel__copy p{margin:0 0 0.75rem;font-size:0.64rem;font-weight:800;letter-spacing:0.17em;text-transform:uppercase}.experiments-subscribe-panel__copy h2{max-width:12ch;margin:0;font-family:var(--display);font-size:clamp(2.4rem, 5.8vw, 5rem);line-height:0.93;letter-spacing:-0.045em}.experiments-subscribe-panel__copy em{color:var(--experiment-orange);font-family:var(--serif);font-weight:400}.experiments-era{position:relative;padding:2rem 1.25rem 3rem;border-bottom:2px solid var(--experiment-ink)}@media (min-width: 48rem){.experiments-era{padding:2.5rem 2.5rem 3.25rem}}.experiments-era__cards{display:grid;gap:1rem}@media (min-width: 40rem){.experiments-era__cards{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (min-width: 64rem){.experiments-era__cards{grid-template-columns:repeat(3, minmax(0, 1fr))}}@media (min-width: 80rem){.experiments-era__cards{grid-template-columns:repeat(4, minmax(0, 1fr))}}.experiments-era__cards .experiment-card{margin-bottom:0}.experiments-timeline[data-filter="all"] [data-collapsible-era][data-expanded="false"] [data-era-overflow]{display:none}.experiments-era--past{background:var(--lilac)}.experiments-era--ongoing{background:var(--experiment-orange)}.experiments-era--on-hold{background:var(--experiment-acid)}.experiments-era--upcoming{background:var(--petal)}.experiments-era__head{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem;min-height:4rem;padding:0 0.5rem 2rem}.experiments-era__head p{margin:0;font-size:clamp(0.85rem, 1.5vw, 1.05rem);line-height:1}.experiments-era__head h2{margin:0;font-family:var(--serif);font-size:clamp(1.6rem, 3vw, 2.35rem);font-style:italic;font-weight:400;line-height:1.12;letter-spacing:-0.035em}.experiments-era__number{display:grid;width:2rem;height:2rem;place-items:center;border:1.5px solid currentColor;border-radius:50%;font-size:0.62rem;font-weight:800}.experiments-era__toggle{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:0.75rem;min-height:2.75rem;margin-top:1.25rem;padding:0.6rem 0.7rem 0.6rem 0.9rem;border:2px solid var(--experiment-ink);border-radius:0;color:var(--experiment-ink);background:var(--experiment-paper);box-shadow:0.22rem 0.22rem 0 var(--experiment-ink);font:inherit;font-size:0.68rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;cursor:pointer}.experiments-era__toggle[hidden]{display:none}.experiments-era__toggle small{display:grid;width:1.5rem;height:1.5rem;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:0.625rem;letter-spacing:0}.experiments-era__toggle:hover{background:var(--experiment-acid)}.experiments-era__toggle:focus-visible{outline:3px solid var(--experiment-ink);outline-offset:3px}.experiment-card{display:block;position:relative;height:19rem;margin-bottom:0.75rem;padding:1.15rem;overflow:hidden;border:2px solid var(--experiment-ink);background:var(--experiment-paper);box-shadow:0.35rem 0.35rem 0 var(--experiment-shadow);transition:transform 0.25s ease, box-shadow 0.25s ease}.experiment-card:hover{z-index:2;transform:translate(-0.25rem, -0.25rem) rotate(-0.4deg);box-shadow:0.65rem 0.65rem 0 var(--experiment-shadow)}.experiment-card:last-child{margin-bottom:0}.experiment-card h3{position:relative;z-index:1;margin:0 0 0.5rem;font-size:clamp(1.35rem, 2.4vw, 1.8rem);line-height:1;letter-spacing:-0.04em}.experiment-card>p:last-child{position:relative;max-width:16rem;margin:0;font-size:0.78rem;line-height:1.5}.experiment-card--linked{text-decoration:none}.experiment-card--linked h3{text-decoration:underline;text-decoration-thickness:0.08em;text-underline-offset:0.15em}.experiment-card--linked h3::after{content:" ↗";font-size:0.68em;vertical-align:0.18em}.experiment-card--linked:focus-visible{outline:3px solid currentColor;outline-offset:3px}.experiment-card__index{margin-left:auto;text-align:right}.experiment-card__meta{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;gap:0.45rem;margin:0 0 7.1rem}.experiment-card__category{display:inline-block;padding:0.28rem 0.42rem;border:1.5px solid currentColor;line-height:1;background:inherit}.experiment-card__visual{position:absolute;inset:2.5rem 0.5rem auto auto;width:72%;height:8rem;opacity:0.92}.experiment-card__visual svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.experiment-card__visual .dash{stroke-dasharray:4 5}.experiment-card--chalk{color:var(--experiment-paper);background:var(--experiment-green)}.experiment-card--chalk .experiment-card__visual{transform:rotate(-2deg)}.experiment-card--terminal{color:var(--experiment-paper);background:var(--teal)}.experiment-card--terminal .experiment-card__visual{top:3.4rem;right:1.25rem;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:0.4rem;width:65%}.experiment-card--terminal .experiment-card__visual span{grid-column:1 / -1;font-family:monospace;font-size:2.5rem;font-weight:800;line-height:1}.experiment-card--terminal .experiment-card__visual i{height:0.7rem;background:var(--experiment-ink)}.experiment-card--terminal .experiment-card__visual i:nth-of-type(2){height:2rem}.experiment-card--terminal .experiment-card__visual i:nth-of-type(3){height:3.5rem}.experiment-card--dev-tooling{color:var(--experiment-paper);background:var(--blue)}.experiment-card--signal{background:var(--sage)}.experiment-card--signal .experiment-card__visual{top:3.75rem;right:1rem;display:flex;align-items:center;gap:0.4rem;width:75%}.experiment-card--signal .experiment-card__visual i{flex:1;height:20%;background:currentColor}.experiment-card--signal .experiment-card__visual i:nth-child(2),.experiment-card--signal .experiment-card__visual i:nth-child(6){height:52%}.experiment-card--signal .experiment-card__visual i:nth-child(3),.experiment-card--signal .experiment-card__visual i:nth-child(5){height:78%}.experiment-card--signal .experiment-card__visual i:nth-child(4){height:100%}.experiment-card--house{background:var(--lilac)}.experiment-card--bunkie{background:var(--experiment-acid)}.experiment-card--solar{background:var(--experiment-green);color:var(--experiment-paper)}.experiment-card--solar .experiment-card__visual{top:3rem;right:0;width:75%}.experiment-card--solar-archive{color:var(--experiment-ink);background:var(--gold)}.experiment-sun{position:absolute;top:0.65rem;right:2.25rem;width:4.4rem;aspect-ratio:1;border:2px solid var(--experiment-paper);border-radius:50%;background:var(--experiment-acid);box-shadow:0 0 0 0.4rem var(--experiment-ink),0 0 0 0.55rem var(--experiment-paper)}.experiment-ray{position:absolute;right:4.3rem;bottom:1rem;width:7rem;height:1px;background:var(--experiment-paper);transform-origin:right center}.experiment-ray--one{transform:rotate(22deg)}.experiment-ray--two{transform:rotate(42deg)}.experiment-ray--three{transform:rotate(62deg)}.experiment-solar-line{position:absolute;right:0;bottom:0;width:85%;height:2px;background:var(--experiment-acid);transform:rotate(-7deg)}.experiment-card--pixels{background:var(--gold)}.experiment-card--pixels .experiment-card__visual{top:3.6rem;right:1.25rem;display:grid;grid-template:repeat(3, 1fr)/repeat(4, 1fr);gap:0.4rem;width:65%}.experiment-card--pixels .experiment-card__visual span{background:currentColor}.experiment-card--pixels .experiment-card__visual span:nth-child(1){grid-area:1 / 2}.experiment-card--pixels .experiment-card__visual span:nth-child(2){grid-area:2 / 1}.experiment-card--pixels .experiment-card__visual span:nth-child(3){grid-area:2 / 2;background:var(--experiment-orange)}.experiment-card--pixels .experiment-card__visual span:nth-child(4){grid-area:2 / 3}.experiment-card--pixels .experiment-card__visual span:nth-child(5){grid-area:3 / 2}.experiment-card--lora{color:var(--ink);background:var(--mint)}.experiment-card--lora .experiment-card__visual{width:54%;max-width:9.5rem;height:7.2rem;transform:translate(0.2rem, 0.05rem) rotate(-1deg)}.experiment-card--wetland{color:var(--ink);background:var(--lake)}.experiment-card--fibre{color:var(--paper);background:var(--blue)}.experiment-card--fibre .experiment-card__visual{transform:rotate(-1.5deg)}.experiment-card--garage{background:var(--paper)}.experiment-card--garage .experiment-card__visual{width:58%;max-width:10rem;transform:translate(0.1rem, 0.2rem) rotate(-1deg)}.experiment-card--greenhouse{background:var(--experiment-acid)}.experiment-card--greenhouse .sprout{stroke:var(--experiment-orange);stroke-width:3}.experiment-card--cellar{background:var(--coral)}.experiment-card--controller{color:var(--experiment-paper);background:var(--blue)}.experiment-card--kindle{background:var(--lake)}.experiment-card .experiment-card__visual{top:1.25rem;right:auto;left:1.15rem;display:block;width:calc(100% - 8.25rem);max-width:8rem;height:6.75rem;padding:0;border:0;background:transparent;opacity:1}.experiment-card .experiment-card__visual img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;filter:none;mix-blend-mode:normal}.experiment-card .experiment-card__visual--large{width:calc((100% - 8.25rem) * 1.25);max-width:10rem;height:8.4375rem}.experiment-card--chalk .experiment-card__visual{transform:translate(-0.15rem, 0.1rem) rotate(-2deg)}.experiment-card--terminal .experiment-card__visual{transform:translate(0.35rem, -0.1rem) rotate(1deg)}.experiment-card--dev-tooling .experiment-card__visual{transform:translate(0.35rem, -0.1rem) rotate(1deg)}.experiment-card--signal .experiment-card__visual{transform:translate(0.05rem, 0.2rem) rotate(-1deg)}.experiment-card--house .experiment-card__visual{transform:translate(0.3rem, 0) rotate(-2deg)}.experiment-card--bunkie .experiment-card__visual{transform:translate(0.3rem, 0) rotate(-2deg)}.experiment-card--solar .experiment-card__visual{transform:translate(-0.1rem, 0.15rem) rotate(1deg)}.experiment-card--solar-archive .experiment-card__visual{transform:translate(-0.1rem, 0.15rem) rotate(1deg)}.experiment-card--pixels .experiment-card__visual{transform:translate(0.2rem, -0.05rem) rotate(-1deg)}.experiment-card--greenhouse .experiment-card__visual{transform:translate(0.4rem, 0.1rem) rotate(1.5deg)}.experiment-card--cellar .experiment-card__visual{transform:translate(-0.15rem, 0) rotate(-1deg)}.experiment-card--controller .experiment-card__visual{transform:translate(0.3rem, 0.15rem) rotate(2deg)}.experiment-card--lora .experiment-card__visual{width:calc(100% - 8.25rem);max-width:8rem;height:7.2rem;transform:translate(0.2rem, 0.05rem) rotate(-1deg)}.lora-page{overflow:hidden;color:var(--ink);background:var(--cream)}.lora-eyebrow,.lora-section-label,.lora-back,.lora-node>p,.lora-questions li>span,.lora-next li>span{font-size:0.64rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.lora-hero{display:grid;min-height:47rem;color:var(--paper);background:var(--pine);border-bottom:2px solid var(--ink)}@media (min-width: 56rem){.lora-hero{grid-template-columns:minmax(0, 1.15fr) minmax(26rem, 0.85fr)}}.lora-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem, 8vw, 7.5rem) 1.5rem 4rem}@media (min-width: 48rem){.lora-hero__copy{padding-inline:2.5rem}}.lora-hero__copy h1{max-width:59rem;margin:1.7rem 0 0;font-size:clamp(3.3rem, 7.5vw, 7.9rem);font-weight:800;line-height:0.88;letter-spacing:-0.07em}.lora-hero__copy h1 em{display:inline-block;color:var(--solar);font-size:0.72em;line-height:1.15;transform:translateX(0.04em)}.lora-back{align-self:flex-start;text-decoration:none}.lora-back:hover{color:var(--sun)}.lora-eyebrow{margin:clamp(3.5rem, 8vh, 6rem) 0 0}.lora-hero__dek{max-width:39rem;margin:2.25rem 0 0;font-size:clamp(1rem, 1.6vw, 1.2rem);line-height:1.65}.lora-hero__art{position:relative;display:grid;min-height:31rem;place-items:center;overflow:hidden;color:var(--ink);background:var(--sun);border-top:2px solid var(--ink)}@media (min-width: 56rem){.lora-hero__art{border-top:0;border-left:2px solid var(--ink)}}.lora-hero__art img{position:relative;z-index:2;width:88%;max-width:39rem;height:auto;transform:rotate(-2deg)}.lora-hero__grid{position:absolute;inset:0;background-size:2rem 2rem;background-image:linear-gradient(rgba(var(--ink-rgb), 0.13) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.13) 1px, transparent 1px)}.lora-intro{display:grid;gap:3rem;padding:clamp(4rem, 9vw, 8rem) 1.5rem;border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.lora-intro{padding-inline:2.5rem}}@media (min-width: 64rem){.lora-intro{grid-template-columns:minmax(0, 1.1fr) minmax(20rem, 0.9fr);gap:7vw}}.lora-section-label{margin:0 0 1.5rem}.lora-intro__heading h2,.lora-path h2,.lora-questions h2,.lora-next h2{margin:0;font-size:clamp(2.8rem, 6vw, 6rem);font-weight:800;line-height:0.95;letter-spacing:-0.06em}.lora-intro__heading h2 em,.lora-path h2 em,.lora-questions h2 em,.lora-next h2 em{color:var(--pine)}.lora-intro__body{align-self:end}.lora-intro__body p{margin:0 0 1.5rem;font-size:clamp(1rem, 1.5vw, 1.16rem);line-height:1.75}.lora-intro__body p:last-child{margin-bottom:0}.lora-intro__body a{font-weight:800;text-decoration-thickness:0.1em;text-underline-offset:0.2em}.lora-path{padding:clamp(4rem, 8vw, 7rem) 1.5rem;color:var(--paper);background:var(--ink);border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.lora-path{padding-inline:2.5rem}}.lora-path header{max-width:54rem}.lora-path__intro{max-width:46rem;margin:2rem 0 0;font-size:clamp(1rem, 1.5vw, 1.16rem);line-height:1.75}.lora-path__diagram{position:relative;display:grid;gap:1.25rem;max-width:90rem;margin:clamp(3rem, 8vw, 7rem) auto 0}@media (min-width: 64rem){.lora-path__diagram{grid-template-columns:minmax(0, 1fr) minmax(7rem, 0.4fr) minmax(0, 1fr) minmax(7rem, 0.4fr) minmax(0, 1fr);align-items:center}}.lora-node{min-height:16rem;padding:1.5rem;border:2px solid currentColor;color:var(--ink);background:var(--sun)}.lora-node>p{margin:0 0 5rem}.lora-node strong{display:block;font-size:clamp(2.5rem, 4vw, 4.75rem);line-height:1;letter-spacing:-0.055em;text-align:center}.lora-node>span{display:block;margin-top:0.75rem;font-size:0.82rem;text-align:center}.lora-node--base{background:var(--solar)}.lora-node--consumer{background:var(--paper)}.lora-flow-arrow::before{content:"↓"}@media (min-width: 64rem){.lora-flow-arrow::before{content:"→"}}.lora-flow-arrow{font-weight:inherit}.lora-radio-link{position:relative;display:flex;min-height:7rem;align-items:center;justify-content:center;gap:0.55rem}.lora-radio-link i{width:0.8rem;background:var(--paper)}.lora-radio-link i:nth-child(1){height:1.75rem}.lora-radio-link i:nth-child(2){height:3.25rem}.lora-radio-link i:nth-child(3){height:5rem}.lora-radio-link span{margin-left:0.4rem;font-size:0.65rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase}.lora-wifi-link{display:flex;min-height:5rem;align-items:center;justify-content:center;gap:0.75rem}.lora-wifi-link span{font-size:0.65rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase}.lora-wifi-link i{font-size:2.5rem;font-style:normal;line-height:1}.lora-return-link{display:none}@media (min-width: 64rem){.lora-return-link{position:absolute;right:50%;bottom:-3.25rem;left:7%;display:block;height:1.5rem;border-right:2px solid var(--paper);border-bottom:2px solid var(--paper);border-left:2px solid var(--paper)}.lora-return-link span{position:absolute;bottom:-0.85rem;left:50%;padding:0 0.75rem;color:var(--paper);background:var(--ink);font-size:0.62rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;transform:translateX(-50%)}}.lora-questions{padding:clamp(4rem, 9vw, 8rem) 1.5rem;background:var(--lake);border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.lora-questions{padding-inline:2.5rem}}.lora-questions header{max-width:53rem}.lora-questions h2 em{color:var(--ink)}.lora-questions ol{display:grid;gap:1rem;margin:clamp(3rem, 7vw, 6rem) 0 0;padding:0;list-style:none}@media (min-width: 52rem){.lora-questions ol{grid-template-columns:repeat(3, minmax(0, 1fr))}}.lora-questions li{min-height:20rem;padding:1.4rem;border:2px solid var(--ink);background:var(--paper);box-shadow:0.45rem 0.45rem 0 var(--ink)}.lora-questions li>span{display:block;margin-bottom:5rem}.lora-questions h3{margin:0 0 0.75rem;font-size:clamp(1.6rem, 3vw, 2.35rem);line-height:1;letter-spacing:-0.045em}.lora-questions li p{margin:0;font-size:0.9rem;line-height:1.65}.lora-next{display:grid;gap:4rem;padding:clamp(4rem, 9vw, 8rem) 1.5rem;background:var(--paper)}@media (min-width: 48rem){.lora-next{padding-inline:2.5rem}}@media (min-width: 64rem){.lora-next{grid-template-columns:minmax(0, 1fr) minmax(24rem, 0.8fr);gap:8vw}}.lora-next__intro{max-width:38rem;margin:2rem 0 0;font-size:clamp(1rem, 1.5vw, 1.16rem);line-height:1.75}.lora-next ol{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}.lora-next li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.25rem 0;border-bottom:2px solid var(--ink);font-size:0.95rem;line-height:1.5}@media (prefers-reduced-motion: reduce){.lora-hero__art img{transform:none}}.fibre-page{overflow:hidden;color:var(--ink);background:var(--cream)}.fibre-eyebrow,.fibre-section-label,.fibre-back,.fibre-stop>span,.fibre-reasons li>span,.fibre-status li>span{font-size:0.64rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.fibre-hero{display:grid;background:var(--ink);border-bottom:2px solid var(--ink)}@media (min-width: 58rem){.fibre-hero{grid-template-columns:minmax(0, 0.95fr) minmax(34rem, 1.05fr);min-height:47rem}}.fibre-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem, 8vw, 7rem) 1.5rem 4rem;color:var(--paper);background:var(--ink)}@media (min-width: 48rem){.fibre-hero__copy{padding-inline:2.5rem}}.fibre-hero__copy h1{max-width:54rem;margin:1.6rem 0 0;font-size:clamp(3.2rem, 7vw, 7.2rem);font-weight:800;line-height:0.9;letter-spacing:-0.07em}.fibre-hero__copy h1 em{display:inline-block;color:var(--solar);font-size:0.7em;line-height:1.2}.fibre-back{align-self:flex-start;text-decoration:none}.fibre-back:hover{color:var(--sun)}.fibre-eyebrow{margin:clamp(3.5rem, 8vh, 6rem) 0 0}.fibre-hero__dek{max-width:37rem;margin:2.25rem 0 0;font-size:clamp(1rem, 1.5vw, 1.2rem);line-height:1.65}.fibre-hero__art{position:relative;display:grid;min-height:29rem;margin:0;place-items:center;overflow:hidden;background:transparent;border-top:2px solid var(--ink)}@media (min-width: 58rem){.fibre-hero__art{border-top:0;border-left:2px solid var(--ink)}}.fibre-hero__art img{width:88%;max-width:44rem;height:auto;-o-object-fit:contain;object-fit:contain}.fibre-section-label{margin:0 0 1.5rem}.fibre-route,.fibre-reasons,.fibre-status{padding:clamp(4rem, 9vw, 8rem) 1.5rem;border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.fibre-route,.fibre-reasons,.fibre-status{padding-inline:2.5rem}}.fibre-route h2,.fibre-reasons h2,.fibre-status h2{margin:0;font-size:clamp(2.8rem, 6vw, 6rem);font-weight:800;line-height:0.95;letter-spacing:-0.06em}.fibre-route h2 em,.fibre-reasons h2 em,.fibre-status h2 em{color:var(--solar)}.fibre-route{color:var(--ink);background:var(--solar)}.fibre-route header{max-width:56rem}.fibre-route h2 em{color:var(--paper)}.fibre-route__diagram{display:grid;gap:1.25rem;align-items:center;max-width:82rem;margin:clamp(3rem, 8vw, 7rem) auto 0}@media (min-width: 58rem){.fibre-route__diagram{grid-template-columns:minmax(0, 1fr) minmax(14rem, 0.8fr) minmax(0, 1fr)}}.fibre-stop{min-height:16rem;padding:1.5rem;color:var(--ink);background:var(--paper);border:2px solid var(--ink)}.fibre-stop>span{display:block;margin-bottom:5rem}.fibre-stop strong{display:block;font-size:clamp(2.8rem, 5vw, 4.8rem);line-height:1;letter-spacing:-0.055em}.fibre-stop p{margin:0.75rem 0 0;font-size:0.82rem}.fibre-related{display:inline-block;margin-top:1.25rem;font-size:0.72rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase;text-underline-offset:0.2em}.fibre-run{position:relative;display:grid;min-height:8rem;place-items:center;text-align:center}.fibre-run span{position:relative;z-index:1;padding:0.4rem 0.7rem;color:var(--ink);background:var(--paper);font-size:0.64rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase}.fibre-run i,.fibre-run i::before,.fibre-run i::after{position:absolute;right:0;left:0;height:2px;content:"";background:var(--ink)}.fibre-run i{top:50%}.fibre-run i::before{top:-0.55rem}.fibre-run i::after{top:0.55rem}.fibre-reasons{background:var(--paper)}.fibre-reasons__heading{max-width:58rem}.fibre-reasons ol{margin:clamp(3rem, 7vw, 6rem) 0 0;padding:0;list-style:none}.fibre-reasons li{display:grid;grid-template-columns:3.5rem 1fr;gap:clamp(1rem, 5vw, 4rem);padding:1.5rem 0;border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.fibre-reasons li{grid-template-columns:7rem minmax(0, 1fr)}}.fibre-reasons li h3{margin:0;font-size:clamp(1.55rem, 3vw, 2.5rem);line-height:1;letter-spacing:-0.045em}.fibre-reasons li p{max-width:48rem;margin:0.65rem 0 0;line-height:1.65}.fibre-reasons li>span{color:var(--solar)}.fibre-reasons li:last-child{border-bottom:0}.fibre-status{display:grid;gap:4rem;background:var(--cream)}@media (min-width: 64rem){.fibre-status{grid-template-columns:minmax(0, 1fr) minmax(24rem, 0.8fr);gap:8vw}}.fibre-status>div>p:last-child{max-width:37rem;margin:2rem 0 0;line-height:1.7}.fibre-status ol{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}.fibre-status li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.25rem 0;border-bottom:2px solid var(--ink);font-size:0.95rem;line-height:1.5}.garage-page{overflow:hidden;color:var(--ink);background:var(--cream)}.garage-eyebrow,.garage-back{font-size:0.64rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.garage-hero{display:grid;min-height:47rem;color:var(--paper);background:var(--pine);border-bottom:2px solid var(--ink)}@media (min-width: 56rem){.garage-hero{grid-template-columns:minmax(0, 1.15fr) minmax(26rem, 0.85fr)}}.garage-hero__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem, 8vw, 7.5rem) 1.5rem 4rem}@media (min-width: 48rem){.garage-hero__copy{padding-inline:2.5rem}}.garage-hero__copy h1{margin:1.7rem 0 0;font-size:clamp(3.3rem, 7.5vw, 7.9rem);font-weight:800;line-height:0.88;letter-spacing:-0.07em}.garage-back{align-self:flex-start;text-decoration:none}.garage-back:hover{color:var(--sun)}.garage-eyebrow{margin:clamp(3.5rem, 8vh, 6rem) 0 0}.garage-hero__dek{max-width:32rem;margin:2.25rem 0 0;font-size:clamp(1rem, 1.6vw, 1.2rem);line-height:1.65}.garage-hero__art{position:relative;display:grid;min-height:31rem;place-items:center;overflow:hidden;color:var(--ink);background:var(--sun);border-top:2px solid var(--ink)}@media (min-width: 56rem){.garage-hero__art{border-top:0;border-left:2px solid var(--ink)}}.garage-hero__art img{position:relative;z-index:2;width:88%;max-width:39rem;height:auto;-o-object-fit:contain;object-fit:contain;transform:rotate(-2deg)}.garage-hero__grid{position:absolute;inset:0;background-size:2rem 2rem;background-image:linear-gradient(rgba(var(--ink-rgb), 0.13) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.13) 1px, transparent 1px)}.garage-writeup{padding:clamp(4rem, 9vw, 7rem) 1.5rem}@media (min-width: 48rem){.garage-writeup{padding-inline:2.5rem}}.garage-writeup__body{max-width:44rem}.garage-writeup__body p{margin:0;font-size:clamp(1rem, 1.4vw, 1.1rem);line-height:1.75}.garage-writeup__body p+p{margin-top:1.25rem}.garage-writeup__body a{font-weight:800;text-underline-offset:0.2em}.experiment-detail-shell{position:relative}.experiment-detail{overflow:hidden;color:var(--ink);background:var(--cream)}.experiment-detail--solar-energy{--solar-ink: var(--pine)}.experiment-detail--solar-energy .solar-learnings{width:calc(100vw - 3rem);margin-right:0;margin-left:50%;transform:translateX(-50%)}.experiment-detail-header{position:absolute;top:0;right:0;left:0;z-index:10;color:var(--experiment-detail-main-text)}.experiment-detail-header .site-header{grid-template-columns:1fr auto;grid-template-areas:"logo end";border-top-color:currentColor}.experiment-detail-header .site-header__logo{color:currentColor}.experiment-detail-header .site-header__end{display:block}.experiment-detail-header .site-header__email{color:currentColor}.experiment-detail__eyebrow,.experiment-log__stage,.lora-node>p,.fibre-stop>span{font-size:0.64rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.experiment-detail__hero{display:grid;min-height:47rem;color:var(--experiment-detail-main-text);background:var(--experiment-detail-main);border-bottom:2px solid var(--ink)}@media (min-width: 56rem){.experiment-detail__hero{grid-template-columns:minmax(0, 1.15fr) minmax(26rem, 0.85fr);min-height:100svh}}.experiment-detail__hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem, 8vw, 7.5rem) 1.5rem 4rem}@media (min-width: 48rem){.experiment-detail__hero-copy{padding-inline:2.5rem}}.experiment-detail__hero-copy h1{max-width:58rem;margin:1.7rem 0 0;font-size:clamp(3.3rem, 7.5vw, 7.9rem);font-weight:800;line-height:0.88;letter-spacing:-0.07em}.experiment-detail__hero-copy h1 em{display:inline-block;color:var(--experiment-detail-emphasis);font-size:0.72em;line-height:1.15}.experiment-detail__eyebrow{display:inline-block;width:-moz-fit-content;width:fit-content;margin:clamp(3.5rem, 8vh, 6rem) 0 0;padding:0.28rem 0.42rem;border:1.5px solid currentColor;line-height:1}.experiment-detail__dek{max-width:36rem;margin:2.25rem 0 0;font-size:clamp(1rem, 1.6vw, 1.2rem);line-height:1.65}.experiment-detail__hero-links{display:flex;flex-wrap:wrap;gap:0.65rem 1.25rem;margin-top:1.5rem}.experiment-detail__hero-links a{color:currentColor;font-size:0.82rem;font-weight:800;text-underline-offset:0.25em}.experiment-detail__hero-art{position:relative;display:grid;min-height:31rem;place-items:center;overflow:hidden;color:var(--experiment-detail-accent-text);background:var(--experiment-detail-accent);border-top:2px solid var(--ink)}@media (min-width: 56rem){.experiment-detail__hero-art{margin-top:4rem;border-top:0;border-left:2px solid var(--ink);border-top-left-radius:clamp(3rem, 6vw, 5.5rem)}}.experiment-detail__hero-art img{position:relative;z-index:2;width:88%;max-width:39rem;height:auto;-o-object-fit:contain;object-fit:contain;transform:rotate(-2deg)}.experiment-detail--fibre .experiment-detail__hero-art img{max-width:42rem}.experiment-detail--dead-run .experiment-detail__hero-art img{max-width:41rem}.experiment-detail__hero-grid{position:absolute;inset:0;background-size:2rem 2rem;background-image:linear-gradient(rgba(var(--ink-rgb), 0.13) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.13) 1px, transparent 1px)}.experiment-detail__writeup{padding:clamp(4rem, 9vw, 7rem) 1.5rem}@media (min-width: 48rem){.experiment-detail__writeup{padding-inline:2.5rem}}.experiment-detail__body{max-width:44rem;margin-inline:auto}.experiment-detail__body>p,.experiment-detail__body>ol,.experiment-detail__body>ul{font-size:clamp(1rem, 1.4vw, 1.1rem);line-height:1.75}.experiment-detail__body>p{margin:0}.experiment-detail__body>p+p,.experiment-detail__body>ol+p,.experiment-detail__body>ul+p{margin-top:1.25rem}.experiment-detail__body>h2{margin:clamp(3.5rem, 8vw, 6rem) 0 1.5rem;font-size:clamp(2.25rem, 5vw, 4.25rem);font-weight:800;line-height:0.98;letter-spacing:-0.055em}.experiment-detail__body>h3{margin:2.5rem 0 0.5rem;font-size:clamp(1.35rem, 2.5vw, 1.85rem);line-height:1.1;letter-spacing:-0.035em}.experiment-detail__body>ol,.experiment-detail__body>ul{margin:1.5rem 0 0;padding-left:1.35rem}.experiment-detail__body>ol li+li,.experiment-detail__body>ul li+li{margin-top:0.65rem}.experiment-detail__body>ol>li>p,.experiment-detail__body>ul>li>p{margin:0}.experiment-detail__body>ol>li>p+p,.experiment-detail__body>ul>li>p+p{margin-top:0.75rem}.experiment-detail__body a{font-weight:800;text-decoration-thickness:0.1em;text-underline-offset:0.2em}.experiment-detail--ansible-homelab .experiment-detail__body>p,.experiment-detail--ansible-homelab .experiment-detail__body>h2,.experiment-detail--ansible-homelab .experiment-detail__body>h3,.experiment-detail--ansible-homelab .experiment-detail__body>h4,.experiment-detail--ansible-homelab .experiment-detail__body>blockquote,.experiment-detail--ansible-homelab .experiment-detail__body>pre,.experiment-detail--ansible-homelab .experiment-detail__body>ol:not([class]),.experiment-detail--ansible-homelab .experiment-detail__body>ul:not([class]),.experiment-detail--cabin-building .experiment-detail__body>p,.experiment-detail--cabin-building .experiment-detail__body>h2,.experiment-detail--cabin-building .experiment-detail__body>h3,.experiment-detail--cabin-building .experiment-detail__body>h4,.experiment-detail--cabin-building .experiment-detail__body>blockquote,.experiment-detail--cabin-building .experiment-detail__body>pre,.experiment-detail--cabin-building .experiment-detail__body>ol:not([class]),.experiment-detail--cabin-building .experiment-detail__body>ul:not([class]){width:100%;max-width:44rem;margin-right:auto;margin-left:auto}.experiment-detail--ansible-homelab .experiment-detail__body>.homelab-nodes+p,.experiment-detail--ansible-homelab .experiment-detail__body>p+.homelab-graph-field,.experiment-detail--ansible-homelab .experiment-detail__body>p+.homelab-timeline__figure,.experiment-detail--ansible-homelab .experiment-detail__body>.homelab-timeline__figure+p{margin-top:clamp(2.5rem, 5vw, 4rem)}.experiment-detail--cabin-building .experiment-detail__body>ul+.cabin-site-plan__map{margin-top:clamp(2.5rem, 5vw, 4rem)}.garage-model{width:calc(100vw - 3rem);max-width:72rem;margin:clamp(3.5rem, 8vw, 6rem) 0;margin-left:50%;color:var(--ink);background:var(--paper);border:2px solid var(--ink);transform:translateX(-50%)}.garage-model__intro{display:grid;border-bottom:2px solid var(--ink)}@media (min-width: 48rem){.garage-model__intro{grid-template-columns:minmax(11rem, 0.42fr) 1.58fr}}.garage-model__intro>div{padding:clamp(1.35rem, 3vw, 2.5rem)}.garage-model__intro h2{margin:0;font-family:var(--display);font-size:clamp(2rem, 4vw, 3.5rem);line-height:0.92;letter-spacing:-0.055em;white-space:nowrap}.garage-model__intro p:not(.garage-model__eyebrow){max-width:42rem;margin:1.25rem 0 0;font-size:clamp(0.95rem, 1.5vw, 1.1rem);line-height:1.65}.garage-model__eyebrow{display:flex;flex-direction:column;gap:0.35rem;justify-content:flex-end;align-items:flex-end;margin:0;padding:1.25rem;color:var(--ink);background:var(--solar);font-size:clamp(0.88rem, 1.35vw, 1.05rem);font-weight:800;letter-spacing:0.11em;line-height:1.35;text-transform:uppercase}@media (min-width: 48rem){.garage-model__eyebrow{align-items:flex-start;justify-content:center;min-height:100%;padding:1.5rem;border-right:2px solid var(--ink)}}.garage-model__stage{color:var(--cream);background:var(--pine)}.garage-model__viewer{display:block;width:100%;height:clamp(28rem, calc(100svh - 19rem), 42rem);background:var(--pine);--poster-color: transparent}.garage-model__poster{position:absolute;inset:0;display:grid;place-items:end start;padding:clamp(1rem, 3vw, 2rem)}.garage-model__poster-image{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.garage-model__load,.garage-model__controls button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid currentColor;border-radius:0;font:inherit;font-weight:800;cursor:pointer}.garage-model__load{position:relative;z-index:1;display:inline-flex;gap:1.1rem;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;max-width:100%;padding:0.9rem 1.1rem;color:var(--ink);line-height:1;background:var(--cream);box-shadow:0.25rem 0.25rem 0 var(--solar)}.garage-model__load:hover{background:var(--solar)}.garage-model__load:disabled{cursor:wait}.garage-model__load .interactive-icon{width:2.15rem;height:2.15rem}.interactive-icon{width:2rem;height:2rem;flex:none;overflow:visible;transition:transform 180ms ease}.interactive-cue{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:0.45rem;font-size:0.58rem;font-weight:800;letter-spacing:0.12em;line-height:1;text-transform:uppercase}.interactive-cue .interactive-icon{width:1.4rem;height:1.4rem}.interactive-icon__hand,.interactive-icon__creases,.interactive-icon__signal{fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.garage-model__load:hover .interactive-icon{transform:scale(1.04)}.garage-model__controls{display:flex;gap:1rem;align-items:center;justify-content:space-between;min-height:3.5rem;padding:0.75rem 1rem;color:var(--ink);background:var(--cream);border-top:2px solid var(--ink)}.garage-model__controls p{margin:0;font-size:0.72rem;font-weight:800;letter-spacing:0.06em;line-height:1.4;text-transform:uppercase}.garage-model__controls button{flex:none;padding:0.45rem 0.7rem;color:var(--ink);background:transparent}.garage-model__controls button:hover{background:var(--sun)}.garage-model__controls[hidden]{display:none}.garage-model__load:focus-visible,.garage-model__controls button:focus-visible{outline:3px solid var(--sun);outline-offset:3px}@media (max-width: 35rem){.garage-model{width:calc(100vw - 2rem)}.garage-model__viewer{height:27rem}.garage-model__controls{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion: reduce){.garage-model__load{box-shadow:none}.interactive-icon{transition:none}}.experiment-detail__byline{margin:0 0 2.5rem !important;padding-bottom:0.85rem;border-bottom:1px solid rgba(var(--ink-rgb), 0.35);font-size:0.72rem !important;font-weight:800;letter-spacing:0.08em;line-height:1.4 !important;text-transform:uppercase}.related-repositories{padding:clamp(3rem, 7vw, 5rem) 1.5rem;color:var(--ink);background:var(--sun);border-top:2px solid var(--ink)}@media (min-width: 48rem){.related-repositories{padding-inline:2.5rem}}.related-repositories__inner{display:grid;max-width:74rem;margin-inline:auto;gap:clamp(2rem, 5vw, 4.5rem)}@media (min-width: 60rem){.related-repositories__inner{grid-template-columns:minmax(14rem, 0.7fr) minmax(0, 1.3fr);align-items:start}}.related-repositories__header h2{max-width:10ch;margin:0;font-size:clamp(2.6rem, 5.5vw, 4.8rem);font-weight:800;line-height:0.91;letter-spacing:-0.065em}.related-repositories__header>p:last-child{max-width:28rem;margin:1.25rem 0 0;font-size:0.92rem;line-height:1.6}.related-repositories__eyebrow{width:-moz-fit-content;width:fit-content;margin:0 0 0.9rem;padding:0.3rem 0.42rem;color:var(--paper);background:var(--ink);font-size:0.64rem;font-weight:800;letter-spacing:0.14em;line-height:1;text-transform:uppercase}.related-repositories__index{min-width:0;border:2px solid var(--ink);background:var(--paper);box-shadow:0.35rem 0.35rem 0 var(--ink)}.related-repositories__list{margin:0;padding:0;list-style:none}.related-repositories__item+.related-repositories__item{border-top:1.5px solid var(--ink)}.related-repositories__link{display:grid;grid-template-columns:minmax(0, 1fr) auto;grid-template-areas:"identity meta" "description meta";gap:0.18rem 1.25rem;padding:0.8rem 0.9rem;color:var(--ink);text-decoration:none}.related-repositories__link:hover{background:var(--cream)}.related-repositories__link:focus-visible{position:relative;z-index:1;outline:3px solid var(--solar);outline-offset:-3px}@media (max-width: 36rem){.related-repositories__link{grid-template-columns:1fr;grid-template-areas:"identity" "description" "meta";gap:0.28rem}}.related-repositories__identity{-ms-grid-row:1;-ms-grid-column:1;display:flex;grid-area:identity;min-width:0;align-items:baseline;gap:0.45rem}.related-repositories__identity strong{overflow:hidden;font-size:0.92rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.related-repositories__identity>span{color:var(--solar);font-weight:800}.related-repositories__description{-ms-grid-row:3;-ms-grid-column:1;grid-area:description;color:var(--muted);font-size:0.74rem;line-height:1.4}.related-repositories__meta{-ms-grid-row:1;-ms-grid-row-span:3;-ms-grid-column:3;display:flex;grid-area:meta;align-items:center;align-self:center;gap:0.75rem;font-size:0.62rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase}@media (max-width: 36rem){.related-repositories__identity{-ms-grid-row:1;-ms-grid-column:1}.related-repositories__description{-ms-grid-row:3;-ms-grid-column:1}.related-repositories__meta{-ms-grid-row:5;-ms-grid-row-span:1;-ms-grid-column:1}}.related-repositories__meta>span{display:inline-flex;align-items:center;gap:0.35rem}.related-repositories__meta i{width:0.48rem;height:0.48rem;background:var(--solar);border:1px solid var(--ink);border-radius:50%}.related-repositories__stars{color:var(--ink)}.related-repositories__pagination{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0.75rem;min-height:3rem;padding:0.5rem;border-top:2px solid var(--ink);background:var(--cream)}.related-repositories__pagination button{min-height:2rem;padding:0.42rem 0.65rem;border:1.5px solid var(--ink);border-radius:0;color:var(--ink);background:var(--paper);font:inherit;font-size:0.62rem;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;cursor:pointer}.related-repositories__pagination button:hover:not(:disabled),.related-repositories__pagination button:focus-visible{background:var(--solar)}.related-repositories__pagination button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.related-repositories__pagination button:disabled{opacity:0.36;cursor:default}.related-repositories__pagination output{text-align:center;font-size:0.62rem;font-weight:800;letter-spacing:0.05em;text-transform:uppercase;white-space:nowrap}@media (max-width: 30rem){.related-repositories__pagination{gap:0.4rem}.related-repositories__pagination button{padding-inline:0.5rem}.related-repositories__pagination output{font-size:0.55rem}}.experiment-comments{padding:clamp(4rem, 9vw, 7rem) 1.5rem;color:var(--ink);background:var(--paper);border-top:2px solid var(--ink)}@media (min-width: 48rem){.experiment-comments{padding-inline:2.5rem}}.experiment-comments__inner{display:grid;max-width:74rem;margin-inline:auto;gap:2.5rem}@media (min-width: 60rem){.experiment-comments__inner{grid-template-columns:minmax(15rem, 0.7fr) minmax(0, 1.3fr);gap:clamp(4rem, 8vw, 8rem);align-items:start}}.experiment-comments__header h2{margin:0;max-width:8ch;font-size:clamp(3rem, 6vw, 5.5rem);font-weight:800;line-height:0.9;letter-spacing:-0.065em}.experiment-comments__header>p:last-child{max-width:27rem;margin:1.5rem 0 0;font-size:0.95rem;line-height:1.65}.experiment-comments__eyebrow{margin:0 0 1rem;font-size:0.68rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase;color:var(--solar)}.experiment-comments__thread{min-width:0;--waline-font-size: 1rem;--waline-white: var(--paper);--waline-bg-color: var(--paper);--waline-bg-color-light: var(--cream);--waline-text-color: var(--ink);--waline-border-color: var(--ink);--waline-info-color: var(--muted);--waline-theme-color: var(--solar);--waline-active-color: var(--clay);--waline-code-bg-color: var(--cream);--waline-bq-color: var(--rule);--waline-disable-bg-color: var(--rule);--waline-disable-color: var(--muted)}.experiment-comments__thread .wl-panel{overflow:hidden;border:2px solid var(--ink);border-radius:0;box-shadow:none}.experiment-comments__thread .wl-editor,.experiment-comments__thread .wl-input,.experiment-comments__thread .wl-card,.experiment-comments__thread .wl-btn{border-radius:0}.experiment-comments__thread .wl-btn{min-height:2.5rem;border:1.5px solid var(--ink);font-family:var(--sans);font-size:0.68rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.experiment-comments__thread .wl-btn.primary{border-color:var(--ink);color:var(--ink);background:var(--solar)}.experiment-comments__thread .wl-btn.primary:hover,.experiment-comments__thread .wl-btn.primary:focus-visible{border-color:var(--ink);color:var(--paper);background:var(--ink)}.experiment-comments__thread .wl-reaction-img{display:grid;width:3.1rem;height:3.1rem;place-items:center;overflow:hidden;background:var(--cream);border:1.5px solid var(--ink);border-radius:0}.experiment-comments__thread .wl-reaction-img img{width:2.65rem;height:2.65rem;-o-object-fit:contain;object-fit:contain;border-radius:0}.experiment-comments__thread .wl-reaction-item:hover .wl-reaction-img,.experiment-comments__thread .wl-reaction-item:focus-within .wl-reaction-img{background:var(--sun)}.experiment-comments__thread .wl-user .wl-nick,.experiment-comments__thread .wl-login-nick{display:inline-block;white-space:nowrap;word-break:keep-all}.trust-page{min-height:75vh;background:var(--cream)}.trust-page__body{max-width:44rem;margin:0 auto;padding:clamp(4rem, 10vw, 8rem) 0}.trust-page__body h1{margin:0;font-size:clamp(3.8rem, 10vw, 7.5rem);font-weight:800;line-height:0.88;letter-spacing:-0.07em}.trust-page__body h1 em{color:var(--solar)}.trust-page__body h2{margin:3.5rem 0 1rem;font-size:clamp(2rem, 4vw, 3.3rem);font-weight:800;line-height:0.98;letter-spacing:-0.055em}.trust-page__body p{font-size:clamp(1rem, 1.4vw, 1.1rem);line-height:1.75}.trust-page__body p+p{margin-top:1.25rem}.trust-page__body a{font-weight:800;text-decoration-thickness:0.1em;text-underline-offset:0.2em}.trust-page__eyebrow,.trust-page__contact{font-size:0.72rem !important;font-weight:800;letter-spacing:0.12em;text-transform:uppercase}.trust-page__lede{margin-top:2rem;font-size:clamp(1.2rem, 2vw, 1.5rem) !important;font-weight:600;line-height:1.5 !important}.experiment-detail--cabin-building .experiment-detail__hero-art img{width:78%;max-width:30rem}.experiment-detail--cabin-building .experiment-detail__body{max-width:76rem}.cabin-intro{display:grid;gap:1.5rem;margin:0 auto clamp(4rem, 10vw, 8rem)}@media (min-width: 50rem){.cabin-intro{grid-template-columns:minmax(0, 1.45fr) minmax(16rem, 0.55fr);align-items:end}}.cabin-intro h2{max-width:50rem;margin:0;font-size:clamp(2.7rem, 6vw, 5.9rem);font-weight:800;line-height:0.94;letter-spacing:-0.06em}.cabin-intro>p:last-child{max-width:31rem;margin:0;font-size:clamp(1rem, 1.5vw, 1.15rem);line-height:1.7}.cabin-intro__label,.cabin-timeline__date,.cabin-follow>p{margin:0;font-size:0.68rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.cabin-intro__label{grid-column:1 / -1;padding-bottom:0.85rem;border-bottom:2px solid var(--ink)}.cabin-timeline{position:relative;margin:0;padding:0;list-style:none}.cabin-timeline::before{position:absolute;top:0;bottom:0;left:1.2rem;width:2px;background:var(--ink);content:""}.cabin-timeline__phase{position:relative;display:grid;grid-template-columns:2.5rem minmax(0, 1fr);gap:1.25rem;margin:0;padding-bottom:clamp(4rem, 9vw, 7rem)}@media (min-width: 52rem){.cabin-timeline__phase{grid-template-columns:minmax(0, 1fr) 3.5rem minmax(0, 1fr);gap:clamp(1.5rem, 4vw, 4rem);align-items:center}.cabin-timeline__phase:nth-child(odd) .cabin-timeline__copy{grid-column:1;grid-row:1}.cabin-timeline__phase:nth-child(odd) .cabin-timeline__art{grid-column:3;grid-row:1}.cabin-timeline__phase:nth-child(even) .cabin-timeline__copy{grid-column:3;grid-row:1}.cabin-timeline__phase:nth-child(even) .cabin-timeline__art{grid-column:1;grid-row:1}}.cabin-timeline__marker{position:relative;z-index:2;display:grid;grid-column:1;grid-row:1;width:2.5rem;height:2.5rem;place-items:center;color:var(--paper);background:var(--ink);border:2px solid var(--ink);font-size:0.64rem;font-weight:800}@media (min-width: 52rem){.cabin-timeline__marker{grid-column:2;justify-self:center;width:3.5rem;height:3.5rem}}.cabin-timeline__copy{grid-column:2;padding-top:0.2rem}.cabin-timeline__copy h3{margin:0.65rem 0 1rem;font-size:clamp(2rem, 4vw, 3.8rem);font-weight:800;line-height:0.96;letter-spacing:-0.055em}.cabin-timeline__copy>p:last-child{max-width:31rem;margin:0;font-size:clamp(0.95rem, 1.3vw, 1.08rem);line-height:1.7}.cabin-timeline__date{color:var(--raspberry)}.cabin-timeline__art{display:grid;grid-column:2;min-height:18rem;margin-top:1.75rem;padding:clamp(1.5rem, 4vw, 3rem);place-items:center;overflow:hidden;background:var(--sun);border:2px solid var(--ink)}@media (min-width: 52rem){.cabin-timeline__art{min-height:30rem;margin-top:0}}.cabin-timeline__art img{width:auto;max-width:100%;max-height:28rem;-o-object-fit:contain;object-fit:contain}.cabin-timeline__phase--paper .cabin-timeline__art{background:var(--paper)}.cabin-timeline__phase--orange .cabin-timeline__art{background:var(--solar)}.cabin-timeline__phase--blue .cabin-timeline__art{background:var(--blue)}.cabin-timeline__phase--raspberry .cabin-timeline__art{background:var(--raspberry)}.cabin-timeline__phase--pine .cabin-timeline__art{background:var(--pine)}.cabin-timeline__phase--cream .cabin-timeline__art{background:var(--cream)}.cabin-site-plan{width:calc(100vw - 3rem);max-width:86rem;margin:0 0 clamp(4rem, 9vw, 7rem) 50%;color:var(--ink);transform:translateX(-50%)}.cabin-site-plan__heading{display:grid;gap:1.25rem;margin-bottom:clamp(1.5rem, 4vw, 3rem)}@media (min-width: 52rem){.cabin-site-plan__heading{grid-template-columns:minmax(15rem, 0.7fr) minmax(22rem, 1.3fr);align-items:start}}.cabin-site-plan__heading>p{grid-column:1 / -1;margin:0;padding-bottom:0.8rem;border-bottom:2px solid var(--ink);font-size:0.68rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase}.cabin-site-plan__heading h2{margin:0;font-size:clamp(2.7rem, 6vw, 5.8rem);font-weight:800;line-height:0.94;letter-spacing:-0.06em}.cabin-site-plan__heading ul{margin:0;padding-left:1.2rem;font-size:clamp(0.95rem, 1.3vw, 1.08rem);line-height:1.65}.cabin-site-plan__heading li+li{margin-top:0.55rem}.cabin-site-plan__map{margin:0;overflow:hidden;background:var(--paper);border:2px solid var(--ink)}.cabin-site-plan__map img{display:block;width:100%;height:auto}.cabin-follow{width:calc(100vw - 3rem);max-width:86rem;margin:0 0 0 50%;padding:clamp(2.5rem, 7vw, 6rem);color:var(--paper);background:var(--pine);border:2px solid var(--ink);transform:translateX(-50%)}.cabin-follow h2{max-width:55rem;margin:1.5rem 0 2.5rem;font-size:clamp(2.7rem, 7vw, 6.8rem);font-weight:800;line-height:0.92;letter-spacing:-0.065em}.cabin-follow a{display:inline-flex;align-items:center;gap:1rem;padding:0.9rem 1rem;color:var(--ink);background:var(--sun);border:2px solid var(--paper);font-size:clamp(0.9rem, 1.5vw, 1.05rem);font-weight:800;text-decoration:none}.cabin-follow a:hover,.cabin-follow a:focus-visible{background:var(--solar)}.cabin-follow__links{display:flex;flex-wrap:wrap;gap:0.75rem}@media (min-width: 52rem){.cabin-timeline::before{left:50%;transform:translateX(-50%)}}@media (max-width: 51.99rem){.cabin-timeline__phase:last-child{padding-bottom:4rem}}.experiment-figure{width:calc(100vw - 3rem);max-width:82rem;margin:clamp(3rem, 8vw, 6rem) 0;margin-left:50%;border:2px solid var(--ink);background:var(--paper);transform:translateX(-50%)}.experiment-figure figcaption{padding:0.9rem 1rem;font-size:0.82rem;font-weight:700;line-height:1.5;text-align:center}.experiment-figure--diagram{padding:clamp(1rem, 3vw, 2.5rem) clamp(1rem, 3vw, 2.5rem) 0}.experiment-figure--lora{color:var(--paper);background:var(--ink)}.experiment-figure--lora .lora-path__diagram{max-width:none;margin:0}.experiment-figure--lora figcaption{border-color:var(--paper)}.experiment-figure--fibre{background:var(--solar)}.experiment-figure--fibre .fibre-route__diagram{max-width:none;margin:0}.experiment-figure__heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem;padding:clamp(1rem, 3vw, 2rem)}.experiment-figure__heading h2{margin:0;font-size:clamp(2rem, 4vw, 3.75rem);line-height:1;letter-spacing:-0.05em}.experiment-figure--chart{--solar-ink: var(--pine)}.experiment-figure--chart .solar-chart__plot{min-height:18rem;border-radius:0;box-shadow:none}.article-callout-component{display:contents}.article-callout{position:relative;display:grid;width:calc(100vw - 3rem);max-width:82rem;min-height:18rem;grid-template-columns:minmax(0, 1.15fr) minmax(18rem, 0.85fr);margin:0 0 clamp(4rem, 9vw, 7rem);margin-left:50%;overflow:hidden;color:var(--paper);text-decoration:none;background:var(--raspberry);border:2px solid var(--ink);transform:translateX(-50%)}.article-callout[data-tone="pine"]{background:var(--pine)}.article-callout[data-tone="orange"]{background:var(--solar)}.article-callout[data-tone="blue"]{background:var(--blue)}.article-callout[data-tone="berry"]{background:var(--berry)}.article-callout:hover h2,.article-callout:focus-visible h2{text-decoration-thickness:0.08em}.article-callout:focus-visible{outline:4px solid var(--solar);outline-offset:4px}@media (max-width: 44rem){.article-callout{grid-template-columns:1fr}}.experiment-detail--garage .article-callout{max-width:72rem}.article-callout__copy{position:relative;z-index:2;align-self:end;padding:clamp(1.5rem, 4vw, 3rem)}.article-callout__copy h2{max-width:10ch;margin:0;color:inherit;font-size:clamp(2.75rem, 6vw, 5.75rem);font-weight:800;line-height:0.92;letter-spacing:-0.06em;text-decoration:underline;text-decoration-thickness:0.04em;text-underline-offset:0.08em}.article-callout__copy h2 em{font-family:var(--serif);font-weight:400}.article-callout__copy>p:last-child{max-width:35rem;margin:1.5rem 0 0;font-size:clamp(1rem, 1.5vw, 1.2rem);line-height:1.55}.article-callout__eyebrow{margin:0 0 1rem;font-size:0.68rem;font-weight:800;letter-spacing:0.18em;text-transform:uppercase}.article-callout__art{position:relative;display:grid;min-height:18rem;place-items:center;background-color:var(--pine);background-image:linear-gradient(rgba(var(--ink-rgb), 0.12) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.12) 1px, transparent 1px);background-size:2rem 2rem;border-left:2px solid var(--ink)}.article-callout__art img{display:block;width:auto;max-width:calc(100% - 3rem);height:auto;max-height:15rem}@media (max-width: 44rem){.article-callout__art{min-height:15rem;border-top:2px solid var(--ink);border-left:0}.article-callout__art img{max-width:calc(100% - 2rem);max-height:12rem}}.article-callout__arrow{position:absolute;z-index:3;top:clamp(1rem, 2vw, 1.5rem);right:clamp(1rem, 2vw, 1.5rem);color:var(--paper);font-size:clamp(2rem, 4vw, 3rem);font-weight:500;line-height:1}.experiment-figure--image{width:100%;max-width:34rem;margin:clamp(2rem, 5vw, 3rem) auto;transform:none}.experiment-figure--image img{display:block;width:100%;height:auto;padding:clamp(1rem, 3vw, 1.5rem) clamp(1rem, 3vw, 1.5rem) 0}.experiment-figure--image figcaption{font-weight:600;text-wrap:pretty}.experiment-figure--image-wide{max-width:56rem}.experiment-figure--carousel{max-width:56rem;--image-carousel-inset: clamp(1rem, 3vw, 1.5rem);--image-carousel-caption-gap: 0.5rem}.experiment-figure--carousel .image-carousel__viewport{padding:var(--image-carousel-inset) var(--image-carousel-inset) 0}.experiment-figure--carousel .image-carousel__slides{display:grid;aspect-ratio:3 / 4;margin:0;padding:0;overflow:hidden;list-style:none;background:var(--paper)}.experiment-figure--carousel .image-carousel__slide{grid-area:1 / 1;display:grid;min-height:0;opacity:0;visibility:hidden;pointer-events:none}.experiment-figure--carousel .image-carousel__slide[aria-hidden="false"],.experiment-figure--carousel .image-carousel__slide:first-child:not([aria-hidden="true"]){opacity:1;visibility:visible;pointer-events:auto;z-index:1}.experiment-figure--carousel .image-carousel__slide img{display:block;width:100%;height:100%;padding:0;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.experiment-figure--carousel .image-carousel__controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0.75rem;padding:0.75rem var(--image-carousel-inset);border-top:2px solid var(--ink)}.experiment-figure--carousel .image-carousel__button{display:grid;place-items:center;width:2.5rem;height:2.5rem;padding:0;color:var(--ink);font:inherit;font-size:1.35rem;line-height:1;background:var(--paper);border:2px solid var(--ink);cursor:pointer}.experiment-figure--carousel .image-carousel__button:hover,.experiment-figure--carousel .image-carousel__button:focus-visible{color:var(--paper);background:var(--ink)}.experiment-figure--carousel .image-carousel__button:focus-visible{outline:4px solid var(--solar);outline-offset:2px}.experiment-figure--carousel .image-carousel__button:disabled{opacity:0.35;cursor:not-allowed}.experiment-figure--carousel .image-carousel__dots{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.55rem;margin:0}.experiment-figure--carousel .image-carousel__dots button{width:0.85rem;height:0.85rem;padding:0;background:var(--paper);border:2px solid var(--ink);cursor:pointer}.experiment-figure--carousel .image-carousel__dots button[aria-selected="true"]{background:var(--solar)}.experiment-figure--carousel .image-carousel__dots button:focus-visible{outline:4px solid var(--solar);outline-offset:2px}.experiment-figure--carousel figcaption{padding:var(--image-carousel-caption-gap) var(--image-carousel-inset) var(--image-carousel-inset)}@media (prefers-reduced-motion: no-preference){.experiment-figure--carousel .image-carousel__slide{transition:opacity 0.18s ease}}.experiment-figure--game{background:var(--black)}.experiment-figure--game .dead-run-cabinet{margin:0;border:0}.experiment-figure--game figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;color:var(--ink);background:var(--paper)}.experiment-figure--game .dead-run-full-link{flex:0 0 auto}.experiment-log{border-top:2px solid var(--ink)}.experiment-log__entry{padding:1.5rem 0;border-bottom:2px solid var(--ink)}.experiment-log__stage{margin:0 0 1rem;color:var(--raspberry)}.experiment-log__comparison{display:grid;gap:1.25rem}@media (min-width: 42rem){.experiment-log__comparison{grid-template-columns:1fr 1fr}}.experiment-log__comparison h3{margin:0 0 0.45rem;font-size:0.68rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase}.experiment-log__comparison p{margin:0;line-height:1.65}@media (prefers-reduced-motion: reduce){.experiment-detail__hero-art img{transform:none}}.experiments-colophon{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:2.5rem 1.5rem;color:var(--experiment-paper);background:var(--experiment-green)}.experiments-colophon p{margin:0;font-family:var(--serif);font-size:clamp(1.8rem, 5vw, 4.5rem);font-style:italic;line-height:1}.experiments-colophon i{font-size:2rem;font-style:normal}@keyframes experiments-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.experiments-orbit__ring{animation:none}.experiments-subscribe,.experiment-card{transition:none}}.is-lightbox-enabled{cursor:zoom-in}.image-lightbox{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:clamp(3.5rem, 7vw, 5rem) clamp(1rem, 4vw, 3rem) clamp(1rem, 4vw, 2.5rem);background:rgba(var(--ink-rgb), 0.96);cursor:zoom-out}.image-lightbox[hidden]{display:none}.image-lightbox__figure{display:grid;width:100%;max-width:100rem;max-height:100%;margin:0;cursor:default}.image-lightbox__image{display:block;max-width:100%;max-height:calc(100vh - 9rem);margin:auto;-o-object-fit:contain;object-fit:contain}.image-lightbox__caption{max-width:72ch;margin:0.8rem auto 0;color:var(--paper);font-size:0.85rem;font-weight:700;line-height:1.5;text-align:center;text-wrap:pretty}.image-lightbox__close{position:absolute;top:1rem;right:1rem;width:2.75rem;height:2.75rem;padding:0;border:2px solid var(--paper);border-radius:0;color:var(--paper);background:var(--ink);font-size:0;cursor:pointer}.image-lightbox__close::before,.image-lightbox__close::after{position:absolute;top:50%;left:50%;width:1.45rem;height:0.22rem;background:currentColor;content:""}.image-lightbox__close::before{transform:translate(-50%, -50%) rotate(45deg)}.image-lightbox__close::after{transform:translate(-50%, -50%) rotate(-45deg)}.has-image-lightbox{overflow:hidden}.storyboard__main{width:calc(100% - 2rem);max-width:90rem;margin:0 auto;padding:3rem 0 5rem}.storyboard__intro{max-width:45rem;padding:1.5rem;border:2px solid var(--ink);color:var(--ink);background:var(--sun)}.storyboard__intro h1,.storyboard__intro h2,.storyboard__intro p{margin:0}.storyboard__intro h1{margin-top:0.5rem;font-size:clamp(3rem, 8vw, 6rem);line-height:0.9;letter-spacing:-0.06em}.storyboard__intro em{color:var(--solar)}.storyboard__intro p:last-child{max-width:38rem;margin-top:1rem;font-weight:600}.storyboard__intro .storyboard__path{padding-top:0.85rem;border-top:1px solid rgba(var(--ink-rgb), 0.4);font-size:0.82rem}.storyboard-issue-export{display:grid;gap:1rem;margin-top:1rem;padding:1.25rem;border:2px solid var(--ink);color:var(--paper);background:var(--ink)}.storyboard-issue-export h2,.storyboard-issue-export p{margin:0}.storyboard-issue-export h2{margin-top:0.25rem;font-size:clamp(1.5rem, 4vw, 2.35rem);line-height:1;letter-spacing:-0.04em}.storyboard-issue-export p:last-child{margin-top:0.6rem;color:rgba(var(--paper-rgb), 0.75);font-size:0.8rem}.storyboard-issue-export button{min-height:3rem;padding:0.7rem 1rem;border:2px solid var(--paper);border-radius:0;color:var(--ink);background:var(--sun);font:800 0.72rem/1.2 var(--sans);letter-spacing:0.08em;text-transform:uppercase;cursor:pointer}.storyboard-issue-export button:disabled{cursor:not-allowed;opacity:0.42}@media (min-width: 48rem){.storyboard-issue-export{grid-template-columns:minmax(0, 1fr) minmax(16rem, auto);align-items:center}}.storyboard-issue-export__actions{display:grid;gap:0.55rem}.storyboard-issue-export__actions output{max-width:26rem;font-size:0.7rem;line-height:1.4}.storyboard-issue-export__buttons{display:flex;flex-wrap:wrap;gap:0.55rem}.storyboard-issue-export__buttons button{flex:1 1 12rem}.storyboard-issue-export__buttons [data-storyboard-clear-issues]{color:var(--paper);background:transparent}.storyboard-navigator{position:sticky;z-index:40;top:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem;margin-top:1rem;padding:0.65rem;border:2px solid var(--ink);color:var(--ink);background:var(--solar)}.storyboard-navigator label{display:grid;grid-column:1 / -1;grid-template-columns:auto minmax(0, 1fr);gap:0.6rem;align-items:center}.storyboard-navigator label>span{font-size:0.62rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.storyboard-navigator select,.storyboard-navigator button,.storyboard-navigator>a,.storyboard-navigator>output{min-height:2.65rem;border:1.5px solid var(--ink);border-radius:0;color:var(--ink);background:var(--paper);font:800 0.7rem/1.2 var(--sans)}.storyboard-navigator select{min-width:0;width:100%;padding:0.55rem 0.65rem}.storyboard-navigator button{padding:0.55rem 0.7rem;letter-spacing:0.04em;cursor:pointer}.storyboard-navigator button:disabled{cursor:not-allowed;opacity:0.45}.storyboard-navigator>a,.storyboard-navigator>output{display:flex;align-items:center;justify-content:center;padding:0.55rem 0.7rem;text-align:center;text-decoration:none}.storyboard-navigator>output{font-variant-numeric:tabular-nums;white-space:nowrap}@media (min-width: 48rem){.storyboard-navigator{grid-template-columns:auto minmax(15rem, 1fr) auto auto auto}.storyboard-navigator label{grid-column:auto}}.storyboard-navigator a:focus-visible,.storyboard-navigator button:focus-visible,.storyboard-navigator select:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.storyboard__eyebrow{font-size:0.65rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase}.storyboard-story{margin-top:4rem;padding-top:1rem;border-top:2px solid var(--ink);scroll-margin-top:6rem}.storyboard-story__header{max-width:42rem;margin-bottom:1.25rem}.storyboard-story__header h2,.storyboard-story__header p{margin:0}.storyboard-story__header h2{margin-top:0.35rem;font-size:clamp(2rem, 5vw, 3.5rem);line-height:0.95;letter-spacing:-0.05em}.storyboard-story__header p:last-child{margin-top:0.65rem}.storyboard-viewport{position:relative;overflow:hidden;max-width:100%;border:2px solid var(--ink);color:var(--ink);background:var(--paper)}.storyboard-device-bar{display:grid;gap:0.75rem;padding:1rem;color:var(--paper);background:var(--ink);border-bottom:2px solid var(--ink)}.storyboard-device-bar p{margin:0}.storyboard-device-bar label{display:grid;gap:0.35rem;font-size:0.72rem;font-weight:800;letter-spacing:0.06em;text-transform:uppercase}.storyboard-device-bar output{font-variant-numeric:tabular-nums}.storyboard-device-bar>.storyboard-device-bar__identity,.storyboard-device-bar>.storyboard-device-bar__dimensions,.storyboard-device-bar>label{min-width:0;min-height:5.5rem;padding:0.75rem;border:1px solid rgba(var(--paper-rgb), 0.55)}.storyboard-device-bar select{min-height:2.5rem;width:100%;padding:0.45rem 0.6rem;border:1px solid var(--paper);border-radius:0;color:var(--ink);background:var(--paper);font:inherit}.storyboard-device-bar input[type="range"]{width:100%;accent-color:var(--solar)}@media (min-width: 48rem){.storyboard-device-bar{grid-template-columns:repeat(2, minmax(0, 1fr));align-items:stretch}}@media (min-width: 72rem){.storyboard-device-bar{grid-template-columns:repeat(6, minmax(0, 1fr))}}.storyboard-device-bar__identity{display:flex;align-items:center;gap:0.75rem}.storyboard-device-bar__identity small,.storyboard-device-bar__identity strong{display:block}.storyboard-device-bar__identity small{font-size:0.58rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;opacity:0.68}.storyboard-device-bar__identity strong{font-size:1rem;line-height:1.1}.storyboard-device-bar__icon{display:grid;width:2.55rem;height:2.55rem;place-items:center;border:2px solid currentColor;color:var(--ink);background:var(--sun);font-size:1.45rem;line-height:1}.storyboard-device-bar__dimensions{display:flex;align-items:center;font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.storyboard-device-bar label>output{font-size:1rem;letter-spacing:0}.storyboard-viewport__options{display:grid;gap:0.8rem;padding:1rem 1.25rem 1.25rem;border-bottom:2px solid var(--ink);color:var(--ink);background:var(--sun)}.storyboard-viewport__options:empty{display:none}.storyboard-viewport__options label{display:grid;gap:0.35rem;font-size:0.65rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.storyboard-viewport__options input,.storyboard-viewport__options select{min-width:0;min-height:2.65rem;padding:0.5rem 0.65rem;border:1.5px solid var(--ink);border-radius:0;color:var(--ink);background:var(--paper);font:700 0.83rem/1.35 var(--sans)}@media (min-width: 48rem){.storyboard-viewport__options{grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}}.storyboard-issue-note{display:grid;gap:0.8rem;padding:0.85rem 1.25rem 1rem;border-bottom:2px solid var(--ink);box-shadow:inset 0.4rem 0 var(--solar);background:var(--paper)}.storyboard-issue-note label{display:grid;gap:0.35rem}.storyboard-issue-note label>span,.storyboard-issue-note small{font-size:0.62rem;font-weight:800;letter-spacing:0.1em;text-transform:uppercase}.storyboard-issue-note textarea{width:100%;min-height:4.2rem;padding:0.65rem 0.75rem;resize:vertical;border:1.5px solid var(--ink);border-radius:0;color:var(--ink);background:var(--cream);font:600 0.82rem/1.45 var(--sans)}.storyboard-issue-note button{min-height:2.35rem;padding:0.45rem 0.65rem;border:1.5px solid var(--ink);border-radius:0;color:var(--ink);background:transparent;font:800 0.62rem/1.2 var(--sans);letter-spacing:0.08em;text-transform:uppercase;cursor:pointer}.storyboard-issue-note button:disabled{cursor:not-allowed;opacity:0.35}@media (min-width: 64rem){.storyboard-issue-note{grid-template-columns:minmax(12rem, 0.55fr) minmax(22rem, 2fr) auto;align-items:end}}.storyboard-issue-note__identity{align-self:center}.storyboard-issue-note__identity small,.storyboard-issue-note__identity strong{display:block}.storyboard-issue-note__identity strong{margin-top:0.35rem;font-size:0.82rem;font-variant-numeric:tabular-nums;line-height:1.25}.storyboard-issue-note__actions{display:grid;gap:0.35rem;align-content:end}.storyboard-issue-note__actions output{font-size:0.68rem;font-weight:700}.storyboard-issue-export button:focus-visible,.storyboard-issue-note button:focus-visible,.storyboard-issue-note textarea:focus-visible{outline:3px solid var(--solar);outline-offset:2px}.storyboard-viewport__stage{overflow:auto;max-width:100%;padding:1.25rem;overscroll-behavior:contain;scrollbar-gutter:stable;background-color:var(--ink);background-image:linear-gradient(rgba(var(--paper-rgb), 0.08) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--paper-rgb), 0.08) 1px, transparent 1px);background-size:1rem 1rem}.storyboard-viewport__canvas{position:absolute;top:0;left:0;display:block;width:1280px;height:720px;border:0;outline:2px solid var(--paper);background:var(--paper);contain:strict;transform-origin:top left}.storyboard-viewport__preview{position:relative;flex:0 0 auto}.storyboard-component-document{display:block;min-height:100%;color:var(--ink);background:var(--cream)}.storyboard-component-root{min-height:100vh}.storyboard-case-stage,.storyboard-game-stage,.storyboard-writeup-stage,.storyboard-log-stage{display:grid;padding:clamp(1.25rem, 5vw, 4rem);place-items:center}.storyboard-card-stage{display:flex;min-height:100vh;align-items:center;padding:0.5rem 1.25rem}@media (min-width: 48rem){.storyboard-card-stage{padding-right:2rem;padding-left:2rem}}.storyboard-card-stage .project-cards__grid{width:100%}.storyboard-case-stage .case-study{width:100%;max-width:68rem}.storyboard-game-stage{background:var(--cream)}.storyboard-game-stage--sun{background:var(--sun)}.storyboard-game-stage--ink{background:var(--ink)}.storyboard-game-stage .game{width:100%;max-width:40rem}.storyboard-header-stage{min-height:100vh;padding:1rem;background:var(--paper)}.storyboard-header-stage--pine{color:var(--paper);background:var(--pine)}.storyboard-header-stage--orange{color:var(--ink);background:var(--solar)}.storyboard-header-stage .site-header{position:relative !important;inset:auto !important;width:100%;border:2px solid currentColor;color:currentColor;background:transparent}.storyboard-header-stage .site-header__logo,.storyboard-header-stage .site-header__email{color:currentColor}.storyboard-experiment-preview{--experiment-detail-main: var(--pine);--experiment-detail-accent: var(--sun);--experiment-detail-main-text: var(--paper);--experiment-detail-accent-text: var(--ink);--experiment-detail-emphasis: var(--solar)}.storyboard-experiment-preview--technology{--experiment-detail-main: var(--blue);--experiment-detail-accent: var(--sun);--experiment-detail-main-text: var(--white);--experiment-detail-accent-text: var(--ink);--experiment-detail-emphasis: var(--sun)}.storyboard-experiment-preview--building{--experiment-detail-main: var(--clay);--experiment-detail-accent: var(--sage);--experiment-detail-main-text: var(--white);--experiment-detail-accent-text: var(--ink);--experiment-detail-emphasis: var(--sun)}.storyboard-experiment-preview--games{--experiment-detail-main: var(--aubergine);--experiment-detail-accent: var(--coral);--experiment-detail-main-text: var(--white);--experiment-detail-accent-text: var(--ink);--experiment-detail-emphasis: var(--sun)}.storyboard-experiment-preview .experiment-detail__hero{min-height:100vh}.storyboard-writeup-stage{background:var(--paper)}.storyboard-writeup-stage--quiet{background-color:var(--cream);background-image:linear-gradient(rgba(var(--ink-rgb), 0.06) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--ink-rgb), 0.06) 1px, transparent 1px);background-size:2rem 2rem}.storyboard-writeup-stage--pine{color:var(--paper);background:var(--pine)}.storyboard-writeup-stage--pine a{color:var(--sun)}.storyboard-log-stage{background:var(--paper)}.storyboard-log-stage--sun{background:var(--sun)}.storyboard-log-stage--berry{color:var(--white);background:var(--raspberry)}.storyboard-log-stage--berry .experiment-log__stage{color:var(--sun)}.storyboard-log-stage .experiment-log{width:100%;max-width:68rem}.site-footer{padding:2rem 1.5rem;background:var(--black);color:rgba(var(--paper-rgb), 0.55);text-align:center}@media (min-width: 48rem){.site-footer{padding:2.5rem}}.site-footer p{margin:0;font-size:0.8rem;font-weight:500}.site-footer .site-footer__copy{margin-top:0.4rem;font-size:0.7rem;opacity:0.6}.site-footer .site-footer__links{display:flex;justify-content:center;gap:1rem;margin-top:0.8rem;font-size:0.72rem}.not-found-page .site-page{display:flex;flex-direction:column}.not-found{display:grid;flex:1 0 auto;min-height:clamp(36rem, calc(100svh - 13rem), 54rem);border-bottom:1px solid var(--rule)}@media (min-width: 48rem){.not-found{grid-template-columns:minmax(18rem, 0.8fr) minmax(25rem, 1.2fr)}}.not-found__signal{position:relative;display:grid;min-height:13rem;overflow:hidden;place-items:center;color:var(--paper);background-color:var(--ink);background-image:linear-gradient(rgba(var(--paper-rgb), 0.08) 1px, transparent 1px),linear-gradient(90deg, rgba(var(--paper-rgb), 0.08) 1px, transparent 1px);background-size:2rem 2rem;border-bottom:1px solid var(--ink)}@media (min-width: 48rem){.not-found__signal{min-height:100%;border-right:1px solid var(--ink);border-bottom:0}}.not-found__code{position:absolute;top:clamp(1.5rem, 4vw, 3rem);left:clamp(1.5rem, 4vw, 3rem);z-index:1;font-size:clamp(1.4rem, 3vw, 2rem);font-weight:800;line-height:1;letter-spacing:0.08em}.not-found__illustration{width:82%;max-width:34rem;height:auto;transform:rotate(-2deg)}.not-found__marker{position:absolute;right:clamp(1.5rem, 5vw, 4rem);bottom:clamp(1.5rem, 5vw, 4rem);width:clamp(2.5rem, 6vw, 4.5rem);aspect-ratio:1;background:var(--solar);clip-path:polygon(0% 0%, 100% 0%, 100% 100%)}.not-found__message{display:flex;flex-direction:column;justify-content:center;padding:clamp(3rem, 9vw, 8rem) clamp(1.5rem, 7vw, 7rem);background:var(--cream)}.not-found__eyebrow{margin:0 0 clamp(2rem, 5vw, 4rem);font-size:0.68rem;font-weight:800;letter-spacing:0.17em;text-transform:uppercase}.not-found__title{margin:0;font-size:clamp(3.6rem, 9vw, 8rem);font-weight:800;line-height:0.88;letter-spacing:-0.065em}.not-found__title em{color:var(--solar)}.not-found__description{max-width:29rem;margin:clamp(2rem, 5vw, 3.5rem) 0 0;font-size:clamp(1rem, 1.5vw, 1.2rem);line-height:1.55}.not-found__return{display:grid;grid-template-columns:1fr auto;gap:2rem;width:100%;max-width:29rem;margin-top:clamp(2rem, 5vw, 3.5rem);padding:1rem 0;border-top:2px solid currentColor;border-bottom:2px solid currentColor;font-size:0.75rem;font-weight:800;letter-spacing:0.12em;text-decoration:none;text-transform:uppercase}.not-found__return span:last-child{font-size:1rem;transition:transform 0.2s ease}.not-found__return:hover span:last-child{transform:translate(0.2rem, -0.2rem)}.not-found__return:focus-visible{outline:3px solid var(--solar);outline-offset:4px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.game__image img{transition:none}.game__image:hover img{transform:none}.project-card,.project-card__image{transition:none}.project-card:hover,.project-card:hover .project-card__image{transform:none}.not-found__return span:last-child{transition:none}}.experiment-embed-rendered{display:contents}