@layer site {
  :root { --field-green:#244238; --field-green-deep:#162b25; --field-sand:#e8ddc8; --field-clay:#b85f3f; --field-ink:#1d211d; --field-cream:#f6f1e7; --field-rule:#c9bda9; --field-shell:min(1240px,calc(100% - clamp(32px,7vw,104px))); }
  body { background:var(--field-cream); color:var(--field-ink); font-family:"Avenir Next","Gill Sans",system-ui,sans-serif; }
  h1,h2,h3 { font-family:"Iowan Old Style","Baskerville","Times New Roman",serif; font-weight:500; letter-spacing:-.035em; }
  p { color:#555a50; }
  .field-shell,.site-shell { width:var(--field-shell); margin-inline:auto; }
  .site-header { min-height:82px; background:color-mix(in srgb,var(--field-cream) 94%,transparent); color:var(--field-green-deep); border-color:var(--field-rule); backdrop-filter:blur(14px); }
  .brand { text-decoration:none; }
  .field-brand { display:flex; align-items:center; gap:11px; }
  .field-brand-mark { width:38px; height:38px; color:var(--field-green); flex:0 0 auto; }
  .field-brand strong,.field-brand small { display:block; line-height:1; }
  .field-brand strong { font-family:"Iowan Old Style","Baskerville",serif; font-size:1.05rem; letter-spacing:-.03em; }
  .field-brand strong i { color:var(--field-clay); font-style:italic; }
  .field-brand small { margin-top:4px; font-size:.58rem; font-weight:760; letter-spacing:.18em; text-transform:uppercase; }
  .site-header nav a { color:#596156; }
  .site-header nav a:hover,.site-header nav a[aria-current="page"] { color:var(--field-clay); }
  .header-call,.field-action { display:inline-flex; min-height:46px; align-items:center; justify-content:center; border:1px solid var(--field-green-deep); border-radius:1px; padding:11px 17px; background:var(--field-green-deep); color:var(--field-cream); font:700 .82rem/1 "Avenir Next",sans-serif; letter-spacing:.035em; text-decoration:none; cursor:pointer; transition:background .2s ease,color .2s ease,transform .2s ease; }
  .header-call:hover,.field-action:hover { background:var(--field-clay); border-color:var(--field-clay); transform:translateY(-2px); }
  .field-kicker { margin:0 0 16px; color:var(--field-clay); font-size:.7rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
  .field-hero { min-height:calc(100vh - 82px); display:grid; grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr); grid-template-rows:1fr auto; border-bottom:1px solid var(--field-rule); }
  .field-hero-media { grid-row:1 / 3; min-height:720px; overflow:hidden; }
  .field-hero-media img { width:100%; height:100%; object-fit:cover; }
  .field-hero-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(46px,7vw,100px); background:var(--field-sand); }
  .field-hero h1 { max-width:8ch; margin:0; color:var(--field-green-deep); font-size:clamp(3.4rem,6.3vw,6rem); line-height:.9; }
  .field-hero-copy>p:not(.field-kicker) { max-width:35ch; margin:28px 0 0; font-size:clamp(1.06rem,1.6vw,1.3rem); }
  .field-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:34px; }
  .field-hero-actions>a { color:var(--field-green-deep); font-weight:700; text-underline-offset:5px; }
  .field-hero-note { display:grid; grid-template-columns:auto 1fr; gap:24px; align-items:end; padding:25px clamp(30px,5vw,70px); background:var(--field-green); color:var(--field-cream); }
  .field-hero-note span { color:#bdccbd; font-size:.7rem; text-transform:uppercase; letter-spacing:.13em; }
  .field-hero-note strong { font-family:"Iowan Old Style",serif; font-size:1.25rem; font-weight:500; }
  .field-practice { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(55px,10vw,150px); padding-block:clamp(90px,12vw,170px); }
  .field-practice h2,.field-project-head h2,.field-materials h2,.field-process h2,.field-close h2,.field-studio h2,.field-sourcing h2 { margin:0; color:var(--field-green-deep); font-size:clamp(2.4rem,4.7vw,5rem); line-height:.98; }
  .field-practice ol { margin:0; padding:0; list-style:none; border-top:1px solid var(--field-rule); }
  .field-practice li { display:grid; grid-template-columns:42px 120px 1fr; gap:18px; padding:24px 0; border-bottom:1px solid var(--field-rule); }
  .field-practice li span { color:var(--field-clay); font-size:.72rem; }
  .field-practice li p { margin:0; }
  .field-projects { padding-block:clamp(85px,11vw,155px); background:var(--field-green-deep); color:var(--field-cream); }
  .field-project-head { display:grid; grid-template-columns:.65fr 1.35fr; gap:50px; align-items:end; margin-bottom:48px; }
  .field-project-head h2 { color:var(--field-cream); }
  .field-project-view { display:grid; grid-template-columns:minmax(0,1.36fr) minmax(260px,.64fr); grid-template-rows:auto 1fr; }
  .field-project-media { grid-row:1 / 3; min-height:650px; overflow:hidden; }
  .field-project-media img { width:100%; height:100%; object-fit:cover; transition:opacity .2s ease; }
  .field-project-index { border-top:1px solid #ffffff35; }
  .field-project-index button { width:100%; display:grid; grid-template-columns:34px 1fr; gap:5px 13px; min-height:100px; padding:20px 0 20px 28px; border:0; border-bottom:1px solid #ffffff35; background:transparent; color:#b8c2bb; text-align:left; cursor:pointer; }
  .field-project-index button span { grid-row:1 / 3; color:var(--field-clay); }
  .field-project-index button strong { color:inherit; font-family:"Iowan Old Style",serif; font-size:1.25rem; font-weight:500; }
  .field-project-index button small { letter-spacing:.08em; text-transform:uppercase; }
  .field-project-index button[aria-selected="true"] { background:var(--field-cream); color:var(--field-green-deep); }
  .field-project-copy { align-self:end; padding:28px; }
  .field-project-copy p { color:#d7ddd7; font-size:1.06rem; }
  .field-project-copy a { color:var(--field-cream); text-underline-offset:5px; }
  .field-materials { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(55px,9vw,130px); align-items:center; padding-block:clamp(95px,12vw,175px); }
  .field-materials-media { min-height:610px; overflow:hidden; }
  .field-materials img { width:100%; height:100%; object-fit:cover; }
  .field-materials>div:last-child>p:not(.field-kicker) { margin:28px 0; font-size:1.05rem; }
  .field-materials dl { margin:0; }
  .field-materials dl div { display:grid; grid-template-columns:90px 1fr; gap:20px; padding:17px 0; border-top:1px solid var(--field-rule); }
  .field-materials dt { color:var(--field-clay); font-weight:750; }
  .field-materials dd { margin:0; color:#555a50; }
  .field-process { padding-block:clamp(85px,10vw,140px); background:var(--field-sand); }
  .field-process h2 { max-width:15ch; }
  .field-process-line { display:grid; grid-template-columns:repeat(5,1fr); margin:55px 0 25px; border-top:1px solid var(--field-green); }
  .field-process-line span { position:relative; padding-top:24px; color:var(--field-green-deep); font-weight:700; }
  .field-process-line span::before { content:""; position:absolute; top:-5px; left:0; width:9px; height:9px; background:var(--field-clay); }
  .field-close { padding-block:clamp(75px,9vw,120px); background:var(--field-clay); color:var(--field-cream); }
  .field-close>.field-shell { display:grid; grid-template-columns:1.2fr .8fr; gap:clamp(45px,8vw,120px); align-items:end; }
  .field-close h2,.field-close .field-kicker { color:var(--field-cream); }
  .field-close p { color:#f2ded4; }
  .field-close .field-action { background:var(--field-cream); border-color:var(--field-cream); color:var(--field-green-deep); margin-right:18px; }
  .field-close a { color:var(--field-cream); white-space:nowrap; }
  .field-page-intro { padding-block:clamp(105px,14vw,200px); background:var(--field-sand); border-bottom:1px solid var(--field-rule); }
  .field-page-intro h1 { max-width:13ch; margin:0; color:var(--field-green-deep); font-size:clamp(3.4rem,7vw,6rem); line-height:.93; }
  .field-page-intro>div>p:last-child { max-width:56ch; margin:30px 0 0; font-size:1.15rem; }
  .field-service-ledger { padding-block:70px 120px; }
  .field-service-ledger article { display:grid; grid-template-columns:50px 1.05fr .65fr; gap:clamp(25px,5vw,70px); padding:34px 0; border-bottom:1px solid var(--field-rule); }
  .field-service-ledger article>span { color:var(--field-clay); }
  .field-service-ledger h2 { margin:0 0 12px; font-size:clamp(2rem,3.2vw,3.6rem); line-height:1; }
  .field-service-ledger p { margin:0; }
  .field-scope { padding-block:100px; background:var(--field-green); color:var(--field-cream); }
  .field-scope>.field-shell { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
  .field-scope h2 { margin:0; color:var(--field-cream); font-size:clamp(2.5rem,4.6vw,5rem); line-height:.95; }
  .field-scope ol { margin:0; padding:0; list-style:none; }
  .field-scope li { padding:18px 0; border-top:1px solid #ffffff42; }
  .field-studio { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(50px,9vw,130px); align-items:center; padding-block:clamp(95px,12vw,170px); }
  .field-studio>div:first-child { min-height:620px; overflow:hidden; }
  .field-studio img { width:100%; height:100%; object-fit:cover; }
  .field-principles { padding-block:100px; background:var(--field-green-deep); color:var(--field-cream); }
  .field-principles h2 { margin:0 0 55px; color:var(--field-cream); font-size:clamp(2.8rem,5vw,5rem); }
  .field-principles>.field-shell>div { display:grid; grid-template-columns:repeat(4,1fr); }
  .field-principles article { padding:26px; border-left:1px solid #ffffff32; }
  .field-principles article span { color:var(--field-clay); }
  .field-principles article h3 { font-size:2rem; }
  .field-principles article p { color:#cfd6d0; }
  .field-sourcing { display:grid; grid-template-columns:1fr .8fr; gap:90px; padding-block:120px; }
  .field-sourcing>p { font-size:1.15rem; }
  .contact-workbench { width:var(--field-shell); margin:0 auto; display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; padding-block:100px; }
  .contact-workbench h2 { font-size:clamp(2.2rem,4vw,4.4rem); }
  .contact-form-wrap form { display:grid; gap:7px; }
  .contact-form-wrap label { margin-top:7px; color:var(--field-green-deep); font-weight:700; }
  .contact-form-wrap input,.contact-form-wrap textarea { min-height:48px; border:1px solid var(--field-rule); border-radius:0; padding:11px; background:#fffaf1; }
  .contact-form-wrap textarea { min-height:130px; }
  .field-contact-notes { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding-bottom:120px; }
  .field-contact-notes h2 { font-size:clamp(2.2rem,4vw,4.5rem); }
  .field-contact-notes ol { padding-left:20px; }
  .field-contact-notes li { padding:10px 0; }
  footer { background:var(--field-green-deep); color:var(--field-cream); }
  @media (max-width:980px) { .field-hero { grid-template-columns:1fr; grid-template-rows:auto; }.field-hero-media { grid-row:auto; min-height:60vh }.field-hero-note { display:none }.field-practice,.field-materials,.field-close>.field-shell,.field-scope>.field-shell,.field-studio,.field-sourcing,.contact-workbench,.field-contact-notes { grid-template-columns:1fr }.field-project-view { grid-template-columns:1fr }.field-project-media { grid-row:auto; min-height:520px }.field-project-head { grid-template-columns:1fr }.field-project-index { display:grid; grid-template-columns:repeat(3,1fr) }.field-project-index button { padding:18px 10px }.field-project-copy { padding-inline:0 }.field-principles>.field-shell>div { grid-template-columns:1fr 1fr }.field-service-ledger article { grid-template-columns:40px 1fr }.field-service-ledger article>p { grid-column:2 }.field-studio>div:first-child { min-height:520px } }
  @media (max-width:720px) { .field-hero h1,.field-page-intro h1 { font-size:clamp(3.1rem,15vw,4.8rem) }.field-hero-copy { padding:44px 24px 56px }.field-practice li { grid-template-columns:35px 1fr }.field-practice li p { grid-column:2 }.field-project-index { grid-template-columns:1fr }.field-project-index button { min-height:76px; grid-template-columns:30px 1fr }.field-process-line { grid-template-columns:1fr; border-top:0; border-left:1px solid var(--field-green); margin-left:5px }.field-process-line span { padding:12px 0 12px 24px }.field-process-line span::before { left:-5px; top:18px }.field-principles>.field-shell>div { grid-template-columns:1fr }.field-principles article { border-left:0; border-top:1px solid #ffffff32 }.field-materials-media,.field-studio>div:first-child { min-height:430px }.field-close .field-action { margin:0 0 15px } }
  @media (max-width:420px) { .site-header { min-height:68px }.field-brand-mark { width:31px;height:31px }.field-brand strong { font-size:.9rem }.field-brand small { font-size:.5rem }.header-call { min-width:44px; font-size:0 }.header-call::after { content:"Plan"; font-size:.76rem }.field-hero-media { min-height:430px }.field-page-intro { padding-block:85px }.field-project-media { min-height:400px } }
  @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important } }
}
