/* London landing page. All rules scoped; no shared component behaviour changes. */
.london-page .london-hero {padding-top:32px;}
.london-page .london-hero h1 {font-size:clamp(2.5rem,3.8vw,3.8rem);max-width:660px;}
.london-page .london-hero .hero-intro {max-width:590px;}
.london-page .london-hero .hero-image img {height:clamp(400px,35vw,510px);}
.london-page .london-jump {display:flex;flex-wrap:wrap;gap:8px 26px;padding-block:20px;border-bottom:1px solid var(--line);font-size:.875rem;}
.london-page .london-jump > span {font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:auto;}
.london-page .london-jump a {min-height:44px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b1b1b1;}
.london-page .london-jump a:hover {text-decoration-color:var(--repair-accent);}
.london-page .london-split {display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,88px);align-items:start;}
.london-page .body-copy .eyebrow {font-size:.8125rem;line-height:1.6;}
.london-page .body-copy > .section-label {margin:0 0 25px;}
.london-page h3 {font-size:1.25rem;line-height:1.4;letter-spacing:-.015em;margin:0 0 16px;font-weight:650;}
.london-page .london-check-list {padding:0;margin:24px 0 16px;list-style:none;}
.london-page .london-check-list li {position:relative;padding:12px 0 12px 22px;border-top:1px solid var(--line);font-size:.9375rem;line-height:1.65;}
.london-page .london-check-list li::before {content:"";position:absolute;left:0;top:22px;width:6px;height:6px;background:var(--repair-accent);}
.london-page .london-callout {background:var(--charcoal);color:white;border-radius:12px;padding:clamp(26px,3vw,42px);}
.london-page .london-callout .eyebrow {color:#d2d2d2;margin-bottom:14px;}
.london-page .london-callout h3 {font-size:1.75rem;margin-bottom:8px;}
.london-page .london-callout-phone {display:inline-flex;align-items:center;min-height:48px;font-size:clamp(1.6rem,2.5vw,2rem);font-weight:650;text-decoration:underline;text-underline-offset:8px;text-decoration-color:var(--repair-accent);}
.london-page .london-callout > p:not(.eyebrow) {font-size:.9375rem;line-height:1.7;color:#e0e0e0;margin:18px 0 26px;}
.london-page .london-callout a:focus-visible {outline-color:white;}
.london-page .london-callout-steps {list-style:none;padding:0;margin:0;counter-reset:arrival;}
.london-page .london-callout-steps li {counter-increment:arrival;position:relative;padding:18px 0 18px 34px;border-top:1px solid #626262;}
.london-page .london-callout-steps li:last-child {padding-bottom:0;}
.london-page .london-callout-steps li::before {content:"0" counter(arrival);position:absolute;left:0;top:20px;color:#ffa657;font-size:.8125rem;}
.london-page .london-callout-steps strong {display:block;font-size:1rem;font-weight:600;margin-bottom:6px;}
.london-page .london-callout-steps span {display:block;font-size:.9375rem;line-height:1.65;color:#d5d5d5;}
.london-page .london-building-list {margin:0;}
.london-page .london-building-list > div {padding:22px 0;border-top:1px solid #c9c9c9;}
.london-page .london-building-list > div:first-child {padding-top:0;border-top:0;}
.london-page .london-building-list > div:last-child {padding-bottom:0;}
.london-page .london-building-list dt {display:flex;align-items:baseline;gap:20px;font-size:1.25rem;font-weight:600;}
.london-page .london-building-list dt span {color:#a44b00;font-size:.75rem;letter-spacing:.04em;font-weight:500;}
.london-page .london-building-list dd {font-size:.9375rem;line-height:1.75;color:var(--muted);margin:10px 0 0 36px;}
.london-page .london-links {display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;align-items:center;}
.london-page .london-cover {border:1px solid var(--line);border-radius:12px;padding:30px;}
.london-page .london-cover > h3 {font-size:1rem;margin-bottom:24px;}
.london-page .london-cover dl {margin:0;}
.london-page .london-cover dl > div {padding:20px 0;border-top:1px solid var(--line);}
.london-page .london-cover dt {font-size:1.25rem;font-weight:600;margin-bottom:8px;}
.london-page .london-cover dd {margin:0;font-size:.9375rem;line-height:1.75;color:var(--muted);}
.london-page .london-small,.london-page .body-copy p.london-small {font-size:.875rem;line-height:1.7;color:var(--muted);}
.london-page .london-cover .london-small {margin:4px 0 0;border-left:3px solid var(--repair-accent);padding-left:16px;}
.london-page .london-repair-intro {max-width:760px;}
.london-page .london-repair-grid {display:grid;grid-template-columns:1fr 1fr;gap:44px clamp(32px,6vw,88px);margin-top:40px;}
.london-page .london-repair-grid article {border-top:1px solid #c9c9c9;padding-top:24px;}
.london-page .london-repair-number {display:block;font-size:.8125rem;color:#a44b00;margin-bottom:16px;}
.london-page .london-repair-grid p {font-size:1rem;color:var(--muted);line-height:1.75;margin:16px 0;}
.london-page .london-repair-links {display:flex;flex-wrap:wrap;gap:0 24px;list-style:none;padding:0;margin:18px 0 0;}
.london-page .london-repair-links a {display:inline-flex;align-items:center;gap:10px;min-height:44px;padding-block:7px;font-size:.9375rem;line-height:1.6;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#8b8b8b;}
.london-page .london-repair-links a:hover {text-decoration-color:#a44b00;}
.london-page .london-repair-links svg {width:18px;height:18px;color:#a44b00;}
.london-page .london-repair-next {display:flex;align-items:center;justify-content:space-between;gap:24px 48px;border-top:1px solid var(--line);padding-top:28px;margin-top:36px;}
.london-page .london-repair-next p {font-size:1rem;color:var(--muted);line-height:1.75;margin:0;max-width:680px;}
.london-page .london-repair-next .button {flex-shrink:0;}
.london-page .london-reporting {align-items:center;}
.london-page .london-report-example {margin:0;border:1px solid var(--line);background:var(--surface);padding:24px;border-radius:12px;}
.london-page .london-report-example a {display:block;}
.london-page .london-report-example img {display:block;width:100%;height:auto;border:1px solid var(--line);box-shadow:0 6px 20px #3535350a;}
.london-page .london-report-example figcaption {display:flex;flex-direction:column;gap:6px;font-size:.8125rem;line-height:1.5;color:var(--muted);padding-top:18px;}
.london-page .london-report-example strong {font-weight:600;color:var(--ink);font-size:.9375rem;}
.london-page .london-equipment > p {font-size:1rem;color:var(--muted);line-height:1.75;}
.london-page .london-equipment > p.london-small {font-size:.875rem;}
.london-page .london-equipment ul {list-style:none;margin:20px 0 12px;padding:0;}
.london-page .london-equipment li {border-top:1px solid #c9c9c9;}
.london-page .london-equipment li a {display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px;min-height:48px;font-size:.9375rem;line-height:1.6;}
.london-page .london-equipment li a:hover {text-decoration:underline;text-underline-offset:4px;}
.london-page .london-equipment li svg {color:#a44b00;}
@media(max-width:1100px){.london-page .london-jump{gap:6px 22px;}.london-page .london-jump>span{flex-basis:100%;}.london-page .london-hero h1{font-size:2.75rem;}}
@media(max-width:800px){
 .london-page .london-split,.london-page .london-repair-grid{grid-template-columns:1fr;gap:32px;}
 .london-page .london-hero{padding-top:24px;}
 .london-page .london-hero h1{font-size:clamp(2.25rem,6vw,3.2rem);}
 .london-page .london-hero .hero-image img{height:auto;aspect-ratio:1.45;object-position:center 48%;}
 .london-page .london-building-list>div:first-child{border-top:1px solid var(--line);padding-top:22px;}
 .london-page .london-callout,.london-page .london-cover{padding:26px;}
 .london-page .london-report-example{padding:18px;}
 .london-page .london-repair-next{align-items:flex-start;flex-direction:column;}
}
@media(max-width:500px){
 .london-page .london-jump{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;}
 .london-page .london-jump>span{grid-column:1/-1;margin-bottom:4px;}
 .london-page .london-jump a{line-height:1.5;}
 .london-page .hero-actions{align-items:stretch;}
 .london-page .hero-actions .button{width:100%;}
 .london-page .capability-line{grid-template-columns:1fr;gap:12px;}
 .london-page .capability-line span{padding:0;text-align:left;}
 .london-page .capability-line span+span{border:0;}
 .london-page .london-links{align-items:flex-start;flex-direction:column;}
}
@media(max-width:370px){.london-page .london-hero h1{font-size:2rem;}.london-page .london-callout,.london-page .london-cover{padding:22px;}}
