/* V32 — the transformation stays readable; the kitchen remains the main scene. */
.restaurant-experience .scene-markers{position:absolute;inset:auto 0 52px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px;width:calc(100% - 64px);max-width:600px;margin:auto;padding:0;z-index:4}
.restaurant-experience .scene-marker.person-card,.restaurant-experience:is([data-state=rebuilding],[data-state=connected]) .scene-marker.person-card{position:relative;inset:auto;display:flex;flex-direction:column;width:auto;max-width:none;min-height:0;margin:0;padding:0;transform:none;gap:0}
.restaurant-experience .scene-marker.person-card .person-media{height:76px;min-height:0;width:100%;flex:none;border-right:0;border-bottom:1px solid #b7cbdf30}
.restaurant-experience .scene-marker.person-card .person-copy{padding:8px;min-height:0;flex:1;align-self:stretch;display:flex;flex-direction:column}
.restaurant-experience .scene-marker.person-card .person-copy>span{font-size:10px;line-height:1.3;min-height:26px}
.restaurant-experience .scene-marker.person-card .person-copy>small{font-size:10px;line-height:1.35;min-height:27px;margin:4px 0 6px}
.restaurant-experience .person-card .card-trend{margin-top:auto;padding-top:4px}
.restaurant-experience .person-card .card-trend>span{font-size:8px;line-height:1.3;min-height:20px}
.restaurant-experience .person-card .card-trend svg{height:20px}
.restaurant-experience .person-card .marker-figure{width:33px;height:33px}
.restaurant-experience .scene-control,.restaurant-experience[data-state=connected] .scene-control{top:22%;width:max-content;max-width:calc(100% - 28px);gap:7px}
.restaurant-experience .implant-button,.restaurant-experience[data-state=connected] .implant-button{min-height:46px;padding:9px 15px;gap:9px;font-size:12px;border-radius:14px;box-shadow:inset 0 1px #fff6,0 6px 22px #0007,0 0 25px #ffad7826}
.restaurant-experience .implant-icon,.restaurant-experience .implant-arrow{font-size:18px;width:20px;height:20px;line-height:20px;flex:none}
.restaurant-experience .scene-invitation{font-size:8px;letter-spacing:.08em}
.restaurant-experience .scene-hint{font-size:9px}
.restaurant-experience .restaurant-connections{display:none}
.scene-links32{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;fill:none;stroke:#aad9e455;stroke-width:1;filter:drop-shadow(0 0 4px #8ed7ee30)}
.scene-links32 path{transition:stroke 1s;vector-effect:non-scaling-stroke}
.restaurant-experience:is([data-state=rebuilding],[data-state=connected]) .scene-links32{stroke:#afddebba;filter:drop-shadow(0 0 5px #7fcce699)}
.restaurant-action .transformation-cue{font-size:11px;line-height:1.5;color:#b7c8d5;white-space:normal;display:inline-flex;align-items:center;gap:10px;min-height:44px;max-width:290px;text-align:right}
.transformation-cue span{color:#efb17e;font-size:18px}
.restaurant-experience .cause-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:34px auto 16px;scroll-margin-top:calc(var(--header-offset,100px) + 20px)}
.restaurant-experience .cause-heading h3{font-size:clamp(20px,2vw,27px);line-height:1.25!important}
.restaurant-experience .cause-heading .eyebrow{margin-bottom:7px}
.reason-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex:none;min-height:44px;padding:8px 13px;font:600 11px/1.35 Inter,sans-serif;color:#f5d6bd;border:1px solid #dfb18c66;border-radius:12px;background:#efb17e0a;box-shadow:inset 0 1px #fff1;touch-action:manipulation}
.reason-toggle>span:last-child{font-size:18px;color:#ffba8a}
.reason-toggle:hover{background:#efb17e16;border-color:#f4bd93}
.reason-toggle:disabled{cursor:wait;opacity:.7}
.restaurant-experience .restaurant-reasons{gap:14px}
.restaurant-experience .restaurant-reasons article{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:0;padding:18px 20px;min-height:0;border:1px solid #ad9d8c5c;border-radius:11px 4px 13px 5px;background:radial-gradient(ellipse at 80% 5%,#8260452b,transparent 60%),linear-gradient(140deg,#302b28,#111c27);box-shadow:inset 0 1px #ffffff14,inset -4px -4px 12px #0003,0 6px 15px #0002;transition:background .6s,border-color .6s,border-radius .6s,box-shadow .6s}
/* Keep text in normal flow; legacy label offsets must not move it over the copy. */
.restaurant-experience .restaurant-reasons article>*:not(.reason-fracture){position:relative;inset:auto;min-width:0;z-index:2}
.restaurant-experience .restaurant-reasons h4{font-size:19px;line-height:1.25;margin:10px 0 7px;max-width:26ch}
.restaurant-experience .restaurant-reasons p{font-size:13px;line-height:1.5;margin:0 0 10px}
.restaurant-experience .restaurant-reasons .reason-result{font-size:11px;line-height:1.4;min-height:0;margin-top:auto;padding-top:9px}
.restaurant-experience .restaurant-reasons .reason-number{font-size:9px;line-height:1.4;letter-spacing:.07em}
.reason-fracture{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#d9e9f05e;stroke-width:.7;opacity:.6;pointer-events:none;z-index:1;transition:opacity .55s}
.restaurant-experience .restaurant-reasons article:before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(112deg,transparent 0 29px,#c7b49a0b 30px,transparent 32px 46px);z-index:1;transition:opacity .6s}
.restaurant-experience .restaurant-reasons article:after{content:'';position:absolute;inset:-60% -100%;background:linear-gradient(112deg,transparent 43%,#e4faff2b 49%,#fff5 50%,#e4faff14 52%,transparent 58%);opacity:0;transform:translateX(-35%);pointer-events:none;z-index:3}
.restaurant-experience[data-state=charging] .restaurant-reasons article{border-color:#fac58c;animation:reasonCharge32 .8s ease-in-out infinite alternate}
.restaurant-experience[data-state=connected] .restaurant-reasons article{border-color:#b0dfe682;border-radius:15px;background:linear-gradient(140deg,#1d3a48,#10222f);box-shadow:inset 0 1px #e1faff77,inset 0 -1px #d4f5ff26,0 8px 24px #0003,0 0 18px #9ce2e71a}
.restaurant-experience[data-state=connected] .reason-fracture,.restaurant-experience[data-state=connected] .restaurant-reasons article:before{opacity:0}
.restaurant-experience[data-state=connected] .restaurant-reasons article:after{opacity:1;animation:reasonShine32 1.3s ease-out both}
.restaurant-experience[data-state=connected] .restaurant-reasons article:nth-child(2):after{animation-delay:.1s}
.restaurant-experience[data-state=connected] .restaurant-reasons article:nth-child(3):after{animation-delay:.2s}
@keyframes reasonCharge32{to{box-shadow:inset 0 0 25px #efa56b12,0 0 14px #efb17e33}}
@keyframes reasonShine32{from{transform:translateX(-35%)}to{transform:translateX(35%)}}
/* Restaurant hub: illuminated lettering, centered explanation, short entrance. */
.operation-map .hub-core>span{text-align:center}
.operation-map .hub-core strong{color:#fff5e4;text-shadow:0 0 7px #ffc08888,0 0 22px #ffc08844,0 2px 10px #0009;animation:hubGlow32 4s ease-in-out infinite}
.operation-map[data-map-intro=pending] .map-node,.operation-map[data-map-intro=running] .map-node{opacity:0;transform:translateY(9px) scale(.97);transition:opacity .25s ease,transform .3s ease}
.operation-map[data-map-intro=running] .map-node.is-revealed{opacity:1;transform:none}
.operation-map[data-map-intro=pending] .map-route,.operation-map[data-map-intro=running] .map-route{opacity:0;transition:opacity .25s}
.operation-map[data-map-intro=running] .map-route.intro-connected{opacity:1;stroke:#e8be92}
.operation-map[data-map-intro=running] .map-route.intro-connected>path:first-child{stroke-dasharray:1;stroke-dashoffset:1;animation:mapDraw32 .32s ease-out forwards}
.operation-map .map-node:disabled{cursor:default}
@keyframes hubGlow32{50%{text-shadow:0 0 10px #ffd4a4b3,0 0 28px #ffc08870,0 2px 10px #0009}}
@keyframes mapDraw32{to{stroke-dashoffset:0}}
/* One continuous culinary film behind the recipe copy. */
.pastry-scene{display:block;min-height:580px;padding:80px max(6%,24px);background:#081426;isolation:isolate}
.pastry-scene .pastry-media{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;border:0;border-radius:0;box-shadow:none;z-index:0;background:#081426}
.pastry-scene .pastry-media .ambient-video{inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;object-position:center 45%;filter:none}
.pastry-scene .pastry-media-shade{inset:0;border-radius:0;background:linear-gradient(90deg,#061321ec 0%,#061321bb 44%,#06132135 80%),linear-gradient(0deg,#061321b3,transparent 35%,#06132133);z-index:1}
.pastry-scene .pastry-copy{position:relative;z-index:2;width:100%;max-width:610px;padding:0;margin:0;grid-area:auto}
.pastry-scene .pastry-copy h2{font-size:clamp(32px,3.6vw,54px);max-width:20ch}
.pastry-scene .pastry-copy>p:not(.eyebrow){color:#d5dee5}
.pastry-scene .pastry-dessert{width:min(22vw,260px);max-width:260px;right:6%;bottom:25px;opacity:.85;z-index:2}
.pastry-scene .pastry-media-label{position:static;margin-top:32px;padding-top:16px;border-top:1px solid #c6d9e52e;text-shadow:0 2px 10px #0006}
.pastry-scene .pastry-media-label span{font-size:9px}
.pastry-scene .pastry-media-label b{font-size:17px;margin-top:4px}
.cost-scene .cost-steak{width:min(390px,100%);height:auto;margin:20px auto 0;transform:none}
/* Compact, human introduction with the approved biography retained. */
.consultant{display:block;max-width:1200px;margin:auto;padding:70px 6%;background:#081426}
.consultant .consultant-copy{padding:0;max-width:850px;margin:auto}
.consultant-intro{display:grid;grid-template-columns:160px minmax(0,1fr);gap:28px;align-items:center;margin-bottom:25px}
.consultant .consultant-photo{position:relative;min-height:0;height:auto;max-height:none;aspect-ratio:1;border-radius:18px;overflow:hidden;align-self:center}
.consultant .consultant-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%;transform:none}
.consultant .consultant-photo>span,.consultant .photo-shade{display:none}
.consultant .consultant-heading .eyebrow{margin:0 0 10px}
.consultant .consultant-heading h2{font-size:clamp(28px,3.1vw,43px);line-height:1.12!important;margin:0}
.consultant .consultant-copy>p:not(.eyebrow){max-width:65ch;font-size:15px;line-height:1.65;margin:12px 0}
.consultant .consultant-copy blockquote{font-size:16px;line-height:1.55;margin:22px 0;padding-left:16px}
.consultant .consultant-copy .line-button{min-height:44px;font-size:11px;margin-top:0}
.form-free-note{display:block;margin-top:12px;font-size:12px;font-weight:400;line-height:1.5;color:#b9cbd7}
@media(max-width:700px){
 .restaurant-experience .scene-markers{width:calc(100% - 20px);max-width:390px;inset:auto 0 49px;gap:6px}
 .restaurant-experience .scene-marker.person-card .person-media{height:58px}
 .restaurant-experience .scene-marker.person-card .person-copy{padding:6px 5px}
 .restaurant-experience .scene-marker.person-card .person-copy>small{font-size:9px;line-height:1.3;min-height:24px;margin:3px 0 4px}
 .restaurant-experience .scene-marker.person-card .person-copy>span{font-size:9px;line-height:1.25;min-height:23px}
 .restaurant-experience .person-card .card-trend>span{font-size:7.5px;min-height:19px}
 .restaurant-experience .person-card .card-trend svg{height:16px}
 .restaurant-experience .scene-control,.restaurant-experience[data-state=connected] .scene-control{top:21%;gap:5px}
 .restaurant-experience .implant-button,.restaurant-experience[data-state=connected] .implant-button{min-height:44px;padding:8px 11px;font-size:11px;gap:6px}
 .restaurant-experience .scene-hint{font-size:8px}
 .restaurant-experience .cinema-overlay{bottom:215px}
 .restaurant-action .transformation-cue{font-size:10px;max-width:100%;text-align:left}
 .restaurant-experience .cause-heading{display:block;margin-top:24px}
 .restaurant-experience .cause-heading h3{font-size:21px;max-width:27ch}
 .reason-toggle{margin-top:13px;font-size:11px}
 .restaurant-experience .restaurant-reasons{gap:10px}
 .restaurant-experience .restaurant-reasons article{padding:14px 16px}
 .restaurant-experience .restaurant-reasons h4{font-size:17px;margin:8px 0 5px;max-width:none}
 .restaurant-experience .restaurant-reasons p{font-size:12px;line-height:1.45;margin-bottom:8px}
 .restaurant-experience .restaurant-reasons .reason-result{font-size:10.5px;padding-top:7px}
 .operation-map .hub-core>span{text-align:center}
 .operation-map .hub-core .map-tap-hint{text-align:center}
 .operation-map[data-map-intro=pending] .map-nodes:before,.operation-map[data-map-intro=pending] .map-nodes:after{opacity:0}
 .operation-map[data-map-intro=running] .map-nodes:before{transform-origin:top;animation:mapTrunk32 1s ease-out both}
 .operation-map[data-map-intro=running] .map-node:before{opacity:0;transition:opacity .2s}
 .operation-map[data-map-intro=running] .map-node.is-revealed:before{opacity:1;background:#e8be92;box-shadow:0 0 7px #ffb47466}
 .pastry-scene{padding:56px 20px;min-height:560px}
 .pastry-scene .pastry-copy{max-width:100%}
 .pastry-scene .pastry-copy h2{font-size:clamp(30px,8vw,40px)}
 .pastry-scene .pastry-media-shade{background:linear-gradient(90deg,#061321e0,#061321a6),linear-gradient(0deg,#061321b3,transparent)}
 .pastry-scene .pastry-dessert{display:none}
 .pastry-scene .pastry-copy .line-button{width:auto;font-size:10px}
 .pastry-scene .pastry-media-label{margin-top:28px}
 .cost-scene .cost-steak{width:min(330px,100%)}
 .consultant{padding:52px 20px}
 .consultant-intro{grid-template-columns:96px minmax(0,1fr);gap:16px;margin-bottom:20px}
 .consultant .consultant-photo{border-radius:13px}
 .consultant .consultant-heading .eyebrow{font-size:9px!important;line-height:1.5!important;letter-spacing:.055em!important;margin-bottom:7px}
 .consultant .consultant-heading h2{font-size:clamp(23px,5.8vw,31px);line-height:1.15!important}
 .consultant .consultant-copy>p:not(.eyebrow){font-size:14px;line-height:1.6}
 .consultant .consultant-copy blockquote{font-size:14px;margin-block:18px}
 .consultant .consultant-copy .line-button{width:auto;font-size:10px}
 @keyframes mapTrunk32{from{transform:scaleY(0)}to{transform:scaleY(1)}}
}
@media(max-width:350px){.consultant-intro{grid-template-columns:78px minmax(0,1fr);gap:12px}.consultant .consultant-heading h2{font-size:23px}}
.motion-paused .operation-map .hub-core strong,.operation-map.is-idle .hub-core strong,.motion-paused .restaurant-reasons article,.motion-paused .restaurant-reasons article:after{animation:none!important}
@media(prefers-reduced-motion:reduce){
 .operation-map .hub-core strong,.restaurant-experience .restaurant-reasons article,.restaurant-experience .restaurant-reasons article:after{animation:none!important}
 .operation-map[data-map-intro] .map-node,.operation-map[data-map-intro] .map-route{opacity:1!important;transform:none!important;transition:none!important}
 .restaurant-experience .restaurant-reasons article{transition:none}
}
