:root{--surface: #fcf9f8;--surface-low: #f6f3f2;--surface-line: #e5e2e1;--surface-strong: #ffffff;--ink: #000613;--ink-soft: #313030;--muted: #43474e;--line: #c4c6cf;--red: #bb0021;--red-hot: #e61730;--white: #ffffff;--shadow-hard: 8px 8px 0 var(--ink);--shadow-soft: 4px 4px 0 var(--surface-line);--font-display: "Montserrat", Arial, sans-serif;--font-body: "Inter", Arial, sans-serif;--container: min(100% - clamp(32px, 8vw, 96px), 1280px);--motion-duration-instant: 1ms;--motion-duration-fast: .16s;--motion-duration-standard: .24s;--motion-duration-slow: .38s;--motion-duration-reveal: .62s;--motion-duration-hero: .62s;--motion-ease-out: cubic-bezier(.16, 1, .3, 1);--motion-ease-in-out: cubic-bezier(.65, 0, .35, 1);--motion-distance-xs: 4px;--motion-distance-sm: 10px;--motion-distance-md: 18px;--motion-distance-lg: 56px;--motion-scale-press: .965;--motion-scale-enter: .975;--motion-stagger-step: 90ms}*{box-sizing:border-box}html{background:var(--surface);color:var(--ink);font-family:var(--font-body);scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background:var(--surface);color:var(--ink)}body,button,input,textarea{font:400 1rem/1.55 var(--font-body)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{border-radius:4px}:focus-visible{outline:3px solid var(--red);outline-offset:4px}.sr-only,.honeypot{height:1px;left:-10000px;overflow:hidden;position:absolute;top:auto;width:1px}.contact-form .honeypot{display:none}::selection{background:var(--red);color:var(--white)}.skip-link{background:var(--white);border:2px solid var(--ink);color:var(--ink);left:16px;padding:10px 14px;position:fixed;top:12px;transform:translateY(-140%);transition:transform var(--motion-duration-fast) var(--motion-ease-out);z-index:100}.skip-link:focus{transform:translateY(0)}.site-header{background:#fcf9f8f0;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.contact-strip{align-items:center;background:var(--ink);color:var(--white);display:flex;font-size:.82rem;font-style:normal;gap:18px;justify-content:center;min-height:36px;padding:8px 16px}.contact-strip a{color:#ffffffe6;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.contact-strip a:hover{color:var(--white)}.nav-shell{align-items:center;display:flex;gap:24px;justify-content:space-between;margin:0 auto;max-width:1440px;min-height:76px;padding:14px clamp(16px,4vw,48px);position:relative}.brand{align-items:center;display:inline-flex;min-width:178px}.brand img,.footer img{height:auto;width:min(263px,46vw)}.nav-links{align-items:center;display:flex;gap:clamp(16px,3vw,34px);font-family:var(--font-display);font-size:.83rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.nav-links a:not(.nav-cta){color:var(--muted);padding:8px 0;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.nav-links a:not(.nav-cta):hover{color:var(--red)}.nav-links a[aria-current=page]{color:var(--ink);position:relative}.nav-links a[aria-current=page]:after{background:var(--red);bottom:0;content:"";height:3px;left:0;position:absolute;right:0;transform-origin:left center}.nav-cta,.button{align-items:center;border:2px solid transparent;display:inline-flex;font-family:var(--font-display);font-size:.84rem;font-weight:900;justify-content:center;letter-spacing:.04em;min-height:48px;overflow:hidden;padding:12px 18px;position:relative;text-transform:uppercase;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),color var(--motion-duration-fast) var(--motion-ease-out),transform var(--motion-duration-fast) var(--motion-ease-out),box-shadow var(--motion-duration-fast) var(--motion-ease-out);touch-action:manipulation;transform:translateZ(0);isolation:isolate}.nav-cta:before,.button:before{background:#ffffff2e;content:"";inset:0;opacity:0;position:absolute;transform:translate3d(-120%,0,0) skew(-16deg);transition:opacity var(--motion-duration-fast) var(--motion-ease-out),transform var(--motion-duration-standard) var(--motion-ease-out);z-index:0}.nav-cta,.button,.text-link,.contact-cards a{cursor:pointer}.nav-cta,.button-dark{background:var(--ink);color:var(--white);box-shadow:4px 4px 0 var(--red)}.button-red{background:var(--red);color:var(--white);box-shadow:6px 6px 0 var(--ink)}.button-ghost{background:transparent;border-color:var(--red);color:var(--red)}.nav-cta:hover,.button:hover{transform:translate3d(2px,2px,0)}.nav-cta:hover:before,.button:hover:before{opacity:1;transform:translateZ(0) skew(-16deg)}.nav-cta:active,.button:active{transform:translate3d(3px,3px,0) scale(var(--motion-scale-press))}.button-red:hover{background:var(--ink);box-shadow:3px 3px 0 var(--red)}.button-dark:hover{background:var(--red);box-shadow:3px 3px 0 var(--ink)}.button-ghost:hover{background:#bb002114}.button-ghost:before{background:#bb00211f}.nav-button{display:none}.hero{background:var(--ink);color:var(--white);min-height:min(920px,calc(100svh - 112px));overflow:hidden;position:relative}.hero-media{inset:0;opacity:.34;position:absolute}.hero-media:after{background:linear-gradient(90deg,#000613f0,#000613d1 44%,#00061357),linear-gradient(to right,rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.13) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;content:"";inset:0;position:absolute}.hero-media img{filter:grayscale(1) contrast(1.2);height:100%;object-fit:cover;width:100%}html[data-motion=ready] .hero-media img{animation:hero-media-enter .9s var(--motion-ease-out) both}.hero-media picture,.service-panel picture,.about-image picture,.about-photo-panel picture,.team-photo picture{display:block;height:100%;width:100%}.about-image picture,.about-photo-panel picture,.team-photo picture{min-height:inherit}.hero-grid{display:grid;gap:clamp(32px,5vw,72px);grid-template-columns:minmax(0,1fr) minmax(280px,392px);margin:0 auto;max-width:1280px;min-height:inherit;padding:clamp(72px,9vw,148px) clamp(16px,4vw,48px);place-items:center;position:relative}.hero-copy{justify-self:start;max-width:760px}.status-line,.section-kicker{align-items:center;color:var(--red);display:inline-flex;font-family:var(--font-body);font-size:.78rem;font-weight:800;gap:10px;letter-spacing:.12em;margin:0 0 18px;text-transform:uppercase}.status-line{border:1px solid rgba(255,255,255,.32);color:#ffffffdb;padding:8px 12px}.status-line span{animation:pulse 1.7s var(--motion-ease-out) 3;background:var(--red-hot);border-radius:50%;height:8px;width:8px}[data-animate]{--motion-index: 0;scroll-margin-top:132px}html[data-motion=ready] [data-animate]:not([data-hero-animate]){opacity:.08;transform:translate3d(0,var(--motion-distance-lg),0) scale(var(--motion-scale-enter));transition:opacity var(--motion-duration-reveal) var(--motion-ease-out),transform var(--motion-duration-reveal) var(--motion-ease-out);transition-delay:calc(var(--motion-index) * var(--motion-stagger-step));will-change:opacity,transform}html[data-motion=ready] [data-animate=fade]:not([data-hero-animate]){transform:scale(var(--motion-scale-enter))}html[data-motion=ready] [data-animate=fade-left]:not([data-hero-animate]){transform:translate3d(calc(var(--motion-distance-lg) * -1),0,0) scale(var(--motion-scale-enter))}html[data-motion=ready] [data-animate]:not([data-hero-animate])[data-visible]{opacity:1;transform:translateZ(0) scale(1);will-change:auto}html[data-motion=ready] [data-hero-animate]{animation:hero-rise var(--motion-duration-hero) var(--motion-ease-out) both;animation-delay:calc(.1s + (var(--motion-index) * .12s));will-change:opacity,transform}html[data-motion=ready] [data-hero-animate=fade-left],html[data-motion=ready] .hero-ledger[data-hero-animate]{animation-name:hero-rise-left}.hero h1,.page-hero h1,.section-head h2,.about h2,.capabilities h2,.consultation h2{font-family:var(--font-display);letter-spacing:0;line-height:1.04;margin:0;text-wrap:balance}.hero h1{font-size:clamp(3rem,8vw,5.95rem);max-width:11ch}.page-hero{align-items:end;display:grid;gap:clamp(28px,6vw,88px);grid-template-columns:minmax(0,.95fr) minmax(280px,.72fr);margin:0 auto;padding:clamp(72px,10vw,140px) 0 clamp(48px,7vw,86px);width:var(--container)}.page-hero h1{font-size:clamp(2.7rem,6.5vw,5.6rem);max-width:11ch}.page-hero p{border-left:4px solid var(--red);color:var(--muted);font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.72;margin:0;padding-left:22px;text-wrap:pretty}.hero p{border-left:4px solid var(--red);color:#ffffffd6;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.72;margin:28px 0 0;max-width:700px;padding-left:22px;text-wrap:pretty}.hero-actions{display:flex;flex-wrap:wrap;gap:20px;margin-top:42px}.hero-ledger{align-self:end;background:var(--surface);border-top:5px solid var(--red);box-shadow:var(--shadow-hard);color:var(--ink);display:grid;gap:0;width:100%}.hero-ledger div{border-bottom:1px solid var(--line);padding:22px 24px}.hero-ledger div:last-child{border-bottom:0}.hero-ledger strong{display:block;font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.1}.hero-ledger span{color:var(--muted);display:block;margin-top:8px}.intro-section,.services,.capabilities,.about,.consultation,.footer{margin:0 auto;width:var(--container)}.intro-section{align-items:end;display:grid;gap:clamp(28px,6vw,96px);grid-template-columns:minmax(0,.95fr) minmax(280px,.85fr);padding:clamp(68px,10vw,132px) 0 clamp(54px,7vw,92px)}.section-head h2,.about h2,.capabilities h2,.consultation h2{font-size:clamp(2.1rem,5vw,4.45rem)}.intro-copy,.about-copy p,.consultation-copy p,.service-content p{color:var(--muted);font-size:1.05rem;line-height:1.72;text-wrap:pretty}.section-head-row{align-items:end;border-bottom:2px solid var(--ink);display:flex;gap:32px;justify-content:space-between;margin-bottom:40px;padding-bottom:28px}.text-link{color:var(--red);flex:0 0 auto;font-family:var(--font-display);font-size:.84rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;transition:color var(--motion-duration-fast) var(--motion-ease-out)}.text-link:after{content:" ->"}.service-stack{display:grid;gap:42px}.service-panel{background:var(--surface-strong);border:1px solid var(--line);display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1fr);min-height:420px}.service-panel-alt{box-shadow:var(--shadow-hard)}.service-panel-alt .service-content{order:2}.service-panel img{filter:grayscale(1) contrast(1.06);height:100%;min-height:340px;object-fit:cover;transition:filter var(--motion-duration-standard) var(--motion-ease-out);width:100%}.service-panel:hover img{filter:grayscale(.45) contrast(1.02)}.service-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,5vw,58px)}.service-number{color:var(--red);font-family:var(--font-display);font-size:.82rem;font-weight:900;margin-bottom:18px}.service-content h3{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.45rem);letter-spacing:0;line-height:1.08;margin:0 0 16px}.service-content ul{display:grid;gap:10px;list-style:none;margin:24px 0 0;padding:0}.service-content li{align-items:start;display:grid;gap:10px;grid-template-columns:10px 1fr}.service-content li:before{background:var(--red);content:"";height:7px;margin-top:10px;width:7px}.capabilities{align-items:start;background:var(--ink);color:var(--white);display:grid;gap:clamp(32px,6vw,88px);grid-template-columns:minmax(280px,.8fr) minmax(280px,1fr);margin-top:clamp(68px,9vw,120px);padding:clamp(42px,7vw,80px) clamp(24px,5vw,64px)}.capabilities h2{color:var(--white);font-size:clamp(2rem,4vw,3.8rem)}.capability-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.capability-grid span{border:1px solid rgba(255,255,255,.24);color:#ffffffeb;font-family:var(--font-display);font-size:.92rem;font-weight:800;letter-spacing:.03em;min-height:72px;padding:18px;text-transform:uppercase;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),border-color var(--motion-duration-fast) var(--motion-ease-out),transform var(--motion-duration-fast) var(--motion-ease-out)}.capability-grid span:hover{background:#ffffff14;border-color:#ffffff70;transform:translateY(calc(var(--motion-distance-xs) * -1))}.about{align-items:center;display:grid;gap:clamp(32px,7vw,96px);grid-template-columns:minmax(260px,.75fr) minmax(280px,1fr);padding:clamp(72px,10vw,132px) 0}.about-detail{align-items:center;display:grid;gap:clamp(32px,7vw,96px);grid-template-columns:minmax(260px,.72fr) minmax(280px,1fr);margin:0 auto;padding:0 0 clamp(72px,10vw,132px);width:var(--container)}.about-detail h2{font-family:var(--font-display);font-size:clamp(2rem,4.6vw,4rem);letter-spacing:0;line-height:1.04;margin:0;text-wrap:balance}.page-band{margin-bottom:clamp(72px,9vw,120px);margin-top:0}.contact-page-consultation{margin-bottom:clamp(72px,9vw,120px)}.about-photo-panel{align-self:stretch;border:1px solid var(--line);box-shadow:var(--shadow-soft);min-height:460px;overflow:hidden}.about-photo-panel img{filter:grayscale(.88) contrast(1.05);height:100%;min-height:460px;object-fit:cover;width:100%}.about-image{align-self:stretch;background:var(--surface-line);border:1px solid var(--line);box-shadow:var(--shadow-soft);display:flex;justify-content:center;min-height:480px;overflow:hidden}.about-image img{align-self:end;max-height:620px;object-fit:contain;width:min(100%,420px)}.about-copy{max-width:720px}.about-copy p+p{margin-top:18px}.about-copy .button{margin-top:30px}.why-about{background:var(--ink);color:var(--white);margin:0 auto clamp(68px,9vw,112px);padding:clamp(42px,7vw,80px) clamp(24px,5vw,64px);text-align:center;width:var(--container)}.why-about .section-kicker{color:#ff9ead}.why-about h2,.team-intro h2{font-family:var(--font-display);font-size:clamp(2.1rem,5vw,4.45rem);letter-spacing:0;line-height:1.04;margin:0;text-wrap:balance}.why-about p{color:#ffffffd6;font-size:1.08rem;line-height:1.72;margin:24px auto 0;max-width:860px;text-wrap:pretty}.team-section{margin:0 auto clamp(72px,10vw,132px);width:var(--container)}.team-intro{border-bottom:2px solid var(--ink);margin-bottom:40px;max-width:860px;padding-bottom:28px}.team-intro p:not(.section-kicker){color:var(--muted);font-size:1.05rem;line-height:1.72;margin:20px 0 0;text-wrap:pretty}.team-list{display:grid;gap:42px}.team-card{background:var(--surface-strong);border:1px solid var(--line);display:grid;grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);min-height:520px;scroll-margin-top:156px}.team-card-alt{box-shadow:var(--shadow-hard)}.team-card-alt .team-photo{order:2}.team-photo{background:var(--surface-line);min-height:440px;overflow:hidden}.team-photo img{filter:grayscale(.72) contrast(1.04);height:100%;min-height:inherit;object-fit:cover;object-position:center top;transition:filter var(--motion-duration-standard) var(--motion-ease-out);width:100%}.team-card-preserve-photo .team-photo{align-items:center;display:flex;justify-content:center}.team-card-preserve-photo .team-photo img{height:100%;max-height:560px;object-fit:contain;object-position:center center;padding:10px;width:100%}.team-card:hover .team-photo img{filter:grayscale(.25) contrast(1.02)}.team-copy{align-self:center;padding:clamp(28px,5vw,58px)}.team-copy span{color:var(--red);display:block;font-family:var(--font-body);font-size:.78rem;font-weight:900;letter-spacing:.11em;margin-bottom:14px;text-transform:uppercase}.team-copy h3{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,3.4rem);letter-spacing:0;line-height:1.02;margin:0 0 20px}.team-copy p{color:var(--muted);font-size:1.02rem;line-height:1.74;margin:0;text-wrap:pretty}.consultation{background:var(--red);color:var(--white);display:grid;gap:clamp(32px,6vw,80px);grid-template-columns:minmax(280px,.9fr) minmax(280px,1fr);padding:clamp(42px,7vw,82px) clamp(24px,5vw,64px)}.consultation .section-kicker,.consultation-copy p{color:#ffffffe0}.capabilities .section-kicker{color:#ff9ead}.consultation h2{color:var(--white)}.contact-cards{display:grid;gap:12px;margin-top:34px}.contact-cards a{border:1px solid rgba(255,255,255,.34);display:grid;gap:4px;padding:18px;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),border-color var(--motion-duration-fast) var(--motion-ease-out),transform var(--motion-duration-fast) var(--motion-ease-out)}.contact-cards a:hover{background:#ffffff14;border-color:#ffffff94;transform:translateY(calc(var(--motion-distance-xs) * -1))}.contact-cards strong{font-family:var(--font-display);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.contact-cards span{color:#ffffffeb}.contact-form{background:var(--surface);border-top:5px solid var(--ink);box-shadow:var(--shadow-hard);color:var(--ink);display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr));padding:clamp(24px,4vw,42px)}.contact-form label{color:var(--ink-soft);display:grid;font-size:.78rem;font-weight:800;gap:8px;letter-spacing:.08em;text-transform:uppercase}.contact-form .full,.contact-form button,.contact-form .honeypot,.form-status,.form-note{grid-column:1 / -1}.contact-form input,.contact-form textarea{background:var(--white);border:1px solid var(--line);color:var(--ink);min-height:48px;padding:12px 14px;text-transform:none;transition:border-color var(--motion-duration-fast) var(--motion-ease-out),outline-color var(--motion-duration-fast) var(--motion-ease-out),box-shadow var(--motion-duration-fast) var(--motion-ease-out)}.contact-form textarea{min-height:144px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--red);outline:2px solid var(--red);outline-offset:0}.contact-form button:disabled{cursor:wait;opacity:.72}.form-status{border-left:4px solid var(--ink);color:var(--ink-soft);font-size:.9rem;margin:-2px 0 0;padding-left:12px;transition:border-color var(--motion-duration-standard) var(--motion-ease-out),color var(--motion-duration-standard) var(--motion-ease-out),transform var(--motion-duration-standard) var(--motion-ease-out)}.form-status[data-state=pending]{border-left-color:var(--red);transform:translate(var(--motion-distance-xs))}.form-status[data-state=success]{border-left-color:#047857;color:#064e3b}.form-status[data-state=error]{border-left-color:var(--red);color:var(--red)}.form-note{color:var(--muted);font-size:.86rem;margin:-4px 0 0}.form-note a{color:var(--ink);font-weight:800;text-decoration:underline;text-underline-offset:3px}.footer{align-items:center;border-top:4px solid var(--ink);display:flex;gap:32px;justify-content:space-between;padding:38px 0 48px}.footer p{color:var(--muted);margin:14px 0 0;max-width:400px}.footer nav{display:flex;flex-wrap:wrap;gap:20px;font-family:var(--font-display);font-size:.82rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.footer nav a:hover{color:var(--red)}.footer nav a{transition:color var(--motion-duration-fast) var(--motion-ease-out)}@keyframes pulse{0%{box-shadow:0 0 #e61730cc}70%{box-shadow:0 0 0 10px #e6173000}to{box-shadow:0 0 #e6173000}}@keyframes hero-rise{0%{opacity:0;transform:translate3d(0,calc(var(--motion-distance-md) * 1.35),0)}to{opacity:1;transform:translateZ(0)}}@keyframes hero-rise-left{0%{opacity:0;transform:translate3d(calc(var(--motion-distance-md) * -1.35),0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes hero-media-enter{0%{filter:grayscale(1) contrast(1.28);opacity:.8;transform:scale(1.025)}to{filter:grayscale(1) contrast(1.2);opacity:1;transform:scale(1)}}@media(max-width:900px){.contact-strip{align-items:flex-start;flex-direction:column;gap:4px}.nav-button{align-items:center;border:2px solid var(--ink);cursor:pointer;display:inline-flex;height:44px;justify-content:center;width:48px}.nav-button span,.nav-button span:before,.nav-button span:after{background:var(--ink);content:"";display:block;height:2px;position:relative;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),transform var(--motion-duration-fast) var(--motion-ease-out),top var(--motion-duration-fast) var(--motion-ease-out);width:22px}.nav-button span:before{position:absolute;top:-7px}.nav-button span:after{position:absolute;top:7px}.nav-button[aria-expanded=true] span{background:transparent}.nav-button[aria-expanded=true] span:before{top:0;transform:rotate(45deg)}.nav-button[aria-expanded=true] span:after{top:0;transform:rotate(-45deg)}.nav-links{background:var(--surface);border-bottom:1px solid var(--line);border-top:1px solid var(--line);display:block;gap:0;left:0;opacity:0;padding:16px;pointer-events:none;position:absolute;right:0;top:100%;transform:translate3d(0,calc(var(--motion-distance-sm) * -1),0);transition:opacity var(--motion-duration-standard) var(--motion-ease-out),transform var(--motion-duration-standard) var(--motion-ease-out),visibility var(--motion-duration-standard) var(--motion-ease-out);visibility:hidden}.nav-links a{display:block;padding:14px 0}.nav-cta{margin-top:10px;width:100%}.nav-links[data-open]{opacity:1;pointer-events:auto;transform:translateZ(0);visibility:visible}.hero-grid,.page-hero,.intro-section,.capabilities,.about,.about-detail,.team-card,.consultation{grid-template-columns:1fr}.team-card-alt .team-photo{order:0}.hero{min-height:auto}.hero-grid{padding-bottom:64px;padding-top:64px}.hero h1{max-width:12ch}.hero-ledger{align-self:start}.section-head-row{align-items:start;flex-direction:column}.service-panel,.service-panel-alt{grid-template-columns:1fr}.service-panel-alt .service-content{order:0}.service-panel img{min-height:280px}.about-image{min-height:360px}.about-photo-panel,.about-photo-panel img,.team-photo{min-height:340px}.footer{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.brand img{width:min(230px,58vw)}.hero h1{font-size:clamp(2.7rem,16vw,4.4rem)}.hero-actions,.hero-actions .button,.button{width:100%}.capability-grid,.contact-form{grid-template-columns:1fr}.service-content{padding:26px 22px 30px}.consultation,.capabilities{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:var(--motion-duration-instant)!important;scroll-behavior:auto!important;transition-duration:var(--motion-duration-instant)!important;transition-delay:0ms!important}html[data-motion=ready] [data-animate],html[data-motion=ready] [data-hero-animate]{opacity:1!important;transform:none!important;transition:none!important;will-change:auto!important}}
