/* Screen registration against the unaltered photographic plates. */
.story-conversation .hello-screen{left:45.5%;top:8%;width:24.8%;height:74.6%}
.story-good-word .hello-screen{left:45.5%;top:8.5%;width:24.8%;height:76%}
.story-welcome-return .hello-screen{left:44.9%;top:9%;width:21.2%;height:68.5%}
.screen-beat{will-change:transform,opacity}
.hello-scene[data-phase="1"] [data-beat="1"],.hello-scene[data-phase="1"] [data-beat="2"],.hello-scene[data-phase="2"] [data-beat="2"]{visibility:hidden}
.hello-contact{position:relative}.screen-unread{position:absolute;right:.2cqw;top:0;width:1.5cqw;height:1.5cqw;border-radius:50%;background:#d3aa79;color:#0b2029;display:grid;place-items:center;font-size:.9cqw;opacity:0}
.screen-notification{position:absolute;top:3.3cqw;left:.8cqw;right:.8cqw;padding:1.1cqw .9cqw;background:#eeeade;color:#142a30;border:1px solid #d6d2c5;border-radius:1.4cqw;display:flex;gap:.8cqw;align-items:center;z-index:8;box-shadow:0 1cqw 3cqw #0006;opacity:0;pointer-events:none}
.screen-notification>span{font-size:2.6cqw}.screen-notification small{font-size:.8cqw;letter-spacing:.08em;display:block}.screen-notification strong{display:block;font-size:1.25cqw;line-height:1.3;font-weight:600;margin-top:.3cqw}
.screen-compose{position:absolute;bottom:3cqw;left:1.1cqw;right:1.1cqw;display:flex;gap:.6cqw;align-items:center;min-height:3.8cqw;border:1px solid #7d8d8280;border-radius:1.4cqw;padding:.65cqw;background:#142a32;color:#e7e9df;font-size:1.15cqw;line-height:1.3;opacity:0;pointer-events:none}
.compose-text{flex:1;min-width:0}.compose-text:after{content:'│';color:#d7be99}.compose-arrow{display:grid;place-items:center;border-radius:50%;width:2cqw;height:2cqw;flex-shrink:0;background:#d7c3a3;color:#142a30;font-size:1.5cqw}
.hello-typing{top:auto;bottom:4cqw;right:1.4cqw}
.hello-reply small{font-size:1.05cqw;display:block;color:#d5dfd3;margin-bottom:.6cqw}.hello-reply .feedback-lines{display:grid;gap:.6cqw;margin-top:1cqw}.feedback-lines i{height:.25cqw;background:#bfcfc0;transform-origin:left}.feedback-lines i:last-child{width:63%}
.hello-screen .screen-receipt{min-height:1.5cqw}
.story-conversation .hello-incoming{background:#304f4c;color:#f3eedf;margin-left:1cqw}.story-conversation .hello-incoming small{color:#c4d5c5}.story-conversation .hello-reply{background:#e5e5da;color:#183139;margin-left:0;margin-right:1cqw}
.story-good-word .hello-reply{background:#d9dfd2;color:#183139;margin-left:.4cqw}.story-good-word .hello-reply small{color:#4a6254}
/* A wider device lets the appointment choice be visual, rather than another chat. */
.story-commitment .hello-screen{left:31.3%;top:23.5%;width:53.6%;height:52.2%;padding:1.7cqw 2.8cqw;border-radius:1cqw;background:#07111e55;font-size:1.7cqw}
.story-commitment .hello-world:after{background:linear-gradient(90deg,#102027 0%,#102027b0 8%,transparent 25%)}
.tablet-header{margin-bottom:1.3cqw}.tablet-header>span{display:block;font-size:.9cqw;letter-spacing:.14em;color:#cbb696;margin-bottom:.6cqw}.tablet-header strong{display:block;font:400 3.2cqw/1.1 var(--serif);color:#f4eee1}.tablet-header small{display:block;font-size:1.2cqw;margin-top:.7cqw;color:#c5cfc8}
.appointment-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:1.2cqw;align-items:start}.calendar-panel{padding:1.1cqw 1.2cqw 1.6cqw;background:#172d35;border-radius:.5cqw}.calendar-week-labels,.booking-days{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;gap:.5cqw}.calendar-week-labels{font-size:1.05cqw;color:#b8c8c2}.booking-days{margin-top:1.2cqw;font-size:1.9cqw;color:#e9e7dc}.booking-days span{position:relative;display:grid;place-items:center;height:3.4cqw}.day-ring{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#d7b98c;stroke-width:1.7;overflow:visible}.day-ring circle{stroke-dasharray:160;stroke-dashoffset:0;transform-origin:center;transform:rotate(-90deg)}
.hello-screen .calendar-panel p{font-size:1.05cqw;line-height:1.4;margin:1.7cqw 0 0;color:#b8c8c2}
.slot-panel{padding-top:1cqw}.slot-panel>small{font-size:1cqw;letter-spacing:.13em;color:#b8c8c2}.booking-slots{display:grid;gap:.8cqw;margin-top:1cqw;font-size:1.4cqw}.booking-slots>span{padding:.7cqw 1.2cqw;border:1px solid #61776d;border-radius:.4cqw}.booking-slots .chosen-slot{background:#334f49;border-color:#98b19b;color:#f5f1e5}.chosen-slot i{float:right;font-style:normal;color:#d7c49d}
.booking-confirmation{grid-column:1/-1;display:flex;gap:1.6cqw;align-items:center;padding-top:1cqw;border-top:1px solid #65796b}.booking-check{width:4.3cqw;height:4.3cqw;flex-shrink:0;fill:none;stroke:#cad7bd;stroke-width:1.5}.booking-check circle{opacity:.45}.booking-check path{stroke-dasharray:160;stroke-dashoffset:0}.booking-confirmation strong{font:400 2.4cqw/1.2 var(--serif)}.hello-screen .booking-confirmation p{font-size:1.4cqw;margin-top:.4cqw}.booking-confirmation small{font-size:1cqw;color:#bacabb}
.story-commitment .hello-light{display:none}
@media(max-width:700px){
 .story-commitment .hello-world{left:calc(50% - 314px);top:-5px}
 .story-commitment .hello-world:after{background:linear-gradient(180deg,#102027 0%,transparent 15%,transparent 86%,#102027 100%)}
 .story-commitment .hello-screen{padding:1.4cqw 2.3cqw;font-size:2cqw}
 .tablet-header small,.hello-screen .calendar-panel p{display:none}
 .tablet-header{margin-bottom:.9cqw}.appointment-layout{gap:.8cqw}
 .tablet-header strong{font-size:3.6cqw}.tablet-header small{font-size:1.5cqw}.tablet-header>span{font-size:1.1cqw}
 .calendar-week-labels{font-size:1.2cqw}.booking-days{font-size:2.3cqw}.slot-panel>small{font-size:1.2cqw}.booking-slots{font-size:1.7cqw}.hello-screen .calendar-panel p{font-size:1.25cqw}
 .booking-confirmation strong{font-size:2.7cqw}.hello-screen .booking-confirmation p{font-size:1.6cqw}.booking-confirmation small{font-size:1.2cqw}
 .screen-compose{font-size:1.35cqw}.screen-notification strong{font-size:1.45cqw}.screen-notification small{font-size:1cqw}
 .cinematic-chapter .chapter-copy .scene-play{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.screen-beat{will-change:auto}.screen-compose,.screen-notification,.screen-unread{display:none}}
