
.example-case-content{max-width:1000px;overflow-wrap:anywhere}
.example-case-content h2{margin-top:2.5rem}
.example-case-content p,.example-case-content li{line-height:1.75}
.example-case-content table{width:100%;border-collapse:collapse;table-layout:fixed}
.example-case-content th,.example-case-content td{padding:14px;border:1px solid #cbd5e1;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.example-case-content th{width:30%}
.example-case-content figure{margin:32px 0;text-align:center}
.example-case-content img{max-width:100%;height:auto;max-height:900px;object-fit:contain}
.example-case-content figcaption{font-size:.875rem;margin-top:12px}
.example-card-image{width:100%;height:220px;object-fit:contain;border-radius:12px;background:#f1f5f9}
.example-category{margin-top:48px;scroll-margin-top:100px}
.example-category-nav{display:flex;flex-wrap:wrap;gap:20px}
@media(max-width:600px){.example-case-content th,.example-case-content td{padding:8px;font-size:14px}.example-case-content th{width:35%}.example-case-content figure{margin:24px 0}}

.case-project-gallery{margin:40px 0}
.case-project-gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px;align-items:start}
.example-case-content .case-project-gallery figure{margin:0;min-width:0}
.case-project-gallery figure>a{display:block;border-radius:16px;overflow:hidden;background:#f1f5f9}
.example-case-content .case-project-gallery img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain}
.case-project-gallery a:focus-visible{outline:3px solid #2479f0;outline-offset:4px}

.case-structured-section{scroll-margin-top:100px}
.case-structured-section .container{max-width:1120px}
.case-structured-section p{line-height:1.75;max-width:84ch}
.case-structured-section h2{margin-bottom:24px}
.case-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:0}
.case-detail-list>div{padding:20px 0;border-bottom:1px solid var(--card-line,#d8e0e8);min-width:0}
.case-detail-list dt{font-weight:800;margin-bottom:8px;color:var(--card-ink,#17223b)}
.case-detail-list dd{margin:0;line-height:1.7;overflow-wrap:anywhere;color:var(--card-muted,#526078)}
.case-structured-section .case-facts-table{table-layout:fixed;overflow-wrap:anywhere}
.case-letter{margin-top:40px}
.case-letter figure{margin:20px 0}
.case-letter img{display:block;max-width:100%;width:600px;height:auto;margin:auto}
#project-media>.case-project-gallery{max-width:1120px;margin:40px auto;padding:0 24px}
.case-study-page .service-hero h1{font-size:clamp(2rem,4.5vw,4.25rem);overflow-wrap:break-word}
@media(max-width:700px){.case-detail-list{grid-template-columns:1fr}.case-detail-list>div{padding:16px 0}.case-structured-section .case-facts-table th,.case-structured-section .case-facts-table td{box-sizing:border-box}}

/* Fit the bitmap to its own aspect ratio, including legacy width/height attributes. */
#project-media .case-project-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),440px));justify-content:center;gap:24px}
#project-media .case-project-gallery figure{margin:0;min-width:0}
#project-media .case-project-gallery figure>a{display:flex;align-items:center;justify-content:center;height:360px;padding:12px}
#project-media .case-project-gallery img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto}
#project-media .case-project-gallery figcaption{margin-top:12px;font-size:.85rem;line-height:1.5;color:var(--card-muted,#526078)}
#project-media .case-media-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),360px));justify-content:center;align-items:center}
#project-media .case-media-item{display:flex;align-items:center;justify-content:center;min-width:0;min-height:200px}
#project-media .case-media-item img{width:auto;height:auto;max-width:100%;max-height:320px;object-fit:contain;margin:auto}
#project-media .case-video-grid{max-width:960px;margin-inline:auto}
.case-letter{margin-top:0}
.case-letter img{width:auto;height:auto;max-width:100%;max-height:640px;object-fit:contain}
.case-evidence-note{font-size:.85rem;color:var(--card-muted,#526078);margin:16px 0 24px}
.case-evidence-note a{color:var(--accent-strong,#497500);text-decoration:underline;text-underline-offset:3px}
.case-feedback-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.case-feedback-grid>*{min-width:0}
.case-feedback-grid .case-letter figure{margin:0}
.case-feedback-grid .case-letter img{border-radius:16px}
.case-testimonial{box-sizing:border-box;margin:0;padding:36px;border:1px solid #d8e0e8;border-radius:24px;background:#f5f8f1;color:#17223b}
.case-testimonial .case-testimonial-label{margin:0 0 24px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#4b650e}
.case-testimonial blockquote{margin:0;padding:0;border:0;background:none;color:inherit}
.case-testimonial blockquote p{margin:0;font-size:clamp(18px,1.65vw,22px);line-height:1.65;font-weight:500}
.case-testimonial-author{display:flex;align-items:center;gap:18px;margin-top:28px;text-align:left}
.case-testimonial .case-testimonial-author img{display:block;flex:0 0 88px;width:88px;height:88px;max-height:none;object-fit:cover;border-radius:50%;margin:0}
.case-testimonial-author strong{display:block;font-size:18px;line-height:1.4;color:#17223b}
.case-testimonial-author span{display:block;margin-top:4px;font-size:14px;line-height:1.5;color:#526078}
.case-testimonial .case-testimonial-note{margin:24px 0 0;padding-top:20px;border-top:1px solid #d2ddc6;font-size:13px;line-height:1.6;color:#526078}
@media(max-width:800px){.case-feedback-grid{grid-template-columns:minmax(0,1fr);gap:24px}.case-testimonial{padding:26px}.case-feedback-grid .case-letter img{max-height:540px}.case-testimonial .case-testimonial-author img{flex-basis:72px;width:72px;height:72px}}
@media(max-width:700px){#project-media .case-project-gallery figure>a{height:300px}#project-media .case-media-grid{grid-template-columns:minmax(0,1fr)}#project-media .case-media-item img{max-height:280px}.case-letter img{max-height:540px}}
