/* Version 2: a visual story for each part of the member journey. */
.visual-services{padding-bottom:100px}
.service-scroll-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:8%;align-items:start;margin-top:90px}
.service-visual-column{position:sticky;top:116px;height:min(680px,calc(100svh - 150px));min-height:440px}
.service-scene{position:absolute;inset:0 0 58px;margin:0;overflow:hidden;isolation:isolate;border-radius:18px;background:#172017;color:#fff9f1;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .5s ease,transform .6s ease,visibility .5s;container-type:inline-size}
.service-scene.is-active{opacity:1;visibility:visible;transform:translateY(0)}
.scene-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:57% center;z-index:-4}
.scene-warmth{position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,#060a07a8 0%,#060a0710 27%,#060a0733 50%,#060a07c9 100%),linear-gradient(125deg,#e75a0c28,transparent 48%,#ef681c4d)}
.scene-grain{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.3;mix-blend-mode:soft-light;background:url('assets/grain.svg') repeat}
.scene-meta{position:absolute;inset:25px 26px auto;display:flex;justify-content:space-between;gap:20px;font:400 clamp(.75rem,2cqw,.875rem)/1.5 var(--mono);color:#f8f4e9}
.service-scene figcaption{position:absolute;bottom:24px;left:26px;right:20px;font:400 clamp(.75rem,2cqw,.875rem)/1.5 var(--mono);letter-spacing:.035em}
.glass-surface{background:linear-gradient(135deg,#ffffff21,#ffffff0b);border:1px solid #ffedce80;box-shadow:inset 0 1px 0 #ffffff4d,0 15px 50px #0003;backdrop-filter:blur(18px)}
.scene-icon{position:absolute;display:grid;place-items:center;width:17%;aspect-ratio:1;background:linear-gradient(135deg,#ee803ca1,#f5a06624);border:1px solid #ffdbc280;border-radius:23%;box-shadow:inset 0 1px 1px #fff8,0 12px 35px #0003;backdrop-filter:blur(12px)}
.scene-icon svg{width:60%;height:60%;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.visual-eyebrow{display:block;font:400 clamp(.75rem,2cqw,.875rem)/1.55 var(--mono);letter-spacing:.015em}
.visual-browser{position:absolute;left:7%;bottom:13%;width:67%;border-radius:15px;transform:rotate(-3deg)}
.visual-browser-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #fff5;padding:12px 16px;font:400 clamp(.75rem,1.9cqw,.875rem)/1.5 var(--mono)}
.visual-dots{letter-spacing:3px;color:#ffbd93}
.visual-browser-content{padding:23px 24px 26px}
.visual-browser-content .visual-eyebrow{max-width:220px;color:#e3e2d8}
.visual-browser-content>strong{display:block;font-size:clamp(1.8rem,6.2cqw,3.1rem);line-height:1.04;letter-spacing:-.045em;margin:17px 0 22px}
.visual-cta{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 15px;background:var(--orange);color:#111;font:400 clamp(.75rem,2cqw,.875rem)/1.5 var(--mono)}
.visual-cta b{font:400 1.3rem/1 Manrope,sans-serif}
.scene-websites .scene-icon{top:16%;right:10%;transform:rotate(8deg)}
.scene-websites .scene-photo{object-position:65% center}
.scene-progress{position:absolute;bottom:0;left:0;right:0;display:flex;gap:20px;height:40px;align-items:center}
.scene-progress a{display:flex;align-items:center;gap:10px;flex:1;min-width:0;font:400 .875rem/1.5 var(--mono);color:#6c7167;padding:8px 0}
.scene-progress i{height:2px;flex:1;background:#d6d9cf;transition:background .2s}
.scene-progress a[aria-current]{color:#b63c0b}
.scene-progress a[aria-current] i{background:var(--orange)}
.scene-progress a:hover{color:var(--ink)}
.service-story{min-height:max(640px,76svh);padding:54px 0 70px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border-bottom:1px solid var(--line);scroll-margin-top:18px}
.service-story:first-child{padding-top:15px}
.service-story:last-child{border-bottom:0}
.service-story>.eyebrow{font-size:.875rem;margin-bottom:25px;color:#51594c}
.service-story>.eyebrow>span{color:#b63c0b;margin-right:8px}
.service-story h3{font-size:clamp(2rem,3.2vw,3.35rem);line-height:1.06;letter-spacing:-.05em;margin-bottom:28px}
.story-copy{font-size:1rem;line-height:1.9;color:#454b42;max-width:470px}
.service-story ul{list-style:none;padding:0;margin:28px 0 21px;width:100%;max-width:490px;font-size:1rem;line-height:1.6}
.service-story li{position:relative;padding:13px 0 13px 20px;border-top:1px solid var(--line)}
.service-story li:last-child{border-bottom:1px solid var(--line)}
.service-story li:before{content:'';position:absolute;left:0;top:23px;width:4px;height:4px;background:var(--orange)}
.service-story .text-link{font-size:.875rem;gap:24px}
.scene-visibility .scene-photo{object-position:50% center}
.scene-visibility .scene-warmth{background:linear-gradient(180deg,#070b07a1,transparent 35%,#070b0755 55%,#070b07b8),linear-gradient(110deg,#f5711430,transparent)}
.scene-visibility .scene-icon{top:16%;left:11%;transform:rotate(-8deg)}
.search-orbit{position:absolute;inset:16% 8%;border:1px solid #fff5;border-radius:50%;transform:rotate(-20deg);z-index:-2}
.search-orbit:before{content:'';position:absolute;inset:10%;border:1px solid #fff3;border-radius:50%}
.visual-search{position:absolute;left:6%;right:6%;top:46%;transform:translateY(-10%)}
.visual-search>.visual-eyebrow{max-width:300px;margin:0 0 20px 7px;text-shadow:0 2px 8px #000}
.visual-search-bar{display:flex;align-items:center;gap:19px;padding:23px 24px;border-radius:100px;border-color:#fff9;background:#0c160e66;white-space:nowrap}
.visual-search-bar>svg{width:10%;flex-shrink:0;stroke:#fff;stroke-width:2;stroke-linecap:round}
.visual-search-bar>span{font-size:clamp(1rem,4cqw,1.75rem);font-weight:500;letter-spacing:-.035em}
.search-cursor{color:#ff9b62}
.search-location{display:flex;align-items:center;gap:8px;margin:18px 15px 0;font-size:clamp(.875rem,2.5cqw,1rem);text-shadow:0 2px 6px #000}
.search-location svg{width:21px;height:21px;stroke:#ffbc97;stroke-width:1.5}
.scene-content .scene-photo{object-position:67% center}
.scene-content .scene-warmth{background:linear-gradient(135deg,#28170c33,#070b0722 40%,#09100cc9 100%)}
.scene-content .scene-icon{right:9%;top:14%;transform:rotate(8deg)}
.visual-article{position:absolute;left:8%;bottom:13%;width:71%;border-radius:14px;padding:22px 24px 26px;transform:rotate(-4deg);background:linear-gradient(120deg,#111910d4,#11191070)}
.article-topline{display:flex;justify-content:space-between;gap:10px;padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid #fff5;font:400 clamp(.75rem,2cqw,.875rem)/1.5 var(--mono);color:#ffbd98}
.visual-article>.visual-eyebrow{max-width:260px;color:#dddcd0}
.visual-article>strong{display:block;font-size:clamp(1.75rem,6cqw,3rem);line-height:1.1;letter-spacing:-.05em;margin:14px 0 24px}
.article-lines{display:grid;gap:7px;margin-bottom:21px}
.article-lines i{display:block;width:95%;height:4px;background:#ecf0df55;border-radius:2px}
.article-lines i:nth-child(2){width:85%}.article-lines i:nth-child(3){width:61%}
.article-tag{display:block;font:400 clamp(.75rem,1.8cqw,.8125rem)/1.5 var(--mono);color:#ffbd98}
.scene-followup .scene-photo{object-position:57% center}
.scene-followup .scene-icon{top:17%;right:9%;transform:rotate(7deg)}
.scene-followup .scene-warmth{background:linear-gradient(180deg,#090b09a1,#090b0900 35%,#0b0e0ba8 80%),linear-gradient(115deg,#e6750f25,transparent)}
.visual-conversation{position:absolute;left:7%;right:7%;bottom:17%}
.visual-conversation>.visual-eyebrow{margin:0 0 18px 3px}
.message-bubble{display:flex;align-items:center;gap:17px;width:90%;padding:22px 20px;border-radius:20px 20px 20px 3px;background:#121c1494}
.message-avatar{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:1px solid #ffe3d070;border-radius:12px;color:#ffac79;font-size:1.5rem}
.message-bubble small{display:block;font:400 clamp(.75rem,1.9cqw,.8125rem)/1.5 var(--mono);color:#d3d8c8;margin-bottom:5px}
.message-bubble strong{font-weight:500;font-size:clamp(.9375rem,3.5cqw,1.4rem);line-height:1.4;letter-spacing:-.025em}
.conversation-thread{height:25px;border-right:1px dashed #ffd2ba88;margin-right:17%}
.message-reply{margin-left:auto;background:linear-gradient(135deg,#ca552abd,#5b3017a3);border-radius:20px 20px 3px 20px}
.message-reply .message-avatar{color:#fff7ee}
.approach-atmosphere{position:relative;isolation:isolate;overflow:hidden;background:#0e120f}
.approach-atmosphere:before{content:'';position:absolute;inset:-35% -35%;z-index:-2;transform:rotate(-32deg);background:linear-gradient(180deg,transparent 18%,#ed591e0f 23%,#ed591e54 29%,#ffac7694 33%,#ef641c40 37%,transparent 42%,transparent 51%,#ed591e28 57%,#ffa97880 61%,#ed591e40 65%,transparent 71%);filter:blur(36px);opacity:.62;pointer-events:none}
.approach-atmosphere:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#080d0955,#080d0922),url('assets/grain.svg');mix-blend-mode:soft-light;opacity:.65}
.approach-atmosphere .approach-head>div p+p,.approach-atmosphere .approach-steps p,.approach-atmosphere .approach-bottom p{color:#d9d8cc}
.approach-atmosphere .approach-head>.eyebrow{color:#f2b28b}
.approach-atmosphere .approach-grid{padding:30px;background:#0b110a3d;border:1px solid #fff2;border-radius:18px;backdrop-filter:blur(8px)}
.approach-atmosphere .community-image{border-radius:9px}
@media(min-width:801px) and (max-width:1150px){.service-scroll-layout{gap:6%;grid-template-columns:1.05fr .95fr}.service-visual-column{height:570px}.service-story{min-height:650px}.service-story h3{font-size:2.25rem}.visual-browser-content{padding:16px}.visual-browser-content .visual-eyebrow{font-size:.75rem}.visual-article{padding:18px}.message-bubble{padding:17px 15px;gap:12px}.message-avatar{width:32px;height:32px}.scene-meta{inset:21px 19px auto}.service-scene figcaption{left:19px;bottom:20px}}
@media(max-width:800px){
 .visual-services{padding-bottom:75px}.service-scroll-layout{display:grid;grid-template-columns:1fr;gap:0;margin-top:52px;max-width:650px;margin-inline:auto}
 .service-visual-column,.service-story-column{display:contents}
 .service-scene,.service-scene.is-active{position:relative;inset:auto;opacity:1;visibility:visible;transform:none;transition:none;aspect-ratio:1.03;min-height:0;width:100%;border-radius:15px}
 .scene-websites{grid-row:1}.scene-visibility{grid-row:3}.scene-content{grid-row:5}.scene-followup{grid-row:7}
 .service-story{min-height:0;display:block;padding:36px 0 64px;margin-bottom:32px;scroll-margin-top:18px}
 .service-story:first-child{padding-top:36px}.service-story:last-child{margin-bottom:0;padding-bottom:0}
 #service-websites{grid-row:2}#service-visibility{grid-row:4}#service-content{grid-row:6}#service-followup{grid-row:8}
 .service-story>.eyebrow{margin-bottom:18px}.service-story h3{font-size:clamp(2rem,6.8vw,3.5rem);margin-bottom:22px}
 .service-story .story-copy,.service-story ul{max-width:none}.service-story ul{margin:22px 0 16px}
 .scene-progress{display:none}
 .approach-atmosphere .approach-grid{padding:20px;gap:40px}.approach-atmosphere:before{opacity:.65;inset:-10% -120%;transform:rotate(-25deg)}
}
@media(max-width:480px){
 .service-scroll-layout{margin-top:40px}.service-scene,.service-scene.is-active{aspect-ratio:.92}.scene-meta{inset:18px 17px auto;gap:12px;font-size:.75rem}.scene-meta>span:last-child{display:none}.service-scene figcaption{left:17px;right:15px;bottom:18px;font-size:.75rem;letter-spacing:0}
 .visual-browser{width:77%;left:7%;bottom:15%;border-radius:11px}.visual-browser-bar{padding:9px 10px;gap:8px;font-size:.75rem}.visual-browser-content{padding:16px}.visual-browser-content>.visual-eyebrow{font-size:.75rem;max-width:210px}.visual-browser-content>strong{font-size:1.8rem;margin:12px 0 16px}.visual-cta{padding:10px 12px}
 .scene-websites .scene-icon{top:15%;right:8%;width:19%}.scene-icon{width:19%}
 .visual-search{left:5%;right:5%;top:45%}.visual-search>.visual-eyebrow{margin-bottom:15px;max-width:240px}.visual-search-bar{padding:19px 16px;gap:12px}.visual-search-bar>span{font-size:clamp(.9375rem,4.4vw,1.1rem)}
 .visual-article{width:78%;padding:17px 19px;bottom:14%;left:7%}.article-topline{padding-bottom:10px;margin-bottom:14px}.visual-article>strong{font-size:1.85rem;margin:12px 0 18px}.visual-article>.visual-eyebrow{display:none}.article-lines{margin-bottom:15px;gap:5px}.article-lines i{height:3px}.article-tag{font-size:.75rem}
 .scene-content .scene-icon{top:13%;right:8%}.visual-conversation{left:6%;right:6%;bottom:19%}.message-bubble{padding:16px 13px;gap:12px;width:94%}.message-avatar{width:32px;height:32px;font-size:1.3rem;border-radius:9px}.message-bubble strong{font-size:1rem}.message-bubble small{font-size:.75rem}.conversation-thread{height:19px}.visual-conversation>.visual-eyebrow{max-width:260px}
 .approach-atmosphere .approach-grid{padding:14px;gap:25px}.approach-atmosphere .community-image{min-height:380px}.approach-atmosphere .approach-steps{padding:0 7px}
}
@media(max-width:360px){.visual-browser-content>strong{font-size:1.55rem}.visual-browser-content{padding:13px}.visual-browser-content>.visual-eyebrow{display:none}.visual-browser-bar{font-size:.75rem}.visual-dots{display:none}.visual-browser{bottom:15%}.visual-article{padding:14px}.visual-article>strong{font-size:1.65rem}.article-lines{display:none}.message-bubble{gap:9px;padding:14px 11px}.message-avatar{width:26px;height:30px}.message-bubble strong{font-size:.875rem}.message-bubble small{font-size:.75rem}.service-story h3{font-size:1.95rem}}
@media(prefers-reduced-motion:reduce){.service-scene{transition:none;transform:none}.scene-progress i{transition:none}}
@media(max-width:360px){.visual-search{top:39%}.visual-conversation>.visual-eyebrow{display:none}}
/* Simplified illustration direction: level layouts, one focal idea per photo. */
.service-scene,.service-scene.is-active{transform:none;transition:opacity .4s ease,visibility .4s}
.service-scene .scene-warmth{background:linear-gradient(180deg,#08100912 15%,#08100905 36%,#08100933 62%,#08100980)}
.service-scene .glass-surface{border:1px solid #fff9;background:#10201461;box-shadow:none;backdrop-filter:blur(16px)}
.simple-browser,.simple-search,.simple-article,.simple-conversation{position:absolute;left:8%;right:8%;bottom:13%;margin:0;transform:none}
.simple-browser{border-radius:12px;overflow:hidden}
.simple-browser-top{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;border-bottom:1px solid #fff5;font:400 clamp(.75rem,2.1cqw,.875rem)/1.5 var(--mono)}
.simple-browser-top>span:first-child{letter-spacing:3px}
.simple-browser-body{padding:28px}
.simple-browser-body>strong{display:block;font-size:clamp(1.6rem,5.6cqw,2.7rem);line-height:1.2;letter-spacing:-.045em;margin-bottom:28px}
.simple-visit{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--orange);color:#111;font-size:clamp(.875rem,2.6cqw,1rem);font-weight:500;line-height:1.5}
.simple-visit>span{font-size:1.5rem;line-height:1}
.simple-search{bottom:28%;display:flex;align-items:center;gap:22px;border-radius:100px;padding:28px 30px}
.simple-search>svg{width:10%;max-width:40px;flex-shrink:0;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.simple-search>span{font-size:clamp(1rem,4.4cqw,2rem);line-height:1.4;letter-spacing:-.03em;white-space:nowrap}
.simple-article{border-radius:12px;padding:28px}
.simple-article-label{display:flex;align-items:center;gap:11px;font:400 clamp(.75rem,2.1cqw,.875rem)/1.5 var(--mono);color:#e8e9df}
.simple-article-label svg{width:27px;height:27px;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}
.simple-article>strong{display:block;font-size:clamp(1.75rem,6cqw,3rem);line-height:1.1;letter-spacing:-.045em;margin:25px 0 28px}
.simple-article-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #fff5;padding-top:18px;font-size:clamp(.875rem,2.6cqw,1rem);line-height:1.5;color:#eceee5}
.simple-article-footer>span{font-size:1.5rem;line-height:1}
.simple-conversation{display:grid;gap:16px}
.simple-message{padding:24px 28px;border-radius:12px}
.simple-message small{display:block;font:400 clamp(.75rem,2cqw,.875rem)/1.5 var(--mono);margin-bottom:7px;color:#f0e7d9}
.simple-message strong{font-size:clamp(1rem,4cqw,1.8rem);line-height:1.4;letter-spacing:-.03em;font-weight:500}
.service-scene .simple-reply{background:#ad4c21ad;border-color:#ffc7a480}
@media(min-width:801px) and (max-width:1150px){.simple-browser-body,.simple-article{padding:20px}.simple-browser-body>strong{margin-bottom:22px}.simple-search{gap:14px;padding:22px 20px}.simple-message{padding:20px}.simple-article>strong{margin:20px 0}.simple-article-footer{font-size:.875rem}}
@media(max-width:800px){.service-scene,.service-scene.is-active{transition:none}}
@media(max-width:480px){.simple-browser,.simple-search,.simple-article,.simple-conversation{left:7%;right:7%;bottom:12%}.simple-browser-top{padding:10px 15px}.simple-browser-body,.simple-article{padding:20px}.simple-browser-body>strong{font-size:1.6rem;margin-bottom:21px}.simple-visit{padding:11px 14px}.simple-search{bottom:28%;padding:21px 17px;gap:14px}.simple-search>span{font-size:clamp(.875rem,4.2vw,1.05rem)}.simple-article>strong{font-size:1.85rem;margin:18px 0 22px}.simple-article-footer{font-size:.875rem;padding-top:15px;gap:10px}.simple-article-label svg{width:23px;height:23px}.simple-conversation{gap:12px}.simple-message{padding:18px 20px}.simple-message strong{font-size:1.125rem}}
@media(max-width:360px){.simple-browser-body,.simple-article{padding:16px}.simple-browser-body>strong{font-size:1.4rem}.simple-browser-top{font-size:.75rem}.simple-search{padding:18px 15px;gap:12px}.simple-article>strong{font-size:1.65rem;margin:16px 0 18px}.simple-article-footer{font-size:.8125rem}.simple-message{padding:16px}.simple-message strong{font-size:1rem}.simple-conversation{gap:10px}}
@media(prefers-reduced-motion:reduce){.service-scene{transition:none}}
/* A quieter reading hierarchy and a recognisable two-way conversation. */
.simple-browser-body>strong{font-size:clamp(1.5rem,4.9cqw,2.35rem);line-height:1.12;margin-bottom:22px}
.website-enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;font-size:clamp(.75rem,2.1cqw,.875rem);color:#e6e6df}
.website-enquiry-fields>span{padding:12px 14px;border:1px solid #ffffff70;background:#10201430;line-height:1.5}
.service-story>.eyebrow{font:500 .875rem/1.5 Manrope,Arial,sans-serif;letter-spacing:0;color:#64665e;margin-bottom:21px}
.service-story .story-copy{line-height:1.8;max-width:440px}
.scene-visibility .scene-photo{object-position:50% 50%}
.services-next{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:34px;margin-top:24px}
.services-next>p{font-size:1.125rem;letter-spacing:-.025em;color:#454b42}
.simple-conversation{gap:20px;bottom:15%}
.simple-message{width:88%;padding:23px 25px;border-radius:19px 19px 19px 4px}
.service-scene .simple-message{background:#181c18c9;border-color:#e9e6dd80}
.message-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#e6e3da}
.message-heading>svg{width:22px;height:22px;flex:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.simple-message .message-heading>small{font:500 clamp(.75rem,2cqw,.875rem)/1.5 Manrope,Arial,sans-serif;margin:0;color:inherit}
.simple-message>p{font-size:clamp(1.125rem,3.65cqw,1.625rem);line-height:1.45;letter-spacing:-.025em;font-weight:500}
.service-scene .simple-reply{margin-left:auto;border-radius:19px 19px 4px 19px;background:linear-gradient(135deg,#b94717ed,#8e3818f2);border-color:#f1a47bb3}
.simple-reply .message-heading{color:#ffe3d3}
.message-delivery{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:14px;font-size:.75rem;line-height:1.2;color:#ffe3d3}
.message-delivery>svg{width:20px;height:14px;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
@media(max-width:1150px) and (min-width:801px){.simple-message{width:94%;padding:20px}.simple-conversation{gap:16px}.simple-message>p{font-size:1.125rem}}
@media(max-width:800px){.service-story{padding-bottom:46px}.service-story .story-copy{max-width:none}.services-next{max-width:650px;margin:38px auto 0;padding-top:28px}.services-next>p{max-width:230px}.simple-conversation{bottom:13%}}
@media(max-width:480px){.simple-message{width:92%;padding:18px 19px;border-radius:16px 16px 16px 4px}.simple-conversation{gap:16px}.service-scene .simple-reply{border-radius:16px 16px 4px 16px}.simple-message>p{font-size:1.125rem}.message-heading{gap:8px;margin-bottom:9px}.message-heading>svg{width:20px;height:20px}.message-delivery{margin-top:12px}.services-next{align-items:flex-start;flex-direction:column;gap:20px}.services-next>p{max-width:none;font-size:1rem}}
@media(max-width:360px){.simple-message{padding:15px 16px;width:95%}.simple-message>p{font-size:1rem}.simple-conversation{gap:13px}}
@media(max-width:480px){.simple-browser-body>strong{font-size:1.6rem;margin-bottom:18px}.website-enquiry-fields{gap:8px;margin-bottom:10px;font-size:.75rem}.website-enquiry-fields>span{padding:10px 9px}}
@media(max-width:360px){.simple-browser-body>strong{font-size:1.4rem}.website-enquiry-fields{gap:7px}.website-enquiry-fields>span{padding:9px 8px}}

/* Slow, pausable header orbit. */
.growth-graphic.orbit-ready{aspect-ratio:1;min-height:0}
.growth-graphic.orbit-ready .graphic-node{inset:47% auto auto 50%;width:24%;transform:translate(-50%,-50%) rotate(var(--phase)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--phase)));animation:service-orbit 75s linear infinite}
.node-websites{--phase:-135deg}.node-search{--phase:-45deg}.node-followup{--phase:45deg}.node-studio{--phase:135deg}
@keyframes service-orbit{to{transform:translate(-50%,-50%) rotate(calc(var(--phase) + 360deg)) translateX(var(--orbit-radius)) rotate(calc(-1 * var(--phase) - 360deg))}}
.growth-graphic.orbit-ready .graphic-orbits{inset:47% auto auto 50%;width:calc(var(--orbit-radius) * 3.12195);height:calc(var(--orbit-radius) * 3.12195);transform:translate(-50%,-50%)}
.growth-graphic.orbit-ready .graphic-brand{inset:37% 35% 43%}
.growth-graphic.orbit-ready .graphic-caption{left:14px;right:50px;font-size:.75rem;letter-spacing:0}
.growth-graphic:hover .graphic-node,.growth-graphic:focus-within .graphic-node,.growth-graphic.is-paused .graphic-node,.growth-graphic.is-out-of-view .graphic-node{animation-play-state:paused}
.orbit-toggle{position:absolute;right:12px;bottom:14px;width:32px;height:32px;display:grid;place-items:center;padding:6px;background:#151b1670;border:1px solid #ffdfc23d;border-radius:50%;color:#f4e7db}
.orbit-toggle[hidden]{display:none}
.orbit-toggle svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.orbit-toggle .orbit-play,.is-paused .orbit-toggle .orbit-pause{display:none}.is-paused .orbit-toggle .orbit-play{display:block}
.orbit-toggle:hover{background:#ed591e38;border-color:#ffcfaa}
@media(max-width:1100px){.growth-graphic.orbit-ready .graphic-label{font-size:.75rem}.growth-graphic.orbit-ready .graphic-node{gap:9px}}
@media(max-width:480px){.growth-graphic.orbit-ready{aspect-ratio:.9}.growth-graphic.orbit-ready .graphic-node{width:27%}.growth-graphic.orbit-ready .graphic-caption{left:18px;right:50px;text-align:left;max-width:210px;bottom:13px}.growth-graphic.orbit-ready .graphic-brand{left:35%;right:35%}}
@media(prefers-reduced-motion:reduce){.growth-graphic.orbit-ready .graphic-node{animation:none}.orbit-toggle{display:none}}
@media(min-width:801px) and (max-width:1100px){.growth-graphic.orbit-ready{aspect-ratio:.9}}
@media(max-width:360px){.growth-graphic.orbit-ready{aspect-ratio:.82}}
.scene-websites .scene-photo{object-position:45% center}
.scene-followup .scene-photo{object-position:48% center}
.scene-followup .simple-conversation{bottom:8%}
/* A compact, connected process replaces the full-height team photograph. */
.approach-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:64px;border-top:1px solid #ffdbb95c;border-bottom:1px solid #ffdbb938;background:linear-gradient(110deg,#ffffff06,#120f0b36)}
.approach-stage{padding:32px 34px 36px;border-left:1px solid #ffdbb92e}
.approach-stage:first-child{border-left:0;padding-left:0}
.approach-stage:last-child{padding-right:0}
.approach-stage-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:29px;color:#ffb58c}
.approach-stage-top>span{font:400 .75rem/1.5 var(--mono)}
.approach-stage-top>svg{width:46px;height:46px;flex:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.approach-stage h3{font-size:clamp(1.5rem,2.35vw,2.2rem);line-height:1.18;letter-spacing:-.045em;margin:0 0 18px}
.approach-stage>p{font-size:1rem;line-height:1.8;max-width:340px;color:#dfded5}
.approach-atmosphere .approach-bottom{margin-top:34px}
@media(min-width:801px) and (max-width:1150px){.approach-stage{padding:28px 22px}.approach-stage-top{gap:10px}.approach-stage-top>svg{width:38px;height:38px}}
@media(max-width:800px){.approach-roadmap{grid-template-columns:1fr;margin-top:40px;background:none;border-bottom:0}.approach-stage,.approach-stage:first-child,.approach-stage:last-child{padding:27px 0 30px;border-left:0;border-bottom:1px solid #ffdbb938;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.approach-stage-top{grid-column:1 / -1;margin-bottom:20px}.approach-stage h3{font-size:1.85rem;margin-bottom:0}.approach-stage>p{max-width:none}.approach-stage-top>svg{width:38px;height:38px}.approach-atmosphere .approach-bottom{margin-top:28px}}
@media(max-width:480px){.approach-stage,.approach-stage:first-child,.approach-stage:last-child{display:block}.approach-stage-top{margin-bottom:16px}.approach-stage h3{font-size:1.85rem;margin-bottom:15px}.approach-stage h3 br{display:none}}

/* Small, level overlays preserve the photographs and explain one idea each. */
.member-journey{position:absolute;left:6%;right:6%;bottom:6%;border-radius:12px;overflow:hidden}
.member-journey-chrome{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 15px;border-bottom:1px solid #fff3;color:#e7e6de;font:400 .6875rem/1.4 var(--mono)}
.member-journey-chrome>span:first-child{letter-spacing:3px}
.member-journey-chrome>svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.3}
.member-journey-route{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;padding:16px 18px 18px;gap:9px}
.member-journey-step{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;min-width:0;font-size:clamp(.8125rem,2.35cqw,.9375rem);line-height:1.35;font-weight:500;letter-spacing:-.02em}
.member-journey-step>svg{width:26px;height:26px;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.member-journey-arrow{width:16px;height:16px;stroke:#fff9;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.member-journey-destination{color:#ffae7c}
.article-link-preview{position:absolute;left:8%;right:8%;bottom:9%;display:flex;align-items:center;gap:22px;border-radius:12px;padding:24px 26px}
.article-link-icon{width:34px;height:34px;flex:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}
.article-link-preview>div{min-width:0}
.article-link-preview strong{display:block;max-width:24em;font-size:clamp(1.0625rem,3.6cqw,1.65rem);line-height:1.35;letter-spacing:-.035em;font-weight:500}
.article-link-preview>div>span{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:clamp(.8125rem,2.3cqw,.9375rem);line-height:1.4;color:#ffbd96}
.article-link-preview>div>span>span{font-size:1.25em}
.studio-section .studio-heading{margin-top:0}
@media(max-width:480px){
 .member-journey{left:6%;right:6%;bottom:6%;border-radius:10px}
 .member-journey-chrome{padding:6px 12px;font-size:.625rem}
 .member-journey-route{padding:13px 10px 15px;gap:4px;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr) 12px minmax(0,1fr)}
 .member-journey-step{gap:6px;font-size:.8125rem}
 .member-journey-step>svg{width:23px;height:23px}
 .member-journey-arrow{width:12px;height:12px}
 .article-link-preview{left:7%;right:7%;bottom:9%;padding:18px;gap:14px}
 .article-link-icon{width:26px;height:26px}
 .article-link-preview strong{font-size:1.0625rem}
 .article-link-preview>div>span{margin-top:8px}
}
@media(max-width:360px){.member-journey-route{padding:12px 8px}.member-journey-step{font-size:.75rem}.article-link-preview{padding:16px;gap:11px}.article-link-icon{width:24px;height:24px}.article-link-preview strong{font-size:1rem}}

/* Real partner portraits, with a quieter editorial layout. */
.partners-section{padding:78px 0 76px;background:#151815;border-top:1px solid #fff1;border-bottom:1px solid #fff2}
.partners-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,2.4fr);gap:6%;align-items:center}
.partners-intro .eyebrow{color:#f0a97f;margin-bottom:24px}
.partners-intro h2{font-size:clamp(2.15rem,3.35vw,3.5rem);line-height:1.04;letter-spacing:-.05em;margin:0 0 25px}
.partners-intro>p:last-child{max-width:250px;color:#bbbeb3;font-size:1rem;line-height:1.8}
.partner-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.partner-portrait-link{min-width:0;display:block;color:#f7f6ee}
.partner-photo{aspect-ratio:4 / 4.65;overflow:hidden;border-radius:8px;background:#292a25;position:relative}
.partner-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 24%;transition:transform .35s ease;filter:saturate(.8)}
.partner-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 70%,#10171028)}
.partner-detail{position:relative;padding-top:23px;padding-right:15px}
.partner-organisation{display:block;font:400 .75rem/1.5 var(--mono);color:#e8a37a;letter-spacing:.01em;min-height:2.5em;padding-right:8px}
.partner-detail h3{font-size:clamp(1.35rem,2vw,2rem);line-height:1.15;letter-spacing:-.035em;margin:13px 0 12px}
.partner-caption{display:block;font-size:.875rem;line-height:1.55;color:#bcbfb4}
.partner-arrow{position:absolute;right:0;top:68px;font-size:1.6rem;color:#cacdc3;transition:color .2s}
.partner-portrait-link:hover .partner-photo img{transform:scale(1.025)}
.partner-portrait-link:hover .partner-arrow{color:var(--orange)}
/* A programme page, booking choice and confirmation layer down the photo's right side. */
.booking-journey{position:absolute;inset:9% 5% 7% 48%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.booking-journey .glass-surface{background:#172019a3;border-color:#ffffff80;backdrop-filter:blur(13px);box-shadow:0 12px 28px #0002;border-radius:12px}
.booking-page{width:91%;overflow:hidden;position:relative;z-index:1}
.booking-browser-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid #fff4;font:400 .75rem/1.3 var(--mono);color:#e0e2d9}
.booking-browser-bar>span:first-child{letter-spacing:2px}
.booking-browser-bar svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.3}
.booking-page-content{padding:19px 19px 27px}
.booking-kicker{font:400 .75rem/1.4 var(--mono);color:#ffc09b}
.booking-page-content>strong{display:block;font-size:clamp(1.25rem,3.55cqw,1.8rem);font-weight:500;letter-spacing:-.04em;line-height:1.15;margin:11px 0 17px}
.booking-page-action{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid #fff4;font-size:clamp(.875rem,2.25cqw,1rem)}
.booking-page-action>span{font-size:1.25rem;color:#ffb58c}
.booking-times{position:relative;z-index:2;width:92%;margin:-12px 0 0 8%;padding:19px}
.booking-times-heading{display:flex;align-items:center;gap:9px}
.booking-times-heading>svg{width:22px;height:22px;flex:none;stroke:#ffbc94;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.booking-times-heading>strong{font-size:clamp(.875rem,2.6cqw,1.125rem);line-height:1.3;font-weight:500;letter-spacing:-.025em}
.booking-slots{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0 13px;font-size:.875rem;line-height:1.3}
.booking-slots>span{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px 5px;border:1px solid #fff5;border-radius:4px}
.booking-slots>.selected-slot{border-color:#fbaa7d;background:#ee69292b;color:#ffbd96}
.selected-slot>svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.5;flex:none}
.booking-confirm-action{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 11px;font-size:.875rem;line-height:1.3;color:#171c17;background:var(--orange);border-radius:3px}
.booking-success.glass-surface{position:relative;z-index:3;display:flex;align-items:center;gap:12px;padding:15px 17px;width:96%;margin:-5px 0 0 -7%;background:linear-gradient(120deg,#72351ce8,#a54620d9);border-color:#ffb78caa}
.booking-success>svg{width:31px;height:31px;flex:none;stroke:#ffd3b5;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.booking-success strong{display:block;font-size:clamp(.9375rem,2.65cqw,1.2rem);font-weight:500;line-height:1.3;letter-spacing:-.025em}
.booking-success div>span{display:block;font-size:.75rem;line-height:1.5;color:#ffe1cc;margin-top:3px}
@media(max-width:1100px){.partners-layout{grid-template-columns:1fr;gap:36px}.partners-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:0 40px;align-items:end}.partners-intro .eyebrow{grid-column:1/-1;margin-bottom:18px}.partners-intro h2{font-size:2.75rem;margin-bottom:0}.partners-intro>p:last-child{max-width:330px}.partner-photo{aspect-ratio:1}.partner-organisation{min-height:1.5em}.partner-arrow{top:60px}}
@media(min-width:801px) and (max-width:1150px){.booking-journey{inset:8% 4% 6% 44%}.booking-page-content{padding:15px 14px 22px}.booking-page-content>strong{font-size:1.2rem}.booking-times{padding:14px}.booking-browser-bar{padding:8px 10px}.booking-browser-bar svg{display:none}.booking-times-heading{gap:7px}.booking-times-heading>svg{width:19px;height:19px}.booking-success.glass-surface{padding:13px;gap:9px}.booking-success>svg{width:25px;height:25px}}
@media(max-width:600px){.partners-section{padding:48px 0}.partners-intro{display:block}.partners-intro h2{font-size:2.6rem;margin-bottom:20px}.partners-intro>p:last-child{max-width:310px}.partners-layout{gap:30px}.partner-portraits{grid-template-columns:1fr;gap:22px}.partner-portrait-link{display:grid;grid-template-columns:40% minmax(0,1fr);gap:22px;align-items:center}.partner-photo{aspect-ratio:4/4.6}.partner-detail{padding:0 20px 0 0}.partner-detail h3{font-size:1.5rem;margin-top:12px}.partner-organisation{min-height:0;font-size:.75rem}.partner-caption{font-size:.8125rem}.partner-arrow{top:auto;bottom:0;font-size:1.4rem}}
@media(max-width:480px){.booking-journey{inset:8% 4% 5% 42%}.booking-page{width:91%}.booking-page-content{padding:13px 13px 20px}.booking-page-content>strong{font-size:1.125rem;margin:8px 0 12px}.booking-kicker{font-size:.75rem}.booking-browser-bar{padding:7px 10px;font-size:.75rem}.booking-browser-bar>svg{display:none}.booking-times{padding:13px}.booking-times-heading{gap:7px}.booking-times-heading>svg{width:18px;height:18px}.booking-times-heading>strong{font-size:.875rem}.booking-slots{margin:12px 0 10px;gap:6px;font-size:.8125rem}.booking-slots>span{padding:7px 3px;gap:3px}.booking-confirm-action{padding:9px 8px;font-size:.8125rem}.booking-success.glass-surface{padding:12px;gap:8px;margin-left:-6%;width:100%}.booking-success>svg{width:25px;height:25px}.booking-success strong{font-size:.9375rem}.booking-success div>span{font-size:.75rem}}
@media(max-width:360px){.booking-journey{inset:7% 4% 5% 43%}.booking-page-content{padding:11px 10px 17px}.booking-page-content>strong{font-size:1rem}.booking-kicker{font-size:.75rem;letter-spacing:-.035em}.booking-times{padding:10px}.booking-times-heading>svg{display:none}.booking-confirm-action{font-size:.75rem}.booking-success.glass-surface{padding:10px 9px}.booking-success>svg{width:21px;height:21px}.booking-success strong{font-size:.875rem}.booking-success div>span{font-size:.75rem}.partner-portrait-link{gap:16px}.partner-detail h3{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.partner-photo img,.partner-arrow{transition:none}.partner-portrait-link:hover .partner-photo img{transform:none}}

.booking-journey>div{flex-shrink:0}
.partner-photo img[src$="partner-nicole.jpg"]{object-position:50% 0}
@media(max-width:480px){.booking-kicker{display:none}}
@media(max-width:360px){.scene-websites,.scene-websites.is-active{aspect-ratio:.78}.booking-page-action{font-size:.8125rem}.booking-browser-bar>span:first-child{display:none}.booking-browser-bar{justify-content:center}}
@media(max-width:360px){.booking-success div>span{display:none}}
