:root{--lf-orange:var(--orange,#f97316);--lf-orange-dark:var(--orange-dark,#d95706);--lf-black:#0b0b0b;--lf-bg:#f3f0eb;--lf-text:#151515;--lf-muted:#625e58;--lf-line:#d8d1c8;--lf-shadow:0 28px 70px rgba(0,0,0,.18)}

/* HERO V2 */
.lf-hero{position:relative;overflow:hidden;background:#0b0b0b;color:#fff;border-bottom:1px solid #242424}
.lf-hero::after{content:"";position:absolute;right:-12vw;bottom:-20vw;width:48vw;height:48vw;border:1px solid rgba(249,115,22,.13);border-radius:50%;pointer-events:none}
.lf-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.94fr) minmax(430px,.86fr);gap:clamp(3rem,6vw,7rem);align-items:center;padding-top:clamp(10.5rem,13vw,12rem);padding-bottom:clamp(5rem,7vw,7rem)}
.lf-hero-copy{min-width:0}
.lf-hero h1{max-width:800px;margin:.65rem 0 1.4rem;color:#fff;font-size:clamp(3.7rem,6.1vw,6.55rem);line-height:.9;letter-spacing:-.057em}
.lf-hero-lead{max-width:730px;margin:0 0 1rem;color:#8f8882;font-size:clamp(1.45rem,2.1vw,2.05rem);font-weight:800;line-height:1.36}
.lf-hero-text{max-width:710px;margin:0;color:#d2d2d2;font-size:1.08rem;line-height:1.75}
.lf-hero .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:2rem}
.lf-hero-tags{display:flex;flex-wrap:wrap;gap:12px;margin:2.2rem 0 0;padding:0;list-style:none}
.lf-hero-tags li{padding:.7rem 1rem;border:1px solid #3a3a3a;border-radius:999px;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.lf-hero-media{position:relative;margin:0;padding:2rem 0 0 2rem;max-width:680px;justify-self:end}
.lf-hero-media>span{position:absolute;inset:0 2.3rem 2.7rem 0;border:4px solid var(--lf-orange)}
.lf-hero-media img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:0 35px 90px rgba(0,0,0,.48)}
.lf-hero-media figcaption{position:relative;z-index:2;width:min(90%,470px);margin:-5rem 0 0 auto;padding:1.45rem 1.55rem;background:#111;color:#fff;border-left:4px solid var(--lf-orange);box-shadow:0 20px 50px rgba(0,0,0,.36)}
.lf-hero-media figcaption strong,.lf-hero-media figcaption small{display:block}.lf-hero-media figcaption small{margin-top:.55rem;color:#bbb;line-height:1.55}

/* Shared bands fallback */
.service-trust{background:var(--lf-orange);color:#fff}.service-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.service-trust-grid>div{padding:1.45rem 1.55rem;border-right:1px solid rgba(255,255,255,.3)}.service-trust-grid>div:last-child{border-right:0}.service-trust-grid strong,.service-trust-grid span{display:block}.service-trust-grid strong{color:#fff}.service-trust-grid span{margin-top:.25rem;color:#fff2e9;font-size:.82rem}
.breadcrumb-band{margin:0;background:#111;border-top:1px solid #282828;border-bottom:1px solid #282828;color:#c9c9c9}.breadcrumb-inner{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;min-height:64px;font-size:.9rem;font-weight:700}.breadcrumb-inner a{color:#ff9b59;text-decoration:none}.breadcrumb-inner span[aria-current="page"]{color:#fff}

/* INTRO */
.lf-intro{background:var(--lf-bg)}
.lf-intro-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(3.5rem,7vw,8rem);align-items:center}
.lf-intro-copy h2{max-width:820px;margin:.65rem 0 1.65rem;font-size:clamp(3rem,5vw,5.3rem);line-height:.95;letter-spacing:-.052em}
.lf-intro-copy p{max-width:780px;color:var(--lf-muted);font-size:1.05rem;line-height:1.82}.lf-intro-copy .text-link{margin-top:1rem}
.lf-framed-image{position:relative;margin:0;padding:2rem 0 0 2rem}
.lf-framed-image::before{content:"";position:absolute;inset:0 2.4rem 2.7rem 0;border:4px solid var(--lf-orange)}
.lf-framed-image img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--lf-shadow)}
.lf-framed-image figcaption{position:relative;z-index:2;width:min(88%,470px);margin:-4.7rem 0 0 auto;padding:1.45rem 1.55rem;background:#111;color:#fff}
.lf-framed-image strong,.lf-framed-image span{display:block}.lf-framed-image span{margin-top:.5rem;color:#bbb;line-height:1.55}

/* SOLUTIONS */
.lf-solutions{background:#fff}
.lf-solutions .section-heading{margin-bottom:3rem}
.lf-solutions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.lf-card{display:flex;flex-direction:column;min-width:0;background:var(--lf-bg);overflow:hidden;border-bottom:4px solid transparent;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.lf-card:hover{transform:translateY(-5px);border-color:var(--lf-orange);box-shadow:var(--lf-shadow)}
.lf-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease}.lf-card:hover img{transform:scale(1.025)}
.lf-card>div{display:flex;flex-direction:column;flex:1;padding:clamp(1.7rem,2.6vw,2.4rem)}
.lf-card span{color:var(--lf-orange-dark);font-size:.73rem;font-weight:950;letter-spacing:.12em}
.lf-card h3{margin:1rem 0 .9rem;font-size:clamp(1.55rem,2vw,2.15rem);line-height:1.04}.lf-card p{margin:0;color:var(--lf-muted);line-height:1.68}

/* FULL WIDTH VISUAL */
.lf-visual-banner{position:relative;display:flex;min-height:760px;align-items:center;overflow:hidden;background:#111;color:#fff}
.lf-visual-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.lf-visual-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 42%,rgba(0,0,0,.28) 78%,rgba(0,0,0,.1) 100%),linear-gradient(0deg,rgba(0,0,0,.52),transparent 60%)}
.lf-visual-content{position:relative;z-index:2;padding-block:7rem}
.lf-visual-content h2{max-width:920px;margin:.7rem 0 1.4rem;color:#fff;font-size:clamp(3.2rem,5.6vw,6.3rem);line-height:.93;letter-spacing:-.052em}
.lf-visual-content p{max-width:720px;color:#d1d1d1;font-size:1.12rem;line-height:1.72}.lf-visual-content .btn{margin-top:1.1rem}

/* CONTEXTS */
.lf-contexts{background:var(--lf-bg)}
.lf-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--lf-line);border-left:1px solid var(--lf-line)}
.lf-context-grid article{min-height:235px;padding:2rem;border-right:1px solid var(--lf-line);border-bottom:1px solid var(--lf-line);background:#fff}
.lf-context-grid span{color:var(--lf-orange);font-weight:950}.lf-context-grid h3{margin:1rem 0 .7rem;font-size:1.65rem}.lf-context-grid p{margin:0;color:var(--lf-muted);line-height:1.65}

/* CASE */
.lf-case{background:#0b0b0b;color:#fff}
.lf-case-grid{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);gap:clamp(4rem,8vw,9rem);align-items:center}
.lf-case-image{position:relative;margin:0;padding:2rem 0 0 2rem;max-width:610px}
.lf-case-image::before{content:"";position:absolute;inset:0 2.5rem 2.8rem 0;border:4px solid var(--lf-orange)}
.lf-case-image img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:0 34px 80px rgba(0,0,0,.45)}
.lf-case-image>span{position:absolute;z-index:2;left:.5rem;bottom:1.8rem;padding:.95rem 1.2rem;background:var(--lf-orange);color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.05em}
.lf-case-copy h2{margin:.7rem 0 1.3rem;color:#fff;font-size:clamp(3.2rem,5vw,5.55rem);line-height:.95;letter-spacing:-.05em}
.lf-case-copy>p{color:#bbb;font-size:1.08rem;line-height:1.75}.lf-case-copy dl{margin:2rem 0 2.3rem;border-top:1px solid #303030}.lf-case-copy dl div{display:grid;grid-template-columns:120px 1fr;gap:1rem;padding:1.15rem 0;border-bottom:1px solid #303030}.lf-case-copy dt{color:#ff9b59;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.lf-case-copy dd{margin:0;color:#ddd}

/* PROCESS */
.lf-process{background:#111;color:#fff}
.lf-process-grid{display:grid;grid-template-columns:minmax(0,.73fr) minmax(0,1.27fr);gap:clamp(4rem,8vw,9rem);align-items:start}
.lf-process-heading{position:sticky;top:118px;z-index:3;padding:0 0 2.2rem;background:#111}
.lf-process-heading::after{content:"";position:absolute;left:-2rem;right:-2rem;top:-2rem;bottom:0;z-index:-1;background:#111}
.lf-process-heading h2{margin:.7rem 0 1.3rem;color:#fff;font-size:clamp(3.1rem,4.8vw,5.35rem);line-height:.95;letter-spacing:-.05em}
.lf-process-heading p{color:#aaa;font-size:1.05rem;line-height:1.75}
.lf-process-list{margin:0;padding:0;list-style:none;border-top:1px solid #303030;background:#111}
.lf-process-list li{display:grid;grid-template-columns:74px 1fr;gap:1.5rem;padding:1.8rem 0;border-bottom:1px solid #303030;background:#111}
.lf-process-list>li>span{color:var(--lf-orange);font-size:1.18rem;font-weight:950}.lf-process-list h3{margin:0;color:#fff;font-size:1.65rem}.lf-process-list p{margin:.45rem 0 0;color:#aaa;line-height:1.65}

/* TECH */
.lf-tech{background:var(--lf-bg)}
.lf-tech-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(4rem,8vw,9rem);align-items:start}
.lf-tech-copy{position:sticky;top:118px}.lf-tech-copy h2{margin:.7rem 0 1.2rem;font-size:clamp(3rem,4.65vw,5.15rem);line-height:.96;letter-spacing:-.05em}.lf-tech-copy p{color:var(--lf-muted);line-height:1.75}
.lf-tech-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--lf-line);border:1px solid var(--lf-line)}
.lf-tech-list article{padding:2rem;background:#fff}.lf-tech-list strong{font-size:1.23rem}.lf-tech-list p{margin:.55rem 0 0;color:var(--lf-muted);line-height:1.6}

/* BUDGET */
.lf-budget{background:#fff}
.lf-budget-grid{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);gap:clamp(4rem,8vw,9rem);align-items:center}
.lf-budget-image{position:relative;margin:0;padding:2rem 0 0 2rem;max-width:610px}
.lf-budget-image>span{position:absolute;inset:0 2.4rem 2.7rem 0;border:4px solid var(--lf-orange)}
.lf-budget-image img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--lf-shadow)}
.lf-budget-image figcaption{position:relative;z-index:2;width:min(90%,470px);margin:-4.7rem 0 0 auto;padding:1.4rem 1.5rem;background:#111;color:#fff}
.lf-budget-image figcaption strong,.lf-budget-image figcaption small{display:block}.lf-budget-image figcaption small{margin-top:.5rem;color:#bbb;line-height:1.55}
.lf-budget-copy h2{margin:.7rem 0 1.35rem;font-size:clamp(3rem,4.9vw,5.35rem);line-height:.96;letter-spacing:-.05em}.lf-budget-copy p{color:var(--lf-muted);line-height:1.75}
.lf-budget-copy ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.3rem;margin:1.8rem 0 2rem;padding:0;list-style:none}.lf-budget-copy li{padding:1rem 0;border-top:1px solid var(--lf-line);font-weight:800}

/* RELATED */
.lf-related{background:var(--lf-bg)}
.lf-related .section-heading{margin-bottom:3rem}
.lf-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}
.lf-related-card{display:flex;flex-direction:column;min-width:0;background:#fff;color:var(--lf-text);text-decoration:none;overflow:hidden;border-bottom:4px solid transparent;box-shadow:0 12px 30px rgba(0,0,0,.07);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.lf-related-card:hover{transform:translateY(-5px);border-color:var(--lf-orange);box-shadow:var(--lf-shadow)}
.lf-related-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.lf-related-card>div{display:flex;flex-direction:column;flex:1;padding:1.55rem}.lf-related-card span{color:var(--lf-orange);font-size:.72rem;font-weight:950;letter-spacing:.1em}.lf-related-card h3{margin:1rem 0 .7rem;font-size:1.55rem;line-height:1.08}.lf-related-card p{flex:1;margin:0;color:var(--lf-muted);line-height:1.6}.lf-related-card em{margin-top:1.2rem;color:var(--lf-orange-dark);font-style:normal;font-weight:900}
.lf-guides{background:#fff}

/* RESPONSIVE */
@media(max-width:1180px){
  .lf-hero-grid{grid-template-columns:1fr;gap:4rem}.lf-hero-copy{max-width:900px}.lf-hero-media{width:min(82%,680px);margin-inline:auto;justify-self:center}
  .lf-intro-grid,.lf-case-grid,.lf-process-grid,.lf-tech-grid,.lf-budget-grid{grid-template-columns:1fr}.lf-framed-image,.lf-case-image,.lf-budget-image{width:min(82%,680px);margin-inline:auto}.lf-process-heading,.lf-tech-copy{position:static}.lf-process-heading::after{display:none}
  .lf-solutions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .service-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-trust-grid>div:nth-child(2){border-right:0}.service-trust-grid>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.3)}
  .lf-hero-grid{padding-top:9.5rem}.lf-visual-banner{min-height:690px}.lf-visual-overlay{background:linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.76) 55%,rgba(0,0,0,.22) 100%)}.lf-visual-content{align-self:end;padding-block:5rem}
}
@media(max-width:700px){
  .lf-hero-grid{padding-top:8.2rem;padding-bottom:4.3rem}.lf-hero h1{font-size:clamp(3rem,13vw,4.75rem)}.lf-hero .hero-actions{display:grid}.lf-hero .btn{width:100%;text-align:center}.lf-hero-media{width:100%;padding:1.2rem 0 0 1.2rem}.lf-hero-media>span{inset:0 1.3rem 1.45rem 0;border-width:3px}.lf-hero-media figcaption{width:94%;margin-top:-3.8rem;padding:1.2rem}
  .service-trust-grid{grid-template-columns:1fr}.service-trust-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.3)}.service-trust-grid>div:last-child{border-bottom:0}
  .lf-intro-grid{gap:3rem}.lf-framed-image,.lf-case-image,.lf-budget-image{width:100%;padding:1.1rem 0 0 1.1rem}.lf-framed-image::before,.lf-case-image::before,.lf-budget-image>span{inset:0 1.2rem 1.3rem 0;border-width:3px}.lf-framed-image figcaption,.lf-budget-image figcaption{width:94%;margin-top:-3.7rem}.lf-case-image>span{left:.15rem;bottom:.65rem;font-size:.7rem}
  .lf-solutions-grid,.lf-context-grid,.lf-tech-list,.lf-budget-copy ul,.lf-related-grid{grid-template-columns:1fr}.lf-card>div{padding:1.5rem}.lf-context-grid article{min-height:auto}.lf-process-list li{grid-template-columns:52px 1fr}.lf-case-copy dl div{grid-template-columns:1fr;gap:.35rem}.lf-visual-content h2{font-size:clamp(2.8rem,12vw,4.1rem)}
}
@media(max-width:480px){.lf-hero-tags{gap:8px}.lf-hero-tags li{padding:.6rem .8rem;font-size:.68rem}.lf-visual-banner{min-height:650px}.lf-related-card>div{padding:1.35rem}}
