
/* Bespoke systems visualisations — technical explanations, not decorative claims */
.v2-resource-story{padding-top:30px;padding-bottom:115px}
.v2-resource-header{display:grid;grid-template-columns:1fr .85fr;gap:80px;align-items:end;margin:20px 0 55px}
.v2-resource-header h2{color:#173e2d;font-size:clamp(3rem,4.3vw,5rem);letter-spacing:-.06em;margin:18px 0 0}
.v2-resource-header h2 em{color:#628e69}
.v2-resource-header>p{font-size:17px;line-height:1.8;color:#52685a}
.v2-resources-layout{display:grid;grid-template-columns:.77fr 1.23fr;gap:35px;align-items:center}
.v2-resources-orbit{aspect-ratio:1;max-width:440px;position:relative;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle at 35% 25%,#376e55 0%,#163e30 47%,#0c2920 92%);box-shadow:inset 0 0 80px rgba(3,19,13,.27),0 28px 65px rgba(12,56,33,.13)}
.v2-resource-rings,.v2-resource-rings span{position:absolute;inset:0}
.v2-resource-rings span{border:1px solid rgba(217,231,214,.3);border-radius:50%}
.v2-resource-rings span:nth-child(1){inset:9%}
.v2-resource-rings span:nth-child(2){inset:22%;border-style:dashed;border-color:rgba(226,168,74,.5)}
.v2-resource-rings span:nth-child(3){inset:-7%;border-color:rgba(91,143,185,.25)}
.v2-resources-orbit strong{font:400 clamp(2.2rem,3.4vw,4.4rem)/1.16 var(--serif);letter-spacing:-.06em;color:#fff;z-index:1}
.v2-resources-orbit small{font:700 10px var(--sans);letter-spacing:.17em;color:#c7ddc2;margin-top:17px;z-index:1}
.v2-resource-streams{display:grid;gap:13px}
.v2-stream{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:center;padding:29px 29px 33px;border-top:5px solid #e2a84a;background:linear-gradient(120deg,#f0eadf,#f8f6ee)}
.v2-stream-water{background:linear-gradient(120deg,#deedf2,#f3f7f5);border-color:#5b8fb9}
.v2-stream-nutrients{background:linear-gradient(120deg,#e2eee1,#f4f7ee);border-color:#5a8f5b}
.v2-stream-number{font:700 10px var(--sans);letter-spacing:.16em;color:#80613a}
.v2-stream-water .v2-stream-number{color:#346687}
.v2-stream-nutrients .v2-stream-number{color:#366848}
.v2-stream h3{font:400 25px var(--serif);letter-spacing:-.04em;color:#1a4934;margin:8px 0}
.v2-stream h3 em{color:#6b986f}
.v2-stream p{font-size:13px;line-height:1.65;color:#4a6052;margin:0}
.v2-stream-path{display:flex;align-items:center;gap:9px;justify-content:flex-end}
.v2-stream-path span{font:700 10px var(--sans);letter-spacing:.02em;text-align:center;color:#1a4934;max-width:93px;background:rgba(255,255,255,.72);border:1px solid rgba(51,97,65,.15);padding:13px 8px;flex:1;border-radius:40px;line-height:1.35}
.v2-stream-path b{font-size:18px;color:#9d8d68}
.v2-systems-disclaimer{font:700 10px/1.8 var(--sans);letter-spacing:.09em;color:#7f8475;margin-top:25px}
.v2-biology-section{background:radial-gradient(circle at 80% 20%,rgba(82,149,128,.22),transparent 37%),linear-gradient(140deg,#143e30,#09271f);padding:110px 0;color:#fff;position:relative;overflow:hidden}
.v2-biology-section:before{content:"";position:absolute;width:780px;height:780px;right:-340px;top:-390px;border:1px solid rgba(205,229,206,.17);border-radius:50%;box-shadow:0 0 0 70px rgba(205,229,206,.05),0 0 0 150px rgba(205,229,206,.04)}
.v2-biology-header{position:relative;display:grid;grid-template-columns:1fr .75fr;gap:75px;align-items:end;margin-bottom:55px}
.v2-biology-header h2{font-size:clamp(3rem,4.5vw,5.2rem);letter-spacing:-.062em;color:#fff;margin:17px 0 0}
.v2-biology-header h2 em{color:#bdd4b7}
.v2-biology-header>p{font-size:17px;color:#c9e1d0;line-height:1.8;margin-bottom:0}
.v2-nitrogen-path{display:flex;align-items:stretch;gap:8px;position:relative;z-index:2}
.v2-nitrogen-path>div{flex:1;background:rgba(247,248,237,.075);border-top:4px solid #b1ceb1;padding:23px 15px;min-height:187px;display:flex;flex-direction:column;gap:12px}
.v2-nitrogen-path>div:nth-child(3){border-color:#e2a84a}
.v2-nitrogen-path>div:nth-child(5){border-color:#5b8fb9}
.v2-nitrogen-path>div:nth-child(7){border-color:#b1ceb1}
.v2-nitrogen-path>div:nth-child(9){border-color:#e2a84a}
.v2-nitrogen-path>div>span{font:700 10px var(--sans);letter-spacing:.15em;color:#e1bc7b}
.v2-nitrogen-path strong{font:400 clamp(15px,1.5vw,22px)/1.18 var(--serif);letter-spacing:-.035em;color:#fff}
.v2-nitrogen-path small{font:400 12px/1.5 var(--sans);color:#cbdcca}
.v2-nitrogen-path>b{font:400 26px var(--serif);align-self:center;color:#e2a84a;flex:0 0 auto}
.v2-biology-end{display:flex;justify-content:space-between;align-items:center;gap:50px;margin-top:35px;position:relative}
.v2-biology-end>p{font-size:15px;line-height:1.7;color:#d1dfd1;max-width:660px}
@media(max-width:980px){
 .v2-resource-header{grid-template-columns:1fr;gap:12px}
 .v2-resources-layout{grid-template-columns:1fr;gap:35px}
 .v2-resources-orbit{max-width:360px;margin:auto}
 .v2-biology-header{grid-template-columns:1fr;gap:15px}
 .v2-nitrogen-path{flex-wrap:wrap}
 .v2-nitrogen-path>div{flex:1 1 28%;min-width:180px}
 .v2-biology-end{flex-direction:column;align-items:start;gap:15px}
}
@media(max-width:600px){
 .v2-resource-story{padding-top:0;padding-bottom:75px}
 .v2-resource-header{margin-bottom:30px}
 .v2-resource-header h2{font-size:clamp(2.8rem,9.5vw,4rem)}
 .v2-resource-header>p{font-size:16px}
 .v2-resources-orbit{width:min(320px,82vw)}
 .v2-stream{grid-template-columns:1fr;padding:25px 23px;gap:23px}
 .v2-stream h3{font-size:26px}
 .v2-stream-path{justify-content:center;gap:7px}
 .v2-stream-path span{font-size:9px;padding:10px 5px}
 .v2-stream-path b{font-size:16px}
 .v2-systems-disclaimer{font-size:9px}
 .v2-biology-section{padding:79px 0}
 .v2-biology-header h2{font-size:clamp(2.7rem,9.3vw,4rem)}
 .v2-biology-header>p{font-size:15px}
 .v2-nitrogen-path{gap:0;display:grid;grid-template-columns:1fr;align-items:center}
 .v2-nitrogen-path>div{min-height:0;padding:19px 22px;display:grid;grid-template-columns:50px 1fr;gap:5px;align-items:center}
 .v2-nitrogen-path>div strong{font-size:20px}
 .v2-nitrogen-path>div small{grid-column:2}
 .v2-nitrogen-path>b{font-size:21px;text-align:center;padding:4px;transform:rotate(90deg)}
 .v2-biology-end>p{font-size:14px}
}
