.agreement-overview{padding:1.4rem 1.6rem;background:#e8efe9;border-left:4px solid #93482f;margin-bottom:2.8rem}
.agreement-overview nav{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.3rem}
.agreement-overview nav a{display:inline-flex;align-items:center;min-height:44px;padding:.55rem .85rem;border:1px solid #6e8376;border-radius:4px;font-weight:700;font-size:1rem;line-height:1.35;text-decoration:none}
.agreement-overview nav a:hover{background:#163d34;color:#fffdf8}
.agreement-overview a:focus-visible{outline:3px solid #a63f27;outline-offset:3px}
.agreement-section{scroll-margin-top:calc(var(--header-height,78px) + 1.5rem);margin-top:3.5rem}
.agreement-section :is(article,section,header,ul,li,dl,dt,dd,div){min-width:0}
.agreement-section :is(h3,h4,p,dt,dd){overflow-wrap:anywhere}
.agreement-section > h2{margin-bottom:1rem}
.agreement-section > h3{margin-top:2rem}
.agreement-section :is(.agreement-pair,.agreement-instruments,.agreement-party-map,.agreement-benefit-grid,.agreement-promise-list,.agreement-quantity-list,.agreement-decision-list,.agreement-definitions){margin:1.6rem 0 2rem}
.agreement-section .agreement-card-kicker{margin:0 0 .7rem;font-size:.875rem;line-height:1.4;font-weight:800;color:#425e51}
.agreement-section :is(.agreement-pair,.agreement-benefit,.agreement-promise,.agreement-instruments article,.agreement-quantity) h3{font-size:1.2rem;line-height:1.3;margin:0 0 .8rem;letter-spacing:normal}
.agreement-section :is(.agreement-pair,.agreement-benefit,.agreement-promise,.agreement-instruments article,.agreement-quantity) p{font-size:1rem;line-height:1.65;margin:.7rem 0 0}
.agreement-section .agreement-card-kicker{margin:0 0 .7rem}
.agreement-pair,.agreement-benefit-grid,.agreement-instruments{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem}
.agreement-pair article{padding:1.5rem;border-top:5px solid #1d5749;background:#e8efe9}
.agreement-pair .agreement-pair-2018{border-color:#a63f27;background:#f4e9df}
.agreement-badge{display:inline-flex;align-items:center;max-width:100%;border-radius:3px;padding:.4rem .6rem;margin-bottom:1rem;font-size:.875rem;line-height:1.35;font-weight:800}
.agreement-badge-1998{background:#163d34;color:#fffdf8}
.agreement-badge-2018{background:#8e3b27;color:#fffdf8}
.agreement-instruments article{padding:1.1rem 0 1.1rem 1rem;border-left:3px solid #a8b6ae}
.agreement-instruments article:last-child{border-color:#a63f27}
.agreement-instruments .agreement-card-kicker{color:#596b62}
.agreement-party-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1.2rem;align-items:start}
.agreement-party-group{border:1px solid #bdc9bd;background:#fffdf8;border-radius:6px}
.agreement-party-group-both{grid-column:1/-1;border-color:#163d34}
.agreement-party-heading{display:flex;gap:.85rem;align-items:center;padding:1.2rem;background:#e6eee7;border-top:5px solid #1d5749;border-radius:5px 5px 0 0}
.agreement-party-group-2018 .agreement-party-heading{background:#f4e9df;border-color:#a63f27}
.agreement-party-group-both .agreement-party-heading{background:#163d34;border-color:#163d34;color:#fffdf8}
.agreement-section .agreement-party-heading h3{font-size:1.2rem;line-height:1.3;margin:0;font-weight:800;color:inherit;letter-spacing:normal}
.agreement-section .agreement-party-heading p{font-size:.875rem;line-height:1.45;margin:.35rem 0 0;color:inherit}
.agreement-party-count{font-family:var(--serif);font-size:3rem;line-height:1;flex:0 0 auto;font-variant-numeric:lining-nums}
.agreement-section .agreement-party-list{list-style:none;margin:0;padding:0}
.agreement-section .agreement-party-list li{list-style:none;margin:0;padding:1.05rem 1.2rem;border-top:1px solid #dce3db}
.agreement-section .agreement-party-list li:first-child{border-top:0}
.agreement-section .agreement-party-list h4{margin:0;color:#102d27;font-size:1.05rem;font-weight:750;line-height:1.45;letter-spacing:normal}
.agreement-section .agreement-party-list p{margin:.35rem 0 0;color:#425b4f;font-size:.95rem;line-height:1.5}
.agreement-section .agreement-party-list .agreement-signature-note{font-size:.875rem}
.agreement-promise-list{display:grid;gap:1rem}
.agreement-promise{padding:1.4rem;background:#fffdf8;border:1px solid #d3dcd3;border-left:5px solid #1d5749;border-radius:0 5px 5px 0}
.agreement-tone-2018{border-left-color:#a63f27}
.agreement-promise dl{margin:0}
.agreement-promise dl > div{padding-top:.75rem}
.agreement-promise dt{font-size:.875rem;font-weight:800;color:#425b4f;line-height:1.5}
.agreement-promise dd{margin:.3rem 0 0;font-size:1rem;line-height:1.65}
.agreement-promise .agreement-scope{border-top:1px solid #dce3db;margin-top:1rem}
.agreement-benefit{padding:1.3rem;background:#fffdf8;border:1px solid #d3dcd3;border-radius:5px}
.agreement-benefit .agreement-badge{margin-bottom:.8rem}
.agreement-decision-list{padding:0}
.agreement-decision-list > div{position:relative;margin:0 0 1rem;padding:1.2rem 1.3rem;border-left:4px solid #1d5749;background:#e8efe9}
.agreement-decision-list dt{font-size:1.1rem;line-height:1.4;font-weight:800;margin:0 0 .5rem}
.agreement-decision-list dd{font-size:1rem;line-height:1.65;margin:0}
.agreement-quantity-list{display:grid;gap:1rem}
.agreement-quantity{padding:1.5rem;border:1px solid #bdc9bd;border-left:5px solid #93482f;background:#fffdf8}
.agreement-section .agreement-quantity h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.35rem,3vw,1.85rem);line-height:1.3}
.agreement-definitions > div{padding:1rem 0;border-top:1px solid #bdc9bd}
.agreement-definitions dt{font-weight:800;font-size:1.05rem;line-height:1.5}
.agreement-definitions dd{margin:.4rem 0 0;font-size:1rem;line-height:1.65}
.agreement-section .agreement-sources{font-size:.875rem;line-height:1.6;margin-top:1.2rem;color:#425c4e}
.agreement-source-list li{margin-bottom:1.5rem;scroll-margin-top:calc(var(--header-height,78px) + 1.5rem)}
.agreement-source-list p{font-size:.95rem;margin-top:.4rem}
.agreement-bridge{margin-top:2rem;padding:1.5rem;border-left:3px solid #93482f;background:rgba(255,255,255,.4)}
.agreement-bridge h3{margin-top:0}
.agreement-bridge .button-row{margin-top:1rem}
@media(min-width:701px){.agreement-party-group-both .agreement-party-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.agreement-party-group-both .agreement-party-list li{border-top:0}.agreement-party-group-both .agreement-party-list li+li{border-left:1px solid #dce3db}}
@media(max-width:700px){.agreement-overview{padding:1.1rem}.agreement-section{margin-top:2.5rem}.agreement-overview nav{display:grid;grid-template-columns:1fr}.agreement-overview nav a{justify-content:space-between}.agreement-party-map,.agreement-pair,.agreement-benefit-grid,.agreement-instruments{grid-template-columns:minmax(0,1fr)}.agreement-pair article,.agreement-promise,.agreement-benefit,.agreement-quantity{padding:1.1rem}.agreement-party-heading,.agreement-section .agreement-party-list li{padding:1rem}.agreement-section .agreement-party-heading h3{font-size:1.15rem}}
@media print{.agreement-overview nav{display:none}.agreement-party-map,.agreement-pair,.agreement-benefit-grid,.agreement-instruments{display:block}.agreement-party-group,.agreement-promise,.agreement-benefit,.agreement-quantity,.agreement-decision-list > div{break-inside:avoid;margin-bottom:1rem}}

/* Plain-language reading path; legal detail stays available beside each explanation. */
.agreement-reader{--agreement-rule:#bdc9bd}
.agreement-reader .agreement-overview{padding:clamp(1.1rem,3vw,2rem);border:0;border-radius:6px;background:#e6eee7;scroll-margin-top:calc(var(--header-height,78px) + 1.5rem)}
.agreement-reader .agreement-overview h2{font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.18;margin:.4rem 0 1rem}
.agreement-reader .agreement-overview p{font-size:1.05rem;line-height:1.65}
.agreement-reader .agreement-card-kicker{font-size:.875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin:0}
.agreement-reader .agreement-key-points{list-style:none;padding:0;margin:1.4rem 0;counter-reset:meaning}
.agreement-reader .agreement-key-points li{position:relative;counter-increment:meaning;padding:1rem 0 1rem 2.8rem;margin:0;border-top:1px solid var(--agreement-rule)}
.agreement-key-points li::before{content:counter(meaning,decimal-leading-zero);position:absolute;left:0;top:1rem;font-weight:800;font-size:.95rem;color:#8e3b27}
.agreement-reader .agreement-key-points h3{font-size:1.15rem;line-height:1.4;margin:0}
.agreement-reader .agreement-key-points p{font-size:1rem;line-height:1.6;margin:.4rem 0 0}
.agreement-reader .agreement-section{padding-top:2.3rem;border-top:1px solid var(--agreement-rule);margin-top:2.7rem}
.agreement-reader .agreement-section > h2{font-size:clamp(1.45rem,3vw,1.9rem);line-height:1.3}
.agreement-reader .agreement-section > p{font-size:1.05rem;line-height:1.7}
.agreement-deals{display:grid;gap:1.2rem;margin:1.5rem 0}
.agreement-deal{background:#fffdf8;border:1px solid var(--agreement-rule);border-radius:5px;padding:clamp(1rem,3vw,1.5rem)}
.agreement-deal header{display:flex;align-items:start;gap:1rem}
.agreement-year{font-family:var(--serif);font-size:2.4rem;line-height:1;color:#1d5749;flex-shrink:0}
.agreement-deal-2018 .agreement-year{color:#8e3b27}
.agreement-deal h3{font-size:1.3rem;line-height:1.3;margin:0}
.agreement-deal .agreement-deal-context{font-size:.875rem;line-height:1.5;margin:.55rem 0 0;color:#425b4f}
.agreement-reader .agreement-plain-points{margin:1.3rem 0 0}
.agreement-plain-points > div{padding:1rem 0;border-top:1px solid #d4ddd4}
.agreement-plain-points dt,.agreement-location-list dt{font-size:1rem;font-weight:800;line-height:1.45}
.agreement-plain-points dd,.agreement-location-list dd{font-size:1rem;line-height:1.65;margin:.45rem 0 0}
.agreement-reader .agreement-meaning{padding:1rem 1.15rem;background:#e8efe9;border-left:4px solid #1d5749;font-size:1rem;line-height:1.65;margin:1.3rem 0}
.agreement-meaning strong{display:block;margin-bottom:.35rem}
.agreement-water-locations{margin-top:2rem}
.agreement-water-locations h3{font-size:1.25rem;line-height:1.35}
.agreement-water-locations p{font-size:1rem;line-height:1.65}
.agreement-location-list{margin:1.3rem 0}
.agreement-location-list > div{padding:1rem 1.1rem;margin:.7rem 0;background:#fffdf8;border-left:4px solid #607e8a}
.agreement-detail{margin-top:1.25rem;border:1px solid #9bac9f;border-radius:5px;background:#fffdf8}
.agreement-detail summary{padding:1rem 1.1rem;min-height:44px;cursor:pointer;font-size:1rem;font-weight:750;line-height:1.5;overflow-wrap:anywhere}
.agreement-detail summary::marker{color:#8e3b27}
.agreement-detail summary:hover{background:#e8efe9}
.agreement-detail summary:focus-visible{outline:3px solid #a63f27;outline-offset:3px}
.agreement-detail[open] > summary{border-bottom:1px solid var(--agreement-rule)}
.agreement-detail-body{padding:0 clamp(1rem,3vw,1.5rem) 1.2rem}
.agreement-detail-body > h3{font-size:1.2rem;line-height:1.4;margin-top:1.5rem}
.agreement-detail-body > p{font-size:1rem;line-height:1.7}
.agreement-reader a{overflow-wrap:anywhere}
@media(max-width:380px){.agreement-deal header{flex-direction:column;gap:.65rem}.agreement-reader .agreement-key-points li{padding-left:2.25rem}}
@media print{.agreement-detail{border:0}.agreement-detail > summary{display:none}.agreement-detail::details-content{display:block}.agreement-detail > .agreement-detail-body{display:block!important}.agreement-meaning,.agreement-deal,.agreement-location-list > div{break-inside:avoid}.agreement-reader .agreement-section{margin-top:1.5rem;padding-top:1rem}}
