.hero{overflow-x:clip;overflow-y:visible}
.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:42px;min-height:0;padding-top:24px;padding-bottom:30px}
.hero-copy,.hero-media{min-width:0}
.hero h1{font-size:clamp(38px,4.3vw,62px);letter-spacing:-2px;line-height:1.08;margin-bottom:18px}
.hero h1 span{font-size:.78em;line-height:1.2;letter-spacing:-1.2px}
.hero-copy>p{font-size:15px;line-height:1.6;margin-bottom:18px}
.hero .eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:14px}
.hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0 22px}
.hero-actions .programme-link{grid-column:1/-1}
.hero-actions .btn{min-height:44px;padding:10px 12px;font-size:12px;white-space:normal;text-align:center;line-height:1.35;gap:8px}
.hero-actions .btn svg{flex:none}
.hero-img{height:405px}
.float-a{left:12px;bottom:24px;padding:14px 16px}
.float-b{right:12px;top:24px;padding:15px 18px}
.float-b small{max-width:180px;font-size:10px}
.hero-metrics{gap:20px}
.hero-metrics strong{font-size:25px}
.strip-in{height:auto;min-height:50px;flex-wrap:wrap;padding:12px 0}
@media(max-width:850px){.hero-grid{grid-template-columns:minmax(0,1fr);padding:22px 0 24px;gap:28px}.hero h1{font-size:clamp(36px,7vw,54px)}.hero-copy>p{max-width:650px}.hero-media{width:100%;max-width:none}.hero-img{height:300px}.hero-stripe{margin-top:0}.hero-metrics{justify-content:flex-start}.hero .eyebrow{font-size:9px;letter-spacing:1px}.hero-actions .btn{width:auto}}
@media(max-width:580px){.hero h1{font-size:36px;letter-spacing:-1.5px}.hero-copy>p{font-size:13px}.hero-actions .btn{font-size:11px;min-height:42px;padding:9px 10px}.hero-metrics{gap:12px;justify-content:space-between}.hero-metrics div{padding-right:10px}.hero-metrics strong{font-size:20px}.hero-metrics small{font-size:10px}.hero-img{height:245px}.img-label{left:12px;right:12px;bottom:12px;padding:12px;font-size:8px;letter-spacing:.8px}.float-a{left:10px;bottom:52px;padding:10px}.float-a b{font-size:11px}.float-a small{font-size:9px}.float-b{right:10px;top:16px;padding:10px 12px}.float-b b{font-size:19px}.float-b small{max-width:145px;font-size:9px}.strip-in{gap:10px}.strip-in span{font-size:8px;letter-spacing:.7px}}
@media(min-width:851px) and (max-height:800px){.hero-grid{padding-top:18px;padding-bottom:24px}.hero h1{font-size:clamp(38px,3.8vw,55px)}.hero-img{height:365px}}
