/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.consent{position:fixed;inset:auto 0 0 0;z-index:3000;display:flex;justify-content:center;padding:var(--space, 1.5rem);pointer-events:none}.consent-dialog{pointer-events:auto}.consent-dialog{width:100%;max-width:40rem;padding:var(--space, 1.5rem);border-radius:var(--radius, 0.5rem);background:var(--bg, #fff);color:var(--text, #191919);font-family:var(--font-body, sans-serif);box-shadow:var(--shadow, 0 2px 12px rgba(0, 0, 0, 0.25))}.consent-title{margin:0 0 var(--space-s, 0.75rem)}.consent-body{margin:0 0 var(--space, 1.5rem)}.consent-categories{display:flex;flex-direction:column;gap:var(--space-xs, 0.5rem);margin-bottom:var(--space, 1.5rem)}.consent-category{display:flex;gap:var(--space-s, 0.75rem);align-items:flex-start;padding:var(--space-s, 0.75rem);border-radius:var(--radius, 0.5rem);cursor:pointer}.consent-category:hover{background:color-mix(in srgb, currentColor 5%, transparent)}.consent-category:has(input:disabled){cursor:default;opacity:.7}.consent-category input{position:absolute;width:1px;height:1px;opacity:0}.consent-switch{position:relative;flex-shrink:0;width:2.5rem;height:1.4rem;margin-top:.1rem;border-radius:1rem;background:color-mix(in srgb, currentColor 25%, transparent);transition:background .2s}.consent-switch::after{content:"";position:absolute;top:.2rem;left:.2rem;width:1rem;height:1rem;border-radius:50%;background:var(--bg, #fff);transition:transform .2s}.consent-category input:checked+.consent-switch{background:var(--accent, #1f7a4d)}.consent-category input:checked+.consent-switch::after{transform:translateX(1.1rem)}.consent-category input:focus-visible+.consent-switch{outline:2px solid var(--accent, #1f7a4d);outline-offset:2px}.consent-category-text{display:flex;flex-direction:column;gap:.15em}.consent-category-body{font-size:.875em;color:var(--muted, inherit)}.consent-actions{display:flex;flex-wrap:wrap;gap:var(--space-s, 0.75rem)}.consent-button{flex:1 1 auto;padding:var(--space-xs, 0.5rem) var(--space, 1.5rem);font:inherit;cursor:pointer;border:1px solid var(--accent, #1f7a4d);border-radius:var(--radius, 0.5rem);background:rgba(0,0,0,0);color:inherit}.consent-accept{background:var(--accent, #1f7a4d);color:#fff}.cookie-table table{width:100%;margin-bottom:var(--space-l, 3rem);border-collapse:collapse;text-align:left}.cookie-table th,.cookie-table td{padding:var(--space-xs, 0.5rem);border-bottom:1px solid color-mix(in srgb, currentColor 15%, transparent);vertical-align:top}html{font-size:100%;scroll-behavior:smooth}body{display:flex;flex-direction:column;min-height:100vh;font-family:var(--font-body, sans-serif);font-size:var(--fs-body, 1.125rem);line-height:1.6;color:var(--text, #191919);background:var(--bg, #fff)}body>main{flex:1;scroll-margin-top:var(--nav-height-compact, var(--nav-height, 4.5rem))}a{color:inherit;text-underline-offset:2px}img,video{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading, inherit);font-weight:700;line-height:1.1}:focus-visible{outline:2.5px solid var(--accent, #1f7a4d);outline-offset:2px;border-radius:var(--radius, 0.5rem)}.skip-link{position:absolute;z-index:2100;margin:var(--space-s);background:var(--bg);padding:var(--space-xs) var(--space-s);border-radius:var(--radius);box-shadow:var(--shadow)}.skip-link:not(:focus){clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(prefers-reduced-motion: reduce){*,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important;scroll-behavior:auto !important}}.main-width{width:100%;max-width:calc(var(--content-width, 1200px) + var(--space)*2);margin-inline:auto;padding-inline:var(--space)}.button,a[role=button],.article button{display:inline-block;font:inherit;text-align:center;text-decoration:none;cursor:pointer;padding:var(--space-xs) var(--space);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:#fff;transition:background .2s,color .2s}.button:hover,a[role=button]:hover,.article button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.button.outline,a[role=button].outline,.article button.outline{background:rgba(0,0,0,0);color:var(--accent)}.button.outline:hover,a[role=button].outline:hover,.article button.outline:hover{color:#fff;background:var(--accent)}.button[aria-disabled=true],a[role=button][aria-disabled=true],.article button[aria-disabled=true]{opacity:.5;pointer-events:none;filter:grayscale(0.7)}.article h1{font-size:var(--fs-h1)}.article h2,.article blockquote{font-size:var(--fs-h2)}.article h3{font-size:var(--fs-h3)}.article h4{font-size:var(--fs-h4)}.article>*+*,.article details>*+*{margin-top:var(--space)}.article h2:not(:first-child),.article h3:not(:first-child),.article h4:not(:first-child){margin-top:var(--space-l)}.article ul{list-style:disc;padding-left:1.4em}.article ol{list-style:decimal;padding-left:1.4em}.article a:not([role=button]):not(.button){color:var(--accent)}.article hr{border:0;border-top:1px solid color-mix(in srgb, var(--text) 20%, transparent)}.article details{border-block:1px solid var(--accent);padding-block:var(--space-xs)}.article details+details{margin-top:0;border-top:0}.article details>summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space);cursor:pointer;font-family:var(--font-heading);font-weight:700;font-size:var(--fs-h4);line-height:1.15;list-style:none}.article details>summary::-webkit-details-marker{display:none}.article details>summary::after{content:"";flex:none;width:.5em;height:.5em;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:translateY(-0.15em) rotate(45deg);transition:transform .2s}.article details[open]>summary::after{transform:translateY(0.1em) rotate(225deg)}.article details.closing>summary::after{transform:translateY(-0.15em) rotate(45deg)}.article details::details-content{overflow:hidden;transition:block-size .2s,max-block-size .2s,content-visibility .2s allow-discrete}@supports(interpolate-size: allow-keywords){.article details{interpolate-size:allow-keywords}.article details::details-content{block-size:0}.article details[open]::details-content{block-size:auto}}@supports not (interpolate-size: allow-keywords){.article details::details-content{max-block-size:0}.article details[open]::details-content{max-block-size:var(--panel-height, 100vh)}.article details.measuring::details-content{transition:none}}.nav{position:sticky;top:0;z-index:1000;font-size:var(--fs-nav);background:var(--nav-bg);transition:box-shadow .3s,background .3s}.nav .nav-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space);min-height:var(--nav-height);transition:min-height var(--nav-shrink-duration, 0.25s) ease}.nav .nav-logo{text-decoration:none;font-size:var(--logo-font-size, var(--fs-h4));transition:font-size var(--nav-shrink-duration, 0.25s) ease;flex:0 1 auto;min-width:min(100%,var(--logo-min-width, 0px))}.nav .nav-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:var(--logo-height, none);transition:max-height var(--nav-shrink-duration, 0.25s) ease}.nav .nav-main-container{flex-shrink:0}.nav.scrolling{box-shadow:var(--shadow)}.nav.scrolling .nav-container{min-height:var(--nav-height-compact, var(--nav-height))}.nav.scrolling .nav-logo{font-size:var(--logo-font-size-compact, var(--logo-font-size, var(--fs-h4)))}.nav.scrolling .nav-logo img{max-height:var(--logo-height-compact, var(--logo-height, none))}.nav ul{display:flex;align-items:center;gap:var(--space);list-style:none}.nav #nav-main>li{display:flex;align-items:center}.nav a{display:inline-block;padding:var(--space-xs) var(--space-s);margin:calc(-1*var(--space-xs)) calc(-1*var(--space-s));border-radius:var(--radius);text-decoration:none;white-space:nowrap}.nav a:hover{color:var(--accent);text-decoration:underline}.nav a[aria-current=page]{color:var(--accent)}.nav .nav-toggle{display:none}.nav .nav-submenu-caret{display:inline-flex;align-items:center;padding:var(--space-xs);background:rgba(0,0,0,0);border:0;cursor:pointer;color:inherit}.nav .nav-submenu-caret::after{content:"";width:.6em;height:.6em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-1px) rotate(45deg) translateZ(0);transition:transform .2s;backface-visibility:hidden;transform-origin:center;will-change:transform}.nav .nav-submenu-caret[aria-expanded=true]::after{transform:translateY(2px) rotate(225deg) translateZ(0)}.nav li[x-data]{position:relative;display:flex;align-items:center}.nav li[x-data]>ul{position:absolute;top:100%;left:0;flex-direction:column;align-items:stretch;gap:0;padding:var(--space-s);background:var(--nav-bg);border-radius:var(--radius);box-shadow:var(--shadow)}.nav-locale-switch{display:flex;gap:var(--space-s)}.nav-locale-switch a{padding:var(--space-xs);text-decoration:none}.nav-locale-switch a.active{color:var(--accent);font-weight:700}.nav-search-button{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-s);margin:calc(-1*var(--space-xs)) calc(-1*var(--space-s));background:rgba(0,0,0,0);border:0;cursor:pointer;color:inherit}.nav-search-button svg{display:block;width:2em;height:2em}.nav-search-button:hover{color:var(--accent)}@media(max-width: 768px){.nav .nav-container{min-height:var(--nav-height-compact, var(--nav-height))}.nav .nav-logo{font-size:var(--logo-font-size-compact, var(--logo-font-size, var(--fs-h4)));position:relative;z-index:1100}.nav .nav-logo img{height:var(--logo-height-compact, var(--logo-height, auto))}.nav .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:0;background:rgba(0,0,0,0);border:0;cursor:pointer;z-index:1100}.nav .nav-toggle>span{display:block;width:26px;height:3px;margin:0 auto;border-radius:2px;background:currentColor;transition:transform .3s,opacity .3s}.nav .nav-toggle[aria-expanded=true]>span:nth-child(1){transform:translateY(9px) rotate(45deg)}.nav .nav-toggle[aria-expanded=true]>span:nth-child(2){opacity:0}.nav .nav-toggle[aria-expanded=true]>span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.nav-main-container{position:fixed;inset:0 0 auto;padding:var(--space-xl) var(--space) var(--space-l);background:var(--nav-bg);box-shadow:var(--shadow);transition:transform .3s,visibility .3s}.nav-main-container ul{flex-direction:column;gap:var(--space-s)}body:not(.nav-expanded) .nav-main-container{visibility:hidden;transform:translateY(-100%)}.nav li[x-data]{flex-direction:column;align-items:stretch}.nav li[x-data]>ul{position:static;padding:var(--space-xs) 0 0;background:rgba(0,0,0,0);box-shadow:none;font-size:.875em;gap:var(--space-xs)}}.search-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding:10vh var(--space) var(--space);background:color-mix(in srgb, var(--text) 45%, transparent);backdrop-filter:blur(6px)}.search-overlay .search-inner{width:100%;max-width:640px;padding:var(--space-s) var(--space);background:var(--bg);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;max-height:calc(90vh - var(--space)*2)}.search-overlay .search-input-row{display:flex;align-items:center;gap:var(--space-s)}.search-overlay .search-input-row>svg{width:1.25em;height:1.25em;opacity:.5;flex-shrink:0}.search-overlay .search-input-row input[type=search]{flex:1;min-width:0;border:0;background:rgba(0,0,0,0);outline:none;font:inherit;font-size:var(--fs-h3);color:inherit}.search-overlay .search-input-row input[type=search]::-webkit-search-cancel-button{display:none}.search-overlay .search-close{flex-shrink:0;display:inline-flex;padding:var(--space-xs);background:rgba(0,0,0,0);border:0;cursor:pointer;color:inherit;opacity:.6}.search-overlay .search-close:hover{opacity:1}.search-overlay .search-close svg{width:1.25em;height:1.25em}.search-overlay .search-results{list-style:none;margin-top:var(--space-s);border-top:1px solid color-mix(in srgb, var(--text) 12%, transparent);overflow-y:auto;overscroll-behavior:contain}.search-overlay .search-results li+li{border-top:1px solid color-mix(in srgb, var(--text) 8%, transparent)}.search-overlay .search-results a{display:flex;flex-direction:column;gap:var(--space-xxs);padding:var(--space-s);border-radius:var(--radius);text-decoration:none}.search-overlay .search-results a:hover{background:color-mix(in srgb, var(--accent) 8%, transparent)}.search-overlay .search-result-title{font-weight:600}.search-overlay .search-result-excerpt{font-size:.875em;color:var(--muted);line-height:1.4}.search-overlay .search-no-results{padding:var(--space);text-align:center;color:var(--muted);font-style:italic}.slider{position:relative;height:clamp(320px,45vw,640px);overflow:hidden}.slider .slide{position:absolute;inset:0;transition:opacity 1s}.slider .slide:not(.active){opacity:0}.slider .slide.active{z-index:1}.slider .slide img,.slider .slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.slider .slide .main-width{position:relative;z-index:1;height:100%}.slider .slide .slide-content{position:absolute;inset:auto 0 var(--space-l) 0;padding-inline:var(--space);max-width:calc(42rem + var(--space)*2)}.slider .slide .slide-content.white-text{color:#fff}.slider .slide .slide-content .head{font-size:var(--fs-h1);font-weight:800;line-height:1}.slider .slide.slide-placeholder .slide-content:not(.dark-text){color:#fff}.slider .slide:not(.slide-placeholder):has(.slide-content.white-text)::after{content:"";position:absolute;inset:0;background:linear-gradient(to top, rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0) 60%)}.slider .slider-dots{position:absolute;inset:auto 0 var(--space) 0;z-index:10;display:flex;gap:0;justify-content:center}.slider .slider-dots .slider-dot{box-sizing:content-box;width:var(--space);height:3px;border:9px solid rgba(0,0,0,0);border-inline-width:4px;background-clip:padding-box;background-color:rgba(255,255,255,.5);color:rgba(0,0,0,0);cursor:pointer;transition:width .3s ease,background-color .3s}.slider .slider-dots .slider-dot:hover{background-color:#fff}.slider .slider-dots .slider-dot.active{width:var(--space-l);background-color:#fff}.slider .slider-dots:not(:has(.slider-dot:not(.active))){display:none}.section-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.default{position:relative;padding-block:var(--space-xl)}.default>.main-width{display:flex;gap:var(--space-xl);align-items:center;position:relative;z-index:1}.default .article{flex:1 1 50%;max-width:var(--content-width-small)}.default .images{flex:1 1 50%}.default .images img{display:block;width:100%;height:auto;border-radius:var(--radius)}.default.left>.main-width .images{order:-1}.default.none .images{display:none}.default.none>.main-width,.default.quote>.main-width{justify-content:center}.default.none .article,.default.quote .article{flex-basis:100%}.default.bottom>.main-width{flex-direction:column;align-items:stretch}.default.bottom>.main-width .images{max-height:60vh;overflow:hidden}.default.quote .article{max-width:var(--content-width-small);text-align:center}.default.quote .article blockquote{font-weight:700}.default.quote .article .quote-source{color:var(--muted)}@media(max-width: 768px){.default>.main-width{flex-direction:column;align-items:stretch}.default .images{order:-1}}.default.white-text{color:#fff}.default.white-text .article a:not(.button){color:#fff}.default.white-text .article details{border-color:#fff}.default.white-text .article details>summary::after{border-color:#fff}.default.white-text:not(:has(>.section-bg)){background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 30%, #fff), color-mix(in srgb, var(--accent) 75%, #000))}.items{position:relative;padding-block:var(--space-xl)}.items .items-scroller{position:relative;z-index:1}.items .items-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-xs) var(--space);margin-bottom:var(--space)}.items .items-header h1{font-size:var(--fs-h1)}.items .items-header h2{font-size:var(--fs-h2)}.items .items-link:hover{color:var(--accent)}.items .items-empty{color:var(--muted, #777)}.items .items-container{display:flex;list-style:none;margin-inline:calc(-1*var(--space-xs));--items-gap: calc(var(--space-l) - 2 * var(--space-xs));gap:var(--items-gap)}.items .items-container:focus-visible{outline-offset:-2px}.items.items-grid .items-container{display:grid;grid-template-columns:repeat(var(--items-columns, 3), minmax(0, 1fr));row-gap:calc(var(--space-xl) - 2*var(--space-xs))}@media(max-width: 1024px){.items.items-grid .items-container{grid-template-columns:repeat(var(--items-columns-tablet, 2), minmax(0, 1fr))}}@media(max-width: 768px){.items.items-grid .items-container{grid-template-columns:repeat(var(--items-columns-mobile, 1), minmax(0, 1fr))}}.items.items-horizontal .items-container{overflow-x:auto;padding-bottom:var(--space-s);cursor:grab;scroll-snap-type:x mandatory;scroll-behavior:smooth}.items.items-horizontal .items-container.dragging{cursor:grabbing}.items.items-horizontal .items-container::-webkit-scrollbar{height:13px}.items.items-horizontal .items-container::-webkit-scrollbar-track,.items.items-horizontal .items-container::-webkit-scrollbar-thumb{border-inline-start:var(--space-xs) solid rgba(0,0,0,0);background-clip:padding-box}.items.items-horizontal .items-container::-webkit-scrollbar-track{background-image:linear-gradient(transparent, transparent 6px, var(--accent) 6px, var(--accent) 7px, transparent 7px)}.items.items-horizontal .items-container::-webkit-scrollbar-thumb{background-image:linear-gradient(transparent, transparent 2px, var(--accent) 2px, var(--accent) 11px, transparent 11px)}.items.items-horizontal .items-container::-webkit-scrollbar-thumb:hover{background-image:linear-gradient(transparent, transparent 2px, black 2px, black 11px, transparent 11px)}.items.items-horizontal .items-container .item{flex:0 0 calc((100% - var(--items-columns, 3)*var(--items-gap))/(var(--items-columns, 3) + .5))}@media(max-width: 1024px){.items.items-horizontal .items-container .item{flex-basis:calc((100% - var(--items-columns-tablet, 2)*var(--items-gap))/(var(--items-columns-tablet, 2) + .5))}}@media(max-width: 768px){.items.items-horizontal .items-container .item{flex-basis:calc((100% - var(--items-columns-mobile, 1)*var(--items-gap))/(var(--items-columns-mobile, 1) + .5))}}.items .item{scroll-snap-align:start;display:flex;flex-direction:column}.items .item>a,.items .item>.item-body{display:flex;flex-direction:column;gap:var(--space-s);height:100%;color:inherit;text-decoration:none;padding:var(--space-xs);border-radius:var(--radius);transition:background-color .25s ease}.items .item>a:hover,.items .item>a:focus-visible{background:var(--accent-hover-bg, color-mix(in srgb, var(--accent) 12%, transparent))}.items .item>a:hover h3,.items .item>a:focus-visible h3{color:var(--accent-text, var(--accent))}.items .item>a:hover .item-thumbnail img,.items .item>a:focus-visible .item-thumbnail img{transform:scale(1.05)}.items .item>a:focus-visible{outline-offset:-2px}.items .item .item-thumbnail{aspect-ratio:3/2;overflow:hidden;border-radius:var(--radius)}.items .item .item-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.items .item>a:not([role=button]):not(.button){color:inherit}.items .item h3{color:var(--accent-text, var(--accent));transition:color .2s ease}.items .item .item-date{color:var(--muted, #777);font-size:.9em}.items .item .item-date .item-time{margin-left:.5em}.items .item p:has(.button){margin-top:auto}.items.white-text{color:#fff}.items.white-text:not(:has(>.section-bg)){background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 30%, #fff), color-mix(in srgb, var(--accent) 75%, #000))}.items.white-text .item h3,.items.white-text .item>a:hover h3,.items.white-text .item>a:focus-visible h3{color:inherit}@media(prefers-reduced-motion: reduce){.items .item .item-thumbnail img{transition:none}.items .item>a:hover .item-thumbnail img,.items .item>a:focus-visible .item-thumbnail img{transform:none}}.items-tags,.item-header .item-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-s);list-style:none;padding-left:0}.items-tags{margin-bottom:var(--space)}.items-tags>li>a,.item-header .item-tags>li>a,.item-header .item-tags>li:not(:has(>a)){display:inline-block;padding:var(--space-xxs, 0.25rem) var(--space-s);border-radius:var(--radius);background:var(--button-bg, #e5e5e5);color:var(--button-text, inherit);text-decoration:none}.items-tags>li>a,.item-header .item-tags>li>a{cursor:pointer}.items-tags>li>a:hover,.item-header .item-tags>li>a:hover{background:var(--button-bg-hover, color-mix(in srgb, var(--button-bg, #e5e5e5) 85%, black))}.item-header .item-tags>li>a:not(.button){color:var(--button-text, inherit)}.items-tags>li>a.active{background:var(--accent);color:var(--accent-contrast, #fff)}.breadcrumbs{font-size:var(--fs-breadcrumb, 0.9375rem);color:var(--muted, #777)}.breadcrumbs>.main-width{display:flex;align-items:center;gap:var(--space-s) var(--space);padding-block:var(--space-s)}.breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xxs) var(--space-s);list-style:none;min-width:0}.breadcrumbs li{display:flex;align-items:center;gap:var(--space-s);min-width:0}.breadcrumbs li+li::before{content:"";width:.45em;height:.45em;flex:none;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:translateY(0.0625em) rotate(45deg);opacity:.6}.breadcrumbs a{display:inline-flex;align-items:center;gap:var(--space-xxs);text-decoration:none}.breadcrumbs a:hover{color:var(--accent-text, var(--accent));text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs svg{width:1em;height:1em;flex:none}.breadcrumbs ol svg{width:1.15em;height:1.15em}.breadcrumbs-back{padding-inline-end:var(--space-s);border-inline-end:1px solid color-mix(in srgb, currentColor 30%, transparent);white-space:nowrap}@media(max-width: 768px){.breadcrumbs ol{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.breadcrumbs ol::-webkit-scrollbar{display:none}}.item-header{padding-block:var(--space-xl) var(--space)}.item-header .item-intro{font-size:var(--fs-lead, 1.15rem)}.item-header .item-meta{display:grid;grid-template-columns:auto 1fr;gap:var(--space-xxs, 0.25rem) var(--space);margin-top:var(--space)}.item-header .item-meta dt{font-weight:600;color:var(--muted, #777)}.item-header .item-meta dd{margin:0}.items-scroller:hover .horizontal-scroller-button{position:absolute;top:50%;z-index:5;width:44px;height:44px;transform:translateY(-50%);background:var(--accent);border:0;cursor:pointer}.items-scroller:hover .horizontal-scroller-button.hide{display:none}.items-scroller:hover .horizontal-scroller-button::after{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;border-top:3px solid #fff;border-right:3px solid #fff;transform:translate(-60%, -50%) rotate(45deg)}.items-scroller:hover .horizontal-scroller-button.horizontal-scroller-button-left{left:0}.items-scroller:hover .horizontal-scroller-button.horizontal-scroller-button-left::after{transform:translate(-40%, -50%) rotate(-135deg)}.items-scroller:hover .horizontal-scroller-button.horizontal-scroller-button-right{right:0}.image-placeholder{display:block;width:100%;height:100%;aspect-ratio:3/2;border-radius:var(--radius);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 30%, #fff), color-mix(in srgb, var(--accent) 75%, #000))}.item-thumbnail .image-placeholder{aspect-ratio:auto;border-radius:0}.slide-placeholder::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 35%, #fff), color-mix(in srgb, var(--accent) 80%, #000))}.slide:nth-of-type(2).slide-placeholder::before{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 55%, #fff), color-mix(in srgb, var(--accent) 90%, #000))}.slide:nth-of-type(3).slide-placeholder::before{background:linear-gradient(110deg, color-mix(in srgb, var(--accent) 22%, #fff), color-mix(in srgb, var(--accent) 68%, #000))}.video{position:relative;width:100%;max-width:var(--content-width);margin-block:var(--space-xl);margin-inline:auto;aspect-ratio:16/9;background:#000}.video iframe,.video .video-poster{position:absolute;inset:0;width:100%;height:100%;border:0}.video .video-poster{padding:0;background:rgba(0,0,0,0);cursor:pointer}.video .video-poster img,.video .video-poster .image-placeholder{width:100%;height:100%;object-fit:cover}.video .video-play{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);border-style:solid;border-width:1.75rem 0 1.75rem 3rem;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) #fff;transition:opacity .2s}.video .video-poster:hover .video-play{opacity:.75}.video .video-consent{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space);padding:var(--space);text-align:center;color:#fff;background:rgba(0,0,0,.75)}.video .video-consent[hidden]{display:none}.video .video-consent p{max-width:34rem;margin:0}.footer{padding-block:var(--space-xl);background:var(--footer-bg);color:var(--footer-text)}.footer a{color:inherit;text-decoration:none}.footer a:hover{text-decoration:underline}.footer .footer-name{display:block;font-size:var(--fs-h3);margin-bottom:var(--space)}.footer .footer-columns{display:flex;flex-wrap:wrap;gap:var(--space-l);justify-content:space-between;line-height:1.4}.footer .footer-columns ul{list-style:none}.footer .footer-columns+.footer-columns{margin-top:var(--space-l)}.footer .footer-socials{display:flex;gap:var(--space-s);margin-top:var(--space-s)}.footer .footer-socials .social-icon{display:block;width:1.5em;height:1.5em}.footer .footer-socials a:hover{opacity:.75}.footer .footer-fine{font-size:.875em;opacity:.85}.footer .footer-fine>div:last-child{text-align:right}.footer .footer-links{display:flex;gap:var(--space);justify-content:flex-end;list-style:none}@view-transition{navigation:auto}nav.nav{view-transition-name:site-nav}.footer{view-transition-name:site-footer}::view-transition-group(site-nav),::view-transition-group(site-footer){animation:none}main{view-transition-name:main-content}@keyframes page-enter{from{opacity:0;transform:scale(0.98)}}::view-transition-new(main-content){animation:300ms ease-out page-enter}@font-face{font-family:"Archivo";src:url("/fonts/archivo-latin.woff2") format("woff2");font-weight:400 700;font-stretch:62% 125%;font-style:normal;font-display:swap}@font-face{font-family:"JetBrains Mono";src:url("/fonts/jetbrainsmono-latin.woff2") format("woff2");font-weight:400 500;font-style:normal;font-display:swap}:root{--accent: #2bff7f;--accent-hover: #8affbb;--accent-text: var(--accent);--accent-contrast: #0a0a0b;--accent-hover-bg: rgba(43, 255, 127, 0.09);--bg: #0a0a0b;--text: #efe6d8;--panel: #0e0e10;--panel-bar: #101013;--panel-fill: #141416;--line: #1c1c1f;--border-panel: #232326;--border-chip: rgba(239, 230, 216, 0.1);--text-90: rgba(239, 230, 216, 0.9);--text-82: rgba(239, 230, 216, 0.82);--text-74: rgba(239, 230, 216, 0.74);--text-67: rgba(239, 230, 216, 0.67);--text-61: rgba(239, 230, 216, 0.61);--text-59: rgba(239, 230, 216, 0.59);--text-53: rgba(239, 230, 216, 0.53);--text-45: rgba(239, 230, 216, 0.45);--muted: var(--text-61);--accent-evening: #4aa87a;--nav-bg: transparent;--footer-bg: transparent;--footer-text: var(--text-61);--button-bg: rgba(43, 255, 127, 0.14);--button-bg-hover: rgba(43, 255, 127, 0.24);--button-border: rgba(43, 255, 127, 0.6);--button-text: var(--accent);--button-ghost-bg: rgba(43, 255, 127, 0.05);--button-ghost-bg-hover: rgba(43, 255, 127, 0.12);--button-ghost-border: rgba(43, 255, 127, 0.25);--glow-link: 0 0 14px rgba(43, 255, 127, 0.35);--glow-link-hover: 0 0 20px rgba(43, 255, 127, 0.5);--glow-button: 0 0 24px rgba(43, 255, 127, 0.12);--glow-button-hover: 0 0 34px rgba(43, 255, 127, 0.22);--glow-dot: 0 0 12px 2px rgba(43, 255, 127, 0.45);--shadow: 0 20px 50px rgba(0, 0, 0, 0.55);--shadow-phone: 0 16px 40px rgba(0, 0, 0, 0.5);--font-body: "Archivo", Helvetica, Arial, sans-serif;--font-heading: var(--font-body);--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--display-width: 87%;--display-weight: 500;--display-track: -0.025em;--fs-body: 1.0625rem;--fs-body-small: 1rem;--fs-intro: 1.375rem;--fs-hero: clamp(2.75rem, 7vw, 6.5rem);--fs-hero-h1: clamp(1.1875rem, 2vw, 1.625rem);--fs-h1: clamp(2.5rem, 6vw, 5.25rem);--fs-h2: clamp(1.75rem, 3.4vw, 2.75rem);--fs-h3: clamp(1.5rem, 2.6vw, 2.375rem);--fs-h4: 1.625rem;--fs-label: 0.75rem;--fs-nav: 0.8125rem;--fs-button: 0.875rem;--fs-code: 0.8125rem;--fs-meta: 0.6875rem;--lh-body: 1.7;--lh-prose: 1.75;--space: 2rem;--space-xxs: calc(var(--space) / 6);--space-xs: calc(var(--space) / 3);--space-s: calc(var(--space) / 2);--space-l: calc(var(--space) * 2);--space-xl: calc(var(--space) * 3);--gap: 3rem;--rhythm: 3.5rem;--content-width: 1440px;--content-width-small: 1100px;--gallery-width: 1400px;--radius: 2px;--radius-frame: 6px;--radius-phone: 20px;--items-columns: 4;--items-columns-tablet: 2;--items-columns-mobile: 1;--nav-height: 92px;--nav-scale-logo: 1.18;--nav-scale-menu: 1.23;--nav-drop: 15px;--nav-shrink-duration: 0.35s;--status-roll-hold: 2s;--status-roll-duration: 0.45s;--nav-shrink-ease: cubic-bezier(0.2, 0.7, 0.2, 1);--logo-font-size: 1.5rem}@media(max-width: 549px){:root{--space: 1.25rem;--gap: 1.5rem}}h1,h2,h3,h4,[data-display]{font-family:var(--font-heading);font-stretch:var(--display-width);font-weight:var(--display-weight);letter-spacing:var(--display-track)}.article{line-height:var(--lh-body)}[data-mono]{font-family:var(--font-mono);font-size:var(--fs-label);font-weight:400;font-stretch:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--text-59)}html{scroll-behavior:smooth}:target{scroll-margin-top:110px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius)}::selection{background:var(--accent);color:var(--bg)}body{padding-top:0;overflow-x:hidden;line-height:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-wrap:pretty}body>main{position:relative;z-index:1}.site-grid{position:fixed;left:0;top:0;width:100%;height:100%;z-index:0;pointer-events:none}.site-glow{position:fixed;left:0;top:0;width:1100px;height:1100px;margin:-550px 0 0 -550px;pointer-events:none;z-index:0;filter:blur(28px);background:radial-gradient(circle closest-side, rgba(43, 255, 127, 0.12) 0%, rgba(43, 255, 127, 0.0952) 10%, rgba(43, 255, 127, 0.0734) 20%, rgba(43, 255, 127, 0.0548) 30%, rgba(43, 255, 127, 0.039) 40%, rgba(43, 255, 127, 0.0261) 50%, rgba(43, 255, 127, 0.016) 60%, rgba(43, 255, 127, 0.0085) 70%, rgba(43, 255, 127, 0.0035) 80%, rgba(43, 255, 127, 0.0008) 90%, rgba(43, 255, 127, 0) 100%);transform:translate3d(50vw, 40vh, 0)}.site-perf{position:fixed;right:14px;bottom:14px;z-index:90;padding:7px 11px;border:1px solid rgba(43,255,127,.3);background:rgba(10,10,11,.85);color:var(--accent);font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:.04em;pointer-events:none}.site-grain{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.22;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.site-footer{position:relative;z-index:1;flex:none;width:100%;max-width:var(--content-width);margin:0 auto;padding:36px var(--space);display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-59);letter-spacing:.05em}.site-footer a{color:var(--text);text-decoration:none}.site-footer a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.site-footer-legal a{color:var(--text-74)}.site-footer-legal{display:flex;flex-wrap:wrap;gap:4px 20px}.article a:not([role=button]):not(.button){text-decoration:none;text-shadow:var(--glow-link)}.article a:not([role=button]):not(.button):hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:4px;text-shadow:var(--glow-link-hover)}.chip-button{padding:8px 14px;border:1px solid rgba(43,255,127,.25);border-radius:var(--radius);background:rgba(43,255,127,.05);color:var(--accent);text-shadow:var(--glow-link);font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:.06em;cursor:pointer}.chip-button:hover{border-color:rgba(43,255,127,.55);background:rgba(43,255,127,.12)}.chip-button-square{aspect-ratio:1;padding:8px 0;min-width:2.25rem}.site-scroll{position:fixed;right:28px;bottom:24px;z-index:41;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.site-scroll[hidden]{display:none}.site-scroll-arrow{display:block;transition:transform .45s cubic-bezier(0.2, 0.8, 0.2, 1)}.site-scroll.is-up .site-scroll-arrow{transform:rotate(180deg)}@media(max-width: 1500px){.site-footer{padding-right:4.5rem}}@media(max-width: 699px){.site-footer{padding-right:var(--space);padding-bottom:88px}}.divider{position:relative;width:100%;max-width:calc(var(--content-width) - var(--space)*2);height:1px;margin:var(--rhythm) auto;background:linear-gradient(90deg, transparent 0%, rgba(43, 255, 127, 0.28) 35%, rgba(43, 255, 127, 0.28) 65%, transparent 100%)}.divider.divider-first{margin-top:0}.divider.divider-footer{margin-bottom:0}.divider-track{position:absolute;inset:0;animation:site-walk 11s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate}.divider-dot{position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:var(--accent);box-shadow:var(--glow-dot)}.divider-track-1{animation:site-walk-b 7.5s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate-reverse}.divider-track-2{animation:site-walk 13s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate}.divider-track-3{animation:site-walk-b 9.5s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate-reverse}.divider-track-4{animation:site-walk 12s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate}.divider-track-5{animation:site-walk-b 6.5s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate-reverse}.divider-track-6{animation:site-walk 13.5s cubic-bezier(0.5, 0.2, 0.5, 0.8) infinite alternate}[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(0.16, 0.84, 0.28, 1),transform .8s cubic-bezier(0.16, 0.84, 0.28, 1)}[data-reveal].is-revealed{opacity:1;transform:none}.no-js [data-reveal]{opacity:1;transform:none}@keyframes site-blink{0%,49%{opacity:1}50%,100%{opacity:0}}@keyframes site-beacon{0%,100%{transform:scale(0.8);opacity:.5}45%{transform:scale(1.7);opacity:1}}@keyframes site-smoke{0%{opacity:.85;transform:scale(0.7)}100%{opacity:0;transform:scale(2.6)}}@keyframes site-breathe{0%,100%{text-shadow:0 0 26px rgba(43,255,127,.44),0 0 7px rgba(43,255,127,.3)}50%{text-shadow:0 0 34px rgba(43,255,127,.56),0 0 9px rgba(43,255,127,.38)}}@keyframes site-breathe-line{0%,100%{box-shadow:0 0 8px 1px rgba(43,255,127,.45)}50%{box-shadow:0 0 16px 2px rgba(43,255,127,.75)}}@keyframes site-kenburns{from{transform:scale(1.15)}to{transform:scale(1)}}@keyframes site-kenburns-b{from{transform:scale(1.15)}to{transform:scale(1)}}@keyframes site-rise{0%{opacity:0;transform:translateY(14px)}100%{opacity:1;transform:translateY(0)}}@keyframes site-walk{0%{transform:translateX(-36%)}100%{transform:translateX(36%)}}@keyframes site-walk-b{0%{transform:translateX(-24%)}100%{transform:translateX(24%)}}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}.site-glow,.site-grain{display:none}[data-reveal]{opacity:1;transform:none}.divider-track{animation:none}}.site-header{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;min-height:var(--nav-height);padding:0 var(--space)}.site-header-fade{position:absolute;left:0;right:0;top:0;bottom:-36px;pointer-events:none;z-index:0}.site-header-fade-1{backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 0%, #000 24%, rgba(0, 0, 0, 0) 46%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 0%, #000 24%, rgba(0, 0, 0, 0) 46%)}.site-header-fade-2{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 14%, #000 42%, rgba(0, 0, 0, 0) 64%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 14%, #000 42%, rgba(0, 0, 0, 0) 64%)}.site-header-fade-3{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 14%, #000 32%, #000 58%, rgba(0, 0, 0, 0) 80%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 14%, #000 32%, #000 58%, rgba(0, 0, 0, 0) 80%)}.site-header-fade-4{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, #000 48%, #000 72%, rgba(0, 0, 0, 0) 94%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, #000 48%, #000 72%, rgba(0, 0, 0, 0) 94%)}.site-header-fade-5{backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 44%, #000 62%, #000 86%, rgba(0, 0, 0, 0) 100%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 44%, #000 62%, #000 86%, rgba(0, 0, 0, 0) 100%)}.site-header-fade-6{backdrop-filter:blur(0.5px);-webkit-backdrop-filter:blur(0.5px);mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, #000 78%, #000 100%, rgba(0, 0, 0, 0) 100%);-webkit-mask-image:linear-gradient(180deg, rgba(0, 0, 0, 0) 60%, #000 78%, #000 100%, rgba(0, 0, 0, 0) 100%)}.site-header-tint{position:absolute;left:0;right:0;top:0;bottom:-36px;pointer-events:none;z-index:0;background:linear-gradient(180deg, rgba(10, 10, 11, 0.9) 0%, rgba(10, 10, 11, 0.55) 50%, rgba(10, 10, 11, 0.18) 78%, rgba(10, 10, 11, 0) 100%)}.site-header-row{position:relative;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:24px;width:100%;min-height:30px}.site-logo{display:flex;flex:none;white-space:nowrap;align-items:baseline;gap:14px;color:var(--text);text-decoration:none;transform-origin:left center;transition:transform var(--nav-shrink-duration) var(--nav-shrink-ease)}.site-logo:hover{color:var(--text)}.site-logo-name{font-size:var(--logo-font-size);line-height:1}.site-logo-dot{display:block;align-self:center;flex:none;transform:translateY(3px)}.site-logo-dot span{display:block;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:var(--glow-dot);animation:site-beacon 6s ease-in-out infinite}.site-logo-tag{font-family:var(--font-mono);font-size:var(--fs-nav);color:rgba(239,230,216,.66);letter-spacing:.05em;line-height:1;white-space:nowrap}.site-menu{display:flex;gap:4px;align-items:baseline;font-family:var(--font-mono);font-size:var(--fs-nav);letter-spacing:.04em;white-space:nowrap;list-style:none;margin:0;padding:0;transform-origin:right center;transition:transform var(--nav-shrink-duration) var(--nav-shrink-ease)}.site-menu a{display:block;padding:7px 12px;line-height:1;color:var(--text);text-decoration:none}.site-menu a:hover{color:var(--accent);text-shadow:0 0 14px rgba(43,255,127,.45)}.site-menu a[aria-current=page]{color:var(--accent);text-shadow:0 0 14px rgba(43,255,127,.45)}.site-menu-label{display:inline-block;position:relative;padding-bottom:7px}.site-menu-underline{position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:1px;background:rgba(43,255,127,.9);box-shadow:0 0 10px 1px rgba(43,255,127,.6);transform:scaleX(0);opacity:0;transform-origin:center;transition:transform .4s cubic-bezier(0.2, 0.7, 0.2, 1),opacity .3s ease}a[aria-current=page] .site-menu-underline{transform:scaleX(1);opacity:1;animation:site-breathe-line 4.5s ease-in-out infinite}@media(min-width: 1100px){body:not(.is-scrolled) .site-logo{transform:translateY(var(--nav-drop)) scale(var(--nav-scale-logo))}body:not(.is-scrolled) .site-menu{transform:translateY(var(--nav-drop)) scale(var(--nav-scale-menu))}}.site-burger{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%);flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 11px;border:1px solid rgba(43,255,127,.25);background:rgba(43,255,127,.05);border-radius:var(--radius);cursor:pointer;flex:none}.site-burger:hover{border-color:rgba(43,255,127,.55)}.site-burger span{display:block;height:1px;background:var(--accent);box-shadow:0 0 8px rgba(43,255,127,.5);transition:transform .3s ease,opacity .3s ease}.site-menu-panel{display:none}@media(max-width: 899px){.site-logo-dot,.site-logo-tag{display:none}}@media(max-width: 699px){.site-menu{display:none}.site-burger{display:flex}body.is-menu-open .site-burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}body.is-menu-open .site-burger span:nth-child(2){opacity:0}body.is-menu-open .site-burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}body.is-menu-open .site-menu-panel{position:fixed;inset:0;z-index:39;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:96px var(--space) 48px;background:rgba(8,8,9,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);list-style:none;margin:0}body.is-menu-open .site-menu-panel a{display:block;padding:8px 0;font-family:var(--font-mono);font-size:clamp(1.375rem,5.5vw,2rem);letter-spacing:.04em;line-height:1.15;color:var(--text);text-decoration:none}body.is-menu-open .site-menu-panel a:hover{color:var(--accent)}body.is-menu-open .site-menu-panel a[aria-current=page]{color:var(--accent);text-shadow:0 0 18px rgba(43,255,127,.45)}body.is-menu-open .site-menu-panel .site-menu-panel-mail{margin-top:28px;align-self:flex-start;display:inline-flex;align-items:center;gap:12px;padding:16px 26px;border:1px solid var(--button-border);background:var(--button-bg);border-radius:var(--radius);color:var(--accent);font-family:var(--font-mono);font-stretch:normal;font-size:var(--fs-button);letter-spacing:.04em;text-shadow:0 0 14px rgba(43,255,127,.4)}}.site-section{max-width:var(--content-width);margin:0 auto;padding:0 var(--space)}.site-section-chapter{margin-top:5rem}.site-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:8px}.site-more{display:inline-block;font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--text-59);letter-spacing:.08em;text-decoration:none}.site-more:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.site-more.site-more-accent{color:var(--accent);font-size:var(--fs-label);letter-spacing:.06em;text-shadow:var(--glow-link)}.site-more.site-more-accent:hover{color:var(--accent-hover);text-shadow:var(--glow-link-hover)}.site-prose{margin:0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-67);max-width:56ch}.site-button,.button,a[role=button],.article button{display:inline-flex;align-items:center;gap:12px;padding:16px 26px;border:1px solid var(--button-border);background:var(--button-bg);border-radius:var(--radius);color:var(--accent);text-decoration:none;text-shadow:0 0 14px rgba(43,255,127,.4);box-shadow:var(--glow-button);font-family:var(--font-mono);font-size:var(--fs-button);font-weight:500;letter-spacing:.04em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .3s ease,border-color .3s ease}.site-button:hover,.button:hover,a[role=button]:hover,.article button:hover{background:var(--button-bg-hover);border-color:var(--accent);color:var(--accent);text-shadow:0 0 20px rgba(43,255,127,.6);box-shadow:var(--glow-button-hover)}.site-button .site-button-chevron,.button .site-button-chevron,a[role=button] .site-button-chevron,.article button .site-button-chevron{opacity:.7}.site-button-ghost{padding:16px 24px;gap:10px;border-color:var(--button-ghost-border);background:var(--button-ghost-bg);box-shadow:none;text-shadow:0 0 12px rgba(43,255,127,.3)}.site-button-ghost:hover{border-color:rgba(43,255,127,.55);background:var(--button-ghost-bg-hover);text-shadow:0 0 18px rgba(43,255,127,.5)}.hero{position:relative;min-height:calc(100vh - 5px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.hero-stack{position:absolute;inset:0;overflow:hidden}.hero-photo{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo.is-active{opacity:.42;animation:site-kenburns 6.5s linear both}.hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(10, 10, 11, 0.88) 0%, rgba(10, 10, 11, 0.45) 32%, rgba(10, 10, 11, 0.82) 68%, rgba(10, 10, 11, 0.97) 100%)}@media(hover: none),(pointer: coarse){.hero-torch,.hero-torch-glow{display:none}}.hero-torch{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .8s ease;filter:brightness(1.02) saturate(1.02)}.hero-torch .hero-photo.is-active{opacity:1}.hero-torch-glow{position:absolute;inset:0;pointer-events:none;opacity:0;mix-blend-mode:screen;transition:opacity .6s ease}.hero-body{position:relative;width:100%;max-width:var(--content-width);margin:0 auto;padding:124px var(--space) 72px;display:flex;flex-direction:column;gap:30px}.hero-status{display:flex;flex-wrap:wrap;align-items:center;gap:18px;font-family:var(--font-mono);font-size:var(--fs-label);color:rgba(255,255,255,.88);letter-spacing:.06em;text-shadow:0 1px 14px rgba(0,0,0,.8),0 1px 3px rgba(0,0,0,.7)}.hero-status>span{display:inline-flex;align-items:center;gap:8px}.hero-status .hero-status-sep{color:rgba(255,255,255,.42)}.hero-status-roll{display:inline-grid;overflow:hidden;vertical-align:bottom}.hero-status-roll>span{grid-area:1/1;transform:translateY(100%);opacity:0;transition:transform var(--status-roll-duration) cubic-bezier(0.2, 0.7, 0.2, 1),opacity var(--status-roll-duration) ease}.hero-status-roll>span.is-active{transform:translateY(0);opacity:1}.hero-status-roll>span.is-leaving{transform:translateY(-100%);opacity:0}@media(prefers-reduced-motion: reduce){.hero-status-roll>span{transition:none}}.hero-status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:var(--glow-dot);animation:site-beacon 1.9s ease-in-out infinite}.hero-slogan{margin:0;font-size:var(--fs-hero);line-height:.95;color:rgba(255,246,232,.97);text-shadow:0 2px 30px rgba(0,0,0,.7),0 1px 4px rgba(0,0,0,.6)}.hero-slogan>span{display:block;animation:site-rise .9s cubic-bezier(0.2, 0.7, 0.2, 1) both}.hero-slogan>span:nth-child(2){animation-delay:.12s}.hero-slogan>span:nth-child(3){animation-delay:.24s}.hero-code-word{font-family:var(--font-mono);font-stretch:normal;font-size:.93em;font-weight:500;letter-spacing:-0.05em;color:var(--accent);animation:site-breathe 4.5s ease-in-out infinite}.hero-caret{display:inline-block;width:.36em;height:.72em;margin-left:.14em;vertical-align:-0.02em;background:var(--accent);box-shadow:0 0 16px 2px rgba(43,255,127,.4)}.hero-caret.is-idle{animation:site-blink 1.1s step-end infinite}.hero-typed-break{display:none}@media(max-width: 549px){.hero-typed-break{display:block;height:0}}.hero-h1{margin:0;font-size:var(--fs-hero-h1);line-height:1.25;color:rgba(255,246,232,.92);text-shadow:0 1px 16px rgba(0,0,0,.7)}.hero-intro-row{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:flex-end;justify-content:space-between}.hero-intro{margin:0;max-width:600px;font-size:1.1875rem;line-height:1.65;color:rgba(255,248,238,.9);text-shadow:0 1px 18px rgba(0,0,0,.75),0 1px 3px rgba(0,0,0,.6)}.hero-credit{font-family:var(--font-mono);font-size:var(--fs-meta);color:rgba(255,255,255,.78);letter-spacing:.05em;text-shadow:0 1px 12px rgba(0,0,0,.85),0 1px 3px rgba(0,0,0,.7);transition:opacity .5s ease}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;padding-top:8px}.chapter-row{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:var(--gap);align-items:start;padding:34px 0;border-top:1px solid var(--line)}.chapter-row.chapter-row-first{border-top:0}.chapter-row h3{margin:0;font-size:clamp(1.625rem,3vw,2.5rem);line-height:1.05}.chapter-row p{margin:0;font-size:var(--fs-body-small);line-height:var(--lh-body);color:var(--text-67);max-width:56ch}.split{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:var(--gap)}.split-intro{margin:18px 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-67);max-width:46ch}.split-more{margin-top:18px}.split-list{display:flex;flex-direction:column}.split-list-facts{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:28px 32px}.fact h3{margin:0;letter-spacing:.1em}.fact p{margin:10px 0 0;font-size:var(--fs-body-small);line-height:var(--lh-body);color:var(--text-67)}.link-row{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:var(--gap);align-items:center;padding:26px 18px;margin:0 -18px;color:var(--text);text-decoration:none;border-top:1px solid var(--line);transition:background .35s ease,box-shadow .35s ease,color .2s ease}.link-row.link-row-first{border-top:0}.link-row:hover{color:var(--accent);background:linear-gradient(90deg, rgba(43, 255, 127, 0.09), rgba(43, 255, 127, 0.02) 45%, transparent 70%);box-shadow:inset 3px 0 0 var(--accent)}.link-row h3{margin:0;font-size:clamp(1.375rem,2.4vw,2rem)}.link-row-meta{display:flex;justify-content:space-between;gap:20px;font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-53);letter-spacing:.03em}.package-row{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding:16px 18px;margin:0 -18px;font-family:var(--font-mono);font-size:var(--fs-button)}.package-row .package-row-desc{font-family:var(--font-body);font-size:var(--fs-label);color:var(--text-53);text-align:right}.code-split{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:var(--gap);align-items:center}.code-intro{display:flex;flex-direction:column;gap:22px}.code-intro h3{margin:0;font-size:clamp(1.875rem,3.6vw,3.125rem);line-height:1.08}.code-intro p{margin:0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-67);max-width:52ch}.code-window{border:1px solid #1e1e21;border-radius:4px;background:var(--panel);overflow:hidden;box-shadow:var(--shadow)}.window-bar{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid #1a1a1d;background:var(--panel-bar)}.window-bar .window-bar-dot{width:9px;height:9px;border-radius:50%;background:#2f2f33;display:inline-block}.window-bar .window-bar-label{font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--text-53);margin-left:8px}.code-window pre{margin:0;padding:22px;font-family:var(--font-mono);font-size:var(--fs-code);line-height:1.85;color:#b9b6ae;overflow-x:auto}.tok-keyword{color:var(--accent)}.tok-name{color:var(--text)}.tok-string{color:var(--accent-hover)}.tok-punct{color:var(--text-45)}.tok-var{color:rgba(239,230,216,.75)}.tok-comment{color:rgba(239,230,216,.38);font-style:italic}.code-caret{display:inline-block;width:8px;height:15px;background:var(--accent);box-shadow:0 0 9px 1px rgba(43,255,127,.28);vertical-align:-2px;animation:site-blink 1.1s step-end infinite}.photo-grid{display:grid;grid-template-columns:repeat(var(--items-columns), minmax(0, 1fr));gap:var(--gap);padding-top:24px}.photo-tile{display:block;position:relative;color:#fdfaf3;text-decoration:none;transition:color .3s ease}.photo-tile figure{position:relative;margin:0;overflow:hidden;aspect-ratio:1/1;background:var(--panel-fill);border-radius:var(--radius-frame);border:1px solid var(--border-panel);box-shadow:var(--shadow);transition:border-color .35s ease}.photo-tile img{width:100%;height:100%;object-fit:cover;opacity:.88;transform:scale(1.02);transition:transform 1.6s cubic-bezier(0.2, 0.7, 0.2, 1),opacity .5s ease}.photo-tile figcaption{position:absolute;left:12px;bottom:14px;font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.1em;color:inherit;text-shadow:0 1px 10px rgba(0,0,0,.95),0 1px 3px rgba(0,0,0,.85);transition:transform .45s cubic-bezier(0.2, 0.8, 0.2, 1),color .3s ease}.photo-tile .photo-tile-edge{position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:var(--radius-frame);box-shadow:inset 0 0 26px rgba(43,255,127,0);transition:box-shadow .35s ease}.photo-tile:hover{color:var(--accent)}.photo-tile:hover figure{border-color:rgba(43,255,127,.85)}.photo-tile:hover img{opacity:1;transform:scale(1.06)}.photo-tile:hover figcaption{transform:translateY(-4px)}.photo-tile:hover .photo-tile-edge{box-shadow:inset 0 0 26px rgba(43,255,127,.18)}.photo-grid-note{margin:26px 0 0;max-width:60ch}.photo-grid-link{margin-top:18px}@media(max-width: 1099px){.photo-grid{grid-template-columns:repeat(var(--items-columns-tablet), minmax(0, 1fr))}}@media(max-width: 699px){.chapter-row,.link-row{grid-template-columns:minmax(0, 1fr);gap:14px}.split-list-facts{grid-template-columns:minmax(0, 1fr)}.hero-body{padding-top:calc(var(--nav-height) + 44px)}}@media(max-width: 549px){.photo-grid{grid-template-columns:repeat(var(--items-columns-mobile), minmax(0, 1fr))}}.page-header{position:relative;height:clamp(240px,36vh,360px);overflow:hidden;display:flex;align-items:flex-end}.page-header-photo{position:absolute;inset:0;opacity:.3;transform:scale(1.02)}.page-header-photo img{width:100%;height:100%;object-fit:cover}.page-header-scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(10, 10, 11, 0.9) 0%, rgba(10, 10, 11, 0.55) 45%, rgb(10, 10, 11) 100%)}.page-header-torch{position:absolute;inset:0;pointer-events:none;opacity:0;backdrop-filter:brightness(2.2) saturate(1.08);-webkit-backdrop-filter:brightness(2.2) saturate(1.08);transition:opacity .6s ease;mask-composite:intersect;-webkit-mask-composite:source-in}.page-header-glow{position:absolute;inset:0;pointer-events:none;opacity:0;mix-blend-mode:screen;transition:opacity .6s ease}.page-header-body{position:relative;width:100%;max-width:var(--content-width-small);margin:0 auto;padding:0 var(--space) 8px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.page-header-body h1{margin:0;font-size:var(--fs-h1);line-height:1;color:rgba(255,246,232,.97);text-shadow:0 2px 30px rgba(0,0,0,.75),0 1px 4px rgba(0,0,0,.6)}.page-section{max-width:var(--content-width-small);margin:0 auto;padding:48px var(--space) 100px}main>.page-section:not(:last-child){padding-bottom:0}main>.divider+.page-section{padding-top:0}main>.default{padding-block:48px 100px}main>.default>.main-width{max-width:var(--content-width-small)}main>.default:not(:last-child){padding-bottom:0}main>.divider+.default{padding-top:0}.page-section-joined{padding-top:0}.page-intro{margin:0;font-size:var(--fs-intro);line-height:1.6;color:var(--text-90);max-width:52ch}.photo-intro{max-width:56ch}.work-intro{max-width:60ch}.text-columns{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:32px}.text-columns h2,.text-columns h3{margin:0}.text-columns p{margin:12px 0 0;font-size:var(--fs-body-small);line-height:var(--lh-body);color:var(--text-67)}.text-columns-ruled{padding-top:44px;border-top:1px solid var(--line)}.text-columns-blocks{grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:28px 48px}.text-columns-blocks .text-column{padding-top:20px;border-top:1px solid var(--line)}.text-columns-blocks .text-column-body{margin-top:10px}.text-columns-blocks .text-column-body p{margin:0 0 10px}.text-columns-blocks .text-column-body p:last-child{margin-bottom:0}.text-column-highlight{grid-column:1/-1}.text-column-highlight h2,.text-column-highlight h3{color:var(--accent);text-shadow:var(--glow-link)}.text-column-highlight .text-column-body{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:12px 48px;margin-top:12px}.text-column-highlight .text-column-body p{margin:0}.text-columns-list{gap:36px}.text-columns-list .text-column p{line-height:1.9}.text-columns-list .text-column-body a:not([role=button]):not(.button){color:var(--text-90);text-shadow:none;transition:color .2s ease}.text-columns-list .text-column-body a:not([role=button]):not(.button):hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px;text-shadow:var(--glow-link)}.text-columns-button{margin-top:40px}.text-blocks{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:48px}.text-block h2{margin:0 0 16px;font-size:var(--fs-h4);line-height:1.2}.text-block-body{font-size:var(--fs-body);line-height:var(--lh-prose);color:var(--text-67)}.text-block-body p{margin:0 0 16px}.text-block-body p:last-child{margin-bottom:0}.text-block-body em{font-style:normal;color:var(--text-90)}.text-block-more{margin-top:18px}.page-photos>h2{margin:0 0 20px;font-size:var(--fs-h4);line-height:1.2}.photos-split{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:36px;align-items:start}.photos-body{font-size:var(--fs-body);line-height:var(--lh-prose);color:var(--text-67)}.photos-body p{margin:0 0 16px}.photos-body p:last-child{margin-bottom:0}.photos-more{display:inline-block;margin-top:18px}.photos-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.photos-grid figure{margin:0;overflow:hidden;aspect-ratio:1/1.25;background:var(--panel-fill)}.photos-grid img{width:100%;height:100%;object-fit:cover;opacity:.9;transform:scale(1.06);transition:transform 9s cubic-bezier(0.2, 0.6, 0.2, 1),opacity .6s ease}.photos-grid figure:hover img{transform:scale(1);opacity:1}@media(prefers-reduced-motion: reduce){.photos-grid img{transform:none;transition:none}}.page-article-number{margin:0}.page-article-head{margin:14px 0 20px;font-size:var(--fs-h2);line-height:1.08}.page-article-body{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:36px;font-size:var(--fs-body);line-height:var(--lh-prose);color:var(--text-67)}.page-article-body>p{margin:0}.page-article:has(+.page-section-joined .text-columns-blocks) .page-article-body{grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:28px 48px}.page-article-conclusion{margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-82);max-width:60ch}.page-article-conclusion p{margin:0 0 16px}.page-article-conclusion p:last-child{margin-bottom:0}.page-section-joined.page-texts{margin-top:56px}.page-section-joined.page-rows{margin-top:32px}.page-section-joined .text-columns-ruled{margin-top:56px}.page-section-joined .text-columns-blocks{margin-top:32px}.package-row-wide{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 2fr) auto;gap:20px;align-items:baseline;font-size:.9375rem}.package-row-wide .package-row-desc{font-size:.9375rem;color:var(--text-61);text-align:left}.package-row-wide .package-row-chevron{font-family:var(--font-mono);font-size:var(--fs-nav);text-align:right}@media(max-width: 700px){.package-row-wide{grid-template-columns:minmax(0, 1fr) auto}.package-row-wide .package-row-desc{grid-column:1/-1}}.page-intro-button{margin-top:40px;padding:20px 32px;font-size:clamp(.9375rem,1.6vw,1.1875rem)}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:40px 0 0;padding:0;list-style:none}.filter-chips a{display:block;font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.04em;padding:8px 14px;border:1px solid var(--border-chip);border-radius:var(--radius);background:rgba(0,0,0,0);color:var(--text-59);text-decoration:none;cursor:pointer;transition:border-color .3s ease,background .3s ease,color .3s ease}.filter-chips a:hover{border-color:rgba(43,255,127,.55);color:var(--accent);text-shadow:var(--glow-link)}.filter-chips a.active{color:var(--accent);border-color:rgba(43,255,127,.25);background:rgba(43,255,127,.05);text-shadow:0 0 14px rgba(43,255,127,.4)}.page-intro-more{margin-top:18px}.work-intro-note{margin:20px 0 0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-67);max-width:60ch}.work-item{display:grid;gap:36px}.work-head{display:grid;grid-template-columns:minmax(0, 0.85fr) minmax(0, 1.15fr);gap:40px;align-items:start}.work-name{display:flex;flex-direction:column;gap:14px}.work-name h2{margin:0;font-size:clamp(1.5rem,2.6vw,2.375rem);line-height:1.05}.work-name a{color:inherit;text-decoration:none}.work-name a:hover{color:var(--accent)}.work-credit{font-family:var(--font-mono);font-size:var(--fs-meta);line-height:1.7;letter-spacing:.03em;color:var(--text-53);white-space:pre-line}.work-domain{font-family:var(--font-mono);font-size:var(--fs-meta);letter-spacing:.05em;color:var(--accent);text-decoration:none;text-shadow:var(--glow-link)}.work-domain:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:4px;text-shadow:var(--glow-link-hover)}.work-about{display:flex;flex-direction:column;gap:18px}.work-about p{margin:0;font-size:var(--fs-body-small);line-height:var(--lh-body);color:var(--text-67);max-width:56ch}.work-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.work-tags li{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.03em;color:var(--text-59);border:1px solid var(--border-panel);border-radius:var(--radius);padding:5px 9px}.work-shots{position:relative;padding-right:96px}.work-browser[data-reveal],.work-phone[data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(0.16, 0.84, 0.28, 1),transform .9s cubic-bezier(0.16, 0.84, 0.28, 1)}.work-browser[data-reveal]{transform:translateX(-7%)}.work-phone[data-reveal]{transform:translateX(38px)}.work-browser.is-revealed,.work-phone.is-revealed{opacity:1;transform:none}.work-phone-float{position:absolute;right:0;bottom:-18px;width:170px}@supports(animation-timeline: view()){.work-phone-float{animation:work-phone-drift linear both;animation-timeline:view();animation-range:cover 15% cover 85%}}@keyframes work-phone-drift{from{transform:translateY(70px)}to{transform:translateY(-70px)}}.work-browser{border:1px solid var(--border-panel);border-radius:6px;overflow:hidden;background:var(--panel-fill);box-shadow:var(--shadow)}.work-browser-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(239,230,216,.06);background:rgba(255,255,255,.02)}.work-browser-dot{width:9px;height:9px;border-radius:50%;background:rgba(239,230,216,.14)}.work-browser-address{flex:1;margin-left:10px;padding:5px 10px;border-radius:3px;background:rgba(0,0,0,.35);font-family:var(--font-mono);font-size:.6875rem;color:var(--text-53)}.work-browser-page img{display:block;width:100%;height:auto}.work-browser-page.is-empty{aspect-ratio:16/10}.work-phone{padding:7px;border:1px solid var(--border-panel);border-radius:20px;background:var(--panel-fill);box-shadow:var(--shadow)}.work-phone-page{overflow:hidden;border-radius:13px}.work-phone-page img{display:block;width:100%;height:auto}.work-phone-page.is-empty{aspect-ratio:9/16}@media(max-width: 949px){.work-head{grid-template-columns:minmax(0, 1fr);gap:24px}}@media(max-width: 699px){.work-shots{padding-right:0}.work-phone-float{display:none}}@media(prefers-reduced-motion: reduce){.work-browser[data-reveal],.work-phone[data-reveal]{opacity:1;transform:none;transition:none}.work-phone-float{animation:none}}.no-js .work-browser[data-reveal],.no-js .work-phone[data-reveal]{opacity:1;transform:none}.photo-masonry{--masonry-columns: var(--items-columns);width:calc(100vw - var(--space)*2);max-width:var(--gallery-width);margin-left:50%;transform:translateX(-50%);column-count:var(--masonry-columns);column-gap:var(--gap)}.photo-masonry .photo-tile{display:block;margin:0 0 var(--gap);break-inside:avoid}.photo-masonry figure{aspect-ratio:auto}.photo-masonry img{display:block;width:100%;height:auto}.photo-masonry.is-packed{display:grid;grid-template-columns:repeat(var(--masonry-columns), minmax(0, 1fr));grid-auto-rows:4px;column-gap:var(--gap);column-count:auto}.photo-masonry.is-packed .photo-tile{margin:0;align-self:start}@media(max-width: 1199px){.photo-masonry{--masonry-columns: 3}}@media(max-width: 949px){.photo-masonry{--masonry-columns: 2}}@media(max-width: 699px){.page-section{padding-bottom:64px}}@media(max-width: 549px){.photo-masonry{--masonry-columns: var(--items-columns-mobile)}}.lightbox{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:76px 16px 20px;background:rgba(6,6,7,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:zoom-out}.lightbox[hidden]{display:none}.lightbox-image{max-width:100%;max-height:100%;object-fit:contain}.lightbox-caption{margin:0;min-width:0;max-width:min(40vw,26rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.1em;color:var(--text-67)}.lightbox-controls{position:absolute;right:28px;top:24px;display:flex;flex-direction:row-reverse;align-items:center;gap:8px;cursor:default}.photo-masonry .photo-tile{cursor:zoom-in}@media(max-width: 699px){.lightbox{padding:70px 12px 16px}.lightbox-controls{right:16px}}.consent{justify-content:flex-start;align-items:flex-end}.consent-dialog{max-width:26rem;padding:24px;border:1px solid var(--border-panel);border-radius:var(--radius-frame);background:var(--panel);color:var(--text);box-shadow:var(--shadow);animation:consent-rise .4s var(--nav-shrink-ease) both}@keyframes consent-rise{from{opacity:0;transform:translateY(12px)}}.consent-title{margin:0 0 12px;font-family:var(--font-mono);font-size:var(--fs-label);font-weight:400;font-stretch:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--text-59)}.consent-body{margin:0 0 20px;font-size:var(--fs-body-small);line-height:var(--lh-body);color:var(--text-67)}.consent-categories{gap:4px;margin-bottom:20px}.consent-category{padding:12px;border-radius:var(--radius)}.consent-category:hover{background:var(--panel-fill)}.consent-category-name{font-size:var(--fs-body-small);font-weight:500}.consent-category-body{font-size:var(--fs-meta);line-height:1.5;color:var(--text-59)}.consent-switch{background:var(--border-chip)}.consent-category input:checked+.consent-switch::after{background:var(--accent-contrast)}.consent-button{flex:0 1 auto;padding:10px 18px;font-family:var(--font-mono);font-size:var(--fs-button);letter-spacing:.06em;border:1px solid var(--button-ghost-border);border-radius:var(--radius);background:var(--button-ghost-bg);color:var(--button-text);transition:background .2s var(--nav-shrink-ease),border-color .2s var(--nav-shrink-ease),box-shadow .2s var(--nav-shrink-ease)}.consent-button:hover{border-color:var(--button-border);background:var(--button-ghost-bg-hover)}.consent-accept{border-color:var(--button-border);background:var(--button-bg);color:var(--button-text);box-shadow:var(--glow-button)}.consent-accept:hover{background:var(--button-bg-hover);box-shadow:var(--glow-button-hover)}.cookie-table h3{margin:32px 0 4px;font-size:var(--fs-h4)}.cookie-table table{font-size:var(--fs-body-small);margin-bottom:var(--space)}.cookie-table th{font-family:var(--font-mono);font-size:var(--fs-label);font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--text-59);padding-bottom:10px}.cookie-table td{padding:12px var(--space-xs) 12px 0;border-bottom:1px solid var(--line);color:var(--text-67)}.cookie-table code{font-family:var(--font-mono);font-size:var(--fs-code);color:var(--text-82)}@media(max-width: 699px){.consent{padding:var(--space-s)}.consent-dialog{max-width:none}.consent-button{flex:1 1 auto}.cookie-table table{display:block;overflow-x:auto}}@media(prefers-reduced-motion: reduce){.consent-dialog{animation:none}}