/* Shared case-study opening: project identity with a Caveat signature. */
#caseView .study-opening{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,5vw,100px);align-items:center;margin:0 0 clamp(32px,4vw,64px);text-align:left}
#caseView .study-opening-identity{min-width:0}
#caseView .study-opening-kicker{font:500 11px/1.5 var(--font-ui,Helvetica,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:var(--cs-faint,var(--faint,#747a73));margin:0 0 26px}
#caseView .study-opening .study-opening-title{font:600 clamp(48px,6.7vw,112px)/1.08 var(--font-ui,Helvetica,Arial,sans-serif);letter-spacing:-.055em;text-transform:none;margin:0;max-width:none;overflow:visible}
#caseView .study-opening .study-opening-tagline{font:400 29px/1.3 Caveat,cursive;letter-spacing:0;text-transform:none;margin:24px 0 0;color:var(--cs-body,var(--muted,#66705e));max-width:none}
#caseView .study-opening .study-opening-description{font:400 clamp(18px,2vw,28px)/1.5 var(--font-ui,Helvetica,Arial,sans-serif);letter-spacing:-.025em;margin:0;max-width:36ch;color:var(--cs-body,var(--muted,#5e685e))}
#caseView .study-opening-somnus .study-opening-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400;letter-spacing:-.055em}
#caseView .study-opening-nyid .study-opening-title{font-family:'Avenir Next',Avenir,Helvetica,Arial,sans-serif;font-weight:600}
#caseView .study-opening-nyid .study-opening-description{font-family:'Avenir Next',Avenir,Helvetica,Arial,sans-serif}
#caseView .study-opening-puma-kiosk .study-opening-title{font-family:'DIN Condensed','Arial Narrow',Anton,sans-serif;font-weight:400;letter-spacing:-.02em;text-transform:uppercase}
#caseView .study-opening-logo-animations .study-opening-title{font-family:Helvetica,'Helvetica Neue',Arial,sans-serif;font-weight:700}
@media(max-width:700px){#caseView .study-opening{grid-template-columns:1fr;gap:24px}#caseView .study-opening .study-opening-title{font-size:clamp(46px,12vw,76px)}#caseView .study-opening-kicker{margin-bottom:20px}#caseView .study-opening .study-opening-description{font-size:18px;max-width:38ch}}

/* Audit fixes: readable identities, compact metadata, visible reading mode. */
#caseView.puma-case .pk-intro{align-items:start;gap:clamp(24px,5vw,70px)}
#caseView.puma-case .pk-intro .pk-meta{margin-top:0}
#caseView.case.study-switch-case .study-mode-switch{display:flex;width:auto;padding:4px 9px 4px 4px;gap:5px}
#caseView .study-mode-switch .study-mode-label{width:34px;min-width:34px;min-height:34px}
#caseView .study-opening-somnus .study-opening-description{font-family:Inter,Helvetica,Arial,sans-serif}
#caseView .study-mode-visible{font:500 11px/1.2 var(--font-ui,Arial,sans-serif);padding:0 7px;white-space:nowrap}
#caseView.logo-case :is(.la-pepsi,.la-slack,.la-rolex) .la-pdf-identity .la-figure{background:#e7e8e2;border-radius:12px;padding:24px;box-sizing:border-box}
#caseView .la-date-source{font:11px/1.5 var(--font-ui);max-width:300px;text-align:center;color:var(--muted);margin-top:16px}
#caseView .la-date-source summary{cursor:pointer}
#caseView .la-motion-rationale{border-top:1px solid var(--line);margin:36px 0;padding-top:24px;max-width:850px}
#caseView .la-motion-rationale h3{font-size:clamp(22px,3vw,34px);font-weight:400;margin:0 0 14px}
#caseView .la-motion-rationale p{font-size:16px;line-height:1.65}
.fall-experience footer{font-size:12px;color:#c7c3ce;line-height:1.6}
@media(max-width:700px){#caseView .study-mode-visible{font-size:10px;padding:0 4px}.fall-experience footer{font-size:11px}#caseView.logo-case .la-pdf-identity .la-figure{max-width:300px}}

/* Center the active reading-mode label alongside the two icons. */
#caseView.case.study-switch-case .study-mode-switch{align-items:center;justify-content:center;}
#caseView .study-mode-visible{display:flex;align-items:center;justify-content:center;align-self:stretch;text-align:center;}

/* Only the selected segment expands to show its label. */
#caseView.case.study-switch-case .study-mode-switch{display:flex;width:auto;padding:4px;gap:4px;align-items:center;}
#caseView .study-mode-switch .study-mode-label{flex:0 0 auto;width:34px;min-height:34px;gap:7px;}
#caseView .study-mode-switch .study-mode-label.selected{width:auto;padding:0 11px;}
#caseView .study-mode-switch .study-mode-visible{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;align-self:center;}
#caseView .study-mode-switch svg{flex-shrink:0;}
#themeToggle.mode-switch{display:flex;align-items:center;justify-content:center;width:auto;gap:4px;padding:4px;}
#themeToggle .mode-label{flex:0 0 auto;min-width:34px;min-height:34px;gap:7px;}
#themeToggle .mode-active-text{display:none;font:500 11px/1.2 var(--font-ui,Arial,sans-serif);white-space:nowrap;}
#themeToggle[aria-checked="false"] .mode-professional,#themeToggle[aria-checked="true"] .mode-sandbox{padding:0 11px;}
#themeToggle[aria-checked="false"] .mode-professional .mode-active-text,#themeToggle[aria-checked="true"] .mode-sandbox .mode-active-text{display:inline;}
#themeToggle .mode-label svg{flex-shrink:0;}

/* Animate the active label instead of switching its display abruptly. */
#themeToggle .mode-active-text{display:block;max-width:0;overflow:hidden;opacity:0;transition:max-width .4s cubic-bezier(.2,.7,.2,1),opacity .25s ease;}
#themeToggle .mode-label{gap:0;padding:0;transition:padding .4s cubic-bezier(.2,.7,.2,1),gap .4s cubic-bezier(.2,.7,.2,1),background .3s ease,color .3s ease;}
#themeToggle[aria-checked="false"] .mode-professional,#themeToggle[aria-checked="true"] .mode-sandbox{gap:7px;padding:0 11px;}
#themeToggle[aria-checked="false"] .mode-professional .mode-active-text,#themeToggle[aria-checked="true"] .mode-sandbox .mode-active-text{display:block;max-width:90px;opacity:1;}
.hero-quote .q-line{white-space:normal;}
@media(prefers-reduced-motion:reduce){#themeToggle .mode-label,#themeToggle .mode-active-text{transition:none;}}

/* Compact, consistently aligned contribution blocks. */
#caseView.buildscape-case .bs-contribution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:28px 0;}
#caseView.buildscape-case .bs-contribution-grid article{display:grid;grid-template-rows:24px auto 1fr;align-content:start;gap:12px;}
#caseView.buildscape-case .bs-contribution-grid svg{display:block;width:24px;height:24px;max-width:24px;}
#caseView.buildscape-case .bs-contribution-grid h3{margin:0;font-size:16px;line-height:1.35;}
#caseView.buildscape-case .bs-contribution-grid p{margin:0;max-width:29ch;font-size:14px;line-height:1.55;}
@media(max-width:700px){#caseView.buildscape-case .bs-contribution-grid{grid-template-columns:1fr;gap:22px;}#caseView.buildscape-case .bs-contribution-grid article{grid-template-columns:24px 1fr;grid-template-rows:auto auto;column-gap:14px;row-gap:5px;}#caseView.buildscape-case .bs-contribution-grid svg{grid-row:1 / 3;}#caseView.buildscape-case .bs-contribution-grid p{grid-column:2;max-width:none;}}

/* Align the final Play line and the Buildscape process with their content edges. */
html[data-theme="dark"] .hero-quote .q-line:nth-child(3){padding-left:1.2em;}
#caseView.buildscape-case .audit-pipeline{list-style:none;counter-reset:bs-step;margin:24px 0 16px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;width:100%;box-sizing:border-box;}
#caseView.buildscape-case .audit-pipeline li{counter-increment:bs-step;margin:0;padding:0;display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:start;font-size:13px;line-height:1.5;}
#caseView.buildscape-case .audit-pipeline li::before{content:counter(bs-step);position:static;display:block;width:auto;height:auto;margin:0;padding:0;background:none;border:0;color:inherit;font:inherit;}
@media(max-width:700px){html[data-theme="dark"] .hero-quote .q-line:nth-child(3){padding-left:.6em;}#caseView.buildscape-case .audit-pipeline{grid-template-columns:1fr;gap:12px;}}

html[data-theme="dark"] .hero-quote .q-line:nth-child(3){position:relative;left:-5px;}

/* Equal inner padding on both sides of the active mode segment. */
#themeToggle .mode-label{box-sizing:border-box;}
#themeToggle[aria-checked="false"] .mode-professional,#themeToggle[aria-checked="true"] .mode-sandbox{padding-inline:11px;justify-content:center;}
