/* Scoped to the approved Promise card; existing app layouts are untouched. */
.promise-page-frame{max-width:540px;margin:0 auto}
.promise-card{box-sizing:border-box;background:#1b1225;border:1px solid #c5a566;border-radius:24px;padding:clamp(22px,4.5vw,30px) clamp(16px,4vw,24px) 18px;text-align:center;color:#ddd4e2;font-family:Arial,sans-serif;box-shadow:inset 0 0 0 1px #f2d79312}
.promise-icon{display:block;width:48px;height:48px;margin:0 auto 30px;color:#e7b8d2}
.promise-card h1{font-family:inherit;font-size:clamp(22px,5.4vw,32px);line-height:1.25;font-weight:700;color:#dfbd79;margin:0 0 22px;letter-spacing:-.4px}
.promise-card p{font-size:clamp(18px,4.6vw,26px);line-height:1.43;font-weight:400;margin:0 0 22px;overflow-wrap:break-word}
.promise-card .promise-subtitle{font-size:clamp(22px,5vw,30px);font-weight:600;color:#e7b8d2;margin-bottom:22px}
.promise-card hr{border:0;border-top:1px solid #786281;margin:30px 0}
.promise-card .promise-tagline{color:#dfbd79;font-size:clamp(18px,4.6vw,26px);margin:0}
.promise-skull{display:block}
.promise-policy-link{text-align:center;font-size:13px;line-height:1.6;margin:16px 0}
.promise-page-frame a:focus-visible{outline:2px solid #dfbd79;outline-offset:4px}

.welcome-promise{min-width:0;width:100%;max-width:540px;justify-self:center}
@media(min-width:651px){
  .auth-layout.has-welcome-promise>.auth-intro{display:none}
  .auth-layout.has-welcome-promise>.welcome-promise{grid-column:1;grid-row:1}
  .auth-layout.has-welcome-promise>.panel{grid-column:2;grid-row:1;min-width:0}
}
