/* Portfolio discovery, case studies and enquiry tools. */
[hidden]{display:none!important}.experience-hero h1{max-width:1000px}.experience-hero .hero-actions{flex-wrap:wrap}.case-study-grid,.proof-grid,.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.case-study-card,.proof-card,.evidence-card,.wizard-panel,.wizard-result,.brief-paper,.architecture,.experience-cta{border:1px solid var(--line);background:var(--glass,var(--surface));border-radius:24px;backdrop-filter:blur(18px)}.case-study-card{overflow:hidden;text-decoration:none;transition:transform .25s,border-color .25s}.case-study-card:hover{transform:translateY(-5px);border-color:var(--accent)}.case-study-card>img{width:100%;height:190px;object-fit:cover;object-position:top}.case-study-card>div,.proof-card,.evidence-card{padding:26px}.case-study-card h3{font-size:24px;line-height:1.2;margin:10px 0}.case-study-card p,.evidence-card p,.proof-card p{color:var(--muted)}.case-study-card span{display:block;margin-top:24px;font-weight:600;color:var(--accent)}.experience-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.case-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:36px}.case-intro p{color:var(--muted);line-height:1.8}.case-image{display:block;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--surface);text-decoration:none}.case-image img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;object-position:top;background:#eef0f5}.case-image span{display:block;padding:20px;font-family:var(--mono-font);font-size:12px}.architecture{display:grid;grid-template-columns:1.15fr 1fr;padding:24px;gap:32px}.architecture-map{display:grid;grid-template-columns:1fr 1fr;gap:16px}.architecture-node{position:relative;display:flex;flex-direction:column;text-align:left;gap:16px;border:1px solid var(--line);border-radius:16px;background:transparent;color:var(--text);padding:24px;min-height:160px;cursor:pointer;transition:background .2s,border-color .2s}.architecture-node span,.architecture-node small{font-family:var(--mono-font);font-size:11px;color:var(--muted)}.architecture-node strong{font-size:19px}.architecture-node[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.architecture-node[aria-pressed=true] span{color:var(--accent)}.architecture-detail{align-self:center;padding:20px}.architecture-detail h3{font-size:32px;line-height:1.2}.architecture-detail p{line-height:1.8;color:var(--muted)}.proof-tick{display:grid;place-items:center;width:30px;height:30px;color:var(--bg,#090b0a);background:var(--accent);border-radius:50%;margin-bottom:24px}.proof-card h3{font-size:20px}.case-workflow{padding-left:24px}.case-workflow li{padding:12px 0 12px 8px;color:var(--muted)}.evidence-footnote{font-size:13px;line-height:1.7;color:var(--muted);margin:24px 0 50px}.experience-cta{display:flex;justify-content:space-between;align-items:center;gap:36px;padding:40px}.experience-cta h2{font-size:clamp(26px,3vw,40px)}.experience-cta p{color:var(--muted)}.evidence-card a{color:var(--accent);display:block;margin-top:10px;font-size:14px}.evidence-card h3{font-size:22px}.evidence-grid{margin-top:50px}.project-search-bar{margin:28px 0}.project-search-bar>label{display:block;font-family:var(--mono-font);text-transform:uppercase;font-size:11px;letter-spacing:.1em;margin-bottom:10px}.project-search-bar>div{display:flex;gap:12px}.project-search-bar input{flex:1;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--glass);padding:18px;color:var(--text);font:inherit}.search-empty{padding:50px;text-align:center;color:var(--muted)}.header-search{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;background:transparent;border:1px solid var(--line);border-radius:12px;color:var(--text);cursor:pointer}.header-search span{font-family:var(--mono-font);font-size:10px}.search-dialog{width:min(700px,calc(100% - 28px));max-height:80dvh;padding:0;border:1px solid var(--line);border-radius:24px;background:var(--bg,#090b0a);color:var(--text);box-shadow:0 30px 100px #0006;overflow:hidden}.search-dialog::backdrop{background:#0009;backdrop-filter:blur(8px)}.search-dialog-head{display:flex;align-items:center;gap:12px;padding:22px;border-bottom:1px solid var(--line)}.search-dialog-head>div{flex:1}.search-dialog label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.search-dialog input{width:100%;border:0;background:transparent;color:var(--text);font:inherit;font-size:22px;outline-offset:6px}.search-dialog button{background:transparent;border:1px solid var(--line);color:var(--text);border-radius:10px;min-width:44px;min-height:44px;cursor:pointer}.search-results{padding:12px;overflow:auto;max-height:55dvh}.search-results>a{display:block;padding:16px;border-radius:14px;text-decoration:none;border:1px solid transparent}.search-results>a:hover,.search-results>a:focus-visible{background:var(--glass);border-color:var(--accent);outline:none}.search-results strong{display:block;font-size:17px}.search-results small{display:block;color:var(--muted);margin-top:7px}.search-results p{padding:15px;color:var(--muted)}.search-dialog-foot{padding:14px 24px;font-size:11px;font-family:var(--mono-font);border-top:1px solid var(--line);color:var(--muted)}.wizard-shell{max-width:980px}.wizard-panel,.wizard-result{padding:clamp(24px,4vw,50px)}.wizard-panel h2,.wizard-result h2{font-size:clamp(28px,4vw,45px)}.wizard-panel>p{color:var(--muted)}.wizard-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0}.wizard-option{border:1px solid var(--line);border-radius:16px;text-align:left;padding:22px;background:transparent;color:var(--text);cursor:pointer;font:inherit}.wizard-option strong{display:block;font-size:18px}.wizard-option small{display:block;color:var(--muted);line-height:1.5;margin-top:8px}.wizard-option[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent)}.wizard-nav{display:flex;justify-content:space-between;gap:12px}.wizard-nav>button:only-child{margin-left:auto}.wizard-note{font-size:12px;margin-top:26px}.wizard-result article{padding:24px 0;border-bottom:1px solid var(--line)}.wizard-result article>p{color:var(--muted)}.wizard-result h3{font-size:23px}.wizard-result .hero-actions{display:flex;flex-wrap:wrap;gap:10px}.wizard-result>p{color:var(--muted);line-height:1.7}.brief-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:36px;align-items:start}.brief-paper{padding:32px;position:sticky;top:110px}.brief-paper h2{font-size:30px}.brief-paper pre,.brief-preview pre{font:14px/1.8 var(--mono-font,monospace);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted)}.brief-paper>p:last-child{font-size:12px;line-height:1.8;color:var(--muted)}.brief-preview{padding:22px;border:1px solid var(--line);border-radius:16px;margin:22px 0}.brief-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.7;color:var(--muted);margin:24px 0}.brief-consent input{width:20px;height:20px;flex-shrink:0;accent-color:var(--accent)}.field-help{font-size:11px;color:var(--muted);line-height:1.6}.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:30px 0}.testimonial-card{border:1px solid var(--line);border-radius:20px;padding:28px;background:var(--glass)}.testimonial-card blockquote{font-size:21px;line-height:1.6;margin:0 0 22px}.testimonial-card p{font-size:13px;color:var(--muted)}.testimonial-card cite{font-style:normal}.project-case-link{color:var(--accent)}.button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:900px){.case-study-grid,.evidence-grid{grid-template-columns:1fr 1fr}.case-study-grid>:last-child{grid-column:1/-1}.architecture{grid-template-columns:1fr}.architecture-detail{min-height:190px}.brief-layout{grid-template-columns:1fr}.brief-paper{position:static}.case-intro{gap:30px}.proof-grid{gap:12px}.proof-card{padding:20px}.header-search span{display:none}}
@media(max-width:600px){.case-study-grid,.evidence-grid,.proof-grid,.case-intro,.testimonial-grid{grid-template-columns:1fr}.case-study-grid>:last-child{grid-column:auto}.architecture{padding:16px;gap:10px}.architecture-map{gap:10px}.architecture-node{padding:16px;min-height:148px}.architecture-node strong{font-size:16px}.architecture-detail{padding:14px}.architecture-detail h3{font-size:27px}.experience-cta{padding:26px;display:block}.experience-cta>.button{margin-top:20px}.wizard-options{grid-template-columns:1fr}.project-search-bar>div{flex-wrap:wrap}.project-search-bar input{flex-basis:100%}.brief-paper{padding:24px}.search-dialog input{font-size:18px}.case-study-card>img{height:180px}}
@media(prefers-reduced-motion:reduce){.case-study-card,.architecture-node{transition:none}.case-study-card:hover{transform:none}}

.architecture-map{position:relative;gap:28px}.architecture-wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.architecture-wires path{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-dasharray:5 6;opacity:.45}.architecture-node{background:var(--surface);z-index:1}.architecture-node[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
