/* TS24 London global header/footer, independent of homepage-specific classes. */
:root{--tlgl-navy:#142746;--tlgl-navy-deep:#0e203a;--tlgl-blue:#2657c9;--tlgl-aqua:#49d7bc;--tlgl-border:#e1e8f1}
.tlgl-utility,.tlgl-header,.tlgl-footer{box-sizing:border-box;font-family:Inter,Arial,Helvetica,sans-serif}
.tlgl-utility *,.tlgl-header *,.tlgl-footer *{box-sizing:border-box}
.tlgl-shell{width:min(1190px,calc(100% - 56px));margin-inline:auto}
.tlgl-skip{position:absolute;z-index:99999;left:-10000px;top:5px;padding:10px;background:#fff;color:#132c52;border:2px solid var(--tlgl-blue)}
.tlgl-skip:focus{left:10px}
.tlgl-utility{background:var(--tlgl-navy-deep);color:#d2dff1;font-size:12px;letter-spacing:.015em}
.tlgl-utility .tlgl-shell{display:flex;gap:18px;min-height:38px;justify-content:space-between;align-items:center}
.tlgl-utility-left{display:inline-flex;align-items:center;gap:9px}
.tlgl-pulse{display:inline-block;flex:none;width:7px;height:7px;background:var(--tlgl-aqua);border-radius:50%;box-shadow:0 0 0 4px rgba(73,215,188,.15)}
.tlgl-utility-right{color:#a9c0da}.tlgl-utility-right span{padding:0 8px;color:#4ed7bd}
.tlgl-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,.975);border-bottom:1px solid #e3e9f2;box-shadow:0 5px 24px rgba(15,39,73,.055);backdrop-filter:blur(14px)}
body.admin-bar .tlgl-header{top:32px}
.tlgl-header-row{display:flex;justify-content:space-between;align-items:center;gap:26px;min-height:88px}
.tlgl-header a,.tlgl-footer a{text-decoration:none!important}
.tlgl-brand{display:inline-flex;align-items:center;gap:12px;color:#142746;white-space:nowrap;flex:none}
.tlgl-mark{width:52px;height:51px;border-radius:12px;background:#1b3d80;position:relative;display:inline-flex;justify-content:center;align-items:center;color:#fff;box-shadow:0 6px 15px #1e396c21}
.tlgl-mark b{font-size:20px;letter-spacing:-.06em;font-weight:900;position:absolute;top:7px;left:8px;line-height:1.2}
.tlgl-mark em{font-size:17px;font-style:normal;color:#fff;font-weight:900;position:absolute;right:6px;bottom:3px;line-height:1.2}
.tlgl-mark i{width:5px;height:5px;border-radius:50%;background:var(--tlgl-aqua);position:absolute;right:7px;top:7px}
.tlgl-wordmark{font-size:22px;font-weight:850;letter-spacing:-.055em;line-height:1.08}
.tlgl-wordmark strong{font-weight:850;color:var(--tlgl-blue)}
.tlgl-wordmark small{display:block;margin-top:6px;font-size:8.3px;letter-spacing:.105em;font-weight:750;color:#72849e}
.tlgl-nav{display:flex;align-items:center;justify-content:flex-end;flex:1;min-width:0}
.tlgl-nav-links{display:flex;list-style:none;gap:23px;align-items:center;padding:0;margin:0}
.tlgl-nav-links li{list-style:none;margin:0;padding:0;position:relative}
.tlgl-nav-links a{display:block;color:#243958;font-size:13px;font-weight:750;line-height:1.4;white-space:nowrap;padding:10px 0}
.tlgl-nav-links a:hover,.tlgl-nav-links a:focus-visible{color:var(--tlgl-blue)}
.tlgl-nav-links .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:210px;background:white;padding:10px 17px;box-shadow:0 12px 34px #112d5430;border:1px solid #e9eef5;border-radius:8px;list-style:none}
.tlgl-nav-links li:hover>.sub-menu,.tlgl-nav-links li:focus-within>.sub-menu{display:block}
.tlgl-header-actions{display:flex;align-items:center;gap:10px}
.tlgl-cta,.tlgl-mobile-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--tlgl-blue);color:white!important;border-radius:8px;padding:14px 19px;font-weight:850;font-size:13px;white-space:nowrap;box-shadow:0 9px 20px #2657c923}
.tlgl-cta:hover,.tlgl-mobile-cta:hover{background:#1b45ad;color:white!important}
.tlgl-mobile-cta,.tlgl-menu-button{display:none}
.tlgl-header a:focus-visible,.tlgl-footer a:focus-visible,.tlgl-menu-button:focus-visible{outline:3px solid var(--tlgl-aqua);outline-offset:4px}
.tlgl-footer{background:#101f37;color:#b6c7e0;position:relative;padding:73px 0 0;overflow:hidden}
.tlgl-footer-stroke{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1d4192 0%,#3976d9 58%,#49d7bc 100%)}
.tlgl-footer-grid{display:grid;grid-template-columns:1.27fr .92fr .70fr 1.15fr;gap:47px;align-items:start;padding-bottom:55px}
.tlgl-brand-light .tlgl-wordmark{color:white}.tlgl-brand-light .tlgl-wordmark strong{color:#91b7ff}.tlgl-brand-light .tlgl-wordmark small{color:#96abc8}
.tlgl-footer-brand>p{font-size:13px;line-height:1.85;color:#a9bad3;max-width:300px;margin:22px 0 22px}
.tlgl-footer-region{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:12px;color:#b8d3ed}
.tlgl-footer-col h2{margin:8px 0 19px;color:white;font-size:14px;font-weight:850;letter-spacing:-.012em}
.tlgl-footer-col ul{list-style:none!important;margin:0;padding:0}
.tlgl-footer-col li{margin:0 0 12px;padding:0;list-style:none!important}
.tlgl-footer-col a{color:#b0c3da;font-size:12.5px;line-height:1.6;font-weight:550}
.tlgl-footer-col a:hover{color:#fff}
.tlgl-footer-card{border:1px solid #36506f;border-radius:13px;background:linear-gradient(145deg,#213b67,#1a3055);padding:26px 25px 25px;box-shadow:0 16px 38px #07183024}
.tlgl-card-kicker{font-size:10px;font-weight:900;letter-spacing:.14em;color:#8ee6d2;display:flex;justify-content:space-between;align-items:center}
.tlgl-card-kicker span{font-size:20px;font-weight:400}
.tlgl-footer-card h2{color:#fff;font-family:Manrope,Inter,Arial,sans-serif;font-size:24px;line-height:1.2;letter-spacing:-.04em;margin:21px 0 10px;font-weight:850}
.tlgl-footer-card p{font-size:12px;line-height:1.85;color:#c0cde0;margin:0 0 22px}
.tlgl-card-cta{background:#4acdb6;display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-radius:8px;color:#0f2b46!important;font-size:12px;font-weight:850;gap:10px}
.tlgl-card-cta:hover{background:#74e5d0;color:#092039!important}
.tlgl-footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;border-top:1px solid #2b3e5a;padding:21px 0 23px;font-size:11px;color:#94a9c5}
.tlgl-legal{display:flex;gap:16px}.tlgl-legal:empty{display:none}
.tlgl-footer-bottom a{color:#c2d5ee;font-size:11px}
.tlgl-footer-bottom a:hover{color:#fff}
.tlgl-top-link{white-space:nowrap}
.tlgl-unavailable{padding:100px 25px;text-align:center}
/* Prevent the existing homepage's typography from escaping its dedicated content wrapper. */
.tl-site--integrated{width:100%;clear:both}
@media(max-width:1180px){.tlgl-nav-links{gap:13px}.tlgl-nav-links a{font-size:12px}.tlgl-header-row{gap:15px}.tlgl-footer-grid{gap:27px}}
@media(max-width:960px){.tlgl-menu-button{display:flex;width:44px;height:43px;align-items:center;justify-content:center;flex-direction:column;gap:5px;background:white;border:1px solid #dfe7f1;border-radius:9px;cursor:pointer;padding:0}.tlgl-menu-button span{height:2px;width:20px;background:var(--tlgl-navy);border-radius:2px}.tlgl-header-row{min-height:76px}.tlgl-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid #e0e8f3;box-shadow:0 15px 24px #0924451b;padding:11px max(28px,calc((100vw - 1190px)/2)) 24px;max-height:calc(100vh - 115px);overflow-y:auto}.tlgl-nav.tlgl-open{display:block}.tlgl-nav-links{display:block}.tlgl-nav-links li{display:block}.tlgl-nav-links a{font-size:14px;padding:13px 6px;border-bottom:1px solid #e9eef5}.tlgl-nav-links .sub-menu{position:static;display:block;background:transparent;box-shadow:none;border:0;padding:3px 0 3px 15px}.tlgl-mobile-cta{display:flex;margin-top:15px}.tlgl-cta{display:none}.tlgl-footer-grid{grid-template-columns:1.1fr 1fr 1fr;gap:35px}.tlgl-footer-card{grid-column:1 / -1;max-width:450px}}
@media(max-width:782px){body.admin-bar .tlgl-header{top:46px}}
@media(max-width:690px){.tlgl-shell{width:calc(100% - 36px)}.tlgl-utility .tlgl-shell{min-height:35px;justify-content:center;text-align:center}.tlgl-utility-left{font-size:10px}.tlgl-utility-right{display:none}.tlgl-header-row{min-height:73px}.tlgl-mark{width:44px;height:44px;border-radius:10px}.tlgl-mark b{font-size:18px}.tlgl-mark em{font-size:15px}.tlgl-wordmark{font-size:19px}.tlgl-wordmark small{font-size:7px}.tlgl-footer{padding-top:55px}.tlgl-footer-grid{grid-template-columns:1fr 1fr;gap:32px 22px;padding-bottom:34px}.tlgl-footer-brand,.tlgl-footer-card{grid-column:1 / -1}.tlgl-footer-card{max-width:none}.tlgl-footer-bottom{gap:14px}.tlgl-footer-bottom>span{width:100%}}
@media(max-width:390px){.tlgl-wordmark{font-size:17px}.tlgl-wordmark small{font-size:6.4px}.tlgl-brand{gap:9px}}
@media(prefers-reduced-motion:reduce){.tlgl-header,.tlgl-footer{scroll-behavior:auto}}
