:root {
  --ink: #102c2a;
  --green: #1d5a49;
  --green-deep: #123c35;
  --sage: #dce7df;
  --cream: #f6f4ee;
  --paper: #fffefa;
  --muted: #66716d;
  --line: rgba(16,44,42,.15);
  --max: 1180px;
  --serif: "Playfair Display", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased} a{color:inherit;text-decoration:none} img{max-width:100%}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.section{padding:120px 0}.section-soft{background:var(--cream)}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,254,250,.9);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{border-color:var(--line)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;line-height:1}.brand-main{font-size:29px;font-weight:700;letter-spacing:-.06em}.brand-sub{font-size:9px;letter-spacing:.12em;margin-top:4px}.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:500}.main-nav>a:not(.button){position:relative}.main-nav>a:not(.button):after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:var(--ink);transition:.2s}.main-nav>a:hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;background:var(--green);color:white;border-radius:999px;padding:14px 22px;font-weight:600;font-size:14px;transition:.2s}.button:hover{background:var(--green-deep);transform:translateY(-1px)}.button-small{padding:11px 18px}.button span,.text-link span{transition:.2s}.button:hover span,.text-link:hover span{transform:translate(2px,-2px)}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:25px;height:1px;background:var(--ink);margin:6px 0;transition:.2s}
.hero{padding-top:70px}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:center;min-height:590px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--green);margin:0 0 25px}.hero h1,.section-heading h2,.method-top h2,.business-copy h2,.contact-copy h2{font-family:var(--serif);font-weight:600;letter-spacing:-.04em;line-height:1.04;margin:0}.hero h1{font-size:clamp(48px,5.3vw,76px);max-width:780px}.hero h1 em{font-style:italic;color:var(--green)}.hero-text{max-width:620px;color:var(--muted);font-size:18px;margin:30px 0 34px}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:4px}.hero-visual{position:relative;height:500px}.arch-image{height:100%;width:82%;margin-left:auto;border-radius:220px 220px 6px 6px;background-size:cover;background-position:center}.hero-photo{background-image:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.08)),url('https://images.unsplash.com/photo-1531761535209-180857e963b9?auto=format&fit=crop&w=1000&q=85')}.visual-note{position:absolute;left:0;bottom:45px;background:var(--paper);padding:25px 28px;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700;box-shadow:0 15px 50px rgba(16,44,42,.08)}.visual-line{position:absolute;width:80px;height:1px;background:var(--green);left:28px;bottom:28px}.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:60px}.promise-grid>div{padding:30px 25px 0 0}.promise-grid>div+div{padding-left:25px;border-left:1px solid var(--line)}.promise-grid span,.card-number,.method-grid span,.benefit-grid span{font-size:10px;color:var(--green);letter-spacing:.12em}.promise-grid strong{display:block;font-size:14px;margin-top:9px}.promise-grid p{font-size:12px;color:var(--muted);margin:2px 0}
.split-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:120px}.section-heading h2,.method-top h2,.business-copy h2{font-size:clamp(38px,4.2vw,60px)}.about-copy{font-size:18px;color:#44524f}.about-copy p{margin:0 0 25px}.about-copy strong{color:var(--ink)}.services-heading{max-width:770px;margin-bottom:55px}.services-heading>p:last-child{max-width:600px;color:var(--muted);font-size:17px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{position:relative;padding:46px;background:var(--cream);min-height:650px}.service-card-dark{background:var(--green-deep);color:white}.service-icon{width:55px;height:55px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:22px;margin-bottom:55px}.service-card-dark .service-icon{border-color:rgba(255,255,255,.25)}.service-icon span{position:absolute;right:45px;top:45px;font-family:var(--sans);font-size:18px}.service-card h3{font-family:var(--serif);font-size:34px;line-height:1.1;margin:8px 0 16px}.service-card>p:not(.card-number){color:var(--muted);max-width:500px}.service-card-dark>p:not(.card-number){color:rgba(255,255,255,.7)}.service-card ul{list-style:none;padding:0;margin:38px 0 0}.service-card li{display:grid;grid-template-columns:190px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line);font-size:13px}.service-card-dark li{border-color:rgba(255,255,255,.16)}.service-card li span{color:var(--muted)}.service-card-dark li span{color:rgba(255,255,255,.6)}
.methodology{background:var(--sage)}.method-top{display:grid;grid-template-columns:.7fr 1fr 1fr;gap:60px;align-items:end}.method-top .eyebrow{align-self:start}.method-top>p:last-child{color:#4f625d;margin:0}.method-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:75px;border-top:1px solid rgba(16,44,42,.25)}.method-grid div{padding:30px 25px 0 0}.method-grid div+div{padding-left:25px;border-left:1px solid rgba(16,44,42,.25)}.method-grid strong{display:block;font-family:var(--serif);font-size:18px;line-height:1.2;margin-top:30px}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.business-copy>p:not(.eyebrow){color:var(--muted);max-width:550px;margin:28px 0}.industries{border-top:1px solid var(--line)}.industries div{display:flex;justify-content:space-between;align-items:center;padding:18px 4px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:22px}.industries span{font-family:var(--sans);font-size:14px;color:var(--green)}.benefits .section-heading{max-width:650px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line)}.benefit-grid article{padding:35px 45px 0 0}.benefit-grid article+article{border-left:1px solid var(--line);padding-left:45px}.benefit-grid h3{font-family:var(--serif);font-size:25px;margin:25px 0 8px}.benefit-grid p{color:var(--muted);margin:0}.contact-section{padding:100px 0;background:var(--green-deep);color:white}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:end}.eyebrow-light{color:#b9d4c8}.contact-copy h2{font-size:clamp(42px,5vw,68px);max-width:700px}.contact-copy>p:last-child{color:rgba(255,255,255,.65);font-size:18px}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.contact-actions>a:not(.button){width:100%;display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:14px}.button-light{background:var(--paper);color:var(--ink);margin-top:18px}.button-light:hover{background:white;color:var(--ink)}.site-footer{padding:42px 0}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}.footer-grid p{margin:0;color:var(--muted);font-size:12px}.footer-grid p:nth-child(2){text-align:center}.footer-grid p:last-child{text-align:right}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}
@media(max-width:900px){.section{padding:85px 0}.main-nav{position:fixed;inset:88px 0 auto 0;background:var(--paper);padding:30px 24px 40px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);transform:translateY(-140%);transition:.3s;z-index:90}.main-nav.open{transform:none}.main-nav .button{width:100%}.menu-toggle{display:block}.menu-toggle.active span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle.active span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.hero-grid{grid-template-columns:1fr;gap:55px;min-height:auto}.hero-visual{height:440px;max-width:520px;width:100%;margin-inline:auto}.promise-grid{grid-template-columns:1fr 1fr}.promise-grid>div:nth-child(3){border-left:0;padding-left:0}.promise-grid>div{border-top:1px solid var(--line);padding-bottom:25px}.split-grid,.business-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr}.method-top{grid-template-columns:1fr;gap:20px}.method-grid{grid-template-columns:1fr 1fr}.method-grid div{border-bottom:1px solid rgba(16,44,42,.25);padding-bottom:25px}.method-grid div+div{border-left:0;padding-left:0}.benefit-grid{grid-template-columns:1fr}.benefit-grid article,.benefit-grid article+article{border-left:0;border-bottom:1px solid var(--line);padding:30px 0}.footer-grid{grid-template-columns:1fr;gap:18px}.footer-grid p:nth-child(2),.footer-grid p:last-child{text-align:left}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--max))}.nav-wrap{height:76px}.main-nav{inset:76px 0 auto}.hero{padding-top:45px}.hero h1{font-size:43px}.hero-text{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-visual{height:370px}.arch-image{width:88%;border-radius:180px 180px 4px 4px}.visual-note{padding:18px;bottom:30px}.promise-grid{grid-template-columns:1fr}.promise-grid>div+div{border-left:0;padding-left:0}.split-grid{gap:35px}.section-heading h2,.method-top h2,.business-copy h2{font-size:38px}.about-copy{font-size:16px}.service-card{padding:30px 24px;min-height:auto}.service-icon{margin-bottom:40px}.service-icon span{right:25px;top:28px}.service-card h3{font-size:29px}.service-card li{grid-template-columns:1fr;gap:2px}.method-grid{grid-template-columns:1fr}.method-grid strong{margin-top:12px}.industries div{font-size:20px}.contact-section{padding:75px 0}.contact-copy h2{font-size:41px}.contact-actions{overflow-wrap:anywhere}.footer-grid{padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
