*{box-sizing:border-box}
:root{
  --cream:#f5f0e8;
  --ivory:#fbf8f3;
  --stone:#e9dfd3;
  --sand:#d9c8b6;
  --brown:#5a3828;
  --brown-dark:#3b261d;
  --ink:#2f2723;
  --muted:#746a63;
  --line:#d8ccbf;
}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:var(--ivory);
  line-height:1.55;
}
img{width:100%;display:block}
a{text-decoration:none;color:inherit}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.topbar{
  max-width:1440px;margin:0 auto;padding:16px 34px;display:flex;align-items:center;
  justify-content:space-between;background:var(--ivory);border-bottom:1px solid var(--line)
}
.brand{width:170px}
.brand img,footer img{mix-blend-mode:multiply}
.nav{display:flex;align-items:center;gap:26px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}
.nav a{padding:10px 0}
.nav-cta{background:var(--brown);color:#fff;padding:13px 18px!important}
.menu-btn{display:none;background:none;border:0;color:var(--brown);text-transform:uppercase;letter-spacing:.08em}
main,.topbar,footer{max-width:1440px}
main,footer{margin:0 auto}
.hero{background:var(--cream)}
.hero-media{position:relative;min-height:580px;overflow:hidden}
.hero-media>img{height:580px;object-fit:cover;object-position:center}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(42,27,21,.72) 0%,rgba(42,27,21,.42) 37%,rgba(42,27,21,.08) 68%,rgba(42,27,21,0) 100%)
}
.hero-content{
  position:absolute;left:8%;top:50%;transform:translateY(-50%);max-width:610px;color:white
}
.eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brown)}
.eyebrow.light{color:#ead9cb}
.hero h1{font-size:clamp(3.1rem,5.5vw,5.7rem);line-height:.98;letter-spacing:-.04em;margin:12px 0 18px;color:#fff}
.hero-sub{max-width:460px;font-size:1rem;margin-bottom:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.07em;font-size:.72rem;font-weight:700}
.light-btn{background:#fff;color:var(--brown)}
.section{padding:76px 64px}
.intro-services{display:grid;grid-template-columns:.92fr 2.08fr;gap:56px;background:var(--cream)}
.about-card h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.03;color:var(--brown-dark);margin:10px 0 20px}
.about-card>p:not(.eyebrow){color:var(--muted)}
.text-link{display:inline-block;margin-top:14px;color:var(--brown);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.service-icons{display:grid;grid-template-columns:repeat(4,1fr);align-items:start}
.service-icons article{padding:18px 24px;border-left:1px solid var(--line);text-align:center;min-height:220px}
.service-icons .icon{font-size:2rem;color:var(--brown);height:54px}
.service-icons h3{font-family:Arial,Helvetica,sans-serif;font-size:.86rem;font-weight:700;text-transform:uppercase;line-height:1.4;margin:12px 0}
.service-icons p{font-size:.79rem;color:var(--muted)}
.projects{background:var(--ivory)}
.center-heading{text-align:center;max-width:800px;margin:0 auto 38px}
.center-heading h2{font-size:clamp(2.3rem,4vw,4rem);color:var(--brown-dark);margin:8px 0 0}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.project-card img{aspect-ratio:1.42/1;object-fit:cover}
.project-copy{padding:14px 2px}
.project-copy h3{font-size:1.15rem;margin-bottom:3px;color:var(--brown-dark)}
.project-copy p{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.transformation{
  background:var(--stone);display:grid;grid-template-columns:.58fr 1.42fr;gap:45px;align-items:center
}
.before-copy h2{font-size:3rem;color:var(--brown-dark);margin:7px 0 17px}
.before-copy p:not(.eyebrow){color:var(--muted)}
.comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.compare-panel{position:relative}
.compare-panel img{height:330px;object-fit:cover}
.compare-panel span{
  position:absolute;left:12px;bottom:12px;background:var(--brown);color:white;padding:8px 12px;
  text-transform:uppercase;font-size:.66rem;letter-spacing:.12em
}
.process{background:var(--cream)}
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.process-grid article{border-right:1px solid var(--line);padding-right:14px}
.process-grid article:last-child{border-right:0}
.process-grid img{aspect-ratio:1.35/1;object-fit:cover;background:white}
.process-row{display:flex;align-items:baseline;gap:12px;margin:15px 0 7px}
.process-row span{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;color:var(--brown)}
.process-row h3{font-family:Arial,Helvetica,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;margin:0}
.process-grid p{font-size:.74rem;color:var(--muted)}
.contact-band{
  background:var(--brown);color:white;padding:64px;display:grid;grid-template-columns:.8fr 1.2fr;gap:70px
}
.contact-band h2{font-size:3.25rem;line-height:1.03;margin:8px 0 18px;color:#fff}
.contact-band p{color:#e3d7cf}
.contact-band a{display:inline-block;margin-top:10px;border-bottom:1px solid #fff}
.contact-form{display:grid;gap:17px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-form label{display:grid;gap:7px;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#eaded6}
.contact-form input,.contact-form textarea,.contact-form select{
  width:100%;padding:11px 12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.28);
  color:white;font:inherit;outline:none
}
.contact-form select option{color:#222}
.contact-form input::placeholder{color:#d7c9bf}
.honeypot{position:absolute!important;left:-9999px!important}
.status{min-height:1.4em;font-size:.8rem}
footer{
  padding:24px 34px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:24px;
  background:var(--brown-dark);color:#d9ccc4;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em
}
footer img{width:140px;filter:brightness(0) invert(1);mix-blend-mode:normal}
footer p:nth-of-type(1){text-align:center}
footer p:nth-of-type(2){text-align:right}
@media(max-width:980px){
  .menu-btn{display:block}
  .nav{
    display:none;position:absolute;top:78px;left:18px;right:18px;background:var(--ivory);padding:18px;
    flex-direction:column;align-items:stretch;z-index:20;border:1px solid var(--line)
  }
  .nav.open{display:flex}
  .topbar{position:relative}
  .intro-services{grid-template-columns:1fr}
  .service-icons{grid-template-columns:1fr 1fr}
  .service-icons article:nth-child(odd){border-left:0}
  .transformation{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr 1fr}
  .process-grid article{border-right:0;border-bottom:1px solid var(--line);padding-bottom:18px}
  .contact-band{grid-template-columns:1fr}
}
@media(max-width:680px){
  .topbar{padding:14px 20px}
  .brand{width:145px}
  .hero-media,.hero-media>img{height:560px}
  .hero-overlay{background:linear-gradient(90deg,rgba(42,27,21,.74),rgba(42,27,21,.34))}
  .hero-content{left:24px;right:24px}
  .section{padding:58px 20px}
  .intro-services{gap:30px}
  .service-icons{grid-template-columns:1fr}
  .service-icons article{border-left:0;border-top:1px solid var(--line);min-height:auto}
  .project-grid{grid-template-columns:1fr}
  .comparison{grid-template-columns:1fr}
  .compare-panel img{height:270px}
  .process-grid{grid-template-columns:1fr}
  .contact-band{padding:52px 20px}
  .contact-band h2{font-size:2.6rem}
  .two-col{grid-template-columns:1fr}
  footer{grid-template-columns:1fr}
  footer p:nth-of-type(1),footer p:nth-of-type(2){text-align:left}
}

.turnstile-wrap{padding:4px 0 2px;min-height:70px}
@media(max-width:680px){.turnstile-wrap{overflow:hidden}}
