/* Styles for /diagnostic/ only. Builds on styles.css; nothing here touches the homepage. */

.dark + .dark{border-top:1px solid rgba(255,255,255,.08)}

/* hero */
.sp-hero{padding-top:clamp(120px,18vh,180px);padding-bottom:clamp(60px,10vh,110px)}
.sp-hero .kicker a{text-decoration:none;color:inherit}
.sp-hero .kicker a:hover{color:var(--ember-2)}
.sp-eyebrow{font-family:var(--mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);margin-bottom:1.4rem}
.sp-hero h1{font-size:clamp(2.4rem,6.2vw,5rem);max-width:18ch;font-weight:650;line-height:1.02}
.sp-hero .hero-sub{max-width:60ch}
.sp-proof{margin-top:2.2rem;font-family:var(--mono);font-size:.82rem;color:var(--fog-dark)}

/* shared bits */
.sp-lead{margin-top:1.2rem;max-width:58ch;font-size:1.08rem;color:var(--fog)}
.light .sp-lead{color:#4c4f55}
.sp-aside{margin-top:2rem;max-width:66ch;font-size:1rem;color:var(--fog)}
.sp-aside b{color:var(--bone);font-family:var(--display);font-weight:650}
.light .sp-aside{color:#4c4f55}
.light .sp-aside b{color:var(--ink)}
.sp-h3{font-family:var(--display);font-weight:650;font-size:1.4rem;margin-top:3rem}
.sp-label{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--fog-dark);display:block}
.offers.sp-two{margin-top:2.6rem}
.offers.sp-two .cell:hover,.sp-not:hover{transform:none;box-shadow:none}

/* currency toggle on dark sections */
.dark .cur{background:var(--carbon-2);border-color:rgba(255,255,255,.18)}
.dark .cur button[aria-pressed="true"]{background:var(--bone);color:var(--ink)}

/* deliverables */
#deliverables .offers{margin-top:2.6rem}
.sp-example{margin-top:2.4rem;background:var(--carbon-2);border:1px solid rgba(255,255,255,.1);border-radius:var(--rad);padding:clamp(1.4rem,4vw,2.2rem)}
.sp-example-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}
.sp-example h3{font-family:var(--display);font-weight:650;font-size:1.3rem}
.sp-example dl>div{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:1.5rem;padding:.9rem 0;border-top:1px dashed rgba(255,255,255,.16)}
.sp-example dt{font-family:var(--mono);font-size:.8rem;color:var(--ember-2)}
.sp-example dd{color:var(--fog);font-size:.95rem}
@media(max-width:640px){.sp-example dl>div{grid-template-columns:1fr;gap:.3rem}}

/* tables */
.sp-table-wrap{margin-top:2.2rem}
.sp-table{width:100%;border-collapse:collapse;font-size:.94rem;color:#4c4f55}
.sp-table th,.sp-table td{text-align:left;vertical-align:top;padding:.9rem 1rem .9rem 0;border-top:1px solid rgba(0,0,0,.12)}
.sp-table thead th{font-family:var(--mono);font-weight:500;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ember-1);border-top:none;padding-bottom:.6rem}
.sp-table tbody th{font-family:var(--display);font-weight:650;color:var(--ink);width:20%}
.sp-table .money{font-family:var(--display);font-weight:700;color:var(--ink);font-size:1.15rem}
@media(max-width:760px){
  .sp-table thead{display:none}
  .sp-table,.sp-table tbody,.sp-table tr,.sp-table th,.sp-table td{display:block;width:100%}
  .sp-table tr{padding:1rem 0;border-top:1px solid rgba(0,0,0,.12)}
  .sp-table th,.sp-table td{border:none;padding:.2rem 0}
  .sp-table tbody th{width:100%;font-size:1.1rem;margin-bottom:.3rem}
  .sp-table td::before{content:attr(data-label);display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ember-1);margin-top:.5rem}
}

/* tracks: partner notes */
.sp-partners{margin-top:3rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.sp-partners .mandate-card h4{font-family:var(--display);font-weight:650;font-size:1.15rem;margin-top:.5rem;color:var(--ink)}
@media(max-width:900px){.sp-partners{grid-template-columns:1fr}}

/* weeks */
.sp-flow p{max-width:none}
.sp-flow>div{padding-right:1.6rem}

/* team */
.sp-team .team-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:1000px){.sp-team .team-grid{grid-template-columns:1fr}}

/* not */
.sp-not{margin-top:2.4rem;max-width:760px}

/* proof */
.sp-proof-grid{margin-top:3rem;display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.sp-case h3{font-family:var(--display);font-weight:650;font-size:1.6rem}
.sp-case .sp-label{margin:.3rem 0 1.2rem}
.sp-case .quote{margin-top:1rem}
.sp-case .quote:hover{transform:none}
.sp-result{color:var(--bone);font-family:var(--display);font-weight:500;font-size:1.1rem;margin-bottom:1rem}
@media(max-width:860px){.sp-proof-grid{grid-template-columns:1fr}}

/* price */
.sp-price{margin-top:2.4rem;max-width:760px;background:var(--carbon-2);border:1px solid rgba(255,255,255,.1);border-radius:var(--rad);padding:clamp(1.4rem,4vw,2.2rem)}
.sp-price-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1.2rem;flex-wrap:wrap;padding-bottom:1.2rem;border-bottom:1px solid rgba(255,255,255,.12)}
.sp-amt{display:block;margin-top:.4rem;font-family:var(--display);font-weight:700;font-size:clamp(2.2rem,6vw,3rem);letter-spacing:-.02em;line-height:1.1;
  background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.sp-amt small{font-family:var(--body);font-weight:500;font-size:1rem;color:var(--fog);-webkit-text-fill-color:var(--fog)}
.sp-price ul{list-style:none;margin-top:.6rem}
.sp-price li{padding:.6rem 0;border-top:1px dashed rgba(255,255,255,.14);color:var(--fog);font-size:.95rem;display:flex;gap:.6rem}
.sp-price li:first-child{border-top:none}
.sp-price li::before{content:"→";color:var(--ember-1);font-weight:700}
#price h2 .money{background:var(--ember-grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* after */
.sp-after{margin-top:2.4rem}
.sp-after .option-card h4 a{color:inherit;text-decoration:none;border-bottom:1px solid var(--ember-1)}
.sp-after .option-card h4 a:hover{color:var(--ember-1)}
@media(max-width:760px){.sp-after{grid-template-columns:1fr}}

/* white cells placed on a dark section keep dark text */
.dark .cell{color:var(--ink)}
.dark .cell p{color:#4c4f55}

/* dark team cards on the light section */
.sp-team .team-card{color:var(--bone)}
