.fph-page{background:#050505;color:#fff;overflow-x:clip;overflow-y:visible}.fph-page *{box-sizing:border-box}.fph-shell{width:min(1180px,88vw);margin:0 auto}.fph-kicker{display:block;color:#e31b23;font-size:12px;font-weight:900;letter-spacing:.17em;margin-bottom:14px}.fph-page h2{margin:0;color:#fff;font-size:clamp(38px,5vw,72px);line-height:.94;letter-spacing:-.045em;text-transform:uppercase}.fph-page p{color:#aaa;line-height:1.75}.fph-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border:1px solid #e31b23;border-radius:999px;color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:900;letter-spacing:.12em;transition:.25s ease}.fph-btn:hover,.fph-btn--solid{background:#e31b23}.fph-btn--solid:hover{background:#fff;border-color:#fff;color:#000!important}@keyframes fphZoom{from{transform:scale(1)}to{transform:scale(1.07)}}
.fph-intro{padding:110px 0}.fph-intro__grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.fph-intro p:first-child{margin-top:0;font-size:19px;color:#d0d0d0}.fph-uses{padding:10px 0 120px}.fph-use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}.fph-use-card{position:relative;min-height:270px;padding:30px;border:1px solid #232323;border-radius:18px;background:linear-gradient(145deg,#111,#090909);box-shadow:0 18px 50px rgba(0,0,0,.28);transition:.3s ease;overflow:hidden}.fph-use-card:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:#e31b23;transform:scaleX(0);transform-origin:left;transition:.3s}.fph-use-card:hover{transform:translateY(-7px);border-color:#3a3a3a}.fph-use-card:hover:after{transform:scaleX(1)}.fph-use-card b{color:#e31b23;font-size:12px;letter-spacing:.16em}.fph-use-card h3{font-size:24px;line-height:1;margin:60px 0 14px}.fph-use-card p{margin:0;font-size:14px}.fph-tracks{padding:110px 0;background:#0a0a0a;border-top:1px solid #181818;border-bottom:1px solid #181818}.fph-section-head{display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:end}.fph-section-head>p{margin:0 0 4px}.fph-track-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:52px}.fph-track-tab{appearance:none;border:1px solid #282828;background:#111;color:#fff;border-radius:12px;padding:15px 12px;min-height:76px;text-align:left;font:inherit;font-size:12px;font-weight:900;letter-spacing:.08em;cursor:pointer;transition:.2s}.fph-track-tab small{display:block;color:#777;font-size:9px;letter-spacing:.04em;margin-bottom:5px}.fph-track-tab:hover,.fph-track-tab.is-active{border-color:#e31b23;background:#171010}.fph-track-tab.is-active small{color:#e08a8d}.fph-track-stage{margin-top:18px}.fph-track-panel{display:none;grid-template-columns:.85fr 1.15fr;min-height:500px;background:#050505;border:1px solid #242424;border-radius:22px;overflow:hidden}.fph-track-panel.is-active{display:grid}.fph-track-copy{padding:58px}.fph-track-copy>span{color:#e31b23;font-size:11px;font-weight:900;letter-spacing:.15em}.fph-track-copy h3{font-size:clamp(42px,5vw,70px);line-height:.9;margin:14px 0 12px}.fph-track-copy strong{display:block;color:#fff;font-size:18px;margin-bottom:22px}.fph-track-copy p{margin-bottom:30px}.fph-track-map{display:grid;place-items:center;background:#fff;padding:34px}.fph-track-map img{max-width:100%;max-height:430px;object-fit:contain}.fph-process{padding:110px 0}.fph-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:52px}.fph-process-grid>div{border-top:1px solid #333;padding-top:24px}.fph-process-grid b{color:#e31b23}.fph-process-grid h3{font-size:22px;margin:28px 0 10px}.fph-process-grid p{margin:0}.fph-enquiry{padding:100px 0 120px;background:linear-gradient(145deg,#111,#070707)}.fph-enquiry__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.fph-enquiry__grid>div:first-child>a{color:#fff}.fph-form{background:#0a0a0a;border:1px solid #262626;border-radius:20px;padding:34px}.fph-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fph-form label{display:block;color:#aaa;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.fph-form input,.fph-form select,.fph-form textarea{width:100%;margin-top:8px;border:1px solid #303030;border-radius:10px;background:#111;color:#fff;padding:13px 14px;font:inherit}.fph-form textarea{resize:vertical}.fph-msg{padding:14px 16px;margin-bottom:16px;border:1px solid #8b3434;background:#2b1010;border-radius:10px;color:#fff}.fph-msg--ok{border-color:#2f7947;background:#102719}
@media(max-width:900px){.fph-use-grid{grid-template-columns:1fr 1fr}.fph-track-tabs{grid-template-columns:repeat(3,1fr)}.fph-track-panel,.fph-intro__grid,.fph-section-head,.fph-enquiry__grid{grid-template-columns:1fr}.fph-track-map{min-height:360px}.fph-enquiry__grid{gap:45px}}

.fph-statement{position:relative;min-height:560px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(145deg,#020202 0%,#090909 48%,#111 100%);border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),inset 0 -60px 120px rgba(0,0,0,.42)}
.fph-statement::before{content:"";position:absolute;inset:18px 22px;border:1px solid rgba(255,255,255,.045);border-radius:26px;pointer-events:none;box-shadow:0 30px 80px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.035)}
.fph-statement::after{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-220px;background:radial-gradient(circle,rgba(227,27,35,.16) 0%,rgba(227,27,35,.055) 34%,transparent 70%);filter:blur(4px);pointer-events:none}
.fph-statement__glow{position:absolute;border-radius:50%;filter:blur(10px);pointer-events:none}.fph-statement__glow--one{width:420px;height:420px;left:-180px;bottom:-220px;background:radial-gradient(circle,rgba(255,255,255,.07),transparent 68%)}.fph-statement__glow--two{width:280px;height:280px;right:18%;bottom:-190px;background:radial-gradient(circle,rgba(227,27,35,.07),transparent 72%)}
.fph-statement__grid{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(to right,rgba(0,0,0,.85),transparent 72%)}
.fph-statement__content{position:relative;z-index:2;padding-top:90px;padding-bottom:90px}
.fph-statement__content h1{margin:0 0 24px;color:#fff;font-size:clamp(54px,8vw,110px);line-height:.88;letter-spacing:-.055em;text-transform:uppercase;max-width:850px;text-shadow:0 10px 40px rgba(0,0,0,.55)}
.fph-statement__content p{max-width:620px;margin:0 0 30px;color:#d0d0d0;font-size:18px;line-height:1.65}
@media(max-width:620px){.fph-shell{width:min(100% - 40px,1180px)}.fph-intro,.fph-tracks,.fph-process,.fph-enquiry{padding:72px 0}.fph-use-grid,.fph-process-grid,.fph-form-grid{grid-template-columns:1fr}.fph-uses{padding-bottom:75px}.fph-use-card{min-height:220px}.fph-use-card h3{margin-top:42px}.fph-track-tabs{grid-template-columns:1fr 1fr}.fph-track-panel.is-active{display:flex;flex-direction:column-reverse}.fph-track-copy{padding:30px}.fph-track-map{min-height:280px;padding:20px}.fph-track-map img{max-height:250px}.fph-form{padding:22px}.fph-section-head{gap:25px}}@media(prefers-reduced-motion:reduce){.fph-hero__media{animation:none}.fph-use-card{transition:none}}
/* Refined Private Hire presentation */
.fph-hero{width:100vw;height:373px;min-height:373px;margin-left:calc(50% - 50vw);margin-top:-114px;position:relative;overflow:hidden;background:#080808}
.fph-hero__media{position:absolute;inset:-5%;background-size:135% auto;background-position:center;animation:fphHeroZoom 18s ease-in-out infinite alternate;will-change:transform}

.fph-use-card__icon{width:46px;height:46px;margin-bottom:24px;display:grid;place-items:center;border:1px solid rgba(227,27,35,.55);border-radius:12px;background:linear-gradient(145deg,rgba(227,27,35,.12),rgba(255,255,255,.02));box-shadow:inset 0 1px rgba(255,255,255,.05)}
.fph-use-card__icon svg{width:24px;height:24px;fill:none;stroke:#e31b23;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fph-use-card>b{display:none!important}
@media(max-width:620px){.fph-hero{height:300px;min-height:300px}.fph-hero__media{animation:fphHeroZoomMobile 18s ease-in-out infinite alternate}.fph-statement{min-height:500px}.fph-statement__content{padding-top:70px;padding-bottom:70px}.fph-statement__content h1{font-size:clamp(48px,16vw,72px)}}
@keyframes fphHeroZoom{from{transform:scale(1)}to{transform:scale(1.09)}}
@keyframes fphHeroZoomMobile{from{transform:scale(1.42)}to{transform:scale(1.56)}}
