/* Relay continues the recorded story, from website enquiry to calendar invite. */
.story-shell[data-scroll-story="true"] { height:1700svh; }
.story-panel.relay-story { width:100%; max-width:none; padding:0; border:1px solid #586050; border-radius:14px; overflow:hidden; background:#f5f4f0; color:var(--ink); text-align:left; box-shadow:0 24px 70px #0004; }
.relay-story .cf-top { flex-shrink:0; }
#rf-current-step { color:#ba432d; font-size:12px; font-weight:600; font-variant-numeric:tabular-nums; }
.rf-stage { padding:18px; background:#e5e8df; min-height:300px; display:flex; flex-direction:column; gap:14px; }
.rf-location { display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:12px; letter-spacing:.06em; color:#59644f; }
#rf-time { font-variant-numeric:tabular-nums; white-space:nowrap; }
.rf-image-button { position:relative; display:grid; place-items:center; border:0; padding:18px; width:100%; min-height:260px; background:#fafbf8; border-radius:8px; cursor:zoom-in; overflow:hidden; }
.rf-image-button img { display:block; width:100%; height:auto; max-height:420px; object-fit:contain; filter:drop-shadow(0 8px 16px #23312216); }
.rf-image-button .rf-scene-ghost { position:absolute; inset:18px; width:calc(100% - 36px); height:calc(100% - 36px); pointer-events:none; }
.relay-story .cf-chapters { grid-template-columns:repeat(7,minmax(0,1fr)); }
.relay-story .cf-caption { min-height:0; }
.relay-story #rf-play { border-color:var(--ink); background:var(--ink); color:#fff; text-align:left; }
.relay-story .cf-controls button:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.story-visual[data-stage="1"] .story-preview-label { display:none; }
.relay-story [hidden] { display:none; }
.story-shell[data-scroll-story="true"] .relay-story { display:flex; flex-direction:column; height:100%; max-height:820px; }
.story-shell[data-scroll-story="true"] .rf-stage { flex:1; min-height:0; padding:14px 18px; }
.story-shell[data-scroll-story="true"] .rf-image-button { flex:1; min-height:0; }
.story-shell[data-scroll-story="true"] .rf-image-button img { position:absolute; inset:18px; width:calc(100% - 36px); height:calc(100% - 36px); max-height:none; }
.story-shell[data-scroll-story="true"] .relay-story .cf-caption p { display:block; font-size:14px; line-height:1.45; }
#rf-cinema-image,#rf-video { display:block; width:100%; height:auto; max-height:68svh; object-fit:contain; background:#000; }
#rf-cinema-image[hidden],#rf-video[hidden],#rf-cinema-footer[hidden] { display:none; }
#rf-cinema-caption { margin:18px 24px; font-size:16px; line-height:1.5; }
@media(max-width:1000px) {
  .relay-story .cf-chapters { display:flex; overflow-x:auto; scrollbar-width:thin; overscroll-behavior-x:contain; padding:0 8px; }
  .relay-story .cf-chapters button { flex:0 0 88px; font-size:14px; min-height:54px; }
  .story-shell[data-scroll-story="true"] .relay-story .cf-chapters button { flex-direction:column; font-size:14px; }
  .story-shell[data-scroll-story="true"] .relay-story .cf-caption p { font-size:14px; }
}
@media(max-width:700px) {
  .story-visual[data-stage="0"] .relay-story,.story-visual[data-stage="2"] .relay-story { display:none; }
  .story-shell[data-scroll-story="true"] .story-visual[data-stage="0"] .relay-story,.story-shell[data-scroll-story="true"] .story-visual[data-stage="2"] .relay-story { display:none; }
  .relay-story .cf-top .mini-brand { font-size:clamp(18px,5vw,23px); white-space:nowrap; }
  #rf-current-step { font-size:10px; white-space:nowrap; letter-spacing:0; }
  .rf-location { font-size:12px; letter-spacing:0; }
  .rf-stage { padding:14px; }
  .story-shell[data-scroll-story="true"] .rf-stage { padding:12px; gap:8px; }
  .rf-image-button { padding:10px; }
  .story-shell[data-scroll-story="true"] .rf-image-button img { inset:10px; width:calc(100% - 20px); height:calc(100% - 20px); }
  .relay-story .cf-controls { flex-wrap:nowrap; gap:8px; }
  .relay-story #rf-play { font-size:12px; padding:9px; }
  #rf-cinema-caption { margin:16px; font-size:14px; }
}
@media(max-height:639px) {
  .story-shell[data-scroll-story="true"] .relay-story .cf-caption p { font-size:12px; line-height:1.35; }
  .story-shell[data-scroll-story="true"] .rf-stage { gap:8px; padding:10px 12px; }
  .story-shell[data-scroll-story="true"] .rf-location { font-size:11px; }
}

/* Relay is a crisp application walkthrough, rather than enlarged bitmaps. */
.story-shell[data-stage="1"] .story-top { display:none; }
.story-shell[data-stage="1"] .story-grid { display:flex; flex-direction:column; align-items:stretch; gap:12px; padding:0 0 12px; }
.story-shell[data-stage="1"] .story-copy { display:block; }
.story-shell[data-stage="1"] .story-copy h2,.story-shell[data-stage="1"] .story-copy>p { display:none; }
.story-shell[data-stage="1"] .story-steps { flex-direction:row; gap:24px; max-width:none; }
.story-shell[data-stage="1"] .story-step { flex:1; font-size:14px; padding:10px 0; gap:10px; border-bottom:1px solid #4b4d46; }
.story-shell[data-stage="1"] .story-step i { display:none; }
.story-shell[data-stage="1"] .story-visual { flex:1; min-height:0; }
.story-shell[data-stage="1"] .relay-story { max-height:none; }
#relay-story .rf-stage { min-height:570px; gap:10px; }
.story-shell[data-scroll-story="true"] #relay-story .rf-stage { min-height:0; }
.rf-location>div { display:flex; align-items:center; gap:14px; }
.rf-top-actions { display:flex; align-items:center; gap:16px; }
#rf-enlarge { color:#475a45; background:#f8faf5; border:1px solid #c4cebe; border-radius:4px; font-size:12px; padding:5px 8px; }
.rf-experience { position:relative; flex:1; min-height:0; width:100%; overflow:auto; scrollbar-width:thin; background:#fafbf8; border:1px solid #d6ddd1; border-radius:9px; color:#25383f; font-size:16px; line-height:1.5; }
.rf-experience svg { display:inline-block; width:22px; height:22px; flex-shrink:0; vertical-align:middle; }
.rf-experience button:focus-visible { outline:3px solid #ef714d; outline-offset:3px; }
.rf-experience h3 { font-size:28px; line-height:1.2; letter-spacing:-.025em; font-weight:500; margin:8px 0 16px; }
.rf-eyebrow { display:block; font-size:12px; letter-spacing:.09em; color:#728578; }
.rf-avatar { display:inline-grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:50%; color:#fff; background:#153b43; font-size:16px; font-weight:500; }
.rf-primary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:12px 16px; color:#fff; background:#173a3c; border:0; border-radius:5px; font-size:14px; }
.rf-app-heading { margin-bottom:20px; }
.rf-app-heading h3 { margin:6px 0 8px; }
.rf-app-heading p { margin:0; font-size:14px; color:#728074; }
.rf-web-app { max-width:1120px; min-height:100%; margin:auto; background:#fff; }
.rf-web-bar { display:flex; align-items:center; gap:25px; padding:12px 20px; background:#f0f2ee; border-bottom:1px solid #dce2d8; font-size:12px; color:#748173; }
.rf-browser-dots { letter-spacing:4px; color:#acb7a9; white-space:nowrap; }
.rf-web-content { display:grid; grid-template-columns:.85fr 1fr; gap:45px; padding:36px; }
.rf-property-context { padding:15px 20px 15px 0; border-right:1px solid #e3e8de; }
.rf-property-context h3 { font-family:Georgia,serif; font-size:42px; line-height:1.15; font-weight:400; margin:20px 0; }
.rf-property-price { font-size:26px; }
.rf-received { display:flex; align-items:center; gap:8px; font-size:14px; color:#35694f; margin-top:25px; }
.rf-property-context p { font-size:14px; color:#79877a; }
.rf-enquiry h3 { margin-top:8px; }
.rf-enquiry-fields { display:grid; grid-template-columns:1fr 1fr; gap:25px 22px; margin:25px 0 30px; }
.rf-enquiry-fields>div { min-width:0; padding-bottom:10px; border-bottom:1px solid #dce3d8; }
.rf-enquiry-fields dt { color:#778375; font-size:12px; margin-bottom:8px; }
.rf-enquiry-fields dd { font-size:16px; margin:0; overflow-wrap:anywhere; }
.rf-enquiry .rf-primary { width:100%; }
.rf-routing-app { max-width:960px; margin:auto; padding:25px 30px; }
.rf-rule-list { display:grid; gap:8px; }
.rf-rule { display:flex; align-items:center; gap:16px; padding:11px 16px; background:#fff; border:1px solid #e1e7dc; border-radius:6px; color:#83907e; }
.rf-rule strong { font-size:16px; font-weight:500; }
.rf-rule p { font-size:14px; margin:3px 0 0; }
.rf-rule-number { font-size:12px; flex:0 0 30px; }
.rf-rule-match { border-color:#9bb7a2; background:#e9f2e9; color:#274d39; }
.rf-match-badge { margin-left:auto; font-size:12px; background:#d2e7d2; padding:5px 10px; border-radius:20px; white-space:nowrap; }
.rf-assigned { display:flex; align-items:center; gap:13px; padding:16px 0 0; }
.rf-assigned strong,.rf-assigned span { display:block; }
.rf-assigned>div>span { font-size:13px; color:#798573; }
.rf-assigned button { display:flex; align-items:center; gap:10px; margin-left:auto; font-size:14px; background:#153b43; color:#fff; border:0; border-radius:5px; padding:11px 14px; }
.rf-wa-app { height:100%; min-height:350px; display:grid; grid-template-columns:245px minmax(0,1fr); background:#f0f2f5; color:#111b21; font-family:Arial,Helvetica,sans-serif; }
.rf-wa-sidebar { background:#fff; border-right:1px solid #dfe4e5; padding:18px 0; display:flex; flex-direction:column; }
.rf-wa-brand { padding:0 19px; display:flex; align-items:center; gap:10px; color:#008069; font-size:18px; }
.rf-wa-sidebar h3 { margin:24px 19px 15px; font-size:23px; font-weight:600; }
.rf-wa-search { margin:0 12px; background:#f0f2f5; border-radius:8px; padding:10px; display:flex; gap:9px; align-items:center; font-size:12px; color:#667781; }
.rf-wa-search svg { width:17px; }
.rf-wa-filters { display:flex; gap:7px; padding:15px 12px; }
.rf-wa-filters span { font-size:13px; color:#54656f; background:#f0f2f5; border-radius:18px; padding:6px 12px; }
.rf-wa-filters span:first-child { background:#d9fdd3; color:#008069; }
.rf-wa-selected { display:flex; align-items:center; gap:10px; padding:18px 12px; background:#f0f2f5; }
.rf-wa-selected strong,.rf-wa-selected>div>span { display:block; }
.rf-wa-selected strong { font-size:15px; font-weight:500; }
.rf-wa-selected>div>span { font-size:12px; color:#667781; margin-top:5px; }
.rf-wa-selected small { display:grid; place-items:center; margin-left:auto; width:19px; height:19px; border-radius:50%; background:#25d366; color:#0a3327; font-size:11px; }
.rf-avatar-brand { background:#d9fdd3; color:#075e54; font-size:18px; }
.rf-wa-workspace { margin-top:auto; padding:18px; font-size:12px; color:#86959b; }
.rf-wa-conversation { display:flex; flex-direction:column; min-height:0; height:100%; }
.rf-wa-header { display:flex; align-items:center; gap:12px; padding:11px 18px; background:#f0f2f5; border-bottom:1px solid #dbe2e3; flex-shrink:0; }
.rf-wa-header strong { font-size:16px; font-weight:500; display:block; }
.rf-wa-header small { display:block; color:#667781; font-size:12px; margin-top:2px; }
.rf-wa-back { display:none; }
.rf-wa-header-tools { display:flex; align-items:center; gap:20px; margin-left:auto; color:#54656f; }
.rf-wa-header-tools button { display:grid; place-items:center; border:0; padding:5px; background:transparent; color:inherit; }
.rf-wa-menu { font-size:27px; line-height:1; }
.rf-wa-messages { flex:1; min-height:0; overflow:auto; scrollbar-width:thin; padding:16px 26px 22px; background-color:#efeae2; background-image:radial-gradient(#d2d5c84d .8px,transparent .8px); background-size:13px 13px; }
.rf-wa-day { display:block; width:max-content; margin:0 auto 17px; background:#ffffffdb; border-radius:7px; box-shadow:0 1px 1px #0001; color:#54656f; font-size:11px; padding:6px 11px; }
.rf-wa-bubble { position:relative; width:fit-content; max-width:540px; margin:0 auto 13px 0; padding:13px 15px 9px; border-radius:0 8px 8px 8px; background:#fff; color:#111b21; box-shadow:0 1px 1px #0002; font-size:15px; line-height:1.45; }
.rf-wa-bubble::before { content:""; position:absolute; left:-7px; top:0; border-top:9px solid white; border-left:8px solid transparent; }
.rf-wa-bubble strong { font-weight:600; }
.rf-wa-bubble p { margin:12px 0; }
.rf-wa-lead { margin:12px 0; }
.rf-wa-lead>div { display:grid; grid-template-columns:75px 1fr; gap:15px; padding:6px 0; border-bottom:1px solid #eef1ed; }
.rf-wa-lead dt { color:#667781; font-size:13px; }
.rf-wa-lead dd { margin:0; font-size:15px; }
.rf-wa-number { color:#027eb5; font-size:15px; }
.rf-wa-action { width:100%; display:flex; align-items:center; justify-content:center; gap:9px; color:#008069; background:#fff; border:1px solid #d8e8e0; border-radius:5px; font-size:14px; padding:11px; }
.rf-wa-stamp { display:block; text-align:right; font-size:11px; color:#667781; margin:7px 0 0 12px; white-space:nowrap; }
.rf-wa-read { color:#53bdeb; font-size:14px; font-weight:bold; letter-spacing:-4px; margin:0 5px; }
.rf-wa-outgoing { background:#d9fdd3; margin-left:auto; margin-right:0; border-radius:8px 0 8px 8px; }
.rf-wa-outgoing::before { left:auto; right:-7px; border-top-color:#d9fdd3; border-left:0; border-right:8px solid transparent; }
.rf-wa-system-note { max-width:470px; margin:18px auto 0; padding:9px 12px; background:#fff7d2dd; text-align:center; font-size:12px; color:#6c6b56; border-radius:6px; }
.rf-wa-compose { flex-shrink:0; display:flex; align-items:center; gap:16px; padding:10px 18px; background:#f0f2f5; color:#54656f; }
.rf-wa-placeholder { flex:1; background:#fff; border-radius:8px; padding:10px 14px; font-size:14px; color:#8696a0; }
.rf-wa-plus { font-size:25px; }
.rf-call-layout { min-height:100%; display:grid; grid-template-columns:minmax(280px,420px) minmax(240px,1fr); max-width:1050px; margin:auto; }
.rf-call-app { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:28px; color:#fff; background:linear-gradient(145deg,#16343f,#0a1921); text-align:center; }
.rf-call-state { font-size:11px; letter-spacing:.17em; color:#89a4a9; margin-bottom:20px; }
.rf-call-app .rf-avatar { width:65px; height:65px; flex-basis:65px; background:#2b4654; font:25px Georgia,serif; }
.rf-call-app h3 { margin:16px 0 6px; font-size:25px; }
.rf-call-number { color:#a2b7bc; font-size:14px; }
.rf-call-time { margin-top:20px; font:30px/1.1 var(--font); font-variant-numeric:tabular-nums; letter-spacing:.06em; }
.rf-waveform { display:flex; justify-content:center; align-items:center; gap:4px; height:45px; width:230px; margin:22px 0; }
.rf-waveform i { width:5px; height:var(--bar); border-radius:4px; background:#67d4d9; animation:rf-wave 1.1s ease-in-out var(--delay) infinite alternate; }
@keyframes rf-wave { to { transform:scaleY(.35); opacity:.6; } }
.rf-call-tools { display:flex; justify-content:center; gap:35px; font-size:11px; color:#bdcbce; }
.rf-call-tools>span { display:flex; flex-direction:column; align-items:center; gap:8px; }
.rf-call-tools small { font-size:11px; }
.rf-call-next { margin-top:26px; padding:10px 18px; border:1px solid #809c9d; border-radius:20px; background:#254852; color:#fff; font-size:14px; }
.rf-call-context { padding:45px; display:flex; flex-direction:column; justify-content:center; }
.rf-call-context h3 { font-size:32px; margin:18px 0; }
.rf-call-context p { color:#6d7f74; }
.rf-context-link { display:flex; align-items:center; gap:12px; margin-top:15px; }
.rf-context-link small { display:block; font-size:13px; color:#80907e; }
.rf-context-link>svg { margin-left:auto; color:#4c8366; }
.rf-transcript-app { max-width:1000px; margin:auto; padding:25px 30px; }
.rf-transcript-lines { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; }
.rf-transcript-turn { max-width:78%; align-self:start; }
.rf-transcript-turn>span { font-size:11px; letter-spacing:.06em; color:#76877d; }
.rf-transcript-turn p { font-size:16px; line-height:1.5; background:#163d4b; color:#fff; padding:12px 17px; border-radius:0 8px 8px; margin:5px 0 0; }
.rf-buyer-turn { align-self:end; text-align:right; }
.rf-buyer-turn p { color:#263d3d; background:#ebf1e9; text-align:left; border-radius:8px 0 8px 8px; }
.rf-extracted-turn p { border:1px solid #b4a36c; background:#f8f3df; }
.rf-extracted-turn>div { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; margin-top:7px; }
.rf-extracted-turn>div>span { background:#eee6c8; padding:4px 9px; border-radius:4px; font-size:12px; color:#766530; }
.rf-crm-app { max-width:930px; min-height:100%; background:#fff; margin:auto; }
.rf-crm-header { display:flex; align-items:center; gap:13px; padding:22px 27px; border-bottom:1px solid #e1e7dc; }
.rf-crm-header h3 { margin:3px 0 0; font-size:24px; }
.rf-qualified { margin-left:auto; color:#426d42; background:#e9f2e4; padding:5px 12px; border-radius:20px; font-size:12px; }
.rf-crm-fields { margin:0; }
.rf-crm-fields>div { display:grid; grid-template-columns:1fr 1.4fr; gap:25px; padding:16px 28px; border-bottom:1px solid #e6eade; }
.rf-crm-fields dt { color:#72806f; font-size:14px; }
.rf-crm-fields dd { margin:0; font-size:16px; text-align:right; }
.rf-crm-fields .rf-crm-updated { background:#f9f6e9; }
.rf-crm-fields dd>button,.rf-field-source { display:block; margin:3px 0 0 auto; padding:0; border:0; background:transparent; color:#8a7841; font-size:12px; }
.rf-crm-footer { padding:18px 27px; display:flex; align-items:center; gap:20px; justify-content:space-between; }
.rf-crm-footer>span { color:#698064; font-size:12px; }
.rf-crm-footer svg { width:17px; margin-right:5px; }
.rf-booking-layout { display:grid; grid-template-columns:1.05fr 1fr; height:100%; min-height:450px; }
.rf-wa-book { display:block; min-height:0; }
.rf-wa-book .rf-wa-sidebar { display:none; }
.rf-calendar-app { background:#fff; overflow:auto; scrollbar-width:thin; }
.rf-calendar-app>header { display:flex; align-items:center; gap:13px; padding:20px 22px; background:#f5f8fc; border-bottom:1px solid #dce5ee; }
.rf-outlook-icon { display:grid; place-items:center; width:43px; height:43px; background:#0067b8; color:#fff; border-radius:6px; }
.rf-calendar-app header strong { display:block; font-size:16px; }
.rf-calendar-app header small { color:#778794; font-size:12px; }
.rf-invite-status { margin-left:auto; font-size:12px; color:#317342; background:#e6f4e9; padding:5px 8px; border-radius:4px; }
.rf-calendar-content { padding:24px; }
.rf-calendar-content h3 { margin-top:10px; }
.rf-calendar-time { padding:16px 19px; background:#f0f6fc; border-left:3px solid #0078d4; margin:20px 0; }
.rf-calendar-time strong { display:block; font-size:20px; font-weight:500; }
.rf-calendar-time>span { color:#376484; font-size:16px; }
.rf-calendar-content dl { margin:0; }
.rf-calendar-content dl>div { margin:0 0 17px; }
.rf-calendar-content dt { color:#7b8994; font-size:12px; margin-bottom:3px; }
.rf-calendar-content dd { font-size:16px; margin:0; }
.rf-calendar-content dd small { display:block; color:#7b8994; font-size:13px; overflow-wrap:anywhere; }
.rf-calendar-confirmed { display:flex; gap:8px; align-items:start; padding:12px; margin:20px 0 0; background:#eef5e9; font-size:13px; color:#537046; }
.rf-calendar-confirmed svg { width:17px; }
.rf-replay-approval { margin-top:16px; border:0; background:transparent; color:#476b77; padding:0; font-size:13px; }
.rf-confirm-reply { animation:rf-reveal .5s .65s both; }
.rf-confirm-result { animation:rf-reveal .5s 1.25s both; }
.rf-confirm-calendar { animation:rf-reveal .6s 1.7s both; }
@keyframes rf-reveal { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
.story-shell[data-scroll-story="true"] #relay-story .cf-caption { padding:8px 18px 0; }
.story-shell[data-scroll-story="true"] #relay-story .cf-caption h3 { font-size:20px; margin:0; }
.story-shell[data-scroll-story="true"] #relay-story .cf-caption p,.story-shell[data-scroll-story="true"] #relay-story .cf-note { display:none; }
.story-shell[data-scroll-story="true"] #relay-story .cf-controls { padding:8px 18px; }
.story-shell[data-scroll-story="true"][data-stage="1"] .story-bottom { padding-top:5px; }
.rf-mini-chat { background:#efeae2; padding:18px; border:1px solid #d9e2d8; border-radius:9px; text-align:left; }
.rf-mini-chat header { display:flex; gap:10px; align-items:center; margin-bottom:15px; }
.rf-mini-chat header strong { display:block; font-size:16px; }
.rf-mini-chat header small { display:block; font-size:12px; color:#677b6a; }
.rf-mini-chat>p { background:#d9fdd3; border-radius:7px; padding:14px; margin:0; font-size:15px; line-height:1.5; color:#163c32; }
.rf-mini-chat>p>span { display:block; color:#64806b; font-size:12px; margin-top:6px; }
@media(max-width:900px) {
  .story-shell[data-stage="1"] .story-step { font-size:12px; }
  .rf-wa-app { grid-template-columns:1fr; }
  .rf-wa-sidebar { display:none; }
  .rf-web-content { gap:24px; padding:25px; }
  .rf-property-context h3 { font-size:32px; }
  .rf-call-context { padding:25px; }
  .rf-call-context h3 { font-size:26px; }
}
@media(max-width:760px) {
  .rf-booking-layout { display:flex; flex-direction:column; height:auto; min-height:100%; }
  .rf-wa-book { height:490px; flex-shrink:0; }
  .rf-calendar-app { overflow:visible; }
}
@media(max-width:700px) {
  .story-shell[data-stage="1"] .story-steps { gap:12px; }
  .story-shell[data-stage="1"] .story-step { font-size:11px; gap:5px; }
  #relay-story .rf-location { font-size:10px; gap:8px; }
  .rf-location>div { gap:8px; }
  #rf-time { display:none; }
  #rf-enlarge { white-space:nowrap; font-size:11px; }
  .rf-top-actions { gap:8px; }
  .story-shell[data-scroll-story="true"] #relay-story .rf-stage { padding:10px; }
  .rf-experience { border-radius:6px; }
  .rf-web-content { grid-template-columns:1fr; gap:20px; padding:20px; }
  .rf-property-context { padding:0 0 17px; border:0; border-bottom:1px solid #dde5d7; }
  .rf-property-context h3 { font-size:29px; margin:10px 0; }
  .rf-property-context h3 br { display:none; }
  .rf-property-price { font-size:22px; }
  .rf-property-context p { display:none; }
  .rf-received { margin-top:10px; }
  .rf-enquiry-fields { grid-template-columns:1fr; gap:16px; }
  .rf-routing-app,.rf-transcript-app { padding:20px; }
  .rf-experience h3 { font-size:24px; }
  .rf-rule { gap:8px; padding:11px; }
  .rf-rule-number { flex-basis:23px; }
  .rf-rule-match { flex-wrap:wrap; }
  .rf-match-badge { margin-left:31px; }
  .rf-assigned { flex-wrap:wrap; }
  .rf-assigned button { margin-left:55px; }
  .rf-wa-header { padding:10px 12px; gap:8px; }
  .rf-wa-header .rf-avatar { width:35px; height:35px; flex-basis:35px; }
  .rf-wa-header strong { font-size:16px; }
  .rf-wa-header-tools { gap:11px; }
  .rf-wa-header-tools>span:first-child { display:none; }
  .rf-wa-back { display:block; }
  .rf-wa-back svg { width:16px; }
  .rf-wa-messages { padding:13px 15px; }
  .rf-wa-bubble { padding:12px; font-size:15px; }
  .rf-wa-lead>div { grid-template-columns:55px 1fr; gap:9px; }
  .rf-wa-compose { padding:9px 12px; gap:12px; }
  .rf-wa-plus { display:none; }
  .rf-call-layout { display:block; height:100%; }
  .rf-call-app { min-height:100%; padding:24px; }
  .rf-call-context { display:none; }
  .rf-transcript-turn { max-width:95%; }
  .rf-transcript-turn p { padding:11px 13px; font-size:15px; }
  .rf-crm-header { padding:17px; gap:10px; }
  .rf-crm-header h3 { font-size:21px; }
  .rf-qualified { font-size:11px; padding:5px 8px; }
  .rf-crm-fields>div { padding:14px 17px; grid-template-columns:1fr 1.25fr; gap:12px; }
  .rf-crm-fields dd { font-size:15px; }
  .rf-crm-fields dt { font-size:13px; }
  .rf-crm-footer { padding:17px; flex-direction:column; align-items:stretch; gap:13px; }
  .rf-calendar-app>header { padding:16px; gap:10px; }
  .rf-calendar-content { padding:20px; }
  .story-shell[data-scroll-story="true"] #relay-story .cf-caption h3 { font-size:17px; }
}
@media(max-height:680px) {
  .story-shell[data-scroll-story="true"] #relay-story .cf-caption { display:none; }
  .story-shell[data-scroll-story="true"] #relay-story .rf-location { display:none; }
  .rf-wa-app:not(.rf-wa-book) .rf-wa-compose { display:none; }
  .rf-wa-header { padding-top:7px; padding-bottom:7px; }
  .rf-wa-day { margin-bottom:10px; padding:3px 8px; }
  .rf-wa-messages { padding-top:10px; }
  .rf-wa-bubble { padding-top:10px; }
  .rf-wa-lead { margin:7px 0; }
  .rf-wa-lead>div { padding:4px 0; }
  .rf-wa-bubble p { margin:8px 0; }
  .rf-call-tools,.rf-call-state { display:none; }
  .rf-call-app { padding:18px; }
  .rf-call-app .rf-avatar { width:48px; height:48px; flex-basis:48px; font-size:20px; }
  .rf-call-app h3 { margin-top:9px; font-size:23px; }
  .rf-call-time { font-size:25px; margin-top:10px; }
  .rf-waveform { height:30px; margin:13px 0; }
  .rf-call-next { margin-top:10px; }
  .rf-wa-app:not(.rf-wa-book) { min-height:0; }
}
@media(prefers-reduced-motion:reduce) {
  .rf-waveform i,.rf-confirm-reply,.rf-confirm-result,.rf-confirm-calendar { animation:none; }
}
/* Relay shares Compass's readable narrative and single-product stage. */
#relay-story .rf-chapters { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); padding:0 16px; overflow:visible; }
#relay-story .rf-chapters button { flex:initial; min-width:0; min-height:0; font-size:14px; }
#relay-story .relay-scene { margin:0; }
.relay-product { min-width:0; min-height:0; }
.relay-context { display:grid; gap:4px; padding:12px 16px; background:#e9eee4; border:1px solid #d6dfce; border-radius:8px; margin-bottom:14px; font-size:14px; }
.relay-context span { color:#586650; font-size:13px; }
#relay-story .rf-location { margin-bottom:10px; font-size:12px; }
#relay-story .rf-experience { height:auto; overflow:hidden; }
#relay-story .rf-web-content { display:block; padding:22px; }
#relay-story .rf-property-context { display:none; }
#relay-story .rf-wa-app { display:block; height:auto; min-height:0; }
#relay-story .rf-wa-sidebar,#relay-story .rf-wa-compose,#relay-story .rf-call-context { display:none; }
#relay-story .rf-wa-messages { overflow:visible; padding:16px; }
#relay-story .rf-wa-header-tools { display:none; }
#relay-story .rf-wa-conversation { height:auto; }
#relay-story .rf-call-layout { display:block; height:auto; min-height:0; }
#relay-story .rf-call-app { min-height:0; padding:24px; }
#relay-story .rf-call-tools { display:none; }
#relay-story .rf-routing-app,#relay-story .rf-transcript-app { padding:20px; }
#relay-story .rf-rule { padding:12px; gap:10px; }
#relay-story .rf-assigned { flex-wrap:wrap; }
#relay-story .rf-booking-layout { display:block; height:auto; min-height:0; }
#relay-story .rf-booking-layout>.rf-wa-app { display:none; }
#relay-story .rf-calendar-app { min-height:0; }
#relay-story .rf-experience h3 { font-size:24px; }
#relay-story .rf-crm-fields { padding:16px; }
#relay-story .rf-crm-fields>div { gap:10px; }
#relay-story .rf-crm-footer { flex-wrap:wrap; gap:12px; }
#relay-story .rf-top-actions>span { font-size:12px; letter-spacing:.06em; color:#64705a; }
#relay-story #rf-play { background:transparent; color:#283022; border-color:#c8d0bf; }
.relay-demo-note { font-size:12px; line-height:1.5; padding:0 24px 14px; margin:0; color:#6b7662; }
.relay-approval { padding:22px; }.relay-approval dl { margin:20px 0; }.relay-approval dl>div { display:flex; justify-content:space-between; gap:20px; padding:11px 0; border-bottom:1px solid #e0e5da; font-size:14px; }.relay-approval dt { color:#687460; }.relay-approval dd { margin:0; max-width:65%; text-align:right; }
.story-shell[data-stage="1"] .story-visual>.scene-input,.story-shell[data-stage="1"] .story-visual>.scene-result { display:none; }
@media(min-width:901px) and (min-height:760px) { #relay-story .relay-scene { align-items:stretch; } #relay-story .compass-narrative { align-self:center; } #relay-story .relay-product { max-height:100%; overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; } }
@media(max-width:900px),(max-height:759px) { .story-shell[data-stage="1"] .story-sticky { height:auto; min-height:0; overflow:visible; padding:24px 4%; }.story-shell[data-stage="1"] .story-visual { height:auto; } #relay-story { margin:0; } }
@media(max-width:700px) { #relay-story .rf-chapters { padding:0 5px; } #relay-story .rf-chapters button { font-size:10px; gap:6px; padding:12px 1px; } #relay-story .rf-top-actions>span { display:none; } #relay-story .rf-experience h3 { font-size:22px; } #relay-story .rf-wa-header { padding:12px; } #relay-story .rf-rule-match { flex-wrap:wrap; } #relay-story .compass-navigation { padding-bottom:75px; } #relay-story .rf-transcript-app,#relay-story .rf-routing-app { padding:14px; } }
@media(min-width:701px) { #relay-story .compass-navigation { padding-right:180px; } }
