.pfh{--o:#F26B1D;--ink:#1d1d1f;--mut:#5b5b60;--line:#e9e6df;--warm:#faf8f5;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.5}
.pfh *,.pfh *::before,.pfh *::after{box-sizing:border-box}
.pfh img{max-width:100%;height:auto;display:block}
.pfh a{text-decoration:none;color:inherit}
.pfh ul{list-style:none;margin:0;padding:0}
.pfh-wrap{max-width:1360px;margin:0 auto;padding:0 clamp(20px,4.5vw,64px)}
.pfh h1,.pfh .pfh-h2{font-family:'Bricolage Grotesque',system-ui,sans-serif;letter-spacing:-.03em;margin:0;color:var(--ink)}
.pfh h1{font-size:clamp(40px,6vw,72px);line-height:1.02;font-weight:700;max-width:14em}
.pfh-h2{font-size:clamp(30px,3.6vw,44px);line-height:1.08;font-weight:700}
.pfh-h2--sm{font-size:clamp(22px,2.4vw,28px)}
.pfh-h2--light{color:#fff!important}
.pfh-eyebrow{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--o);margin:0 0 14px}
.pfh-sub{font-size:19px;color:var(--mut);max-width:40em;margin:18px 0 36px}
.pfh-hero{padding:clamp(40px,6vw,80px) 0 clamp(48px,6vw,80px)}
/* visualiser */
.pfh-viz{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:stretch}
.pfh-stage{position:relative;border-radius:24px;overflow:hidden;background:#e9e6df;min-height:360px}
.pfh-stage img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:opacity .25s ease}
.pfh-stage img.is-fading{opacity:0}
.pfh-cap{position:absolute;left:18px;bottom:18px;margin:0;background:rgba(255,255,255,.95);padding:9px 15px;border-radius:9px;font-size:13px;font-weight:500}
.pfh-panel{display:flex;flex-direction:column;gap:26px}
.pfh-label{font-family:inherit;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#77777c;margin:0 0 12px}
.pfh-pills{display:flex;flex-wrap:wrap;gap:10px}
.pfh-pill{font:inherit;font-weight:700;font-size:15px;padding:12px 20px;min-height:44px;border-radius:999px;border:2px solid #d9d9dc;background:#fff;color:var(--ink);cursor:pointer;transition:all .15s}
.pfh-pill:hover{border-color:var(--ink)}
.pfh-pill[aria-pressed=true]{background:var(--o);border-color:var(--o);color:#fff}
.pfh-tones{display:flex;flex-wrap:wrap;gap:12px}
.pfh-tone{width:60px;height:60px;padding:0;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #cfcfd2;background:#eee;overflow:hidden;cursor:pointer}
.pfh-tone img{width:100%;height:100%;object-fit:cover}
.pfh-tone[aria-pressed=true]{box-shadow:0 0 0 3px var(--o)}
.pfh-tone:focus-visible,.pfh-pill:focus-visible,.pfh-btn:focus-visible{outline:3px solid #1d1d1f;outline-offset:3px}
.pfh-toneName{margin:10px 0 0;font-size:14px;color:var(--mut)}
.pfh-chips{display:flex;flex-wrap:wrap;gap:8px}
.pfh-chips li{border:1px solid var(--line);background:var(--warm);border-radius:10px;padding:9px 13px;font-size:14px;font-weight:500}
.pfh-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto}
.pfh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 28px;border-radius:999px;font-weight:700;font-size:15px;text-align:center;transition:transform .15s,background .15s}
.pfh-btn:hover{transform:translateY(-1px)}
.pfh-btn--solid{background:var(--o);color:#fff!important}
.pfh-btn--solid:hover{background:#d95a10}
.pfh-btn--line{border:2px solid var(--ink)}
.pfh-btn--ghost{border:2px solid rgba(255,255,255,.7);color:#fff!important}
/* bands */
.pfh-band{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:48px 0}
.pfh-band--plain{background:#fff;border-top:0}
.pfh-logos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-top:24px}
.pfh-logos li{background:#fff;border:1px solid var(--line);border-radius:14px;height:96px;display:flex;align-items:center;justify-content:center;padding:14px}
.pfh-logos img{max-height:64px;width:auto;max-width:100%;object-fit:contain;filter:grayscale(1);opacity:.85;transition:filter .2s,opacity .2s}
.pfh-logos li:hover img{filter:none;opacity:1}
.pfh-logos--clients{grid-template-columns:repeat(6,minmax(0,1fr))}
.pfh-logos--clients li{border:0;background:transparent;height:80px}
/* sections */
.pfh-sec{padding:clamp(56px,7vw,96px) 0 clamp(16px,3vw,40px)}
.pfh-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:36px}
.pfh-more{font-weight:700;color:var(--o)}
.pfh-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
.pfh-cat{display:block}
.pfh-cat-img{display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:#e9e6df}
.pfh-cat-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.pfh-cat:hover .pfh-cat-img img{transform:scale(1.04)}
.pfh-cat-t{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:24px;font-weight:700;letter-spacing:-.02em;margin-top:14px}
.pfh-cat-d{display:block;color:var(--mut);margin-top:2px}
.pfh-feature{padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(20px,3vw,40px)}
.pfh-feature-in{background:#1d1d1f;color:#fff;border-radius:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden}
.pfh-feature-txt{padding:clamp(32px,5vw,72px);display:flex;flex-direction:column;gap:18px;justify-content:center;align-items:flex-start}
.pfh-feature-txt p{margin:0;color:#cfcfd2;font-size:17px;max-width:30em}
.pfh-feature-img{min-height:320px;position:relative;background:#3a3a3d}
.pfh-feature-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pfh-projects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pfh-projects figure{margin:0;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:#e9e6df}
.pfh-projects img{width:100%;height:100%;object-fit:cover}
.pfh-cta{padding-top:clamp(24px,4vw,48px);padding-bottom:clamp(56px,7vw,96px)}
.pfh-cta-in{background:var(--warm);background:#1d1d1f;color:#fff;border-radius:24px;padding:clamp(32px,5vw,64px);display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.pfh-cta-in p{margin:12px 0 0;color:#cfcfd2;font-size:18px;max-width:34em}
.pfh-cta .pfh-actions{margin-top:0}
@media (max-width:1100px){.pfh-logos{grid-template-columns:repeat(5,minmax(0,1fr))}.pfh-logos--clients{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){
.pfh-viz{grid-template-columns:1fr}
.pfh-stage{min-height:0;aspect-ratio:4/3}
.pfh-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
.pfh-feature-in{grid-template-columns:1fr}
.pfh-projects{grid-template-columns:repeat(2,minmax(0,1fr))}
.pfh-logos{grid-template-columns:repeat(3,minmax(0,1fr))}.pfh-logos--clients{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:560px){.pfh-cats{grid-template-columns:1fr}.pfh-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-btn{width:100%}}
@media (prefers-reduced-motion:reduce){.pfh *{transition:none!important}}

body.pfh-on .elementor-widget[class*="elementor-element-a544788"]{display:none!important}

.pfh-feature-in.pfh-solo{grid-template-columns:1fr}

.pfh-cols{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pfh-col{width:34px;height:34px;padding:0;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #cfcfd2;background:#fff;cursor:pointer;display:grid;place-items:center}
.pfh-col i{display:block;width:100%;height:100%;border-radius:50%}
.pfh-col--all{width:auto;padding:0 14px;border-radius:999px;font:600 13px 'DM Sans',sans-serif;color:#1d1d1f;height:34px}
.pfh-col[aria-pressed=true]{box-shadow:0 0 0 3px var(--o)}
.pfh-col:focus-visible{outline:3px solid #1d1d1f;outline-offset:3px}
.pfh-count{font-weight:500;color:var(--mut);letter-spacing:0;text-transform:none}
.pfh-on .pfh-col{width:36px !important;height:36px !important;min-width:0 !important;padding:3px !important;border:2px solid #fff !important;border-radius:50% !important;background:#fff !important;box-shadow:0 0 0 1px #cfcfd2 !important;line-height:0}
.pfh-on .pfh-col i{display:block;width:100% !important;height:100% !important;border-radius:50%}
.pfh-on .pfh-col--all{width:auto !important;padding:0 16px !important;border-radius:999px !important;line-height:1;font:600 13px 'DM Sans',sans-serif !important;color:#1d1d1f !important}
.pfh-on .pfh-col[aria-pressed=true]{box-shadow:0 0 0 3px #F26B1D !important}

.pfh-feature-img{display:grid;place-items:center;padding:clamp(16px,2.5vw,32px)}
.pfh-feature-img img{position:static !important;inset:auto !important;width:100% !important;height:auto !important;max-height:380px;object-fit:contain !important;border-radius:8px}
.pfh-proj{position:relative;display:block;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:#e9e6df;text-decoration:none;color:#fff}
.pfh-proj img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.pfh-proj:hover img,.pfh-proj:focus-visible img{transform:scale(1.04)}
.pfh-proj-cap{position:absolute;inset:auto 0 0 0;padding:56px 18px 18px;display:flex;flex-direction:column;gap:4px;background:linear-gradient(to top,rgba(15,15,17,.86),rgba(15,15,17,0))}
.pfh-proj-cap strong{font:700 20px 'Bricolage Grotesque',sans-serif}
.pfh-proj-cap span{font-size:14px;line-height:1.4;color:#e6e6e8}
.pfh-proj-cap em{font-style:normal;font-weight:700;font-size:14px;color:#ffb07a;margin-top:4px}
.pfh-proj:focus-visible{outline:3px solid #F26B1D;outline-offset:3px}

.pfh-more{color:#F26B1D;font-weight:700;text-decoration:none}
.pfh-stock-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pfh-stock-card{display:block;background:#fff;border:1px solid #ece6da;border-radius:16px;overflow:hidden;text-decoration:none;color:#1d1d1f;transition:box-shadow .2s}
.pfh-stock-card:hover{box-shadow:0 10px 30px rgba(0,0,0,.1)}
.pfh-stock-img{display:block;aspect-ratio:4/3;background:#e9e6df}.pfh-stock-img img{width:100%;height:100%;object-fit:cover;display:block}
.pfh-stock-b{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px}.pfh-stock-b strong{font:700 17px 'Bricolage Grotesque',sans-serif}
.pfh-stock-q{display:flex;align-items:center;gap:8px;font-size:14px;color:#3a3a3d}.pfh-stock-q i{width:9px;height:9px;border-radius:50%;background:#2e9e6b;display:block}
@media(max-width:900px){.pfh-stock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
