body .studio-header.header:not(.is-scrolled){position:absolute!important;top:0;left:50%;transform:translateX(-50%);z-index:110;color:#fff}
body .studio-header.header:not(.is-scrolled) .wordmark,body .studio-header.header:not(.is-scrolled) nav a{color:#fff!important}
body .studio-header.header:not(.is-scrolled) nav a[aria-current=page]{background:#ffffff18!important;box-shadow:inset 0 0 0 1px #ffffff30}
.service-scene{position:relative;isolation:isolate;background:#222522;color:#fff;min-height:750px;height:100svh;container-type:inline-size;overflow:hidden}
.scene-panel-stack{position:absolute;inset:0;display:grid}
.scene-room{grid-area:1/1;position:relative;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s ease,visibility 0s .7s;min-width:0}
.scene-room.is-current{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .7s ease,visibility 0s}
.scene-room-image{position:absolute;inset:0}
.scene-room-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 48%}
.scene-room:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#111b24a0 0%,transparent 27%,transparent 42%,#10151a80 72%,#11161af2 100%),linear-gradient(90deg,transparent 24%,#10151a55 40%,#10151ac4 68%,#10151afa 100%)}
.scene-room-copy{position:absolute;z-index:3;right:max(6cqi,calc((100cqi - 1200px)/2));bottom:180px;width:390px;max-width:42%;color:#fff}
.scene-room-copy .eyebrow{color:#e1d8c9;font-size:10px;letter-spacing:.16em;margin:0 0 16px}
.scene-room-copy :is(h1,h2){font:500 clamp(32px,3.1vw,46px)/1.1 Inter,Arial,sans-serif;letter-spacing:-.045em;max-width:17ch;margin:0 0 18px;text-wrap:balance;color:#fff}
.scene-room-copy .room-definition{font:400 15px/1.7 Inter,Arial,sans-serif;color:#f0ece5;margin:0 0 18px;max-width:38ch}
.scene-room-copy ul{font-size:12px;line-height:1.7;padding-left:16px;color:#dbd8d1;margin:0 0 22px}
.scene-room-copy li{margin:0 0 4px}
.scene-room-copy .room-enquire{display:inline-flex;gap:24px;align-items:center;color:#fff;font-size:13px;min-height:44px;border-bottom:1px solid #ffffff50;text-decoration:none}
.scene-room-copy .room-enquire svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.2}
.scene-intro{position:absolute;z-index:4;left:max(6cqi,calc((100cqi - 1200px)/2));top:144px;font:400 11px/1.5 'JetBrains Mono',monospace;text-transform:uppercase;letter-spacing:.14em;color:#fff9;max-width:20ch}
.scene-service-choices{position:absolute;bottom:24px;left:0;right:0;z-index:5}
.scene-service-choices .workshop-selectors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:32px}
.scene-service-choices button.workshop-selector{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;white-space:normal;text-align:left;color:#ddd7cd;border:0;border-top:1px solid #ffffff35;border-radius:0;padding:14px 0;position:relative;gap:0}
.scene-service-choices button.workshop-selector:before{content:'';position:absolute;top:-1px;left:0;right:0;height:2px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .4s}
.scene-service-choices button[aria-selected=true]:before{transform:scaleX(1)}
.service-choice-name{display:block;font-size:15px;line-height:1.4;margin-bottom:7px;color:#fff}
.service-choice-description{font-size:12px;line-height:1.6;max-width:30ch;color:#d9d5ce}
.scene-room:focus-visible,.scene-service-choices button:focus-visible,.scene-room-copy a:focus-visible{outline:2px solid #efe0be;outline-offset:5px}
.service-scene:after{content:'';position:absolute;inset:0;z-index:2;opacity:.18;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url("%23n")' d='M0 0h180v180H0z'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
@media(min-width:1601px){.service-scene{height:calc(100svh / var(--studio-scale));min-height:650px}}
@media(min-width:601px) and (max-width:1100px){.scene-room-copy{width:330px;max-width:44%;bottom:180px}.scene-room-copy :is(h1,h2){font-size:32px}.scene-room-copy .room-definition{font-size:14px}.scene-room-copy ul{font-size:11px}.scene-intro{top:125px}.scene-service-choices .workshop-selectors{gap:24px}}
@media(max-width:600px){.service-scene{min-height:760px;height:100svh}.scene-room-image img{object-position:35% center}.scene-room:after{background:linear-gradient(180deg,#11192390,transparent 25%,#10151a60 36%,#10151aee 62%,#11161afa)}.scene-intro{top:100px;font-size:9px;max-width:24ch}.scene-room-copy{left:6cqi;right:6cqi;width:auto;max-width:none;bottom:185px}.scene-room-copy :is(h1,h2){font-size:34px;max-width:18ch;margin-bottom:12px}.scene-room-copy .eyebrow{margin-bottom:10px}.scene-room-copy .room-definition{font-size:14px;line-height:1.6;margin-bottom:14px}.scene-room-copy ul{font-size:11px;margin-bottom:10px}.scene-service-choices{bottom:18px}.scene-service-choices .workshop-selectors{gap:14px}.service-choice-name{font-size:12px}.service-choice-description{font-size:10px;line-height:1.5}.scene-service-choices button.workshop-selector{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.scene-room,.scene-service-choices button.workshop-selector:before{transition:none}}
@media(max-width:600px){.service-scene{min-height:640px}.scene-room-copy{bottom:150px}}
@media(max-width:600px) and (max-height:620px){.service-scene{min-height:700px}}
body .studio-header.over-service-scene .wordmark,body .studio-header.over-service-scene nav a{color:#fff!important}
body .studio-header.over-service-scene nav a[aria-current=page]{background:#ffffff18!important}

/* Match the site's shared evolving film texture above the scrim. */
.service-scene:after{display:none}
.service-scene>#hero-grain{opacity:.44;z-index:2;mix-blend-mode:soft-light;pointer-events:none}

/* Stable copy rhythm between service scenes. */
@media(min-width:601px){.scene-room-copy .room-definition{min-height:5.1em}.scene-room-copy :is(h1,h2){min-height:2.2em}}

/* Keep both header states out of document flow: no strip when crossing 32px. */
body .studio-header.header,body .studio-header.header.is-scrolled,body .studio-header.header:not(.is-scrolled){position:fixed!important;left:50%;transform:translateX(-50%);margin-inline:0}

.scene-room-copy .agent-personality{font-size:12px;line-height:1.65;color:#dedbd5;max-width:38ch;margin:0 0 16px}
.scene-room-copy li strong{font-weight:500;color:#fff}
@media(max-width:600px){#service-panel-2 .scene-room-copy{bottom:150px}#service-panel-2 .scene-room-copy ul{font-size:11px;margin-bottom:10px}.scene-room-copy .agent-personality{font-size:11px;margin-bottom:8px}}
.agent-character-art{background:#f5f2ea!important;overflow:hidden}
#concept-grid .agent-character-art>img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transform:none;filter:none}
.agent-collection-note{font-size:15px;line-height:1.7;color:#716a78;max-width:48ch;margin:22px 0 32px}
.agent-collection-note[hidden]{display:none}
#service-panel-2 .scene-room-copy .room-definition{min-height:5.1em}

#concept-grid .agent-character-art>.scene-grain{opacity:.3}
.agent-character-art{cursor:pointer;position:relative}
.agent-character-art>img{transition:opacity .3s ease!important}
.agent-character-art.is-agent-preview>img{opacity:0}
.agent-chat-preview{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;background:#f8f6f1;color:#302b35;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility 0s .3s;padding:14px 14px 32px;text-align:left;pointer-events:none}
.is-agent-preview .agent-chat-preview{opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s}
.agent-chat-head{display:flex;align-items:center;gap:7px;padding-bottom:10px;border-bottom:1px solid #dedbd3;font:500 11px/1.4 Inter,Arial,sans-serif;flex:none}
.agent-chat-presence{height:6px;width:6px;flex:none;background:#91a18b;border-radius:50%}
.agent-chat-demo{margin-left:auto;color:#8a838d;font-size:9px;font-weight:400}
.agent-chat-body{display:flex;flex:1;flex-direction:column;justify-content:center;gap:9px;padding-block:10px;min-height:0}
.agent-chat-body p{font:400 11px/1.5 Inter,Arial,sans-serif;letter-spacing:0;margin:0!important;white-space:pre-line;color:#49434e}
.agent-chat-question{align-self:flex-end;max-width:90%;background:#eae5ee;border-radius:9px 9px 2px 9px;padding:8px 10px}
.agent-chat-answer{max-width:94%;padding:0 3px}
.agent-chat-foot{font:400 9px/1.4 Inter,Arial,sans-serif;color:#827b86;padding-top:7px;border-top:1px solid #e4e0d8;flex:none}
.agent-preview-hint{position:absolute;bottom:10px;right:12px;z-index:4;padding:4px 8px;border-radius:20px;background:#faf8f2d9;font:400 9px/1.4 Inter,Arial,sans-serif;color:#6d6572;pointer-events:none}
@media(max-width:760px){.agent-chat-preview{padding:18px 18px 36px}.agent-chat-head{font-size:13px}.agent-chat-body p{font-size:13px}.agent-chat-foot{font-size:10px}.agent-preview-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){.agent-character-art>img,.agent-chat-preview{transition:none!important}}
.card-media:has(.is-agent-preview)>.outcome-pill{opacity:0;pointer-events:none}
@media(max-width:760px){.agent-chat-body{padding-block:6px;gap:8px}.agent-chat-body p{font-size:12px}}
@media(max-width:760px){.agent-chat-body{padding-block:0;gap:6px}.agent-chat-question{padding:6px 8px}}
@media(max-width:760px){.agent-chat-preview{padding:14px 18px 26px}}

/* FAQ motion keeps native disclosure semantics and keyboard activation. */
.services-faq summary svg{transition:transform .36s cubic-bezier(.22,1,.36,1)}
.services-faq details[data-expanded="true"]>summary svg{transform:rotate(45deg)}
.services-faq details[data-expanded="false"]>summary svg{transform:rotate(0)}
@media(prefers-reduced-motion:reduce){.services-faq summary svg{transition:none}}
