/* Cleopas case study and transcript inspection. */
.frontier-hero{padding:48px 6vw 42px;background:#22372B;color:#F4F0E8}
.frontier-hero>div{max-width:1120px;margin:auto}.frontier-hero h1{font:500 clamp(2.4rem,5.6vw,4.5rem)/1.08 Georgia,serif;margin:14px 0 22px;max-width:19ch}
.frontier-hero p{font-size:1.15rem;max-width:74ch;color:#E0DBCF}.frontier-hero .eyebrow{color:#DFC97B}.frontier-hero blockquote{margin:24px 0 0;padding:18px 0 0;border-top:1px solid #7F8159;font:1.45rem/1.4 Georgia,serif;color:#DFC97B}
.frontier-wrap{max-width:1248px;margin:auto;padding:36px 32px 64px}.frontier-wrap h2{font:500 clamp(1.8rem,3vw,2.8rem)/1.15 Georgia,serif;color:#22372B}.frontier-wrap p{max-width:80ch}
.frontier-wrap section{padding:28px 0;border-bottom:1px solid #D7D0C1}.frontier-rule-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.frontier-rule-list article{border-top:3px solid #B59410;padding:18px 0}.frontier-rule-list h3{font:600 1.25rem/1.3 Georgia,serif;margin:0 0 10px}.frontier-rule-list p{margin:8px 0}
.frontier-kicker{font-size:.875rem;color:#5C684F;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.frontier-study-note{font-size:.9rem;color:#5B665D;line-height:1.55}
.fx-root{font-family:Inter,'Open Sans',Arial,sans-serif;font-size:1rem;line-height:1.6;color:#22372B;min-width:0;scroll-margin-top:86px}
.fx-toolbar{display:flex;gap:14px;flex-wrap:wrap;align-items:end;padding:16px;background:#E9E2D5;border:1px solid #D7D0C1;border-radius:14px 14px 0 0}
.fx-toolbar label{display:grid;gap:4px;font-size:.875rem;font-weight:600;flex:1;min-width:180px}.fx-toolbar select{width:100%;font:inherit;font-size:1rem;min-height:46px;padding:9px 12px;border:1px solid #71806A;border-radius:7px;background:#FCFAF5;color:#22372B}
.fx-button{font:600 .9rem/1.4 Inter,Arial,sans-serif;border:1px solid #73816D;border-radius:7px;padding:10px 14px;min-height:44px;background:transparent;color:#22372B;cursor:pointer}.fx-button:hover{background:#E7DDC7}.fx-button:disabled{opacity:.5;cursor:default}.fx-button.primary{background:#22372B;color:#F4F0E8;border-color:#22372B}.fx-button.primary:hover{background:#36492E}
.fx-meta{padding:16px 18px;border:1px solid #D7D0C1;border-top:0;background:#F8F5EF}.fx-meta p{margin:0}.fx-meta .fx-context{margin-top:5px;font-size:.9rem;color:#56634F}
.fx-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr);gap:28px;align-items:start;padding-top:22px}.fx-transcript{min-width:0}.fx-message{padding:20px 0;border-bottom:1px solid #D8D1C4;min-width:0;overflow-wrap:anywhere}.fx-message.user{background:#E7DFCE;border:1px solid #C9BEA5;border-radius:12px;margin:8px 0;padding:16px 20px}.fx-role{font-size:.875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:9px;color:#526344}.fx-message p{margin:0 0 13px}.fx-message h3,.fx-message h4{font-size:1.08rem;margin:18px 0 10px}.fx-message ul,.fx-message ol{padding-left:22px}.fx-message li{margin:5px 0}.fx-message figure{margin:16px 0}.fx-message img{max-width:100%;max-height:235px;object-fit:contain;display:block;border-radius:6px}.fx-message a{color:#5F511C;text-underline-offset:3px}.fx-message table{font-size:.875rem;display:block;overflow-x:auto}.fx-message th,.fx-message td{min-width:120px;padding:9px;border-bottom:1px solid #D7D0C1;vertical-align:top}
.fx-mark{font:inherit;line-height:inherit;color:inherit;display:inline;text-align:inherit;appearance:none;border:0;border-radius:2px;padding:0;background:transparent;text-decoration:underline;text-decoration-color:#9C7526;text-decoration-thickness:2px;text-underline-offset:4px;cursor:pointer}.fx-mark:hover,.fx-mark[aria-expanded=true]{background:#EADDAD}.fx-mark:focus-visible,.fx-button:focus-visible,select:focus-visible,.frontier-tab:focus-visible{outline:3px solid #86600F;outline-offset:4px}
.fx-inspector{background:#22372B;color:#EDE7DA;border-radius:14px;padding:24px;position:sticky;top:88px;max-height:calc(100dvh - 110px);overflow-y:auto}.fx-inspector h3{font:500 1.5rem/1.2 Georgia,serif;color:#DFC97B;margin:12px 0 16px}.fx-inspector h4{font-size:.875rem;letter-spacing:.07em;text-transform:uppercase;color:#DFC97B;margin:24px 0 9px}.fx-inspector p{font-size:1rem;line-height:1.65;margin:9px 0}.fx-inspector .fx-kicker{color:#DFC97B;font-size:.875rem}.fx-inspector blockquote{margin:16px 0;padding:12px 0 12px 16px;border-left:2px solid #CFA24F;color:#F7F3EA}.fx-inspector .fx-target{background:#F4F0E8;color:#22372B;padding:18px;border-radius:8px}.fx-inspector .fx-target p{margin:0}.fx-inspector a{color:#DFC97B;text-underline-offset:4px;font-size:.9rem}.fx-inspector .fx-source-links{display:grid;gap:10px;margin-top:20px}.fx-inspector-close{display:none}.fx-inspector .fx-label{font-size:.8rem;letter-spacing:.05em;color:#59634B;margin-bottom:10px;display:block}.fx-inspector .fx-measure{font-size:.9rem;color:#D3CCBB}.fx-inspector .fx-nav{display:flex;gap:12px;margin-top:20px}.fx-inspector .fx-button{color:#F4F0E8;border-color:#A29670}.fx-inspector .fx-button:hover{background:#36492E}
.fx-controls{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin:24px 0}.fx-progress{font-size:.875rem;color:#5B684F}.fx-raw-link{display:inline-block;margin:0 0 20px;font-size:.9rem;color:#5B511D}.fx-scrim{display:none}.fx-standard-links{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}.fx-standard-links button{font-size:.875rem}
.frontier-tab{color:#6B551C!important;border-left:1px solid #B3A58E!important;font-weight:700!important}.frontier-active .phone{width:min(1200px,96vw);max-width:96vw;height:auto;max-height:none;aspect-ratio:auto;border-radius:18px;padding:0;background:#F4F0E8}.frontier-active .screen{border-radius:18px;background:#F4F0E8;overflow:visible}.frontier-active .notch,.frontier-active .statusbar,.frontier-active .composer,.frontier-active .thread,.frontier-active .drawer{display:none!important}.frontier-active .hdr{padding:18px;border-bottom:1px solid #D7D0C1}.frontier-active .tabs{display:flex!important;max-height:none!important;opacity:1!important}.frontier-active .frontier-chat-mount{display:block;padding:20px}.frontier-chat-mount{display:none}.frontier-active .fx-inspector{top:82px}.frontier-active .fx-toolbar{border-radius:10px 10px 0 0}.frontier-active #referral,.frontier-active .stage>.foot{display:none!important}.frontier-chat-heading{font:500 1.8rem/1.2 Georgia,serif;margin:8px 0 14px}.frontier-chat-intro{font-size:1rem;max-width:75ch;margin:0 0 20px}
.frontier-active .stage{overflow:visible}.frontier-active .screen{height:auto}.frontier-active .tabs{pointer-events:auto!important}.frontier-active .illus{display:none}.frontier-chat-mount a{color:#5F511C}.frontier-hero .btn{color:#22372B}.frontier-hero .btn-outline{color:#DFC97B}.frontier-active .fx-messages{min-width:0}
.site-menu-panel{max-height:calc(100dvh - 90px)!important;overflow-y:auto!important}.site-menu-panel a:after{content:none!important}.site-links a{white-space:nowrap}.frontier-promo{padding:24px;border-left:4px solid #B59410;background:#EDE6D7;margin:24px 0}.frontier-promo p{margin:8px 0}.frontier-promo a{font-weight:600;text-underline-offset:4px}
@media(max-width:850px){.fx-grid{grid-template-columns:1fr}.fx-inspector{display:none}.fx-inspector.open{display:block;position:fixed;left:12px;right:12px;bottom:12px;top:auto;max-height:80dvh;z-index:1400;box-shadow:0 0 0 100vmax #11251BC9}.fx-inspector-close{display:block;margin-left:auto;background:transparent;border:1px solid #A29670;border-radius:6px;min-width:44px;min-height:44px;color:#F4F0E8;cursor:pointer;font-size:1rem}.fx-toolbar{align-items:stretch}.fx-meta{padding:14px}.frontier-rule-list{grid-template-columns:1fr}.frontier-wrap{padding:20px 22px 46px}.frontier-hero{padding:36px 22px}.fx-message{padding:16px 0}.fx-inspector{padding:22px}.fx-controls .fx-button{flex:1}.frontier-active .fx-root{font-size:1rem}}
@media(max-width:640px){body.frontier-active{overflow:auto!important;height:auto!important;background:#F4F0E8!important}.frontier-active .stage{height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important}.frontier-active .phone,.frontier-active .screen{width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;border-radius:0}.frontier-active .hdr{padding:14px!important}.frontier-active .frontier-chat-mount{padding:16px}.frontier-active .fx-grid{padding-top:10px}.frontier-active .tabs div{font-size:.875rem;padding:12px}.frontier-active .illus{display:none!important}.frontier-hero h1{max-width:18ch}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fx-root *{transition:none!important;animation:none!important}}

/* Shared burger-menu colours across the existing page layouts. */
.site-menu-panel,.menu-panel{background:#22372B!important;border-color:rgba(223,201,123,.3)!important;max-height:calc(100dvh - 90px)!important;overflow-y:auto!important}
.site-menu-panel a,.menu-panel a{color:#F4F0E8!important}
.site-menu-panel a:hover,.menu-panel a:hover,.site-menu-panel a:focus-visible,.menu-panel a:focus-visible{background:#36492E!important;color:#DFC97B!important}
.site-menu-panel a[aria-current="page"],.menu-panel a[aria-current="page"]{color:#DFC97B!important}
.site-menu-panel a:focus-visible,.menu-panel a:focus-visible{outline:2px solid #DFC97B;outline-offset:-2px}
.site-menu-panel a:after,.menu-panel a:after{content:none!important}

/* Keep the newest question at the top while its answer grows below it. */
.thread{overflow-anchor:none;scroll-behavior:auto}
.thread>.bub,.thread>.typing,.thread>.panel,.thread>.endcard{flex-shrink:0}
.chat-turn{display:flex;flex-direction:column;gap:10px;flex:0 0 auto;width:100%;min-height:0}
.chat-turn.current{min-height:var(--chat-turn-height,0px)}
.chat-turn>*{flex-shrink:0}
