.case-page{background:var(--case-tint);color:#28242b}.case-header{position:relative}.case-intro{padding:55px 0 45px}.back-link{display:inline-block;font-size:14px;border-bottom:1px solid #28242b55;margin-bottom:55px;padding-bottom:6px}.case-intro h1{font-family:var(--display);font-size:clamp(54px,6.3vw,94px);letter-spacing:-.035em;line-height:1.05}.case-intro h1 em{color:#6b506d}.case-deck{font-size:20px;line-height:1.6;max-width:640px;margin:30px 0 45px}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #28242b30;padding-top:25px;gap:24px}.case-facts span{font-size:11px;letter-spacing:.12em}.case-facts p{font-size:15px;margin-bottom:0}.case-image{margin:0}.case-image img{width:100%;height:auto;max-height:820px;object-fit:contain;border-radius:18px;background:#ffffff60}.case-image a{display:block}.case-image figcaption{font-size:13px;color:#5f5963;padding:15px 2px 0;line-height:1.5}.case-cover{padding:25px 0 60px}.case-cover .case-image{background:#ffffff40;border-radius:32px;padding:35px}.case-body{padding-bottom:80px}.case-section{display:grid;grid-template-columns:1fr 2.25fr;gap:70px;padding:90px 0 50px;border-top:1px solid #28242b20;margin-top:75px}.section-label{font-size:12px;letter-spacing:.12em;padding-top:14px}.case-prose{max-width:720px}.case-prose h2{font-size:52px;line-height:1.06;margin-bottom:28px}.case-prose p{font-size:17px;line-height:1.85;margin:0 0 22px}.case-body>.case-image{margin:35px 0 70px;background:#ffffff40;padding:35px;border-radius:28px}.case-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:35px 0 80px}.case-image-grid .case-image{background:#ffffff40;border-radius:22px;padding:18px}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:330px;padding:40px;border:1px dashed #70657975;border-radius:18px;background:#ffffff38}.image-placeholder h3{font-size:40px}.image-placeholder p{max-width:560px;line-height:1.75;color:#5f5963;font-size:15px}.image-placeholder .eyebrow{margin-bottom:20px}.content-prompt,.draft-note{background:#ffffff60;border-left:2px solid #927bb1;padding:18px 22px;color:#5f5963}.draft-note{font-size:14px;margin-bottom:35px}.next-project{border-top:1px solid #28242b33;padding:65px 0 85px}.next-project h2{font-size:65px}.next-project h2 em{display:block;font-size:32px;margin-top:12px}.case-footer{display:flex;justify-content:space-between;gap:20px;padding:30px 0;border-top:1px solid #28242b25;font-size:14px}
@media(max-width:680px){.case-intro{padding-top:30px}.back-link{margin-bottom:35px}.case-intro h1{font-size:52px}.case-deck{font-size:17px;margin-bottom:30px}.case-facts{grid-template-columns:1fr;gap:20px}.case-facts p{margin-top:7px}.case-cover{padding:10px 0 25px}.case-cover .case-image{padding:15px;border-radius:22px}.case-section{grid-template-columns:1fr;gap:22px;margin-top:45px;padding:40px 0 20px}.case-prose h2{font-size:39px}.case-prose p{font-size:16px;line-height:1.75}.case-body>.case-image{padding:16px;margin:25px 0 45px}.case-image-grid{grid-template-columns:1fr;gap:25px}.image-placeholder{min-height:260px;padding:25px}.image-placeholder h3{font-size:33px}.next-project h2{font-size:48px}.case-footer{flex-wrap:wrap}.case-image figcaption{font-size:12px}}

/* Full-width imagery without contain letterboxing; keep its original aspect ratio. */
.case-image img{max-height:none;object-fit:cover}
.case-cover .case-image,.case-body>.case-image{border-radius:53px}
.case-image-grid .case-image{border-radius:36px}
@media(max-width:680px){.case-cover .case-image{border-radius:33px}.case-body>.case-image{border-radius:34px}}

/* Qualcomm narrative and audience details. */
.qualcomm-case .case-facts,.thermo-case .case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.qualcomm-case .case-prose h3{font-family:var(--body, sans-serif);font-size:21px;line-height:1.4;margin:34px 0 14px;font-weight:600}
.qualcomm-case .case-prose ul{padding-left:22px;margin:0 0 22px}
.qualcomm-case .case-prose li{font-size:17px;line-height:1.85;margin-bottom:14px}
@media(max-width:680px){.qualcomm-case .case-facts,.thermo-case .case-facts{grid-template-columns:1fr}.qualcomm-case .case-prose li{font-size:16px;line-height:1.75}}

/* King Estate project details. */
.king-case .case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:680px){.king-case .case-facts{grid-template-columns:1fr}}

/* Shared WIP stamp, positioned beneath the nav and anchored to the viewport's right edge. */
.case-page main{position:relative}
.case-wip-star{position:absolute;top:12px;right:clamp(16px,6vw,96px);width:clamp(72px,8vw,120px);height:auto;z-index:2;pointer-events:none}

/* King Estate artifacts use cropped previews and complete, scrollable images. */
.king-process-grid,.king-commerce-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:35px 0 70px}
.king-process-grid .case-image,.king-commerce-grid .case-image{padding:20px;border-radius:36px;background:#ffffff40;min-width:0}
.case-image-button{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:18px;overflow:hidden;cursor:zoom-in}
.king-artifact img{width:100%;height:auto;border-radius:18px}
.king-process-grid .case-image-button{aspect-ratio:4/3}
.king-process-grid img{height:100%;object-fit:cover}
.king-commerce-grid .case-image-button{aspect-ratio:5/6}
.king-commerce-grid img{height:100%;object-fit:cover;object-position:top}
.sitemap-download{margin:-45px 0 70px}
.case-image-dialog{padding:0 24px 24px;overscroll-behavior:contain}
.case-image-dialog .dialog-close{position:sticky;display:block;top:0;right:auto;margin:0 0 0 auto;padding:18px 10px;background:var(--paper);z-index:1}
.case-image-dialog img{max-height:none;width:100%;height:auto}
@media(max-width:680px){.king-process-grid,.king-commerce-grid{grid-template-columns:1fr;gap:24px;margin:25px 0 45px}.king-process-grid .case-image,.king-commerce-grid .case-image{padding:16px;border-radius:34px}.sitemap-download{margin:-25px 0 45px}.case-image-dialog{width:94vw;padding:0 12px 18px}}

/* Dated archive screenshots from before the King Estate redesign. */
.king-before-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:35px 0 24px}
.king-before-grid .case-image{padding:20px;border-radius:36px;background:#ffffff40;min-width:0}
.king-before-grid .case-image-button{aspect-ratio:20/17}
.king-before-grid img{height:100%;object-fit:cover;object-position:top}
.archive-source{display:inline-block;margin-top:8px;text-decoration:underline;text-underline-offset:4px}
.archive-note{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 70px}
@media(max-width:680px){.king-before-grid{grid-template-columns:1fr;gap:24px;margin:25px 0 20px}.king-before-grid .case-image{padding:16px;border-radius:34px}.archive-note{margin-bottom:45px}}

/* King Estate typography guide leads the visual-direction section. */
.king-aesthetic-section{row-gap:32px}
.king-aesthetic-section>.king-artifact{grid-column:1/-1;padding:35px;background:#ffffff40;border-radius:53px}
.king-aesthetic-section .case-image-button{aspect-ratio:3/2}
.king-aesthetic-section .case-image-button img{height:100%;object-fit:cover;object-position:top}
.king-aesthetic-section>.aesthetic-copy{grid-column:2}
@media(max-width:680px){.king-aesthetic-section>.king-artifact{padding:16px;border-radius:34px}.king-aesthetic-section>.aesthetic-copy{grid-column:1}}

.king-final-gallery{margin:35px 0 70px;display:grid;gap:28px}
.king-final-wine{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(0,1fr);gap:28px;align-items:start}
.king-final-dining{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.king-final-gallery .king-final-screen{padding:20px;border-radius:36px;background:#ffffff40;min-width:0;margin:0}
.king-final-screen .case-image-button{aspect-ratio:4/5}
.king-final-screen img{height:100%;width:100%;object-fit:cover;object-position:top}
.king-final-wide .case-image-button{aspect-ratio:16/10}
.king-final-mobile .case-image-button{aspect-ratio:320/820}
@media(max-width:680px){.king-final-gallery{gap:24px;margin:25px 0 45px}.king-final-wine,.king-final-dining{grid-template-columns:1fr;gap:24px}.king-final-gallery .king-final-screen{padding:16px;border-radius:34px}.king-final-mobile{max-width:300px;justify-self:center;width:100%}}

.king-before-grid.king-before-single{grid-template-columns:1fr}

.document-pages{display:grid;gap:24px}.document-pages[hidden]{display:none}.case-image-dialog .document-pages img{width:100%;height:auto;max-height:none;border-radius:0}

.case-video video{display:block;width:100%;height:auto;border-radius:18px;background:#fff;aspect-ratio:2560/1320}

.qualcomm-filter-final{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0}.qualcomm-filter-final .case-image{min-width:0}.qualcomm-filter-final .case-image img{width:100%;height:auto}.qualcomm-filter-final .case-image figcaption{font-size:12px}

.qualcomm-test-previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0}.qualcomm-test-previews .case-image{min-width:0}.qualcomm-test-scroll{aspect-ratio:1098/1904;overflow-y:auto;border-radius:18px;background:white;overscroll-behavior-y:auto;scrollbar-width:thin}.qualcomm-test-scroll:focus-visible{outline:2px solid #3454d8;outline-offset:4px}.qualcomm-test-scroll img{display:block;width:100%;height:auto;border-radius:0;background:white}.qualcomm-test-previews figcaption{font-size:12px}.qualcomm-test-previews figcaption a{display:inline}.qualcomm-test-enlarge{display:inline;width:auto;border-radius:0;overflow:visible;color:inherit;font:inherit;border-bottom:1px solid currentColor;cursor:zoom-in}

.qualcomm-home-figure{margin:0}.qualcomm-ipad{position:relative;width:100%;aspect-ratio:3000/2300}.qualcomm-ipad-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.qualcomm-ipad-screen{position:absolute;left:4.13%;right:4.13%;top:5.13%;bottom:5.13%;overflow-y:auto;background:white;border-radius:2.5% / 3.4%;overscroll-behavior-y:auto;scrollbar-width:none}.qualcomm-ipad-screen::-webkit-scrollbar{display:none}.qualcomm-ipad-screen img{display:block;width:100%;height:auto}.qualcomm-ipad-screen:focus-visible{outline:2px solid #3454d8;outline-offset:-3px}.qualcomm-home-figure figcaption{font-size:13px;color:#5f5963;padding:15px 2px 0;line-height:1.5}

.qualcomm-ipad-screen{scroll-snap-type:y proximity}.qualcomm-home-page{position:relative;height:100%;min-height:100%;overflow:hidden;scroll-snap-align:start;background:#F6F8FA}.qualcomm-home-page.home-page-1{background:url('/assets/qualcomm-home/background-1.jpg') center center/cover no-repeat}.qualcomm-home-page.home-page-4{background:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2)),url('/assets/qualcomm-home/background-4.jpg') center center/cover no-repeat}.qualcomm-ipad-screen .qualcomm-home-nav{position:absolute;left:0;top:0;width:100%;height:auto;z-index:3}.qualcomm-ipad-screen .qualcomm-home-intro{position:absolute;left:15.97%;width:41.25%;height:auto;z-index:2}.home-page-1 .qualcomm-home-intro{top:39.2%}.home-page-2 .qualcomm-home-intro{top:37.3%}.home-page-3 .qualcomm-home-intro{top:30.1%}.home-page-4 .qualcomm-home-intro{top:36.5%}.qualcomm-ipad-screen .qualcomm-home-next{position:absolute;left:14.8%;bottom:0;width:42.43%;height:auto;z-index:2}.qualcomm-ipad-screen .qualcomm-home-floating{position:absolute;height:auto}.qualcomm-ipad-screen .floating-2{width:79.58%;left:30%;top:22%}.qualcomm-ipad-screen .floating-3{width:23.61%;left:64%;top:30%}.qualcomm-home-dots{position:absolute;left:2.7%;top:44%;display:flex;flex-direction:column;gap:6px;z-index:4}.qualcomm-home-dot{display:block;border:0;background:none;padding:2px;cursor:pointer;width:14px;height:14px}.qualcomm-ipad-screen .qualcomm-home-dot img{width:100%;height:100%}.qualcomm-home-dot:focus-visible{outline:2px solid #a9befc;outline-offset:2px;border-radius:50%}

.qualcomm-home-dots{width:1.1%;gap:clamp(5px,1vw,18px)}.qualcomm-home-dot{width:100%;height:auto;aspect-ratio:1;padding:0}

.qualcomm-ipad-screen{left:calc(4.13% - 2px);right:calc(4.13% - 2px);top:calc(5.13% - 2px);bottom:calc(5.13% - 2px);border-radius:0;background:#06152c}.qualcomm-ipad-screen img{border-radius:0}.qualcomm-fixed-nav{position:absolute;left:calc(4.13% - 2px);right:calc(4.13% - 2px);top:calc(5.13% - 2px);z-index:5;pointer-events:none}.qualcomm-fixed-nav img{position:absolute;inset:0;width:100%;height:auto;border-radius:0;transition:opacity 160ms ease,color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}.qualcomm-fixed-nav .nav-colored{opacity:0}.qualcomm-ipad.is-light .nav-colored{opacity:1}.qualcomm-ipad.is-light .nav-photo{opacity:0}.qualcomm-ipad-frame{z-index:6}.qualcomm-home-intro{will-change:transform;transform:translateY(var(--text-offset,0px));transition:transform 700ms cubic-bezier(.22,.61,.36,1),color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}.qualcomm-home-next{will-change:transform;transform:translateY(var(--next-offset,0px));transition:transform 750ms cubic-bezier(.22,.61,.36,1),color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}@media(prefers-reduced-motion:reduce){.qualcomm-home-intro,.qualcomm-home-next{transform:none!important;transition:none}.qualcomm-fixed-nav img{transition:none}}

/* Gesture-controlled full-screen slides; edge gestures return to the case study. */
.qualcomm-ipad-screen{overflow-y:hidden;overscroll-behavior-y:auto;scroll-snap-type:none}
.qualcomm-fixed-nav img{transition:opacity 140ms ease,color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}
.qualcomm-home-page.is-preparing .qualcomm-home-intro,.qualcomm-home-page.is-preparing .qualcomm-home-next{transition:none}

/* Photo-only tint and left-to-right gradient, beneath all foreground assets. */
.qualcomm-home-page.home-page-4{background:linear-gradient(rgba(12,14,21,.3),rgba(12,14,21,.3)),linear-gradient(90deg,rgba(12,14,21,.4) 0%,rgba(12,14,21,0) 50%),url('/assets/qualcomm-home/background-4.jpg') center center/cover no-repeat}
@media(prefers-reduced-motion:reduce){.qualcomm-fixed-nav img{transition:none}}

.king-home-figure{margin:0}.king-ipad-screen{position:absolute;left:calc(4.13% - 2px);right:calc(4.13% - 2px);top:calc(5.13% - 2px);bottom:calc(5.13% - 2px);overflow-y:auto;overscroll-behavior-y:auto;scrollbar-width:none;background:#fff}.king-ipad-screen::-webkit-scrollbar{display:none}.king-ipad-screen img{display:block;width:100%;height:auto;border-radius:0}.king-ipad-screen:focus-visible{outline:2px solid #3454d8;outline-offset:-3px}.king-home-figure figcaption{font-size:13px;color:#5f5963;padding:15px 2px 0;line-height:1.5}

/* Shared homepage footer content on each case study's own background. */
.case-footer{display:block;border-top:0;padding:0 0 24px;background:transparent}.case-footer .footer-bottom{margin-top:0;border-top:1px solid #28242b22;padding-top:25px}

/* Give the return CTA breathing room below the next-project heading. */
.next-project>.text-link{margin-top:48px}

.king-case .case-prose h3{font-family:var(--body,sans-serif);font-size:21px;line-height:1.4;margin:34px 0 14px;font-weight:600}

.qualcomm-added-gallery{display:grid;gap:28px;margin:32px 0 64px}.qualcomm-added-pair{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px;align-items:start}.qualcomm-added-gallery .case-image-button{aspect-ratio:4/5;overflow:hidden}.qualcomm-added-gallery img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:top}.qualcomm-added-gallery .case-image{min-width:0}@media(max-width:680px){.qualcomm-added-pair{grid-template-columns:1fr}.qualcomm-added-gallery{gap:24px}}

/* Shared final-design frames and mobile viewing dimensions across case studies. */
.case-page .case-image.case-final-screen{padding:20px;border-radius:36px;background:#ffffff40;min-width:0;margin:0}
.case-page .case-final-screen .case-image-button{aspect-ratio:4/5;overflow:hidden;background:#fff}
.case-page .case-final-screen .case-image-button img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:top}
.case-page .case-final-wide .case-image-button{aspect-ratio:16/10}
.case-page .case-image.case-final-mobile{width:100%;max-width:360px;justify-self:center;margin-inline:auto;box-sizing:border-box}
.case-page .case-final-mobile .case-image-button{aspect-ratio:320/820}
.qualcomm-added-pair{grid-template-columns:minmax(0,2.3fr) minmax(0,1fr)}
.case-image-dialog{overflow-y:auto}
@media(max-width:680px){
 .case-page .case-image.case-final-screen{padding:16px;border-radius:34px}
 .case-page .case-image.case-final-mobile{max-width:300px}
 .qualcomm-added-pair{grid-template-columns:1fr}
}


/* Tall previews stop at their viewing limit; shorter images determine frame height. */
.case-page .case-image.case-final-screen{container-type:inline-size}
.case-page .case-final-screen .case-image-button{aspect-ratio:auto;max-height:125cqw}
.case-page .case-final-wide .case-image-button{aspect-ratio:auto;max-height:62.5cqw}
.case-page .case-final-mobile .case-image-button{aspect-ratio:auto;max-height:256.25cqw}
.case-page .case-pkla-screen .case-image-button img{margin-top:calc(-1 * var(--screen-top-crop))}
.qualcomm-filter-final{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.qualcomm-filter-final .case-image-button{aspect-ratio:auto;background:transparent}
.communication-document-scroll{height:auto;aspect-ratio:2880/1800;overflow-y:auto;overscroll-behavior-y:auto;border-radius:18px;background:white;scrollbar-width:thin}
.communication-document-scroll:focus-visible{outline:2px solid #3454d8;outline-offset:4px}
.case-page .communication-document-scroll img{display:block;width:100%;height:auto;border-radius:0}
.dialog-image-viewport{overflow:hidden;border-radius:18px;margin-inline:auto}
.case-image-dialog .dialog-image-viewport img{margin-top:calc(-1 * var(--screen-top-crop,0%))}

/* Paired desktop designs follow King Estate's dining/recipes gallery. */
.qualcomm-final-desktop-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.case-page .qualcomm-final-desktop-pair .case-image-button{aspect-ratio:4/5;max-height:none}
@media(max-width:680px){.qualcomm-final-desktop-pair{grid-template-columns:1fr;gap:24px}}

.case-cover.thermo-ipad-cover .case-image{padding:0;background:transparent;border-radius:0}.thermo-ipad-cover .case-image img{background:transparent;border-radius:0}

/* Thermo Fisher: scientific context and artifact-specific explanations. */
.thermo-case .case-prose a,.thermo-case .thermo-glossary a,.thermo-case .thermo-insight a,.thermo-case .thermo-industry a{text-decoration:underline;text-underline-offset:3px}
.thermo-case .case-prose,.thermo-case .case-section{min-width:0}
.thermo-case .thermo-science,.thermo-case .thermo-glossary,.thermo-case .thermo-insight,.thermo-case .thermo-industry{margin:30px 0 65px;padding:30px;border-radius:28px;background:#ffffff60}
.thermo-science ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:30px}
.thermo-science li{position:relative;min-width:0}
.thermo-science li:not(:last-child)::after{content:'→';position:absolute;right:-24px;top:0;color:#6b506d}
.thermo-science strong{display:block;font-size:17px;line-height:1.4;margin-bottom:10px}
.thermo-science span{display:block;font-size:14px;line-height:1.6;color:#5f5963}
.thermo-science figcaption{font-size:13px;line-height:1.6;color:#5f5963;margin-top:24px;border-top:1px solid #28242b20;padding-top:18px}
.thermo-case .thermo-glossary h3,.thermo-case .thermo-insight h3{font-family:var(--body,sans-serif);font-size:22px;line-height:1.4;margin:0 0 20px;font-weight:600}
.thermo-glossary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px;margin:0}
.thermo-glossary dl>div{border-top:1px solid #28242b20;padding-top:14px}
.thermo-glossary dt{font-size:16px;font-weight:600;margin-bottom:6px}
.thermo-glossary dd{margin:0;font-size:15px;line-height:1.7;color:#5f5963}
.thermo-glossary>p,.thermo-insight p,.thermo-industry>p{font-size:15px;line-height:1.8;margin:22px 0 0}
.thermo-case .case-image.thermo-explained{margin:35px 0 70px;padding:30px;background:#ffffff40;border-radius:36px;min-width:0}
.thermo-explained figcaption>strong{display:block;font-size:14px;line-height:1.5;color:#28242b}
.thermo-explained figcaption p{font-size:15px;line-height:1.75;margin:8px 0 0;max-width:780px}
.thermo-callouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;counter-reset:explanation;padding:24px 0 0;margin:24px 0 0;border-top:1px solid #28242b20}
.thermo-callouts li{counter-increment:explanation;position:relative;padding-left:34px;min-width:0}
.thermo-callouts li::before{content:counter(explanation);position:absolute;left:0;top:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#6b506d;color:#fff;font-size:12px}
.thermo-callouts strong{display:block;font-size:15px;line-height:1.6;margin-bottom:8px}
.thermo-callouts span{display:block;font-size:14px;line-height:1.75;color:#5f5963}
.thermo-case .personas .thermo-explained{margin:0;padding:18px;border-radius:28px}
.thermo-case .personas figcaption p{font-size:14px}
.thermo-industry table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:14px;line-height:1.7}
.thermo-industry caption{text-align:left;font-size:20px;font-weight:600;margin-bottom:20px}
.thermo-industry th,.thermo-industry td{text-align:left;vertical-align:top;padding:16px 12px;border-bottom:1px solid #28242b20;overflow-wrap:anywhere}
.thermo-industry th:first-child{width:16%;padding-left:0}.thermo-industry th:nth-child(2){width:29%}
.thermo-industry thead th{font-size:12px;letter-spacing:.04em}
.thermo-case .thermo-insight{border-left:3px solid #927bb1}
.thermo-case .case-image-button:focus-visible{outline:3px solid #6b506d;outline-offset:5px}
@media(max-width:1000px){.thermo-case .case-section{gap:35px;grid-template-columns:1fr 2.25fr}.thermo-callouts{gap:16px}.thermo-science ol{gap:24px}.thermo-science li:not(:last-child)::after{right:-20px}}
@media(max-width:680px){
 .thermo-case .case-section{grid-template-columns:1fr;gap:22px}
 .thermo-case .thermo-science,.thermo-case .thermo-glossary,.thermo-case .thermo-insight,.thermo-case .thermo-industry{padding:22px;margin:25px 0 45px;border-radius:24px}
 .thermo-science ol{grid-template-columns:1fr;gap:30px}
 .thermo-science li:not(:last-child)::after{content:'↓';left:0;right:auto;top:auto;bottom:-25px}
 .thermo-science strong{margin-bottom:4px}.thermo-glossary dl{grid-template-columns:1fr;gap:16px}
 .thermo-case .case-image.thermo-explained{padding:16px;margin:25px 0 45px;border-radius:34px}
 .thermo-callouts{grid-template-columns:1fr;gap:22px;margin-top:20px;padding-top:20px}
 .thermo-case .personas .thermo-explained{margin:0}
 .thermo-industry table,.thermo-industry tbody,.thermo-industry tr,.thermo-industry th,.thermo-industry td{display:block;width:100%}
 .thermo-industry thead{display:none}.thermo-industry caption{display:block}
 .thermo-industry tr{border-top:1px solid #28242b20;padding:16px 0}
 .thermo-industry th:first-child,.thermo-industry th:nth-child(2){width:auto}
 .thermo-industry th,.thermo-industry td{padding:4px 0;border:0}
 .thermo-industry tbody th{font-size:17px}.thermo-industry td:nth-child(2){font-weight:600}
}

/* LC timing explanation sits directly on the page at full content width. */
.thermo-case .thermo-insight{padding:0;background:transparent;border:0;border-radius:0;width:100%;max-width:none}
.thermo-case .thermo-insight p{font-size:17px;line-height:1.85}
@media(max-width:680px){.thermo-case .thermo-insight p{font-size:16px;line-height:1.75}}

/* Separate the glossary note with the same rule used between definitions. */
.thermo-case .thermo-glossary>p{border-top:1px solid #28242b20;margin-top:24px;padding-top:20px}

/* Section navigation begins after the cover and floats above the reading column. */
html.has-section-nav{scroll-padding-top:0}
.case-section-nav{position:sticky;top:0;z-index:15;width:100%;padding:12px 4vw;background:var(--case-tint);isolation:isolate}
.section-nav-frame{position:relative;max-width:1180px;margin:auto;padding:8px;border:1px solid #70657926;border-radius:22px;background:#fcf8f3;box-shadow:0 8px 30px #46354812}
.section-desktop{display:flex;align-items:center;justify-content:space-between;gap:4px}
.section-jumps a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border-radius:13px;font-family:var(--body);font-size:13px;line-height:1.4;color:var(--ink);white-space:nowrap;transition:background .18s,color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}
.section-jumps a:hover,.section-jumps a:focus-visible,.section-jumps a[aria-current="location"]{background:var(--case-tint)}
.section-jumps a:focus-visible{outline-offset:-2px}
.section-disclosure{display:none}
.case-section{scroll-margin-top:calc(var(--section-nav-height,86px) - 1px)}
.case-section:focus{outline:none}
@media(max-width:1100px){
 .section-desktop{display:none}
 .section-disclosure{display:block}
 .section-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;padding:10px 16px;list-style:none;cursor:pointer;font-size:14px;border-radius:13px}
 .section-disclosure summary::-webkit-details-marker{display:none}
 .section-disclosure summary:focus-visible{outline:3px solid #8453cc;outline-offset:-2px}
 .section-disclosure summary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s,color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}
 .section-disclosure[open] summary svg{transform:rotate(180deg)}
 .section-disclosure .section-jumps{position:absolute;top:calc(100% + 8px);left:0;right:0;padding:10px;border:1px solid #70657926;border-radius:22px;background:#fcf8f3;box-shadow:0 12px 40px #46354820;max-height:min(65svh,460px);overflow-y:auto;overscroll-behavior-y:auto}
 .section-disclosure .section-jumps a{justify-content:flex-start;min-height:44px;font-size:14px;padding:10px 16px}
}
@media(prefers-reduced-motion:reduce){.section-jumps a,.section-disclosure summary svg{transition:none}}

/* Desktop section bar aligns with the main header's content edges. */
@media(min-width:1101px){.case-section-nav{padding-inline:6vw}.section-nav-frame{max-width:none}}

/* The section bar replaces the Overview divider, with no empty gap between them. */
.case-section-nav{padding-bottom:0}
.case-body>.case-section:first-child{margin-top:0;border-top:0}

/* Subsection copy follows the estate-to-table reading column at every width. */
.case-section>.case-prose.subsection-copy{grid-column:1/-1;width:100%;max-width:720px;justify-self:start;text-align:left}

/* All multi-page PDF previews chain scrolling back to the page at their edges. */
.inline-document-scroll{overflow-y:auto;overscroll-behavior-y:auto;scrollbar-width:thin;border-radius:18px;background:white}
.case-page .inline-document-scroll img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0}
.inline-document-scroll:focus-visible{outline:2px solid #8453cc;outline-offset:4px}
.case-page .case-image-button.inline-document-enlarge{display:inline-flex;width:auto;height:auto;aspect-ratio:auto;min-height:44px;margin-top:8px;padding:8px 0;border-radius:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font:inherit;color:inherit}

.case-page figcaption .case-image-button.inline-document-enlarge{display:inline;width:auto;height:auto;min-height:0;margin:0;padding:0;font:inherit;color:inherit;vertical-align:baseline;text-decoration:underline;text-underline-offset:4px}

/* Compact archived screens show a crop; the lightbox retains the full original. */
.case-section>.case-prose.before-comparisons{max-width:none}
.before-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:40px;align-items:start;margin:34px 0 48px}
.before-copy{min-width:0;max-width:720px;text-align:left}
.qualcomm-case .before-copy h3{margin-top:0}
.before-preview{width:100%;max-width:360px;justify-self:start;margin:0}
.case-page .before-preview .case-image-button{display:block;width:100%;height:auto;aspect-ratio:9/7;overflow:hidden;border-radius:18px}
.case-page .before-preview img{display:block;width:100%;height:auto;max-height:none;object-fit:initial;border-radius:0}
@media(max-width:1000px){.before-comparison{grid-template-columns:1fr;gap:20px}}

.case-section>.case-prose.asset-comparisons{max-width:none}
.asset-comparisons>h3,.asset-comparisons>p{max-width:720px}
.case-page .before-preview.asset-natural .case-image-button{aspect-ratio:var(--asset-ratio);height:auto}

@media(max-width:680px){.before-preview{width:100%;max-width:none}}

/* Case-study assets stand alone; captions and viewing interactions remain. */
.case-page .case-cover figure.case-image,.case-page .case-body figure.case-image{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.case-page figure.case-image img{background:transparent}

/* Filter & Sort narratives precede their paired previews on smaller screens. */
.filter-sort-copy{min-width:0}
.filter-sort-direction{margin-top:34px}
.qualcomm-case .filter-sort-direction .filter-sort-copy>h3:first-child{margin-top:0}
@media(min-width:1101px){
 .case-section>.case-prose.filter-sort-layout{max-width:none}
 .filter-sort-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
 .filter-sort-comparison>.qualcomm-test-previews,.filter-sort-comparison>.qualcomm-filter-final{margin:0;min-width:0}
 .qualcomm-case .filter-sort-copy>h3:first-child{margin-top:0}
 .filter-sort-direction{margin-top:48px}
}

/* Every inline PDF remains scrollable and opens enlarged with a single click. */
.inline-document-scroll,.qualcomm-test-scroll,.communication-document-scroll{cursor:zoom-in}

/* PDF actions use one line, never a border plus a text underline. */
.case-page .case-image-button.inline-document-enlarge,.case-page figcaption .case-image-button.inline-document-enlarge{border-bottom:0;text-decoration-thickness:1px;text-underline-offset:3px}

/* King Estate context images belong to their narrative reading columns. */
.king-case .case-prose>.king-before-single,.king-case .case-prose>figure.king-artifact{width:100%;margin:24px 0 0}

/* Desktop return control aligns with the floating section-navigation frame. */
.desktop-back-to-top{display:none}
@media(min-width:1101px){
 .desktop-back-to-top{position:fixed;right:6vw;bottom:24px;z-index:16;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:1px solid #70657926;border-radius:50%;background:#fcf8f3;color:#28242b;box-shadow:0 8px 30px #46354812;cursor:pointer;transition:background .18s,box-shadow .18s,color 180ms ease,background-color 180ms ease,border-color 180ms ease,fill 180ms ease,stroke 180ms ease}
 .desktop-back-to-top svg{display:block;width:22px;height:22px}
 .desktop-back-to-top:hover{background:var(--fab-hover);color:#000;box-shadow:0 10px 32px #46354820}
 .desktop-back-to-top:focus-visible{outline:2px solid #28242b;outline-offset:4px}
}

.desktop-back-to-top[hidden]{display:none}

/* Soft case-study FAB hover fills, balanced against the warm orange. */
.case-page{--fab-hover:#d7cef3}
.qualcomm-case{--fab-hover:#b6dfe7}
.king-case{--fab-hover:#f2caa5}

/* Headline hues share the original purple’s perceptual lightness. */
.qualcomm-case .case-intro h1 em{color:#336271}
.king-case .case-intro h1 em{color:#75523e}

/* Page accents match the italic headline, logo dot, and next-project label. */
.case-page{--case-accent:#6b506d}
.qualcomm-case{--case-accent:#336271}
.king-case{--case-accent:#75523e}
.case-page .next-project h2 em{color:var(--case-accent)}
.case-page .next-project>a:not(.text-link):hover h2,.case-page .next-project>a:not(.text-link):hover h2 em,.case-page .next-project>a:not(.text-link):focus-visible h2,.case-page .next-project>a:not(.text-link):focus-visible h2 em{color:#000}

/* Case-study footer links reverse the next-project accent treatment. */
.case-page .case-footer a:hover,.case-page .case-footer a:focus-visible{color:var(--case-accent)}

.case-page .next-project>.text-link:hover,.case-page .next-project>.text-link:focus-visible,.case-page .case-intro>.back-link:hover,.case-page .case-intro>.back-link:focus-visible{color:var(--case-accent)}

/* All case-study text links share the page accent on interaction. */
.case-page a:hover,.case-page a:focus-visible,.case-page .inline-document-enlarge:hover,.case-page .inline-document-enlarge:focus-visible{color:var(--case-accent)!important}
.case-page .next-project>a:not(.text-link):hover,.case-page .next-project>a:not(.text-link):focus-visible{color:#000!important}

.case-page .header .work-dropdown>summary:hover,.case-page .header .work-dropdown>summary:focus-visible{color:var(--case-accent)}

/* The current case study stays disabled despite shared link hover accents. */
.case-page .header .work-projects a[aria-current="page"],.case-page .header .work-projects a[aria-current="page"]:hover,.case-page .header .work-projects a[aria-current="page"]:focus-visible{color:#8b858c!important;background:transparent;cursor:default}


/* Mobile design previews match the visible PKLA screen proportions. */
.case-page .case-final-mobile .case-image-button{aspect-ratio:1100 / 1952;max-height:none}

/* Keep final-design copy close to its companion previews. */
.qualcomm-case #section-5 .asset-comparison{margin:24px 0}
.qualcomm-case #section-5 .before-copy h3:not(:first-child){margin-top:24px}

/* King Estate studio images follow the homepage process grid. */
.king-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.case-page .king-process-grid figure.case-image{margin:0;padding:0;background:transparent;border:0;border-radius:0;min-width:0}
.case-page .king-process-grid .case-image-button{width:100%;height:auto;aspect-ratio:678 / 642;border-radius:18px;overflow:hidden}
.case-page .king-process-grid img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:18px;max-height:none}
.case-page .king-process-grid figcaption{display:block;font-size:13px;color:#5f5963;padding:15px 2px 0;line-height:1.5;margin:0}
@media(min-width:1101px){.king-process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}}
@media(max-width:680px){.king-process-grid{grid-template-columns:1fr;gap:32px}}

/* Pair aesthetic explanations with compact, top-aligned artifacts. */
.king-aesthetic-row{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:40px;align-items:start;width:100%}
.king-aesthetic-row>.case-prose{max-width:720px;min-width:0}
.king-aesthetic-row h3{margin-top:0}
.case-page .king-aesthetic-row>figure.case-image{width:100%;margin:0;padding:0;background:transparent;min-width:0}
.case-page .king-aesthetic-row .case-image-button:not(.inline-document-enlarge){width:100%;aspect-ratio:9/7;height:auto;overflow:hidden;border-radius:18px}
.case-page .king-aesthetic-row img{height:auto;max-height:none;width:100%;object-fit:contain}
@media(max-width:1000px){.king-aesthetic-row{grid-template-columns:1fr;gap:20px}.king-aesthetic-row>figure{max-width:360px}}
@media(max-width:680px){.king-aesthetic-row>figure{max-width:none}}

/* Explain archived Thermo screens alongside compact previews. */
.thermo-before-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:40px;align-items:start;margin:35px 0 48px}
.thermo-before-row>.case-prose{max-width:720px;min-width:0}
.thermo-before-row h3{margin-top:0}
.case-page .thermo-before-row figure.case-image{width:100%;margin:0;padding:0;background:transparent;min-width:0}
.case-page .thermo-before-row .case-image-button{width:100%;height:auto;border-radius:18px;overflow:hidden}
.case-page .thermo-before-row img{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:1000px){.thermo-before-row{grid-template-columns:1fr;gap:20px}.thermo-before-row>figure{max-width:360px}}
@media(max-width:680px){.thermo-before-row>figure{max-width:none}}

/* Give the three archived-screen explanations the King Estate heading treatment. */
.case-page .thermo-before-row .case-prose>h3{margin-top:0}

.case-page .thermo-before-row .case-prose>h3{font-family:var(--body,sans-serif);font-size:21px;line-height:1.4;margin:0 0 14px;font-weight:600;letter-spacing:normal}

/* Three archived screens retain only their original short captions. */
.thermo-before-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:35px 0 70px}
.case-page .thermo-before-gallery figure.case-image{margin:0;padding:0;background:transparent;min-width:0}
.case-page .thermo-before-gallery .case-image-button{width:100%;height:auto;border-radius:18px;overflow:hidden}
.case-page .thermo-before-gallery img{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:1000px){.thermo-before-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.thermo-before-gallery{grid-template-columns:1fr;gap:32px;margin:25px 0 45px}}

/* One interaction cue per scrollable iPad; never intercept the preview's input. */
.ipad-interaction-hint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:7;width:clamp(58px,9vw,100px);aspect-ratio:1;display:grid;place-items:center;color:#fff;pointer-events:none;opacity:1;visibility:visible;transition:opacity 240ms ease,visibility 240ms ease}
.ipad-interaction-hint::before{content:"";position:absolute;inset:-166%;border-radius:50%;background:radial-gradient(circle closest-side,rgba(0,0,0,.34) 0%,rgba(0,0,0,0) 100%);z-index:-1}
.ipad-interaction-hint svg{grid-area:1/1;width:100%;height:100%;overflow:visible}
.ipad-interaction-hint .ipad-hint-hand{display:none}
.ipad-hint-mouse-arrow{animation:ipad-mouse-scroll 1.8s ease-in-out infinite}
.ipad-hint-fingers{animation:ipad-hand-swipe 2.2s ease-in-out infinite}
.ipad-hint-swipe-arrow{animation:ipad-swipe-arrow 2.2s ease-in-out infinite}
.ipad-interaction-hint.is-dismissed{opacity:0;visibility:hidden}
.ipad-interaction-hint.is-dismissed *{animation:none}
@keyframes ipad-mouse-scroll{0%,20%,100%{transform:translateY(0);opacity:1}65%{transform:translateY(13px);opacity:.45}}
@keyframes ipad-hand-swipe{0%,15%,100%{transform:translateY(-3px)}65%{transform:translateY(9px)}}
@keyframes ipad-swipe-arrow{0%,15%,100%{transform:translateY(0);opacity:1}65%{transform:translateY(8px);opacity:.55}}
@media(max-width:1000px),(pointer:coarse){.ipad-interaction-hint .ipad-hint-mouse{display:none}.ipad-interaction-hint .ipad-hint-hand{display:block}}
@media(prefers-reduced-motion:reduce){.ipad-interaction-hint{transition:none}.ipad-interaction-hint *{animation:none}}
