.site-public .ndp-button,.ndp-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;padding:13px 22px;border:1px solid transparent;border-radius:10px;font-size:15px!important;font-weight:650;line-height:1.35!important;text-decoration:none!important;letter-spacing:0;cursor:pointer;transition:background .18s,box-shadow .18s;box-sizing:border-box}.site-public .ndp-button-primary,.ndp-button-primary{background:#183f34;color:#fff!important;border-color:#183f34;box-shadow:0 4px 12px #183f3412}.site-public .ndp-button-secondary,.ndp-button-secondary{background:#fff;color:#183f34!important;border-color:#bacbc2}.ndp-button:hover{box-shadow:0 5px 16px #183f3420}.ndp-button-primary:hover{background:#245443}.ndp-button-secondary:hover{background:#edf3ef}.ndp-button:focus-visible,.ndp-close:focus-visible{outline:3px solid #b89255;outline-offset:4px}.ndp-action-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.ndp-modal-open{overflow:hidden}.ndp-dialog{width:min(760px,calc(100% - 32px));max-height:90dvh;max-width:760px;padding:0;border:1px solid #d7e2da;border-radius:20px;color:#24372e;background:#fff;box-shadow:0 32px 100px #061c2940;overflow:auto;overscroll-behavior:contain}.ndp-dialog::backdrop{background:#0d241dcc;backdrop-filter:blur(5px)}.ndp-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:28px 32px 22px;border-bottom:1px solid #e4ebe6;background:#f6f8f4}.ndp-dialog-head .eyebrow{font-size:11px;letter-spacing:1.5px;color:#6b7b70}.site-public .ndp-dialog h2,.ndp-dialog h2{font-size:28px!important;line-height:1.2!important;letter-spacing:-.5px!important;margin:9px 0 0!important}.ndp-close{flex:0 0 40px;width:40px;height:40px;min-height:40px;border:1px solid #d7e2da;border-radius:50%;background:#fff;color:#234436;font-size:26px;cursor:pointer;padding:0}.ndp-dialog-body{padding:26px 32px}.ndp-dialog-body .growth-section{padding:0!important;margin:0;border:0;background:white}.ndp-dialog-body .growth-section>.eyebrow,.ndp-dialog-body .growth-section>h2{display:none}.site-public .ndp-dialog p{font-size:15px;line-height:1.7}.ndp-dialog label{font-size:14px}.ndp-dialog input,.ndp-dialog select,.ndp-dialog textarea{font-size:16px;min-height:46px;border-radius:8px}.ndp-dialog .check input{min-height:0}.ndp-dialog .growth-section form>p{font-size:12px;color:#68766e;line-height:1.6}.ndp-dialog .growth-section form>.button{width:100%;min-height:48px;font-size:15px;border-radius:10px}.ndp-dialog-actions{display:flex;gap:12px;flex-wrap:wrap;padding:0 32px 28px}.ndp-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.ndp-role-grid article{padding:20px 16px;border:1px solid #dce5df;border-radius:12px;background:#f8faf7}.ndp-role-grid article>span{font-size:12px;color:#987239}.site-public .ndp-role-grid h3{font-size:17px;margin:12px 0 8px}.site-public .ndp-role-grid p{font-size:13px;margin:0}.ndp-role-grid+.ndp-dialog-actions{padding:0}.site-public .ndp-contact-card{max-width:1184px;margin:24px auto 64px;padding:36px 40px;background:#eaf1eb;border:1px solid #d5e2d7;border-radius:16px}.site-public .ndp-contact-card h2{font-size:30px;margin:0 0 12px}.site-public .ndp-contact-card p{font-size:16px;max-width:600px;margin:0 0 22px}.site-public .ndp-contact-section h2{font-size:clamp(28px,3.5vw,44px);max-width:760px;line-height:1.2}.site-public .ndp-contact-section .ndp-contact-details{font-size:15px;line-height:1.8;max-width:760px;color:#627268}.ndp-policy-content .content-section{padding:0!important}.ndp-policy-content h1{font-size:26px!important}.ndp-policy-content h2{font-size:21px!important}.ndp-policy-content p{overflow-wrap:anywhere}.ndp-policy-content .actions{display:none}@media(max-width:640px){.ndp-dialog{width:calc(100% - 20px);max-height:94dvh;border-radius:16px}.ndp-dialog-head{padding:20px;gap:12px}.site-public .ndp-dialog h2{font-size:23px!important}.ndp-dialog-body{padding:20px}.ndp-dialog-actions{padding:0 20px 22px;flex-direction:column}.ndp-role-grid{grid-template-columns:1fr}.ndp-role-grid article{padding:16px}.site-public .ndp-contact-card{margin:20px;padding:26px 22px}.site-public .ndp-contact-card h2{font-size:25px}.ndp-action-row .ndp-button{width:100%}.ndp-dialog .form-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.ndp-button{transition:none}.ndp-dialog::backdrop{backdrop-filter:none}}
.growth-section[hidden]{display:none!important}
.ndp-button[hidden]{display:none!important}
/* Preserve contrast against the video hero's original button rules. */
.site-public .premium-hero .ndp-button-primary{background:#183f34!important;color:#fff!important;border-color:#183f34!important}.site-public .premium-hero .ndp-button-secondary{background:#ffffff14!important;color:#fff!important;border-color:#ffffffa8!important}.site-public .premium-hero .ndp-button-secondary:hover{background:#ffffff29!important}

/* 3.4.3: keep each CTA foreground/background pair together. Contextual card,
   secondary-button and article styles must not split an enhanced CTA's palette.
   The existing hero's more-specific gold/dark palette remains authoritative. */
.site-public .ndp-button.ndp-button-primary{background:#183f34!important;color:#fff!important;border-color:#183f34!important}
.site-public .ndp-button.ndp-button-primary:hover,.site-public .ndp-button.ndp-button-primary:active{background:#245443!important;color:#fff!important;border-color:#245443!important}
.site-public .ndp-button.ndp-button-secondary{background:#fff!important;color:#183f34!important;border-color:#789184!important}
.site-public .ndp-button.ndp-button-secondary:hover,.site-public .ndp-button.ndp-button-secondary:active{background:#edf3ef!important;color:#183f34!important;border-color:#183f34!important}
.site-public :is(.ndp-dialog,.privacy-dialog) :is(.button,.ndp-button,.privacy-choice) :is(span,strong,small){color:inherit}
.site-public :is(.ndp-dialog,.privacy-dialog) :is(.button,.ndp-button,.privacy-choice):focus-visible{outline:3px solid #916139;outline-offset:4px;box-shadow:0 0 0 2px #fff}
.site-public .ndp-button:is(:disabled,[aria-disabled=true]),.site-public :is(.ndp-dialog,.privacy-dialog) :is(.button,.ndp-button,.privacy-choice):is(:disabled,[aria-disabled=true]){background:#e2e7e3!important;border-color:#a2afa7!important;color:#415149!important;opacity:1;box-shadow:none;transform:none;cursor:not-allowed}
.site-public :is(.ndp-close,.privacy-dialog-head button){width:44px;min-width:44px;height:44px;min-height:44px;background:#fff;color:#183f34;border:1px solid #789184;flex-shrink:0}
.site-public :is(.ndp-close,.privacy-dialog-head button):hover{background:#edf3ef;color:#183f34}
.site-public .lightbox p{color:#e8eee5}
.site-public .lightbox button{background:#eff2ea;color:#12382f;border:1px solid #b7c9be;min-height:44px}
.site-public .lightbox button:hover{background:#dce8df;color:#12382f}
@media(forced-colors:active){.site-public .ndp-button{forced-color-adjust:auto}.site-public :is(.ndp-dialog,.privacy-dialog,.lightbox) :is(button,a):focus-visible{outline:3px solid Highlight}}

.site-public :is(.privacy-banner,.privacy-dialog) .privacy-choice{background:#214b3b;color:#fff;border-color:#214b3b}
.site-public :is(.privacy-banner,.privacy-dialog) .privacy-choice:hover{background:#163c2d;color:#fff;border-color:#163c2d}
.site-public :is(.privacy-banner,.privacy-dialog) .privacy-choice:disabled{background:#e2e7e3;color:#415149;border-color:#a2afa7;opacity:1}
