@font-face{font-family:Manrope;src:url(manrope-latin.woff2) format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{--black:#080808;--panel:#111;--white:#f7f7f5;--muted:#919191;--line:#343434;--font:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--black);color:var(--white);font-family:var(--font);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block}svg{display:block;width:22px;height:22px;flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h2{font-size:clamp(40px,4.4vw,66px);line-height:1.08;letter-spacing:-.055em;margin-bottom:25px}h3{font-size:22px;letter-spacing:-.035em;line-height:1.3}p{color:#a6a6a6}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #ccc;outline-offset:2px}.skip-link{position:fixed;left:20px;top:-100px;padding:12px 20px;background:white;color:black;z-index:99}.skip-link:focus{top:10px}.wrap{width:min(1320px,88%);margin-inline:auto}.section-dark{background:var(--black)}.section-light{background:var(--white);color:#111}.section-light p{color:#646464}.muted{color:#929292}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;display:flex;gap:12px;align-items:center;line-height:1.7;color:#b9b9b9;margin-bottom:25px}.section-light .eyebrow{color:#5c5c5c}.short-line{width:24px;height:1px;background:currentColor;display:inline-block;flex-shrink:0}.button{display:inline-flex;gap:34px;align-items:center;justify-content:space-between;padding:18px 24px;min-height:58px;font-size:12px;font-weight:700;letter-spacing:.02em;border:1px solid currentColor;transition:background .2s,color .2s,transform .2s}.button-light{background:var(--white);color:#111;border-color:var(--white)}.button-light:hover{background:#d9d9d6;transform:translateY(-2px)}.text-link{display:inline-flex;align-items:center;gap:26px;padding:12px 0;border-bottom:1px solid #666;font-size:12px;font-weight:600}.text-link:hover svg,.nav-cta:hover svg{transform:translate(3px,-3px)}.text-link svg,.nav-cta svg{transition:transform .2s}.site-header{height:88px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#080808;border-bottom:1px solid #2b2b2b;position:relative;z-index:20}.brand{display:inline-flex;gap:12px;align-items:center}.brand-mark{font-weight:800;font-size:43px;line-height:1;border:1px solid #555;width:49px;height:49px;display:flex;align-items:center;justify-content:center;letter-spacing:-.12em;padding-right:5px;padding-bottom:8px}.brand-mark span{font-size:36px;color:#a2a2a2}.brand-name{font-size:21px;font-weight:700;letter-spacing:-.055em;line-height:1.15}.brand-name>span{display:block;font-weight:500;letter-spacing:.3em;font-size:8px;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:34px;font-size:11px;font-weight:600}.site-header nav>a{color:#b5b5b5;transition:color .2s}.site-header nav>a:hover{color:white}.site-header .nav-cta{color:#fff;display:flex;gap:32px;align-items:center;border-left:1px solid #414141;padding-left:30px}.nav-cta svg{width:18px;height:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:52% 48%;min-height:740px;min-height:min(850px,calc(100svh - 88px))}.hero-copy{padding:70px 8% 28px 11.54%;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{margin-bottom:32px}.hero h1{font-size:clamp(60px,6.5vw,104px);font-weight:500;line-height:.99;letter-spacing:-.075em;margin:0 0 35px}.hero h1>span{display:block}.hero-description{font-size:14px;line-height:1.9;max-width:400px;margin-bottom:30px}.hero-foot{margin-top:auto;padding-top:48px;width:100%;font-size:10px}.hero-foot a{display:flex;justify-content:space-between;border-bottom:1px solid #3b3b3b;padding-bottom:15px}.hero-foot>span{display:block;font-size:9px;color:#808080;margin-top:15px}.hero-visual{position:relative;overflow:hidden;min-height:650px;background:#111;border-left:1px solid #333}.hero-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:59% center;filter:grayscale(1);opacity:.53;animation:hero-arrive 1.4s ease-out both}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000020 15%,transparent 55%,#0009)}.visual-title{position:absolute;z-index:1;top:38px;left:35px;right:35px;display:flex;justify-content:space-between;align-items:flex-start;font-size:12px;line-height:1.4;letter-spacing:.13em}.visual-cross{font-weight:400;font-size:35px;line-height:1}.visual-caption{position:absolute;bottom:28px;left:30px;right:30px;display:flex;align-items:center;gap:10px;font-size:10px;z-index:1;border-top:1px solid #ffffff60;padding-top:18px}.visual-caption>span:last-child{margin-left:auto;font-size:9px;letter-spacing:.1em}.status-dot{width:5px;height:5px;border-radius:50%;background:#fff}.promise-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:46px 6%;gap:0;background:var(--white);color:#151515}.promise-strip>div{padding:0 27px;border-left:1px solid #d2d2d2}.promise-strip>div:first-child{padding-left:0;border:0}.promise-strip>div:last-child{padding-right:0}.mini-index{color:#747474;font-size:9px;letter-spacing:.1em;display:block;margin-bottom:15px}.promise-strip h2{font-size:20px;font-weight:600;letter-spacing:-.04em;margin-bottom:9px}.promise-strip p{font-size:12px;line-height:1.75;color:#656565;margin:0;max-width:210px}.services{padding:110px 0 115px}.section-heading{text-align:center;margin-bottom:55px}.section-heading .eyebrow{justify-content:center}.section-heading>p:last-child{font-size:14px;line-height:1.8}.service-explorer{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}.explorer-visual{background:#161616;padding:22px;border:1px solid #363636;min-width:0}.preview-top{display:flex;align-items:center;justify-content:space-between;color:#bbb;font-size:9px;padding-bottom:17px}.window-dots{letter-spacing:3px;font-size:7px;color:#717171}.explorer-frame{overflow:hidden;aspect-ratio:1.33;background:#242424}.explorer-frame img{width:100%;height:100%;object-fit:cover;object-position:top;filter:grayscale(1);transition:opacity .2s}.preview-caption{display:flex;justify-content:space-between;gap:12px;padding-top:20px;font-size:9px;color:#b4b4b4}.preview-caption>span:last-child{color:#767676;text-align:right;white-space:nowrap}.service-detail{border-bottom:1px solid #3a3a3a}.service-detail:first-child{border-top:1px solid #3a3a3a}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-detail summary{display:flex;align-items:center;gap:18px;padding:23px 0;font-size:19px;letter-spacing:-.03em}.service-number{font-size:10px;letter-spacing:0;color:#8c8c8c}.expand-symbol{margin-left:auto;font-size:22px;font-weight:400;color:#ccc;line-height:1}.service-detail[open] .expand-symbol{transform:rotate(45deg)}.service-detail[open] summary{color:white}.service-detail:not([open]) summary{color:#929292}.service-body{padding:0 18px 25px 34px}.service-body h3{font-size:14px;letter-spacing:-.01em;margin:0 0 10px}.service-body p{font-size:12px;line-height:1.9;margin-bottom:18px}.service-body ul{list-style:none;padding:0;display:flex;gap:7px;flex-wrap:wrap;margin:0}.service-body li{font-size:9px;padding:6px 9px;border:1px solid #424242;color:#bcbcbc}.work{padding:105px 0 110px}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:48px}.section-intro h2{margin-bottom:0}.section-intro>p{font-size:12px;line-height:1.9;margin-bottom:4px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.work-item{margin:0;min-width:0}.work-image{background:#e2e2df;padding:32px 32px 0;overflow:hidden;aspect-ratio:1.47}.work-image img{width:100%;height:100%;object-fit:cover;object-position:top;filter:grayscale(1);box-shadow:0 10px 30px #0002;transition:transform .6s,filter .6s}.work-item:hover img{transform:translateY(-6px);filter:grayscale(0)}.work-item figcaption{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #cfcfcb;padding:24px 0}.work-item h3{font-size:22px;margin:0 0 5px}.work-item p{font-size:11px;margin:0}.work-index{font-size:10px;color:#777;padding-top:5px}.process{padding:110px 6%;display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.process-heading>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:410px}.process h2{font-size:clamp(40px,4vw,62px)}.process .text-link{margin-top:20px}.process-list{list-style:none;padding:0;margin:0}.process-list li{display:flex;gap:28px;padding:28px 0;border-top:1px solid #393939}.process-list li:first-child{padding-top:0;border:0}.process-list li:last-child{padding-bottom:0}.process-list li>span{font-size:11px;color:#858585;padding-top:5px}.process-list h3{font-size:21px;margin:0 0 10px}.process-list p{font-size:12px;line-height:1.9;max-width:365px;margin:0}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;padding:105px 6%}.faq-heading>p:not(.eyebrow){font-size:12px;margin:32px 0 0}.faq-list details{border-top:1px solid #c7c7c3}.faq-list details:last-child{border-bottom:1px solid #c7c7c3}.faq-list summary{font-size:14px;font-weight:600;display:flex;gap:20px;justify-content:space-between;align-items:center;padding:24px 0}.faq-list summary span{font-size:22px;font-weight:400;color:#555}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:13px;line-height:1.9;max-width:540px;margin-bottom:25px;padding-right:30px}.contact{padding:110px 6% 115px;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid #333}.contact h2{font-size:clamp(52px,5.6vw,86px);letter-spacing:-.065em;line-height:1.02}.contact-copy>p:not(.eyebrow){font-size:14px;line-height:1.9}.contact-signature{display:block;margin-top:50px;font-size:16px;letter-spacing:-.03em}.contact-signature>span{display:block;font-size:10px;letter-spacing:0;color:#888;margin-top:4px}.contact-panel{padding-top:3px}.form-title{font-size:22px;letter-spacing:-.03em;margin-bottom:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.project-form label{display:block;font-size:11px;color:#c4c4c4;margin-bottom:24px}.project-form input,.project-form select,.project-form textarea{width:100%;border:0;border-bottom:1px solid #555;background:#111;color:#fff;border-radius:0;padding:13px 12px;margin-top:8px;min-height:47px;font-size:13px}.project-form input::placeholder,.project-form textarea::placeholder{color:#818181}.project-form textarea{min-height:125px;resize:vertical}.project-form select{appearance:auto;color-scheme:dark}.project-form .button{width:100%;margin-top:3px}.project-form .form-note{font-size:10px;line-height:1.8;margin:18px 0 0;color:#8d8d8d}.form-note a{text-decoration:underline;text-underline-offset:3px}.field-trap{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}.form-status{padding:22px;border:1px solid #777;margin-bottom:25px;font-size:14px;color:#eee}.form-status h3{margin-bottom:8px}.form-status p{font-size:12px;margin:0}.site-footer{padding:55px 6% 25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:50px}.footer-top p{font-size:13px;line-height:1.8;margin:0}.footer-top .text-link{font-size:12px}.footer-bottom{border-top:1px solid #303030;padding-top:24px;display:flex;gap:30px;font-size:9px;color:#858585}.footer-bottom>span:nth-child(2){margin-right:auto}.footer-bottom a:hover{color:white}.document{padding-top:100px;padding-bottom:100px;min-height:65vh}.document h1{font-size:clamp(45px,7vw,80px);letter-spacing:-.05em}.document-content{max-width:760px}.document-content h2{font-size:30px;margin-top:40px}.document-content p{line-height:1.9}.document-content a{text-decoration:underline}.document-content ul{color:#aaa}.js-motion .reveal{opacity:0;transform:translateY(20px);transition:opacity .65s,transform .65s}.js-motion .reveal.visible{opacity:1;transform:none}@keyframes hero-arrive{from{transform:scale(1.035);opacity:.3}to{transform:scale(1);opacity:.53}}
@media(min-width:1700px){.hero-copy{padding-top:100px}.hero h1{font-size:110px}.hero-visual{min-height:760px}}
@media(max-width:1100px){.site-header nav{gap:22px}.site-header .nav-cta{padding-left:20px;gap:20px}.hero-copy{padding-top:55px;padding-right:6%}.hero h1{font-size:clamp(57px,6.8vw,83px)}.hero-description{font-size:13px}.hero-visual{min-height:620px}.service-explorer{gap:5%;grid-template-columns:1fr 1fr}.service-detail summary{font-size:17px}.promise-strip>div{padding-inline:18px}.promise-strip h2{font-size:17px}.process,.faq,.contact{gap:7%}.preview-caption>span:last-child{display:none}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{height:74px;padding:0 6%}.brand-mark{width:40px;height:40px;font-size:36px}.brand-mark span{font-size:30px}.brand-name{font-size:18px}.brand-name>span{font-size:7px}.menu-toggle{display:flex;align-items:center;gap:14px;background:transparent;color:#eee;border:1px solid #555;padding:10px 12px;font-size:11px;min-height:42px}.menu-lines{width:16px;height:9px;border-top:1px solid #eee;border-bottom:1px solid #eee}.site-header nav{display:none;position:absolute;left:0;right:0;top:74px;background:#111;border-bottom:1px solid #555;padding:20px 6%;align-items:stretch;gap:0;flex-direction:column;font-size:15px}.site-header nav.open{display:flex}.site-header nav>a{padding:14px 0;border-bottom:1px solid #333}.site-header nav .nav-cta{border-left:0;padding-left:0;justify-content:space-between;border-bottom:0}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:52px 6% 25px;min-height:560px}.hero h1{font-size:clamp(57px,11.8vw,88px);margin-bottom:27px;letter-spacing:-.065em}.hero .eyebrow{font-size:9px;margin-bottom:28px}.hero-description{font-size:13px;max-width:420px;margin-bottom:25px}.hero .button{padding:16px 21px;min-height:54px}.hero-foot{padding-top:35px}.hero-foot>span{display:none}.hero-visual{min-height:380px;border-left:0;border-top:1px solid #333}.hero-visual>img{object-position:center 58%}.visual-title{top:25px;left:6%;right:6%;font-size:10px}.visual-caption{left:6%;right:6%;bottom:23px;font-size:9px}.promise-strip{grid-template-columns:1fr 1fr;padding:32px 6%;gap:30px 0}.promise-strip>div,.promise-strip>div:first-child{padding:0 17px 0 0;border:0}.promise-strip>div:nth-child(even){border-left:1px solid #ccc;padding:0 0 0 20px}.promise-strip h2{font-size:16px}.promise-strip p{font-size:11px}.mini-index{margin-bottom:11px}.services{padding:70px 0}.section-heading{text-align:left;margin-bottom:35px}.section-heading .eyebrow{justify-content:flex-start}.section-heading>p:last-child{font-size:13px}.desktop-break{display:none}h2{font-size:40px;letter-spacing:-.05em}.service-explorer{grid-template-columns:1fr;gap:30px}.explorer-visual{padding:16px}.preview-top{font-size:8px}.preview-caption{font-size:8px;padding-top:14px}.service-detail summary{font-size:17px;padding:21px 0}.service-body{padding-left:33px}.service-body p{font-size:12px}.work{padding:70px 0}.section-intro{display:block;margin-bottom:30px}.section-intro>p{margin-top:22px}.work-grid{grid-template-columns:1fr;gap:36px}.work-image{padding:24px 24px 0}.work-item figcaption{padding:19px 0}.work-item h3{font-size:21px}.process{grid-template-columns:1fr;padding:70px 6%;gap:45px}.process h2{font-size:40px}.process-heading>p:not(.eyebrow){font-size:13px}.process .text-link{margin-top:10px}.process-list h3{font-size:20px}.process-list li{gap:23px}.faq{grid-template-columns:1fr;gap:35px;padding:70px 6%}.faq-heading>p:not(.eyebrow){margin-top:22px}.faq-list summary{font-size:13px;line-height:1.6;padding:21px 0}.faq-list details p{font-size:12px;padding-right:10px}.contact{padding:70px 6%;grid-template-columns:1fr;gap:40px}.contact h2{font-size:58px}.contact-copy>p:not(.eyebrow){font-size:13px}.contact-signature{display:none}.form-title{font-size:21px}.form-row{gap:16px}.project-form label{font-size:10px}.project-form input,.project-form select,.project-form textarea{font-size:16px;padding:12px 10px}.footer-top{align-items:flex-start;flex-wrap:wrap;padding-bottom:30px;gap:25px}.footer-top p{font-size:11px}.footer-top .text-link{width:100%;justify-content:space-between}.site-footer{padding:40px 6% 25px}.footer-bottom{flex-wrap:wrap;gap:15px 22px;justify-content:space-between}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>span:first-child{width:100%}.document{padding-block:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.hero-visual>img{opacity:.53}}

/* Two-line brand headline; the rotating line reserves its height. */
.hero-copy{container-type:inline-size;position:relative}.hero h1{width:100%;margin-bottom:25px}.hero h1 .hero-rotator{display:block;position:relative;height:1.35em;line-height:1.3;font-size:clamp(26px,10cqw,74px);letter-spacing:-.055em;overflow:hidden;color:#aaa;margin-top:-.1em}.rotator-word{display:block;white-space:nowrap;transform-origin:center bottom}.rotator-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rotation-toggle{background:none;border:1px solid #444;color:#aaa;width:28px;height:28px;font-size:12px;padding:0;margin:-12px 0 20px;line-height:1}.rotation-toggle[hidden]{display:none}.rotation-toggle:hover{color:#fff;border-color:#aaa}

.hero h1>span:first-child{font-weight:800;letter-spacing:-.07em}.hero h1 .hero-rotator{line-height:1.15;height:1.25em}.rotator-cell,.rotator-glyph{display:inline-block;vertical-align:top}.rotator-cell.clipped{overflow:hidden}.rotator-glyph{transform-origin:center bottom}

/* Keep motion control available to keyboard users without visible chrome. */
.rotation-toggle:not(:focus-visible){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.rotation-toggle:focus-visible{position:absolute;z-index:2;margin:0;transform:translateY(-32px);background:#080808}

/* Header wordmark follows the hero typography. */
.site-header .brand-name{font-size:30px;font-weight:800;letter-spacing:-.07em;line-height:1}.site-header .brand-name>span{font-size:21px;font-weight:500;letter-spacing:-.055em;line-height:1.05;margin-top:1px;color:#aaa}@media(max-width:760px){.site-header .brand-name{font-size:27px}.site-header .brand-name>span{font-size:19px}}

.site-header .brand-medallion{width:52px;height:52px;object-fit:cover;border-radius:50%;flex-shrink:0}.site-header .brand{gap:12px}@media(max-width:760px){.site-header .brand-medallion{width:44px;height:44px}.site-header .brand{gap:10px}}

.hero-illustration{background:#c8c8c8}.hero-illustration>img{object-fit:contain;object-position:center;opacity:1;animation:none}.hero-illustration:after{background:linear-gradient(180deg,#00000008,transparent 30%,transparent 75%,#0000000d)}.hero-illustration .visual-title,.hero-illustration .visual-caption{color:#222}.hero-illustration .visual-caption{border-color:#5555}.hero-illustration .status-dot{background:#222}

.hero-meeting>img{object-position:54% center}@media(max-width:760px){.hero-meeting>img{object-position:50% center}}

.portal-home-account{font-size:12px;margin-top:25px}.contact-panel>.button{margin-top:12px}
