body.public-home{--home-bg:#ffffff;--home-ink:#252c23;--home-muted:#596354;background:var(--home-bg);color:var(--home-ink)}.public-home .dnode-shell{background:#ffffff;border-bottom:1px solid #25352118}.public-home .dnode-brand,.public-home .dnode-nav-link{color:#252c23!important}.public-home .dnode-nav-link.active{background:#657c3e0b!important;border-color:#25352120!important}.public-home .dnode-tools-main{max-width:1440px;margin:auto;padding:44px 60px 24px}.landing-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:60px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#637b3b;margin:0 0 19px}.landing-copy h1{font-size:clamp(35px,4.1vw,62px);line-height:1.06;letter-spacing:-.045em;font-weight:600;margin:0}.hero-summary{font-size:17px;line-height:1.5;color:#596354;margin:20px 0 0}.structure-visual{display:block;width:100%;height:auto;max-height:290px;object-fit:contain;margin-top:-15px}.public-home .loginwrap{margin:0;width:100%;max-width:none}.public-home .loginwrap .card{border:1px solid #25352125;background:#657c3e04;border-radius:12px;padding:28px;box-shadow:none}.public-home .loginwrap h2{font-size:22px;margin:0 0 26px;font-weight:500}.public-home .field{font-size:12px;font-weight:400;color:#495442}.public-home .field input{background:#ffffff;color:#252c23;border:1px solid #72786a;padding:12px;border-radius:5px}.public-home .loginwrap .btn{width:100%;background:#657c3e;color:#20261b;border:0;margin-top:12px;display:flex;justify-content:space-between;padding:13px 15px}.public-home .error{color:#a62c23;font-size:13px;min-height:0}.public-home .error:empty{margin:0}.public-home .dnode-applications-page{padding:0;background:transparent;max-width:none}.catalog-heading{display:flex;align-items:center;justify-content:space-between;margin:12px 0 16px}.catalog-heading h2,.client-section h2{font-size:18px;font-weight:500;margin:0}.rail-controls{display:flex;gap:8px}.rail-controls button{border:1px solid #25352135;color:#252c23;background:transparent;border-radius:50%;width:32px;height:32px;cursor:pointer}.landing-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 12px;scrollbar-width:thin;scrollbar-color:#656b5c transparent}.public-home .landing-rail .dnode-application-card{flex:0 0 calc((100% - 32px)/3);min-width:260px;min-height:185px;background:color-mix(in srgb,var(--dnode-app-arrow-color,#314866) 3%,#fff)!important;border:1px solid color-mix(in srgb,var(--dnode-app-arrow-color,#314866) 22%,#fff)!important;border-radius:9px;color:#252c23!important;box-shadow:none;scroll-snap-align:start;padding:20px;overflow:hidden}.public-home .dnode-application-name{color:#252c23!important;font-size:19px}.public-home .dnode-application-description{color:#596354!important;font-size:13px;line-height:1.45}.public-home .dnode-application-art{opacity:.25}.public-home .is-locked{opacity:1!important}.locked-label{font-size:10px;letter-spacing:.06em;color:#596354;display:block;margin-bottom:12px}.licensed-tools{margin-top:22px}.client-section{margin-top:30px;border-top:1px solid #25352118;padding-top:26px}.client-section h2{font-size:12px;color:#596354;letter-spacing:.06em}.client-window{overflow:hidden;margin-top:18px}.client-track{display:flex;width:max-content;animation:clients-slide 28s linear infinite}.client-set{display:flex;gap:16px;padding-right:16px}.client-set>span{display:flex;flex-direction:column;align-items:center;justify-content:center;width:260px;height:76px;border:1px solid #25352118;border-radius:6px;font-size:17px;font-weight:700;letter-spacing:.025em;color:#394332}.client-set>span:first-child{display:block;text-align:center;align-content:center}.client-accent{color:#657c3e}.client-set small{font-size:9px;margin-top:5px;letter-spacing:.15em}.client-window:hover .client-track,.client-window:focus .client-track,.client-window:focus-within .client-track{animation-play-state:paused}.public-home footer{max-width:1440px;margin:auto;padding:22px 60px;color:#65705f;font-size:11px}.fallback-tool{color:#657c3e;padding:20px;border:1px solid #25352125;border-radius:6px}.public-home :focus-visible{outline:2px solid #657c3e;outline-offset:4px}input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@keyframes clients-slide{to{transform:translateX(calc(-1 * var(--client-cycle, 0px)))}}@media(prefers-reduced-motion:reduce){.client-track{animation:none}}@media(max-width:900px){.public-home .dnode-tools-main{padding:32px 24px}.landing-hero{gap:25px;grid-template-columns:minmax(0,1fr) 300px}.landing-copy h1{font-size:40px}.structure-visual{margin-top:10px}.public-home .landing-rail .dnode-application-card{flex-basis:calc((100% - 16px)/2)}}@media(max-width:650px){.landing-hero{grid-template-columns:1fr;gap:10px}.public-home .dnode-tools-main{padding:28px 18px}.structure-visual{max-height:220px}.public-home .loginwrap{max-width:none;margin:0 0 24px}.public-home .loginwrap .card{padding:22px}.public-home .landing-rail .dnode-application-card{flex-basis:85%}.landing-copy h1{font-size:42px}.public-home footer{padding:20px}.client-set>span{width:220px}}
.public-home .dnode-tools-main{padding:44px 60px 24px!important;background:#ffffff;min-height:0}.public-home .dnode-tools-main .loginwrap{padding:0}.public-home .dnode-application-top{max-width:100%;gap:12px}.public-home .dnode-application-icon{width:44px;height:44px;flex-basis:44px}.public-home .dnode-application-icon svg{width:28px;height:28px}.public-home .dnode-application-arrow{box-shadow:none}.public-home .is-locked{filter:none}.public-home .dnode-application-copyblock{padding-top:0}.public-home .dnode-application-card{gap:14px}.public-home .dnode-application-card .locked-label{margin-bottom:0}body:not(.public-home) #signedInHeading{padding:30px 0 18px}body:not(.public-home) #signedInHeading h1{margin:0}@media(max-width:900px){.public-home .dnode-tools-main{padding:32px 24px!important}}@media(max-width:650px){.public-home .dnode-tools-main{padding:28px 18px!important}}
.public-home .dnode-shell.topbar{background:#ffffff!important;box-shadow:none!important;padding:0 max(24px,calc((100vw - 1320px)/2))!important}.public-home .dnode-tools-main{color:#252c23}.public-home .landing-copy h1,.public-home .loginwrap h2,.public-home .catalog-heading h2,.public-home .client-section h2{color:inherit}

.public-home .dnode-shell .dnode-nav-link:hover{background:#edf1e7!important;color:#252c23!important}.public-home .dnode-shell .dnode-brand-copy b{color:#252c23}.public-home .dnode-shell .dnode-mark{background:#252c23}.public-home .loginwrap .btn{background:#000!important;color:#fff!important}.public-home .loginwrap .btn:hover{background:#202020!important}.public-home .loginwrap .card{background:#fbfcf9}.public-home .dnode-shell .dnode-icon{color:inherit}.public-home .dnode-application-art{opacity:.18}.public-home .rail-controls button:hover{background:#edf1e7}
.client-set>span{height:104px}.client-set>span img{display:block;max-width:190px;max-height:80px;width:auto;height:auto;object-fit:contain}.client-set>span.client-design-devise{display:flex}.client-set>span.client-design-devise{gap:7px;background:#fff}.client-design-devise img{background:transparent;border-radius:0;padding:0;box-sizing:border-box}.client-set .client-dd-symbol{height:62px;width:auto;max-height:62px}.client-set .client-dd-wordmark{width:166px;height:auto;max-height:24px}

.client-set .client-dd-wordmark{display:flex;align-items:center;width:auto;max-height:none;font:300 18px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.1px;color:#000;white-space:nowrap}.client-dd-wordmark b{background:#080808;color:#fff;font-weight:300;padding:1px 3px}.client-dd-wordmark>span{padding-left:2px}.client-set>span.client-yes-dezign{gap:3px}.client-yes-symbol{display:block;width:130px;height:62px;overflow:hidden}.client-set .client-yes-symbol img{width:130px;height:auto;max-width:none;max-height:none}.client-yes-wordmark{font:900 italic 17px/1 Arial,Helvetica,sans-serif;color:#272b51;letter-spacing:-.6px}

/* Public homepage uses the available screen width; card colours stay in apps-ui.css. */
.public-home .dnode-tools-main{max-width:none;width:100%;box-sizing:border-box;margin:0;padding:36px 24px 24px!important}
.public-home .dnode-shell.topbar{padding:0 24px!important}
.public-home footer{max-width:none;padding:22px 24px}
.public-home .landing-rail{scrollbar-width:none;-ms-overflow-style:none}
.public-home .landing-rail::-webkit-scrollbar{display:none}
@media(min-width:1200px){.public-home .landing-rail .dnode-application-card{flex-basis:calc((100% - 48px)/4)}}
@media(max-width:650px){.public-home .dnode-tools-main{padding:28px 16px!important}.public-home .dnode-shell.topbar{padding:0 16px!important}}

/* Keep the hero compact: copy left, structural illustration right, login at top. */
.public-home .landing-hero{align-items:start;gap:24px}
.public-home .landing-hero .loginwrap{align-self:start}
.public-home .structure-visual{max-height:340px;margin:12px auto;object-fit:contain}
@media(min-width:1100px){
 .public-home .landing-copy{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:20px;align-items:start}
 .public-home .landing-copy .eyebrow{grid-column:1;grid-row:1}
 .public-home .landing-copy h1{grid-column:1;grid-row:2;font-size:clamp(36px,3.3vw,62px)}
 .public-home .hero-summary{grid-column:1;grid-row:3}
 .public-home .structure-visual{grid-column:2;grid-row:1 / 4;width:100%;height:auto;max-width:650px;max-height:350px;margin:0;align-self:start;justify-self:center;object-position:center top}
}
@media(max-width:650px){.public-home .structure-visual{max-height:270px;margin:12px auto}}

.client-set{flex-shrink:0}
@media(prefers-reduced-motion:reduce){
 .client-window{overflow-x:auto}
 .client-track > [aria-hidden="true"]{display:none}
}
