
/* ==========================================================================
   PROPERTYTALENTS — INSIGHT DETAIL SYSTEM
   ========================================================================== */

.intel-detail-hero{
  position:relative;min-height:650px;padding:calc(var(--header-h) + 82px) var(--pad) clamp(72px,7vw,104px);
  background:#15181b;color:#fff;overflow:hidden
}
.intel-detail-hero::before{
  content:"";position:absolute;inset:0;background:
    linear-gradient(90deg,rgba(7,10,13,.74),rgba(7,10,13,.38) 47%,rgba(7,10,13,.13)),
    var(--detail-image) var(--detail-position,center 50%)/cover no-repeat;
  opacity:.90
}
.intel-detail-hero__inner{position:relative;z-index:2;width:min(var(--content-max),100%);margin:0 auto}
.intel-detail-breadcrumb{
  margin:0 0 46px;color:rgba(255,255,255,.48);font:500 8px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase
}
.intel-detail-breadcrumb a{color:rgba(255,255,255,.72)}
.intel-detail-hero__grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);gap:clamp(50px,8vw,120px);align-items:end
}
.intel-detail-type{
  display:block;margin-bottom:13px;color:var(--red);font:500 9px/1 var(--ui);letter-spacing:.13em;text-transform:uppercase
}
.intel-detail-title{
  margin:0;max-width:980px;font-family:var(--editorial);font-size:clamp(50px,5vw,76px);font-weight:400;line-height:.98;letter-spacing:-.03em
}
.intel-detail-deck{margin:20px 0 0;max-width:720px;color:rgba(255,255,255,.76);font:400 13px/1.68 var(--ui)}
.intel-detail-meta{border-top:1px solid rgba(255,255,255,.14)}
.intel-meta-row{display:flex;justify-content:space-between;gap:22px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.intel-meta-row span:first-child{color:rgba(255,255,255,.38);font:500 7px/1 var(--ui);letter-spacing:.10em;text-transform:uppercase}
.intel-meta-row span:last-child{color:rgba(255,255,255,.82);font:400 10px/1.4 var(--ui);text-align:right}
.intel-detail-action{
  width:100%;margin-top:18px;min-height:50px;padding:13px 15px;border:0;background:var(--red);color:#fff;
  display:flex;align-items:center;justify-content:space-between;gap:22px;cursor:pointer;font:500 10px/1 var(--ui)
}

/* Article/report body */
.intel-body{
  background:var(--paper);padding:clamp(82px,7vw,112px) var(--pad)
}
.intel-body__inner{
  width:min(var(--content-max),100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.42fr);
  gap:clamp(60px,8vw,124px);align-items:start
}
.intel-copy{max-width:850px}
.intel-copy .lead{
  margin:0 0 42px;font-family:var(--editorial);font-size:clamp(27px,2.4vw,38px);font-weight:400;line-height:1.14;letter-spacing:-.015em;color:#303438
}
.intel-copy section{padding-bottom:42px;margin-bottom:42px;border-bottom:1px solid rgba(17,19,21,.10)}
.intel-copy section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.intel-copy h2{
  margin:0 0 18px;font-family:var(--editorial);font-size:clamp(32px,2.8vw,44px);font-weight:400;line-height:1.04;letter-spacing:-.021em
}
.intel-copy h3{
  margin:28px 0 12px;font-family:var(--editorial);font-size:clamp(24px,2vw,31px);font-weight:400;line-height:1.06
}
.intel-copy p{margin:0;color:#5f6569;font:400 12px/1.78 var(--ui)}
.intel-copy p + p{margin-top:15px}
.intel-points{list-style:none;margin:20px 0 0;padding:0}
.intel-points li{
  position:relative;padding:13px 0 13px 23px;border-bottom:1px solid rgba(17,19,21,.08);color:#50565a;font:400 11px/1.58 var(--ui)
}
.intel-points li::before{content:"";position:absolute;left:0;top:20px;width:5px;height:5px;background:var(--red)}
.pullquote{
  margin:42px 0;padding:4px 0 4px 26px;border-left:2px solid var(--red);
  font-family:var(--editorial);font-size:clamp(27px,2.2vw,36px);font-weight:400;line-height:1.13;color:#282c30
}
.intel-sidebar{
  position:sticky;top:28px;background:#fff;border:1px solid rgba(17,19,21,.08);padding:28px
}
.intel-sidebar__kicker{margin:0 0 14px;color:var(--red);font:500 8px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase}
.intel-sidebar h3{
  margin:0;font-family:var(--editorial);font-size:clamp(28px,2.2vw,36px);font-weight:400;line-height:1.04
}
.intel-sidebar p{margin:15px 0 0;color:#62686c;font:400 11px/1.62 var(--ui)}
.intel-sidebar button,.intel-sidebar a{
  width:100%;min-height:48px;margin-top:22px;padding:13px 14px;border:1px solid rgba(17,19,21,.14);background:#fff;color:var(--ink);
  display:flex;align-items:center;justify-content:space-between;cursor:pointer;font:500 10px/1 var(--ui)
}
.intel-sidebar .primary{background:var(--red);border-color:var(--red);color:#fff}

/* Report chapter navigator */
.report-chapters{
  background:#fff;padding:clamp(74px,6.5vw,100px) var(--pad)
}
.report-chapters__inner{width:min(var(--content-max),100%);margin:0 auto}
.report-chapters__head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.44fr);gap:clamp(42px,7vw,106px);align-items:end;margin-bottom:36px
}
.report-chapters__title{
  margin:0;max-width:760px;font-family:var(--editorial);font-size:clamp(38px,3.5vw,54px);font-weight:400;line-height:1.02;letter-spacing:-.024em
}
.report-chapters__copy{justify-self:end;max-width:390px;margin:0;color:#5f6569;font:400 12px/1.68 var(--ui)}
.chapter-list{border-top:1px solid rgba(17,19,21,.12)}
.chapter-row{
  display:grid;grid-template-columns:52px minmax(240px,.75fr) minmax(0,1fr) 22px;gap:20px;align-items:center;
  min-height:84px;border-bottom:1px solid rgba(17,19,21,.10)
}
.chapter-row__num{color:var(--red);font:500 9px/1 var(--ui)}
.chapter-row__name{font-family:var(--editorial);font-size:clamp(22px,1.7vw,28px);font-weight:400}
.chapter-row__meta{color:#6b7175;font:400 10px/1.45 var(--ui)}
.chapter-row__arrow{justify-self:end;color:#a2a6aa}

/* Salary benchmark visual */
.salary-benchmark{
  background:#fff;padding:clamp(78px,7vw,108px) var(--pad)
}
.salary-benchmark__inner{width:min(var(--content-max),100%);margin:0 auto}
.salary-benchmark__head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.46fr);gap:clamp(42px,7vw,106px);align-items:end;margin-bottom:38px
}
.salary-benchmark__title{
  margin:0;max-width:780px;font-family:var(--editorial);font-size:clamp(38px,3.55vw,56px);font-weight:400;line-height:1.02;letter-spacing:-.024em
}
.salary-benchmark__copy{justify-self:end;max-width:400px;margin:0;color:#5f6569;font:400 12px/1.68 var(--ui)}
.benchmark-table{border-top:1px solid rgba(17,19,21,.12)}
.benchmark-row{
  display:grid;grid-template-columns:minmax(220px,.8fr) minmax(140px,.34fr) minmax(140px,.34fr) minmax(0,.8fr);
  gap:22px;align-items:center;min-height:82px;border-bottom:1px solid rgba(17,19,21,.10)
}
.benchmark-row.header{min-height:52px;color:#90969a;font:500 7px/1 var(--ui);letter-spacing:.10em;text-transform:uppercase}
.benchmark-role{font-family:var(--editorial);font-size:clamp(21px,1.6vw,27px);font-weight:400}
.benchmark-band{color:#50565a;font:500 10px/1.4 var(--ui)}
.benchmark-context{color:#6d7377;font:400 10px/1.45 var(--ui)}
.salary-note{
  margin-top:16px;color:#92979b;font:400 9px/1.5 var(--ui)
}

/* Download modal */
.download-modal{
  position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:22px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .38s ease,visibility 0s linear .38s
}
.download-modal.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .38s ease}
.download-modal__backdrop{position:absolute;inset:0;background:rgba(5,8,11,.72)}
.download-modal__panel{
  position:relative;z-index:2;width:min(820px,calc(100vw - 44px));display:grid;grid-template-columns:minmax(0,1.06fr) minmax(280px,.94fr);
  background:#fff;color:var(--ink);box-shadow:0 34px 110px rgba(0,0,0,.36)
}
.download-modal__close{
  position:absolute;z-index:5;top:12px;right:12px;width:34px;height:34px;border:0;background:rgba(255,255,255,.90);
  color:var(--ink);cursor:pointer;font:300 24px/1 var(--ui)
}
.download-modal__form{padding:clamp(30px,3vw,42px)}
.download-modal__brand{width:clamp(164px,14vw,205px);height:auto;margin:0 0 22px}
.download-modal__kicker{margin:0 0 8px;color:var(--red);font:500 8px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase}
.download-modal__title{margin:0;font-family:var(--editorial);font-size:clamp(32px,2.8vw,42px);line-height:1.03;font-weight:400}
.download-modal__intro{margin:14px 0 24px;color:#62686d;font:400 11px/1.55 var(--ui)}
.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 16px}
.download-field{display:block}.download-field.full{grid-column:1/-1}
.download-field span{display:block;margin-bottom:5px;color:#8b9094;font:500 7px/1 var(--ui);letter-spacing:.10em;text-transform:uppercase}
.download-field input{
  width:100%;border:0;border-bottom:1px solid rgba(17,19,21,.18);outline:0;padding:8px 0 9px;background:transparent;color:var(--ink);
  border-radius:0;font:400 11px/1.35 var(--ui)
}
.download-submit{
  width:100%;margin-top:22px;padding:13px 15px;border:0;background:var(--red);color:#fff;
  display:flex;align-items:center;justify-content:space-between;cursor:pointer;font:500 10px/1 var(--ui)
}
.download-footnote{margin:12px 0 0;color:#80868b;font:400 9px/1.45 var(--ui)}
.download-modal__visual{
  position:relative;min-height:430px;background:
    linear-gradient(180deg,rgba(7,10,13,.06),rgba(7,10,13,.60)),
    var(--download-image) center/cover no-repeat
}
.download-modal__visual-copy{position:absolute;left:26px;right:26px;bottom:26px;color:#fff}
.download-modal__visual-copy span{display:block;margin-bottom:9px;color:rgba(255,255,255,.60);font:500 8px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase}
.download-modal__visual-copy strong{display:block;max-width:320px;font-family:var(--editorial);font-size:27px;line-height:1.08;font-weight:400}
body.modal-open{overflow:hidden}

/* Related */
.related-insights{background:var(--paper-2);padding:clamp(76px,6.5vw,102px) var(--pad)}
.related-insights__inner{width:min(var(--content-max),100%);margin:0 auto}
.related-insights__head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:25px}
.related-insights__head h2{margin:0;font-family:var(--editorial);font-size:clamp(34px,3vw,48px);font-weight:400}
.related-list{border-top:1px solid rgba(17,19,21,.12)}
.related-row{
  display:grid;grid-template-columns:100px minmax(0,1fr) 22px;gap:20px;align-items:center;min-height:82px;border-bottom:1px solid rgba(17,19,21,.10)
}
.related-row__type{color:var(--red);font:500 8px/1 var(--ui);letter-spacing:.10em;text-transform:uppercase}
.related-row__title{font-family:var(--editorial);font-size:clamp(22px,1.7vw,28px);font-weight:400}
.related-row__arrow{justify-self:end;color:#a2a6aa}

@media(max-width:980px){
  .intel-detail-hero__grid,.intel-body__inner,.report-chapters__head,.salary-benchmark__head{grid-template-columns:1fr}
  .intel-sidebar{position:static}
  .report-chapters__copy,.salary-benchmark__copy{justify-self:start}
  .download-modal__panel{grid-template-columns:1fr;max-height:calc(100dvh - 44px);overflow:auto}
  .download-modal__visual{min-height:190px;order:-1}
  .benchmark-row{grid-template-columns:minmax(180px,1fr) 120px 120px}
  .benchmark-context{display:none}
}
@media(max-width:600px){
  .intel-detail-title{font-size:44px}
  .chapter-row{grid-template-columns:34px 1fr 22px}
  .chapter-row__meta{grid-column:2}
  .benchmark-row{grid-template-columns:1fr 100px}
  .benchmark-row > :nth-child(3),.benchmark-row > :nth-child(4){display:none}
  .download-grid{grid-template-columns:1fr}.download-field.full{grid-column:auto}
}

/* Build 72 — Source Serif 4 Regular for publication/report titles */
.intel-detail-title,
.download-modal__title,
.download-modal__visual-copy strong,
.related-row__title{
  font-family:var(--report);
  font-weight:400;
}
