/* Nitbit: monochrome enterprise. DESIGN_VARIANCE 7 / MOTION_INTENSITY 4 / VISUAL_DENSITY 3.
   Native CSS, dependency-free. Sharp geometry. Layers: content 0, navigation 10, skip link 20. */
:root{color-scheme:light dark;--white:#fdfdfd;--off-white:#f4f4f4;--light-gray:#ededed;--medium-gray:#d8d8d8;--text-gray:#606060;--charcoal:#262626;--black:#111;--font-primary:'Helvetica Neue',Helvetica,Arial,sans-serif;--container-width:1320px;--section-padding:112px;--transition:180ms ease;--border-radius:0px;--surface:var(--white);--ink:var(--black)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font-primary);-webkit-font-smoothing:antialiased;line-height:1.5}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
img{display:block;max-width:100%}
figure,p,h1,h2,h3{margin:0}
::selection{background:var(--ink);color:var(--surface)}
.container{width:min(calc(100% - 112px),var(--container-width));margin-inline:auto}
.section{padding-block:var(--section-padding)}
.skip-link{position:fixed;top:8px;left:16px;z-index:20;padding:12px;background:var(--ink);color:var(--surface);transform:translateY(-160%)}
.skip-link:focus{transform:none}
.site-header{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--light-gray)}
.nav{height:80px;display:flex;align-items:center;justify-content:space-between}
.brand{display:block;flex-shrink:0}
.brand img{width:43px;height:50px;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:36px;font-size:13px;font-weight:500}
.nav-links>a{transition:opacity var(--transition)}
.nav-links>a:hover{opacity:.6}
.nav-contact{margin-left:12px;border:1px solid var(--medium-gray);padding:11px 17px}
.nav-contact span{margin-left:26px;font-size:17px}
.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:36px;padding-block:65px 72px;min-height:660px}
.hero-copy{position:relative;z-index:1}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:600;margin-bottom:26px}
.hero h1{font-size:clamp(54px,5.8vw,83px);font-weight:500;line-height:1.02;letter-spacing:-.065em}
.hero h1 span{color:var(--text-gray)}
.hero-description{max-width:365px;font-size:17px;line-height:1.65;color:var(--text-gray);margin-block:29px 30px}
.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:15px 21px;font-size:13px;font-weight:500;white-space:nowrap;transition:background var(--transition),transform var(--transition)}
.button-solid{background:var(--ink);color:var(--surface)}
.button:hover{background:var(--charcoal);color:var(--white)}
.button:active{transform:translateY(1px)}
.button span{font-size:20px;line-height:1}
.hero-art{overflow:hidden;background:#dedede;aspect-ratio:1/1.08}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:51% center}
.intro-strip{display:grid;grid-template-columns:1fr 1.2fr .9fr;align-items:center;gap:54px;padding-block:32px;border-top:1px solid var(--medium-gray);border-bottom:1px solid var(--medium-gray)}
.intro-strip>p:first-child{font-size:16px;line-height:1.55}
.intro-strip strong{font-weight:500}
.intro-strip>p:nth-child(2){color:var(--text-gray);font-size:13px;max-width:330px}
.text-link{display:inline-flex;align-items:center;gap:22px;font-size:13px;font-weight:500}
.text-link span{font-size:22px;transition:transform var(--transition)}
.text-link:hover span{transform:translate(3px,-3px)}
.intro-strip .text-link{justify-self:end}
.section-heading{margin-bottom:48px}
.section-heading h2,h2{font-size:clamp(33px,3.55vw,50px);font-weight:500;letter-spacing:-.045em;line-height:1.12}
.section-heading p:not(.eyebrow){max-width:470px;margin-top:20px;font-size:15px;color:var(--text-gray);line-height:1.7}
.services-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}
.service-feature{background:var(--off-white);padding:38px;display:flex;flex-direction:column;justify-content:space-between;min-height:550px}
.service-type{font-size:11px;color:var(--text-gray)}
.service-feature h3{font-weight:500;font-size:52px;line-height:1.05;letter-spacing:-.045em;margin-top:46px}
.service-feature p{font-size:15px;color:var(--text-gray);max-width:310px;margin-top:28px;line-height:1.75}
.service-feature .text-link{margin-top:35px}
.service-row{display:grid;grid-template-columns:1fr 22px;padding:22px 0;border-bottom:1px solid var(--medium-gray)}
.service-row:first-child{padding-top:0}
.service-row h3{font-size:21px;font-weight:500;letter-spacing:-.02em}
.service-row p{font-size:14px;color:var(--text-gray);line-height:1.6;max-width:370px;grid-column:1;margin-top:8px}
.service-row>span{grid-column:2;grid-row:1;font-size:23px;color:var(--text-gray)}
.about{background:var(--off-white)}
.about-statement{max-width:950px}
.about-statement h2{font-size:clamp(34px,4.4vw,61px);line-height:1.14}
.about-statement h2 span{color:var(--text-gray)}
.about-statement>p:last-child{font-size:18px;color:var(--text-gray);max-width:640px;margin-top:30px;line-height:1.65}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:54px;margin-top:65px}
.principles article{border-top:1px solid var(--medium-gray);padding-top:24px}
.principles h3{font-size:16px;font-weight:500}
.principles p{font-size:14px;color:var(--text-gray);margin-top:12px;line-height:1.7}
.process-grid{list-style:none;margin:58px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.process-grid li{border-top:1px solid var(--medium-gray);padding-top:25px}
.step-index{font-family:ui-monospace,monospace;font-size:12px;color:var(--text-gray)}
.process-grid h3{font-size:20px;font-weight:500;letter-spacing:-.03em;margin-top:42px}
.process-grid p{font-size:14px;line-height:1.7;color:var(--text-gray);margin-top:14px}
.deliverable{display:block;font-size:11px;margin-top:28px;color:var(--text-gray)}
.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;border-top:1px solid var(--medium-gray)}
.faq h2{font-size:39px}
.faq-list details{border-bottom:1px solid var(--medium-gray)}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;cursor:pointer;list-style:none;font-size:16px}
.faq-list details:first-child summary{padding-top:5px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{font-weight:300;font-size:25px;line-height:1;flex-shrink:0;transition:transform var(--transition)}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details>p{font-size:14px;line-height:1.8;color:var(--text-gray);padding:0 35px 24px 0}
.contact{border-top:1px solid var(--medium-gray);display:grid;grid-template-columns:1.35fr .65fr;align-items:center}
.contact h2{font-size:clamp(37px,4.7vw,67px)}
.contact-copy>p:not(.eyebrow){color:var(--text-gray);max-width:410px;font-size:16px;margin-block:25px 31px}
.email-link{display:block;font-size:14px;width:fit-content;margin-top:23px;border-bottom:1px solid var(--medium-gray);padding-bottom:4px}
.email-link:hover{border-color:var(--ink)}
.contact-symbol{font-size:240px;line-height:1;text-align:center;font-weight:200}
footer{border-top:1px solid var(--medium-gray)}
.footer-top{display:grid;grid-template-columns:90px 1fr auto;gap:45px;padding-block:45px;align-items:center}
.footer-top>p{font-size:13px;color:var(--text-gray)}
.footer-links{display:flex;gap:30px;font-size:12px}
.footer-bottom{display:flex;justify-content:space-between;padding-block:21px;border-top:1px solid var(--light-gray);color:var(--text-gray);font-size:11px}
.footer-bottom a:hover{color:var(--ink)}

@media(prefers-reduced-motion:no-preference){.hero-copy{animation:enter .7s both}
.hero-art{animation:enter .85s .1s both}
.will-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}
.will-reveal.visible{opacity:1;transform:none}
@keyframes enter{from{opacity:0;transform:translateY(18px)}
to{opacity:1;transform:none}
}
}

@media(prefers-color-scheme:dark){:root{--white:#ededed;--off-white:#1a1a1a;--light-gray:#292929;--medium-gray:#3c3c3c;--text-gray:#aaa;--charcoal:#d8d8d8;--surface:#111;--ink:#ededed}
.brand img{filter:invert(1)}
.button:hover{background:#c7c7c7;color:#111}
.hero-art{background:#bbb}
.hero-art img{filter:brightness(.83)}
}

@media(min-width:1600px){.hero{min-height:740px}
.hero h1{font-size:91px}
}

@media(max-width:1100px){.container{width:calc(100% - 64px)}
.hero{gap:22px;min-height:590px;padding-block:55px}
.hero h1{font-size:65px}
.hero-description{font-size:16px}
.intro-strip{gap:25px}
.services-layout{gap:35px}
.service-feature{padding:28px}
.principles{gap:30px}
.process-grid{gap:20px}
.process-grid h3{font-size:18px}
.faq{gap:35px}
}

@media(max-width:768px){:root{--section-padding:70px}
.container{width:calc(100% - 40px)}
.nav{height:70px}
.brand img{width:36px;height:44px}
.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:1px solid var(--medium-gray);background:var(--surface);color:var(--ink);width:44px;height:44px;padding:11px}
.menu-toggle span{height:1px;width:20px;background:currentColor;transition:transform var(--transition)}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.nav-links{display:none;position:absolute;left:0;right:0;top:70px;background:var(--surface);padding:22px 20px 30px;border-bottom:1px solid var(--medium-gray);flex-direction:column;align-items:stretch;gap:0}
.nav-links.is-open{display:flex}
.nav-links>a{padding:14px}
.nav-contact{margin:10px 0 0;display:flex;justify-content:space-between}
.hero{grid-template-columns:1fr;gap:35px;padding-block:45px;min-height:0}
.hero h1{font-size:clamp(51px,9.8vw,74px)}
.hero-description{max-width:390px;margin-block:23px}
.eyebrow{font-size:10px;margin-bottom:22px}
.hero-art{aspect-ratio:1.3;max-height:490px}
.intro-strip{grid-template-columns:1fr;gap:19px;padding-block:25px}
.intro-strip>p:nth-child(2){max-width:400px}
.intro-strip .text-link{justify-self:start}
.services-layout{grid-template-columns:1fr;gap:35px}
.service-feature{min-height:420px}
.service-feature h3{font-size:46px;margin-top:30px}
.service-feature p{max-width:400px}
.section-heading{margin-bottom:35px}
.principles{grid-template-columns:1fr;gap:27px;margin-top:40px}
.principles p{max-width:450px}
.about-statement>p:last-child{font-size:16px}
.process-grid{grid-template-columns:1fr 1fr;gap:36px 24px;margin-top:35px}
.process-grid h3{margin-top:25px}
.deliverable{margin-top:17px}
.faq{grid-template-columns:1fr;gap:27px}
.faq h2{font-size:34px}
.faq-list summary{font-size:15px}
.contact{grid-template-columns:1fr}
.contact-symbol{display:none}
.contact h2{font-size:clamp(35px,7.7vw,54px)}
.footer-top{grid-template-columns:50px 1fr;gap:25px}
.footer-links{grid-column:1/-1;gap:28px}
.footer-bottom{gap:20px;font-size:10px}
.footer-bottom>a{white-space:nowrap}
}

@media(max-width:380px){.hero h1{font-size:49px}
.process-grid{grid-template-columns:1fr}
.button{gap:22px}
.contact h2{font-size:33px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
.will-reveal{opacity:1;transform:none}
}

@media print{.site-header,.button,.menu-toggle,.contact-symbol{display:none}
.will-reveal{opacity:1;transform:none}
.section{padding-block:35px}
body{background:white;color:black}
.container{width:100%}
}
