@font-face{font-family:"Space Grotesk";src:url("SpaceGrotesk.ttf") format("truetype");font-style:normal;font-weight:300 700;font-display:swap}
:root{--green:#073c32;--deep:#052d26;--white:#fff;--accent:#c7f36b;--ink:#123d33;--muted:#557068;--line:#dce5df;--soft:#f5f8f5;--font:"Space Grotesk","Avenir Next",Avenir,Arial,sans-serif;--container:1200px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:var(--deep)}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:3px solid #44851b;outline-offset:6px}
svg{display:block}
figure,p,h1,h2,h3{margin:0}
.container{width:min(var(--container),calc(100% - 96px));margin-inline:auto}
.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--accent);padding:12px 20px;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.wordmark{display:inline-flex;align-items:center;gap:11px;font-size:27px;font-weight:600;letter-spacing:-1.3px;white-space:nowrap;line-height:1}
.loop-mark{width:44px;height:32px}
.wordmark-period{color:#51851a}
.navigation{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:500}
.navigation>a:not(.nav-contact){position:relative;padding-block:12px}
.navigation>a:not(.nav-contact)::after{content:"";position:absolute;bottom:6px;left:0;width:100%;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.navigation>a:hover::after,.navigation>a[aria-current]::after{transform:scaleX(1)}
.nav-contact{display:inline-block;color:var(--green);padding:12px 0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.nav-contact:hover{text-decoration-thickness:2px}
.nav-toggle{display:none}
.hero{padding-top:80px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:64px;align-items:center}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.5px;line-height:1.5;display:flex;align-items:center;gap:12px;margin-bottom:27px}
.eyebrow-rule{height:1px;width:28px;background:currentColor}
h1{font-size:clamp(48px,5.1vw,74px);line-height:1.08;letter-spacing:-3.9px;font-weight:500}
.underlined{position:relative;z-index:0;white-space:nowrap}
.underlined::after{content:"";height:.15em;background:var(--accent);position:absolute;left:0;right:0;bottom:.075em;z-index:-1}
.hero-description{font-size:17px;line-height:1.75;color:var(--muted);max-width:420px;margin-top:27px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;font-size:15px;font-weight:500;padding:16px 23px;border-radius:4px;transition:transform .2s,background .2s}
.button-green{background:var(--green);color:var(--white);margin-top:31px}
.button-green:hover{transform:translateY(-2px);background:#155748}
.hero-note{font-size:12px;color:var(--muted);margin-top:15px}
.dashboard{background:var(--green);color:white;padding:27px 28px 19px;border-radius:10px;box-shadow:0 22px 52px -30px #073c3270;transform:rotate(-1.5deg);position:relative}
.dashboard::before{content:"";position:absolute;inset:14px -12px -12px 12px;border:1px solid #b9cdbb;z-index:-1;border-radius:10px;transform:rotate(3deg)}
.dashboard-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:21px;border-bottom:1px solid #ffffff29;font-size:12px;letter-spacing:1.6px;font-weight:500}
.dashboard-top svg{width:36px;height:25px;color:var(--accent)}
.dashboard-kpi{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:23px}
.dashboard-kpi p{font-size:14px;color:#c5d8cf}
.dashboard-kpi strong{font-size:62px;line-height:1.2;font-weight:500;letter-spacing:-3px}
.dashboard-kpi strong>span{font-size:37px;margin-left:4px}
.kpi-change{font-size:12px;border-radius:3px;background:#c7f36b19;color:var(--accent);padding:7px 9px;white-space:nowrap}
.chart-heading{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:#b3cdc0;margin-top:26px;margin-bottom:4px}
.chart-legend{display:flex;gap:6px;align-items:center}
.chart-legend i{width:11px;height:2px;background:var(--accent)}
.growth-chart{width:100%;height:auto;overflow:visible}
.chart-grid{stroke:#ffffff10;stroke-width:1}
.chart-axis{font-family:var(--font);font-size:12px;fill:#b6cec1}
.dashboard-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #ffffff29;margin-top:19px;padding-top:18px}
.dashboard-bottom>div{display:flex;flex-direction:column;gap:5px}
.dashboard-bottom>div+div{border-left:1px solid #ffffff29;padding-left:23px}
.dashboard-bottom>div>span{font-size:12px;color:#b6cec1}
.dashboard-bottom strong{font-size:21px;font-weight:500;letter-spacing:-.5px}
.dashboard-bottom strong span{font-size:17px;color:#8bab9e;padding-inline:5px}
.dashboard figcaption{font-size:12px;color:#b3cdc0;margin-top:21px}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:73px;padding-block:25px}
.hero-bottom>span{font-size:12px;letter-spacing:1.5px;font-weight:500;color:var(--muted)}
.hero-bottom>div{display:flex;align-items:center;gap:27px;font-size:14px}
.hero-bottom b{font-weight:400;color:#728d81}
.return-loop{width:20px;height:20px}
.section{padding-block:102px}
.services{background:var(--soft);border-top:1px solid var(--line)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;margin-bottom:55px}
h2{font-size:clamp(36px,3.2vw,46px);line-height:1.16;font-weight:500;letter-spacing:-1.7px}
.section-heading .eyebrow{margin-bottom:21px}
.section-heading>p,.results-intro{max-width:355px;color:var(--muted);line-height:1.75}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #9db7a8}
.service{padding:25px 26px 2px;border-right:1px solid var(--line)}
.service:first-child{padding-left:0}
.service:last-child{border:0;padding-right:0}
.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}
.service-top svg{width:38px;height:38px;stroke:var(--green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service h3{font-size:20px;font-weight:500;letter-spacing:-.6px;margin-bottom:14px}
.service>p{font-size:16px;line-height:1.8;color:var(--muted);min-height:108px}
.service-detail{font-size:12px;line-height:1.85;margin-top:25px;padding-top:19px;border-top:1px solid var(--line)}
.results{background:var(--deep);color:white}
.results .eyebrow{color:var(--accent)}
.results-intro{max-width:380px;color:#c0d2c8}
.example-label{display:inline-block;color:var(--accent);border:1px solid #c7f36b60;padding:5px 10px;letter-spacing:.9px;font-size:12px;margin-bottom:15px;border-radius:2px}
.results-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;border-top:1px solid #ffffff29;padding-top:43px}
.result-label{font-size:12px;letter-spacing:1.3px;color:#b7cfc2}
.big-metric{font-size:110px;line-height:1.15;font-weight:400;color:var(--accent);letter-spacing:-7px;margin-block:11px 1px}
.big-metric>span{font-size:62px;letter-spacing:-4px}
.result-feature h3{font-size:23px;font-weight:500;letter-spacing:-.4px}
.result-feature>p:not(.big-metric){font-size:14px;color:#b7cfc2;line-height:1.8;margin-top:10px}
.comparison-bars{margin-top:29px;max-width:420px}
.comparison-bars>div{display:grid;grid-template-columns:66px 1fr 33px;align-items:center;gap:13px;margin-top:10px;font-size:12px;color:#d4e2da}
.comparison-bars strong{font-size:12px;font-weight:400}
.bar{height:8px;border-radius:1px}
.baseline-bar{width:80%;background:#719687}
.example-bar{width:100%;background:var(--accent)}
.result-table-wrap{padding-left:44px;border-left:1px solid #ffffff29}
.result-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6}
.result-table caption{text-align:left;font-size:23px;font-weight:500;letter-spacing:-.5px;margin-bottom:25px}
.result-table th{font-weight:400;text-align:left}
.result-table thead{font-size:12px;color:#b7cfc2}
.result-table th,.result-table td{padding:15px 0;border-bottom:1px solid #ffffff29}
.result-table thead th{padding-top:0}
.result-table td,.result-table thead th:not(:first-child){text-align:right;padding-left:14px;white-space:nowrap}
.result-table td:last-child{color:var(--accent)}
.result-callout{margin-top:30px;padding:18px 20px;background:#ffffff07;display:flex;align-items:center;gap:22px;border:1px solid #ffffff1f;border-radius:4px}
.callout-value{font-size:33px;color:var(--accent);letter-spacing:-1.5px;white-space:nowrap}
.result-callout p{font-size:14px;line-height:1.7}
.result-callout p span{font-size:12px;color:#b7cfc2}
.results-disclaimer{font-size:12px;color:#b7cfc2;line-height:1.8;padding-top:31px;margin-top:42px;border-top:1px solid #ffffff29}
.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:105px}
.process-heading>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);margin-top:24px}
.process-steps{margin:0;padding:0;list-style:none}
.process-steps h3{font-size:25px;letter-spacing:-.6px;font-weight:500;margin-bottom:11px;line-height:1.3}
.process-steps div>p:not(.step-label){color:var(--muted);font-size:16px;line-height:1.8}
.step-output{display:block;font-size:12px;font-weight:500;margin-top:14px}
@media(min-width:1500px){.hero{padding-top:96px}.hero-grid{gap:85px}.hero-bottom{margin-top:92px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.hero-grid{gap:35px}.hero{padding-top:60px}h1{font-size:55px;letter-spacing:-2.8px}.dashboard{padding:23px 22px 17px}.dashboard-kpi strong{font-size:54px}.chart-heading{font-size:12px}.hero-description{font-size:16px}.service{padding-inline:18px}.service h3{font-size:18px}.service>p{min-height:135px}.results-grid{gap:35px}.result-table-wrap{padding-left:30px}.process-grid{gap:65px}.navigation{gap:27px}.section{padding-block:85px}}
@media(max-width:850px){.hero-grid{grid-template-columns:1fr 1fr;gap:30px}h1{font-size:45px;letter-spacing:-2.3px}.hero .eyebrow{font-size:12px;letter-spacing:1.2px}.hero-description{font-size:15px}.dashboard{padding:20px 19px 17px;transform:none}.dashboard::before{display:none}.dashboard-top{font-size:12px;letter-spacing:1px}.dashboard-kpi{gap:8px}.kpi-change{font-size:12px;padding:5px}.dashboard-kpi strong{font-size:46px}.dashboard-kpi p{font-size:12px}.chart-heading>span:first-child{display:none}.chart-heading{justify-content:flex-end;margin-top:18px}.dashboard-bottom>div+div{padding-left:12px}.dashboard-bottom>div>span{font-size:12px}.dashboard-bottom strong{font-size:18px}.dashboard-bottom strong span{padding-inline:1px}.dashboard figcaption{font-size:12px}.hero-bottom{margin-top:50px}.hero-bottom>div{gap:16px;font-size:12px}.hero-bottom>span{font-size:12px}.service-grid{grid-template-columns:repeat(2,1fr);row-gap:40px}.service{padding:24px 30px 0 0}.service:nth-child(2n){padding-left:30px;padding-right:0;border:0}.service>p{min-height:0}.service-top{margin-bottom:24px}.service h3{font-size:22px}.section-heading{gap:35px}.section-heading>p,.results-intro{max-width:290px;font-size:15px}.results-grid{gap:28px}.result-table-wrap{padding-left:25px}.result-table{font-size:12px}.result-table caption{font-size:20px}.result-callout{padding:15px 12px;gap:13px}.callout-value{font-size:29px}.result-callout p{font-size:12px}.result-callout p span{font-size:12px}.big-metric{font-size:96px}.process-grid{gap:45px;grid-template-columns:.8fr 1.2fr}.process-steps h3{font-size:23px}.navigation{gap:21px}.wordmark{font-size:25px}.loop-mark{width:38px}.header-inner{gap:20px}}
@media(max-width:680px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.header-inner{min-height:77px;flex-wrap:wrap;gap:0}.wordmark{font-size:25px}.navigation{width:100%;padding:5px 0 19px;justify-content:space-between;gap:12px;font-size:13px}.enhanced .nav-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid var(--line);border-radius:3px;padding:8px 10px;font-size:13px;color:var(--green)}.menu-lines{width:15px;height:8px;border-block:1px solid currentColor;transition:transform .2s}.nav-toggle[aria-expanded="true"] .menu-lines{transform:rotate(-45deg)}.enhanced .navigation:not(.is-open){display:none}.enhanced .navigation.is-open{padding-block:15px 23px}.hero{padding-top:43px}.hero-grid{grid-template-columns:1fr;gap:42px}.hero .eyebrow{font-size:12px;margin-bottom:24px}.hero .eyebrow-rule{width:20px}h1{font-size:clamp(43px,9.8vw,66px);letter-spacing:-2.5px;max-width:500px}.desktop-break{display:none}.hero-description{font-size:16px;margin-top:24px;max-width:470px}.button-green{margin-top:25px}.button{font-size:14px;padding:15px 21px}.hero-note{font-size:12px}.dashboard{padding:24px 24px 19px;max-width:520px;width:100%;margin:auto}.dashboard-top{font-size:12px}.dashboard-kpi strong{font-size:63px}.dashboard-kpi p{font-size:14px}.kpi-change{font-size:12px;padding:6px 8px}.chart-heading{font-size:12px;justify-content:space-between}.chart-heading>span:first-child{display:inline}.dashboard-bottom>div>span{font-size:12px}.dashboard-bottom strong{font-size:22px}.dashboard-bottom>div+div{padding-left:22px}.dashboard figcaption{font-size:12px}.hero-bottom{margin-top:34px;align-items:flex-start;flex-direction:column;gap:13px;padding-block:23px}.hero-bottom>div{width:100%;justify-content:space-between;gap:10px;font-size:12px}.hero-bottom>span{font-size:12px}.return-loop{width:17px}.section{padding-block:65px}.section-heading{display:block;margin-bottom:35px}.section-heading>p,.results-intro{margin-top:23px;max-width:470px}.section-heading .eyebrow{margin-bottom:17px}h2{font-size:36px;letter-spacing:-1.5px}.service-grid{row-gap:32px}.service{padding-right:20px}.service:nth-child(2n){padding-left:20px}.service-top{margin-bottom:20px}.service h3{font-size:20px;line-height:1.3}.service>p{font-size:16px;line-height:1.8}.service-detail{font-size:12px;margin-top:21px;padding-top:16px}.service-top svg{width:32px;height:32px}.results-grid{grid-template-columns:1fr;gap:38px;padding-top:30px}.big-metric{font-size:103px;margin-top:6px}.result-feature h3{font-size:24px}.result-table-wrap{padding:29px 0 0;border-left:0;border-top:1px solid #ffffff29}.result-table{font-size:14px}.result-table caption{font-size:23px}.result-callout{padding:18px 20px;gap:20px}.callout-value{font-size:34px}.result-callout p{font-size:14px}.result-callout p span{font-size:12px}.results-disclaimer{font-size:12px;margin-top:30px;padding-top:22px}.comparison-bars{max-width:none}.process-grid{grid-template-columns:1fr;gap:39px}.process-heading>p:not(.eyebrow){font-size:14px;margin-top:20px}.process-steps h3{font-size:23px}.process-steps div>p:not(.step-label){font-size:16px}.step-output{font-size:12px}}
@media(max-width:370px){.container{width:calc(100% - 32px)}h1{font-size:42px;letter-spacing:-2.4px}.dashboard{padding-inline:17px}.chart-heading{font-size:12px}.kpi-change{font-size:12px}.dashboard-bottom>div>span{font-size:12px}.service-grid{grid-template-columns:1fr;gap:0}.service,.service:nth-child(2n){border:0;border-bottom:1px solid var(--line);padding:25px 0}.service:last-child{border-bottom:0}.service-detail{border:0;margin-top:13px;padding:0}.service-top{margin-bottom:16px}.service h3{font-size:22px}.service>p{font-size:15px}.navigation{gap:9px;font-size:12px}}
@media(prefers-reduced-motion:no-preference){.is-visible{animation:reveal .6s ease both}.chart-line{stroke-dasharray:520;stroke-dashoffset:520;animation:draw-chart 1.6s .15s ease forwards}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes draw-chart{to{stroke-dashoffset:0}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.site-header{position:static}.nav-toggle,.navigation,.skip-link{display:none!important}.container{width:100%}.section{padding-block:32px}.hero{padding-top:20px}.dashboard{transform:none;box-shadow:none}.dashboard::before{display:none}.results{print-color-adjust:exact;-webkit-print-color-adjust:exact}.service,.process-steps>li,.results-grid{break-inside:avoid}}

/* Keep captions legible and columns flexible at intermediate widths. */
.hero-grid>*,.results-grid>*,.process-grid>*{min-width:0}
.service-detail,.step-output{font-size:14px}
.service>p{min-height:0}
.service{display:flex;flex-direction:column}

@media(min-width:681px){.service-detail{margin-top:auto;padding-top:19px}.service>p{padding-bottom:25px}}
@media(min-width:681px) and (max-width:850px){.dashboard-kpi{align-items:flex-start;flex-direction:column;gap:8px}.chart-heading{justify-content:flex-start}.dashboard-bottom{grid-template-columns:1fr}.dashboard-bottom>div+div{border:0;padding-left:0}.dashboard-bottom>div{flex-direction:row;align-items:center;justify-content:space-between}.dashboard-bottom strong{font-size:16px}.dashboard-bottom>div>span{font-size:12px}.dashboard figcaption{font-size:12px}.hero-grid{align-items:center}}

/* Revised process: full-sentence headings without decorative numbering. */
.process-heading h2 {
  font-size: clamp(2.25rem, 3.4vw, 3rem);
  line-height: 1.16;
  letter-spacing: -.055em;
  max-width: 430px;
}
.process-steps > li {
  padding-bottom: 30px;
  margin-bottom: 30px;
  border-bottom: 1px solid var(--line);
}
.process-steps > li:last-child {
  margin: 0;
  padding: 0;
  border: 0;
}
.process-steps h3 {
  font-size: 1.5rem;
  line-height: 1.35;
  letter-spacing: -.025em;
  max-width: 520px;
}

/* A practical, two-column brief with an inline email address. */
.contact {
  background: #eef4e9;
  padding-block: 84px;
}
.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 80px;
  align-items: start;
}
.contact-intro h2 {
  font-size: clamp(2rem, 3.3vw, 2.9rem);
  letter-spacing: -.045em;
  max-width: 390px;
}
.contact-intro > p:not(.eyebrow) {
  margin-top: 22px;
  font-size: 1rem;
  line-height: 1.8;
  max-width: 440px;
}
.contact-intro .contact-note {
  color: var(--muted);
  font-size: .875rem;
}
.inline-email {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}
.inline-email:hover { text-decoration-thickness: 2px; }
.brief-guide {
  padding-left: 40px;
  border-left: 1px solid #b6c8b2;
}
.brief-guide h3 {
  font-size: 1.25rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: -.025em;
  margin-bottom: 22px;
}
.brief-list {
  margin: 0;
  padding-left: 18px;
  list-style: square;
}
.brief-list li { padding-left: 6px; }
.brief-list li + li { margin-top: 22px; }
.brief-list strong { font-size: 1rem; font-weight: 500; }
.brief-list p {
  font-size: .9375rem;
  line-height: 1.8;
  color: var(--muted);
  margin-top: 5px;
}

/* A multi-column footer; the legal notice is a native keyboard-accessible disclosure. */
.site-footer {
  background: var(--deep);
  color: white;
  padding-block: 58px 62px;
}
.footer-grid {
  display: grid;
  grid-template-columns: .7fr 1.2fr 1fr;
  gap: 80px;
  align-items: start;
}
.footer-column { min-width: 0; }
.footer-column h2 {
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: .025em;
  line-height: 1.5;
  margin-bottom: 20px;
  color: var(--accent);
}
.footer-column ul { list-style: none; padding: 0; margin: 0; }
.footer-column li + li { margin-top: 9px; }
.footer-column a, .legal-notice summary { font-size: .9375rem; }
.footer-column a {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 4px;
  transition: text-decoration-color .2s;
}
.footer-column a:hover { text-decoration-color: currentColor; }
.footer-column p {
  font-size: .875rem;
  line-height: 1.8;
  color: #bed0c5;
}
.footer-contact > a { display: inline-block; margin-top: 16px; }
.footer-column .footer-copyright {
  font-size: .75rem;
  margin-top: 32px;
}
.legal-notice { margin-top: 17px; }
.legal-notice summary { cursor: pointer; width: fit-content; }
.legal-notice summary::marker { color: var(--accent); }
.legal-copy { padding-top: 16px; }
.legal-copy p + p { margin-top: 14px; }
.legal-copy a { font-size: inherit; overflow-wrap: anywhere; }
.site-footer a:focus-visible, .legal-notice summary:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 5px;
}

@media (max-width: 1000px) {
  .contact-grid { gap: 45px; }
  .brief-guide { padding-left: 30px; }
  .footer-grid { gap: 40px; }
}
@media (max-width: 680px) {
  .contact { padding-block: 55px; }
  .contact-grid { grid-template-columns: 1fr; gap: 32px; }
  .contact-intro h2 { max-width: 420px; }
  .brief-guide {
    padding: 28px 0 0;
    border-left: 0;
    border-top: 1px solid #b6c8b2;
  }
  .site-footer { padding-block: 42px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 34px 25px; }
  .footer-contact { grid-column: 1 / -1; }
  .footer-column h2 { margin-bottom: 15px; }
  .process-heading h2 { max-width: 440px; }
  .process-steps h3 { font-size: 1.35rem; }
}
@media (max-width: 390px) {
  .footer-grid { grid-template-columns: 1fr; gap: 31px; }
  .footer-contact { grid-column: auto; }
}
@media print {
  .site-footer { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}
