@font-face{font-family:Manrope;src:url("assets/fonts/manrope.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
:root{--paper:#fafafa;--ink:#202020;--muted:#595959;--line:#c6c6c6;--fill:#e7e7e7;--space:clamp(4rem,8vw,8rem);font-family:Manrope,"Helvetica Neue",Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:1rem;line-height:1.6}a{color:inherit;text-underline-offset:.3em}a:hover{text-decoration-thickness:2px}a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid #202020;outline-offset:5px;background:#fff;color:#111}section,article,[id]{scroll-margin-top:2rem}main:focus{outline:none}.wrap{width:min(100% - 6rem,1280px);margin-inline:auto;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#20202009 calc(25% - 1px),#20202009 25%)}.prototype{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 3rem;background:#242424;color:#fff;font-size:.75rem;letter-spacing:.04em}.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:2rem;border-bottom:1px solid var(--ink)}.identity{font-size:1.2rem;font-weight:700;text-decoration:none}.identity span{display:block;font-size:.75rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase}.header nav{display:flex;gap:2rem;flex-wrap:wrap}.header nav a{font-size:.875rem;text-decoration:none;padding:.65rem 0}.skip-link{position:fixed;top:1rem;left:1rem;transform:translateY(-180%);padding:1rem;z-index:10;background:white}.skip-link:focus{transform:none}.eyebrow,figcaption,.tag{font-size:.75rem;letter-spacing:.075em;text-transform:uppercase}.eyebrow{margin:0 0 2rem;color:var(--muted)}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:1.08;font-weight:400}h1{font-size:clamp(3.2rem,8.2vw,7.8rem);letter-spacing:-.065em;margin-bottom:3.5rem}h1 span{color:#707070}h2{font-size:clamp(2rem,4vw,3.8rem);letter-spacing:-.045em;margin-bottom:2rem}h3{font-size:1.3rem;letter-spacing:-.025em;margin-bottom:.8rem}p{margin-bottom:1.3rem;max-width:65ch}.lead{font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.45;letter-spacing:-.015em}.hero{padding-top:3rem}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding-bottom:2rem}.role{font-size:.875rem}.text-link{display:inline-flex;gap:2.5rem;align-items:center;font-size:.9rem;padding-block:.7rem}.section{padding-block:var(--space);border-top:1px solid var(--line)}.split,.project-copy{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.intro{margin-top:3rem;padding-bottom:4rem}.project-index{display:grid;margin-top:2rem}.project-index a{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line);font-size:.875rem;text-decoration:none}.project{padding-block:3rem var(--space);border-top:1px solid var(--line)}.project-head{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.project-head .eyebrow{margin:0}.tag{letter-spacing:.025em;text-align:right}figure{margin:0}.placeholder{background:linear-gradient(to bottom right,transparent calc(50% - .5px),#bcbcbc 50%,transparent calc(50% + .5px)),linear-gradient(to top right,transparent calc(50% - .5px),#bcbcbc 50%,transparent calc(50% + .5px)),var(--fill);border:1px solid #b6b6b6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1rem;padding:2rem;color:#4d4d4d;min-width:0}.placeholder strong{font-size:clamp(1.5rem,3.2vw,3rem);font-weight:400;line-height:1.15;letter-spacing:-.03em;background:var(--fill);padding:.3rem .6rem}.placeholder span{font-size:.75rem;background:var(--fill);padding:.2rem .4rem}.wide{aspect-ratio:16/9}.portrait{aspect-ratio:4/5}.square{aspect-ratio:1}.cinema{aspect-ratio:21/9}.small{aspect-ratio:3/2}.book-spread{aspect-ratio:4/3}figcaption{margin-top:.75rem;color:var(--muted);letter-spacing:.03em}.project-copy{margin-top:2.5rem}.research-layout{display:grid;grid-template-columns:4fr 6fr;align-items:center;gap:8%}.research-layout h2{font-size:clamp(2rem,3.6vw,3.4rem)}.film-section{background:#dedede;padding-block:4rem var(--space)}.film-section .wrap{background-image:none}.film-section h2{margin-bottom:2.5rem}.app-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.facts{font-size:.875rem;margin:2rem 0}.facts div{display:grid;grid-template-columns:5rem 1fr;border-top:1px solid var(--line);padding:.6rem 0}.facts dt{color:var(--muted)}dd{margin:0}.project-details{border-block:1px solid #999;margin-block:1.5rem;font-size:.9rem}summary{cursor:pointer;padding:1rem 0;min-height:44px}.project-details p{margin:0 0 1rem}.note{margin-top:2rem;color:var(--muted);font-size:.8125rem;border-top:1px dashed #aaa}.note summary{padding:.65rem 0}.note p{max-width:90ch;padding-bottom:.5rem}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin-top:2rem}.work-grid h3{margin-top:1.25rem}.work-grid p{font-size:.9rem}.competency-list>div{border-top:1px solid var(--line);padding:1.5rem 0}.competency-list p{margin:0;color:var(--muted)}.process{background:#eeeeee}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;list-style:none;padding:0;margin:3rem 0 0}.steps li{border-top:1px solid #999;padding-top:1rem}.steps .eyebrow{display:block;margin-bottom:2rem}.steps p{font-size:.9rem}.about-layout{display:grid;grid-template-columns:4fr 6fr;gap:12%;align-items:center}.book .split{align-items:center}.book blockquote{margin:0 0 1rem}.contact h2{font-size:clamp(2.8rem,7vw,6.5rem);margin-bottom:3rem}.contact-bottom{display:flex;justify-content:space-between;gap:2rem}.pending{border-bottom:1px dashed #888;padding-bottom:1rem}.pending span{font-size:.8125rem;color:var(--muted)}.footer{border-top:1px solid var(--ink);padding-block:1.5rem;display:flex;justify-content:space-between;gap:2rem;font-size:.75rem}.footer a{padding:.5rem 0}article,section,div{min-width:0}h2,h3,p,a,summary,dd{overflow-wrap:break-word}
@media(min-width:1500px){.hero{padding-top:4rem}}
@media(max-width:900px){.wrap{width:calc(100% - 3rem)}.prototype{padding-inline:1.5rem}.header nav{gap:1rem}.split,.project-copy{gap:2rem}.research-layout,.app-layout,.about-layout{gap:2rem}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid{gap:1rem}.placeholder{padding:1rem}.tag{max-width:45%}}
@media(max-width:600px){.wrap{width:calc(100% - 2.5rem);background-size:200% 100%}.prototype{padding:.65rem 1.25rem;display:block}.prototype span{display:block}.prototype span+span{margin-top:.15rem;color:#ccc}.header{display:block;padding-block:1.25rem}.header nav{margin-top:1.25rem;justify-content:space-between;gap:.5rem}.header nav a{font-size:.8125rem}.hero{padding-top:2rem}h1{font-size:clamp(2.8rem,11vw,4rem);margin-bottom:2.5rem}.hero-bottom,.split,.project-copy,.research-layout,.app-layout,.about-layout{grid-template-columns:1fr;gap:1.5rem}.hero-bottom .role{margin-bottom:0}.intro{margin-top:1rem}.project-head{display:block}.tag{display:block;max-width:none;text-align:left;margin-top:.5rem}.project-head .eyebrow{margin-bottom:.5rem}.research-layout figure{margin-top:.5rem}.portrait{aspect-ratio:4/5;max-width:100%}.cinema{aspect-ratio:16/9}.placeholder{gap:.4rem}.placeholder strong{font-size:1.7rem}.placeholder span{font-size:.75rem}.work-grid{grid-template-columns:1fr;gap:2rem}.work-grid .small{aspect-ratio:16/9}.steps{grid-template-columns:1fr;gap:1rem}.steps .eyebrow{margin-bottom:1rem}.about-layout figure{max-width:80%;margin-bottom:1rem}.contact-bottom,.footer{flex-direction:column;gap:1rem}.project{padding-bottom:4rem}.film-section{padding-block:3rem}.book .split figure{margin-top:1rem}.eyebrow{margin-bottom:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.placeholder{border:1px solid CanvasText}.note{color:CanvasText}a:focus-visible,summary:focus-visible{outline:3px solid Highlight}}
@media print{.prototype,.note,.skip-link{display:none}html{scroll-behavior:auto}.wrap{width:100%;background:none}.section,.project,.film-section{padding-block:2rem}.placeholder{break-inside:avoid}.header nav{display:none}body{font-size:11pt}}

/* Wealthcap: original landscape publications, layout revision 1.1 */
.research-intro{align-items:start;margin-bottom:2rem}.research-feature{margin-top:1rem}.research-feature img,.research-examples img{display:block;width:100%;height:auto;border:1px solid var(--line);background:#fff}.research-image-link{display:block}.research-examples{margin-top:2rem}.research-examples .project-details{font-size:1rem}.research-examples summary{font-weight:600}.research-examples figure{margin-top:1.5rem}.research-examples .project-details p{max-width:70ch}.research-examples figcaption{margin-top:.75rem}.research-feature .text-link{margin-top:.25rem}
/* Native original-page dialog: Escape and focus containment supplied by browser. */
.research-disclaimer{font-size:.8125rem;color:var(--muted);max-width:95ch;margin-top:1rem}
.original-open{overflow:hidden}#original-dialog{width:calc(100% - 2rem);max-width:1600px;max-height:calc(100dvh - 2rem);padding:0;border:1px solid #888;background:#fafafa;color:#202020}#original-dialog::backdrop{background:rgb(0 0 0 / .7)}#original-dialog[open]{display:flex;flex-direction:column}.original-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid #bbb;flex-shrink:0}.original-toolbar h2{font-size:1rem;letter-spacing:0;line-height:1.4;margin:0}.original-actions{display:flex;gap:.75rem;flex-shrink:0}.original-actions form{margin:0}.dialog-close{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;border:1px solid #555;border-radius:50%;background:white;color:#202020;font:inherit;font-size:1.5rem;line-height:1;cursor:pointer}.dialog-close:hover{background:#e7e7e7}button:focus-visible,.original-viewport:focus-visible{outline:3px solid #202020;outline-offset:-4px}.original-viewport{overflow:auto;min-height:0;padding:1rem;overscroll-behavior:contain}.original-viewport img{display:block;width:100%;height:auto}
@media(max-width:600px){.original-toolbar{align-items:center;padding:.75rem}.original-toolbar h2{font-size:.875rem}.original-actions{width:auto}.original-viewport{padding:.5rem}#original-dialog{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}}
.film-preview{position:relative;display:block;background:#111}.film-preview img{display:block;width:100%;height:auto}.film-play{position:absolute;bottom:1.5rem;left:1.5rem;display:flex;align-items:center;gap:1rem;padding:.9rem 1.25rem;background:#fff;color:#202020;font-size:1rem;border:1px solid #202020}.film-preview:hover .film-play{background:#e7e7e7}#film-dialog{width:calc(100% - 2rem);max-width:1400px;max-height:calc(100dvh - 2rem);padding:0;border:1px solid #888;background:#fafafa;color:#202020}#film-dialog::backdrop{background:rgb(0 0 0 / .8)}#film-dialog[open]{display:flex;flex-direction:column}.film-player{min-height:0;overflow:auto;background:#111}.film-player video{display:block;width:100%;max-height:calc(100dvh - 9rem);aspect-ratio:16/9;object-fit:contain}.film-player video:focus-visible{outline:3px solid white;outline-offset:-4px}@media(max-width:600px){.film-play{bottom:.75rem;left:.75rem;font-size:.875rem;padding:.65rem .9rem}#film-dialog{width:calc(100% - 1rem)}}

.pfotenpass-preview img{display:block;width:100%;height:auto}.pfotenpass-preview>a:first-child{display:block;background:#f5f5fa}.pfotenpass-preview figcaption{line-height:1.6}#pfotenpass .app-layout{grid-template-columns:1.25fr 1fr;gap:5%}@media(max-width:900px){#pfotenpass .app-layout{grid-template-columns:1fr;gap:2rem}.pfotenpass-preview{max-width:760px}}

/* Pfotenpass key visual: photographic POV scene with a separate HTML logo overlay. */
.pfotenpass-keyvisual-frame{position:relative;overflow:hidden;background:#e6e4e1}
.pfotenpass-keyvisual .pfotenpass-pov-image{display:block;width:100%;height:auto;max-width:none}
.pfotenpass-keyvisual-frame>.pfotenpass-keyvisual-logo{position:absolute;z-index:1;right:clamp(.8rem,3vw,2.5rem);bottom:clamp(.8rem,3vw,2.5rem);width:20%;min-width:7rem;max-width:17rem;height:auto;filter:drop-shadow(0 3px 10px rgb(0 0 0 / .55));pointer-events:none}
@media(max-width:600px){.pfotenpass-keyvisual-frame>.pfotenpass-keyvisual-logo{width:28%;min-width:5rem;right:.75rem;bottom:.75rem}}

.brand-feature img,.brand-system img{display:block;width:100%;height:auto}.brand-feature>a:first-child,.brand-system figure a{display:block}.brand-system{margin-top:2.5rem;font-size:1rem}.brand-system-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-block:2rem}.brand-system-grid .brand-application{grid-column:1 / -1}.brand-system figcaption{line-height:1.6}@media(max-width:600px){.brand-system-grid{grid-template-columns:1fr;gap:1.5rem}}
.brand-book-download{margin:0 0 2rem}

.professional-image{display:flex;align-items:center;background:#fff;aspect-ratio:3/2}.professional-image img{display:block;width:100%;height:100%;object-fit:contain}.work-grid .professional-category{margin:1.25rem 0 .75rem;font-size:.75rem;line-height:1.5}.work-grid .professional-category+h3{margin-top:0}.work-grid .project-details p{font-size:.875rem}.work-grid .text-link{gap:.75rem}

.about-portrait{aspect-ratio:4/5;overflow:hidden;background:#e7e7e7}.about-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:70% 50%}@media(max-width:600px){.about-layout .about-portrait{max-width:100%;width:min(100%,440px)}}

/* Readable manuscript preview, not a simulated finished book. */
.book-preview{background:#efefef;border:1px solid var(--line);padding:clamp(1.5rem,3vw,3rem);min-height:24rem;display:flex;flex-direction:column;justify-content:space-between}.book-preview-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;border-bottom:1px solid #aaa;padding-bottom:1rem;margin-bottom:3rem}.book-preview .eyebrow{margin-bottom:1.5rem}.book .book-preview blockquote{font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.035em;margin:0 0 3rem}.book-preview blockquote span{color:#595959}.book-preview-caption{font-size:.75rem;color:var(--muted);margin:0}.book-insight{margin-top:3rem;font-size:1rem}.book-insight>summary{font-weight:600}.book-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;padding-block:2rem}.book-insight-grid .eyebrow{margin-bottom:1rem}.book-insight-grid h3{line-height:1.25}.book-insight-grid p{line-height:1.65}.book-closing{border-top:1px solid var(--line);padding-top:2rem;margin-bottom:2rem}.book-closing p{font-size:clamp(1.15rem,2vw,1.5rem);max-width:60ch}.book-closing span,.book-status{font-size:.8125rem;color:var(--muted)}@media(max-width:900px){.book-insight-grid{grid-template-columns:1fr;gap:1.5rem}.book-insight-grid>div+div{border-top:1px solid var(--line);padding-top:1.5rem}}@media(max-width:600px){.book-preview{min-height:22rem}.book-preview-meta{flex-wrap:wrap}}

.contact-links{font-style:normal;display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}.contact-links a{display:inline-flex;align-items:center;gap:1.5rem;min-height:44px;padding:.5rem 0;font-size:clamp(1rem,2vw,1.35rem);overflow-wrap:anywhere}

/* Design direction 2.0 — quiet gallery, petrol accents, editorial quotations. */
:root{--paper:#fff;--ink:#232829;--muted:#586164;--line:#d9dfdf;--fill:#edf1f1;--accent:#185c63;font-family:Manrope,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.wrap{background-image:none}
.prototype{background:#edf3f3;color:var(--accent);letter-spacing:.045em}
.header{border-bottom:1px solid var(--line);padding-block:1.8rem}
.identity{font-weight:600;letter-spacing:-.035em}.identity span{font-weight:400;letter-spacing:.11em;margin-top:.25rem;color:var(--muted)}
.header nav a{position:relative;font-weight:500;transition:color .15s ease}.header nav a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.6rem}
h1{font-weight:400;letter-spacing:-.065em;line-height:1.02}h1 span{color:var(--accent)}
h2{font-weight:400;letter-spacing:-.045em;line-height:1.12}h3{font-weight:500;line-height:1.2}
.lead{font-weight:400;line-height:1.5}.eyebrow{color:var(--accent);letter-spacing:.11em;font-weight:500}.role{color:var(--muted);line-height:1.65}
.text-link{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.35em}.text-link:hover{text-decoration-thickness:2px}
.tag{border:1px solid var(--line);padding:.35rem .65rem;font-size:.75rem;color:var(--muted)}
.project-index a{color:var(--ink)}.project-index a:hover{color:var(--accent)}.project-index a span{color:var(--accent)}
.film-section{background:#edf2f2}.film-play{border:0;background:#fff;color:var(--accent);font-weight:500}.film-preview:hover .film-play{background:#e6efef}
.film-intro{align-items:start;margin-bottom:2rem}.film-details{width:calc(50% - 2rem);margin-left:auto}
@media(max-width:900px){.film-details{width:calc(50% - 1rem)}}
@media(max-width:600px){.film-details{width:100%;margin-left:0}}
.process{background:#f3f6f6}.steps li{border-top:1px solid #adc3c5}.steps .eyebrow{color:var(--accent)}
.competency-list h3{font-weight:500}.competency-list p{color:var(--muted)}
.note{border-top:1px solid #e2e7e7;color:#626b6d}.note summary{font-size:.75rem;letter-spacing:.015em}.note p{line-height:1.65}
.project-details{border-color:var(--line)}.project-details>summary{color:var(--accent)}.project-details>summary:hover{text-decoration:underline;text-underline-offset:.3em}
.book-preview{background:#edf3f3;border:0;padding:clamp(1.75rem,4vw,3.5rem)}.book-preview-meta{border-color:#bbcecf;color:var(--accent)}
.book .book-preview blockquote{font-family:inherit;font-size:clamp(1.9rem,3.2vw,3.2rem);font-weight:400;line-height:1.18;letter-spacing:-.04em}.book-preview blockquote span{color:var(--accent);font-style:normal}
.book-closing p{font-family:inherit;line-height:1.5;font-size:clamp(1.3rem,2.2vw,1.8rem);letter-spacing:-.02em}
.contact{padding-top:clamp(5rem,10vw,10rem)}.contact h2{color:var(--accent)}.contact-links a{color:var(--accent);text-decoration-thickness:1px}.footer{border-color:var(--line);color:var(--muted)}
a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px;background:#fff;color:var(--accent)}
.dialog-close{border-color:var(--accent);color:var(--accent)}.dialog-close:hover{background:#edf3f3}
@media(max-width:600px){.prototype span+span{color:#426c70}.header{padding-block:1.25rem}.tag{display:inline-block}.book-preview-meta{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.header nav a{transition:none}}

/* Personal annotation: one quiet drawn line within the sans-serif typography. */
.hand-mark{position:relative;display:inline-block;white-space:nowrap;padding-bottom:calc(.22em + 3px)}.hand-mark svg{position:absolute;left:-1%;bottom:0;width:102%;height:.22em;overflow:visible;fill:none;stroke:currentColor;stroke-width:5;stroke-linecap:round}

/* Underline trial across the page; same petrol accent and relative stroke. */
.hand-mark{color:var(--accent);font-weight:700}

/* Image presentation: full originals, restrained framing and consistent captions. */
.brand-feature>a:first-child,.film-preview{overflow:hidden}
.brand-feature figcaption,.film-section figcaption,.pfotenpass-preview figcaption,.research-feature figcaption{line-height:1.65;margin-top:1rem;max-width:95ch}
.veloris-keyvisual-frame{position:relative;overflow:hidden;background:#272a2e}
.veloris-keyvisual-frame>.veloris-keyvisual-image{display:block;width:100%;height:auto}
.veloris-keyvisual-frame>.veloris-keyvisual-logo{position:absolute;z-index:1;right:clamp(.8rem,3vw,2.5rem);bottom:clamp(.8rem,3vw,2.5rem);width:clamp(7.65rem,25.2%,18.9rem);height:auto;filter:drop-shadow(0 2px 6px rgb(0 0 0 / .45));pointer-events:none}
.research-image-link{padding:0;background:transparent;border:0}
.research-feature .research-image-link img{border:0}
.pfotenpass-preview>a:first-child{padding:clamp(.75rem,2vw,1.5rem);border:1px solid #e2e4eb}
.professional-image{border:1px solid var(--line);padding:clamp(.75rem,1.5vw,1.25rem);aspect-ratio:3/2}
.work-grid>article{display:flex;flex-direction:column}
.work-grid>article>.project-details{margin-top:auto}
#veloris-brand{border-top:0}
@media(max-width:600px){.professional-image{padding:1rem}}

/* Manrope trial: more open headline spacing. */
h1{letter-spacing:-.035em}
h2{letter-spacing:-.025em}
h3{letter-spacing:-.01em}
