/* Ledfinity landing v2 — premium technical / mobile-first */
:root{--lf-black:#090a0c;--lf-black2:#121417;--lf-paper:#f3f1ec;--lf-white:#fff;--lf-amber:#f0b83d;--lf-amber2:#ffd777;--lf-red:#d94a3f;--lf-text:#17191c;--lf-muted:#697078;--lf-line:#dfe2e5;--lf-radius:24px}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{padding-top:72px;background:var(--lf-paper);color:var(--lf-text)}
.led-header{background:rgba(9,10,12,.97)!important;border-bottom:1px solid rgba(255,255,255,.14)!important;box-shadow:0 8px 28px rgba(0,0,0,.22);backdrop-filter:blur(18px)}
.led-brand__name{color:#fff!important}.led-brand__tagline{color:#c2c7cc!important}.led-nav a,.led-nav a:visited{color:#f4f5f6!important;text-shadow:0 1px 1px rgba(0,0,0,.28)}.led-nav a:hover,.led-nav a:focus-visible{color:var(--lf-amber2)!important}.led-header__phone,.led-header__phone:visited{background:var(--lf-amber)!important;color:#17120a!important}.nav-toggle{color:#fff!important;border-color:rgba(255,255,255,.22)!important;background:#17191d!important}.nav-toggle__icon span{background:#fff!important}
.led-mobile-nav{background:#0c0e11!important;border-top-color:#30343a!important}.led-mobile-nav a,.led-mobile-nav a:visited{color:#fff!important;border-bottom-color:#30343a!important}.led-mobile-nav a:hover,.led-mobile-nav a:focus-visible{color:var(--lf-amber2)!important;background:#15181c!important}
.lf-eyebrow{display:inline-block;margin-bottom:14px;font-size:.76rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#986400}
.lf-hero{position:relative;overflow:hidden;background:#0a0b0d;color:#fff;padding:clamp(42px,6vw,84px) 0 clamp(56px,8vw,108px)}
.lf-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 18%,rgba(240,184,61,.12),transparent 31%);pointer-events:none}
.lf-hero__grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:center}.lf-hero__copy{padding:12px 0}.lf-hero .lf-eyebrow{color:var(--lf-amber2)}
.lf-hero h1{margin:0;font-size:clamp(3.2rem,7.4vw,7rem);line-height:.88;letter-spacing:-.065em;max-width:720px}.lf-hero__lead{max-width:640px;margin:28px 0 0;font-size:clamp(1.08rem,2vw,1.3rem);line-height:1.55;color:#c9ced2}.lf-hero__lead strong{color:#fff}
.lf-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.lf-btn{min-height:54px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;font-weight:900}.lf-btn--hot{background:var(--lf-amber);color:#17120a}.lf-btn--ghost{border:1px solid #3a3f44;background:#15181c;color:#fff}
.lf-hero__facts{margin-top:36px;padding-top:24px;border-top:1px solid #2d3034;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lf-hero__facts div{display:grid;gap:3px}.lf-hero__facts strong{font-size:1.03rem}.lf-hero__facts span{font-size:.82rem;color:#939aa1}
.lf-hero__image{position:relative;margin:0;min-height:650px;border-radius:30px;overflow:hidden;background:#17191d}.lf-hero__image:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.82))}.lf-hero__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lf-hero__image figcaption{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:grid;gap:5px}.lf-hero__image figcaption span{font-size:.72rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:var(--lf-amber2)}.lf-hero__image figcaption strong{font-size:1.06rem;max-width:470px}
.lf-signal{background:var(--lf-amber);color:#1c160d;font-size:.84rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;overflow:hidden}.lf-signal .container{min-height:54px;display:flex;align-items:center;justify-content:center;gap:18px;white-space:nowrap}.lf-signal i{width:4px;height:4px;border-radius:50%;background:#5f481a;opacity:.6}
.lf-section{padding:clamp(68px,9vw,122px) 0}.lf-section--paper{background:#f4f2ed}.lf-section--black{background:#0a0b0d;color:#fff}.lf-section--tech{background:#fff}.lf-section--amber{background:var(--lf-amber)}.lf-section--showcase{background:#e9e6df}.lf-section--contact{background:#0b0d10;color:#fff;padding-bottom:120px}
.lf-heading{max-width:900px;margin-bottom:46px}.lf-heading h2,.lf-process h2,.lf-showcase h2,.lf-contact h2{margin:0;font-size:clamp(2.35rem,5.2vw,4.8rem);line-height:.98;letter-spacing:-.055em}.lf-heading p{max-width:720px;margin:20px 0 0;font-size:1.08rem;color:#686f76}.lf-heading--dark p{color:#9ca3aa}.lf-heading--dark .lf-eyebrow{color:var(--lf-amber2)}
.lf-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lf-service-card{min-height:286px;padding:26px;border:1px solid #dddcd8;border-radius:var(--lf-radius);background:rgba(255,255,255,.72);display:flex;flex-direction:column;transition:transform .18s ease,border-color .18s ease}.lf-service-card:hover{transform:translateY(-3px);border-color:#c4b183}.lf-service-card>span{font-size:.76rem;font-weight:950;letter-spacing:.12em;color:#9e6d08}.lf-service-card h3{margin:auto 0 10px;font-size:1.34rem;line-height:1.1}.lf-service-card p{margin:0;color:#686f76;font-size:.95rem}
.lf-gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:370px 370px;gap:14px}.lf-gallery figure{position:relative;margin:0;border-radius:24px;overflow:hidden;background:#1a1d21}.lf-gallery__hero{grid-row:1/3}.lf-gallery__wide{display:none}.lf-gallery img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lf-gallery figure:after{content:"";position:absolute;inset:44% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.88))}.lf-gallery figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:grid;gap:3px}.lf-gallery figcaption strong{font-size:1.18rem}.lf-gallery figcaption span{color:#c2c7cc;font-size:.87rem}
.lf-tech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lf-tech-card{border:1px solid #e1e4e6;border-radius:24px;overflow:hidden;background:#f8f8f6}.lf-tech-card>img{width:100%;aspect-ratio:1.45/1;object-fit:cover;border-radius:0;background:#fff}.lf-tech-card>div:last-child{padding:24px}.lf-tech-card span{font-size:.75rem;font-weight:900;letter-spacing:.11em;color:#9b6903}.lf-tech-card h3{margin:12px 0 8px;font-size:1.3rem}.lf-tech-card p{margin:0;color:#6b7278}.lf-tech-card__images{display:grid;grid-template-columns:1fr 1fr;background:#fff}.lf-tech-card__images img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:0;padding:12px}.lf-chipline{margin-top:22px;padding-top:18px;border-top:1px solid #e4e6e8;color:#626970;font-size:.92rem;line-height:1.9}
.lf-process{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,6vw,92px);align-items:start}.lf-process .lf-eyebrow{color:#5f4107}.lf-process__intro p{max-width:520px;color:#594820;font-size:1.05rem}.lf-steps{list-style:none;margin:0;padding:0;display:grid;gap:11px}.lf-steps li{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:19px;border:1px solid rgba(69,47,7,.16);border-radius:18px;background:rgba(255,255,255,.42)}.lf-steps li>span{width:38px;height:38px;display:grid;place-items:center;background:#101214;color:#fff;border-radius:12px;font-weight:900}.lf-steps strong{display:block;margin-bottom:3px}.lf-steps p{margin:0;color:#5a4928}
.lf-showcase{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(36px,6vw,92px)}.lf-showcase figure{margin:0;height:650px;border-radius:28px;overflow:hidden}.lf-showcase img{width:100%;height:100%;object-fit:cover}.lf-showcase p{font-size:1.08rem;color:#5e656b;max-width:680px}.lf-showcase p strong{color:#1c2024}
.lf-contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,6vw,86px)}.lf-contact .lf-eyebrow{color:var(--lf-amber2)}.lf-contact__copy p{max-width:560px;color:#aab0b6}.lf-contact__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lf-contact__actions>a,.lf-contact__actions>div{min-height:160px;padding:20px;border:1px solid #2d3238;border-radius:18px;background:#171b20;display:flex;flex-direction:column;justify-content:flex-end}.lf-contact__actions span{margin-bottom:auto;color:#899198;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.lf-contact__actions strong{color:#fff;font-size:1.06rem;word-break:break-word}.lf-contact__actions small{margin-top:4px;color:#9299a0}.lf-contact__address{grid-column:1/-1;margin-top:18px;padding-top:18px;border-top:1px solid #292e33;color:#959ca3;font-size:.9rem}
.led-footer{background:#0b0d10!important}.led-footer__row{border-top-color:#262b30!important}
@media(max-width:980px){body{padding-top:66px}.lf-hero__grid,.lf-process,.lf-showcase,.lf-contact{grid-template-columns:1fr}.lf-hero__image{min-height:560px}.lf-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-tech-grid{grid-template-columns:1fr}.lf-tech-card{display:grid;grid-template-columns:.9fr 1.1fr}.lf-tech-card>img{height:100%;aspect-ratio:auto}.lf-showcase figure{height:520px}}
@media(max-width:680px){.container{width:min(calc(100% - 28px),var(--container))}.lf-hero{padding-top:32px}.lf-hero h1{font-size:clamp(3.3rem,18vw,5.1rem)}.lf-hero__lead{font-size:1rem;margin-top:20px}.lf-hero__actions{display:grid}.lf-btn{width:100%}.lf-hero__facts{grid-template-columns:1fr;gap:10px}.lf-hero__facts div{grid-template-columns:110px 1fr;align-items:baseline}.lf-hero__image{min-height:440px;border-radius:22px}.lf-signal{font-size:.74rem}.lf-signal .container{justify-content:flex-start;overflow:hidden}.lf-service-grid{grid-template-columns:1fr}.lf-service-card{min-height:220px}.lf-gallery{grid-template-columns:1fr;grid-template-rows:none}.lf-gallery__hero,.lf-gallery figure{grid-row:auto;min-height:370px}.lf-gallery__wide{display:block}.lf-gallery figure:nth-child(4){min-height:330px}.lf-tech-card{display:block}.lf-tech-card>img{height:auto;aspect-ratio:1.35/1}.lf-contact__actions{grid-template-columns:1fr}.lf-showcase figure{height:460px}.lf-heading h2,.lf-process h2,.lf-showcase h2,.lf-contact h2{font-size:clamp(2.35rem,12vw,3.6rem)}}


/* v2.2 mobile navigation contrast/readability hotfix */
@media (max-width:980px){
  .led-header{background:#090a0c!important;border-bottom-color:#2b2f34!important}
  .led-header__row{position:relative;z-index:2}
  .nav-toggle{
    display:inline-flex!important;
    width:46px!important;
    height:46px!important;
    padding:0!important;
    border:1px solid #4a5057!important;
    border-radius:13px!important;
    background:#171a1f!important;
    box-shadow:none!important;
  }
  .nav-toggle__icon{width:20px!important;display:grid!important;gap:4px!important}
  .nav-toggle__icon span{display:block!important;height:2px!important;background:#fff!important;border-radius:999px!important}

  .led-mobile-nav{
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    min-width:0!important;
    background:#0b0d10!important;
    border:0!important;
    border-top:1px solid #30353b!important;
    border-radius:0!important;
    box-shadow:0 22px 38px rgba(0,0,0,.42)!important;
    max-height:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    overflow:hidden!important;
    padding:0!important;
    transition:max-height .24s ease,opacity .16s ease!important;
  }
  .led-mobile-nav.is-open{
    display:block!important;
    max-height:520px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .led-mobile-nav__inner{
    width:min(calc(100% - 28px),var(--container))!important;
    margin:0 auto!important;
    padding:10px 0 16px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .led-mobile-nav a,
  .led-mobile-nav a:visited{
    display:flex!important;
    align-items:center!important;
    min-height:54px!important;
    padding:14px 10px!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid #2c3137!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#fff!important;
    font-size:1rem!important;
    font-weight:850!important;
    line-height:1.2!important;
    text-shadow:none!important;
  }
  .led-mobile-nav a:hover,
  .led-mobile-nav a:focus-visible{
    color:#ffd777!important;
    background:#15191e!important;
  }
  .led-mobile-nav a:last-child{border-bottom:0!important}
}
