  :root{
    --green:#16261E; --green-soft:#1E332A;
    --parchment:#F1ECE1; --parchment-deep:#E9E2D3;
    --burgundy:#6E2B35; --brass:#A78D5F;
    --ink:#221F1A; --ivory:#F7F3EA;
    --display:"Didot","Bodoni MT","Cormorant Garamond","Playfair Display",Georgia,"Times New Roman",serif;
    --body:"Helvetica Neue",Helvetica,Arial,sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{font-family:var(--body);color:var(--ink);background:var(--parchment);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
  .label{font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;}
  a{color:inherit;}
  .container{max-width:1200px;margin:0 auto;padding:0 40px;}
  h1{font-family:var(--display);font-weight:400;font-size:clamp(44px,6.2vw,84px);line-height:1.06;}
  h1 em,h2 em,h3 em{font-style:italic;color:var(--brass);}
  h2{font-family:var(--display);font-weight:400;font-size:clamp(32px,3.6vw,48px);line-height:1.15;}

  nav{position:absolute;top:0;left:0;right:0;z-index:10;}
  .nav-inner{display:flex;justify-content:space-between;align-items:center;padding:34px 40px;max-width:1320px;margin:0 auto;}
  .wordmark{font-family:var(--display);font-size:22px;letter-spacing:.12em;color:var(--ivory);text-decoration:none;}
  .wordmark span{color:var(--brass);}
  .nav-links{display:flex;gap:40px;align-items:center;}
  .nav-links a{color:rgba(247,243,234,.75);text-decoration:none;font-size:12px;letter-spacing:.22em;text-transform:uppercase;transition:color .25s;}
  .nav-links a:hover,.nav-links a:focus-visible{color:var(--ivory);}
  .nav-links a.active{color:var(--brass);}
  .nav-cta{border:1px solid var(--brass);padding:10px 22px;color:var(--ivory) !important;}
  .nav-cta:hover{background:var(--brass);color:var(--green) !important;}
  @media(max-width:820px){.nav-links a:not(.nav-cta){display:none;}}

  header.site{background:var(--green);color:var(--ivory);position:relative;overflow:hidden;}
  header.site::after{content:"";position:absolute;inset:0;background:
    radial-gradient(1200px 600px at 85% 110%, rgba(110,43,53,.28), transparent 60%),
    radial-gradient(900px 500px at -10% -20%, rgba(167,141,95,.10), transparent 55%);pointer-events:none;}
  .hero{position:relative;z-index:2;padding:190px 0 120px;}
  .page-hero{position:relative;z-index:2;padding:180px 0 90px;}
  .page-hero h1{font-size:clamp(38px,5vw,64px);max-width:18ch;}
  .hero .label,.page-hero .label{color:var(--brass);margin-bottom:34px;display:block;}
  .hero h1{max-width:15ch;}
  .hero p,.page-hero p{max-width:52ch;margin-top:32px;font-size:17px;font-weight:300;color:rgba(247,243,234,.82);}
  .hero-ctas{margin-top:48px;display:flex;gap:22px;flex-wrap:wrap;align-items:center;}
  .btn{display:inline-block;text-decoration:none;font-size:12px;letter-spacing:.24em;text-transform:uppercase;padding:18px 34px;transition:all .25s;border:1px solid var(--burgundy);background:var(--burgundy);color:var(--ivory);}
  .btn:hover,.btn:focus-visible{background:transparent;color:var(--ivory);border-color:var(--brass);}
  .btn-ghost{color:rgba(247,243,234,.75);border-bottom:1px solid rgba(167,141,95,.6);padding:6px 2px;letter-spacing:.2em;font-size:12px;text-transform:uppercase;text-decoration:none;}
  .btn-ghost:hover{color:var(--ivory);}
  .btn-dark{display:inline-block;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--burgundy);border-bottom:1px solid var(--burgundy);padding-bottom:6px;text-decoration:none;transition:opacity .2s;}
  .btn-dark:hover{opacity:.6;}
  .hero-foot{position:relative;z-index:2;border-top:1px solid rgba(167,141,95,.3);}
  .hero-foot .container{display:flex;gap:60px;padding-top:26px;padding-bottom:26px;flex-wrap:wrap;}
  .hero-foot .item{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:rgba(247,243,234,.6);}
  .hero-foot .item b{color:var(--brass);font-weight:500;}

  .section{padding:120px 0;}
  .section.tight{padding:90px 0;}
  .section.alt{background:var(--parchment-deep);}
  .section .label{color:var(--burgundy);display:block;margin-bottom:24px;}
  .lede{margin-top:26px;font-weight:300;max-width:58ch;color:#3d382f;}

  .sheet-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px;align-items:center;}
  @media(max-width:900px){.sheet-grid{grid-template-columns:1fr;gap:60px;}}
  .sheet{background:var(--ivory);border:1px solid rgba(167,141,95,.5);padding:54px 50px 44px;box-shadow:24px 24px 0 rgba(22,38,30,.06);}
  .sheet-head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid rgba(167,141,95,.5);padding-bottom:18px;margin-bottom:8px;}
  .sheet-head .label{color:var(--brass);margin:0;display:inline;}
  .sheet-head .stamp{font-family:var(--display);font-style:italic;font-size:15px;color:var(--burgundy);}
  .sheet-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid rgba(167,141,95,.22);}
  .sheet-row .name{font-family:var(--display);font-size:19px;}
  .sheet-row .region{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8a8272;}
  .redacted{position:relative;height:16px;width:190px;background:repeating-linear-gradient(90deg,var(--green) 0 8px,transparent 8px 10px);opacity:.85;}
  .redacted::after{content:"on request";position:absolute;inset:0;display:flex;align-items:center;font-family:var(--display);font-style:italic;font-size:14px;color:var(--burgundy);background:var(--ivory);opacity:0;transition:opacity .3s;}
  .sheet-row:hover .redacted::after{opacity:1;}
  .sheet-foot{margin-top:26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
  .sheet-foot .note{font-size:13px;font-style:italic;font-family:var(--display);color:#6b6353;}
  .sheet-foot a{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--burgundy);text-decoration:none;border-bottom:1px solid var(--burgundy);padding-bottom:4px;}
  @media(max-width:520px){.redacted{width:110px;}.sheet{padding:36px 26px;}}

  .why{background:var(--green);color:var(--ivory);padding:130px 0 110px;}
  .why .label{color:var(--brass);}
  .why h2{max-width:24ch;margin-top:24px;}
  .ledger{margin-top:80px;}
  .ledger-row{display:grid;grid-template-columns:minmax(180px,320px) 1fr;gap:50px;padding:44px 0;border-top:1px solid rgba(167,141,95,.3);}
  .ledger-row:last-child{border-bottom:1px solid rgba(167,141,95,.3);}
  .ledger-row h3{font-family:var(--display);font-weight:400;font-size:26px;line-height:1.25;}
  .ledger-row p{font-weight:300;color:rgba(247,243,234,.78);max-width:62ch;font-size:15.5px;}
  @media(max-width:760px){.ledger-row{grid-template-columns:1fr;gap:16px;padding:34px 0;}}
  .ledger.on-light .ledger-row{border-color:rgba(110,43,53,.25);}
  .ledger.on-light .ledger-row p{color:#4a453a;}
  .ledger.on-light{color:var(--ink);}

  .numbers{background:var(--parchment-deep);padding:90px 0;}
  .numbers-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;}
  .num{min-width:150px;}
  .num .figure{font-family:var(--display);font-size:56px;color:var(--burgundy);line-height:1;}
  .num .figure sup{font-size:26px;color:var(--brass);}
  .num .cap{margin-top:12px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#6b6353;}

  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:44px;margin-top:70px;}
  .steps.five{grid-template-columns:repeat(5,1fr);gap:34px;}
  @media(max-width:1060px){.steps.five{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:960px){.steps{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:560px){.steps,.steps.five{grid-template-columns:1fr;}}
  .step{border-top:1px solid rgba(110,43,53,.35);padding-top:22px;}
  .step .no{font-family:var(--display);font-size:18px;letter-spacing:.14em;color:var(--brass);}
  .step h4{font-family:var(--display);font-weight:400;font-size:21px;margin:14px 0 10px;}
  .step p{font-size:14.5px;font-weight:300;color:#4a453a;}
  .process-close{margin-top:70px;font-family:var(--display);font-style:italic;font-size:22px;color:var(--burgundy);}

  .cta-panel{background:var(--burgundy);color:var(--ivory);padding:110px 0;text-align:center;position:relative;overflow:hidden;}
  .cta-panel::after{content:"";position:absolute;inset:0;background:radial-gradient(800px 400px at 50% 130%, rgba(22,38,30,.5), transparent 60%);pointer-events:none;}
  .cta-panel .container{position:relative;z-index:2;}
  .cta-panel .label{color:rgba(247,243,234,.6);}
  .cta-panel h2{margin:26px auto 0;max-width:22ch;}
  .cta-panel .btn{margin-top:46px;background:var(--ivory);color:var(--burgundy);border-color:var(--ivory);}
  .cta-panel .btn:hover{background:transparent;color:var(--ivory);}

  .pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 80px;margin-top:70px;}
  @media(max-width:760px){.pillars{grid-template-columns:1fr;}}
  .pillar h3{font-family:var(--display);font-weight:400;font-size:24px;margin-bottom:12px;}
  .pillar p{font-weight:300;color:#4a453a;font-size:15px;}
  .pillar{border-top:1px solid rgba(110,43,53,.3);padding-top:24px;}

  .glimpse{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:70px;}
  @media(max-width:900px){.glimpse{grid-template-columns:1fr;}}
  .estate .photo{aspect-ratio:4/5;background:var(--parchment-deep);border:1px solid rgba(167,141,95,.45);overflow:hidden;}
  .estate .photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.03);transition:transform .9s ease;}
  .estate:hover .photo img{transform:scale(1.035);}
  @media(prefers-reduced-motion:reduce){.estate:hover .photo img{transform:none;}}
  .estate h3{font-family:var(--display);font-weight:400;font-size:23px;margin-top:22px;}
  .estate .region{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--burgundy);margin-top:6px;}
  .estate p{margin-top:12px;font-size:14.5px;font-weight:300;color:#4a453a;}

  .regions{display:flex;flex-wrap:wrap;gap:14px 14px;margin-top:50px;}
  .regions span{font-family:var(--display);font-size:19px;border:1px solid rgba(167,141,95,.55);padding:12px 26px;color:var(--ink);}

  form{margin-top:60px;}
  .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 50px;}
  @media(max-width:700px){.form-grid{grid-template-columns:1fr;}}
  .field{display:flex;flex-direction:column;}
  .field.full{grid-column:1/-1;}
  .field label{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#6b6353;margin-bottom:10px;}
  .field input,.field select,.field textarea{background:transparent;border:none;border-bottom:1px solid rgba(167,141,95,.7);padding:12px 2px;font-family:var(--body);font-size:16px;color:var(--ink);border-radius:0;}
  .field textarea{min-height:110px;resize:vertical;}
  .field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--burgundy);}
  form .btn{margin-top:50px;}
  .form-note{margin-top:22px;font-family:var(--display);font-style:italic;font-size:15px;color:#6b6353;}

  .capabilities{margin-top:60px;max-width:760px;}
  .capabilities li{list-style:none;border-top:1px solid rgba(110,43,53,.25);padding:20px 0;display:flex;gap:24px;align-items:baseline;font-weight:300;color:#3d382f;}
  .capabilities li:last-child{border-bottom:1px solid rgba(110,43,53,.25);}
  .capabilities li b{font-family:var(--display);font-weight:400;font-size:18px;color:var(--ink);min-width:280px;}
  @media(max-width:640px){.capabilities li{flex-direction:column;gap:6px;}.capabilities li b{min-width:0;}}

  .contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:start;}
  @media(max-width:860px){.contact-grid{grid-template-columns:1fr;gap:50px;}}
  .contact-details p{font-weight:300;color:#3d382f;margin-top:8px;}
  .contact-details .block{margin-top:36px;}
  .contact-details .block .label{color:var(--brass);margin-bottom:10px;}

  footer{background:var(--green);color:rgba(247,243,234,.65);padding:70px 0 50px;}
  .foot-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap;align-items:flex-start;}
  footer .wordmark{font-size:20px;}
  .foot-links{display:flex;gap:34px;flex-wrap:wrap;}
  .foot-links a{text-decoration:none;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(247,243,234,.55);}
  .foot-links a:hover{color:var(--ivory);}
  .foot-bottom{margin-top:50px;border-top:1px solid rgba(167,141,95,.25);padding-top:24px;font-size:12px;font-weight:300;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;}

  .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease;}
  .reveal.in{opacity:1;transform:none;}
  @media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}html{scroll-behavior:auto;}}
  :focus-visible{outline:2px solid var(--brass);outline-offset:3px;}

  /* Form submission states (Formspree AJAX) */
  .form-status{margin-top:26px;font-family:var(--display);font-size:19px;line-height:1.45;color:var(--burgundy);display:none;}
  .form-status.is-visible{display:block;}
  .form-status.error{color:#8a2b2b;}
  .field input.invalid,.field select.invalid,.field textarea.invalid{border-bottom-color:#8a2b2b;}
  .btn[disabled]{opacity:.5;cursor:progress;}
