/* PSA funnel: calculator CTAs, Project Brief form, sales page. Scoped to .psa-* classes. */
.psa-cta-zone{margin:1.25rem 0 2rem}
.psa-cta{box-sizing:border-box;max-width:100%;font-size:1rem;line-height:1.55}
.psa-cta p{margin:0 0 .6em}
.psa-cta--edu{padding:.9rem 1.1rem;border-left:4px solid #2f6f4f;background:#f3f7f4;margin:1rem 0}
.psa-cta--edu a{font-weight:600}
.psa-cta__method{font-size:.85rem;color:#5b6470;margin-top:.4em!important}
.psa-cta--lead{padding:1.1rem 1.2rem;border:1px solid #d9d2c3;border-radius:6px;background:#fffdf8;margin:1rem 0}
.psa-cta--lead h3{margin:0 0 .4em;font-size:1.15rem}
.psa-cta--direct{margin:.6rem 0 1rem;font-size:.95rem}
.psa-brief-section{margin:2rem 0}
.psa-brief-form{display:grid;gap:.7rem;margin-top:.8rem}
.psa-brief-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.92rem;font-weight:600}
.psa-brief-form__row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.psa-brief-form input[type=email],.psa-brief-form input[type=text],.psa-brief-form select{width:100%;box-sizing:border-box;padding:.55rem .6rem;border:1px solid #b9b3a6;border-radius:4px;font-size:1rem;font-weight:400;background:#fff}
.psa-brief-form__consent{flex-direction:row!important;align-items:flex-start;gap:.5rem!important;font-weight:400!important}
.psa-brief-form__consent input{margin-top:.25rem;flex:0 0 auto}
.psa-brief-form__msg{min-height:1.2em;margin:0;font-size:.9rem;color:#8a2c0d}
.psa-brief-form__small{margin:0;font-size:.82rem;color:#5b6470}
.psa-btn{display:inline-block;padding:.7rem 1.2rem;border:0;border-radius:4px;background:#c98a1b;color:#1c1c1c;font-weight:700;font-size:1rem;text-decoration:none;cursor:pointer;justify-self:start}
.psa-btn:hover,.psa-btn:focus{background:#b07612;color:#1c1c1c}
.psa-btn--buy{font-size:1.1rem;padding:.85rem 1.5rem}
.psa-proto-note{padding:.5rem .7rem;background:#fff4d6;border:1px dashed #b98900;font-size:.85rem;color:#5a4600;border-radius:4px;margin:0}
.psa-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .8rem;margin:.8rem 0}
.psa-price__now{font-size:2rem;font-weight:800}
.psa-price__was{font-size:1rem;color:#5b6470}
.psa-price__note{flex-basis:100%;font-size:.85rem;color:#5b6470}
.psa-checkout{margin:1rem 0 1.5rem;display:grid;gap:.5rem}
.psa-steps li{margin-bottom:.6em}
@media (max-width:600px){.psa-brief-form__row{grid-template-columns:1fr}.psa-cta--lead{padding:1rem}}

/* Hardening against theme/calculator styles */
.psa-brief-form .psa-brief-form__consent{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:.5rem!important}
.psa-brief-form .psa-brief-form__consent input[type=checkbox]{width:1.1rem!important;height:1.1rem!important;min-width:0!important;margin:.2rem 0 0!important;padding:0!important;appearance:auto!important;-webkit-appearance:checkbox!important}
.psa-cta .psa-btn,.psa-checkout .psa-btn,.psa-steps~.psa-proto-note .psa-btn,a.psa-btn{background:#c98a1b!important;color:#1c1c1c!important;border:0!important;border-radius:4px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:normal!important;width:auto!important}
.psa-cta .psa-btn:hover,.psa-checkout .psa-btn:hover,a.psa-btn:hover{background:#b07612!important}

/* Content tables on small screens: scroll inside their own box instead of widening the page. */
@media (max-width:767px){
  .elementor-widget-theme-post-content table,.entry-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .elementor-widget-theme-post-content a,.entry-content a{overflow-wrap:anywhere}
}
