/* ────────────────────────────────────────────────────────────
   TexInvestCo — FEATURED CASE STUDY (case-study-sql-server.html)
   Loaded after css/shared.css.
   ──────────────────────────────────────────────────────────── */

body{line-height:1.7;padding-top:68px;}

/* Fixed nav, matching the rest of the site — position:sticky is broken by
   shared.css's overflow-x:hidden on html/body (see who-we-are.css note). */
nav{position:fixed;top:0;left:0;right:0;width:100%;box-sizing:border-box;}

/* HERO — reuses who-we-are.html's .pg-hero pattern */
.pg-hero{
  padding:60px 5vw 44px;
  background:linear-gradient(150deg,#111d33 0%,#1a2e50 50%,#111d33 100%);
  position:relative;overflow:hidden;
}
.pg-hero-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(202,168,75,0.05) 0%,transparent 65%);}
.pg-hero-grid{position:relative;z-index:1;max-width:1100px;margin:0 auto;}
.pg-hero-text{text-align:left;}
.pg-eyebrow{
  display:flex;align-items:center;gap:0.8rem;
  font-size:0.62rem;font-weight:500;letter-spacing:0.42em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;
}
.pg-eyebrow::before{content:'';width:22px;height:1px;background:var(--gold);flex-shrink:0;}
.pg-title{font-family:var(--fd);font-size:clamp(26px,3.4vw,38px);font-weight:600;color:var(--hi);line-height:1.25;margin-bottom:18px;letter-spacing:0.02em;max-width:820px;}
.pg-title em{font-style:normal;color:var(--gold);font-weight:400;}
.pg-intro{font-size:1.125rem;font-weight:300;color:var(--mid);line-height:1.85;max-width:680px;margin:0 0 1.6rem;}

.cs-meta{display:flex;flex-wrap:wrap;gap:1.6rem;padding-top:1.2rem;border-top:1px solid var(--gf);}
.cs-meta span{font-size:0.78rem;color:var(--mid);}
.cs-meta strong{display:block;font-size:0.6rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:0.3rem;}

/* SECTION WRAP */
.sec{padding:80px 5vw;}
.bg0{background:var(--bg-0);}
.si{max-width:1080px;margin:0 auto;}

/* GRID: sidebar + main */
.cs-grid{display:grid;grid-template-columns:260px 1fr;gap:3.4rem;align-items:start;}

/* SIDEBAR — labeled fields stacked, echoing the source document's own
   sidebar-of-labeled-fields layout, kept sticky so it travels with the
   reader down the main content column. */
.cs-sidebar{
  position:sticky;top:92px;
  background:var(--bg-1);
  border:1px solid var(--gb);
  border-radius:6px;
  padding:0.4rem 0;
}
.cs-field{padding:1.3rem 1.5rem;border-bottom:1px solid var(--gf);}
.cs-field:last-child{border-bottom:none;}
.cs-field-label{
  font-size:0.62rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;
  color:var(--gold);margin-bottom:0.6rem;
}
.cs-field-body{font-size:0.88rem;font-weight:300;color:var(--mid);line-height:1.7;}
.cs-kv{display:flex;justify-content:space-between;gap:0.6rem;font-size:0.82rem;color:var(--mid);padding:0.2rem 0;}
.cs-kv span:first-child{color:var(--lo);}
.cs-kv span:last-child{color:var(--hi);font-weight:500;text-align:right;}
.cs-list{margin:0;padding-left:1.1rem;}
.cs-list li{font-size:0.86rem;font-weight:300;color:var(--mid);line-height:1.6;margin-bottom:0.4rem;}
.cs-list li:last-child{margin-bottom:0;}

/* MAIN CONTENT */
.cs-p{font-size:1.125rem;font-weight:300;color:var(--mid);line-height:1.9;margin-bottom:1.4rem;}

.cs-quote{
  margin:2.2rem 0;padding:1.6rem 1.8rem;
  background:var(--bg-1);border-left:3px solid var(--gold);border-radius:0 6px 6px 0;
}
.cs-quote p{font-family:var(--fd);font-size:1.15rem;font-weight:600;color:var(--hi);line-height:1.55;margin-bottom:0.8rem;}
.cs-quote cite{font-style:normal;font-size:0.72rem;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold);}

.cs-facts,.cs-stack{margin:2.6rem 0;padding:1.8rem 2rem;background:var(--bg-1);border:1px solid var(--gb);border-radius:6px;}
.cs-facts-title{font-family:var(--fd);font-size:1rem;font-weight:600;color:var(--hi);margin-bottom:1.2rem;}

.cs-table{width:100%;border-collapse:collapse;}
.cs-table tr{border-bottom:1px solid var(--gf);}
.cs-table tr:last-child{border-bottom:none;}
.cs-table th,.cs-table td{padding:0.7rem 0;text-align:left;font-weight:300;font-size:0.92rem;vertical-align:top;}
.cs-table th{width:46%;color:var(--lo);font-weight:400;padding-right:1rem;}
.cs-table td{color:var(--hi);}

.cs-stack-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem 2rem;}
.cs-stack-h{font-size:0.68rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);margin-bottom:0.6rem;}

.cs-legal{font-size:0.78rem;font-weight:300;color:var(--lo);line-height:1.7;margin:2.4rem 0 2rem;padding-top:1.4rem;border-top:1px solid var(--gf);}

.proof-link{font-size:0.88rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;display:inline-block;border-bottom:1px solid rgba(202,168,75,0.4);padding-bottom:4px;transition:color 0.2s,border-color 0.2s;}
.proof-link:hover{color:var(--hi);border-color:var(--hi);}

/* RESPONSIVE */
@media(max-width:900px){
  .cs-grid{grid-template-columns:1fr;gap:2rem;}
  .cs-sidebar{position:static;}
  .cs-stack-grid{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .sec{padding:44px 5vw;}
  .pg-hero{padding:44px 5vw 36px;}
  .cs-facts,.cs-stack{padding:1.4rem 1.3rem;}
  .cs-table th,.cs-table td{font-size:0.85rem;}
}
