:root{--green:#102d24;--green-deep:#081d17;--gold:#c99749;--cream:#f5f0e5;--paper:#fbfaf6;--ink:#17211d;--muted:#68736d;--line:rgba(23,33,29,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%}a{color:inherit;text-decoration:none}.site-header{height:92px;padding:0 clamp(22px,6vw,96px);display:flex;align-items:center;justify-content:space-between;background:var(--green-deep);color:var(--cream);border-bottom:1px solid rgba(201,151,73,.45);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:16px}.monogram{font:42px/1 "Libre Caslon Display",serif;color:var(--gold);letter-spacing:-4px}.monogram span{font-size:.55em;margin:0 1px}.brand-name{font-size:12px;letter-spacing:.24em}.site-header nav{display:flex;gap:34px;align-items:center;font-size:14px}.site-header nav a:not(.nav-cta){opacity:.78}.site-header nav a:hover{opacity:1}.nav-cta{border:1px solid var(--gold);padding:11px 17px;color:#f7e8c9}.menu-toggle{display:none;background:none;color:var(--cream);border:1px solid rgba(255,255,255,.35);padding:8px 12px}.hero{min-height:760px;position:relative;display:flex;align-items:center;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,17,.9) 0%,rgba(4,22,17,.62) 48%,rgba(4,22,17,.13) 100%),linear-gradient(0deg,rgba(4,22,17,.35),transparent 55%)}.hero-content{position:relative;max-width:850px;padding:80px clamp(22px,8vw,130px);z-index:1}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;color:var(--gold)}h1,h2,blockquote{font-family:"Libre Caslon Display",serif;font-weight:400;line-height:1.04;margin:0}h1{font-size:clamp(56px,7vw,105px);letter-spacing:-.035em}em{font-weight:400;color:#efd39a}.hero-copy{max-width:660px;font-size:19px;line-height:1.65;color:rgba(255,255,255,.82);margin:28px 0 34px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;border:0;padding:17px 24px;text-transform:uppercase;letter-spacing:.13em;font:600 12px "DM Sans",sans-serif;cursor:pointer}.button-gold{background:var(--gold);color:#102019}.text-link{border-bottom:1px solid rgba(255,255,255,.6);padding:8px 0}.text-link span{margin-left:8px}.hero-note{position:absolute;z-index:2;right:clamp(22px,6vw,90px);bottom:55px;display:flex;align-items:center;gap:15px;background:rgba(9,35,27,.9);border:1px solid rgba(201,151,73,.7);padding:17px 22px}.note-number{font:38px/1 "Libre Caslon Display",serif;color:var(--gold)}.hero-note span:last-child{text-transform:uppercase;letter-spacing:.11em;font-size:10px;line-height:1.5}.section{padding:120px clamp(22px,7.5vw,120px)}.intro{display:grid;grid-template-columns:.7fr 2fr .8fr;gap:70px;align-items:start;background:var(--cream)}h2{font-size:clamp(46px,5.6vw,78px);letter-spacing:-.025em}.intro h2 em,.contact h2 em,.approach h2 em{color:var(--gold)}.intro-copy>p,.section-heading>p{max-width:680px;font-size:18px;color:var(--muted);margin-top:30px}.intro-stat{border-left:1px solid var(--gold);padding-left:27px;margin-top:38px}.intro-stat span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:11px;color:var(--muted)}.intro-stat strong{display:block;font:36px "Libre Caslon Display",serif;margin:10px 0}.intro-stat small{font-size:14px;color:var(--muted)}.image-break{height:500px;position:relative;overflow:hidden}.image-break img{height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.82)}.image-break:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,25,19,.45),transparent 55%)}.image-caption{position:absolute;z-index:2;left:clamp(22px,7.5vw,120px);right:clamp(22px,7.5vw,120px);bottom:32px;color:white;display:flex;justify-content:space-between;text-transform:uppercase;font-size:11px;letter-spacing:.2em}.services{background:var(--paper)}.section-heading{display:grid;grid-template-columns:.7fr 1.25fr 1fr;gap:60px;align-items:start}.section-heading>p{margin:8px 0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-grid article{padding:35px 28px 42px 0;border-right:1px solid var(--line);margin-right:28px}.service-grid article:last-child{border:0;margin-right:0}.service-grid article>span,.approach li>span{color:var(--gold);font-size:12px;letter-spacing:.14em}.service-grid h3,.approach h3{font:28px "Libre Caslon Display",serif;margin:26px 0 14px}.service-grid p,.approach p,.difference-grid p{color:var(--muted);font-size:15px}.approach{display:grid;grid-template-columns:1fr 1fr;background:var(--green-deep);color:var(--cream)}.approach-image{min-height:820px}.approach-image img{height:100%;object-fit:cover}.approach-content{padding:110px clamp(32px,6vw,95px)}.section-label.light{color:#dfb86f}.approach h2{font-size:clamp(44px,5vw,70px);margin:20px 0 55px}.approach ol{padding:0;margin:0;list-style:none}.approach li{display:grid;grid-template-columns:50px 1fr;border-top:1px solid rgba(255,255,255,.17);padding:24px 0}.approach h3{margin:0 0 6px}.approach p{color:rgba(255,255,255,.62);margin:0}.difference{background:var(--cream);text-align:center}.difference blockquote{max-width:1000px;margin:30px auto 70px;font-size:clamp(42px,5.5vw,76px)}.difference-grid{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;border-top:1px solid var(--line)}.difference-grid>div{padding:34px 36px 0;border-right:1px solid var(--line)}.difference-grid>div:last-child{border:0}.difference-grid strong{font:25px "Libre Caslon Display",serif}.faq{display:grid;grid-template-columns:.85fr 1.4fr;gap:100px}.faq-heading{position:sticky;top:60px;align-self:start}.faq-heading h2{font-size:58px;margin-top:25px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:25px 0}summary{list-style:none;cursor:pointer;font:25px/1.35 "Libre Caslon Display",serif;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{color:var(--gold);font:28px "DM Sans"}details[open] summary span{transform:rotate(45deg)}details p{max-width:680px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:120px clamp(22px,7.5vw,120px);background:var(--green);color:var(--cream)}.contact-copy>p{max-width:600px;color:rgba(255,255,255,.65);font-size:18px;margin:30px 0}.contact-detail{display:flex;gap:30px;padding-top:26px;border-top:1px solid rgba(255,255,255,.18);text-transform:uppercase;font-size:11px;letter-spacing:.14em;color:#dfb86f}.contact-form{display:flex;flex-direction:column;gap:18px;background:var(--cream);color:var(--ink);padding:38px}.contact-form label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.contact-form input,.contact-form textarea{display:block;width:100%;border:0;border-bottom:1px solid rgba(23,33,29,.3);background:transparent;padding:12px 0;font:16px "DM Sans";border-radius:0;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form .button{margin-top:8px;width:100%}.form-note{text-align:center;color:var(--muted);font-size:12px;margin:0}footer{min-height:150px;background:var(--green-deep);color:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:space-between;padding:35px clamp(22px,7.5vw,120px);font-size:13px}.footer-brand{color:white}
@media(max-width:1000px){.site-header nav{display:none;position:absolute;left:0;right:0;top:92px;background:var(--green-deep);padding:25px;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu-toggle{display:block}.intro,.section-heading{grid-template-columns:1fr;gap:25px}.intro-stat{max-width:350px}.service-grid{grid-template-columns:1fr 1fr}.approach{grid-template-columns:1fr}.approach-image{min-height:520px}.difference-grid{grid-template-columns:1fr}.difference-grid>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:25px}.faq{grid-template-columns:1fr;gap:50px}.faq-heading{position:static}.contact{grid-template-columns:1fr;gap:50px}}
@media(max-width:620px){.site-header{height:78px}.site-header .brand{gap:11px}.site-header .brand-name{display:inline;font-size:10px;letter-spacing:.18em}.site-header nav{top:78px}.hero{min-height:700px}.hero-content{padding-top:45px}.hero-note{display:none}.hero-copy{font-size:17px}.section{padding-top:80px;padding-bottom:80px}.image-break{height:360px}.image-caption{flex-direction:column;gap:8px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid var(--line);margin:0}.approach-content{padding-top:80px;padding-bottom:80px}.difference-grid>div{padding-left:0;padding-right:0}.faq-heading h2{font-size:48px}.contact{padding-top:80px;padding-bottom:80px}.contact-form{padding:25px 20px}.contact-detail,footer{flex-direction:column;align-items:flex-start}.footer-brand .brand-name{display:inline}footer{gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.results{background:var(--paper)}.results-intro{display:grid;grid-template-columns:.75fr 1.35fr 1fr;gap:60px;align-items:start;margin-bottom:70px}.results-intro>p{color:var(--muted);font-size:17px;margin:8px 0}.results em{color:var(--gold)}.result-feature{display:grid;grid-template-columns:1.5fr .75fr;background:var(--green-deep);color:var(--cream);min-height:470px}.result-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:4px}.result-gallery img{height:100%;object-fit:cover}.result-data{padding:55px 42px;display:flex;flex-direction:column;justify-content:center}.result-location,.card-copy>span{text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--gold)}.result-data strong,.card-copy strong{font:clamp(55px,6vw,86px)/1 "Libre Caslon Display",serif;margin-top:28px}.result-data>p,.card-copy>p{margin:10px 0 28px;color:rgba(255,255,255,.7)}.result-meta{display:flex;flex-wrap:wrap;gap:12px}.result-meta span{border:1px solid rgba(255,255,255,.25);padding:7px 10px;font-size:12px}.result-row{display:grid;grid-template-columns:1.3fr .7fr;gap:28px;margin-top:28px}.result-card{background:var(--cream);display:grid;grid-template-columns:1.2fr .8fr;min-height:330px}.card-images{display:grid;grid-template-columns:1fr 1fr;gap:3px}.card-images img{height:100%;object-fit:cover}.card-copy{padding:38px;display:flex;flex-direction:column;justify-content:center}.card-copy strong{font-size:55px;color:var(--green);margin-top:18px}.card-copy>p{color:var(--muted);margin:5px 0 18px}.card-copy small{color:var(--muted)}.result-card-text{display:flex;flex-direction:column;background:var(--green);color:var(--cream)}.result-card-text .card-copy{flex:1}.result-card-text .card-copy strong{color:var(--cream)}.result-note{font-size:11px;line-height:1.55;color:rgba(255,255,255,.55);padding:0 38px 26px;margin:0}.staging{display:grid;grid-template-columns:.85fr 1.35fr;background:var(--green-deep);color:var(--cream)}.staging-copy{padding:110px clamp(32px,6vw,90px)}.staging-copy h2{margin:22px 0 30px}.staging-copy>p{color:rgba(255,255,255,.67);font-size:17px}.staging-copy ul{list-style:none;padding:0;margin:38px 0;border-top:1px solid rgba(255,255,255,.16)}.staging-copy li{border-bottom:1px solid rgba(255,255,255,.16);padding:14px 0}.staging-copy li:before{content:"✓";color:var(--gold);margin-right:12px}.staging-copy .staging-small{font-size:12px;line-height:1.6;color:rgba(255,255,255,.48)}.staging-gallery{padding:4px;display:grid;grid-template-columns:1.4fr .75fr .75fr;grid-template-rows:1fr .8fr;gap:4px;min-height:760px}.staging-gallery img{height:100%;object-fit:cover}.staging-main{grid-row:1/3}.staging-wide{grid-column:2/4}.launch{background:var(--cream)}.launch-heading{margin-bottom:70px}.launch-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.launch-grid article{padding:35px 28px 0 0;margin-right:28px;border-right:1px solid var(--line)}.launch-grid article:last-child{border:0;margin-right:0}.launch-grid span{font-size:12px;color:var(--gold);letter-spacing:.14em}.launch-grid h3{font:29px "Libre Caslon Display",serif;margin:24px 0 12px}.launch-grid p{font-size:15px;color:var(--muted)}
@media(max-width:1000px){.results-intro{grid-template-columns:1fr;gap:24px}.result-feature{grid-template-columns:1fr}.result-gallery{min-height:430px}.result-row{grid-template-columns:1fr}.staging{grid-template-columns:1fr}.staging-gallery{min-height:620px}.launch-grid{grid-template-columns:1fr 1fr}.launch-grid article:nth-child(2){border-right:0}.launch-grid article{padding-bottom:28px}}
@media(max-width:620px){.result-gallery{grid-template-columns:1fr;min-height:650px}.result-feature{display:block}.result-data{padding:38px 25px}.result-row{gap:16px}.result-card{grid-template-columns:1fr}.card-images{min-height:430px}.card-copy{padding:28px 24px}.result-note{padding-left:24px;padding-right:24px}.staging-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 210px 260px;min-height:0}.staging-main{grid-column:1/3;grid-row:auto}.staging-wide{grid-column:1/3}.launch-grid{grid-template-columns:1fr}.launch-grid article,.launch-grid article:nth-child(2){border-right:0;border-bottom:1px solid var(--line);margin:0}.site-header nav{max-height:calc(100vh - 78px);overflow:auto}}

/* Final responsive overrides */
.card-images{grid-template-columns:1fr;min-width:0}
.card-copy{min-width:0}
.result-card-text{display:grid;grid-template-columns:1.2fr .8fr}
.result-card-clapham .result-note{grid-column:1/3}
.staging{grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr)}
.staging-copy{position:relative;z-index:2;min-width:0;background:var(--green-deep)}
.staging-gallery{min-width:0}
@media(max-width:1000px){.staging{grid-template-columns:1fr}}
@media(max-width:620px){
  .result-gallery{grid-template-columns:1fr;min-height:0}
  .result-gallery img,.card-images img{height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
  .result-card,.result-card-text{grid-template-columns:1fr}
  .card-images{min-height:0}
  .result-card-clapham .result-note{grid-column:1}
  .staging-copy{padding:80px 24px}
  .staging-gallery{display:grid;grid-template-columns:1fr;grid-template-rows:none;min-height:0;gap:4px}
  .staging-gallery img,.staging-gallery .staging-main,.staging-gallery .staging-wide{grid-column:auto;grid-row:auto;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
}

@media(min-width:1001px){
  .result-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .result-card{grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);min-height:380px}
  .result-card .card-images{min-width:0;overflow:hidden}
  .result-card .card-images img{object-position:center}
  .result-card .card-copy{padding:32px}
  .result-card .card-copy strong{font-size:clamp(46px,3.4vw,55px);white-space:nowrap}
  .result-card .result-note{padding-left:32px;padding-right:32px}
}

.contact-form .form-honey{display:none}
.contact-form .button:disabled{cursor:wait;opacity:.65}

/* Privacy policy and consent links */
.form-note{line-height:1.55}
.form-note a{text-decoration:underline;text-underline-offset:3px}
.footer-links{display:flex;align-items:center;gap:28px}
.footer-links a:hover{color:white}
.privacy-hero{background:var(--green-deep);color:var(--cream);padding:100px clamp(22px,7.5vw,120px) 85px}
.privacy-hero h1{font-size:clamp(52px,7vw,92px);margin:10px 0 22px}
.privacy-hero .privacy-date{color:rgba(255,255,255,.62);margin:0}
.privacy-policy{max-width:980px;margin:0 auto;padding:90px clamp(22px,6vw,70px) 120px}
.privacy-policy section{padding:0 0 42px;margin:0 0 42px;border-bottom:1px solid var(--line)}
.privacy-policy section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.privacy-policy h2{font:36px/1.2 "Libre Caslon Display",serif;margin:0 0 20px;color:var(--green)}
.privacy-policy p,.privacy-policy li{color:var(--muted)}
.privacy-policy ul{padding-left:24px}
.privacy-policy li{margin:9px 0}
.privacy-policy a{text-decoration:underline;text-underline-offset:3px;color:var(--green)}
.privacy-policy strong{color:var(--ink)}
@media(max-width:620px){
  .footer-links{flex-direction:column;align-items:flex-start;gap:10px}
  .privacy-hero{padding-top:70px;padding-bottom:60px}
  .privacy-policy{padding-top:65px;padding-bottom:80px}
  .privacy-policy section{padding-bottom:30px;margin-bottom:30px}
  .privacy-policy h2{font-size:30px}
}
