/* Storefront framing for the complete, source-preserved project content. */
.case-content{--case-accent:#edb296;--lime:#edb296;--paper:#fffefa;--ink:#22231f;--muted:#676b64;--line:#deded8;font:14px/1.8 'DM Sans',Arial,sans-serif;overflow:clip}.case-content .legacy-main{padding:0!important}.case-content .page{border:0;max-width:1280px;padding:0 4%;margin:auto}.case-content .case-meta{margin:0 4% 60px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:25px}.case-content .case-meta p{font-size:12px}.case-content img{height:auto;max-width:100%}.case-content .case-section{padding-bottom:55px;margin-bottom:55px}.case-content h2,.case-content .case-section-head h2{font-family:var(--serif);font-weight:400;letter-spacing:-.7px;font-size:38px}.case-content h3{font-family:'DM Sans',sans-serif}.case-content .case-feature{background:#eee5dc;gap:45px;padding:38px}.case-content .case-feature>img{height:430px}.case-content .mono{font-family:'DM Sans',Arial,sans-serif;font-size:10px;letter-spacing:1.3px}.case-content .case-metrics{background:#e4eaf0;padding:30px}.case-content .case-metrics strong{font-family:var(--serif);font-weight:400}.case-content .boundary{border-color:#263e75}.case-content .text-link{font-family:'DM Sans',sans-serif}.case-content .button{background:#22231f;border-color:#22231f;color:white;border-radius:0}.case-content .wrap{max-width:1200px}.case-content .legacy-main>section{scroll-margin-top:175px}.case-content .system{background:#f2e4da}.case-content .qa{background:#e7ecf0}.case-content .finale{background:#f6f0dc}.case-content .case-section p,.case-content .legacy-main p{line-height:1.85}.case-content a:hover{text-decoration:underline;text-underline-offset:4px}.case-content table{max-width:100%}.case-content .table-scroll{overflow-x:auto}.case-content .book-lightbox{max-width:90vw;max-height:90vh;background:#fffefa}.case-content .book-lightbox img{max-height:75vh;width:auto;max-width:100%;margin:auto}.case-content .book-lightbox button{padding:10px}.case-content .book-lightbox::backdrop{background:#000a}.case-jump-nav{display:flex;align-items:center;justify-content:center;gap:35px;border-block:1px solid var(--line);padding:22px;margin-bottom:55px;font-size:11px;background:#f5f2eb}.case-jump-nav a{text-decoration:underline;text-underline-offset:4px}.case-loading{padding:60px;text-align:center}.detail-layout{padding-bottom:45px}.detail-photo{position:sticky;top:175px}.detail-copy .detail-tabs{margin-top:28px}.detail-copy .button{cursor:pointer}.detail-copy .full-case-note{font-size:10px;color:#666;text-align:center;margin:5px 0 20px}.about-content{padding:0 5% 65px}.about-content .about-intro{max-width:1300px;margin:auto;gap:8%;padding:35px 0 65px}.about-content .about-intro h1{font-family:var(--serif);font-size:64px;letter-spacing:-2px;font-weight:400;line-height:1.06}.about-content .about-intro h1 em{color:#263e75}.about-content .about-photo img{height:580px;aspect-ratio:auto}.about-content .about-section{max-width:1180px;margin:0 auto;padding:55px 0;display:grid;grid-template-columns:1fr 3fr;gap:45px;border-top:1px solid var(--line)}.about-content .about-section h2{margin-bottom:22px}.about-content .about-section p{font-size:15px;max-width:780px;margin:0 0 18px}.about-content .career-row{padding:22px 0}.about-content .personal{background:#f6efdc;padding:40px;margin-top:25px}.about-content .section-label{color:#263e75}.case-content .case-next{display:none}#case-study{scroll-margin-top:160px}.header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
@media(max-width:700px){.detail-photo{position:static}.case-jump-nav{gap:18px;padding:20px 12px;flex-wrap:wrap;font-size:10px;margin-bottom:30px}.case-content .page{padding:0 20px}.case-content .case-meta{margin:0 20px 35px;grid-template-columns:1fr;gap:14px}.case-content .case-feature{padding:22px;gap:25px;grid-template-columns:1fr;margin-bottom:40px}.case-content .case-feature>img{height:350px}.case-content h2,.case-content .case-section-head h2{font-size:30px}.case-content .case-section{margin-bottom:35px;padding-bottom:35px}.case-content .case-metrics{padding:20px}.case-content .legacy-main>section{scroll-margin-top:140px}.about-content{padding:0 20px 40px}.about-content .about-intro{display:flex;flex-direction:column;gap:30px;padding-top:20px}.about-content .about-intro h1{font-size:43px}.about-content .about-photo{width:100%}.about-content .about-photo img{height:400px}.about-content .about-section{grid-template-columns:1fr;gap:16px;padding:35px 0}.about-content .about-section p{font-size:14px}.about-content .personal{padding:25px}.case-content .wrap{width:calc(100% - 40px)}.case-content .legacy-main p{overflow-wrap:anywhere}.case-content .book-lightbox{padding:14px}}

/* Personal note: text-led, with a quiet photo in the margin of the story. */
.about-content .personal{grid-template-columns:1fr 3fr;align-items:start;gap:45px;padding:55px 0;margin-top:0;background:transparent;border-top:1px solid var(--line);overflow:visible}
.about-content .personal-story{display:flow-root}
.about-content .personal h2{font-size:34px;line-height:1.2;max-width:590px}
.about-content .personal-photo{float:right;width:175px;margin:5px 0 18px 30px;padding:8px;border:1px solid #e1dfd7;background:#f5f3ed}
.case-content .personal-photo img{width:100%;height:auto;min-height:0;aspect-ratio:1/1;object-fit:cover;object-position:50% 42%}
.about-content .personal-photo figcaption{position:static;background:none;padding:9px 2px 1px;font:italic 11px/1.5 Georgia,serif;color:#727168;letter-spacing:0}
.about-content .personal .text-link{display:inline-block;margin-top:6px}
@media(max-width:700px){.about-content .personal{grid-template-columns:1fr;gap:16px;padding:35px 0}.about-content .personal h2{font-size:29px}.about-content .personal-photo{width:125px;margin:5px 0 15px 20px;padding:6px}.about-content .personal-photo figcaption{font-size:10px}.about-content .personal-story>p{overflow-wrap:normal}}
@media(max-width:360px){.about-content .personal-photo{float:none;width:140px;margin:20px 0}}

/* Small personal photo collection; add another figure to extend it. */
.about-content .personal-polaroids{display:flex;flex-wrap:wrap;align-items:center;gap:0;max-width:660px;margin:32px 0 35px;padding:8px 8px 12px}
.about-content .memory-polaroid{position:relative;flex:0 0 25%;min-width:0;margin:0 -3px;padding:8px 8px 0;background:#fffefa;border:1px solid #e7e2d8;box-shadow:0 3px 9px #33271514;transform:rotate(-5deg);transition:transform .2s ease,box-shadow .2s ease}
.about-content .memory-polaroid:nth-child(4n+2){transform:translateY(9px) rotate(4deg)}
.about-content .memory-polaroid:nth-child(4n+3){transform:translateY(-3px) rotate(-3deg)}
.about-content .memory-polaroid:nth-child(4n){transform:translateY(8px) rotate(5deg)}
.about-content .memory-polaroid a{display:block;overflow:hidden}
.case-content .memory-polaroid img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center}
.about-content .memory-polaroid figcaption{position:static;padding:11px 0 13px;background:none;text-align:center;color:#6e675d;font:italic 12px/1.35 Georgia,serif;letter-spacing:0}
.about-content .memory-polaroid:hover,.about-content .memory-polaroid:focus-within{z-index:2;transform:translateY(-5px) rotate(0);box-shadow:0 7px 16px #33271522}
@media(max-width:600px){.about-content .personal-polaroids{max-width:380px;gap:16px 0;margin:25px 0 28px}.about-content .memory-polaroid{flex-basis:48%;margin:0;padding:7px 7px 0}.about-content .memory-polaroid figcaption{font-size:11px}}
@media(prefers-reduced-motion:reduce){.about-content .memory-polaroid{transition:none}}

/* Compact keepsakes: secondary to the About story. */
.about-content .personal-polaroids{max-width:420px;margin:22px 0 26px;padding:6px 4px 8px;gap:0}
.about-content .memory-polaroid{flex:0 0 25%;padding:5px 5px 0;margin:0 -2px}
.about-content .memory-polaroid figcaption{font-size:9px;line-height:1.3;padding:8px 0 10px}
@media(max-width:600px){.about-content .personal-polaroids{max-width:330px;gap:0;margin:20px 0 24px}.about-content .memory-polaroid{flex-basis:25%;padding:4px 4px 0;margin:0 -1px}.about-content .memory-polaroid figcaption{font-size:8px;padding:7px 0 9px}}

.photo-quickview{position:fixed;inset:0;margin:auto;width:fit-content;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:40px 18px 16px;border:1px solid #e2ddd3;background:#fffefa;color:#22231f;box-shadow:0 20px 80px #0003;overflow:auto}
.photo-quickview::backdrop{background:#22231fb3}
.photo-quickview figure{margin:0}
.photo-quickview img{display:block;width:auto;height:auto;max-width:min(760px,calc(100vw - 70px));max-height:calc(100dvh - 140px);object-fit:contain;margin:auto}
.photo-quickview figcaption{text-align:center;font:italic 15px/1.5 Georgia,serif;padding-top:12px}
.photo-quickview .quickview-close{position:absolute;right:5px;top:2px;width:40px;height:36px;font-size:28px;line-height:1;color:inherit}
body.photo-quickview-open{overflow:hidden}

/* Match section anchors to the actual shared header height. */
html{scroll-padding-top:var(--case-anchor-offset,180px)}
.case-jump-nav{flex-wrap:wrap}

.catalog-review-note{margin:28px 0;padding:24px;border:1px solid #c8b49e;border-left:3px solid #946c46;background:#f8f3ec}.catalog-review-note h3,.catalog-review-note h4{margin:0 0 12px}.catalog-review-note p{margin:12px 0}.catalog-review-note details{margin:18px 0}.catalog-review-note summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}

.case-content mark.unsupported-claim{background:#ffe0b5;color:#542e0c;border-bottom:2px dotted #8d4811;padding:0 2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
