.project-story .story-intro{padding-bottom:20px}.project-story .story-intro .story-meta{font-size:12px;margin-top:22px;color:var(--accent)}.project-story .story-photo{max-width:560px;margin-inline:auto}.project-story .story-index{display:flex;flex-wrap:wrap;gap:6px 24px;padding-block:12px;border-block:1px solid var(--line)}.project-story .story-index a{display:inline-flex;align-items:center;min-height:44px;padding-block:10px;font-size:14px;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}.project-story .story-content{padding-top:12px}.project-story .story-content>h2:not(:first-child){margin-top:60px}.project-story .story-media{min-width:0;margin:32px 0}.project-story .story-media>.eyebrow{margin:0 0 12px;color:var(--accent);font-size:11px}.project-story .story-media .case-image{border-radius:16px}.project-story .story-media .case-image img{width:100%;height:auto}.project-story .story-media figcaption{color:var(--muted);font-size:13px;line-height:1.65;margin-top:12px}.project-story .story-video video{display:block;width:100%;height:auto;aspect-ratio:1560/584;object-fit:contain;background:#0c0e13;border:1px solid var(--line);border-radius:16px}.project-story .story-video-player{position:relative}.project-story .story-video-player[hidden],.project-story .story-video-start[hidden]{display:none}.project-story .story-video-start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max-content;max-width:calc(100% - 32px);min-height:48px;gap:12px;white-space:normal;cursor:pointer;box-shadow:0 4px 24px #0006}.project-story .story-video-start:hover{transform:translate(-50%,-50%)}.project-story .story-video video:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.project-story .story-video-poster{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:16px}.project-story .story-video-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px;font-size:13px}.project-story .story-video-links a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px}.project-story .photo-comparison{margin-block:32px 44px}.project-story .comparison-area{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.project-story .comparison-area h3{display:flex;align-items:baseline;gap:14px;margin:0 0 20px}.project-story .comparison-area h3>span{color:var(--accent);font:12px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:0}.project-story .comparison-switch{position:relative;display:grid;grid-template-columns:120px 120px minmax(0,1fr);min-width:0;padding:0;margin:0;border:0}.project-story .comparison-label{display:grid;place-items:center;min-height:46px;padding:8px 20px;border:1px solid var(--line);color:var(--muted);background:var(--surface);font-size:14px;font-weight:600;cursor:pointer}.project-story .comparison-label-before{border-radius:10px 0 0 10px}.project-story .comparison-label-after{border-radius:0 10px 10px 0}.project-story .comparison-label:hover{color:var(--text);border-color:var(--accent)}.project-story .comparison-radio:checked+.comparison-label{color:var(--bg);background:var(--accent);border-color:var(--accent)}.project-story .comparison-radio:focus-visible+.comparison-label{position:relative;outline:3px solid var(--accent);outline-offset:4px;z-index:1}.project-story .comparison-versions{display:grid;grid-column:1/-1;margin-top:16px;min-width:0}.project-story .comparison-version{grid-area:1/1;min-width:0;visibility:hidden}.project-story .comparison-radio[value=before]:checked~.comparison-versions .comparison-version-before,.project-story .comparison-radio[value=after]:checked~.comparison-versions .comparison-version-after{visibility:visible}.project-story .comparison-version .story-media{margin:0}.project-story .comparison-version .case-image{background:var(--surface);cursor:zoom-in}.project-story .comparison-explanation{margin:16px 0 0;font-size:16px;line-height:1.75}.project-story .comparison-note,.project-story .comparison-source{margin:12px 0 0;font-size:13px;line-height:1.65}.project-story .comparison-source{padding-top:24px;margin-top:28px;border-top:1px solid var(--line)}.project-story .comparison-source a{display:inline-block;padding-block:8px}.project-story .comparison-lightbox:not([open]){display:none}.project-story .comparison-lightbox{position:fixed;inset:0;width:min(1320px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:16px;overflow:auto;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:16px}.project-story .comparison-lightbox::backdrop{background:#0c0e13cc}.project-story .comparison-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.project-story .comparison-lightbox-header p{margin:0;color:var(--text);font-size:16px;line-height:1.4}.project-story .comparison-close{flex:0 0 44px;height:44px;border:0;border-radius:50%;color:var(--accent);background:0 0;font-size:28px}.project-story .comparison-close:hover{background:var(--raised)}.project-story .comparison-lightbox-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin:8px 0 16px;font-size:14px}.project-story .comparison-zoom{min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:10px;color:var(--accent);background:var(--raised)}.project-story .comparison-original{padding-block:10px}.project-story .comparison-lightbox-viewport{max-height:calc(100dvh - 200px);overflow:auto;overscroll-behavior:contain;background:var(--bg)}.project-story .comparison-lightbox-viewport:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.project-story .comparison-lightbox-viewport img{width:auto;height:auto;max-height:calc(100dvh - 200px);margin-inline:auto}.project-story .is-zoomed .comparison-lightbox-viewport img{max-width:none;max-height:none;margin:0}@media(max-width:599px){.project-story .comparison-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.project-story .comparison-area h3{font-size:22px}}@media print{.project-story .comparison-switch{display:block}.project-story .comparison-label,.project-story .comparison-lightbox{display:none}.project-story .comparison-version{visibility:visible;grid-area:auto}.project-story .comparison-version::before{content:attr(data-image-title)}}.project-story .story-devices{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:28px;margin-block:32px}.project-story .story-devices .story-media{margin:0}.project-story .story-devices .story-media:last-child{width:min(100%,280px);justify-self:center}.project-story .career-section>summary{min-height:64px}.project-story .career-section-title{color:var(--text);font-size:17px;font-weight:500}.project-story .career-section-meta{flex-shrink:0}.project-story .career-section-content p{font-size:16px;line-height:1.8}.project-story .career-section-content p:first-child{margin-top:18px}.project-story .career-section-content p:last-child{margin-bottom:0}.project-story .story-newsletter{border-top:1px solid var(--line)}.project-story .story-newsletter>.eyebrow{margin-bottom:16px}.project-story .story-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px 30px}.project-story .story-actions .button-primary{min-height:48px}.project-story .story-actions .text-link{min-height:44px;padding-block:10px}.project-story .story-newsletter .newsletter-signup{margin-bottom:24px}.project-story .story-content>ul{padding-left:22px;margin-block:24px 28px}.project-story .story-content>ul>li+li{margin-top:18px}.project-story .career-section-content .wananga-architecture{margin-top:20px;margin-bottom:24px}.project-story .career-section-content .architecture-area h3{border-top:0;padding-top:0}.project-story .wananga-overview{margin:32px 0}.project-story .wananga-overview>figcaption{color:var(--text);font-size:23px;font-weight:500}.project-story .wananga-overview .overview-caption{margin:8px 0 24px;font-size:16px}.project-story .overview-hub{position:relative;max-width:360px;margin:0 auto 24px;padding:20px 24px;border:1px solid var(--accent);border-radius:16px;background:var(--surface);text-align:center}.project-story .overview-hub strong{display:block;font-size:22px}.project-story .overview-hub>span{display:block;margin-top:4px;color:var(--muted);font-size:15px}.project-story .overview-hub::after{content:'';position:absolute;left:50%;top:100%;height:24px;border-left:1px solid var(--line)}.project-story .overview-areas{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;list-style:none;padding:0 0 0 18px;margin:0}.project-story .overview-areas::before{content:'';position:absolute;left:0;top:0;bottom:0;width:50%;border-top:1px solid var(--line);border-left:1px solid var(--line);pointer-events:none}.project-story .overview-areas>li{position:relative;min-width:0;margin:0}.project-story .overview-areas>li+li{margin-top:0}.project-story .overview-areas>li::before{content:'';position:absolute;top:28px;right:100%;width:18px;border-top:1px solid var(--line)}.project-story .overview-areas a{position:relative;display:block;height:100%;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-decoration:none}.project-story .overview-areas a:hover{border-color:var(--accent)}.project-story .overview-areas h3{margin:0 0 10px;font-size:20px;line-height:1.3;letter-spacing:-.025em;text-wrap:initial}.project-story .overview-areas h3>span{color:var(--accent)}.project-story .overview-areas p{margin:0 0 14px;font-size:16px;line-height:1.65}.project-story .overview-tools{display:block;color:var(--muted);font-size:13px;line-height:1.65}.project-story .wananga-architecture{margin:36px 0 44px}.project-story .wananga-architecture>figcaption{color:var(--text);font-size:21px;line-height:1.4;letter-spacing:-.025em}.project-story .wananga-architecture .architecture-caption{margin:12px 0 24px;font-size:14px;line-height:1.7}.project-story .architecture-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.project-story .architecture-area{min-width:0;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.project-story .architecture-area h3{display:flex;align-items:baseline;gap:12px;font-size:20px;line-height:1.3;margin:0 0 22px}.project-story .architecture-area h3>span{color:var(--accent);font:12px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:0}.project-story .architecture-flow{list-style:none;margin:0;padding:0}.project-story .architecture-flow li{margin:0;font-size:14px;line-height:1.6}.project-story .architecture-flow li+li{margin-top:14px}.project-story .architecture-flow strong,.project-story .architecture-node strong{display:block;font-size:15px}.project-story .architecture-flow li>span,.project-story .architecture-node>span{display:block;font-size:13px;line-height:1.6;color:var(--muted)}.project-story .architecture-transfer{margin-bottom:6px}.project-story .architecture-transfer>span{color:var(--accent);margin-right:5px}.project-story .architecture-node{min-width:0}.project-story .architecture-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;padding-top:8px;border-top:1px solid var(--line)}.project-story .architecture-return,.project-story .architecture-note{margin:22px 0 0;padding:16px;font-size:14px;line-height:1.7;border:1px solid var(--line);border-radius:10px}.project-story .architecture-note p{margin:8px 0 0;font-size:14px;line-height:1.7}.project-story .architecture-tools{margin:0}.project-story .architecture-tools>div+div{border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.project-story .architecture-tools dt{color:var(--text);font-size:15px;font-weight:600}.project-story .architecture-tools dd{color:var(--muted);font-size:13px;line-height:1.7;margin:4px 0 0}.project-story .wananga-architecture .architecture-foundation{margin:18px 0 0;padding:18px 0;border-block:1px solid var(--line);font-size:14px;line-height:1.7}@media(min-width:760px){.project-story .architecture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-story .overview-areas{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;padding:24px 0 0}.project-story .overview-areas::before{left:50%;top:0;width:0}.project-story .overview-areas>li::before{top:28px;width:16px}.project-story .overview-areas>li:nth-child(odd)::before{right:auto;left:100%}}@media(min-width:700px){.project-story .story-devices{grid-template-columns:minmax(0,2.2fr)minmax(0,1fr);gap:24px}}@media(max-width:699px){.project-story .story-video video{aspect-ratio:768/1192}}@media(max-width:480px){.project-story .architecture-area{padding:20px}.project-story .architecture-branches{grid-template-columns:minmax(0,1fr)}.project-story .career-section>summary{display:grid;grid-template-columns:minmax(0,1fr)auto;gap:4px 12px;padding:18px}.project-story .career-section-meta{grid-column:1;margin-left:0;font-size:11px}.project-story .career-section-toggle{grid-column:2;grid-row:1/3}.project-story .career-section-content{padding:0 18px 20px}.project-story .story-content>h2:not(:first-child){margin-top:44px}}