/* Landing film overlay */
.pf-intro{position:fixed;inset:0;z-index:2147483000;background:#08130f;display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .6s ease;font-family:"Public Sans",system-ui,sans-serif;color:#fff}
.pf-intro.is-leaving{opacity:0;pointer-events:none}
.pf-intro.is-entering{opacity:0}
html.pf-intro-open,html.pf-intro-open body{overflow:hidden}

.pf-stage{position:relative;width:min(100vw,calc(100dvh * 16 / 9));aspect-ratio:16/9;max-height:100dvh}
.pf-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;background:#08130f}

/* Clickable area over the "Make an enquiry" button in the film's end card */
.pf-hotspot{position:absolute;left:31.5%;top:56.6%;width:37%;height:9.6%;display:block;border-radius:4px;opacity:0;visibility:hidden;transition:opacity .4s ease,box-shadow .2s ease;cursor:pointer;outline:none}
.pf-intro.is-endcard .pf-hotspot{opacity:1;visibility:visible;animation:pf-pulse 2.4s ease-out 1s infinite}
.pf-hotspot:hover,.pf-hotspot:focus-visible{box-shadow:0 0 0 3px #4EDD9B,0 0 28px rgba(78,221,155,.45);animation:none}
@keyframes pf-pulse{0%{box-shadow:0 0 0 0 rgba(78,221,155,.55)}70%{box-shadow:0 0 0 14px rgba(78,221,155,0)}100%{box-shadow:0 0 0 0 rgba(78,221,155,0)}}

/* Top bar */
.pf-bar{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:clamp(14px,2.4vw,28px) clamp(16px,3vw,36px);background:linear-gradient(to bottom,rgba(8,19,15,.55),rgba(8,19,15,0));pointer-events:none}
.pf-bar>*{pointer-events:auto}
.pf-btn{appearance:none;display:inline-flex;align-items:center;gap:10px;font:inherit;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(14,28,23,.55);border:1px solid rgba(255,255,255,.28);padding:11px 18px;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .2s ease,border-color .2s ease,color .2s ease;text-decoration:none;border-radius:0}
.pf-btn:hover{background:rgba(14,28,23,.85);border-color:#4EDD9B;color:#4EDD9B}
.pf-btn:focus-visible{outline:3px solid #4EDD9B;outline-offset:2px}
.pf-btn svg{width:16px;height:16px;flex:none}
.pf-btn--primary{background:#1B8F62;border-color:#1B8F62}
.pf-btn--primary:hover{background:#0F5E44;border-color:#4EDD9B;color:#fff}
.pf-sound{padding:11px 14px}
.pf-sound .pf-sound-label{display:inline}
@media (max-width:560px){.pf-sound .pf-sound-label{display:none}.pf-btn{font-size:12px;padding:10px 14px}}

/* End-of-film actions (shown under/over the video once the end card appears) */
.pf-actions{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:0 16px clamp(18px,3vw,34px);opacity:0;transform:translateY(8px);transition:opacity .5s ease,transform .5s ease;pointer-events:none}
.pf-actions{display:none}
/* Portrait / narrow screens: the film is small, so offer full-size buttons beneath it */
@media (max-aspect-ratio:4/3){.pf-actions{display:flex}.pf-intro.is-endcard .pf-actions{opacity:1;transform:none;pointer-events:auto}}

/* Progress */
.pf-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.12)}
.pf-progress span{display:block;height:100%;width:0;background:#4EDD9B;transition:width .25s linear}
.pf-intro.is-ended .pf-progress{opacity:0;transition:opacity .4s}

/* Play fallback when autoplay is blocked entirely */
.pf-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88px;height:88px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:rgba(27,143,98,.85);color:#fff;display:none;align-items:center;justify-content:center;cursor:pointer}
.pf-play svg{width:34px;height:34px;margin-left:5px}
.pf-intro.is-blocked .pf-play{display:flex}
.pf-play:focus-visible{outline:3px solid #4EDD9B;outline-offset:4px}

.pf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (prefers-reduced-motion:reduce){.pf-intro,.pf-actions,.pf-hotspot{transition:none}.pf-intro.is-endcard .pf-hotspot{animation:none}}
