/* Higher-contrast public website theme. Loaded last; no application styles are touched. */
body[data-contrast="enhanced"]{--ink:#163728;--muted:#40533e;--green:#174732;--green-hover:#113623;--line:#c0ccbb;color:var(--ink)}
body[data-contrast] :is(p,small,dt,li,label,summary,.muted,.subtle,.eyebrow,.home-eyebrow,.home-version,.home-download-meta,.home-basics,.home-guide-links,.home-example-result,.home-example-label,.home-demo-top>span,.bridge-node-note,.bridge-heading,.bridge-caption,.bridge-server,.bridge-online,.feature-tags,.feature-number,.feature-bottom,.guide-heading>p,.step-top,.pricing-note,.document-note,.document-grid button>span,.connect-description,.connect-small,.connect-note,.connect-benefits,.public-stats-note,.public-stats-heading,.public-stats-status,.article-lead,.breadcrumbs,.sidebar-help,.resource-list span,.content-navigation,.integration-breadcrumbs,.integration-small,.integration-section-heading p,.integration-intro-head,.integration-card-label,.integration-flow .arrow,.integration-footer,.badge,.pill){color:#40533e!important}
body[data-contrast] :is(h1,h2,h3,h4,.brand,.bridge-node-title,.home-prompt,.public-stats-values dd,.price-amount,.metric-definitions dt){color:#163728}
body[data-contrast] :is(h1 span,.home-copy h1 span,.home-extra h2 span,.home-help h2 span){color:#345629!important}
body[data-contrast] :is(.home-limit span,.home-limit strong,.bridge-target-items span,.bridge-source-message,.guide-tip,.connection-chip,.done-label,.file-stack small,.demo-caption,.release-platform,.release-details dt,.integration-card code,.integration-panel code,.integration-step-list code){color:#304a2b!important}
body[data-contrast] :is(.navigation a,.guide-menu button,.home-demo-options button,.reading-sidebar>.eyebrow,.reading-header>.eyebrow,.content-stats .public-stats-heading,.home-stats .public-stats-note,.document-grid b,.price-card>p){color:#344a32!important}
body[data-contrast] .navigation a[aria-selected="true"],body[data-contrast] .guide-menu button.selected{background:#dbe7d3;color:#163e26!important}
body[data-contrast] :is(.home-demo-options button[aria-pressed="true"],.resource-list a[aria-current="page"]){border-color:#77936a;color:#1b3e27!important}
body[data-contrast] .button:not(.secondary),body[data-contrast] .button:not(.secondary)>span{color:#fff!important;background-color:#174732}
body[data-contrast] .button.secondary{color:#174732!important;border-color:#739266}
body[data-contrast] .integration-flow .step.final{color:#fff!important;background:#174732}
body[data-contrast] :is(a,button,input,select,summary):focus-visible{outline:3px solid #355d21;outline-offset:3px}
body[data-contrast] .integration-code{background:#153023;color:#f7fcf4!important}
body[data-contrast] .integration-code code{background:none;color:inherit!important;font-size:inherit}
body[data-contrast] .integration-warning p{color:#304a2b!important}
body[data-contrast] .integration-warning a{color:#173f29;text-decoration:underline;text-underline-offset:3px}
body[data-contrast] .home-copy .home-lead{font-size:14px!important}
body[data-contrast] .home-limit span{font-size:11px!important}
body[data-contrast] .home-limit{background:#e8efdf;border-color:#b7cbaa}
body[data-contrast] :is(.home-demo,.public-stats,.integration-card,.integration-panel,.integration-intro,.price-card,.feature-grid article){border-color:#bfcdb5}
/* Unified, equal-height three-slide block. Invisible slides contribute height, but are inert. */
#overview .how-carousel{padding:19px 20px 12px;border:1px solid #a9bba0;background:#fffefb;box-shadow:0 5px 22px #173b2507;border-radius:15px;min-width:0}
#overview .how-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 11px}
#overview .how-header h2{font-size:15px;letter-spacing:0;line-height:1.4;color:#153524}
.how-toggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;border:1px solid #b2c2a8;background:#f1f5eb;color:#26432b;border-radius:8px;font-size:11px;font-weight:600;white-space:nowrap}
.how-toggle:hover{background:#e2ebd9}
.how-toggle>[data-toggle-icon]{font-size:13px}
.how-pickers{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:5px;padding:4px;background:#edf2e7;border:1px solid #d0ddc5;border-radius:10px}
.how-pickers button{background:transparent;color:#385032;border:1px solid transparent;border-radius:7px;font-size:12px;font-weight:650;line-height:1.4;padding:9px 7px;min-height:37px}
.how-pickers button:hover{background:#dbe8d3}
.how-pickers button[aria-pressed="true"]{background:#214d35;color:#fff;border-color:#214d35;box-shadow:0 2px 3px #142c1910}
.how-stage{display:grid;min-width:0;margin-top:15px}
#overview .how-slide{grid-area:1/1;display:flex;flex-direction:column;min-width:0;align-self:stretch}
#overview .how-slide[hidden]{display:flex!important;visibility:hidden;pointer-events:none}
#overview .how-slide:not([hidden]){animation:how-slide-in .2s ease-out}
.how-slide-title{font-size:14px;line-height:1.5;font-weight:650;letter-spacing:0;margin:0;color:#153524}
#overview .how-carousel .bridge-map{min-height:182px;padding:20px 0 15px;grid-template-columns:minmax(0,1fr) 25px minmax(85px,.8fr) 25px minmax(0,1.1fr)}
#overview .how-carousel .bridge-node-title{font-size:14px}
#overview .how-carousel .bridge-node-note{font-size:11px;line-height:1.45;color:#3e5538!important}
#overview .how-carousel .bridge-target-items span{font-size:10px;background:#eaf0e1;border-color:#c9d7bb}
#overview .how-carousel .bridge-center .bridge-node-title>span{font-size:10px;letter-spacing:.6px}
#overview .how-carousel .bridge-arrow{color:#4f703f}
#overview .how-carousel .bridge-arrow>span{background:#4f703f}
#overview .how-carousel .bridge-source-icons,#overview .how-carousel .bridge-computer{color:#416233}
#overview .how-carousel .bridge-server{font-size:11px}
#overview .how-carousel .bridge-source-message{font-size:10px;color:#304a2b!important;border-color:#c0d1b1}
.how-node-icon{width:54px;height:54px;margin:0 auto 10px;border:1px solid #b1c69f;border-radius:12px;background:#edf3e5;color:#32552c;display:grid;place-items:center}
.how-node-icon svg{width:33px;height:33px;stroke-width:1.6}
#overview .how-carousel .bridge-online{font-size:11px;line-height:1.6;justify-content:flex-start;padding:10px 0;border-top-color:#cbd8bf}
#overview .how-slide-note{font-size:12px;line-height:1.65;color:#3c5335!important;padding:10px 0;border-top:1px solid #cbd8bf}
#overview .how-carousel .home-demo,.how-scenario{background:#edf3e6;border:1px solid #c2d2b3;padding:13px 14px;border-radius:11px;margin:0 0 12px;flex:1}
#overview .how-carousel .home-example{min-height:62px}
#overview .how-carousel .home-demo-top>span,.how-scenario-label{font-size:10px;letter-spacing:.3px;font-weight:650;color:#3d5534!important}
#overview .how-carousel .home-demo-options button{font-size:11px;min-height:32px;padding:6px 8px}
#overview .how-carousel .home-example>p,.how-scenario>p{font-size:13px;font-weight:600;color:#183d27!important;line-height:1.55;margin:8px 0 10px}
#overview .how-carousel .home-example-result{font-size:11px;line-height:1.5}
#overview .how-carousel .home-example-label{font-size:9px}
.how-tags{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0}
.how-tags span{font-size:10px;font-weight:600;line-height:1.4;padding:4px 6px;background:#fffefb;border:1px solid #b3c8a1;border-radius:5px;color:#365129}
.how-condition{display:block;font-size:11px;line-height:1.6;color:#3e5538}
.how-details{display:inline-flex;align-items:center;gap:7px;color:#19472c;font-size:12px;font-weight:650;line-height:1.45;min-height:37px;margin-top:auto;align-self:flex-start;text-decoration:underline;text-decoration-color:#9bb68d;text-underline-offset:4px}
.how-details svg{width:16px;height:16px}
.how-details:hover{color:#122e1e;text-decoration-color:currentColor}
.how-progress{height:3px;border-radius:3px;background:#d3e1c7;overflow:hidden;margin-top:12px}
.how-progress span{display:block;width:100%;height:100%;background:#446e2d;transform-origin:left;transform:scaleX(0)}
.how-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:6px;color:#415739;font-size:10px}
.how-controls>div{display:flex;align-items:center;gap:8px}
.how-controls button{display:grid;place-items:center;min-width:34px;min-height:34px;background:transparent;border:1px solid #a1b78f;border-radius:7px;color:#284b29;font-size:18px;line-height:1}
.how-controls button:hover{background:#e8f0df}
.how-controls [data-carousel-count]{font-size:11px;font-weight:650;min-width:40px;text-align:center}
.how-screen-reader{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@keyframes how-progress-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes how-slide-in{from{opacity:.4}to{opacity:1}}
/* Real domain contact + community links on every public page. */
body.carousel-home{grid-template-rows:84px minmax(0,1fr) auto}
.site-footer,.site-footer.bottombar{width:100%;max-width:none;margin:0;display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);align-items:center;gap:18px;padding:14px clamp(22px,4vw,64px);border-top:1px solid #b8c9ab;background:#eef3e7;color:#28422c;font-size:12px;line-height:1.5}
.site-footer a{text-decoration:none;color:#173f28}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer-brand{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;white-space:nowrap}
.site-footer-brand img{width:26px;height:26px}
.site-footer-brand small{display:block;font-size:10px;font-weight:400;line-height:1.5;margin-top:2px;color:#3d5539!important}
.site-contact-links{display:flex;align-items:center;gap:27px;flex-wrap:wrap}
.site-contact-links a{display:block;padding:1px 0}
.site-contact-links .contact-caption{display:block;color:#3f573a;font-size:10px;font-weight:500}
.site-contact-links strong{display:block;font-size:12px;font-weight:650;color:#163c26}
.site-legal-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px 14px;font-size:10px}
.integration-shell>.site-footer{border-radius:12px;margin-top:24px;padding:17px;grid-template-columns:minmax(150px,.7fr) auto;gap:15px}
.integration-shell>.site-footer .site-legal-links{grid-column:1/-1;justify-content:flex-start}
@media(max-width:1100px){.site-footer,.site-footer.bottombar{grid-template-columns:1fr auto}.site-legal-links{grid-column:1/-1;justify-content:flex-start}.site-contact-links{gap:22px}#overview .how-carousel{padding:15px 14px 10px}}
@media(max-width:800px){body.carousel-home{grid-template-rows:110px minmax(0,1fr) auto}#overview .how-carousel{padding:16px}.site-footer,.site-footer.bottombar{gap:8px 16px;padding-block:10px}.site-footer-brand small{display:none}.site-legal-links{font-size:10px;gap:6px 13px}}
@media(max-width:520px){
 #overview .how-carousel{padding:13px 11px 9px}
 #overview .how-header{margin-bottom:9px}
 #overview .how-header h2{font-size:14px}
 .how-toggle{font-size:10px;min-height:34px}
 .how-pickers{gap:3px;padding:3px}.how-pickers button{font-size:11px;padding:7px 3px;min-height:36px}
 .how-stage{margin-top:12px}.how-slide-title{font-size:12px}
 #overview .how-carousel .bridge-map{min-height:162px;padding:14px 0 11px;grid-template-columns:minmax(0,1fr) 15px minmax(75px,.82fr) 15px minmax(0,1.1fr)}
 #overview .how-carousel .bridge-node-title{font-size:12px}
 #overview .how-carousel .bridge-node-note{font-size:10px}
 #overview .how-carousel .bridge-target-items span{font-size:9px;padding:3px 4px}
 #overview .how-carousel .bridge-source-message{font-size:9px;padding:6px 4px}
 #overview .how-carousel .bridge-server{font-size:10px}
 .how-node-icon{width:43px;height:43px;margin-bottom:10px}.how-node-icon svg{width:29px;height:29px}
 #overview .how-carousel .bridge-online,#overview .how-slide-note{font-size:10px}
 #overview .how-carousel .home-demo,.how-scenario{padding:10px 11px}
 #overview .how-carousel .home-demo-options button{font-size:10px;padding:6px;min-height:32px}
 #overview .how-carousel .home-demo-top>span,.how-scenario-label{font-size:9px}
 #overview .how-carousel .home-example>p,.how-scenario>p{font-size:12px}
 #overview .how-carousel .home-example-result,.how-condition{font-size:10px}
 .how-details{font-size:11px;min-height:36px}.how-controls{font-size:9px}
 .site-footer,.site-footer.bottombar,.integration-shell>.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:9px;padding:11px 16px}
 .site-footer-brand{font-size:12px;gap:6px}.site-footer-brand img{width:22px;height:22px}
 .site-contact-links{order:-1;width:100%;justify-content:space-between;gap:8px}
 .site-contact-links strong{font-size:12px}.site-contact-links .contact-caption{font-size:10px}
 .site-legal-links{font-size:9px;gap:6px 10px}.site-legal-links a:last-child{display:none}
 body[data-contrast] .home-copy .home-lead{font-size:12px!important}
}
@media(max-width:360px){#overview .how-carousel .bridge-map{grid-template-columns:minmax(0,1fr) 10px minmax(70px,.8fr) 10px minmax(0,1.1fr)}#overview .how-carousel .bridge-node-title{font-size:11px}#overview .how-carousel .bridge-node-note{font-size:9px}.how-pickers button{font-size:10px}.site-footer,.site-footer.bottombar{padding-inline:13px}.site-footer-brand{font-size:11px}.site-legal-links{gap:7px;font-size:8px}}
@media(prefers-reduced-motion:reduce){#overview .how-slide:not([hidden]){animation:none}.how-progress span{animation:none!important}}

/* Numbered guide steps and metric labels also use readable text contrast. */
body[data-contrast] .guide-menu button span,body[data-contrast] .metric-definitions dt>span{color:#3b542f!important}

/* Keep the carousel controls in view on 1366x768 laptops, without shrinking text. */
@media(min-width:801px) and (max-height:820px){
 #overview .how-carousel{padding:12px 16px 9px}
 #overview .how-header{margin-bottom:7px}
 #overview .how-carousel .how-pickers button{min-height:33px;padding-block:6px}
 #overview .how-stage{margin-top:10px}
 #overview .how-carousel .bridge-map{min-height:125px;padding:10px 0}
 #overview .how-carousel .bridge-source-icons{height:37px;margin-bottom:6px}
 #overview .how-carousel .bridge-source-icons .device-phone{height:34px;width:22px}
 #overview .how-carousel .bridge-source-icons .device-browser{height:29px;width:34px}
 #overview .how-carousel .bridge-source-message{display:none}
 #overview .how-carousel .bridge-mark{height:53px;width:53px;margin-bottom:8px;border-radius:13px}
 #overview .how-carousel .bridge-mark img{height:36px;width:36px}
 #overview .how-carousel .bridge-computer{height:36px;width:48px;margin-bottom:6px}
 #overview .how-carousel .how-node-icon{height:43px;width:43px;margin-bottom:6px}
 #overview .how-carousel .bridge-online,#overview .how-carousel .how-slide-note{padding-block:7px}
 #overview .how-carousel .home-demo,#overview .how-carousel .how-scenario{padding:9px 11px;margin-bottom:7px}
 #overview .how-carousel .home-demo-top{margin-bottom:5px}
 #overview .how-carousel .home-example{min-height:43px}
 #overview .how-carousel .home-example>p,#overview .how-carousel .how-scenario>p{margin-block:5px 6px;line-height:1.45}
 #overview .how-carousel .home-example-result{margin-top:5px}
 #overview .how-carousel .how-tags{margin-block:5px}
 #overview .how-details{min-height:32px}
 #overview .how-progress{margin-top:8px}
}
