/* SPORTENVO Project Case Study V4
   Shared visual layer for verified project detail pages.
   No project copy, image source, SEO metadata or schema is modified. */

.project-case-v4{
  --pc-navy:#07131e;
  --pc-navy-soft:#0d2130;
  --pc-ink:#0b1015;
  --pc-paper:#f3f1ec;
  --pc-paper-alt:#ebe8e1;
  --pc-line:#d4d2cc;
  --pc-muted:#687078;
  --pc-steel:#b7c5ce;
  --pc-steel-dark:#5f7482;
}

/* HERO — image-based and editorial variants */
.project-case-v4 .product-hero{
  min-height:560px!important;
  padding:150px 0 72px!important;
  align-items:flex-end;
  background-color:var(--pc-navy)!important;
  border-bottom:1px solid rgba(183,197,206,.22);
}
.project-case-v4 .product-hero:after{
  background:
    linear-gradient(90deg,rgba(7,19,30,.94) 0%,rgba(7,19,30,.74) 43%,rgba(7,19,30,.22) 78%,rgba(7,19,30,.08) 100%)!important;
}
.project-case-v4 .product-hero .content{max-width:900px}
.project-case-v4 .product-hero .display,
.project-case-v4 .product-hero h1{
  max-width:900px;
  font-size:clamp(48px,5.8vw,78px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  font-weight:730!important;
}
.project-case-v4 .product-hero p{
  max-width:720px;
  margin-top:24px;
  color:#cbd4d9!important;
  font-size:17px!important;
  line-height:1.7;
}
.project-case-v4 .product-hero .eyebrow{color:var(--pc-steel)!important}
.project-case-v4 .case-hero{
  padding:154px 0 82px;
  background:var(--pc-navy);
  color:var(--pc-paper);
  border-bottom:1px solid rgba(183,197,206,.22);
}
.project-case-v4 .case-hero .wrap{max-width:1440px}
.project-case-v4 .case-hero h1{
  max-width:1050px;
  margin:16px 0 26px;
  font-size:clamp(48px,5.8vw,78px);
  line-height:.98;
  letter-spacing:-.035em;
  font-weight:730;
}
.project-case-v4 .case-hero p{
  max-width:820px;
  margin:0;
  color:#cbd4d9!important;
  font-size:17px!important;
  line-height:1.7;
}
.project-case-v4 .case-hero .eyebrow{color:var(--pc-steel)!important}

/* SECTION RHYTHM */
.project-case-v4 main>section,
.project-case-v4>section{position:relative}
.project-case-v4 .section-head{margin-bottom:44px}
.project-case-v4 .section-title{
  max-width:900px;
  font-size:clamp(34px,4vw,52px)!important;
  line-height:1.04!important;
  letter-spacing:-.025em!important;
  font-weight:720!important;
}
.project-case-v4 .sub{
  max-width:800px;
  font-size:16px!important;
  line-height:1.72!important;
  color:var(--pc-muted)!important;
}
.project-case-v4 section[style*="#07111f"] .sub{color:#c4ced4!important}
.project-case-v4 section[style*="#07111f"] .eyebrow{color:var(--pc-steel)!important}

/* SNAPSHOT — narrative + facts */
.project-case-v4 .feature{
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr)!important;
  gap:72px!important;
  align-items:start!important;
}
.project-case-v4 .feature>.table-wrap{
  position:sticky;
  top:110px;
  border-top:3px solid var(--pc-navy)!important;
}
.project-case-v4 .feature>.table-wrap table{min-width:0!important}
.project-case-v4 .feature>.table-wrap td:first-child{
  width:38%;
  color:var(--pc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
}
.project-case-v4 .feature>.table-wrap td:last-child{
  color:var(--pc-ink);
  font-size:14px;
  font-weight:600;
}

/* FACTS / SCOPE / CHALLENGE GRID */
.project-case-v4 .case-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px!important;
  background:var(--pc-line);
  border:1px solid var(--pc-line);
}
.project-case-v4 .case-grid>.card,
.project-case-v4 .case-grid>article{
  min-width:0;
  min-height:230px;
  padding:30px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--pc-paper)!important;
  box-shadow:none!important;
}
.project-case-v4 .case-grid>.card:hover,
.project-case-v4 .case-grid>article:hover{transform:none!important;box-shadow:none!important}
.project-case-v4 .case-grid h3{
  margin:42px 0 12px;
  font-size:22px;
  line-height:1.18;
  letter-spacing:-.02em;
}
.project-case-v4 .case-grid p{font-size:14px;line-height:1.7;color:var(--pc-muted)}
.project-case-v4 .case-grid .eyebrow{color:var(--pc-steel-dark)!important}

/* Normalize older inline challenge blocks without rewriting markup */
.project-case-v4 div[style*="border-left:3px solid #18a8f7"],
.project-case-v4 div[style*="border-left: 3px solid #18a8f7"]{
  border-left:0!important;
  border-top:2px solid var(--pc-steel-dark)!important;
  border-radius:0!important;
  background:var(--pc-paper)!important;
  padding:28px!important;
}
.project-case-v4 div[style*="border-radius:12px"],
.project-case-v4 div[style*="border-radius:10px"],
.project-case-v4 div[style*="border-radius:8px"]{
  border-radius:0!important;
}
.project-case-v4 div[style*="background:#fff"]{
  background:var(--pc-paper)!important;
}
.project-case-v4 section[style*="#f5f7f9"],
.project-case-v4 .case-verification{background:var(--pc-paper-alt)!important}

/* TABLES */
.project-case-v4 .table-wrap{
  border:1px solid var(--pc-line)!important;
  border-radius:0!important;
  background:var(--pc-paper)!important;
  box-shadow:none!important;
}
.project-case-v4 .table-wrap table{min-width:0}
.project-case-v4 .table-wrap th{
  padding:16px 18px;
  background:var(--pc-paper-alt)!important;
  color:var(--pc-ink);
  font-size:10px;
  letter-spacing:.1em;
}
.project-case-v4 .table-wrap td{
  padding:18px;
  border-color:var(--pc-line)!important;
  vertical-align:top;
  line-height:1.6;
}

/* PROCESS */
.project-case-v4 .process{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:1px!important;
  border:1px solid var(--pc-line)!important;
  border-radius:0!important;
  background:var(--pc-line)!important;
}
.project-case-v4 .step{
  min-height:250px!important;
  padding:32px!important;
  border-radius:0!important;
  background:var(--pc-paper)!important;
}
.project-case-v4 .step em{
  color:var(--pc-steel-dark)!important;
  font-size:10px;
  letter-spacing:.12em;
}
.project-case-v4 .step h4{
  margin:56px 0 12px!important;
  font-size:22px;
  letter-spacing:-.02em;
}
.project-case-v4 .step p{color:var(--pc-muted);line-height:1.65}

/* REAL PROJECT PHOTOGRAPHY */
.project-case-v4 .case-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.project-case-v4 .case-gallery figure{margin:0;min-width:0}
.project-case-v4 .case-gallery img{
  width:100%!important;
  height:390px!important;
  object-fit:cover;
  border-radius:0!important;
  display:block;
}
.project-case-v4 section[style*="#07111f"] img{
  border-radius:0!important;
}
.project-case-v4 section[style*="#07111f"] figcaption{
  margin-top:10px!important;
  color:#9eacb5!important;
  font-size:11px!important;
  line-height:1.55;
}

/* VERIFICATION / EVIDENCE */
.project-case-v4 .case-verification{
  padding-top:56px!important;
  padding-bottom:56px!important;
  border-top:1px solid var(--pc-line);
  border-bottom:1px solid var(--pc-line);
}
.project-case-v4 .case-verification .wrap>div{
  max-width:980px!important;
  padding:0 0 0 26px!important;
  border-left:2px solid var(--pc-steel-dark)!important;
}
.project-case-v4 .case-verification .section-title{
  font-size:clamp(25px,3vw,36px)!important;
  max-width:900px;
}

/* RELATED / RESOURCE CARDS */
.project-case-v4 a.card,
.project-case-v4 .card{
  border-radius:0!important;
}
.project-case-v4 .grid3,
.project-case-v4 .grid4{
  gap:1px!important;
  background:var(--pc-line);
  border:1px solid var(--pc-line);
}
.project-case-v4 .grid3>.card,
.project-case-v4 .grid4>a,
.project-case-v4 .grid4>.card{
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:var(--pc-paper)!important;
  box-shadow:none!important;
}
.project-case-v4 .grid4>a{
  padding:26px!important;
}

/* FINAL CTA */
.project-case-v4 .cta-inline{
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:56px!important;
  align-items:end!important;
  padding:42px 0!important;
  border-top:1px solid var(--pc-line)!important;
  border-bottom:1px solid var(--pc-line)!important;
  background:transparent!important;
}
.project-case-v4 .cta-inline h2{
  max-width:800px;
  font-size:clamp(32px,3.8vw,48px)!important;
  line-height:1.05;
}
.project-case-v4 .cta-block{
  max-width:980px;
  margin:0 auto;
  text-align:left!important;
  padding:20px 0;
}
.project-case-v4 .cta-block h2{max-width:760px}
.project-case-v4 .cta-block p{margin-left:0!important;margin-right:0!important}
.project-case-v4 .btn{
  border-radius:0!important;
  min-height:48px;
  padding:13px 18px;
}
.project-case-v4 section[style*="#07111f"] .btn{
  background:var(--pc-paper)!important;
  color:var(--pc-navy)!important;
}
.project-case-v4 section[style*="#07111f"] .btn:hover{
  background:var(--pc-steel)!important;
  color:var(--pc-navy)!important;
}

/* Link treatment */
.project-case-v4 main a:not(.btn):not(.card){
  text-decoration-color:#9dacb5;
  text-underline-offset:4px;
}
.project-case-v4 .link{color:#405d70!important;font-weight:750}

/* Responsive */
@media(max-width:960px){
  .project-case-v4 .product-hero{padding-top:118px!important}
  .project-case-v4 .case-hero{padding-top:120px}
}
@media(max-width:1050px){
  .project-case-v4 .feature{grid-template-columns:1fr!important;gap:42px!important}
  .project-case-v4 .feature>.table-wrap{position:static}
  .project-case-v4 .case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-case-v4 .process{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .project-case-v4 .product-hero{min-height:500px!important;padding:112px 0 54px!important}
  .project-case-v4 .product-hero .display,
  .project-case-v4 .product-hero h1,
  .project-case-v4 .case-hero h1{font-size:42px!important;line-height:1.02!important}
  .project-case-v4 .case-hero{padding:118px 0 58px}
  .project-case-v4 .product-hero p,
  .project-case-v4 .case-hero p{font-size:16px!important}
  .project-case-v4 .case-grid,
  .project-case-v4 .process,
  .project-case-v4 .case-gallery{grid-template-columns:1fr!important}
  .project-case-v4 .case-grid>.card,
  .project-case-v4 .case-grid>article,
  .project-case-v4 .step{min-height:auto!important}
  .project-case-v4 .case-grid h3{margin-top:28px}
  .project-case-v4 .step h4{margin-top:34px!important}
  .project-case-v4 .case-gallery img{height:300px!important}
  .project-case-v4 .cta-inline{grid-template-columns:1fr!important;align-items:start!important}
}
