/* Scale Studio: editorial overview, selected product evidence. */
.scale-studio-case {
  --cc-bg: #fff;
  --cc-ink: #49433e;
  --cc-muted: #786d63;
  --cc-line: #dedbd6;
  --cc-accent: #587241;
  --studio-serif: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;
  background: var(--cc-bg);
  color: var(--cc-ink);
}
.scale-studio-case .cc-shell { width: min(1180px, calc(100% - 96px)); }
.scale-studio-case :is(h1,h2,h3,h4) { color: inherit; }
.scale-studio-case .cc-index { background: #fffffff2; backdrop-filter: blur(16px); }
.scale-studio-case .cc-index::after { background: #a7b799; height: 1px; }
.scale-studio-case .studio-intro { padding-block: 30px 46px; }
.studio-intro-heading { max-width: 920px; margin-top: 43px; }
.studio-eyebrow, .studio-number, .studio-meta dt { font-size: 10px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; line-height: 1.6; color: var(--cc-muted); }
.scale-studio-case .studio-intro h1 { font-family: var(--studio-serif); font-size: clamp(41px,4.5vw,62px); font-weight: 400; line-height: 1.12; letter-spacing: -.035em; margin: 18px 0 27px; }
.studio-deck { font-size: 17px; line-height: 1.85; max-width: 75ch; }
.studio-meta { display: flex; flex-wrap: wrap; gap: 28px 48px; margin-top: 32px!important; }
.studio-meta dd { font-size: 13px; font-weight: 500; margin-top: 5px; line-height: 1.7; }
.studio-pillars { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; margin-top: 38px; }
.studio-pillars article { border-top: 1px solid var(--cc-line); padding-top: 20px; min-width: 0; }
.scale-studio-case .studio-pillars h2 { font: 400 27px/1.22 var(--studio-serif); letter-spacing: -.025em; margin: 14px 0 17px; }
.studio-pillars a { display: block; }
.studio-pillars a>span { font: 400 17px/1 CCMontserrat,Arial,sans-serif; color: var(--cc-muted); opacity: .55; }
.studio-pillars a:hover { color: var(--cc-accent); }
.studio-pillars p { font-size: 14px; line-height: 1.85; }
.studio-supporting { max-width: 104ch; margin-top: 32px!important; font-size: 13px; line-height: 1.85; color: var(--cc-muted); }
.studio-supporting strong { color: var(--cc-ink); }
.studio-product-cover { padding-bottom: 44px; }
.ss-figure { min-width: 0; }
.ss-figure .cc-image-link { display: block; overflow: hidden; border: 1px solid #e0e5db; border-radius: 10px; background: #f2f4ef; }
.ss-figure img { width: 100%; height: auto; }
.scale-studio-case .ss-figure figcaption { font-size: 10px; line-height: 1.8; color: var(--cc-muted); margin-top: 12px; max-width: 100ch; text-align: left; }
.ss-cover .cc-image-link { border: 0; border-radius: 12px; }
.scale-studio-case .cc-enlarge { background: #fffffff0; color: #49433e; }
.studio-section { padding-block: 80px; border-bottom: 1px solid var(--cc-line); scroll-margin-top: calc(var(--cc-nav-height,68px) + 70px); }
.studio-heading { display: grid; grid-template-columns: 1.15fr 1fr; gap: 70px; align-items: end; margin-bottom: 45px; }
.scale-studio-case .studio-heading h2 { font: 400 clamp(31px,3.3vw,43px)/1.17 var(--studio-serif); letter-spacing: -.035em; margin-top: 17px; }
.studio-heading>p { font-size: 14px; line-height: 1.9; }
.scale-studio-case :is(.studio-decision-heading h3,.studio-evidence h3,.studio-material-copy h3,.studio-reflection h3) { font: 400 29px/1.23 var(--studio-serif); letter-spacing: -.025em; }
.studio-decision-heading { display: grid; grid-template-columns: 1fr 1.5fr; gap: 55px; margin-bottom: 30px; }
.studio-decision-heading p, .studio-evidence p { font-size: 14px; line-height: 1.85; }
.studio-decisions { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; padding: 25px 0; border-block: 1px solid var(--cc-line); }
.studio-decisions>div:last-child { border-left: 2px solid #b5c79f; padding-left: 28px; }
.scale-studio-case h4 { font: 500 15px/1.6 CCMontserrat,Arial,sans-serif; margin: 10px 0 8px; }
.studio-decisions p, .studio-definitions p { font-size: 13px; line-height: 1.85; color: var(--cc-muted); }
.studio-definitions { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; margin-block: 24px 32px; }
.studio-definitions h4 { margin: 0 0 5px; }
.studio-dashboard>.ss-figure .cc-image-link { padding: 22px; background: #edf1e8; }
.studio-dashboard>.ss-figure img { border-radius: 6px; box-shadow: 0 12px 30px -22px #41503380; }
.studio-note { font-size: 10px!important; line-height: 1.8!important; color: var(--cc-muted); margin-top: 15px!important; }
.ss-state-disclosure,.studio-support-detail { margin-top: 25px; border-block: 1px solid var(--cc-line); }
.scale-studio-case summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; cursor: pointer; padding: 20px 0; font-size: 13px; font-weight: 500; list-style: none; }
.scale-studio-case summary::-webkit-details-marker { display: none; }
.scale-studio-case summary:focus-visible { outline: 2px solid var(--cc-accent); outline-offset: 4px; }
.scale-studio-case details[open]>summary>span:last-child { transform: rotate(45deg); }
.ss-state-description { padding: 0 0 18px; font-size: 13px; color: var(--cc-muted); }
.ss-state-buttons { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.ss-state-buttons button { font: 500 11px CCMontserrat,Arial,sans-serif; padding: 11px 17px; border: 1px solid #d2d8cc; border-radius: 999px; color: var(--cc-ink); background: #fff; cursor: pointer; }
.ss-state-buttons button[aria-pressed=true] { background: #e8efdf; border-color: #a6b88e; color: #435b31; }
.ss-state-preview { padding-bottom: 20px; }
.ss-state-preview .cc-image-link { height: 440px; }
.ss-state-preview img { height: 100%; object-fit: cover; object-position: top; }
.studio-evidence { display: grid; grid-template-columns: 1fr 1.15fr; gap: 65px; align-items: center; }
.studio-search { margin-top: 65px; padding-top: 55px; border-top: 1px solid var(--cc-line); }
.studio-evidence h3 { margin-block: 14px 22px; }
.studio-evidence p+p { margin-top: 17px; }
.studio-evidence .cc-image-link { padding: 18px; background: #f0f3eb; }
.studio-evidence img { border-radius: 5px; }
.studio-system { background: #f8f9f5; }
.studio-system-rules { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 35px; border-top: 1px solid var(--cc-line); padding-top: 25px; }
.scale-studio-case .studio-system-rules h3 { font: 400 24px/1.25 var(--studio-serif); margin: 13px 0; letter-spacing: -.02em; }
.studio-system-rules p { font-size: 13px; line-height: 1.85; }
.studio-system-evidence { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 55px; margin-top: 45px; }
.studio-material-copy { margin-bottom: 30px; }
.studio-material-copy h3 { margin-top: 13px; }
.studio-system-evidence .cc-image-link { padding: 22px; background: #fff; border-color: #e1e5dc; box-shadow: 0 14px 32px -28px #37412d66; }
.studio-handoff { margin-top: 58px; padding-top: 45px; border-top: 1px solid var(--cc-line); }
.ss-flow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-block: 1px solid var(--cc-line); }
.ss-flow li { padding: 23px 18px; border-right: 1px solid var(--cc-line); }
.ss-flow li:first-child { padding-left: 0; }
.ss-flow li:last-child { border-right: 0; }
.ss-flow span { color: var(--cc-muted); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.scale-studio-case .ss-flow h3 { font: 500 15px/1.5 CCMontserrat,Arial,sans-serif; margin-block: 12px 8px; }
.ss-flow p { font-size: 11px; line-height: 1.85; color: var(--cc-muted); }
.studio-support-detail { margin-top: 38px; }
.studio-support-detail>div { max-width: 800px; padding-bottom: 28px; }
.scale-studio-case .studio-support-detail h3 { font: 400 27px/1.25 var(--studio-serif); margin-bottom: 20px; }
.studio-support-detail p { font-size: 14px; line-height: 1.9; }
.studio-support-detail p+p { margin-top: 15px; }
.ss-timeline { list-style: none; margin: 0; padding: 0; }
.ss-timeline li { display: grid; grid-template-columns: 140px 1fr 160px; gap: 25px; align-items: start; padding-block: 22px; border-top: 1px solid var(--cc-line); }
.ss-timeline time { font-size: 11px; padding-top: 6px; color: var(--cc-muted); }
.ss-timeline h4 { margin-top: 0; }
.ss-timeline p { font-size: 13px; line-height: 1.85; }
.ss-timeline li>span { justify-self: end; font-size: 9px; line-height: 1.8; border: 1px solid #d8dfd0; border-radius: 999px; padding: 4px 10px; color: #60724e; }
.studio-reflection { border-left: 2px solid #bbc8ab; padding-left: 28px; max-width: 790px; margin: 55px auto 0; }
.studio-reflection h3 { margin-block: 15px 20px; }
.studio-reflection p { font-size: 14px; line-height: 1.9; }
.studio-earlier { display: flex; justify-content: space-between; align-items: end; gap: 35px; padding-block: 40px; border-bottom: 1px solid var(--cc-line); }
.scale-studio-case .studio-earlier h2 { font: 400 31px/1.2 var(--studio-serif); letter-spacing: -.025em; margin: 14px 0; }
.studio-earlier p:not(.studio-eyebrow) { max-width: 65ch; color: var(--cc-muted); font-size: 13px; line-height: 1.8; }
.studio-earlier>a { flex-shrink: 0; font-size: 12px; text-decoration: underline; text-underline-offset: 6px; }
.scale-studio-case .cc-lightbox[open] { display: block; overflow: auto; }
.scale-studio-case .cc-lightbox figure { max-width: none; max-height: none; display: block; width: min(1600px,100%); margin: auto; }
.scale-studio-case .cc-lightbox figure img { width: 100%; max-height: none; height: auto; }
.scale-studio-case .cc-lightbox figcaption { margin: 20px auto; }
@media(max-width:900px) {
  .scale-studio-case .cc-shell { width: calc(100% - 56px); }
  .studio-pillars { gap: 25px; }
  .scale-studio-case .studio-pillars h2 { font-size: 24px; }
  .studio-pillars p { font-size: 12px; }
  .studio-heading { gap: 35px; }
  .studio-evidence, .studio-system-evidence { gap: 30px; }
  .studio-decision-heading { gap: 30px; }
  .ss-timeline li { grid-template-columns: 120px 1fr; }
  .ss-timeline li>span { grid-column: 2; justify-self: start; }
  .studio-earlier { align-items: start; flex-direction: column; gap: 22px; }
}
@media(max-width:640px) {
  .scale-studio-case .cc-shell { width: calc(100% - 40px); }
  .scale-studio-case .studio-intro { padding-top: 22px; padding-bottom: 30px; }
  .studio-intro-heading { margin-top: 30px; }
  .studio-eyebrow { font-size: 9px; letter-spacing: .09em; }
  .scale-studio-case .studio-intro h1 { font-size: clamp(34px,8.7vw,48px); margin-block: 16px 22px; }
  .studio-title-break { display: none; }
  .studio-deck { font-size: 14px; }
  .studio-meta { gap: 24px; margin-top: 25px!important; }
  .studio-meta dd { font-size: 12px; }
  .studio-pillars { grid-template-columns: 1fr; gap: 23px; margin-top: 30px; }
  .studio-pillars article { padding-top: 17px; }
  .scale-studio-case .studio-pillars h2 { font-size: 26px; margin-block: 9px 12px; }
  .studio-pillars h2 br { display: none; }
  .studio-pillars p { font-size: 13px; }
  .studio-supporting { margin-top: 25px!important; font-size: 12px; }
  .studio-product-cover { padding-bottom: 30px; }
  .studio-section { padding-block: 48px; }
  .studio-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 30px; }
  .scale-studio-case .studio-heading h2 { font-size: 32px; }
  .studio-decision-heading { grid-template-columns: 1fr; gap: 18px; }
  .scale-studio-case :is(.studio-decision-heading h3,.studio-evidence h3,.studio-material-copy h3,.studio-reflection h3) { font-size: 27px; }
  .studio-decisions { gap: 22px; grid-template-columns: 1fr; padding-block: 20px; }
  .studio-decisions>div:last-child { padding-left: 18px; }
  .studio-definitions { gap: 20px; }
  .studio-definitions p { font-size: 12px; }
  .studio-dashboard>.ss-figure .cc-image-link { padding: 8px; }
  .ss-state-buttons { gap: 8px; }
  .ss-state-buttons button { padding: 10px 12px; font-size: 10px; }
  .ss-state-preview .cc-image-link { height: 280px; }
  .studio-evidence { grid-template-columns: 1fr; gap: 25px; }
  .studio-search { margin-top: 35px; padding-top: 30px; }
  .studio-evidence .cc-image-link { padding: 12px; }
  .studio-system-rules { grid-template-columns: 1fr; gap: 22px; }
  .studio-system-rules article { display: grid; grid-template-columns: 25px 1fr; gap: 8px 13px; }
  .studio-system-rules article>p { grid-column: 2; }
  .scale-studio-case .studio-system-rules h3 { margin: 0; font-size: 23px; }
  .studio-system-evidence { grid-template-columns: 1fr; gap: 25px; margin-top: 30px; }
  .studio-material-copy { margin-bottom: 20px; }
  .studio-system-evidence .cc-image-link { padding: 15px; }
  .studio-handoff { margin-top: 35px; padding-top: 30px; }
  .ss-flow { grid-template-columns: 1fr 1fr; }
  .ss-flow li { padding: 20px 13px!important; border-bottom: 1px solid var(--cc-line); }
  .ss-flow li:nth-child(2) { border-right: 0; }
  .ss-flow li:nth-child(n+3) { border-bottom: 0; }
  .ss-timeline li { grid-template-columns: 1fr; gap: 8px; }
  .ss-timeline li>span { grid-column: 1; }
  .studio-reflection { padding-left: 20px; margin-top: 35px; }
  .studio-earlier { padding-block: 32px; }
  .scale-studio-case .studio-earlier h2 { font-size: 29px; }
}
