/* Each diagram is a clearly labelled illustration, rather than a live product. */
.hero-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:.8}
.hero-connections path{fill:none;stroke:#93ad67;stroke-width:2;vector-effect:non-scaling-stroke}
.hero-connections .connection-base{opacity:.25}
.hero-connections .connection-flow{stroke-dasharray:4 12;animation:connection-travel 6s linear infinite}
@keyframes connection-travel{to{stroke-dashoffset:-160}}
.diagram-board{padding:52px 24px 18px;min-height:510px;overflow:hidden}
.diagram-board-label{font-size:12px;color:#60774e;line-height:1.7;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e2e8d8}
.diagram-panels{min-width:0;min-height:345px}
.diagram-panel{min-width:0}
.diagram-panel[hidden]{display:none!important}
.diagram-interactive .diagram-panel:not([hidden]){animation:diagram-arrive .55s cubic-bezier(.16,.8,.2,1) both}
.diagram-eyebrow{font-size:8px;line-height:1.6;letter-spacing:.16em;color:#778c5c;margin:0 0 10px;font-weight:600}
.diagram-panel h3{font-size:clamp(20px,1.9vw,27px);line-height:1.6;letter-spacing:-.035em;margin:0 0 18px;text-wrap:balance;font-weight:800}
.diagram-screen{height:197px;min-width:0;display:flex;flex-direction:column;justify-content:center;background:#f3f6ed;border:1px solid #e1e8d7;border-radius:10px;padding:16px;overflow:hidden}
.diagram-note{font-size:11px;color:#5f7154;line-height:1.8;margin:14px 0 0;min-height:40px;text-wrap:pretty}
.diagram-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #dce4d1;font-size:11px;min-width:0}
.diagram-row:first-child{padding-top:0}.diagram-row:last-child{border-bottom:0;padding-bottom:0}
.diagram-row>span{color:#617259;flex-shrink:0}.diagram-row>b{font-weight:600;text-align:right;min-width:0;overflow-wrap:anywhere}
.diagram-row>em{font-size:9px;line-height:1.6;font-style:normal;padding:4px 9px;border-radius:20px;background:#e0edc5;color:#49642f;white-space:nowrap}
.diagram-row:nth-child(2)>em{background:#f3e6d3;color:#826136}
.diagram-pill{display:block;width:fit-content;max-width:100%;margin:13px 0 0 auto;border-radius:6px;background:#214d3f;color:#f3f7eb;padding:9px 12px;font-size:10px;line-height:1.6;font-weight:600}
.diagram-field{margin:0 0 8px}.diagram-field>small{display:block;font-size:9px;line-height:1.4;color:#5e7052;margin-bottom:4px}
.diagram-field>span{display:block;padding:8px 10px;background:white;border:1px solid #d6dfcb;border-radius:5px;font-size:10px;color:#7b8971;line-height:1.5}
.diagram-form .diagram-pill{margin-top:4px}
.diagram-web-scene{position:relative;min-height:162px;padding:3px 0;isolation:isolate}
.diagram-web-scene>small{font-size:7px;letter-spacing:.14em;color:#66824b}.diagram-web-scene>strong{display:block;position:relative;z-index:1;font-size:25px;line-height:1.5;margin:13px 0;font-weight:800;letter-spacing:-.035em}
.diagram-web-scene>span{font-size:9px;border-bottom:1px solid #698451;padding-bottom:3px}
.diagram-art-vase{position:absolute;right:2px;top:14px;width:83px;height:137px;background:#c5d9a0;border-radius:50px 50px 8px 8px;transform:rotate(-8deg);z-index:0;box-shadow:10px 11px 0 #e2e9d7;animation:diagram-object-float 5s ease-in-out infinite}
.diagram-art-vase:before{content:"";position:absolute;inset:35px 18px 0;background:#789b51;border-radius:15px 15px 20px 20px}.diagram-art-vase:after{content:"";position:absolute;width:28px;height:18px;background:#789b51;left:27px;top:22px;border-radius:4px 4px 0 0}
.diagram-products{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.diagram-products>div{background:white;border-radius:7px;padding:10px 9px;min-width:0}
.diagram-products i{display:block;width:45px;height:65px;margin:0 auto 11px;background:#b5cc8c;border-radius:6px;box-shadow:5px 6px 0 #e0e8d3;transform:rotate(-7deg)}
.diagram-products .diagram-product-b{background:#cda789;border-radius:22px 22px 6px 6px;transform:rotate(6deg)}
.diagram-products b{font-size:11px;display:block}.diagram-products small{font-size:8px;color:#6f7d64;display:block;line-height:1.6;margin-top:3px}
.diagram-status-flow{display:flex;flex-direction:column;align-items:center;gap:3px}.diagram-status-flow>span{padding:7px 28px;border:1px solid #d4dfc5;border-radius:7px;font-size:10px;background:white;min-width:115px;text-align:center}.diagram-status-flow>.is-selected{background:#daecac;border-color:#a4bf68;font-weight:700}.diagram-status-flow>i{font-size:11px;line-height:1.1;color:#8ca366;font-style:normal}
.diagram-member-card{background:#214b3d;color:#f3f7eb;border-radius:12px;padding:17px 16px;transform:rotate(-3deg);box-shadow:6px 8px 0 #d9e4c7}
.diagram-member-card>small{display:block;font-size:7px;line-height:1.5;letter-spacing:.12em;color:#c4d8b3}.diagram-member-card>b{font-size:16px;line-height:1.6;display:block;margin:10px 0 6px}.diagram-member-card>span{display:block;font-size:8px;line-height:1.6;color:#c6d8b8}
.diagram-member-card>div{display:flex;align-items:center;gap:11px;margin-top:14px}.diagram-member-card p{font-size:9px;line-height:1.6;margin:0}.diagram-member-card i{display:block;flex-shrink:0;width:30px;height:30px;border:1px solid #a8c78c;border-radius:50%;position:relative}.diagram-member-card i:before{content:"";position:absolute;left:10px;top:5px;width:9px;height:9px;border-radius:50%;background:#a8c78c}.diagram-member-card i:after{content:"";position:absolute;left:6px;bottom:4px;width:17px;height:9px;border-radius:12px 12px 3px 3px;background:#a8c78c}
.diagram-slots{display:grid;grid-template-columns:1fr 1fr;gap:11px}.diagram-slots>div{padding:17px 12px;background:white;border:1px solid #dce5d1;border-radius:8px;text-align:center}.diagram-slots small{font-size:9px;color:#718261;display:block}.diagram-slots b{font-size:23px;letter-spacing:-.04em;display:block;margin:10px 0}.diagram-slots span{font-size:9px;background:#e4efcf;display:inline-block;padding:4px 9px;border-radius:20px}
.diagram-booking-select>div{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:14px 11px;margin:6px 0;border:1px solid #d5e0c8;border-radius:7px;background:white;font-size:11px}.diagram-booking-select b{font-size:9px;white-space:nowrap}.diagram-booking-select>.is-selected{background:#e1efbd;border-color:#a7bf74}
.diagram-file{display:flex;align-items:center;gap:13px;padding:14px 0 20px;min-width:0}.diagram-file>i{font-size:10px;font-style:normal;padding:20px 9px;background:#dbeab9;border:1px solid #b9d18d;border-radius:5px;color:#48642a;transform:rotate(-6deg)}.diagram-file b{font-size:12px;display:block;overflow-wrap:anywhere}.diagram-file small{font-size:9px;line-height:1.6;color:#6b7e5c;display:block;margin-top:5px}
.diagram-checks>div{display:flex;gap:10px;align-items:center;padding:10px 0;font-size:12px;line-height:1.5}.diagram-checks span{width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:#d9ecab;color:#496b2c;font-size:11px;flex-shrink:0}
.diagram-chart{height:160px;display:flex;align-items:flex-end;gap:22px;padding:0 15px 23px;border-bottom:1px solid #bacba4;position:relative}
.diagram-chart>div{flex:1;min-width:0;height:var(--column);position:relative;transform-origin:bottom;animation:diagram-bar-place .9s cubic-bezier(.2,.8,.2,1) both}.diagram-chart>div:nth-child(2){animation-delay:.12s}.diagram-chart>div:nth-child(3){animation-delay:.24s}
.diagram-chart i{display:block;height:100%;border-radius:4px 4px 0 0;background:#aac77c}.diagram-chart>div:nth-child(2) i{background:#315d46}.diagram-chart>div:nth-child(3) i{background:#d4e897}.diagram-chart span{position:absolute;top:100%;left:-6px;right:-6px;font-size:8px;text-align:center;white-space:nowrap;padding-top:7px}
.diagram-documents{padding:8px 14px}.diagram-documents>div{position:relative;background:white;border:1px solid #d2dec3;padding:17px 18px;border-radius:5px;box-shadow:7px 7px 0 #e1e9d7,-7px -7px 0 #e9eedf}
.diagram-documents small{display:block;font-size:8px;color:#6a7f59}.diagram-documents b{display:block;font-size:13px;margin:9px 0 14px}.diagram-documents i,.diagram-draft i{display:block;height:4px;margin-top:7px;background:#d7e1ca;border-radius:3px}.diagram-documents i:nth-last-child(2),.diagram-draft i:nth-last-child(2){width:84%}.diagram-documents i:last-child{width:65%}
.diagram-draft{background:#fff;border:1px solid #d1dfc0;border-left:3px solid #aac873;border-radius:6px;padding:17px 16px}.diagram-draft>span{display:inline-block;font-size:8px;line-height:1.4;color:#68834b;background:#edf5df;padding:3px 6px}.diagram-draft>b{display:block;font-size:14px;line-height:1.6;margin:12px 0}.diagram-draft small{display:block;font-size:8px;line-height:1.5;color:#7b8a6c;margin-top:13px}
.diagram-board .diagram-steps{gap:5px;margin:18px 0 8px}.diagram-board .diagram-steps>span{padding:0;border:0;background:none;border-radius:7px;box-shadow:none;transform:none!important}
.diagram-board .diagram-steps button{display:block;width:100%;height:100%;min-height:44px;padding:9px 5px;border:1px solid #d3dfc3;border-radius:7px;background:#eff4e6;color:#4e6837;font:inherit;font-size:11px;line-height:1.6;cursor:pointer;transition:background .35s,border-color .35s,color .35s}
.diagram-board .diagram-steps button[aria-selected=true]{background:#264f3e;color:#f4f8eb;border-color:#264f3e}.diagram-board .diagram-steps button:hover{border-color:#7d9c51}.diagram-board .diagram-steps button:focus-visible{outline:3px solid #698d36;outline-offset:3px}
.diagram-help{font-size:10px;line-height:1.7;color:#6a7b5b;text-align:center;margin:7px 0 10px}.diagram-board .board-caption{font-size:10px;line-height:1.7;text-align:left;padding-top:9px;border-top:1px solid #e2e8d8;color:#637654}
.service-page h1,.service-page h2,.section-heading h2,.service-page-cta h2{text-wrap:balance}
.service-lead{text-wrap:pretty}.service-page-nav a[aria-current=page]{background:#274f3e;color:#f3f8e8;border-color:#274f3e}
@keyframes diagram-arrive{from{transform:translateY(12px);filter:blur(1px)}to{transform:none;filter:none}}
@keyframes diagram-object-float{50%{transform:rotate(-3deg) translateY(-5px)}}
@keyframes diagram-bar-place{from{transform:scaleY(.15)}to{transform:scaleY(1)}}
@media(max-width:1000px){.diagram-board{padding-inline:18px}.diagram-panel h3{font-size:23px}.diagram-screen{padding:14px}}
@media(max-width:760px){.diagram-board{min-height:500px;margin-top:42px;padding:51px 16px 17px}.diagram-panel h3{font-size:23px;line-height:1.55}.diagram-panels{min-height:338px}.diagram-board-label{font-size:11px}.diagram-screen{height:190px;padding:14px}.diagram-note{font-size:10px;min-height:38px}.diagram-board .diagram-steps button{font-size:10px;padding-inline:3px}.diagram-products{gap:9px}.diagram-member-card{padding:15px 12px}.diagram-member-card>b{font-size:15px}.diagram-slots{gap:8px}.diagram-slots>div{padding-inline:8px}.diagram-slots b{font-size:21px}.diagram-checks>div{font-size:11px}.diagram-file{gap:10px}.diagram-file b{font-size:11px}.diagram-chart{gap:17px;padding-inline:10px}.diagram-web-scene>strong{font-size:23px}.diagram-art-vase{width:69px;right:1px}.diagram-art-vase:after{left:20px}.hero-connections{opacity:.5}}
@media(max-width:360px){.diagram-board{padding-inline:13px}.diagram-panel h3{font-size:21px}.diagram-board-label{font-size:10px}.diagram-screen{padding:12px}.diagram-row{font-size:10px;gap:6px}.diagram-row>em{padding-inline:7px}.diagram-slots b{font-size:20px}.diagram-slots small,.diagram-slots span{font-size:8px}.diagram-member-card>b{font-size:13px}.diagram-web-scene>strong{font-size:21px}.diagram-art-vase{opacity:.9;width:62px}.diagram-products i{width:38px;height:60px}.diagram-products small{font-size:7px}.diagram-note{font-size:10px}}
.motion-paused .hero-connections .connection-flow,.motion-paused .diagram-panel,.motion-paused .diagram-art-vase,.motion-paused .diagram-chart>div{animation:none!important}
.motion-paused .diagram-panel{opacity:1!important;transform:none!important;filter:none!important}
.motion-paused .diagram-steps button{transition:none!important}
@media(prefers-reduced-motion:reduce){.hero-connections .connection-flow,.diagram-panel,.diagram-art-vase,.diagram-chart>div{animation:none!important}.diagram-steps button{transition:none!important}}
@media print{.diagram-panel[hidden]{display:block!important;margin-top:24px}.diagram-help,.diagram-steps{display:none!important}.diagram-board{overflow:visible;transform:none!important}.diagram-screen{break-inside:avoid}.hero-connections{display:none}}
