:root{--paper:#f4f4f0;--paper-deep:#e9e9e3;--ink:#151619;--muted:#71736f;--line:rgba(21,22,25,0.14);--line-strong:rgba(21,22,25,0.28);--blue:#1747d1;--blue-light:#c8d6ff;--lime:#d8e64c;--orange:#f19956;--max-width:1440px;--side-space:clamp(1.25rem,4vw,4.5rem);--display:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",sans-serif;--body:"SF Pro Text",-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--blue);color:white}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}.site-shell{overflow:clip}.section-wrap,.site-header{width:min(var(--max-width),calc(100% - (var(--side-space) * 2)));margin-inline:auto}.site-header{min-height:92px;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line)}.availability,.brand,.desktop-nav,.eyebrow-row,.form-bottomline,.header-actions,.header-contact,.hero-actions,.locale-switch,.project-card-topline,.project-footer,.scroll-cue,.site-footer,.site-header,.skill-card-topline,.text-link{display:flex;align-items:center}.brand{gap:.7rem;font-size:.9rem;font-weight:600;letter-spacing:-.02em}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font-size:.68rem;letter-spacing:-.07em}.brand-name{white-space:nowrap}.desktop-nav{gap:clamp(1rem,2.5vw,2.6rem);margin-left:auto;margin-right:clamp(1rem,3vw,3rem)}.desktop-nav a{color:var(--muted);font-size:.75rem;letter-spacing:.03em;transition:color .18s ease}.desktop-nav a:focus-visible,.desktop-nav a:hover{color:var(--ink)}.header-actions{gap:1.5rem}.locale-switch{gap:.3rem;color:var(--muted);font-size:.7rem;letter-spacing:.08em}.locale-switch button{padding:0;border:0;background:transparent;cursor:pointer;color:inherit;font-size:inherit;letter-spacing:inherit}.locale-switch button.active{color:var(--ink);font-weight:700}.header-contact{gap:.45rem;font-size:.75rem;font-weight:600}.arrow-icon{width:15px;height:15px;flex:0 0 auto}.header-contact .arrow-icon{width:12px;height:12px;transition:transform .18s ease}.header-contact:hover .arrow-icon,.site-footer a:hover .arrow-icon,.text-link:hover .arrow-icon{transform:translate(2px,-2px)}.hero-section{min-height:min(790px,calc(100vh - 92px));position:relative;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(390px,.96fr);align-items:center;gap:4rem;padding-top:clamp(4.5rem,11vh,9rem);padding-bottom:clamp(4rem,9vh,7rem)}.hero-copy{max-width:700px;position:relative;z-index:2}.eyebrow-row{gap:.65rem}.eyebrow,.hero-art-note,.project-eyebrow,.scene-label,.section-kicker,.timeline-label,.visual-label{margin:0;text-transform:uppercase;letter-spacing:.15em;font-size:.65rem;font-weight:700}.eyebrow{color:var(--muted)}.hero-section h1{margin:1.5rem 0 1.75rem;font-family:var(--display);font-size:clamp(4rem,8.3vw,8.6rem);line-height:.92;letter-spacing:-.085em;font-weight:650}.hero-section h1 span{color:var(--blue)}.hero-description{max-width:450px;margin:0;color:var(--muted);font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.6;letter-spacing:-.015em}.hero-actions{gap:.8rem;margin-top:2.3rem;flex-wrap:wrap}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;border:1px solid transparent;padding:.75rem 1.15rem;border-radius:999px;font-size:.78rem;font-weight:650;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.button:hover{transform:translateY(-2px)}.button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,71,209,.38);outline-offset:3px}.button-primary{color:white;background:var(--blue)}.button-primary:hover{background:#0f36a6}.button-primary:disabled{opacity:.65;cursor:wait;transform:none}.button-ghost{border-color:var(--line-strong)}.button-ghost:hover{border-color:var(--ink);background:white}.down-icon{width:15px;height:15px}.availability{gap:.7rem;margin-top:clamp(4rem,9vh,7rem)}.availability div{display:grid;gap:.15rem}.availability strong{font-size:.72rem;font-weight:650}.availability span{color:var(--muted);font-size:.65rem}.hero-art{min-height:500px;position:relative;display:grid;place-items:center}.hero-art:before{content:"";position:absolute;width:min(50vw,670px);height:min(50vw,670px);border-radius:50%;border:1px solid rgba(23,71,209,.1)}.hero-art:after{content:"";position:absolute;width:80%;height:80%;border-radius:50%;background:radial-gradient(circle,rgba(197,211,255,.68) 0,rgba(197,211,255,.18) 36%,rgba(244,244,240,0) 70%);filter:blur(16px);pointer-events:none}.hero-scene,.scene-fallback,.scene-loading{width:min(100%,630px);aspect-ratio:1/1;position:relative;z-index:1}.hero-scene canvas{display:block;width:100%!important;height:100%!important}.scene-label{position:absolute;right:4%;bottom:12%;color:var(--blue);font-size:.57rem}.scene-loading{border-radius:50%;background:radial-gradient(circle,var(--blue) 0 6%,transparent 6.5% 19%,rgba(111,143,236,.55) 19.4% 19.8%,transparent 20.2% 38%,rgba(111,143,236,.3) 38.4% 38.8%,transparent 39.2%);animation:scene-breathe 1.5s ease-in-out infinite alternate}.scene-fallback{display:grid;place-items:center;border-radius:50%}.fallback-core{position:absolute;width:17%;aspect-ratio:1;border-radius:35%;transform:rotate(28deg);background:linear-gradient(145deg,#6d91ff,var(--blue) 60%,#0d2b86);box-shadow:0 15px 35px rgba(23,71,209,.28)}.fallback-orbit{position:absolute;width:59%;height:20%;border:1px solid rgba(23,71,209,.7);border-radius:50%;transform:rotate(-32deg)}.fallback-orbit-two{width:76%;height:27%;transform:rotate(54deg);border-color:rgba(23,71,209,.4)}.fallback-orbit-three{width:91%;height:34%;transform:rotate(79deg);border-color:rgba(23,71,209,.2)}.fallback-caption{position:absolute;bottom:13%;right:3%;color:var(--blue);text-transform:uppercase;letter-spacing:.16em;font-size:.57rem;font-weight:700}.hero-art-note{position:absolute;z-index:2;color:var(--muted);font-size:.58rem}.hero-art-note span{color:var(--blue)}.hero-art-note-top{top:9%;right:12%}.hero-art-note-bottom{bottom:3%;left:5%;transform:rotate(-90deg);transform-origin:left}.scroll-cue{position:absolute;right:0;bottom:1.5rem;gap:.6rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;font-size:.6rem}.scroll-cue .down-icon{width:14px;height:14px}.proof-strip{display:grid;grid-template-columns:1fr 3fr;align-items:start;gap:2rem;padding-top:2.5rem;padding-bottom:2.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-kicker{color:var(--muted);line-height:1.5}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-item{display:grid;gap:.35rem;padding-inline:clamp(.8rem,2vw,2rem);border-left:1px solid var(--line)}.proof-item:first-child{padding-left:0;border-left:0}.proof-item strong{font-family:var(--display);font-size:clamp(1.3rem,2vw,2rem);letter-spacing:-.055em;font-weight:650}.proof-item span{color:var(--muted);font-size:.7rem;line-height:1.35}.work-section{padding-top:clamp(7rem,14vw,13rem);padding-bottom:clamp(7rem,14vw,13rem)}.section-intro-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);gap:4rem;align-items:end}.about-intro h2,.contact-copy h2,.section-intro h2{max-width:800px;margin:1.15rem 0 0;font-family:var(--display);font-size:clamp(3rem,6vw,6.4rem);line-height:.95;letter-spacing:-.08em;font-weight:650}.section-lead{max-width:390px;margin:0 0 .5rem;color:var(--muted);font-size:.97rem;line-height:1.6}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:clamp(3.5rem,7vw,6.5rem)}.project-card{position:relative;overflow:hidden;min-height:610px;display:flex;flex-direction:column;background:#e7e7e0}.project-card-featured{grid-column:span 2;min-height:560px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.project-card-topline{position:absolute;inset:1.2rem 1.25rem auto;justify-content:space-between;z-index:3;color:rgba(21,22,25,.54);font-size:.65rem;letter-spacing:.12em}.project-visual{position:relative;min-height:270px;overflow:hidden;background:#c5d3ff}.project-card-featured .project-visual{min-height:100%}.project-card-blue .project-visual{background:#c5d3ff}.project-card-ink .project-visual{background:#292b31}.project-card-lime .project-visual{background:var(--lime)}.project-card-orange .project-visual{background:var(--orange)}.visual-grid{position:absolute;inset:0;opacity:.35;background-image:linear-gradient(rgba(21,22,25,.14) 1px,transparent 0),linear-gradient(90deg,rgba(21,22,25,.14) 1px,transparent 0);background-size:28px 28px;-webkit-mask-image:linear-gradient(180deg,black,transparent 80%);mask-image:linear-gradient(180deg,black,transparent 80%)}.visual-shape{position:absolute;width:clamp(190px,30vw,360px);aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-46%) rotate(-21deg);border:1px solid rgba(21,22,25,.55);border-radius:34%}.visual-shape span,.visual-shape:after,.visual-shape:before{content:"";position:absolute;inset:12%;border:1px solid rgba(21,22,25,.45);border-radius:42%}.visual-shape:after{inset:24%;border-color:rgba(21,22,25,.28)}.visual-shape span:first-child{inset:37%;border-radius:50%;background:rgba(21,22,25,.78);border:0}.visual-shape span:nth-child(2){inset:0 49%;border-radius:0;border-width:0 1px;transform:rotate(31deg)}.visual-shape span:nth-child(3){inset:49% 0;border-radius:0;border-width:1px 0;transform:rotate(31deg)}.project-card-ink .visual-grid,.project-card-ink .visual-shape{filter:invert(1)}.project-card-ink .visual-shape span:first-child{background:white}.project-card-lime .visual-shape{transform:translate(-50%,-46%) rotate(45deg);border-radius:50%}.project-card-orange .visual-shape{transform:translate(-50%,-46%) rotate(10deg);border-radius:12%}.visual-label{position:absolute;right:1.25rem;bottom:1.15rem;color:rgba(21,22,25,.62);font-size:.57rem}.project-card-ink .visual-label{color:rgba(244,244,240,.55)}.project-card-content{position:relative;display:flex;flex:1 1;flex-direction:column;padding:2rem 1.7rem 1.55rem;background:#e7e7e0}.project-card-featured .project-card-content{justify-content:center;padding:clamp(2rem,5vw,5.3rem)}.project-card-blue .project-card-content{background:#e7e7e0}.project-card-ink .project-card-content{background:#25272c;color:var(--paper)}.project-card-lime .project-card-content{background:#ecf1bd}.project-card-orange .project-card-content{background:#fae0cc}.project-eyebrow{color:var(--muted);font-size:.61rem}.project-card-ink .project-eyebrow,.project-card-ink .project-role{color:rgba(244,244,240,.55)}.project-card-content h3{margin:.85rem 0 0;max-width:500px;font-family:var(--display);font-size:clamp(2rem,4vw,4.7rem);line-height:.95;letter-spacing:-.075em;font-weight:650}.project-card:not(.project-card-featured) .project-card-content h3{font-size:clamp(2rem,3.6vw,3.7rem)}.project-description{max-width:490px;margin:1.15rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.55}.project-card-ink .project-description{color:rgba(244,244,240,.68)}.project-role{margin:1.5rem 0 0;font-size:.68rem;font-weight:650}.project-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.project-tags span,.skill-list span{padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.61rem}.project-card-ink .project-tags span{border-color:rgba(244,244,240,.23);color:rgba(244,244,240,.64)}.project-footer{justify-content:space-between;gap:1.5rem;margin-top:auto;padding-top:2.5rem}.project-metric{display:flex;align-items:baseline;gap:.55rem}.project-metric strong{font-family:var(--display);font-size:1.8rem;letter-spacing:-.07em}.project-metric span,.project-note{color:var(--muted);font-size:.62rem}.project-card-ink .project-metric span,.project-card-ink .project-note{color:rgba(244,244,240,.58)}.text-link{width:fit-content;gap:.5rem;font-size:.72rem;font-weight:650;border-bottom:1px solid;padding-bottom:.35rem}.text-link .arrow-icon{width:12px;height:12px}.featured-badge{position:absolute;top:1.2rem;right:1.25rem;z-index:4;padding:.45rem .7rem;border-radius:999px;background:var(--blue);color:white;font-size:.59rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.about-section{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(450px,.97fr);gap:clamp(3rem,5vw,7rem);padding-top:clamp(7rem,14vw,13rem);padding-bottom:clamp(7rem,14vw,13rem);border-top:1px solid var(--line)}.about-intro h2{font-size:clamp(2.8rem,5vw,5.25rem)}.about-copy{max-width:480px;margin-top:3rem}.about-copy p{margin:0 0 1.2rem;color:var(--muted);font-size:.98rem;line-height:1.65}.about-facts{display:grid;gap:1.2rem;max-width:450px;margin-top:3rem}.about-facts div{display:grid;gap:.35rem;padding-top:.9rem;border-top:1px solid var(--line)}.about-facts span{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.6rem}.about-facts strong{font-size:.8rem;font-weight:650}.about-side{display:grid;grid-template-columns:minmax(220px,.78fr) minmax(0,1fr);gap:clamp(1.25rem,2vw,2rem);align-items:start}.portrait-card{position:relative;overflow:hidden;min-width:0;aspect-ratio:4/5;margin:2.9rem 0 0;background:var(--ink)}.portrait-card img{width:100%;height:100%;display:block;object-fit:cover}.portrait-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.55));pointer-events:none}.portrait-card figcaption{position:absolute;right:.75rem;bottom:.7rem;z-index:1;color:rgba(244,244,240,.75);text-transform:uppercase;letter-spacing:.14em;font-size:.54rem;font-weight:700}.portrait-card-mobile{display:none}.timeline-wrap{padding-top:1rem}.timeline-label{color:var(--muted);padding-bottom:1.2rem}.timeline-item,.timeline-label{border-bottom:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:112px 20px 1fr;gap:1rem;padding:1.5rem 0}.timeline-period{color:var(--muted);font-size:.68rem;line-height:1.35}.timeline-line{display:flex;justify-content:center;position:relative}.timeline-line:before{content:"";width:1px;height:100%;background:var(--line-strong)}.timeline-line span{position:absolute;top:.2rem;width:9px;height:9px;border:2px solid var(--blue);border-radius:50%;background:var(--paper)}.timeline-content h3{margin:-.15rem 0 .3rem;font-family:var(--display);font-size:1.35rem;letter-spacing:-.045em}.timeline-content p{max-width:360px;margin:.3rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.timeline-content .timeline-organisation{color:var(--ink);font-size:.72rem;font-weight:650}.skills-section{padding-top:clamp(7rem,14vw,13rem);padding-bottom:clamp(7rem,14vw,13rem);border-top:1px solid var(--line)}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:clamp(3rem,6vw,5.5rem);background:var(--line);border:1px solid var(--line)}.skill-card{min-height:340px;display:flex;flex-direction:column;padding:clamp(1.4rem,3vw,2.8rem);background:var(--paper)}.skill-card-topline{justify-content:space-between;color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.1em}.skill-card h3{margin:4.5rem 0 0;font-family:var(--display);font-size:clamp(1.7rem,3vw,3.1rem);line-height:.95;letter-spacing:-.07em}.skill-card p{max-width:250px;margin:1rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.skill-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:2rem}.contact-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(340px,1fr);gap:clamp(4rem,11vw,15rem);padding-top:clamp(7rem,14vw,13rem);padding-bottom:clamp(7rem,14vw,10rem);border-top:1px solid var(--line)}.contact-copy h2{white-space:pre-line;font-size:clamp(3.4rem,6vw,6.3rem)}.contact-copy h2 span{display:block}.contact-copy>p:not(.eyebrow){max-width:410px;margin:2rem 0 1.8rem;color:var(--muted);font-size:.95rem;line-height:1.6}.contact-form{display:flex;flex-direction:column;align-self:end;padding-top:2.4rem}.contact-form label{margin:1rem 0 .45rem;color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.contact-form input:not([type=hidden]),.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;padding:.7rem 0 .85rem;background:transparent;color:var(--ink);font-size:1rem;outline:none;transition:border-color .18s ease}.contact-form textarea{min-height:116px;resize:vertical;line-height:1.5}.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(113,115,111,.55)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue)}.form-bottomline{justify-content:space-between;align-items:end;gap:1.5rem;margin-top:2rem}.form-note{max-width:200px;color:var(--muted);font-size:.65rem;line-height:1.4}.form-status{min-height:1.3rem;margin:1.25rem 0 0;font-size:.72rem;line-height:1.4}.form-status-idle{visibility:hidden}.form-status-success{color:#2d7c40}.form-status-error,.form-status-unavailable{color:#b44f3e}.privacy-consent{display:flex;align-items:flex-start;gap:.65rem;margin-top:1.5rem}.privacy-consent input{width:1rem!important;height:1rem;flex:0 0 auto;margin:.08rem 0 0;padding:0!important;border:0!important;accent-color:var(--blue)}.privacy-consent label{margin:0;color:var(--muted);font-size:.68rem;line-height:1.45;text-transform:none;letter-spacing:0}.privacy-consent a{color:var(--ink);text-decoration:underline;text-underline-offset:.18em}.form-honeypot{display:none!important}.site-footer{justify-content:space-between;gap:1rem;min-height:100px;border-top:1px solid var(--line);color:var(--muted);font-size:.64rem}.site-footer a{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);font-weight:650}.site-footer a .arrow-icon{width:12px;height:12px;transform:rotate(-45deg)}.legal-links{display:flex;align-items:center;gap:1rem}.legal-links a{color:var(--muted);font-weight:500}.legal-links a:focus-visible,.legal-links a:hover{color:var(--ink)}.legal-shell{min-height:100vh;padding-bottom:4rem;background:var(--paper)}.legal-header{width:min(var(--max-width),calc(100% - (var(--side-space) * 2)));min-height:92px;margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--line)}.legal-header-links{display:flex;align-items:center;gap:1.25rem;color:var(--muted);font-size:.72rem}.legal-header-links a{padding-block:.45rem;border-bottom:1px solid transparent}.legal-header-links a.active,.legal-header-links a:focus-visible,.legal-header-links a:hover{color:var(--ink);border-color:var(--ink)}.legal-document{width:min(860px,calc(100% - (var(--side-space) * 2)));margin:0 auto;padding-block:clamp(5rem,10vw,9rem)}.legal-document .eyebrow{color:var(--muted)}.legal-document h1{margin:1.25rem 0 1.5rem;font-family:var(--display);font-size:clamp(3.6rem,8vw,7rem);line-height:.92;letter-spacing:-.085em;font-weight:650}.legal-intro{max-width:680px;margin:0;color:var(--muted);font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.6}.legal-updated{margin:1.4rem 0 0;color:var(--muted);font-size:.68rem}.legal-sections{margin-top:clamp(4rem,8vw,7rem)}.legal-sections section{padding-block:2.1rem;border-top:1px solid var(--line)}.legal-sections h2{margin:0 0 1rem;font-family:var(--display);font-size:clamp(1.45rem,2.6vw,2.2rem);line-height:1;letter-spacing:-.055em}.legal-sections p{margin:.7rem 0 0}.legal-sections p,.legal-sections ul{max-width:720px;color:var(--muted);font-size:.9rem;line-height:1.7}.legal-sections ul{margin:1rem 0 0;padding-left:1.2rem}.legal-sections li+li{margin-top:.55rem}.provider-links{margin-top:2.5rem;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.provider-links h2{margin:0 0 1rem;font-family:var(--display);font-size:1.4rem;letter-spacing:-.045em}.provider-links div{display:flex;flex-wrap:wrap;gap:.7rem 1.2rem}.provider-links a{color:var(--blue);font-size:.72rem;font-weight:650;text-decoration:underline;text-underline-offset:.2em}.legal-back{display:inline-flex;margin-top:2.3rem;color:var(--ink);font-size:.76rem;font-weight:650}.legal-back:focus-visible,.legal-back:hover{color:var(--blue)}@keyframes scene-breathe{0%{transform:scale(.94);opacity:.7}to{transform:scale(1.02);opacity:1}}@media (max-width:980px){.hero-section{grid-template-columns:1fr;min-height:auto;padding-top:6.5rem}.hero-copy{max-width:620px}.hero-art{position:absolute;width:min(66vw,600px);right:-14vw;top:13%;opacity:.75;pointer-events:none}.hero-art-note-bottom{display:none}.hero-section h1{font-size:clamp(4.5rem,13vw,8rem)}.scroll-cue{position:relative;right:auto;bottom:auto;margin-top:2rem}.proof-strip{grid-template-columns:1fr;gap:1.6rem}.section-intro-split{gap:2rem}.about-section,.contact-section{gap:5rem}}@media (max-width:760px){:root{--side-space:1rem}html{scroll-padding-top:1rem}.site-header{min-height:70px;gap:1rem}.brand{gap:.55rem;font-size:.78rem}.brand-mark{width:30px;height:30px;font-size:.6rem}.desktop-nav,.header-contact{display:none}.header-actions{margin-left:auto;gap:.7rem}.locale-switch{font-size:.65rem}.hero-section{display:block;min-height:auto;padding-top:4.25rem;padding-bottom:3.5rem}.hero-copy{max-width:none}.hero-section h1{margin:1.15rem 0 1.4rem;font-size:clamp(3.15rem,14.8vw,4.55rem);line-height:.91}.hero-description{max-width:none;font-size:.95rem;line-height:1.55}.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:1.7rem}.hero-actions .button{width:100%;min-height:50px;padding-inline:.65rem;font-size:.68rem;white-space:nowrap}.availability{margin-top:2.5rem;gap:.6rem}.availability strong{font-size:.7rem}.availability span{font-size:.62rem}.hero-art{position:relative;inset:auto;width:100%;height:300px;min-height:0;margin:2.4rem auto 0;opacity:.82;pointer-events:none}.hero-art:before{width:min(68vw,265px);height:min(68vw,265px)}.hero-art:after{width:88%;height:88%}.hero-scene,.scene-fallback,.scene-loading{width:min(100%,280px)}.hero-art-note-top{top:1%;right:5%;font-size:.5rem}.hero-art-note-bottom,.scroll-cue{display:none}.proof-strip{grid-template-columns:1fr;gap:1.3rem;padding-block:2rem}.proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.proof-item{min-height:62px;padding:.9rem .7rem}.proof-item:nth-child(odd){padding-left:0;border-left:0}.proof-item:nth-child(n+3){padding-top:1.15rem;border-top:1px solid var(--line)}.proof-item strong{font-size:1.3rem}.about-section,.contact-section,.skills-section,.work-section{padding-top:5.25rem;padding-bottom:5.25rem}.section-intro-split{gap:1rem}.about-intro h2,.section-intro h2{font-size:clamp(2.85rem,12.5vw,4.5rem)}.section-lead{font-size:.9rem}.project-grid{grid-template-columns:1fr;gap:.8rem;margin-top:2.4rem}.project-card,.project-card-featured{grid-column:auto;min-height:0;display:flex}.project-card-featured .project-visual,.project-visual{min-height:190px;height:190px}.project-card-featured .project-visual{height:210px}.visual-shape{width:min(62vw,230px)}.project-card-topline{inset:.9rem 1rem auto}.featured-badge{top:.85rem;right:.9rem;padding:.4rem .58rem;font-size:.53rem}.project-card-content,.project-card-featured .project-card-content{padding:1.4rem 1.25rem 1.25rem}.project-card-content h3,.project-card:not(.project-card-featured) .project-card-content h3{font-size:clamp(2.25rem,11.5vw,3.6rem)}.project-description{margin-top:1rem;font-size:.84rem;line-height:1.55}.project-role{margin-top:1.05rem;font-size:.65rem}.project-tags{gap:.35rem;margin-top:.85rem}.project-tags span,.skill-list span{padding:.3rem .48rem;font-size:.58rem}.project-footer{align-items:flex-end;flex-direction:row;flex-wrap:wrap;gap:1rem;margin-top:2rem;padding-top:0}.project-metric strong{font-size:1.55rem}.project-metric span,.project-note{font-size:.6rem}.text-link{font-size:.64rem;padding-bottom:.25rem}.about-section,.contact-section,.section-intro-split{grid-template-columns:1fr}.about-section,.contact-section{gap:3rem}.about-copy{margin-top:1.8rem}.about-copy p{font-size:.92rem;line-height:1.6}.about-facts{gap:1rem;margin-top:2.2rem}.portrait-card-mobile{display:block;width:min(72vw,280px);margin-top:2rem}.portrait-card-desktop{display:none}.about-side{grid-template-columns:1fr}.timeline-wrap{padding-top:0}.timeline-item{grid-template-columns:72px 14px minmax(0,1fr);gap:.7rem;padding-block:1.15rem}.timeline-period{font-size:.62rem}.timeline-content h3{font-size:1.2rem}.timeline-content p{font-size:.75rem;line-height:1.45}.timeline-content .timeline-organisation{font-size:.67rem}.skills-grid{grid-template-columns:1fr;gap:0}.skill-card{min-height:0;padding:1.3rem;border:0}.skill-card:not(:last-child){border-bottom:1px solid var(--line)}.skill-card h3{margin-top:3rem;font-size:2rem}.skill-card p{font-size:.76rem}.skill-list{padding-top:1.5rem}.contact-copy h2{font-size:clamp(3.2rem,14.8vw,4.5rem)}.contact-copy>p:not(.eyebrow){margin:1.5rem 0 1.6rem;font-size:.9rem}.contact-form{padding-top:0}.contact-form label{margin-top:.9rem;font-size:.62rem}.contact-form input:not([type=hidden]),.contact-form textarea{padding-block:.65rem .75rem;font-size:.95rem}.contact-form textarea{min-height:130px}.privacy-consent{margin-top:1.2rem}.privacy-consent label{font-size:.7rem}.form-bottomline{align-items:stretch;flex-direction:column;gap:1rem;margin-top:1.7rem}.form-note{max-width:none}.form-bottomline .button{width:100%}.form-status{margin-top:1rem}.site-footer{display:grid;grid-template-columns:1fr auto;align-items:start;min-height:0;padding-block:1.8rem}.legal-links,.site-footer>span:first-child{grid-column:1/-1}.site-footer>a{grid-column:2;grid-row:2;margin-top:0}.legal-header{min-height:76px}.legal-header-links{gap:.8rem;font-size:.65rem}.legal-document{padding-block:4.5rem}.legal-document h1{font-size:clamp(3.5rem,16vw,5.8rem)}}@media (max-width:480px){.brand-name{display:inline}.hero-section{padding-top:3.7rem;padding-bottom:3rem}.hero-section h1{font-size:clamp(3rem,14.5vw,3.9rem)}.hero-art{height:300px;margin-top:2.4rem}.hero-art-note-top{top:0;right:5%}.project-card-featured .project-visual,.project-visual{min-height:175px;height:175px}.project-card-featured .project-visual{height:190px}.legal-links{gap:.85rem}.legal-header{align-items:flex-start;flex-direction:column;justify-content:center;gap:.8rem;padding-block:1rem}.legal-document{width:min(100% - 2.2rem,860px);padding-block:3.5rem}.legal-sections{margin-top:4rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:350px){.hero-actions{grid-template-columns:1fr}.hero-actions .button{font-size:.72rem}}