@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root {
  --ink:#162c35;
  --muted:#65777d;
  --teal:#0d998e;
  --mint:#e9f8f4;
  --line:#deebe7;
  --white:#fff;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:30px;
}
body {
  margin:0;
  color:var(--ink);
  background:#fbfdfc;
  font-family:Manrope,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a {
  color:inherit;
  text-decoration:none;
}
button {
  font:inherit;
}
svg {
  width:22px;
  height:22px;
  flex-shrink:0;
}
a,button {
  -webkit-tap-highlight-color:transparent;
}
a:focus-visible,button:focus-visible {
  outline:3px solid #138b83;
  outline-offset:5px;
}
[hidden] {
  display:none!important;
}
.skip {
  position:absolute;
  left:12px;
  top:-80px;
  background:white;
  padding:12px;
  z-index:10;
}
.skip:focus {
  top:10px;
}
.header {
  max-width:1320px;
  min-height:102px;
  padding:20px 44px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}
.brand {
  display:inline-flex;
  align-items:center;
  gap:11px;
  flex-shrink:0;
}
.brand-mark {
  width:34px;
  height:34px;
}
.wordmark {
  width:140px;
  height:auto;
  mix-blend-mode:multiply;
}
.header nav {
  display:flex;
  gap:32px;
  font-size:13px;
  font-weight:600;
}
.header nav a:hover,.text-link:hover {
  color:var(--teal);
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:30px;
  border-radius:100px;
  background:#123e3b;
  color:white;
  padding:18px 27px;
  font-size:14px;
  font-weight:700;
  box-shadow:0 8px 18px #0a574514;
  transition:background .2s,transform .2s;
}
.button:hover {
  background:#087f74;
  transform:translateY(-2px);
}
.button svg {
  width:19px;
  height:19px;
}
.button-small {
  padding:12px 21px;
  gap:26px;
  font-size:12px;
}
.button-small span {
  display:flex;
}
.hero {
  position:relative;
  overflow:hidden;
  background:radial-gradient(ellipse at 52% 50%,#d0f3eb88,transparent 60%),linear-gradient(155deg,#edf9f4 0,#e5f8f5 50%,#f9fcfa 100%);
  padding:55px 30px 82px;
  margin:0 20px;
  border-radius:30px;
}
.hero-copy {
  position:relative;
  text-align:center;
  z-index:1;
}
.eyebrow {
  font-size:10px;
  letter-spacing:1.8px;
  font-weight:800;
  color:#3d7f79;
  line-height:1.6;
}
.hero .eyebrow {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
}
.status-dot {
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#19b6a4;
}
.hero h1 {
  font-size:clamp(36px,4.5vw,65px);
  font-weight:600;
  letter-spacing:-3px;
  line-height:1.12;
  margin:21px 0 20px;
}
.hero h1 span {
  color:#12a897;
}
.hero p {
  font-size:15px;
  line-height:1.8;
  color:var(--muted);
  margin:0;
}
.hero-actions {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:30px;
  margin:26px 0 13px;
}
.text-link {
  display:inline-flex;
  align-items:center;
  gap:16px;
  font-size:13px;
  font-weight:700;
}
.access-note {
  font-size:10px;
  color:#627d78;
}
.mesh {
  position:absolute;
  inset:22% 0 0;
  width:100%;
  height:83%;
  fill:none;
  stroke:#67cdbb;
  stroke-width:.6;
  opacity:.19;
  pointer-events:none;
}
.product-stage {
  position:relative;
  z-index:1;
  max-width:1130px;
  margin:56px auto 0;
  display:grid;
  grid-template-columns:.83fr 1.3fr;
  gap:48px;
  align-items:center;
  scroll-margin-top:40px;
}
.source-art {
  position:relative;
  margin-left:-52px;
  text-align:center;
  align-self:center;
}
.source-art img {
  width:120%;
  height:auto;
  display:block;
  mix-blend-mode:multiply;
  max-width:none;
  mask-image:linear-gradient(to right,transparent,#000 12%,#000 86%,transparent);
}
.source-art>div {
  position:relative;
  margin:3px -5px 0 20px;
}
.source-art .eyebrow {
  font-size:8px;
  letter-spacing:1.6px;
}
.source-art strong {
  display:block;
  font-size:25px;
  font-weight:600;
  letter-spacing:-1px;
  margin-top:10px;
}
.connection-trail {
  position:absolute;
  left:35%;
  top:43%;
  font-size:23px;
  color:#4ba393;
  display:flex;
  align-items:center;
  gap:8px;
  z-index:3;
}
.connection-trail span {
  border:1px solid #b9e4da;
  background:#f5fffc;
  border-radius:50%;
  padding:11px;
  display:flex;
  box-shadow:0 10px 25px #1b938021;
}
.product-window {
  background:#fffdfc;
  border:1px solid #fff;
  border-radius:19px;
  box-shadow:0 26px 75px #16483919,0 1px 4px #375d4d0c;
  overflow:hidden;
  position:relative;
  z-index:2;
  transform:perspective(1600px) rotateY(-4deg) rotateX(1deg);
}
.window-toolbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px 20px;
  border-bottom:1px solid #edf3f0;
  background:#fdfefd;
}
.mini-brand {
  display:flex;
  align-items:center;
  gap:9px;
  font-size:12px;
  font-weight:800;
}
.mini-brand svg {
  width:20px;
  color:#159e8d;
}
.mini-brand span {
  font-size:9px;
  font-weight:500;
  color:#7b8e89;
  padding-left:8px;
  border-left:1px solid #dce9e4;
}
.sample-label {
  font-size:7px;
  letter-spacing:1px;
  color:#657c73;
}
.product-tabs {
  display:flex;
  justify-content:center;
  border:1px solid #e8f0ec;
  border-radius:24px;
  margin:17px 22px 0;
  padding:5px;
  gap:5px;
}
.product-tabs button {
  flex:1;
  border:0;
  background:none;
  padding:9px 14px;
  font-size:10px;
  font-weight:700;
  border-radius:18px;
  color:#657873;
  cursor:pointer;
}
.product-tabs button[aria-selected=true] {
  background:#def6ef;
  color:#147d6e;
}
.product-tabs button:hover {
  background:#eef8f4;
}
.demo-panel {
  padding:23px 22px 21px;
  min-height:346px;
}
.panel-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:19px;
}
.panel-title small {
  font-size:7px;
  letter-spacing:1.4px;
  font-weight:800;
  color:#728781;
}
.panel-title h2 {
  font-size:19px;
  letter-spacing:-.5px;
  margin:7px 0 0;
  font-weight:700;
}
.soft-tag,.review-tag {
  border-radius:20px;
  background:#e5f7ec;
  color:#328267;
  padding:5px 9px;
  font-size:8px;
  white-space:nowrap;
}
.review-tag {
  background:#fff2d9;
  color:#916623;
}
.company-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px;
}
.owners,.company-facts>div {
  border:1px solid #e5eeea;
  border-radius:11px;
  padding:14px;
}
.mini-label {
  font-size:7px;
  letter-spacing:1.2px;
  color:#62766f;
  font-weight:700;
}
.donut {
  margin:13px auto;
  width:106px;
  height:106px;
  border-radius:50%;
  background:conic-gradient(#23b9a5 0 55%,#8bdcce 55% 80%,#d4eee6 80%);
  display:grid;
  place-items:center;
  transform:rotate(-30deg);
}
.donut>div {
  transform:rotate(30deg);
  height:81px;
  width:81px;
  border-radius:50%;
  background:white;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.donut strong {
  font-size:25px;
  font-weight:500;
}
.donut small {
  font-size:8px;
  color:#7a8c86;
}
.legend span {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:9px;
  padding:6px 0;
}
.legend b {
  margin-left:auto;
  font-weight:600;
}
.legend i {
  width:5px;
  height:5px;
  background:#23b9a5;
  border-radius:50%;
}
.legend span:nth-child(2) i {
  background:#8bdcce;
}
.legend span:nth-child(3) i {
  background:#d4eee6;
}
.company-facts {
  display:grid;
  gap:11px;
}
.company-facts strong {
  font-size:23px;
  display:block;
  letter-spacing:-.6px;
  margin:10px 0;
}
.company-facts strong small {
  font-size:9px;
  font-weight:500;
}
.source-label {
  display:flex;
  align-items:center;
  gap:5px;
  font-size:8px;
  color:#478d79;
}
.source-label svg {
  width:12px;
  height:12px;
}
.company-facts strong.small-fact {
  font-size:14px;
  letter-spacing:-.2px;
}
.company-facts .review-note {
  display:flex;
  align-items:center;
  gap:8px;
  border:0;
  background:#edf8f2;
  font-size:8px;
  color:#577b69;
  padding:11px;
}
.review-note svg {
  width:16px;
  height:16px;
}
.window-footer {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:13px 21px;
  border-top:1px solid #e7f0eb;
  font-size:7px;
  color:#778c85;
}
.window-footer>span:first-child {
  display:flex;
  align-items:center;
  gap:6px;
}
.window-footer .status-dot {
  height:4px;
  width:4px;
}
.floating-note {
  position:absolute;
  bottom:-24px;
  right:-24px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:12px;
  padding:17px 23px;
  background:#fff;
  border:1px solid #e8efeb;
  border-radius:12px;
  box-shadow:0 13px 30px #1b47351a;
  transform:rotate(3deg);
}
.floating-note>svg {
  width:26px;
  height:26px;
  padding:6px;
  box-sizing:content-box;
  background:#e1f8ed;
  color:#159574;
  border-radius:50%;
}
.floating-note strong {
  display:block;
  font-size:11px;
}
.floating-note span {
  display:block;
  font-size:9px;
  color:#7f928b;
  margin-top:5px;
}
.document-row {
  display:flex;
  align-items:center;
  gap:12px;
  padding:20px 0;
  border-bottom:1px solid #edf2ef;
}
.doc-icon {
  background:#eaf7f1;
  padding:11px;
  border-radius:10px;
  color:#159a84;
  display:flex;
}
.doc-icon svg {
  width:20px;
  height:20px;
}
.document-row>div {
  flex:1;
}
.document-row strong {
  display:block;
  font-size:12px;
}
.document-row small {
  display:block;
  margin-top:6px;
  font-size:9px;
  color:#73877e;
}
.demo-bottom {
  font-size:10px;
  color:#718679;
  margin-top:18px;
}
.history-row {
  display:flex;
  gap:23px;
  position:relative;
  padding:12px 0;
}
.history-row>span {
  font-size:12px;
  font-weight:700;
  width:41px;
  flex-shrink:0;
}
.history-row>span small {
  display:block;
  font-size:6px;
  margin-top:6px;
  letter-spacing:1px;
  color:#81928b;
}
.history-row>div {
  padding-left:17px;
  border-left:1px solid #bee2d6;
}
.history-row strong {
  font-size:12px;
}
.history-row p {
  font-size:10px;
  margin:6px 0;
  line-height:1.4;
}
.history-row>div>small {
  font-size:8px;
  color:#168771;
}
.section-wrap {
  max-width:1220px;
  margin:auto;
  padding-left:42px;
  padding-right:42px;
}
.pillars {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-top:34px;
  padding-bottom:34px;
  border-bottom:1px solid var(--line);
}
.pillars>span {
  font-size:12px;
  color:#7b8987;
}
.pillars>div {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12px;
  font-weight:700;
}
.pillars svg {
  color:#299b8e;
  width:19px;
  height:19px;
}
.journey {
  padding-top:105px;
  padding-bottom:102px;
}
.section-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
  margin-bottom:40px;
}
h2 {
  font-size:clamp(30px,3.4vw,45px);
  line-height:1.19;
  letter-spacing:-1.9px;
  font-weight:600;
  margin:16px 0 0;
}
h2 span {
  color:#13a18d;
}
.section-heading>p {
  font-size:13px;
  line-height:1.8;
  color:var(--muted);
  max-width:355px;
  margin:0 0 4px;
}
.journey-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.journey-grid article {
  border-top:1px solid #c5dcd4;
  padding:26px 0 0;
}
.step-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#1c9b87;
}
.step-top>span {
  font-size:11px;
  font-weight:700;
  letter-spacing:1px;
}
.step-top>svg {
  width:25px;
  height:25px;
}
.journey-grid h3 {
  font-size:18px;
  letter-spacing:-.5px;
  margin:25px 0 12px;
}
.journey-grid p {
  font-size:12px;
  line-height:1.9;
  color:var(--muted);
  max-width:310px;
  margin:0;
}
.upload-visual,.analysis-visual,.timeline-visual {
  height:78px;
  margin-top:24px;
  border-radius:10px;
  background:#edf7f2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.upload-visual {
  border:1px dashed #adcec0;
}
.upload-visual svg {
  color:#409985;
  width:18px;
}
.upload-visual span {
  font-size:9px;
  color:#4f7366;
}
.analysis-visual span {
  font-size:9px;
  border:1px solid #d1e5db;
  border-radius:20px;
  background:white;
  padding:8px 12px;
}
.analysis-visual i {
  height:1px;
  width:12px;
  background:#b2d4c7;
}
.timeline-visual {
  position:relative;
  justify-content:space-around;
  padding:0 24px;
}
.timeline-visual span {
  height:8px;
  width:8px;
  z-index:1;
  border-radius:50%;
  background:#2db29b;
  outline:6px solid #d1eddf;
}
.timeline-visual i {
  position:absolute;
  height:1px;
  background:#9bd8c0;
  left:50px;
  right:50px;
}
.evidence-section {
  background:#ecf6f1;
  padding:84px 0 95px;
  overflow:hidden;
}
.evidence-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:55px;
  align-items:center;
}
.evidence-copy h2 {
  font-size:39px;
}
.evidence-copy p {
  font-size:13px;
  line-height:1.9;
  color:var(--muted);
  margin:22px 0;
  max-width:375px;
}
.evidence-copy ul {
  list-style:none;
  padding:0;
  margin:24px 0 0;
  display:grid;
  gap:13px;
}
.evidence-copy li {
  display:flex;
  gap:11px;
  align-items:center;
  font-size:12px;
}
.evidence-copy li svg {
  width:17px;
  height:17px;
  color:#14a486;
}
.scope {
  padding-top:100px;
  padding-bottom:100px;
}
.scope-grid {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:18px;
}
.scope-grid article {
  padding:30px;
  border:1px solid #e3ebe6;
  border-radius:16px;
  background:#fff;
}
.scope-grid .scope-current {
  background:#e7f7ef;
  border-color:#d3eddf;
}
.tag {
  font-size:8px;
  letter-spacing:1px;
  color:#1c7760;
  font-weight:800;
  border:1px solid #b5dcca;
  border-radius:20px;
  padding:6px 9px;
  display:inline-block;
}
.tag-muted {
  color:#77817c;
  border-color:#e1e5e2;
}
.scope-grid h3 {
  font-size:20px;
  letter-spacing:-.6px;
  line-height:1.4;
  margin:24px 0 13px;
}
.scope-grid p {
  font-size:12px;
  color:var(--muted);
  line-height:1.9;
  margin:0;
}
.scope-grid .text-link {
  margin-top:26px;
  font-size:11px;
}
.scope-grid .text-link svg {
  width:17px;
}
.module-pills {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:24px;
}
.module-pills span {
  font-size:8px;
  border-radius:20px;
  padding:7px 10px;
  background:#f1f5f2;
  color:#63756b;
}
.closing {
  position:relative;
  overflow:hidden;
  text-align:center;
  padding:78px 25px;
  background:linear-gradient(130deg,#cdf3e8,#eaf8ec 60%,#e0f4ee);
  margin:0 20px;
  border-radius:24px;
}
.closing>*:not(.closing-orbit) {
  position:relative;
  z-index:1;
}
.closing h2 {
  font-size:37px;
  margin:18px 0 27px;
}
.closing p {
  font-size:10px;
  color:#678278;
  margin-top:18px;
}
.closing-orbit {
  position:absolute;
  width:850px;
  height:850px;
  border:1px solid #8dcbbb88;
  border-radius:50%;
  left:calc(50% - 425px);
  top:-480px;
  box-shadow:0 0 0 70px #9bd4c425,0 0 0 140px #9bd4c420,0 0 0 210px #9bd4c417;
}
.footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  min-height:115px;
  font-size:11px;
  color:#7b8983;
}
.footer .brand-mark {
  width:27px;
  height:27px;
}
.footer .wordmark {
  width:112px;
}
@media(min-width:1500px) {
  .hero {
    padding-top:70px;
    padding-bottom:90px;
  }
  .hero h1 {
    font-size:69px;
  }
}
@media(max-width:1000px) {
  .header {
    padding:20px 30px;
  }
  .product-stage {
    gap:25px;
    grid-template-columns:.65fr 1.3fr;
  }
  .source-art {
    margin-left:-10px;
  }
  .source-art strong {
    font-size:20px;
  }
  .source-art .eyebrow {
    font-size:6px;
  }
  .connection-trail {
    left:27%;
    font-size:16px;
  }
  .connection-trail span {
    padding:7px;
  }
  .hero h1 {
    font-size:48px;
  }
  .floating-note {
    right:-7px;
  }
  .evidence-grid {
    gap:35px;
  }
  .evidence-copy h2 {
    font-size:33px;
  }
  .scope-grid article {
    padding:22px;
  }
  .mini-brand span {
    display:none;
  }
  .sample-label {
    font-size:6px;
  }
  .pillars {
    gap:15px;
  }
  .pillars>span {
    max-width:120px;
  }
}
@media(max-width:760px) {
  .header {
    min-height:80px;
    padding:17px 22px;
  }
  .header nav {
    display:none;
  }
  .wordmark {
    width:118px;
  }
  .brand-mark {
    width:28px;
    height:28px;
  }
  .button-small {
    padding:10px 16px;
    gap:16px;
  }
  .hero {
    padding:39px 18px 50px;
    margin:0 10px;
    border-radius:20px;
  }
  .hero h1 {
    font-size:40px;
    letter-spacing:-1.9px;
    margin-top:17px;
  }
  .hero p {
    font-size:13px;
    max-width:460px;
    margin:auto;
  }
  .desktop {
    display:none;
  }
  .hero .eyebrow {
    font-size:8px;
    letter-spacing:1.2px;
  }
  .hero-actions {
    gap:18px;
  }
  .button {
    font-size:12px;
    padding:15px 21px;
    gap:18px;
  }
  .text-link {
    font-size:11px;
  }
  .hero-actions .text-link {
    gap:9px;
  }
  .product-stage {
    grid-template-columns:1fr;
    max-width:535px;
    margin-top:33px;
    gap:25px;
  }
  .source-art {
    display:none;
  }
  .connection-trail {
    display:none;
  }
  .product-window {
    transform:none;
  }
  .floating-note {
    right:12px;
    bottom:-24px;
    padding:12px 15px;
  }
  .floating-note span {
    font-size:8px;
  }
  .demo-panel {
    min-height:325px;
    padding:19px 17px;
  }
  .window-toolbar {
    padding:13px 17px;
  }
  .panel-title h2 {
    font-size:18px;
  }
  .company-facts strong {
    font-size:21px;
  }
  .pillars {
    padding:27px 24px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:21px;
  }
  .pillars>span {
    grid-column:1/-1;
    max-width:none;
    text-align:center;
  }
  .pillars>div {
    justify-content:center;
    font-size:11px;
  }
  .section-wrap {
    padding-left:25px;
    padding-right:25px;
  }
  .journey {
    padding-top:65px;
    padding-bottom:60px;
  }
  .section-heading {
    display:block;
    margin-bottom:27px;
  }
  h2 {
    font-size:35px;
    letter-spacing:-1.4px;
  }
  .section-heading>p {
    margin-top:20px;
    max-width:420px;
    font-size:12px;
  }
  .journey-grid {
    grid-template-columns:1fr;
    gap:25px;
  }
  .journey-grid article {
    position:relative;
    padding-top:20px;
  }
  .journey-grid h3 {
    margin:15px 0 10px;
  }
  .journey-grid p {
    max-width:100%;
  }
  .upload-visual,.analysis-visual,.timeline-visual {
    margin-top:18px;
    height:65px;
  }
  .evidence-section {
    padding:55px 0;
  }
  .evidence-grid {
    grid-template-columns:1fr;
    gap:55px;
  }
  .evidence-copy h2 {
    font-size:35px;
  }
  .scope {
    padding-top:60px;
    padding-bottom:55px;
  }
  .scope-grid {
    grid-template-columns:1fr;
    gap:15px;
  }
  .scope-grid article {
    padding:27px;
  }
  .scope-grid h3 {
    margin:18px 0 12px;
  }
  .closing {
    margin:0 10px;
    padding:53px 24px;
  }
  .closing h2 {
    font-size:29px;
    letter-spacing:-1.1px;
  }
  .footer {
    flex-wrap:wrap;
    justify-content:space-between;
    min-height:130px;
    gap:18px;
    padding-top:30px;
    padding-bottom:30px;
  }
  .footer>span {
    display:none;
  }
}
@media(max-width:380px) {
  .hero h1 {
    font-size:35px;
  }
  .hero-actions {
    gap:12px;
  }
  .button {
    padding:14px 16px;
  }
  .panel-title h2 {
    font-size:16px;
  }
  .panel-title>.soft-tag {
    display:none;
  }
  .company-grid {
    gap:8px;
  }
  .owners,.company-facts>div {
    padding:11px;
  }
  .window-footer {
    font-size:6px;
    padding:12px 14px;
  }
  .product-tabs {
    margin:14px 14px 0;
  }
  .source-label {
    font-size:7px;
  }
  .company-facts strong {
    font-size:18px;
  }
  .document-row {
    gap:8px;
  }
  .document-row strong {
    font-size:10px;
  }
  .document-row small {
    font-size:8px;
  }
  .document-row .soft-tag {
    font-size:7px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  * {
    transition:none!important;
  }
}
.source-art img {
  mask-image:radial-gradient(ellipse at 51% 52%,#000 47%,transparent 73%);
}
@media(max-width:760px) {
  .source-art {
    display:block;
    max-width:410px;
    margin:-15px auto -20px;
  }
  .source-art img {
    width:100%;
  }
  .source-art>div {
    display:none;
  }
  .product-stage {
    gap:8px;
  }
}
@media(max-width:760px) {
  .hero-actions {
    flex-direction:column;
    gap:18px;
  }
  .hero-actions .button {
    white-space:nowrap;
    padding:16px 26px;
  }
  .hero p {
    font-size:14px;
  }
  .hero-actions .text-link {
    font-size:12px;
  }
  .window-footer {
    padding-bottom:21px;
  }
  .floating-note {
    bottom:-28px;
  }
  .scope-grid p,.journey-grid p,.evidence-copy p,.section-heading>p {
    font-size:14px;
  }
}

/* Evidence imagery and document-to-cycle composition. */
.evidence-section { padding: 76px 0 82px; }
.evidence-grid { max-width: 1360px; grid-template-columns: 1.2fr 1fr; gap: 45px; }
.evidence-art { position: relative; min-width: 0; margin: 0 -36px 0 -55px; }
.evidence-art img { width: 100%; height: auto; display: block; mix-blend-mode: multiply; mask-image: radial-gradient(ellipse at center, #000 47%, transparent 74%); }
.evidence-caption { display: flex; justify-content: center; align-items: center; gap: 14px; font-size: 8px; letter-spacing: 1.3px; color: #4c8073; margin-top: -12px; }
.caption-index { font-size: 9px; color: #a0b8ae; border-right: 1px solid #cadfd4; padding-right: 14px; }
.evidence-copy h2 { font-size: clamp(32px, 3.3vw, 45px); letter-spacing: -1.6px; }
.evidence-copy p { max-width: 430px; }
.source-proof { max-width: 420px; margin-top: 28px; border: 1px solid #c9e1d6; border-radius: 13px; background: #ffffffb3; overflow: hidden; }
.source-proof summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 20px; }
.source-proof summary::-webkit-details-marker { display: none; }
.source-proof summary:focus-visible { outline: 3px solid #0b8f80; outline-offset: -4px; }
.source-proof small { display: block; font-size: 7px; letter-spacing: 1.1px; font-weight: 700; color: #638b7d; margin-bottom: 7px; }
.source-proof strong { font-size: 12px; font-weight: 600; }
.proof-plus { width: 27px; height: 27px; display: grid; place-items: center; background: #e4f3eb; border-radius: 50%; color: #278b70; font-size: 18px; }
.source-proof[open] .proof-plus { transform: rotate(45deg); }
.proof-content { border-top: 1px solid #deece3; padding: 0 20px 4px; }
.proof-content blockquote { margin: 17px 0 0; padding: 9px 12px; background: #e2f4e9; font-size: 12px; line-height: 1.8; color: #36664f; }
.proof-content p { font-size: 10px; line-height: 1.7; margin: 13px 0; }
.proof-content p span { color: #7b8c80; font-size: 9px; }
.cycles-section { overflow: hidden; background: linear-gradient(#fcfefd, #f0fbf8 40%, #fcfefd); padding: 92px 0 64px; }
.cycles-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 45px; }
.cycles-heading h2 { font-size: clamp(30px, 3.4vw, 44px); }
.cycles-heading>p { max-width: 325px; font-size: 13px; line-height: 1.9; color: var(--muted); margin: 0 0 3px; }
.cycles-canvas { position: relative; margin: 15px auto -26px; max-width: 1440px; }
.cycles-canvas>img { display: block; width: 100%; height: auto; mix-blend-mode: multiply; mask-image: linear-gradient(transparent, #000 10%, #000 83%, transparent); }
.cycles-nav { display: flex; align-items: center; justify-content: space-around; gap: 10px; position: absolute; top: 8%; right: 6%; width: 48%; padding: 9px; border-radius: 50px; background: #ffffffed; border: 1px solid #e9f4f0; box-shadow: 0 8px 35px #23645508; font-size: 12px; color: #526b68; }
.cycles-nav>* { padding: 12px 15px; font-weight: 600; }
.cycles-nav strong { background: #daf5ee; border-radius: 25px; color: #258c7c; }
.cycles-months { position: absolute; right: 6%; top: 19%; width: 33%; display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 8px; letter-spacing: 1px; color: #739b94; }
.cycles-months b { background: #cff1e8; padding: 5px 7px; border-radius: 4px; color: #399a88; }
.cycles-caption { position: absolute; bottom: 12%; left: 7%; display: flex; align-items: center; gap: 9px; color: #467d72; font-size: 8px; letter-spacing: 1.25px; background: #f4fffcdd; border: 1px solid #e7f5f0; border-radius: 20px; padding: 10px 15px; }
.cycles-notes { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.cycles-notes>div { position: relative; padding: 23px 0 0 41px; border-top: 1px solid #d4e9df; }
.cycle-number { position: absolute; top: 27px; left: 0; font-size: 10px; color: #2b9f88; font-weight: 700; }
.cycles-notes h3 { font-size: 17px; letter-spacing: -.4px; font-weight: 600; margin: 0 0 10px; }
.cycles-notes p { color: #6a8076; font-size: 12px; line-height: 1.85; margin: 0; max-width: 270px; }
@media(max-width:1000px) {
  .evidence-grid { gap: 22px; }
  .evidence-art { margin-left: -35px; margin-right: -12px; }
  .cycles-nav { font-size: 10px; padding: 6px; gap: 2px; }
  .cycles-nav>* { padding: 10px 11px; }
  .cycles-heading { gap: 30px; }
  .cycles-heading>p { max-width: 275px; }
}
@media(max-width:760px) {
  .evidence-section { padding: 38px 0 52px; }
  .evidence-grid { grid-template-columns: 1fr; gap: 33px; }
  .evidence-art { margin: 0 -20px; }
  .evidence-caption { font-size: 6px; letter-spacing: .8px; gap: 9px; margin-top: 0; }
  .caption-index { font-size: 7px; }
  .evidence-copy h2 { font-size: 37px; }
  .evidence-copy p { font-size: 14px; }
  .source-proof { max-width: none; }
  .source-proof summary { padding: 17px; }
  .source-proof strong { font-size: 12px; }
  .source-proof small { font-size: 7px; }
  .cycles-section { padding: 55px 0 45px; }
  .cycles-heading { display: block; }
  .cycles-heading h2 { font-size: 34px; }
  .cycles-heading>p { max-width: none; margin-top: 20px; font-size: 14px; }
  .cycles-canvas { margin: 30px 0 15px; padding-top: 45px; }
  .cycles-nav { top: 0; left: 5%; right: 5%; width: 90%; padding: 5px; font-size: 10px; }
  .cycles-nav>* { padding: 9px 10px; }
  .cycles-months { display: none; }
  .cycles-caption { position: relative; left: auto; bottom: auto; display: flex; width: fit-content; margin: -20px auto 0; max-width: 92%; font-size: 6px; letter-spacing: .5px; padding: 9px 11px; }
  .cycles-notes { grid-template-columns: 1fr; gap: 22px; }
  .cycles-notes p { max-width: none; font-size: 13px; }
  .cycles-notes>div { padding-top: 20px; }
  .cycle-number { top: 24px; }
}
