/* Legends Estates case study - scoped extension of the CDFX design system. */
.page-legends-case{
  --case-panel:rgba(255,255,255,.03);
  --case-panel-strong:rgba(255,255,255,.055);
  --case-paper:#eee5d5;
  --case-paper-ink:#15120e;
  --case-wine:#6d1728;
  background:var(--home-bg);
}

/* Current CDFX global header pattern. */
.page-legends-case .cdfx-global-header{
  position:sticky;
  top:0;
  z-index:90;
  border-bottom:1px solid rgba(255,255,255,.1);
  background:rgba(8,9,12,.9);
  backdrop-filter:blur(16px) saturate(130%);
}
.page-legends-case .cdfx-global-header *{box-sizing:border-box}
.page-legends-case .cdfx-global-header-inner{
  width:min(calc(100% - 48px),1200px);
  min-height:76px;
  margin-inline:auto;
  display:flex;
  align-items:center;
  gap:16px;
}
.page-legends-case .cdfx-global-brand{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  text-decoration:none;
}
.page-legends-case .cdfx-global-brand img{display:block;width:112px;height:auto}
.page-legends-case .cdfx-global-anchor-nav{
  margin-left:auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(14px,1.8vw,24px);
}
.page-legends-case .cdfx-global-anchor-nav a{
  color:#aeb5c0!important;
  text-decoration:none;
  white-space:nowrap;
  font:760 .9rem/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transition:color .16s ease;
}
.page-legends-case .cdfx-global-anchor-nav a:hover,
.page-legends-case .cdfx-global-anchor-nav a:focus-visible{color:#fff!important}
.page-legends-case .cdfx-global-header-actions{
  margin-left:clamp(14px,2vw,28px);
  display:flex;
  align-items:center;
  gap:12px;
}
.page-legends-case .cdfx-global-start{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.76rem 1.08rem;
  border:1px solid #fff;
  border-radius:999px;
  background:#fff;
  color:#08090c!important;
  -webkit-text-fill-color:#08090c;
  text-decoration:none;
  font:800 .94rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.page-legends-case .cdfx-global-menu{position:relative}
.page-legends-case .cdfx-global-menu>summary{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  list-style:none;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:#101117;
  color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.page-legends-case .cdfx-global-menu>summary::-webkit-details-marker{display:none}
.page-legends-case .cdfx-global-menu-icon,
.page-legends-case .cdfx-global-menu-icon::before,
.page-legends-case .cdfx-global-menu-icon::after{
  width:18px;
  height:2px;
  display:block;
  border-radius:999px;
  background:currentColor;
}
.page-legends-case .cdfx-global-menu-icon{position:relative}
.page-legends-case .cdfx-global-menu-icon::before,
.page-legends-case .cdfx-global-menu-icon::after{content:"";position:absolute;left:0}
.page-legends-case .cdfx-global-menu-icon::before{top:-6px}
.page-legends-case .cdfx-global-menu-icon::after{top:6px}
.page-legends-case .cdfx-global-menu-panel{
  position:absolute;
  top:62px;
  right:0;
  z-index:100;
  width:min(92vw,760px);
  max-height:calc(100vh - 96px);
  overflow:auto;
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(320px,1.1fr);
  gap:10px;
  padding:12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:#0f1016;
  box-shadow:0 26px 80px rgba(0,0,0,.62);
}
.page-legends-case .cdfx-global-menu-group{
  min-width:0;
  padding:10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.025);
}
.page-legends-case .cdfx-global-menu-group h2{
  margin:0 0 8px;
  color:var(--home-green)!important;
  font:900 .72rem/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.page-legends-case .cdfx-global-menu-links{display:grid}
.page-legends-case .cdfx-global-menu-links a{
  display:block;
  padding:.67rem .72rem;
  border-radius:10px;
  color:#aeb5c0!important;
  text-decoration:none;
  font:720 .9rem/1.25 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.page-legends-case .cdfx-global-menu-links a:hover,
.page-legends-case .cdfx-global-menu-links a:focus-visible,
.page-legends-case .cdfx-global-menu-links a[aria-current="page"]{
  background:rgba(255,255,255,.07);
  color:#fff!important;
}
.page-legends-case .cdfx-global-site-groups{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.page-legends-case .cdfx-global-site-groups .cdfx-global-menu-group:last-child{grid-column:1/-1}
.page-legends-case .cdfx-global-header a:focus-visible,
.page-legends-case .cdfx-global-header summary:focus-visible{
  outline:3px solid var(--home-blue);
  outline-offset:3px;
}
.page-legends-case main [id]{scroll-margin-top:96px}

/* Case-study hero. */
.case-hero{
  padding-top:clamp(46px,6vw,82px);
  background:
    radial-gradient(900px 520px at 8% -4%,rgba(158,242,195,.09),transparent 60%),
    radial-gradient(780px 460px at 92% 8%,rgba(230,179,90,.1),transparent 60%),
    var(--home-bg);
}
.case-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:clamp(34px,6vw,78px);
  align-items:center;
}
.case-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
  color:var(--home-muted);
  font-size:.82rem;
  font-weight:760;
}
.case-breadcrumb a{text-decoration:none}
.case-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.case-hero h1{
  max-width:12ch;
  margin:16px 0 22px;
  font-size:clamp(2.7rem,5.7vw,5.45rem);
  line-height:.94;
  letter-spacing:-.058em;
  text-wrap:balance;
}
.case-hero-lead{
  max-width:64ch;
  margin:0;
  color:#d1d6de;
  font-size:clamp(1.08rem,2vw,1.3rem);
}
.case-hero-media{
  position:relative;
  min-height:650px;
  margin:0;
  overflow:hidden;
  border:1px solid var(--home-line-strong);
  border-radius:var(--home-radius-lg);
  background:#11141b;
  box-shadow:var(--home-shadow);
}
.case-hero-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.72));
  pointer-events:none;
}
.case-hero-media img{width:100%;height:100%;min-height:650px;object-fit:cover}
.case-hero-caption{
  position:absolute;
  right:24px;
  bottom:22px;
  left:24px;
  z-index:1;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:end;
}
.case-hero-caption strong{font-size:1.08rem}
.case-hero-caption span{color:#d7dbe2;font-size:.84rem;text-align:right}
.case-pill-list{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;padding:0;list-style:none}
.case-pill-list li{
  padding:.48rem .72rem;
  border:1px solid var(--home-line);
  border-radius:999px;
  background:rgba(255,255,255,.028);
  color:#c6cbd3;
  font-size:.86rem;
  font-weight:740;
}

/* Shared case-study layout. */
.case-section-heading{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(280px,.98fr);
  gap:clamp(28px,6vw,88px);
  align-items:end;
  margin-bottom:clamp(34px,5vw,58px);
}
.case-section-heading h2,
.case-conclusion-copy h2,
.case-final-inner h2{
  max-width:18ch;
  margin:12px 0 0;
  font-size:clamp(2.1rem,4.7vw,4.35rem);
  line-height:1.01;
  letter-spacing:-.048em;
  text-wrap:balance;
}
.case-section-heading>p{margin:0;color:var(--home-muted);font-size:1.03rem}
.case-kicker{
  margin:0;
  color:var(--home-green);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.case-kicker-gold{color:var(--home-gold)}
.case-grid{display:grid;gap:16px}
.case-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.case-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.case-card{
  padding:26px;
  border:1px solid var(--home-line);
  border-radius:var(--home-radius);
  background:var(--case-panel);
  transition:transform .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.case-card:hover,
.case-card:focus-within{
  transform:translateY(-2px);
  border-color:rgba(158,242,195,.42);
  background:rgba(158,242,195,.065);
  box-shadow:0 16px 36px rgba(0,0,0,.2);
}
.case-card-number{display:block;color:var(--home-gold);font-size:.8rem;font-weight:900}
.case-card h3{margin:36px 0 10px;font-size:1.32rem;line-height:1.16}
.case-card p{margin:0;color:var(--home-muted)}
.case-card ul{margin:12px 0 0;padding-left:20px;color:var(--home-muted)}
.case-card li+li{margin-top:7px}
.case-wide-card{grid-column:1/-1}

.case-snapshot-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.case-snapshot-item{
  min-height:190px;
  padding:24px;
  border:1px solid var(--home-line);
  border-radius:var(--home-radius);
  background:var(--case-panel);
}
.case-snapshot-item span{
  display:block;
  color:var(--home-gold);
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.case-snapshot-item strong{display:block;margin-top:38px;font-size:1.18rem;line-height:1.25}
.case-snapshot-outcome{
  grid-column:1/-1;
  min-height:auto;
  background:linear-gradient(145deg,rgba(158,242,195,.065),rgba(255,255,255,.025));
}
.case-snapshot-outcome strong{max-width:62ch;margin-top:18px;font-size:clamp(1.25rem,2.4vw,1.8rem)}

.case-media-card{
  overflow:hidden;
  border:1px solid var(--home-line-strong);
  border-radius:var(--home-radius-lg);
  background:var(--home-panel);
  box-shadow:var(--home-shadow);
}
.case-media-card img{width:100%;height:auto}
.case-media-caption{padding:14px 18px;color:var(--home-muted);font-size:.88rem}
.case-media-caption strong{color:var(--home-ink)}

.case-strategy-grid,
.case-commerce-grid,
.case-conclusion-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:clamp(28px,5vw,66px);
  align-items:center;
}
.case-copy p{color:var(--home-muted);font-size:1.04rem}
.case-copy p:first-of-type{color:#d7dce3;font-size:clamp(1.12rem,2vw,1.35rem)}
.case-callout{
  margin-top:26px;
  padding:24px;
  border:1px solid rgba(230,179,90,.34);
  border-radius:var(--home-radius);
  background:rgba(230,179,90,.07);
}
.case-callout strong{display:block;margin-top:8px;font-size:1.25rem;line-height:1.35}

.case-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
.case-gallery figure{margin:0;overflow:hidden;border:1px solid var(--home-line);border-radius:var(--home-radius);background:var(--case-panel)}
.case-gallery img{width:100%;aspect-ratio:1;object-fit:cover}
.case-gallery figure:nth-child(3) img{object-fit:contain;background:#000;padding:14px}
.case-gallery figcaption{padding:12px 16px;color:var(--home-muted);font-size:.86rem}
.case-principle{
  margin-top:28px;
  padding:clamp(26px,4vw,44px);
  border:1px solid var(--home-line-strong);
  border-radius:var(--home-radius-lg);
  background:
    radial-gradient(700px 300px at 90% 0,rgba(230,179,90,.09),transparent 65%),
    var(--case-panel);
}
.case-principle blockquote{max-width:34ch;margin:12px 0 0;font-size:clamp(1.45rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.025em}

.case-commerce-features{display:grid;gap:0;border-top:1px solid var(--home-line)}
.case-commerce-feature{padding:18px 0;border-bottom:1px solid var(--home-line)}
.case-commerce-feature h3{margin:0 0 5px;font-size:1.12rem}
.case-commerce-feature p{margin:0;color:var(--home-muted)}

.case-visibility-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:clamp(28px,5vw,60px);align-items:start}
.case-visibility-cards{display:grid;gap:14px}
.case-visibility-card{padding:22px;border:1px solid var(--home-line);border-radius:var(--home-radius);background:var(--case-panel)}
.case-visibility-card h3{margin:0 0 8px;font-size:1.14rem}
.case-visibility-card p{margin:0;color:var(--home-muted)}

.case-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--home-line-strong);
  border-radius:var(--home-radius-lg);
  background:#0c0d11;
}
.case-metric{min-height:164px;padding:24px;border-right:1px solid var(--home-line);border-bottom:1px solid var(--home-line)}
.case-metric:nth-child(4n){border-right:0}
.case-metric:nth-last-child(-n+4){border-bottom:0}
.case-metric span{display:block;color:var(--home-gold);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.case-metric strong{display:block;margin:16px 0 6px;font-size:clamp(2.2rem,4vw,3.25rem);line-height:1}
.case-metric small{color:var(--home-muted);font-size:.84rem}
.case-benchmark-note{margin:16px 0 0;color:var(--home-muted);font-size:.9rem}
.case-evidence-boundary{
  margin-top:28px;
  padding:26px;
  border:1px solid rgba(158,242,195,.35);
  border-radius:var(--home-radius);
  background:rgba(158,242,195,.07);
}
.case-evidence-boundary strong{display:block;margin-top:8px;font-size:clamp(1.2rem,2.4vw,1.7rem);line-height:1.35}

.case-faq-list{border-top:1px solid var(--home-line)}
.case-faq-list details{border-bottom:1px solid var(--home-line)}
.case-faq-list summary{cursor:pointer;padding:22px 44px 22px 0;font-size:1.08rem;font-weight:850}
.case-faq-list p{max-width:78ch;margin:0;padding:0 0 22px;color:var(--home-muted)}

.case-conclusion-image img{width:100%;background:#000;object-fit:contain}
.case-conclusion-copy p{color:var(--home-muted);font-size:1.04rem}
.case-conclusion-copy .home-actions{margin-top:28px}

.case-final-cta{
  text-align:center;
  background:
    radial-gradient(760px 400px at 50% 0,rgba(158,242,195,.08),transparent 62%),
    var(--home-bg);
}
.case-final-inner{display:grid;justify-items:center}
.case-final-inner h2{max-width:19ch}
.case-final-inner>p{max-width:64ch;color:var(--home-muted)}
.case-final-inner .home-actions{justify-content:center}

@media(max-width:1080px){
  .page-legends-case .cdfx-global-anchor-nav{display:none}
  .page-legends-case .cdfx-global-header-actions{margin-left:auto}
  .case-hero-grid,
  .case-strategy-grid,
  .case-commerce-grid,
  .case-conclusion-grid,
  .case-visibility-layout{grid-template-columns:1fr}
  .case-hero h1{max-width:14ch}
  .case-hero-media{min-height:0}
  .case-hero-media img{min-height:0;aspect-ratio:16/7}
  .case-snapshot-grid{grid-template-columns:1fr 1fr}
  .case-grid-4{grid-template-columns:1fr 1fr}
  .case-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-metric:nth-child(2n){border-right:0}
  .case-metric:nth-child(4n){border-right:0}
  .case-metric:nth-last-child(-n+4){border-bottom:1px solid var(--home-line)}
  .case-metric:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:760px){
  .page-legends-case .cdfx-global-header-inner{width:min(calc(100% - 28px),1200px)}
  .page-legends-case .cdfx-global-brand img{width:96px}
  .page-legends-case .cdfx-global-start{display:none}
  .page-legends-case .cdfx-global-menu-panel{width:min(92vw,380px);grid-template-columns:1fr}
  .page-legends-case .cdfx-global-site-groups{grid-template-columns:1fr}
  .page-legends-case .cdfx-global-site-groups .cdfx-global-menu-group:last-child{grid-column:auto}
  .page-legends-case .container{width:min(calc(100% - 32px),var(--home-max))}
  .case-section-heading{grid-template-columns:1fr;align-items:start}
  .case-snapshot-grid,
  .case-grid-2,
  .case-grid-3,
  .case-grid-4,
  .case-gallery{grid-template-columns:1fr}
  .case-hero-caption{display:block}
  .case-hero-caption span{display:block;margin-top:6px;text-align:left}
  .case-snapshot-outcome{grid-column:auto}
  .case-card h3{margin-top:26px}
  .case-metrics{grid-template-columns:1fr}
  .case-metric{border-right:0!important;border-bottom:1px solid var(--home-line)!important}
  .case-metric:last-child{border-bottom:0!important}
}
@media(prefers-reduced-motion:reduce){
  .page-legends-case *,
  .page-legends-case *::before,
  .page-legends-case *::after{scroll-behavior:auto!important;transition:none!important}
}

/* === CDFX case-study white-button text correction — 2026-08-04 === */
.page-legends-case .cdfx-global-start,
.page-legends-case .home-button-primary,
.page-legends-case .cdfx-global-start *,
.page-legends-case .home-button-primary * {
  color:#000000 !important;
  -webkit-text-fill-color:#000000 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
/* === End CDFX case-study white-button text correction === */

/* CDFX LEGENDS IMAGE DELIVERY REPAIR START */
.case-hero-media img,
.case-media-card img,
.case-gallery img{
  display:block;
  width:100%;
  opacity:1;
  visibility:visible;
}
.case-hero-media img{
  min-height:650px;
  object-fit:cover;
}
/* CDFX LEGENDS IMAGE DELIVERY REPAIR END */
