:root{--ink:#050706;--muted:#6f7e96;--paper:#fff;--surface:#f1f3f5;--line:#c0cad7;--accent:#0074ff;--font:Arial,Helvetica,sans-serif;--gutter:clamp(24px,5.67vw,88px);--content:1200px;--radius-pill:999px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{width:calc(100% - var(--gutter)*2);max-width:var(--content);margin-inline:auto}.skip{position:absolute;top:-80px;left:24px;background:#fff;color:#000;padding:12px;z-index:10}.skip:focus{top:12px}.hero{height:73.0042vw;max-height:1000px;min-height:640px;background:#21170f url('/assets/hero-office.webp') center/cover no-repeat;color:#fff;position:relative}.header{height:72px;display:flex;justify-content:space-between;align-items:flex-start;padding-top:15px}.brand{font-size:24px;font-weight:700;letter-spacing:-1.1px;white-space:nowrap}.header nav{display:flex;align-items:center;gap:26px;padding-top:7px;font-size:12px}.header nav button{border:0;background:none;padding:0}.header nav a:hover,.header nav button:hover{text-decoration:underline;text-underline-offset:5px}.header nav span{font-size:17px;margin-left:5px}.hero-copy{padding-top:49px}.eyebrow{font-size:10px;line-height:1.5;font-weight:700;letter-spacing:3px;text-transform:uppercase}.hero h1{font-size:clamp(76px,8vw,112px);line-height:.87;letter-spacing:-4px;font-weight:700;margin-top:10px}.hero-description{font-size:22px;line-height:29px;letter-spacing:-.55px;margin-top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:var(--radius-pill);min-height:43px;padding:12px 29px;font-size:14px;line-height:19px;letter-spacing:-.4px;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-light{background:#fff;color:#050706;margin-top:17px;min-width:214px}.button-dark{background:#050908;color:#fff;min-width:217px}.button-light:hover{background:#edf0f4}.button-dark:hover{background:#242a28}.introduction{min-height:145px;display:grid;grid-template-columns:60% 40%;align-items:center;gap:0;padding-block:32px 24px}.introduction>div{transform:translateY(-10px)}.introduction .eyebrow{color:var(--muted);letter-spacing:2.4px;margin-bottom:6px}.introduction h2{font-size:42px;line-height:1.08;letter-spacing:-2.3px;white-space:nowrap}.introduction>p{font-size:16px;line-height:22px;letter-spacing:-.45px;color:var(--muted)}.steps{background:var(--surface)}.step{display:grid;grid-template-columns:74px 338px 1fr;align-items:start;min-height:123px;padding-block:36px 27px;border-bottom:1px solid var(--line)}.step:last-child{border:0;min-height:170px;padding-block:33px 32px}.step-number{font-size:21px;line-height:27px;color:var(--accent);font-weight:500;letter-spacing:-.9px}.step h3{font-size:32px;line-height:35px;letter-spacing:-1.7px;font-weight:700}.step p{max-width:250px;font-size:15px;line-height:20px;letter-spacing:-.4px;color:var(--muted)}.long-term{height:198px;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:10px;padding-bottom:4px}.long-term h2{font-size:52px;line-height:1.12;letter-spacing:-2.8px}.long-term p{color:var(--muted);font-size:20px;line-height:25px;letter-spacing:-.5px}.contact{background:var(--surface);text-align:center;padding-top:32px}.contact h2{font-size:38px;line-height:1.14;letter-spacing:-1.8px;margin-bottom:10px}.contact footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:17px;min-height:53px;text-align:left}.contact footer .brand{font-size:16px;letter-spacing:-.8px}.contact footer p{font-size:10px;color:var(--muted)}.contact footer p span{margin-inline:10px}dialog{border:0;border-radius:5px;padding:48px;max-width:540px;width:calc(100% - 40px);color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}dialog .eyebrow{color:var(--muted);margin-bottom:12px}dialog h2{font-size:36px;line-height:1.05;letter-spacing:-1.5px;margin-bottom:20px}dialog p:not(.eyebrow){font-size:17px;line-height:1.6;color:#4e5b70;margin-bottom:20px}dialog .button{margin-top:5px}.dialog-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:28px;padding:2px 10px}.noscript{padding:20px;text-align:center;font-size:14px}
@media(min-width:1200px){.hero-copy{padding-top:75px}.hero-description{font-size:26px;line-height:34px}.introduction{padding-block:42px}.step{grid-template-columns:90px 42% 1fr;padding-block:42px}.step p{max-width:330px}.contact{padding-top:40px}}
@media(max-width:850px){.hero{min-height:590px;max-height:none;height:78vw}.hero h1{font-size:68px}.introduction>div{transform:none}.introduction{grid-template-columns:1fr;gap:18px;padding-block:32px}.introduction h2{white-space:normal;font-size:38px}.introduction>p{max-width:600px}.step{grid-template-columns:55px 1fr 1fr;gap:15px}.step h3{font-size:28px;line-height:31px}.long-term h2{font-size:46px}.contact h2{font-size:34px}}
@media(max-width:600px){html{scroll-padding-top:16px}.hero{height:720px;min-height:0;background-position:57% center}.header{height:104px;display:block;padding-top:20px}.header .brand{font-size:24px}.header nav{gap:20px;padding-top:18px;font-size:12px}.hero-copy{padding-top:42px}.hero-copy .eyebrow{font-size:9px;letter-spacing:2.5px}.hero h1{font-size:clamp(42px,10.7vw,64px);letter-spacing:-2.2px;line-height:.98;margin-top:13px}.hero-description{font-size:19px;line-height:26px;letter-spacing:-.4px;max-width:380px;margin-top:22px}.desktop-break{display:none}.hero .button{margin-top:23px}.introduction{padding-block:35px}.introduction h2{font-size:34px;letter-spacing:-1.6px;max-width:350px}.introduction>p{font-size:16px;line-height:23px}.step,.step:last-child{grid-template-columns:40px 1fr;gap:12px;min-height:0;padding-block:29px}.step h3{font-size:28px;line-height:31px;letter-spacing:-1.4px}.step p{grid-column:2;max-width:100%;font-size:16px;line-height:23px;margin-top:3px}.step-number{font-size:20px}.long-term{height:auto;padding-block:48px;gap:16px}.long-term h2{font-size:39px;line-height:1.05;letter-spacing:-1.8px}.long-term p{font-size:18px;line-height:25px}.contact{padding-top:38px}.contact h2{font-size:32px;line-height:1.12;letter-spacing:-1.4px;margin-bottom:20px}.contact footer{margin-top:32px;min-height:78px;gap:12px}.contact footer p{font-size:9px}.contact footer p span{margin-inline:5px}dialog{padding:38px 26px}dialog h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

.process{padding-block:46px 26px}.process-wide{display:block;width:100%;height:auto}.process-mobile{display:none}@media(max-width:700px){.process{padding-block:36px 12px}.process-wide{display:none}.process-mobile{display:flex;flex-direction:column;align-items:center}.process-mobile img{display:block;width:100%;height:auto;max-width:460px}.process-mobile img:first-child{width:48%;max-width:220px;margin-bottom:-30px}.process-arrow{font-size:36px;color:var(--accent);line-height:1;margin-block:4px 12px}.process-mobile img:last-child{margin-top:12px}}

/* Restrained interaction feedback; no continuous animation or scroll hijacking. */
.button{transition:transform .22s cubic-bezier(.22,1,.36,1),background .22s,box-shadow .22s}.button span{display:inline-block;transition:transform .22s}.button:active{transform:translateY(0) scale(.98)}.header nav a,.header nav button{position:relative}.header nav a::after,.header nav button::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .22s}.header nav a:hover,.header nav button:hover{text-decoration:none}.step-number,.step h3{transition:transform .25s,color .25s}.dialog-close{border-radius:50%;transition:background .2s,transform .2s}.process-wide{overflow:visible}
@media(hover:hover) and (pointer:fine){.button:hover{box-shadow:0 5px 16px #0001}.button:hover span{transform:translate(2px,-2px)}.header nav a:hover::after,.header nav button:hover::after{transform:scaleX(1)}.step:hover .step-number{transform:translateX(3px)}.step:hover h3{color:#34475c}.dialog-close:hover{background:var(--surface);transform:rotate(5deg)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.button span,.step-number,.step h3,.dialog-close,.header nav a::after,.header nav button::after{transition:none}.button:hover,.button:active,.button:hover span,.step:hover .step-number,.dialog-close:hover{transform:none}}
