/* Legacy System Services landing — scoped to .lss-page */
.lss-page{
  --navy:#0f1c2e;
  --navy-light:#162338;
  --charcoal:#1e2d3d;
  --red:#c8102e;
  --red-dark:#a50d25;
  --grey-50:#f7f8f9;
  --grey-100:#eef0f3;
  --grey-200:#d8dce3;
  --grey-500:#6b7280;
  --grey-700:#374151;
  --white-55:rgba(255,255,255,.55);
  --white-60:rgba(255,255,255,.6);
  --white-75:rgba(255,255,255,.75);
  --white-10:rgba(255,255,255,.1);
  font-family:"Blinker",system-ui,sans-serif;
  color:var(--charcoal);
  background:#fff;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
.lss-page *,.lss-page *::before,.lss-page *::after{box-sizing:border-box}
.lss-page h1,.lss-page h2,.lss-page h3,.lss-page h4,.lss-page p{margin:0}
.lss-page a{text-decoration:none;color:inherit}
.lss-page button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.lss-page a:focus-visible,.lss-page button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.lss-page section{margin:0}
.lss-page{overflow-x:clip}
.lss-services__grid>*,
.lss-systems__grid>*,
.lss-why__grid>*,
.lss-faq__grid>*,
.lss-svc__grid>*{min-width:0}
.lss-display{font-family:"Blinker",Arial,sans-serif;font-weight:600}
.lss-wrap{width:100%;max-width:1440px;margin:0 auto;padding:0 20px}
@media(min-width:640px){.lss-wrap{padding:0 24px}}
@media(min-width:1024px){.lss-wrap{padding:0 32px}}
.lss-eyebrow{display:flex;align-items:center;gap:12px;margin:0;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--grey-500)}
.lss-eyebrow::before{content:"";width:1.75rem;height:1px;background:var(--red);flex:0 0 auto}
.lss-eyebrow--light{color:var(--white-55)}
.lss-head .lss-eyebrow{font-size:12px;color:#5B616B}
.lss-head--light .lss-eyebrow{color:var(--white-60)}
.lss-page a.lss-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:#fff;padding:16px 28px;font-size:14px;font-weight:600;line-height:1.25;transition:background-color .2s,border-color .2s,color .2s}
.lss-page a.lss-btn:hover,.lss-page a.lss-btn:focus{background:var(--red-dark);color:#fff}
.lss-btn svg,.lss-link svg,.lss-textlink svg{width:1rem;height:1rem;flex:0 0 auto}
.lss-page a.lss-btn--ghost{background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff}
.lss-page a.lss-btn--ghost:hover,.lss-page a.lss-btn--ghost:focus{background:transparent;border-color:#fff;color:#fff}
.lss-page a.lss-link{display:inline-flex;align-items:center;gap:8px;color:var(--red);font-size:14px;font-weight:600}
.lss-page a.lss-link:hover,.lss-page a.lss-link:focus{color:var(--red-dark)}
.lss-section{padding:6rem 0}
@media(min-width:1024px){.lss-section{padding:8rem 0}}
.lss-head{max-width:48rem}
.lss-head h2{margin-top:20px;font-size:30px;font-weight:600;line-height:1.15;color:var(--navy)}
@media(min-width:768px){.lss-head h2{font-size:46px}}
.lss-head h2 em,.lss-hero h1 em,.lss-page h2 em{font-style:normal;color:var(--red)}
.lss-page .lss-head p{margin-top:24px;max-width:42rem;font-size:16px;line-height:1.625;color:var(--grey-700)}
@media(min-width:640px){.lss-page .lss-head p{font-size:18px}}
.lss-page .lss-head .lss-eyebrow{margin-top:0;font-size:12px;line-height:1.4;letter-spacing:.18em;color:#5B616B}
.lss-head--light h2{color:#fff}
.lss-page .lss-head--light p{color:var(--white-60)}
.lss-page .lss-head--light .lss-eyebrow{color:var(--white-60)}

/* Hero */
.lss-hero{position:relative;overflow:hidden;background:var(--navy);color:#fff}
.lss-hero__stage{position:relative}
.lss-hero__copy{position:relative;z-index:1;display:flex;align-items:center;padding:72px 0}
.lss-hero__copy-inner{max-width:40rem}
.lss-hero h1{margin-top:28px;font-size:36px;font-weight:700;line-height:1.05;letter-spacing:-.02em;color:#fff}
@media(min-width:640px){.lss-hero h1{font-size:48px}}
@media(min-width:1024px){.lss-hero h1{font-size:60px}}
.lss-page .lss-hero__lead{margin-top:24px;max-width:42rem;font-size:18px;line-height:1.625;color:var(--white-75)}
@media(min-width:640px){.lss-page .lss-hero__lead{font-size:20px}}
.lss-hero__actions{display:flex;flex-direction:column;gap:12px;margin-top:40px}
@media(min-width:640px){.lss-hero__actions{flex-direction:row;align-items:center}}
.lss-page .lss-hero a.lss-btn{font-family:"Blinker",Arial,sans-serif;font-size:17px;font-weight:400;line-height:17px}
@media(max-width:767px){.lss-page .lss-hero a.lss-btn{font-size:15px}}
.lss-hero__media{position:relative;min-height:30rem;overflow:hidden}
@media(min-width:1024px){
  .lss-hero{min-height:100svh;display:flex;flex-direction:column}
  .lss-hero__stage{display:flex;flex-direction:column;justify-content:flex-start;flex:1 1 auto;min-height:0;padding:120px 0 0}
  .lss-hero__stage::before{content:"";flex:5 1 0;min-height:0;pointer-events:none}
  .lss-hero__stage::after{content:"";flex:6 1 0;min-height:0;pointer-events:none}
  .lss-hero__stage>.lss-wrap{position:relative;z-index:1;flex:0 0 auto;width:100%}
  .lss-hero__copy{max-width:56%;min-height:0;padding:0 40px 0 0}
  .lss-hero__media{position:absolute;top:0;right:0;bottom:0;width:46%;min-height:0}
  .lss-stats{flex:0 0 auto}
}
.lss-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.lss-hero__shade{position:absolute;inset:0;background:linear-gradient(to right,var(--navy),rgba(15,28,46,.2),transparent)}
.lss-hero__shade-b{position:absolute;inset:0;background:linear-gradient(to top,rgba(15,28,46,.6),transparent,transparent)}
.lss-page a.lss-hero__note{position:absolute;left:1.5rem;right:1.5rem;bottom:2rem;display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:2px solid var(--red);background:rgba(15,28,46,.9);padding:1.25rem 1.5rem;color:#fff;font-family:"Blinker",Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.3;backdrop-filter:blur(4px)}
@media(min-width:640px){.lss-page a.lss-hero__note{left:auto;right:2rem;max-width:22rem}}
@media(min-width:1024px){.lss-page a.lss-hero__note{bottom:3rem;right:2.5rem}}
.lss-page a.lss-hero__note:hover,.lss-page a.lss-hero__note:focus{color:#fff}
.lss-hero__note svg{width:18px;height:18px;flex:0 0 auto;color:var(--red)}
.lss-stats{border-top:1px solid rgba(255,255,255,.1);background:var(--navy-light);color:#fff}
.lss-stats__grid{display:grid}
@media(min-width:768px){.lss-stats__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.lss-stats__item{display:flex;align-items:baseline;gap:12px;padding:24px 8px}
@media(min-width:768px){.lss-stats__item{padding:28px 24px}.lss-stats__item + .lss-stats__item{border-left:1px solid rgba(255,255,255,.1)}}
.lss-stats__item strong{margin:0;font-size:32px;font-weight:600;line-height:1.5;color:#fff}
.lss-stats__item span{margin:0;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5)}

/* Services */
.lss-services{background:#fff}
.lss-services__grid{display:grid;gap:3.5rem}
@media(min-width:1024px){.lss-services__grid{grid-template-columns:.72fr 1.28fr;gap:3.5rem}}
.lss-svcs{border-top:1px solid var(--grey-200)}
.lss-svc{border-bottom:1px solid var(--grey-200);padding:2.5rem 0}
.lss-svc__grid{display:grid;gap:1.5rem}
@media(min-width:640px){.lss-svc__grid{grid-template-columns:4rem .75fr 1.25fr;gap:1.5rem}}
.lss-svc__num{font-size:30px;line-height:1;color:var(--red)}
.lss-svc h3{font-size:30px;line-height:1.25;color:var(--navy)}
.lss-page .lss-svc h3 .and{font-size:28px;color:#000!important;-webkit-text-fill-color:#000!important;opacity:1}
.lss-page .lss-svc p{margin-top:16px;font-size:14px;line-height:1.625;color:var(--grey-700)}
.lss-tags{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px}
.lss-tags span{border:1px solid var(--grey-200);background:var(--grey-50);padding:8px 12px;font-size:14px;font-weight:500;color:var(--grey-700)}

/* Systems */
.lss-systems{background:var(--grey-50)}
.lss-systems__grid{display:grid;gap:2.5rem;margin-top:3.5rem}
@media(min-width:1024px){.lss-systems__grid{grid-template-columns:1.2fr .8fr;gap:3rem}}
.lss-kicker{margin:0;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.lss-cores{margin-top:1.25rem;border-top:1px solid var(--grey-200)}
.lss-core{display:grid;grid-template-columns:3rem 1fr auto;gap:1.25rem;align-items:start;border-bottom:1px solid var(--grey-200);padding:1.75rem 0;color:inherit}
.lss-page a.lss-core:hover h3,.lss-page a.lss-core:focus h3{color:var(--red)}
.lss-core__num{font-size:24px;line-height:1;color:var(--red)}
.lss-core h3{font-size:20px;font-weight:600;color:var(--navy)}
.lss-page .lss-core p{margin-top:8px;max-width:36rem;font-size:14px;line-height:1.625;color:var(--grey-500)}
.lss-core svg{width:1rem;height:1rem;margin-top:4px;color:var(--grey-200);transition:transform .2s,color .2s}
.lss-page a.lss-core:hover svg,.lss-page a.lss-core:focus svg{transform:translateX(4px);color:var(--red)}
.lss-platforms{display:grid;gap:12px;margin-top:1.25rem}
@media(min-width:640px){.lss-platforms{grid-template-columns:1fr 1fr}}
.lss-page a.lss-platform{display:flex;min-height:11rem;flex-direction:column;border:1px solid var(--grey-200);background:#fff;padding:1.25rem;color:inherit;box-shadow:0 1px 2px rgba(15,28,46,.05);transition:transform .2s,border-color .2s,box-shadow .2s}
.lss-page a.lss-platform:hover,.lss-page a.lss-platform:focus{transform:translateY(-2px);border-color:var(--grey-500);box-shadow:0 6px 16px rgba(15,28,46,.08);color:inherit}
.lss-platform__top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.lss-platform h3{font-size:20px;line-height:1.25;color:var(--navy)}
.lss-platform svg{width:1rem;height:1rem;color:var(--grey-200);transition:transform .2s,color .2s}
.lss-page a.lss-platform:hover svg,.lss-page a.lss-platform:focus svg{transform:translateX(4px);color:var(--red)}
.lss-page .lss-platform p{margin-top:12px;font-size:14px;line-height:1.625;color:var(--grey-500)}
.lss-platform__more{margin-top:auto;padding-top:1.25rem;font-size:14px;font-weight:600;color:var(--red)}

/* Cases */
.lss-cases{background:#fff}
.lss-cases__head{display:flex;flex-direction:column;justify-content:space-between;gap:2rem}
@media(min-width:1024px){.lss-cases__head{flex-direction:row;align-items:flex-end}}
.lss-cases__grid{display:grid;gap:1.5rem;margin-top:3.5rem}
@media(min-width:640px){.lss-cases__grid{grid-template-columns:1fr 1fr}}
.lss-case{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--grey-100);background:#fff;transition:border-color .2s}
.lss-case:hover{border-color:var(--grey-200)}
@media(min-width:1024px){.lss-case--featured{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr}}
.lss-case__media{position:relative;min-height:18rem;overflow:hidden;background:var(--navy)}
.lss-case__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.lss-case:hover .lss-case__media img{transform:scale(1.05)}
.lss-case__shade{position:absolute;inset:0;background:linear-gradient(to bottom right,rgba(15,28,46,.6),rgba(15,28,46,.15))}
.lss-case__body{display:flex;flex:1;flex-direction:column;padding:1.5rem}
.lss-case--featured .lss-case__body{background:var(--grey-50);padding:1.75rem}
@media(min-width:640px){.lss-case--featured .lss-case__body{padding:2rem}}
.lss-case__tags{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none}
.lss-case__tags li{font-size:12px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--grey-500)}
.lss-case h3{margin-top:1rem;font-size:30px;font-weight:600;line-height:1.2;color:var(--navy)}
.lss-case--featured h3{font-size:36px}
.lss-page .lss-case__body>p{margin-top:1rem;font-size:14px;line-height:1.625;color:var(--grey-500)}
.lss-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--grey-200)}
.lss-metrics strong{display:block;font-size:30px;font-weight:500;line-height:1;color:var(--charcoal)}
.lss-case--featured .lss-metrics strong{font-size:36px}
.lss-metrics span{display:block;margin-top:8px;font-size:16px;font-weight:400;line-height:1.4;color:var(--charcoal)}
.lss-page a.lss-case__cta{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:1.75rem;color:var(--red);font-size:14px;font-weight:600;white-space:nowrap}
.lss-page a.lss-case__cta:hover,.lss-page a.lss-case__cta:focus{color:var(--red-dark)}
.lss-case__cta svg{width:1rem;height:1rem;transition:transform .2s}
.lss-case:hover .lss-case__cta svg{transform:translateX(4px)}

/* Why */
.lss-why{background:var(--navy);color:#fff}
.lss-why__grid{display:grid;gap:3rem}
@media(min-width:1024px){.lss-why__grid{grid-template-columns:.8fr 1.2fr;gap:3rem}}
.lss-page a.lss-why__link{display:inline-flex;align-items:center;gap:8px;margin-top:2.25rem;color:#fff;font-size:14px;font-weight:600}
.lss-page a.lss-why__link:hover,.lss-page a.lss-why__link:focus{color:#fff}
.lss-why__link svg{width:1rem;height:1rem;color:var(--red)}
.lss-returns{display:grid;gap:1px;background:var(--white-10)}
@media(min-width:640px){.lss-returns{grid-template-columns:1fr 1fr}}
.lss-return{min-height:16rem;background:var(--navy-light);padding:1.75rem}
@media(min-width:640px){.lss-return{padding:2rem}}
.lss-return__num{font-size:36px;line-height:1;color:rgba(255,255,255,.1)}
.lss-return h3{margin-top:2rem;font-size:18px;font-weight:600;color:#fff}
.lss-page .lss-return p{margin-top:1rem;font-size:14px;line-height:1.625;color:var(--white-55)}

/* Risk */
.lss-risk{background:var(--grey-50)}
.lss-risk__grid{display:grid;gap:1px;margin-top:3.5rem;background:var(--grey-200)}
@media(min-width:768px){.lss-risk__grid{grid-template-columns:repeat(3,1fr)}}
.lss-risk__card{min-height:18rem;background:#fff;padding:2rem}
.lss-risk__card span{font-size:36px;line-height:1;color:var(--red)}
.lss-risk__card h3{margin-top:2.5rem;font-size:24px;line-height:1.25;color:var(--navy)}
.lss-page .lss-risk__card p{margin-top:1rem;font-size:14px;line-height:1.625;color:var(--grey-700)}
.lss-page a.lss-risk__card h3{color:var(--navy)}
.lss-page a.lss-risk__card:hover h3,.lss-page a.lss-risk__card:focus h3{color:var(--red)}

/* Mid banner — design contact strip between systems and cases */
.lss-banner{background:var(--grey-50);padding:0 0 6rem}
@media(min-width:1024px){.lss-banner{padding-bottom:8rem}}
.lss-banner__frame{position:relative;overflow:hidden;width:100%;border-left:4px solid var(--red);background:var(--navy);color:#fff;padding:2.5rem 1.5rem}
@media(min-width:640px){.lss-banner__frame{padding:2.5rem 2.5rem}}
@media(min-width:1024px){.lss-banner__frame{padding:2.5rem 4rem}}
.lss-banner__ring{position:absolute;right:-6rem;top:-10rem;width:24rem;height:24rem;border-radius:999px;border:1px solid rgba(200,16,46,.15);pointer-events:none}
.lss-banner__row{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:1.75rem;max-width:80rem;margin:0 auto}
@media(min-width:768px){.lss-banner__row{flex-direction:row;align-items:center}}
.lss-page .lss-banner__title{max-width:48rem;font-family:"Blinker",Arial,sans-serif;font-size:30px;font-weight:600;line-height:1.25;color:#fff}
@media(min-width:640px){.lss-page .lss-banner__title{font-size:36px}}
.lss-page .lss-banner__lead{margin-top:12px;max-width:48rem;font-size:14px;line-height:1.5;color:rgba(255,255,255,.55)}
.lss-banner .lss-btn{flex:0 0 auto}
.lss-page .lss-banner a.lss-btn{font-size:17px}
@media(max-width:767px){.lss-page .lss-banner a.lss-btn{font-size:15px}}

/* FAQ — same block as Custom Software Development */
.lss-faq{padding:88px 0;background:#fff}
@media(min-width:1024px){.lss-faq{padding:112px 0}}
.lss-faq__grid{display:grid;gap:48px}
@media(min-width:1024px){.lss-faq__grid{grid-template-columns:.7fr 1.3fr;gap:56px}}
.lss-page .lss-faq__aside .lss-eyebrow{font-size:12px!important;font-weight:600!important;line-height:1.4!important;color:#5B616B!important}
.lss-faq h2{margin:20px 0 0;font-family:"Blinker",Arial,sans-serif;font-size:30px;font-weight:600;line-height:1.15;color:var(--navy)}
@media(min-width:768px){.lss-faq h2{font-size:46px}}
.lss-faq__aside p{margin:24px 0 0;max-width:22rem;font-size:15px;line-height:1.65;color:var(--grey-500)}
.lss-page .lss-faq__aside a.lss-link{margin-top:24px;color:#101828}
.lss-faq__list{border-top:1px solid var(--grey-200);margin:0;padding:0;list-style:none}
.lss-faq__item{border-bottom:1px solid var(--grey-200)}
.lss-page .lss-faq__q{display:flex;width:100%;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border:0;border-radius:0;background:transparent;text-align:left;font-family:"Blinker",Arial,sans-serif;font-size:18px;font-weight:400;line-height:1.35;color:var(--navy);cursor:pointer;white-space:normal}
.lss-page .lss-faq__q:hover,.lss-page .lss-faq__q:focus{background:transparent;background-color:transparent;border-color:transparent;color:var(--navy);box-shadow:none;outline:none}
.lss-faq__q span:first-child{min-width:0}
.lss-faq__icon{position:relative;flex:0 0 18px;width:18px;height:18px;color:var(--red)}
.lss-faq__icon::before,.lss-faq__icon::after{content:"";position:absolute;left:0;top:8px;width:18px;height:2px;background:currentColor}
.lss-faq__icon::after{transform:rotate(90deg);transition:transform .2s}
.lss-faq__item.is-open .lss-faq__icon::after{transform:rotate(0)}
.lss-faq__a{display:none;max-width:42rem;margin:0;padding:0 40px 22px 0;font-size:15px;line-height:1.7;color:#4A4E57}
.lss-faq__item.is-open .lss-faq__a{display:block}

/* Insights */
.lss-insights{border-top:1px solid var(--grey-200);background:var(--grey-50);padding:3.5rem 0}
@media(min-width:1024px){.lss-insights{padding:4rem 0}}
.lss-insights__head{display:flex;flex-direction:column;justify-content:space-between;gap:1rem}
@media(min-width:640px){.lss-insights__head{flex-direction:row;align-items:flex-end}}
.lss-insights h2{margin-top:20px;font-size:24px;font-weight:600;line-height:1.25;color:var(--navy)}
@media(min-width:640px){.lss-insights h2{font-size:30px}}
.lss-insights__list{display:grid;margin-top:2rem;border-top:1px solid var(--grey-200);border-bottom:1px solid var(--grey-200)}
@media(min-width:768px){.lss-insights__list{grid-template-columns:repeat(3,1fr)}}
.lss-page a.lss-insight{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--grey-200);color:inherit}
.lss-page a.lss-insight:last-child{border-bottom:0}
@media(min-width:768px){
  .lss-page a.lss-insight{border-bottom:0;padding:1.25rem 1.5rem}
  .lss-page a.lss-insight:first-child{padding-left:0}
  .lss-page a.lss-insight:last-child{padding-right:0}
  .lss-insights__list{border-bottom:1px solid var(--grey-200)}
  .lss-page a.lss-insight+.lss-insight{border-left:1px solid var(--grey-200)}
}
.lss-insight__num{padding-top:2px;font-size:12px;font-weight:600;color:var(--red)}
.lss-insight__cat{display:block;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--grey-500)}
.lss-insight strong{display:block;margin-top:8px;font-size:18px;font-weight:600;line-height:1.35;color:var(--navy)}
.lss-insight svg{width:14px;height:14px;margin-top:1.25rem;flex:0 0 auto;color:var(--red);transition:transform .2s}
.lss-page a.lss-insight:hover svg,.lss-page a.lss-insight:focus svg{transform:translateX(4px)}

/* Existing bottom CTA */
.lss-close{position:relative;overflow:hidden;background:#202b35 url("/wp-content/uploads/2025/12/2-%E6%8B%B7%E8%B4%9D.webp") center center/cover no-repeat;color:#fff;padding:6rem 0}
@media(min-width:1024px){.lss-close{padding:7rem 0}}
.lss-close__inner{position:relative;max-width:56rem;margin:0 auto;padding:0 1.5rem;text-align:center}
@media(min-width:1024px){.lss-close__inner{padding:0 2.5rem}}
.lss-close__kicker{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
.lss-close h2{margin:0 0 22px;font-family:"Blinker",Arial,sans-serif;font-size:30px;font-weight:600;line-height:32px;color:#fff}
@media(min-width:768px){.lss-close h2{font-size:46px;line-height:1}}
.lss-close p{margin:24px auto 0;max-width:42rem;font-size:14px;line-height:1.625;color:rgba(255,255,255,.7)}
@media(min-width:640px){.lss-close p{font-size:16px}}
.lss-close .lss-btn{margin-top:2.25rem}
.lss-close__note{margin-top:16px;font-size:12px;color:rgba(255,255,255,.45)}
#contact{scroll-margin-top:6rem}
