.project-story img[data-image-viewer-trigger]{cursor:zoom-in;touch-action:manipulation}.project-story img[data-image-viewer-trigger]:focus-visible{outline:2px solid var(--color-identity);outline-offset:-4px}.project-story .media-frame:has(img[data-image-viewer-trigger]):focus-within{outline:none}.project-story .media-frame:has(img[data-image-viewer-trigger]:focus-visible){outline:2px solid var(--color-identity);outline-offset:4px}.project-story .media-frame img[data-image-viewer-trigger]:focus-visible{outline:none}.project-story img[data-viewer-pointer-focus]:focus-visible,.project-story .media-frame:has(img[data-viewer-pointer-focus]:focus){outline:none}html.project-image-viewer-open{overflow:hidden}.project-image-viewer{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--color-white);overflow:hidden}.project-image-viewer::backdrop{background:#000000eb}.image-viewer-actions{position:absolute;top:max(var(--space-4),env(safe-area-inset-top));right:max(var(--gutter-desktop),env(safe-area-inset-right));display:flex;gap:var(--space-4);align-items:center;z-index:1}.image-viewer-actions button{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-white);cursor:pointer}.image-viewer-actions button:hover{border-color:var(--color-identity);color:var(--color-identity-text)}.image-viewer-zoom{padding:0 var(--space-4);font:400 var(--text-small)/1 var(--font-body)}.image-viewer-close{width:44px;padding:0;font:400 var(--text-h3)/1 var(--font-body)}.image-viewer-stage{position:absolute;inset:calc(var(--size-control-small) + 2 * var(--space-4)) var(--gutter-desktop) var(--space-section-sm);overflow:auto;overscroll-behavior:contain;scroll-behavior:auto}.image-viewer-canvas{display:grid;place-items:center;min-width:100%;min-height:100%}.image-viewer-image{display:block;flex:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;cursor:zoom-in;touch-action:pan-x pan-y pinch-zoom}.image-viewer-image img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;user-select:none;-webkit-user-select:none}.project-image-viewer.is-zoomed .image-viewer-image{cursor:zoom-out}.project-image-viewer.is-panning .image-viewer-image{cursor:grabbing}.image-viewer-hint{position:absolute;bottom:max(var(--space-6),env(safe-area-inset-bottom));left:var(--gutter-desktop);right:var(--gutter-desktop);margin:0;text-align:center;font:400 var(--text-small)/1.5 var(--font-body);color:var(--color-muted)}@media(max-width:809px){.image-viewer-actions{right:max(var(--gutter-mobile),env(safe-area-inset-right))}.image-viewer-stage{inset:calc(var(--size-control-small) + 2 * var(--space-4)) var(--gutter-mobile) var(--space-section-sm)}.image-viewer-hint{font-size:var(--text-caption);left:var(--gutter-mobile);right:var(--gutter-mobile)}}.content-page{--page-gutter:var(--gutter-desktop);--story-wide:calc(var(--content-width) - 2 * var(--gutter-desktop));--story-reading:var(--story-wide)}.content-main{padding:var(--page-top) var(--page-gutter) var(--space-section);min-height:70vh}.content-page h1{white-space:normal;font-size:var(--text-h1);line-height:var(--leading-display);letter-spacing:-.035em;overflow-wrap:anywhere}.content-page :where(main) h2{font-size:var(--text-h2);line-height:var(--leading-tight);color:var(--color-heading);letter-spacing:-.02em;text-wrap:var(--wrap-heading)}.project-story,.blog-story{width:100%;max-width:var(--story-wide);margin-inline:auto}.story-heading{width:100%;max-width:var(--story-reading);margin:0 0 var(--space-12)}.story-heading h1{margin-bottom:var(--space-6);text-wrap:pretty}.story-index-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;margin-bottom:var(--space-6);color:var(--color-muted);font:400 var(--text-small)/1.5 var(--font-detail)}.story-index-link:hover{color:var(--color-white);text-decoration:underline;text-underline-offset:5px}.rich-text,.post-summary{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-reading);overflow-wrap:anywhere}.rich-text>:first-child{margin-top:0}.rich-text>*+*{margin-top:var(--space-6)}.rich-text h2{margin-top:var(--space-12);font-family:var(--font-display)}.rich-text h3{font-family:var(--font-display);font-size:var(--text-h3);line-height:var(--leading-tight);margin-top:var(--space-8);color:var(--color-heading)}.rich-text strong{font-weight:500;color:var(--color-heading)}.rich-text a{text-decoration:underline;text-underline-offset:4px}.rich-text a:hover{color:var(--color-white);text-decoration-color:var(--color-identity)}.rich-text ul,.rich-text ol{padding-left:1.4em}.rich-text li+li{margin-top:var(--space-2)}.rich-text blockquote{border-left:2px solid var(--color-identity);margin-left:0;margin-right:0;padding-left:var(--space-6)}.rich-text code{font:400 var(--text-small)/var(--leading-reading) var(--font-mono);background:#ffffff12;padding:2px var(--space-2);border-radius:4px;white-space:pre-wrap}.story-cover,.story-sections{width:100%;margin-inline:0}.cms-media{min-width:0}.cms-media img{display:block;width:100%;height:auto;border-radius:var(--radius-card)}.cms-media .media-frame:focus-within{outline:2px solid var(--color-identity);outline-offset:4px;border-radius:var(--radius-card)}.cms-media iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--radius-card);background:var(--color-surface)}.cms-media video{width:100%;max-height:800px;display:block;border-radius:var(--radius-card);background:var(--color-surface)}.cms-media figcaption{font:400 var(--text-small)/1.6 var(--font-detail);color:var(--color-muted);margin-top:var(--space-4)}.cms-media-document iframe{height:min(80vh,900px);min-height:360px;aspect-ratio:auto}.media-transcript{margin-top:var(--space-4);font-size:var(--text-control);line-height:1.6}.media-transcript summary{cursor:pointer;padding:var(--space-4) 0}.media-transcript p{white-space:pre-line}.embed-open-link{display:inline-block;padding:var(--space-4) 0;font-size:var(--text-control);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.project-overview{margin:var(--space-8) 0 var(--space-12)}.project-facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-6) var(--space-12);padding:0;font:400 var(--text-control)/1.6 var(--font-body)}.project-facts>div{min-width:0}.project-facts dt{font:400 var(--text-caption)/1.5 var(--font-mono);color:var(--color-muted);margin-bottom:var(--space-2)}.project-facts dd{margin:0;overflow-wrap:anywhere;color:var(--color-heading)}.project-facts a{text-decoration:underline;text-underline-offset:4px}.project-team-wide{grid-column:1/-1}.project-team dd{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6)}.overview-text{max-width:var(--story-reading);margin-inline:0;display:flex;flex-direction:column;gap:var(--space-12)}.project-facts+.overview-text{margin-top:var(--space-12)}.overview-text h2,.story-text>h2,.story-tools>h2,.story-access>h2{margin-bottom:var(--space-6)}.story-sections{display:flex;flex-direction:column;gap:var(--space-section)}.story-text,.story-tools,.story-access{width:100%;max-width:var(--story-reading);margin-inline:0}.gallery-introduction{max-width:var(--story-reading);margin:0 0 var(--space-6)}.gallery-introduction h2{margin-bottom:var(--space-6)}.gallery-media{display:grid;gap:var(--space-6);align-items:start}.gallery-grid .gallery-media{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid .cms-media img,.gallery-grid .cms-media video{max-height:800px;object-fit:contain}.gallery-grid .cms-media video{background:var(--color-surface)}.gallery-grid .cms-media:last-child:nth-child(odd){grid-column:1/-1}.gallery-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-12);align-items:start}.gallery-split .gallery-introduction{margin:0;min-width:0}.gallery-split .rich-text{font-size:var(--text-body)}.story-tools-wide{max-width:none}.story-tools ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-6);align-items:center;width:fit-content;max-width:100%;color:var(--color-heading)}.story-tools li{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:60px}.tool-item{display:flex;align-items:center;justify-content:center;min-width:60px;min-height:60px}.story-tools .tool-item-white{padding:var(--tool-padding,var(--space-3));min-width:calc(60px + 2 * var(--tool-padding,var(--space-3)));min-height:calc(60px + 2 * var(--tool-padding,var(--space-3)));border-radius:var(--radius-field);background:#fff}.story-tools img{display:block;width:auto;height:60px;max-width:none;object-fit:contain}.tool-name{font-size:var(--text-small);line-height:1.3;text-align:center;max-width:80px;overflow-wrap:anywhere}.access-links{display:flex;flex-wrap:wrap;gap:var(--space-4)}.access-links .button{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}.story-back{margin:var(--space-8) 0 0}.post-body{max-width:var(--story-reading);margin:var(--space-12) 0 0}.post-byline{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6);margin-top:var(--space-6);font:400 var(--text-small)/1.5 var(--font-detail);color:var(--color-muted)}.recommendations{margin:var(--space-section) 0 0;margin-top:var(--space-section)}.recommendations-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);margin-bottom:var(--space-6)}.recommendations-heading h2{font-size:var(--text-h2)}.recommendations-heading>a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-small);white-space:nowrap;text-decoration:underline;text-underline-offset:5px}.recommendation-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6);list-style:none;padding:var(--space-3);margin:0 calc(-1 * var(--space-3))}.recommendation-cards>li{min-width:0}.content-list{max-width:var(--story-wide);margin:auto}.content-list>h1{margin-bottom:var(--space-12)}.listing-heading{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-12)}.content-page .listing-heading h1{font:var(--weight-display) var(--text-h1)/var(--leading-display) var(--font-display);letter-spacing:-.035em}.listing-heading p{font:400 var(--text-body)/1.6 var(--font-body);max-width:640px;color:var(--color-text);font-size:var(--text-body)}.listing-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4) var(--space-6);padding-bottom:var(--space-8);margin-bottom:var(--space-12);border-bottom:1px solid var(--color-border-subtle)}.listing-filter{display:flex;flex-wrap:wrap;gap:var(--space-2)}.listing-filter a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:999px;font:400 var(--text-control)/1 var(--font-body);color:var(--color-text);text-decoration:none;transition:color var(--duration-fast),border-color var(--duration-fast)}.listing-filter a:hover{color:var(--color-white);border-color:var(--color-muted-2)}.listing-filter a[aria-current]{color:var(--color-identity-text);border-color:var(--color-identity)}.cms-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-12) var(--space-6)}.cms-cards>.target[hidden]{display:none!important}@media(min-width:810px){.cms-cards{row-gap:0}.cms-cards>.target--featured{margin-bottom:var(--space-12)}.cms-cards>.target:not(.target--featured){display:grid;grid-template-columns:minmax(0,1fr);grid-row:span 4;grid-template-rows:subgrid;row-gap:var(--space-4);align-content:start;padding-bottom:var(--space-12)}}.card-date{font:400 var(--text-small)/1.5 var(--font-detail);color:var(--color-muted);margin-bottom:var(--space-4)}.review-notice{max-width:var(--story-wide);margin:0 auto var(--space-8);padding:var(--space-4) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;font-size:var(--text-small);background:#17110b}.review-notice a,.local-review-link a{color:#ff9d66}.review-description{max-width:var(--story-reading);font-size:var(--text-body);line-height:1.6;margin-bottom:var(--space-6)}.review-section-title{margin:var(--space-section-sm) 0 var(--space-8)}.empty-content{font-size:var(--text-body)}.local-review-link{margin-top:var(--space-8)}@media(max-width:809px){.content-page{--page-gutter:var(--gutter-mobile)}.content-main{padding-top:var(--page-top-sm);padding-bottom:var(--space-section-sm)}.content-page h1{font-size:var(--text-h1);line-height:var(--leading-display);letter-spacing:-.025em}.content-page :where(main) h2{font-size:var(--text-h2)}.story-heading{margin-bottom:var(--space-8)}.story-index-link{margin-bottom:var(--space-4)}.rich-text,.post-summary{font-size:var(--text-body);line-height:var(--leading-reading)}.rich-text h3{font-size:var(--text-h3)}.story-heading h1{margin-bottom:var(--space-6)}.project-overview{margin:var(--space-8) 0 var(--space-12)}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);font-size:var(--text-control)}.project-facts+.overview-text{margin-top:var(--space-12)}.overview-text{gap:var(--space-12)}.story-sections{gap:var(--space-section-sm)}.gallery-introduction{margin-bottom:var(--space-6)}.gallery-media{gap:var(--space-6)}.gallery-grid .gallery-media,.gallery-split{grid-template-columns:minmax(0,1fr)}.gallery-split{gap:var(--space-6)}.post-body{margin-top:var(--space-12)}.recommendations{margin-top:var(--space-section-sm)}.recommendations-heading{gap:var(--space-4);margin-bottom:var(--space-6)}.recommendations-heading h2{font-size:var(--text-h2)}.recommendation-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-4)}.listing-heading{gap:var(--space-4);margin-bottom:var(--space-8)}.listing-heading p{font-size:var(--text-body)}.listing-bar{padding-bottom:var(--space-6);margin-bottom:var(--space-8)}.cms-cards{grid-template-columns:minmax(0,1fr);gap:var(--space-12)}.review-notice{padding:var(--space-4)}.review-section-title{margin-top:var(--space-12)}.cms-media iframe{min-height:180px}.cms-media-document iframe{min-height:360px}}@media(max-width:540px){.recommendation-cards{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}}@media(max-width:440px){.story-tools ul{gap:var(--space-6)}.project-team{grid-column:1/-1}.content-page h1{font-size:var(--text-h1)}}.project-story .story-hero{margin-bottom:var(--space-12)}.project-story .story-hero .story-index-link{margin-bottom:var(--space-6)}.project-story .story-frame{position:relative;margin:var(--space-12) 0 var(--space-12)}.project-story .story-brackets i:before,.project-story .story-brackets i:after{content:"";position:absolute;width:14px;height:14px;border:1.5px solid var(--color-identity);pointer-events:none}.project-story .story-brackets i:first-child:before{top:-10px;left:-10px;border-right:0;border-bottom:0}.project-story .story-brackets i:first-child:after{top:-10px;right:-10px;border-left:0;border-bottom:0}.project-story .story-brackets i:last-child:before{bottom:-10px;left:-10px;border-right:0;border-top:0}.project-story .story-brackets i:last-child:after{bottom:-10px;right:-10px;border-left:0;border-top:0}.project-story .story-meta{margin-bottom:var(--space-6)}.project-story .story-hero h1{max-width:none;margin-bottom:var(--space-6);font:var(--weight-display) var(--text-h1)/var(--leading-display) var(--font-display);letter-spacing:-.03em;text-wrap:pretty}.project-story .story-outcome{max-width:var(--story-reading);font:400 var(--text-body)/var(--leading-reading) var(--font-body);color:var(--color-heading);text-wrap:pretty}.project-story .story-intro{max-width:var(--story-reading);margin-bottom:var(--space-12)}:is(.project-story,.blog-story) .rich-text{font-size:var(--text-body);line-height:var(--leading-reading)}:is(.project-story,.blog-story) .rich-text>*+*{margin-top:var(--space-6)}:is(.project-story,.blog-story) h2{font-size:var(--text-h2);line-height:var(--leading-tight);letter-spacing:-.015em}:is(.project-story,.blog-story) .rich-text h2{margin-top:var(--space-12)}:is(.project-story,.blog-story) .rich-text h3{font-size:var(--text-h3);line-height:var(--leading-tight);margin-top:var(--space-8)}:is(.project-story,.blog-story) .rich-text>:first-child{margin-top:0}:is(.project-story,.blog-story) .rich-text strong{font-weight:500}.project-story .project-overview{margin:0 0 var(--space-section)}.project-story .project-facts{gap:var(--space-6) var(--space-8)}.project-story .project-facts dt{margin-bottom:var(--space-2);font:400 var(--text-caption)/1.5 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted-2,var(--color-muted))}.project-story .overview-text{gap:var(--space-12)}.project-story .overview-text h2,.project-story .story-text>h2,.project-story .gallery-introduction h2{margin-bottom:var(--space-4)}.project-story .story-sections{gap:var(--space-section)}.project-story .gallery-media{gap:var(--space-6)}.blog-story .story-heading{max-width:none;margin-bottom:var(--space-8)}.blog-story .story-heading h1{max-width:none;font-size:var(--text-page-title);line-height:var(--leading-tight);letter-spacing:-.025em;margin-bottom:var(--space-6);text-wrap:pretty}.blog-story .post-byline{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-top:0;font:400 var(--text-caption)/1.5 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted-2,var(--color-muted))}.blog-story .post-body{max-width:var(--story-reading);margin-top:var(--space-12)}.blog-story .post-author{max-width:none;margin-top:var(--space-12);padding:var(--space-6) 0 0;border-top:1px solid var(--color-border-subtle)}.blog-story .post-author-name{font:var(--weight-display) var(--text-h3)/var(--leading-tight) var(--font-display);color:var(--color-heading)}.blog-story .post-author-bio{margin-top:var(--space-2);font:400 var(--text-control)/1.6 var(--font-body)}.blog-story .post-author-links{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-top:var(--space-4)}.blog-story .post-author-links a{display:inline-flex;align-items:center;min-height:44px;font:400 var(--text-small)/1.5 var(--font-body);color:var(--color-heading);text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:7px}.blog-story .post-author-links a:hover{color:var(--color-white);text-decoration-color:var(--color-identity)}.blog-story .recommendations{margin-top:var(--space-section)}.blog-story .recommendation-cards{gap:var(--space-6)}:is(.project-story,.blog-story) .media-frame{position:relative;width:100%;aspect-ratio:var(--media-ratio,1.777778);overflow:hidden;border-radius:var(--radius-card);background:var(--color-surface)}:is(.project-story,.blog-story) .media-frame:has(iframe):focus-within{outline:2px solid var(--color-identity);outline-offset:4px}:is(.project-story,.blog-story) .media-frame-embed-video{min-height:200px}:is(.project-story,.blog-story) .embed-consent{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-6);text-align:center}:is(.project-story,.blog-story) .embed-consent p{max-width:42ch;font:400 var(--text-small)/1.5 var(--font-body);color:var(--color-muted)}:is(.project-story,.blog-story) .embed-consent a{color:var(--color-text);text-decoration:underline;text-underline-offset:3px}:is(.project-story,.blog-story) .media-frame:has(img){background:transparent}:is(.project-story,.blog-story) .media-frame>picture{display:contents}:is(.project-story,.blog-story) .media-frame :is(img,video,iframe){position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;min-height:0;aspect-ratio:auto;object-fit:cover;border-radius:0}:is(.project-story,.blog-story) .media-frame-natural :is(img,video){position:static;height:auto;object-fit:contain}:is(.project-story,.blog-story) .media-frame-natural :is(img,video){aspect-ratio:auto var(--media-ratio)}:is(.project-story,.blog-story) .cms-media-document .media-frame{aspect-ratio:auto;height:min(80vh,900px);min-height:360px}:is(.project-story,.blog-story) .cms-media-document-wide .media-frame{aspect-ratio:16/9;height:auto;min-height:0}.project-story .gallery-media{display:flex;flex-direction:column;align-items:stretch}.project-story .gallery-row{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr);gap:var(--space-6);align-items:start}.project-story .gallery-row-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.project-story .gallery-row>.cms-media,.project-story .gallery-row>.cms-media:last-child:nth-child(odd){grid-column:auto}@media(max-width:809px){.project-story .story-hero{margin-bottom:var(--space-12)}.project-story .story-frame{margin:var(--space-8) 0 var(--space-8)}.project-story .story-outcome{font-size:var(--text-body)}.blog-story .story-heading h1{font-size:var(--text-page-title);line-height:var(--leading-tight)}:is(.project-story,.blog-story) .rich-text{font-size:var(--text-body);line-height:var(--leading-reading)}:is(.project-story,.blog-story) h2{font-size:var(--text-h2)}:is(.project-story,.blog-story) .rich-text h3{font-size:var(--text-h3)}.project-story .project-overview{margin:0 0 var(--space-section-sm)}.project-story .story-sections{gap:var(--space-section-sm)}.project-story .gallery-media{gap:var(--space-6)}.project-story .gallery-row{gap:var(--space-4)}.project-story .gallery-row-mobile-stack{grid-template-columns:minmax(0,1fr)}:is(.project-story,.blog-story) .media-frame{aspect-ratio:var(--media-mobile-ratio,var(--media-ratio,1.777778))}:is(.project-story,.blog-story) .media-frame :is(img,video){position:absolute;height:100%;aspect-ratio:auto;object-fit:cover}:is(.project-story,.blog-story) .media-frame-mobile-natural :is(img,video){position:static;height:auto;object-fit:contain}:is(.project-story,.blog-story) .media-frame-mobile-natural :is(img,video){aspect-ratio:auto var(--media-mobile-ratio)}.blog-story .post-body{margin-top:var(--space-8)}.blog-story .post-author{margin-top:var(--space-12)}.blog-story .recommendation-cards{gap:var(--space-6) var(--space-4)}}@media(max-width:440px){.blog-story .story-heading h1{font-size:var(--text-page-title);line-height:var(--leading-tight);letter-spacing:-.02em}}
