/* MBC London: stage one, from the supplied logobook. */
@font-face{font-family:Audiowide;src:url('/assets/Audiowide.woff2') format('woff2');font-weight:400;font-display:swap}
body{background:#000}.site-header{background:#000}.location{font-family:Audiowide,Arial,sans-serif}
.london-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:5.3%;align-items:start;padding-top:68px;padding-bottom:62px}
.london-eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#d8d8d8}
.london-dot{width:7px;height:7px;background:#f80026;display:inline-block}
.london-title{font-size:clamp(36px,4.75vw,69px);line-height:1.07;letter-spacing:-.055em;margin:29px 0 25px;font-weight:650;text-wrap:initial}
.london-title em{font-style:normal;color:#f80026}
.london-copy{font-size:15px;line-height:1.8;color:#c4c4c4;max-width:510px;margin:0}
.london-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:33px}
.london-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:0;background:#f80026;color:#fff;padding:20px 24px;font-size:12px;font-weight:650;min-height:60px;line-height:1.5}
.london-primary:hover{background:#d90022}.london-arrow{font-size:20px;line-height:1}
.london-link{font-size:12px;border-bottom:1px solid #777;padding:7px 0}
.london-note{font-size:10px;color:#a8a8a8;margin-top:13px}
.london-portrait{position:relative;background:#191919;margin:0}
.london-portrait img{display:block;width:100%;height:390px;object-fit:cover;object-position:50% 35%;filter:grayscale(1)}
.london-portrait-label{position:absolute;left:20px;top:18px;font-family:Audiowide,Arial,sans-serif;letter-spacing:.08em;font-size:12px;background:#000;padding:7px 11px}
.london-portrait figcaption{padding:20px 23px;border-left:4px solid #f80026;display:flex;justify-content:space-between;align-items:center;gap:15px}
.london-person{font-size:17px;font-weight:600}.london-role{font-size:11px;color:#b7b7b7;margin-top:3px}
.london-person-arrow{font-size:31px;color:#f80026}
.london-topics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #333;border-bottom:1px solid #333;padding-block:23px;gap:20px;margin-bottom:40px}
.london-topics article{display:flex;gap:15px;padding-right:19px;border-right:1px solid #333}
.london-topics article:last-child{border:0}.london-num{font-family:Audiowide,Arial,sans-serif;font-size:11px;color:#f80026;padding-top:4px}
.london-topics h2{font-size:13px;font-weight:600;line-height:1.5;letter-spacing:0;margin:0 0 5px}.london-topics p{font-size:11px;color:#aaa;margin:0}
.london-first{background:#101012;color:#f5f5f7;padding:64px 0}.london-first .london-eyebrow{color:#b8b8bd}
.london-first-heading{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:36px}
.london-first h2{font-size:clamp(28px,3.25vw,44px);font-weight:600;line-height:1.15;letter-spacing:-.04em}
.london-first-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.london-first-step{border-top:1px solid #3a3a3f;padding-top:20px}.london-first-step h3{font-size:17px;line-height:1.5;font-weight:600;margin:18px 0 10px;letter-spacing:-.02em}.london-first-step p{font-size:13px;color:#bfc0c7;line-height:1.8}
.london-official-contact{padding:28px;border:1px solid #444}.london-official-contact p{margin-bottom:22px;color:#ccc}
@media(max-width:980px){.london-hero{padding-top:45px;gap:5%}.london-title{font-size:43px}.london-copy{font-size:13px}.london-portrait img{height:350px}.london-portrait figcaption{padding:15px}.london-person{font-size:14px}.london-actions{gap:17px}.london-primary{font-size:11px;padding:18px}.london-topics{gap:15px}.london-topics article{padding-right:10px;gap:9px}}
@media(max-width:640px){.london-hero{grid-template-columns:1fr;gap:37px;padding-block:37px}.london-title{font-size:clamp(36px,9.7vw,57px);margin-top:21px}.london-copy{font-size:13px;max-width:100%}.london-actions{margin-top:25px}.london-portrait img{height:340px;object-position:center 33%}.london-portrait figcaption{padding:18px}.london-person{font-size:17px}.london-topics{grid-template-columns:1fr;padding-block:7px;gap:0}.london-topics article{border-right:0;border-bottom:1px solid #333;padding:17px 0;gap:15px}.london-first{padding-block:37px}.london-first-heading{grid-template-columns:1fr;gap:16px}.london-first-steps{grid-template-columns:1fr;gap:28px}.london-first-step h3{margin:10px 0 6px}}
/* One hero: message and compact moving portrait wall. */
.london-hero-split{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:36px;align-items:center;min-height:min(720px,calc(100svh - 96px));max-width:1600px;margin:auto;padding:26px 0 28px 5.5%;overflow:hidden}
.london-hero-message{padding-block:24px}
.london-hero-split .london-dot{width:25px;height:2px;flex:none}
.london-hero-split .london-eyebrow{font-size:10px;letter-spacing:.08em}
.london-hero-split .london-title{font-size:clamp(54px,6.15vw,96px);font-weight:800;line-height:1.09;margin:27px 0 25px;letter-spacing:-.055em}
.london-hero-split .london-copy{font-size:clamp(15px,1.45vw,20px);line-height:1.7;color:#c7c7c7;max-width:440px}
.london-hero-split .london-actions{margin-top:30px}
.london-people{min-width:0;overflow:hidden;position:relative;padding-block:4px}
.london-people-ribbons{mask-image:linear-gradient(to right,transparent,#000 5%,#000 96%,transparent)}
.london-people-viewport{overflow:hidden;margin-bottom:9px}
.london-people-track{display:flex;width:max-content;animation:london-ribbon 95s linear infinite;will-change:transform}
.london-people-track.row-2,.london-people-track.row-4{animation-direction:reverse;animation-duration:110s}
.london-people-track.row-3{animation-duration:105s}
.london-people-group{display:flex;gap:9px;padding-right:9px}
.london-member-card{width:clamp(130px,11.5vw,174px);height:clamp(116px,10.35vw,154px);flex:none;position:relative;overflow:hidden;border:1px solid #333;border-radius:8px;background:#222}
.london-member-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.65)}
.london-member-card::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,#0003 40%,#000e 100%);pointer-events:none}
.london-member-caption{position:absolute;bottom:9px;left:10px;right:7px;z-index:1}
.london-member-caption .london-member-name{font-size:11px;font-weight:750;line-height:1.2;letter-spacing:-.02em;margin:0 0 4px}
.london-member-caption p{font-size:9px;color:#ddd;line-height:1.3;margin:0}
.london-people-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 24px 0 12px;color:#7e7e7e;font-size:9px}
.london-motion-toggle{background:none;border:0;color:#aaa;padding:6px 0;font-size:9px;white-space:nowrap;cursor:pointer}.london-motion-toggle:hover{color:#fff}
.london-people:hover .london-people-track,.london-people:focus-within .london-people-track,.london-people.is-paused .london-people-track{animation-play-state:paused}
@keyframes london-ribbon{to{transform:translateX(-50%)}}
@media(min-width:1600px){.london-hero-split{padding-left:60px}}
@media(max-width:980px) and (min-width:701px){.london-hero-split{gap:25px;padding-left:4%;min-height:580px}.london-hero-split .london-title{font-size:58px}.london-hero-split .london-eyebrow{font-size:8px}.london-hero-split .london-copy{font-size:15px}.london-member-card{width:123px;height:120px}}
@media(max-width:980px){.london-hero-split{display:block;min-height:0;padding:20px 0 13px}.london-hero-message{padding:12px 6% 25px;text-align:center}.london-hero-split .london-eyebrow{justify-content:center;font-size:8px}.london-hero-split .london-title{font-size:clamp(44px,13.5vw,74px);margin:20px 0 16px}.london-hero-split .london-copy{font-size:14px;line-height:1.6;max-width:430px;margin:auto}.london-hero-split .london-actions{justify-content:center;margin-top:21px}.london-primary{min-height:50px;padding:14px 18px}.london-member-card{width:108px;height:105px}.london-member-caption{bottom:7px;left:7px}.london-member-caption .london-member-name{font-size:9px}.london-member-caption p{font-size:8px}.london-people-viewport{margin-bottom:7px}.london-people-group{gap:7px;padding-right:7px}.london-people-viewport:nth-child(n+3){display:none}.london-people-tools{font-size:8px;padding-inline:6%}.london-motion-toggle{font-size:8px}}
@media(prefers-reduced-motion:reduce){.london-people-track{animation:none;will-change:auto}.london-people-group[aria-hidden]{display:none}.london-people-viewport{overflow-x:auto}.london-motion-toggle{display:none}}

.london-hero-split .london-title{white-space:nowrap}

/* First-screen refinements and contextual application CTA. */
.london-city-accent{color:#f80026;font-weight:inherit}
.london-hero-split .london-eyebrow{font-size:14px;line-height:1.6;letter-spacing:.08em}
.london-floating-cta{position:fixed;right:28px;bottom:28px;z-index:90;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:19px 24px;background:#f80026;color:#fff;font-size:13px;font-weight:700;box-shadow:0 8px 32px #0008}
.london-floating-cta:hover{background:#d90022}.london-floating-cta[hidden]{display:none}
@media(max-width:980px){.london-hero-split .london-eyebrow{font-size:12px}}
@media(max-width:640px){.london-hero-split .london-eyebrow{font-size:10px;letter-spacing:.05em}.london-floating-cta{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:16px 20px;font-size:12px}}

.london-network p{font-size:15px;font-weight:700;max-width:300px}.london-network p>span{display:block;color:#aaa;font-size:12px;font-weight:500;margin-top:4px}
.london-network .city-links{gap:6px 23px}.london-global-link small{font-size:10px;color:#aaa;font-weight:400}.london-global-link>span{color:#f80026}
@media(max-width:980px){.london-network>.wrap{flex-direction:column;align-items:flex-start;gap:14px}.london-network .city-links{justify-content:flex-start}}

.london-facts h2,.london-founders h2{font-size:clamp(34px,4vw,56px);line-height:1.12;letter-spacing:-.045em;font-weight:800;margin:18px 0 36px}
.london-facts-grid{display:grid;grid-template-columns:.8fr 1fr 1.3fr;gap:32px;border-top:1px solid #333;padding-top:30px}
.london-facts-grid strong{display:block;font-size:clamp(62px,7vw,96px);font-weight:800;letter-spacing:-.06em;line-height:1.1;color:#f80026}
.london-facts-grid p{font-size:17px;font-weight:600;margin:16px 0 14px;max-width:230px}.london-facts-grid small{display:block;font-size:12px;color:#aaa;line-height:1.9;max-width:350px}
.london-founders-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}.london-founders-grid article{background:#141414;border:1px solid #303030;overflow:hidden;border-radius:8px}
.london-founders-grid img{display:block;width:100%;height:360px;object-fit:cover;object-position:center 30%}.london-founders-grid article>div{padding:22px 24px 26px}.london-founders-grid p{color:#aaa;font-size:12px;margin:0 0 9px}.london-founders-grid h3{font-size:20px;line-height:1.4;font-weight:700;margin:0}
@media(max-width:700px){.london-facts-grid{grid-template-columns:1fr;gap:25px}.london-facts-grid article{border-bottom:1px solid #292929;padding-bottom:24px}.london-facts-grid p{max-width:none;margin:8px 0}.london-facts-grid strong{font-size:64px}.london-founders-grid{grid-template-columns:1fr}.london-founders-grid img{height:auto;max-height:390px}.london-founders-grid h3{font-size:18px}}

.london-facts-grid{grid-template-columns:.7fr .95fr 1.2fr 1.05fr;gap:26px}
.london-facts-grid strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.london-facts-requests strong{font-size:clamp(35px,3.4vw,52px);letter-spacing:-.045em;padding-top:10px;min-height:1.95em}
@media(max-width:980px){.london-facts-grid{grid-template-columns:1fr 1fr;gap:32px}.london-facts-requests strong{font-size:44px;min-height:1.55em}}
@media(max-width:700px){.london-facts-grid{grid-template-columns:1fr}.london-facts-requests strong{padding-top:0;min-height:0;font-size:48px}}
/* Club facts: a balanced 2 × 2 composition with quiet data graphics. */
.london-facts-v2{padding-block:80px}
.facts-heading{display:flex;justify-content:space-between;align-items:baseline;flex-direction:row-reverse;margin-bottom:32px}
.facts-heading h2{font-size:clamp(36px,4.3vw,60px);font-weight:800;line-height:1.1;letter-spacing:-.045em;margin:0}
.facts-heading .london-eyebrow{margin:0;color:#888}
.facts-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fact-card{position:relative;overflow:hidden;min-height:260px;padding:28px 32px;background:linear-gradient(125deg,#171719,#0d0d0f);border:1px solid #2b2b2e;border-radius:14px;transition:border-color .3s,transform .3s;isolation:isolate}
.fact-card:hover{border-color:#f8002670;transform:translateY(-3px)}
.fact-card:after{content:'';position:absolute;width:180px;height:180px;right:-65px;top:-90px;border-radius:50%;background:#f8002612;filter:blur(34px);z-index:-1}
.fact-index{font-size:10px;letter-spacing:.12em;color:#737378;font-weight:600}
.fact-content{position:relative;z-index:1;margin-top:20px}
.fact-value{display:flex;align-items:baseline;height:97px;color:#fff;font-size:84px;line-height:1.08;letter-spacing:-.055em;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}
.fact-card-3 .fact-value{font-size:58px;padding-top:22px}
.fact-label{font-size:15px;font-weight:500;line-height:1.55;max-width:290px;min-height:47px;margin:8px 0 0;color:#c8c8cc}
.fact-graphic{position:absolute;right:24px;top:39px;width:145px;height:114px;color:#f80026;opacity:.5;z-index:0}
.graphic-1 circle,.graphic-2 circle{fill:currentColor;stroke:none;animation:fact-pulse 4s ease-in-out infinite;animation-delay:var(--delay)}
.graphic-2>circle:first-child{fill:none;stroke:currentColor;opacity:.4}.graphic-2 path{opacity:.35}
.graphic-0 line{opacity:.4}.fact-path{stroke-dasharray:180;animation:fact-draw 4s ease-in-out infinite}
.fact-flow{stroke-dasharray:4 9;animation:fact-stream 4s linear infinite;animation-delay:var(--delay)}
.facts-countries{display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:start;padding:25px 0 0}
.facts-countries>p{font-size:11px;color:#888;line-height:2.8;margin:0}.facts-countries>div{display:flex;gap:8px;flex-wrap:wrap}
.facts-countries span{display:inline-flex;align-items:center;gap:8px;border:1px solid #29292d;padding:7px 12px;border-radius:30px;font-size:10px;color:#c2c2c5;line-height:1.4}.facts-countries span:before{content:'';width:3px;height:3px;background:#f80026;border-radius:50%}
.london-facts-v2.facts-observed .fact-card{opacity:0;transform:translateY(20px);transition:opacity .7s var(--card-delay),transform .7s var(--card-delay),border-color .3s}
.london-facts-v2.facts-observed.is-visible .fact-card{opacity:1;transform:translateY(0)}
@keyframes fact-pulse{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes fact-stream{to{stroke-dashoffset:-52}}
@keyframes fact-draw{0%,100%{stroke-dashoffset:180;opacity:.3}50%,75%{stroke-dashoffset:0;opacity:1}}
@media(min-width:1400px){.fact-card{min-height:280px}.fact-value{font-size:94px;height:108px}.fact-card-3 .fact-value{font-size:66px;padding-top:22px}.fact-graphic{width:180px;right:40px;top:40px}}
@media(max-width:980px){.fact-card{padding:24px;min-height:250px}.fact-graphic{width:105px;right:12px;top:35px;opacity:.35}.fact-value{font-size:70px;height:87px}.fact-card-3 .fact-value{font-size:45px;padding-top:22px}.fact-label{font-size:13px;max-width:240px}.facts-countries{grid-template-columns:1fr;gap:10px}.london-facts-v2{padding-block:56px}}
@media(max-width:600px){.facts-heading{display:block;margin-bottom:25px}.facts-heading .london-eyebrow{margin-bottom:15px}.facts-heading h2{font-size:34px}.facts-mosaic{grid-template-columns:1fr;gap:12px}.fact-card{min-height:225px;padding:23px 25px}.fact-value{font-size:72px;height:88px}.fact-card-3 .fact-value{font-size:49px;padding-top:20px}.fact-graphic{width:135px;top:35px;right:22px}.fact-label{max-width:240px;font-size:14px;margin-top:7px}.facts-countries span{padding:7px 10px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.fact-graphic *{animation:none!important}.fact-card,.london-facts-v2.facts-observed .fact-card{opacity:1;transform:none;transition:none}.fact-path{stroke-dashoffset:0}}

/* Forum geography belongs to the forum metric. */
.fact-card-2 .facts-countries{display:block;padding-top:17px}
.fact-card-2 .facts-countries>div{gap:6px}
.fact-card-2 .facts-countries span{font-size:10px;padding:6px 10px}
@media(max-width:600px){.fact-card-2 .facts-countries{padding-top:16px}.fact-card-2 .facts-countries span{font-size:9px;padding:6px 9px}}

/* Separate portraits for each founder and the local partner. */
.london-founders-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.london-founders-grid .founder-photo{padding:0;position:relative;aspect-ratio:4/5;overflow:hidden;background:#181818}
.london-founders-grid .founder-photo img{position:absolute;display:block;max-width:none;width:250%;height:auto;max-height:none;object-fit:initial;top:0}
.london-founders-grid .founder-maxim img{left:-47.5%}
.london-founders-grid .founder-veronika img{left:-112.5%;top:-18%}
.london-founders-grid .founder-iryna img{width:100%;height:100%;inset:0;object-fit:cover;object-position:center 25%}
.london-founders-grid .founder-caption{padding:22px 24px 25px}
.london-founders-grid .founder-caption h3{font-size:19px;line-height:1.4}
@media(max-width:980px){.london-founders-grid{gap:16px}.london-founders-grid .founder-caption{padding:18px 16px}.london-founders-grid .founder-caption h3{font-size:16px}.london-founders-grid .founder-caption p{font-size:10px}}
@media(max-width:700px){.london-founders-grid{grid-template-columns:1fr;gap:20px}.london-founders-grid .founder-photo{aspect-ratio:4/4.5}.london-founders-grid .founder-caption{padding:20px}.london-founders-grid .founder-caption h3{font-size:20px}.london-founders-grid .founder-caption p{font-size:12px}}
.london-founders-grid .founder-maxim img{width:300%;left:-67%}
.london-founders-grid .founder-veronika img{width:300%;left:-145%;top:-30%}

.london-first h2,.london-first-step h3{color:#f5f5f7}
/* Constrain document width; horizontal scrolling belongs only to local carousels. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}}
main{min-width:0;max-width:100%}
#how.london-first{position:relative;overflow:hidden}
.reviews-circles .reviews-track{overscroll-behavior-x:contain;max-width:100%}
@media(max-width:980px){.reviews-circles .reviews-track{width:100%;margin-inline:0;padding-left:0;padding-right:0}}

/* Facts need no introductory heading; keep their descriptions readable. */
.london-facts-v2{padding-block:56px}
.fact-label{font-size:18px;line-height:1.55;max-width:340px;min-height:56px}
@media(max-width:980px){.fact-label{font-size:16px;max-width:290px;min-height:50px}}
@media(max-width:600px){.london-facts-v2{padding-block:40px}.fact-label{font-size:16px;line-height:1.6;max-width:270px;min-height:0}}

/* Task-led membership benefits: six readable scenarios and quiet line graphics. */
.london-benefits{background:#0c0c0e;color:#f5f5f7;padding:86px 0 54px;border-block:1px solid #202023;position:relative;overflow:hidden}
.benefits-heading{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:48px;margin-bottom:38px}
.benefits-heading .london-eyebrow{font-size:12px;letter-spacing:.13em;color:#b8b8bd;margin-bottom:20px}
.benefits-heading h2{font-size:clamp(34px,4.3vw,58px);font-weight:800;line-height:1.09;letter-spacing:-.045em;color:#f5f5f7;margin:0}
.benefits-intro{font-size:16px;line-height:1.65;color:#a9a9b0;max-width:330px;margin:0 0 4px}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #303034;border-radius:18px;overflow:hidden;background:#121215;gap:1px}
.benefit-scenario{position:relative;padding:26px 30px 25px;background:#111113;display:flex;flex-direction:column;min-width:0;box-shadow:0 0 0 1px #303034;transition:background .3s}
.benefit-scenario:first-child{background:radial-gradient(ellipse at 100% 0,rgba(248,0,38,.1),transparent 75%),#111113}
.benefit-art{width:80px;height:80px;color:#f80026;margin-bottom:18px;opacity:.85}
.benefit-art svg{display:block;width:100%;height:100%}
.benefit-scenario h3{font-size:25px;line-height:1.2;letter-spacing:-.025em;font-weight:700;margin:0 0 16px;color:#f5f5f7}
.benefit-scenario p{font-size:14px;line-height:1.7;color:#bdbdc4;margin:0 0 24px;max-width:330px}
.benefit-format{font-size:10px;letter-spacing:.055em;color:#84848c;border-top:1px solid #2a2a2e;padding-top:15px;margin-top:auto;line-height:1.5}
.benefit-trace{stroke-dasharray:180;stroke-dashoffset:180;animation:benefit-draw 6s ease-in-out infinite}
.benefit-scenario:nth-child(2n) .benefit-trace{animation-delay:-2s}.benefit-scenario:nth-child(3n) .benefit-trace{animation-delay:-4s}
@keyframes benefit-draw{0%,8%{stroke-dashoffset:180;opacity:.3}40%,80%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:-180;opacity:.3}}
@media(hover:hover){.benefit-scenario:hover{background:#19191d}.benefit-scenario:hover .benefit-art{opacity:1}}
.benefits-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:27px}
.benefits-bottom p{font-size:18px;font-weight:600;margin:0;color:#f5f5f7}
.benefits-link{display:inline-flex;align-items:center;gap:25px;color:#f5f5f7;font-size:14px;font-weight:600;text-decoration:none;padding:10px 0;border-bottom:1px solid #f80026}
.benefits-link span{color:#f80026;font-size:22px;line-height:1}
@media(max-width:980px){.benefits-heading{grid-template-columns:1.4fr 1fr;gap:25px}.benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.benefit-scenario h3{font-size:24px}}
@media(max-width:600px){.london-benefits{padding:46px 0 32px}.benefits-heading{grid-template-columns:1fr;gap:17px;margin-bottom:25px}.benefits-heading .london-eyebrow{font-size:10px;margin-bottom:17px}.benefits-heading h2{font-size:33px}.benefits-intro{font-size:13px;max-width:320px}.benefits-grid{grid-template-columns:1fr;border-radius:14px}.benefit-scenario{padding:23px 22px 21px}.benefit-art{position:absolute;top:20px;right:18px;width:57px;height:57px;opacity:.65}.benefit-scenario h3{font-size:24px;line-height:1.18;padding-right:52px;margin-bottom:14px}.benefit-scenario p{font-size:13px;line-height:1.7;margin-bottom:18px;max-width:none}.benefit-format{font-size:9px;padding-top:12px}.benefits-bottom{align-items:flex-start;flex-direction:column;gap:9px;padding-top:24px}.benefits-bottom p{font-size:17px}.benefits-link{font-size:13px}}
@media(prefers-reduced-motion:reduce){.benefit-trace{animation:none;stroke-dashoffset:0}.benefit-scenario{transition:none}}

/* The request headline stands on its own, without introductory or closing copy. */
.benefits-heading{display:block}

/* Eight London residents, four originals per ribbon. Text sits below each portrait. */
.london-residents{container-type:inline-size}
.london-residents .london-people-group{gap:12px;padding-right:12px}
.london-residents .london-people-viewport{margin-bottom:16px}
.london-residents .london-people-track{animation-duration:45s}
.london-residents .row-2{animation-duration:50s}
.london-residents .london-member-card{width:calc((100cqw - 48px)/4);height:auto;background:#141416;border-radius:9px;display:flex;flex-direction:column}
.london-residents .london-member-card::after{display:none}
.london-residents .london-member-card img{height:auto;aspect-ratio:4/4.6;object-fit:cover;object-position:center 25%;filter:none}
.london-residents .london-member-caption{position:static;padding:8px 9px 9px;min-height:0}
.london-residents .london-member-caption .london-member-name{font-size:12px;line-height:1.3;color:#fff;margin:0 0 6px;overflow-wrap:anywhere}
.london-residents .london-member-caption p{font-size:10px;line-height:1.45;color:#bbbcc3;overflow-wrap:anywhere}
@media(max-width:980px){.london-residents .london-member-card{width:150px}.london-residents .london-member-caption{min-height:0}.london-residents .london-people-ribbons{mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}}

/* Individual organizer portraits replace crops of the shared photograph. */
.london-founders-grid .founder-maxim img,.london-founders-grid .founder-veronika img{width:100%;height:100%;inset:0;object-fit:cover;object-position:center 25%}

/* Keep the third resident ribbon visible at every breakpoint. */
.london-residents .london-people-viewport:nth-child(3){display:block}
.london-residents .row-3{animation-duration:48s}

/* Let every resident card end after its text instead of stretching to the longest caption. */
.london-residents .london-people-group{align-items:flex-start}
.london-residents .london-member-caption .london-member-name{margin-bottom:4px}

/* The app overview uses the existing real iPhone projection and a supplied screenshot. */
.overview-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 65%,#4c10171c,transparent 60%);padding-block:85px 65px}.overview-heading h2{margin-bottom:42px}.overview-map{display:grid;grid-template-columns:minmax(0,1fr) 350px minmax(0,1fr);gap:16px;align-items:center;min-height:590px}.overview-phone{position:relative;width:350px;height:550px;margin:0;isolation:isolate;filter:drop-shadow(10px 20px 16px #0007)}.overview-plane{position:absolute;left:0;top:0;width:700px;height:1100px;transform:scale(.5);transform-origin:0 0;z-index:0}.overview-screen{position:absolute;left:0;top:0;width:720px;height:1564px;max-width:none;object-fit:fill;border-radius:84px;transform-origin:0 0;backface-visibility:hidden;transform:matrix3d(0.543855480862,-0.0867780490753,0,-0.000106572610112,0.014792309155,0.599885505091,0,-1.55739074175e-05,0,0,1,0,112.969798598,83.0606071825,0,1);background:#eeeee9}.overview-frame{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none;z-index:1}.overview-side{list-style:none;margin:0;padding:0;display:grid;--overview-row:76px;height:calc(7 * var(--overview-row));grid-template-rows:repeat(7,minmax(0,1fr));align-items:center}.overview-side li{display:flex;align-items:center;gap:16px;min-width:0}.overview-left li{justify-content:flex-end}.overview-right li{flex-direction:row-reverse;justify-content:flex-end}.overview-label{font-size:14px;line-height:1.55;font-weight:500;max-width:240px}.overview-left .overview-label{text-align:right}.overview-label small{display:inline-block;font-size:9px;line-height:1.4;font-weight:500;letter-spacing:.3px;color:#f77d91;border:1px solid #f8002640;border-radius:20px;padding:3px 7px;margin-left:7px;vertical-align:middle}.overview-leader{position:relative;display:block;width:70px;flex:0 0 70px;height:1px;background:linear-gradient(90deg,#ffffff20,#f8002680)}.overview-leader:after{content:'';position:absolute;width:5px;height:5px;right:-2px;top:-2px;border-radius:50%;background:var(--red)}.overview-right .overview-leader{transform:rotate(180deg)}
@media(max-width:1100px) and (min-width:801px){.overview-map{grid-template-columns:minmax(0,1fr) 300px minmax(0,1fr);gap:8px}.overview-phone{width:300px;height:471.4286px}.overview-plane{transform:scale(.4285714286)}.overview-label{font-size:12px}.overview-leader{width:35px;flex-basis:35px}.overview-side li{gap:10px}.overview-side{--overview-row:70px}}
@media(max-width:800px){.overview-section{padding-block:60px 45px}.overview-map{grid-template-columns:minmax(0,1fr) 250px minmax(0,1fr);gap:0;min-height:490px}.overview-phone{width:250px;height:392.8571px}.overview-plane{transform:scale(.3571428571)}.overview-side{--overview-row:65px}.overview-side li{gap:9px}.overview-label{font-size:12px}.overview-leader{width:25px;flex-basis:25px}.overview-label small{font-size:8px;margin:3px 0 0;display:table}}
@media(max-width:560px){.overview-heading h2{font-size:35px;letter-spacing:-1.6px;margin-bottom:26px}.overview-map{grid-template-columns:minmax(0,1fr) 170px minmax(0,1fr);min-height:445px}.overview-phone{width:170px;height:267.1429px}.overview-plane{transform:scale(.2428571429)}.overview-side{--overview-row:67px}.overview-label{font-size:10px;line-height:1.5;overflow-wrap:normal;hyphens:auto}.overview-side li{gap:5px}.overview-leader{width:10px;flex-basis:10px}.overview-label small{font-size:7px;padding:2px 5px}.overview-right .overview-label{max-width:100px}}
@media(max-width:370px){.overview-map{grid-template-columns:minmax(0,1fr) 145px minmax(0,1fr)}.overview-phone{width:145px;height:227.8571px}.overview-plane{transform:scale(.2071428571)}.overview-label{font-size:9px}.overview-leader{width:7px;flex-basis:7px}.overview-side li{gap:4px}}
/* Use the frame's transparent margins to keep the phone legible between mobile labels. */
@media(max-width:560px){.overview-phone{width:230px;height:361.4286px;margin-left:-30px}.overview-plane{transform:scale(.3285714286)}}
@media(max-width:370px){.overview-phone{width:200px;height:314.2857px;margin-left:-27.5px}.overview-plane{transform:scale(.2857142857)}}

.overview-right{grid-template-rows:repeat(8,minmax(0,1fr))}

/* Larger overview labels, with enough space for long feature names. */
.overview-label{font-size:19px;line-height:1.5}.overview-label small{font-size:11px}.overview-side{--overview-row:88px}.overview-leader{width:48px;flex-basis:48px}
@media(max-width:1100px) and (min-width:801px){.overview-label{font-size:16px}.overview-leader{width:24px;flex-basis:24px}.overview-side{--overview-row:85px}}
@media(max-width:800px){.overview-label{font-size:15px}.overview-side{--overview-row:85px}.overview-leader{width:18px;flex-basis:18px}.overview-label small{font-size:10px}}
@media(max-width:560px){.overview-map{grid-template-columns:minmax(0,1fr) 130px minmax(0,1fr)}.overview-label{font-size:13px;line-height:1.5}.overview-side{--overview-row:92px}.overview-side li{gap:5px}.overview-leader{width:9px;flex-basis:9px}.overview-phone{width:190px;height:298.5714px;margin-left:-30px}.overview-plane{transform:scale(.2714285714)}.overview-label small{font-size:9px;padding:3px 5px}.overview-right .overview-label{max-width:none}}
@media(max-width:370px){.overview-map{grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr)}.overview-label{font-size:12px}.overview-side{--overview-row:96px}.overview-side li{gap:4px}.overview-leader{width:7px;flex-basis:7px}.overview-phone{width:170px;height:267.1429px;margin-left:-30px}.overview-plane{transform:scale(.2428571429)}}

/* Mobile overview: generous word-wrapped labels above and below a central iPhone. */
.overview-label{hyphens:none;word-break:normal;overflow-wrap:normal}
@media(max-width:800px){
 .overview-map{display:flex;flex-direction:column;gap:30px;min-height:0;position:relative;padding-block:10px}
 .overview-side{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 10px;height:auto;min-height:0;width:100%;max-width:620px;position:relative;z-index:1}
 .overview-side li,.overview-left li,.overview-right li{display:block;flex:0 1 auto;max-width:100%;padding:11px 15px;border:1px solid #ffffff28;border-radius:24px;background:#111;min-width:0}
 .overview-label,.overview-left .overview-label,.overview-right .overview-label{display:block;max-width:none;text-align:center;font-size:15px;line-height:1.5;hyphens:none;word-break:normal;overflow-wrap:normal;text-wrap:pretty}
 .overview-leader{display:none}.overview-label small{display:inline-block;font-size:10px;margin:0 0 0 7px;vertical-align:middle}
 .overview-left{order:0}.overview-phone{order:1;flex:none;width:310px;height:487.1429px;margin:0;max-width:none;isolation:isolate}
 .overview-phone:before{content:'';position:absolute;inset:20% -8% 15%;border:1px solid #f8002624;border-radius:50%;transform:rotate(-18deg);z-index:-1}
 .overview-phone:after{content:'';position:absolute;inset:30% -15% 25%;border:1px solid #ffffff12;border-radius:50%;transform:rotate(22deg);z-index:-1}
 .overview-plane{transform:scale(.4428571429)}.overview-right{order:2}.overview-heading h2{margin-bottom:30px}
}
@media(max-width:520px){.overview-side{gap:10px 8px}.overview-side li{padding:10px 13px}.overview-label,.overview-left .overview-label,.overview-right .overview-label{font-size:14px}.overview-phone{width:285px;height:447.8571px;margin:0}.overview-plane{transform:scale(.4071428571)}.overview-map{gap:22px}.overview-heading h2{font-size:35px;line-height:1.12}}
@media(max-width:370px){.overview-side li{padding:10px 12px}.overview-label,.overview-left .overview-label,.overview-right .overview-label{font-size:14px}.overview-phone{width:250px;height:392.8571px}.overview-plane{transform:scale(.3571428571)}}
@media(max-width:800px){.overview-section{overflow:clip}}



/* London app overview inherits the club typography and colors. */
.overview-section{--line:#29292d;--red:#f80026;color:#f5f5f7;background-color:#0b0b0d}
.overview-heading h2{font-size:clamp(32px,4.1vw,56px);line-height:1.12;font-weight:800;letter-spacing:-.04em;color:#f5f5f7;margin:0 0 40px}
.overview-label{color:#dddde2}
@media(max-width:600px){.overview-heading h2{font-size:32px;line-height:1.15}.overview-section{padding-block:45px 35px}}

/* One shared caption height, measured across all three rows, including wrapped text. */
.london-residents .london-member-caption{min-height:var(--resident-caption-height,112px)}

/* A three-step joining route, with curved arrows drawn as the visitor scrolls. */
.london-join-path{padding:72px 0;background:#0e0e11}
.london-join-path h2{font-size:clamp(32px,4.2vw,56px);font-weight:800;margin:0 0 45px}
.join-stages{list-style:none;padding:0;margin:0 0 32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.join-stage{position:relative;min-width:0}
.join-stage-number{width:54px;height:54px;display:grid;place-items:center;border:1px solid #f8002660;border-radius:50%;background:#1c1015;color:#f80026;font-size:17px;font-weight:600}
.join-stage-copy{padding:27px 0 0}
.join-stage h3{font-size:23px;line-height:1.25;letter-spacing:-.025em;color:#f5f5f7;margin:0 0 14px;font-weight:700;max-width:270px}
.join-stage p{font-size:14px;line-height:1.75;color:#bfc0c7;margin:0;max-width:310px}
.join-curve{position:absolute;pointer-events:none;fill:none;stroke:#f80026;stroke-width:1.8;overflow:visible}
.join-curve-wide{top:0;left:69px;width:calc(100% - 55px);height:70px}
.join-curve-tall{display:none}
.join-curve path{stroke-linecap:round;stroke-linejoin:round}
.join-path-motion .join-curve path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s ease}
.join-path-motion .join-stage.is-visible .join-curve path{stroke-dashoffset:0}
@media(max-width:700px){
 .london-join-path{padding-block:44px}
 .london-join-path h2{font-size:34px;margin-bottom:30px}
 .join-stages{grid-template-columns:1fr;gap:0;margin-bottom:24px}
 .join-stage{display:grid;grid-template-columns:44px minmax(0,1fr);gap:20px;padding-bottom:38px}
 .join-stage:last-child{padding-bottom:0}
 .join-stage-number{width:44px;height:44px;font-size:14px}
 .join-stage-copy{padding:7px 0 0}
 .join-stage h3{font-size:21px;margin-bottom:11px;max-width:none}
 .join-stage p{font-size:13px;line-height:1.7;max-width:none}
 .join-curve-wide{display:none}
 .join-curve-tall{display:block;left:0;top:54px;width:44px;height:calc(100% - 67px)}
}
@media(prefers-reduced-motion:reduce){.join-path-motion .join-curve path{stroke-dashoffset:0;transition:none}}

/* Draw the connector first, then reveal its arrowhead at the next stage. */
.join-curve-wide{width:calc(100% - 30px);left:66px}
.join-path-motion .join-curve .join-arrow-line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s ease var(--arrow-delay,0s)}
.join-path-motion .join-curve .join-arrow-head{stroke-dasharray:none;stroke-dashoffset:0;opacity:0;transition:opacity .2s ease calc(var(--arrow-delay,0s) + 1.05s)}
.join-path-motion .join-stage.is-visible .join-arrow-line{stroke-dashoffset:0}
.join-path-motion .join-stage.is-visible .join-arrow-head{opacity:1}
.join-stage-number{transition:background .3s,border-color .3s,box-shadow .3s}
.join-stage.is-reached .join-stage-number{background:#f80026;color:#fff;border-color:#f80026;box-shadow:0 0 24px #f8002628}
@media(prefers-reduced-motion:reduce){.join-path-motion .join-curve .join-arrow-line{stroke-dashoffset:0;transition:none}.join-path-motion .join-curve .join-arrow-head{opacity:1;transition:none}.join-stage-number{transition:none}}

/* Keep dash lengths in the same SVG coordinate system as the curve. */
.join-path-motion .join-stage.is-drawn .join-arrow-line{stroke-dasharray:none;stroke-dashoffset:0;transition:none}

/* Membership delivery: a real club photo and four editable, readable groups. */
.london-membership{padding:72px 0;background:#111113;border-block:1px solid #29292d;color:#f5f5f7}
.london-membership h2{font-size:clamp(34px,4.3vw,58px);line-height:1.1;letter-spacing:-.04em;font-weight:800;color:#f5f5f7;margin:0 0 36px}
.membership-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:52px;align-items:start}
.membership-layout figure{margin:0;position:sticky;top:110px}
.membership-layout figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 65%;border-radius:16px;display:block}
.membership-layout figcaption{font-size:11px;line-height:1.5;color:#92929b;margin-top:12px}
.membership-format{border-top:1px solid #39393f;padding:0}
.membership-format summary{display:flex;gap:20px;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;padding:22px 0}
.membership-format summary::-webkit-details-marker{display:none}
.membership-format summary h3{font-size:21px;font-weight:700;line-height:1.3;margin:0;color:#f5f5f7;letter-spacing:-.025em}
.membership-format summary span{color:#f80026;font-size:24px;transition:transform .2s}
.membership-format[open] summary span{transform:rotate(45deg)}
.membership-format ul{list-style:none;margin:0;padding:0 0 22px;display:grid;gap:18px}
.membership-format li{border-left:2px solid #f80026;padding-left:16px}
.membership-format h4{font-size:15px;font-weight:600;line-height:1.4;margin:0 0 6px;color:#eeeef2}
.membership-format li p{font-size:13px;line-height:1.7;margin:0;color:#b7b7c0;max-width:460px}
.membership-conditions{font-size:12px;line-height:1.65;color:#9c9ca6;border-top:1px solid #39393f;margin:0;padding-top:20px}
@media(max-width:800px){.london-membership{padding:44px 0}.membership-layout{grid-template-columns:1fr;gap:27px}.membership-layout figure{position:static}.london-membership h2{font-size:34px;margin-bottom:25px}.membership-layout figure img{aspect-ratio:3/2}.membership-format summary{padding:18px 0}.membership-format summary h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.membership-format summary span{transition:none}}
.london-residents .london-member-caption .london-member-name{font-size:12px;font-weight:750;color:#fff;line-height:1.3;margin:0 0 4px}
