:root{
  --bg:#faf9f5;
  --bg-2:#f0eee6;
  --bg-3:#e8e6dc;
  --card:#ffffff;
  --line:rgba(20,20,19,.10);
  --line-2:rgba(20,20,19,.16);
  --ink:#141413;
  --slate:#3d3d3a;
  --muted:#5e5d59;
  --faint:#87867f;
  --clay:#d97757;
  --accent:#c6613f;
  --steel:#c6613f;
  --orange:#c6613f;
  --orange-soft:#d97757;
  --r:8px;
  --r-lg:16px;
  --r-xl:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg) !important;
  color:var(--ink) !important;
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:inherit}

.wrap{max-width:1100px;margin:0 auto;padding:0 28px}
.site-wide{max-width:1100px;margin:0 auto;padding:0 28px}
.site-page{position:relative;z-index:2;min-height:100vh}
.site-backdrop{
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(120% 90% at 50% 24%,transparent 34%,rgba(250,249,245,.62) 72%,var(--bg) 100%),
    var(--bg);
}

.site-nav,
nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:26px 0;
}
.site-brand,
.brand{
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  font-weight:700 !important;
  letter-spacing:-.01em !important;
  font-size:1.32rem !important;
  text-decoration:none;
  color:var(--ink) !important;
}
.site-brand span,
.brand span{color:var(--accent) !important}
.site-links,
.nlinks{
  display:flex;
  gap:30px;
  align-items:center;
}
.site-links a,
.nlinks a{
  text-decoration:none;
  color:var(--muted) !important;
  font-weight:500 !important;
  font-size:.94rem;
  transition:color .15s,background .15s,border-color .15s,transform .15s;
}
.site-links a:hover,
.nlinks a:hover{color:var(--ink) !important}
.site-links a.site-cta,
.nlinks a.cta{
  color:#faf9f5 !important;
  background:var(--ink) !important;
  border:1.5px solid var(--ink) !important;
  padding:9px 18px !important;
  border-radius:var(--r) !important;
  font-weight:500 !important;
}
.site-links a.site-cta:hover,
.nlinks a.cta:hover{
  background:var(--slate) !important;
  border-color:var(--slate) !important;
}

.word{display:none !important}
.serif,
.site-title,
.sec-title,
h1,
h2,
.hero h1,
.proj h2,
.cta h2,
.formwrap h2,
.contact h2,
.feature h2,
.trust h3,
.side h3,
.c h3,
.g h3,
.step h3,
.card h3,
.app h3,
.move h1{
  font-family:'Newsreader',Georgia,serif !important;
  font-weight:500 !important;
  letter-spacing:-.01em !important;
  color:var(--ink) !important;
}
.hero{
  min-height:84vh !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start !important;
  text-align:left !important;
  padding:36px 28px 84px !important;
  max-width:936px !important;
}
h1{
  font-size:clamp(2rem,5vw,3rem) !important;
  line-height:1.04 !important;
  margin-bottom:24px !important;
}
.hero h1{
  font-size:clamp(2.7rem,6.4vw,4.8rem) !important;
}
.move h1{font-size:clamp(2rem,5vw,3.2rem) !important}
h1 em,
.site-title em,
.site-title span,
.rot,
.stat .num b{font-style:italic;color:var(--accent) !important}
.hero .sub,
.lede,
.site-lede{
  color:var(--slate) !important;
  font-size:clamp(1.06rem,1.7vw,1.28rem);
  line-height:1.55;
}
.hero.hero-split{
  min-height:auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,.86fr);
  gap:42px;
  align-items:center !important;
  text-align:left !important;
  padding:58px 28px 44px !important;
  max-width:1100px !important;
}
.hero.hero-split h1{
  font-size:clamp(2.4rem,5.4vw,4rem) !important;
}
.eyebrow,
.site-pill,
.kicker,
.tag{
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:.16em !important;
  font-size:.74rem !important;
  color:var(--accent) !important;
}
.eyebrow,
.site-pill{
  display:inline-flex;
  align-items:center;
  gap:9px;
  border:1px solid rgba(198,97,63,.28) !important;
  border-radius:100px !important;
  padding:7px 16px !important;
  margin-bottom:24px;
}
.site-pill .dot,
.eyebrow .dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent) !important;
  box-shadow:none !important;
}

section{
  padding:84px 0 !important;
  position:relative;
  background:transparent !important;
  border-color:var(--line) !important;
}
section.alt{background:var(--bg-2) !important}
.sec-title{font-size:clamp(2rem,4vw,3rem) !important;line-height:1.1 !important}
.sec-sub{color:var(--muted) !important;line-height:1.55}
.center{text-align:center}
.center .sec-sub,
.center .site-lede{margin-left:auto;margin-right:auto}

.site-card,
.site-panel,
.c,
.ind,
.feature,
.side,
.contact,
.proj,
.g,
.step,
.formwrap,
.card,
.app,
.global,
.quote,
.cta,
.stat{
  background:var(--card) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r-lg) !important;
  color:var(--ink) !important;
  box-shadow:none !important;
}
.feature,
.contact,
.formwrap{border-radius:var(--r-xl) !important}
.side,
.step,
.stat{background:var(--bg-2) !important}
.proj:hover,
.c:hover,
.app:hover,
.ind:hover{
  transform:translateY(-3px);
  border-color:var(--line-2) !important;
  box-shadow:0 12px 30px rgba(20,20,19,.06) !important;
}
.proj p,
.c p,
.g p,
.step p,
.card p,
.app p,
.feature p,
.side p,
.contact p,
p,
li,
ul,
.muted,
.updated,
.reassure,
.formwrap .sub,
.inds-note{
  color:var(--muted) !important;
}
strong,
.feat .row b{color:var(--ink) !important}
.c .n,
.side .n,
.metrics .m b,
.stats .m b,
.g .num,
.stat .num,
.arrow,
.feature .link,
.inds-note a,
.cor a,
footer a,
a{color:var(--accent)}
.metrics .m b,
.stats .m b,
.stat .num{
  font-family:'Newsreader',Georgia,serif !important;
  font-weight:600 !important;
}
.metrics .m span,
.stats .m span,
.stat .lab{
  color:var(--muted) !important;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.ind .ic svg{stroke:var(--accent) !important}
.ind span:not(.ic){color:var(--slate) !important;font-weight:500 !important}

.btn,
.site-btn,
button.btn{
  display:inline-block;
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  font-weight:600 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  font-size:.96rem !important;
  text-decoration:none;
  padding:14px 28px !important;
  border-radius:var(--r) !important;
  background:var(--ink) !important;
  color:#faf9f5 !important;
  border:1.5px solid var(--ink) !important;
  transition:background .15s,transform .15s,border-color .15s;
}
.btn:hover,
.site-btn:hover,
button.btn:hover{
  background:var(--slate) !important;
  border-color:var(--slate) !important;
  transform:translateY(-1px);
  box-shadow:none !important;
}
.btn.ghost,
.site-btn.ghost{
  background:transparent !important;
  color:var(--ink) !important;
  border:1.5px solid var(--line-2) !important;
}
.btn.ghost:hover,
.site-btn.ghost:hover{
  background:transparent !important;
  border-color:var(--ink) !important;
}

.cform input,
.cform textarea{
  background:var(--bg) !important;
  border:1px solid var(--line-2) !important;
  border-radius:var(--r) !important;
  color:var(--ink) !important;
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
}
.cform input:focus,
.cform textarea:focus{
  outline:none;
  border-color:var(--accent) !important;
}
.cform input::placeholder,
.cform textarea::placeholder{color:var(--faint) !important}
.cmsg.ok{color:var(--accent) !important}
.cmsg.err{color:#b4452a !important}

.chips .chip,
.chip,
.langrow span{
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  font-weight:500 !important;
  background:var(--bg-2) !important;
  color:var(--slate) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--r) !important;
}
.feat .chk{
  background:rgba(198,97,63,.10) !important;
  color:var(--accent) !important;
}
.step::before{
  font-family:'Inter',system-ui,-apple-system,sans-serif !important;
  color:var(--accent) !important;
  border-color:rgba(198,97,63,.28) !important;
}
.quote{
  border-left:3px solid var(--accent) !important;
}
.quote p{
  color:var(--ink) !important;
  font-family:'Newsreader',Georgia,serif !important;
  font-weight:500 !important;
}
.callout{
  background:var(--card) !important;
  border:1px solid var(--line) !important;
  border-left:3px solid var(--accent) !important;
  border-radius:var(--r-lg) !important;
}

.site-visual{
  display:block;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:var(--card);
  box-shadow:0 18px 45px rgba(20,20,19,.05);
}
.site-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.feature-visual{
  aspect-ratio:16/10;
  margin-bottom:18px;
}
.hero-visual{
  aspect-ratio:4/3;
}
.workflow-visual{
  aspect-ratio:16/9;
}
.audit-visual img{
  object-position:center;
}
.workflow-visual{
  margin:24px 0 28px;
}
.workflow-visual img{
  object-position:center 46%;
}
.proj-with-media{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);
  gap:30px;
  align-items:center;
}
.proj-media{
  aspect-ratio:16/10;
}
.proj-media img{
  object-position:center;
}

.site-footer,
footer{
  border-top:1px solid var(--line) !important;
  padding:32px 0 54px !important;
  color:var(--muted) !important;
  font-size:.86rem !important;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  background:transparent !important;
}
.site-footer a,
footer a{
  color:var(--muted) !important;
  text-decoration:none;
}
.site-footer a:hover,
footer a:hover{color:var(--accent) !important}

@media(max-width:860px){
  .svc{grid-template-columns:1fr 1fr}
  .inds{grid-template-columns:repeat(3,1fr)}
  .feature,
  .hero.hero-split,
  .proj-with-media,
  .two{grid-template-columns:1fr}
  .trust{grid-template-columns:1fr}
}
@media(max-width:720px){
  .wrap,
  .site-wide{padding:0 22px}
  .site-nav,
  nav{padding:20px 0}
  .site-links,
  .nlinks{gap:14px}
  .site-links .hide-mobile,
  .nlinks .hide{display:none}
  .site-links a.site-cta,
  .nlinks a.cta{padding:8px 13px !important}
  .hero{min-height:78vh !important;padding:44px 22px 56px !important}
  .hero.hero-split{
    min-height:auto !important;
    padding:42px 22px 30px !important;
    gap:26px;
  }
  .hero h1,
  h1{font-size:clamp(2.3rem,12vw,3.4rem) !important}
  .site-footer,
  footer{display:block;line-height:1.9}
}
@media(max-width:560px){
  .svc,
  .inds,
  .get,
  .steps,
  .stats,
  .apps,
  .grid,
  .feat{grid-template-columns:1fr !important}
}
