
/* Assignment 111: new draft routes only. Existing shared files are unchanged. */
.case-page{background:#f7f4ef;color:#181817}
.case-page .shell{width:min(100% - 2 * var(--pad),1240px);margin-inline:auto}
.case-page .review-notice{padding:.65rem var(--pad);background:#eee8de;border-bottom:1px solid #d3c5ac;color:#42443d;font:600 .67rem/1.6 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;display:flex;gap:1.4rem;flex-wrap:wrap}
.case-page .review-notice span{font-weight:400;letter-spacing:.06em}
.case-page .kicker{font:600 .71rem/1.65 Arial,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:#555a48;margin:0 0 1.3rem}
.case-page main h1,.case-page main h2,.case-page main h3{font-family:Georgia,serif;font-weight:400;text-transform:none}
.case-page main h1{font-size:clamp(3.25rem,5.5vw,5.4rem);line-height:1.02;letter-spacing:-.052em;margin:0 0 1.8rem}
.case-page main h1 em,.case-page main h2 em,.case-page .art-title em{color:#747765;font-weight:400}
.case-page main h2{font-size:clamp(2.4rem,4.1vw,4rem);line-height:1.06;letter-spacing:-.045em;margin:0 0 1.5rem}
.case-page main h3{font-size:1.55rem;line-height:1.2;letter-spacing:-.025em;margin:0 0 1rem}
.case-page main p{color:#42443d}
.case-page main a:focus-visible{outline:3px solid #555a48;outline-offset:6px}
.case-page main .back-link{display:inline-block;color:#555a48;font-size:.8rem;text-decoration:none;border-bottom:1px solid #b7b9ab;margin-bottom:3.4rem;padding:.25rem 0}
.case-hero{padding-block:2rem 0}
.case-hero-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(16rem,.8fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.case-page .client-name{font-size:1.12rem;color:#181817;margin-bottom:1rem}
.case-page .deck{font-size:clamp(1.08rem,1.5vw,1.22rem);line-height:1.7;max-width:40rem;margin-bottom:2.4rem}
.release-panel{background:#eee8de;border-top:2px solid #747765;padding:2rem 2rem 1.5rem;min-width:0}
.case-page .release-panel .kicker{margin-bottom:.5rem}
.delivery-number{display:grid;grid-template-columns:5rem 1fr;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid #d3c5ac}
.delivery-number strong{font:400 4rem/1 Georgia,serif;letter-spacing:-.06em;color:#555a48}
.delivery-number p{font-size:.88rem;line-height:1.5;margin:0}
.case-page .panel-note{font-size:.73rem;line-height:1.6;margin:1.25rem 0 0}
.project-facts{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;gap:1.4rem;border-block:1px solid #d3c5ac;padding-block:1.7rem;margin:2.8rem 0 0}
.project-facts dt{font:600 .64rem/1.5 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#555a48;margin-bottom:.7rem}
.project-facts dd{margin:0;color:#42443d;font-size:.86rem;line-height:1.6}
.case-section{padding-block:clamp(3.5rem,6vw,6rem)}
.narrative{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(2rem,5vw,5rem)}
.prose p{margin:0 0 1.2rem;font-size:1.06rem;line-height:1.8}
.prose p:last-child{margin-bottom:0}
.prose .attribution{font-size:.88rem;line-height:1.7;padding-top:1.2rem;border-top:1px solid #d3c5ac}
.approach-band{background:#eee8de}
.section-intro{max-width:50rem;margin-bottom:3rem}
.section-intro>p:last-child{max-width:36rem}
.improvement-list article{display:grid;grid-template-columns:3.2rem minmax(0,1fr) minmax(0,1.65fr);gap:1.8rem;padding-block:2rem;border-top:1px solid #d3c5ac}
.improvement-list article:last-child{border-bottom:1px solid #d3c5ac}
.item-number{font:400 1.5rem/1.2 Georgia,serif;color:#747765}
.improvement-list article p{margin:0 0 1.1rem;line-height:1.75}
.improvement-list article p:last-child{margin-bottom:0}
.after span{display:block;font:600 .65rem/1.5 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#555a48;margin-bottom:.45rem}
.outcome-band{background:#eee8de;border-top:1px solid #d3c5ac}
.outcome-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem)}
.outcome-grid>div>p:last-child{max-width:39rem;line-height:1.8}
.closeout{border-left:1px solid #c0b7a7;padding-left:2.4rem}
.closeout strong{font:400 5.5rem/1 Georgia,serif;color:#555a48;letter-spacing:-.06em;display:block;margin-bottom:.8rem}
.case-page .closeout h3{font-size:1.6rem}
.case-page .closeout p{font-size:.95rem}
.case-page .measurement-note{font-size:.83rem;line-height:1.8;max-width:72rem;padding-top:1.5rem;margin:2rem 0 0;border-top:1px solid #d3c5ac}
.case-cta{text-align:center}
.case-cta p{max-width:40rem;margin:0 auto 1.5rem}
.case-page .case-cta .kicker{margin-bottom:1.5rem}
.case-page .case-cta .button{margin-top:.5rem}
.case-page .work-intro{padding-block:clamp(3.5rem,7vw,6rem) 2rem}
.case-page .work-intro h1{font-size:clamp(3.2rem,5.5vw,5.5rem);max-width:24ch}
.work-feature{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #d3c5ac;padding-block:2.5rem;gap:clamp(2rem,5vw,5rem);align-items:center}
.feature-art{padding:clamp(2rem,4vw,4rem);background:#eee8de;min-height:30rem;display:flex;flex-direction:column;justify-content:center;border-top:2px solid #747765}
.case-page .art-title{font:400 clamp(3rem,4.8vw,5rem)/1.02 Georgia,serif;letter-spacing:-.05em;color:#181817;margin:1rem 0 2rem}
.art-rule{width:5rem;border-top:1px solid #a89a82;margin-bottom:1rem}
.feature-art>p:last-child{font-size:.8rem;line-height:1.7;margin:0}
.case-page .feature-copy h2{font-size:clamp(2.4rem,3.3vw,3.5rem)}
.feature-copy>p{max-width:32rem}
.case-page .feature-scope{font-size:.84rem;color:#555a48;border-top:1px solid #d3c5ac;padding-top:1.2rem;margin-top:1.6rem}
.case-link{display:inline-flex;gap:2rem;font-size:.85rem;padding:.8rem 0;border-bottom:1px solid #747765;text-decoration:none}
@media(max-width:1000px){.case-hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(14rem,.8fr);gap:2rem}.release-panel{padding:1.5rem}.delivery-number{grid-template-columns:3.5rem 1fr;gap:.8rem}.delivery-number strong{font-size:3rem}.delivery-number p{font-size:.78rem}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.narrative{gap:2rem}.improvement-list article{grid-template-columns:2rem minmax(0,1fr) minmax(0,1.5fr);gap:1.2rem}}
@media(max-width:700px){.case-page .shell{width:calc(100% - 2.7rem)}.case-page .review-notice{display:block;font-size:.6rem;line-height:1.7;padding:.7rem 1.35rem}.case-page .review-notice span{display:block}.case-hero{padding-top:1.3rem}.case-page main .back-link{margin-bottom:2.2rem}.case-hero-grid,.narrative,.outcome-grid,.work-feature{grid-template-columns:1fr}.case-page main h1{font-size:clamp(2.75rem,11.6vw,4.2rem)}.case-page main h2{font-size:clamp(2.15rem,9vw,3.4rem)}.case-page .deck{font-size:1.07rem}.release-panel{padding:1.5rem}.delivery-number{grid-template-columns:4rem 1fr;gap:1rem}.delivery-number strong{font-size:3.5rem}.delivery-number p{font-size:.9rem}.project-facts{gap:1.5rem 1rem;margin-top:2rem}.project-facts dd{font-size:.78rem;overflow-wrap:anywhere}.case-section{padding-block:3.2rem}.narrative{gap:.6rem}.prose p{font-size:1rem}.improvement-list article{grid-template-columns:1.6rem minmax(0,1fr);gap:.8rem 1rem;padding-block:1.7rem}.improvement-list article>div{grid-column:2}.improvement-list h3{font-size:1.5rem}.improvement-list p{font-size:.95rem}.closeout{padding:1.5rem 0 0;border-left:0;border-top:1px solid #c0b7a7}.closeout strong{font-size:4rem}.case-page .measurement-note{font-size:.8rem}.case-page .case-cta .button{max-width:100%;line-height:1.5}.case-page .work-intro{padding-top:3rem}.work-feature{padding-block:1.5rem;gap:2rem}.feature-art{min-height:25rem}.case-page .art-title{font-size:3.6rem}.feature-copy{padding-bottom:1rem}}
@media(prefers-reduced-motion:reduce){.case-page{scroll-behavior:auto}.case-page a{transition:none}}

/* Assignment 111A: authentic recorded text comparisons and an unaltered review photo. */
.comparison{padding-block:1.8rem;border-top:1px solid #d3c5ac}
.comparison:last-child{border-bottom:1px solid #d3c5ac}
.comparison-heading{display:grid;grid-template-columns:2.2rem 1fr auto;gap:1rem;align-items:baseline;margin-bottom:1rem}
.case-page .comparison-heading h3{margin:0;font-size:1.6rem}
.case-page .comparison-heading>p{font-size:.74rem;margin:0;color:#555a48}
.comparison-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-left:3.2rem}
.comparison-pair>div{padding:1.4rem 1.5rem;border-top:1px solid #c0b7a7;min-width:0}
.comparison-before{background:#eee8de}
.comparison-after{background:#f0f0e8}
.case-page .comparison-pair p{font-size:.96rem;line-height:1.75;margin:0}
.case-page .comparison-pair .comparison-label{font:600 .66rem/1.5 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;color:#555a48;margin-bottom:.7rem}
.case-page .comparison-footnote{font-size:.78rem;line-height:1.7;margin:1.2rem 0 0;color:#555a48}
.beyond-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:clamp(2.5rem,7vw,7rem);border-bottom:1px solid #d3c5ac}
.beyond-copy>p:not(.kicker){max-width:33rem;line-height:1.8}
.beyond-photo{margin:0;width:100%;max-width:480px;justify-self:end}
.beyond-photo img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;aspect-ratio:3/4}
.beyond-photo figcaption{font-size:.73rem;color:#555a48;line-height:1.65;padding-top:.8rem}
.beyond-photo figcaption span{display:block;margin-top:.25rem}
@media(max-width:900px){.comparison-heading{grid-template-columns:1.5rem 1fr}.comparison-heading>p{grid-column:2}.comparison-pair{margin-left:0}.beyond-grid{gap:2rem}}
@media(max-width:700px){.comparison-pair,.beyond-grid{grid-template-columns:1fr}.comparison-pair{gap:.7rem}.comparison-pair>div{padding:1.2rem}.case-page .comparison-heading h3{font-size:1.4rem}.beyond-photo{justify-self:start;max-width:100%}.beyond-copy>p:not(.kicker){font-size:1rem}.case-page .comparison-heading>p{font-size:.73rem}.beyond-grid{gap:1.5rem}.comparison-heading{gap:.6rem 1rem}}
