/* Scoped additions to the current November 9 interface; cabinet is unchanged. */
.demo-page {margin:0;background:var(--ft-bg);font-family:Manrope,Arial,sans-serif;color:var(--ft-ink);line-height:1.65}
.demo-main {max-width:1208px;padding:42px 36px 64px;margin:auto;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:72px}
.demo-main h1 {font-family:Merriweather,Georgia,serif;font-size:clamp(30px,3.7vw,49px);line-height:1.25;letter-spacing:-.025em;margin:0 0 24px;text-wrap:balance}
.demo-description {font-size:19px;max-width:60ch;margin:0 0 22px}
.demo-terms,.demo-hint,#demo-purchase p {font-size:14px;color:#4b586b;max-width:65ch}
#demo-purchase {margin-block:30px 20px}
.demo-primary,.demo-secondary {font:inherit;font-weight:700;min-height:48px;padding:12px 22px;border:1px solid var(--ft-blue);border-radius:10px;cursor:pointer}
.demo-primary {background:var(--ft-blue);color:white}
.demo-secondary {background:transparent;color:var(--ft-ink)}
.demo-primary:hover {filter:brightness(.92)}
.demo-primary:disabled,.demo-secondary:disabled {opacity:.6;cursor:wait}
.demo-page :focus-visible,.li-wrap :focus-visible,.ft-trial-link:focus-visible {outline:3px solid var(--ft-blue);outline-offset:4px}
.demo-page ::selection {background:#dce5ff;color:var(--ft-ink)}
.demo-page a,.ft-trial-link {text-underline-offset:4px}
.demo-page .ft-public-header nav a,.demo-page .ft-public-header .ft-brand-tech {color:#4b586b}
.demo-explanation {border-top:1px solid var(--ft-line);padding-top:10px}
.demo-explanation h2,.demo-main h2 {font-size:22px;line-height:1.4;margin:14px 0 22px}
.demo-explanation dl {margin:0}
.demo-explanation dt {font-weight:750;margin-top:24px}
.demo-explanation dd {margin:5px 0 0;color:#4b586b;font-size:15px}
.demo-explanation>p {margin-top:30px;font-size:14px;color:#4b586b}
.demo-explanation>a {font-size:14px}
#demo-question {margin-top:28px}
#demo-question label {display:block;font-weight:700;margin-bottom:10px}
#demo-message {box-sizing:border-box;display:block;width:100%;min-height:180px;resize:vertical;font:inherit;font-size:16px;border:1px solid #7c899c;border-radius:10px;padding:16px;color:var(--ft-ink);background:white;caret-color:var(--ft-blue)}
#demo-message::placeholder {color:#566477}
#demo-status {color:var(--ft-ink);font-size:15px;overflow-wrap:anywhere}
#demo-result {margin-top:28px}
.demo-answer {white-space:pre-wrap;overflow-wrap:anywhere;max-width:72ch;line-height:1.8;margin-bottom:24px}
.demo-footer {max-width:1136px;margin:auto;padding:24px 36px;display:flex;flex-wrap:wrap;gap:18px 32px;border-top:1px solid var(--ft-line);font-size:14px}
.ft-trial-link {display:block;margin:20px 0 12px;font-weight:700;color:var(--ft-ink);font-size:16px}
.ft-trial-detail {display:block;font-weight:400;font-size:14px;color:#4b586b;margin-top:4px}
.li-wrap {font:16px/1.6 Manrope,Arial,sans-serif!important;padding:28px 20px!important;margin:36px auto!important;background:white;border:1px solid var(--ft-line);border-radius:12px;color:var(--ft-ink)}
.li-wrap .li-title {font:700 24px/1.4 Manrope,Arial,sans-serif;margin:0 0 22px}
.li-wrap .li-form input[type=text],.li-wrap .li-form textarea {box-sizing:border-box;width:100%;border-color:#7c899c;font-size:16px;background:white}
.li-wrap .li-form button {background:var(--ft-blue);color:white;min-height:48px}
.li-wrap .li-consent {font-size:14px}
.li-wrap input[type=checkbox] {min-width:20px;min-height:20px;accent-color:var(--ft-blue)}
.li-wrap .li-hp {display:none!important}
[hidden] {display:none!important}
@media(max-width:760px){.demo-main{grid-template-columns:1fr;gap:36px;padding:28px 20px 42px}.demo-page .ft-public-header{padding:22px 20px;gap:14px;flex-wrap:wrap}.demo-page .ft-public-header nav{display:flex!important;gap:18px}.demo-page .ft-public-header nav a{display:inline!important;font-size:14px}.demo-description{font-size:17px}.demo-footer{padding:24px 20px}.li-wrap{margin-inline:16px!important}.demo-primary{width:100%}}
@media(prefers-reduced-motion:reduce){.demo-page *{scroll-behavior:auto!important;transition:none!important}}

/* Account consent: separate from contract and optional communications. */
.ft-account-consent{box-sizing:border-box;width:min(560px,calc(100vw - 28px));max-height:90dvh;overflow:auto;border:1px solid #c9cfda;border-radius:16px;padding:28px;color:#1d293c;background:#fff;font:16px/1.55 system-ui,sans-serif}
.ft-account-consent::backdrop{background:#16203899}.ft-account-consent h2{font:600 24px/1.3 system-ui;margin:0 0 16px}.ft-account-consent label{display:flex;align-items:flex-start;gap:12px;margin:18px 0}.ft-account-consent input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:3px 0;accent-color:#315d78}.ft-account-consent a{color:#284d8f;text-decoration:underline}.ft-account-consent button{width:100%;margin-top:12px;cursor:pointer;min-height:44px;padding:10px 14px;border-radius:7px;font:inherit}.ft-account-consent .ft-primary{background:#243d58;color:white;border:0}.ft-account-consent button:disabled{opacity:.55;cursor:default}.ft-account-consent .ft-text-button{background:transparent;color:#35445c;border:1px solid #bec8d5}.ft-consent-error{color:#a62424}.ft-consent-launcher{position:fixed;bottom:18px;right:18px;z-index:90;padding:12px 16px;background:#243d58;color:white;border:1px solid #d4d9e0;border-radius:8px;cursor:pointer}.ft-consent-launcher[hidden]{display:none}
