:root{
  --ink:#171717;
  --paper:#f4f0e8;
  --soft:#e6dfd2;
  --accent:#d85b3f;
  --muted:#716c63;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.45}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:auto;padding:0 28px}

header{padding:24px 0}
nav{display:flex;justify-content:space-between;align-items:center}
.logo{font-weight:800;letter-spacing:-.04em;font-size:18px}
.navlinks{display:flex;gap:26px;font-size:14px}
.navlinks a.active{color:var(--accent)}

/* Page hero (shorter than homepage hero) */
.page-hero{padding:190px 0 70px}
.page-hero .eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:24px}
.page-hero h1{font-size:clamp(44px,7vw,84px);line-height:.92;letter-spacing:-.05em;max-width:900px;margin:0 0 28px;font-weight:700}
.page-hero p{font-size:clamp(18px,2vw,22px);line-height:1.4;max-width:680px;margin:0;color:var(--muted)}

/* Homepage hero */
.hero{min-height:92vh;display:flex;align-items:flex-end;padding:150px 0 90px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;width:440px;height:440px;border:1px solid rgba(23,23,23,.14);border-radius:50%;right:-130px;top:130px}
.hero:before{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(216,91,63,.45);border-radius:50%;right:30px;top:210px}
.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:28px}
h1{font-size:clamp(60px,9vw,128px);line-height:.88;letter-spacing:-.075em;max-width:1050px;margin:0 0 34px;font-weight:700}
.hero p{font-size:clamp(21px,2.4vw,31px);line-height:1.15;max-width:760px;margin:0}
.accent{color:var(--accent)}

section{padding:120px 0;border-top:1px solid rgba(23,23,23,.16)}
.intro{display:grid;grid-template-columns:1fr 2fr;gap:60px}
.label{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.statement{font-size:clamp(34px,5vw,68px);line-height:1;letter-spacing:-.055em;margin:0}
.bodycopy{font-size:19px;max-width:720px;color:#37342f}

.discipline-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(23,23,23,.16);margin-top:70px}
.card{background:var(--paper);padding:42px;min-height:290px}
.num{font-size:13px;color:var(--accent);margin-bottom:55px}
.card h3{font-size:34px;letter-spacing:-.04em;margin:0 0 14px}
.card p{margin:0;color:var(--muted);max-width:390px}

.principle{background:var(--ink);color:var(--paper)}
.principle .label{color:#aaa}
.principle h2{font-size:clamp(46px,7vw,92px);line-height:.94;letter-spacing:-.065em;max-width:1000px;margin:35px 0}
.principle p{font-size:20px;max-width:690px;color:#c9c4ba}

.process{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:70px}
.step h3{font-size:24px;margin:12px 0}
.step p{color:var(--muted);font-size:16px}

.cta{padding:130px 0 150px}
.cta h2{font-size:clamp(54px,8vw,110px);line-height:.9;letter-spacing:-.07em;margin:0 0 45px;max-width:1000px}
.button{display:inline-block;background:var(--accent);color:white;padding:17px 24px;border-radius:100px;font-size:15px}

footer{padding:28px 0 45px;border-top:1px solid rgba(23,23,23,.16);display:flex;justify-content:space-between;color:var(--muted);font-size:13px}

/* Services list (used on services.html) */
.service-list{margin-top:70px;border-top:1px solid rgba(23,23,23,.16)}
.service-row{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;padding:46px 0;border-bottom:1px solid rgba(23,23,23,.16);align-items:baseline}
.service-row h3{font-size:30px;letter-spacing:-.04em;margin:0}
.service-row .service-copy p{margin:0 0 14px;color:var(--muted);font-size:17px;max-width:520px}
.service-row .service-time{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}

/* About page proof points */
.proof-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:rgba(23,23,23,.16);margin-top:70px}
.proof-grid .card p{max-width:none}

/* Writing list */
.writing-list{margin-top:70px}
.writing-item{border-top:1px solid rgba(23,23,23,.16);padding:38px 0}
.writing-item:last-child{border-bottom:1px solid rgba(23,23,23,.16)}
.writing-item .label{margin-bottom:10px}
.writing-item h3{font-size:28px;letter-spacing:-.03em;margin:0 0 10px;max-width:700px}
.writing-item p{color:var(--muted);font-size:16px;max-width:640px;margin:0 0 10px}

/* Work / case study placeholder */
.work-note{background:var(--soft);border-radius:14px;padding:36px 40px;margin-top:70px;max-width:760px}
.work-note p{margin:0;color:#37342f;font-size:17px}

@media(max-width:760px){
  .navlinks{display:none}
  .hero{min-height:82vh;padding-top:130px}
  .page-hero{padding-top:150px}
  .intro{grid-template-columns:1fr;gap:28px}
  .discipline-grid,.proof-grid{grid-template-columns:1fr}
  .process{grid-template-columns:1fr}
  .service-row{grid-template-columns:1fr}
  section{padding:80px 0}
  .cta{padding:90px 0}
}
