/* Extracted from page-tenant-services.php so it is cached once instead of being re-sent
   inside the HTML on every page view. Enqueued by
   lumoria_enqueue_template_styles() in functions.php. */

  #lumTsSec,#lumTsSec *{box-sizing:border-box}
  #lumTsSec{--ts-mint:#44bda1;--ts-dark:#04272f;--ts-ink:#1d1235;--ts-copy:rgba(4,39,47,.68);padding:clamp(64px,7vw,96px) 0;background:radial-gradient(circle at 90% 8%,rgba(68,189,161,.1),transparent 25rem),#faf9f7;font-family:var(--font-primary)}
  #lumTsSec .lum-ts-shell{width:100%;max-width:var(--container-w);margin:0 auto;padding-inline:clamp(20px,4vw,48px)}
  #lumTsSec .lum-ts-head{max-width:780px;margin:0 auto clamp(38px,5vw,56px);text-align:center}
  #lumTsSec .lum-ts-badge{display:inline-flex;align-items:center;margin-bottom:18px;padding:8px 20px;border:1px solid rgba(68,189,161,.42);border-radius:999px;color:#188f77;background:rgba(68,189,161,.06);font-size:13px;font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}
  #lumTsSec .lum-ts-heading{margin:0 0 15px;color:var(--ts-ink);font-family:var(--font-display);font-size:var(--text-h2);font-weight:var(--fw-heading);letter-spacing:var(--ls-h2);line-height:1.15}
  #lumTsSec .lum-ts-sub{margin:0;color:var(--ts-copy);font-size:clamp(15px,1.4vw,17px);line-height:1.7}
  #lumTsSec .lum-ts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  #lumTsSec .lum-ts-card{position:relative;display:flex;min-height:260px;overflow:hidden;flex-direction:column;padding:30px;border:1px solid rgba(4,39,47,.09);border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(4,39,47,.06);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
  #lumTsSec .lum-ts-card::before{content:'';width:42px;height:4px;margin-bottom:28px;border-radius:999px;background:var(--ts-mint)}
  #lumTsSec .lum-ts-card::after{content:'';position:absolute;inset-inline-end:-55px;bottom:-65px;width:150px;height:150px;border:32px solid rgba(68,189,161,.06);border-radius:50%;pointer-events:none}
  #lumTsSec .lum-ts-card:hover{transform:translateY(-5px);border-color:rgba(68,189,161,.4);box-shadow:0 20px 42px rgba(4,39,47,.1)}
  #lumTsSec .lum-ts-card-title{position:relative;z-index:1;margin:0 0 12px;color:var(--ts-ink);font-size:19px;font-weight:var(--fw-semibold);line-height:1.35}
  #lumTsSec .lum-ts-card-desc{position:relative;z-index:1;margin:0 0 25px;color:var(--ts-copy);font-size:14.5px;line-height:1.7;flex-grow:1}
  #lumTsSec .lum-ts-open{position:relative;z-index:1;display:inline-flex;align-items:center;align-self:flex-start;gap:9px;border-radius:6px;color:#188f77;font-size:14px;font-weight:var(--fw-semibold);text-decoration:none;transition:gap .2s ease,color .2s ease}
  #lumTsSec .lum-ts-open svg{transition:transform .2s ease}
  #lumTsSec .lum-ts-card:hover .lum-ts-open{gap:13px;color:var(--ts-dark)}
  #lumTsSec .lum-ts-open:focus-visible{outline:3px solid rgba(68,189,161,.35);outline-offset:4px}
  /* The RTL mirror for this arrow lives in rtl.css (scaleX(-1)), alongside its
     hover variant. Do not re-declare it here — two rules of equal specificity
     for the same selector made the result depend on enqueue order. */
  @media(max-width:1000px){#lumTsSec .lum-ts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:620px){#lumTsSec{padding:54px 0}#lumTsSec .lum-ts-grid{grid-template-columns:1fr}#lumTsSec .lum-ts-card{min-height:0;padding:25px}}
  @media(prefers-reduced-motion:reduce){#lumTsSec .lum-ts-card,#lumTsSec .lum-ts-open,#lumTsSec .lum-ts-open svg{transition:none}}
