.page-case-study { background:#f7f7f2; color:#080909; }
.page-case-study .container { width:min(1200px,calc(100% - 40px)); }
.project-hero { padding:48px 0 0; background:#080909; color:#f7f7f2; }
.project-back { display:inline-block; color:#a6a8a4; font-size:13px; margin-bottom:40px; }
.project-eyebrow { font:500 11px/1.6 "IBM Plex Mono",monospace; letter-spacing:.1em; margin:0 0 20px; }
.project-hero .project-eyebrow { color:#c9ff36; }
.page-case-study h1 { font-family:"Archivo",Arial,sans-serif; font-size:clamp(40px,6vw,86px); line-height:1.02; letter-spacing:-.055em; margin:0 0 24px; max-width:1050px; overflow-wrap:break-word; }
.project-claim { font-size:clamp(23px,3vw,36px); font-weight:600; letter-spacing:-.035em; line-height:1.2; margin:0 0 20px; }
.project-intro { max-width:790px; font-size:18px; color:#b8bcb8; line-height:1.65; }
.project-actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin:30px 0 42px; }
.project-button { display:inline-block; padding:15px 22px; background:#c9ff36; border:1px solid #c9ff36; color:#080909!important; font-weight:700; text-decoration:none; font-size:14px; }
.project-button-outline { background:transparent; border-color:#8d9289; color:inherit!important; }
.project-button:hover { outline:2px solid currentColor; outline-offset:3px; }
.project-link { color:inherit; text-decoration:underline; text-underline-offset:5px; }
.project-cover { margin:0; background:#141818; }
.project-cover img { width:100%; height:auto; max-height:670px; object-fit:contain; display:block; }
.project-hungry-blob .project-cover { background:radial-gradient(ellipse,#8b19bc,#25013c); }
.project-hungry-blob .project-cover img { max-height:600px; padding:20px; box-sizing:border-box; }
.project-cover figcaption { color:#a6a8a4; font-size:12px; padding:12px 0; }
.project-section { padding:85px 0; }
.project-section h2 { font-family:"Archivo",Arial,sans-serif; font-size:clamp(30px,4vw,52px); line-height:1.1; letter-spacing:-.045em; max-width:800px; margin:0 0 36px; }
.project-facts { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; border-bottom:1px solid #cdd0c7; padding:0 0 45px; margin:0 0 65px; }
.project-facts strong { display:block; font-size:clamp(26px,3vw,42px); font-weight:800; letter-spacing:-.05em; }
.project-facts span { display:block; font-size:13px; color:#5c625b; margin-top:8px; }
.project-feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:35px 50px; }
.project-feature-grid article { border-top:1px solid #cdd0c7; padding-top:24px; }
.project-number { font:12px "IBM Plex Mono",monospace; color:#72796f; }
.project-feature-grid h3 { font-size:23px; letter-spacing:-.03em; margin:12px 0; }
.project-feature-grid p,.project-body { font-size:16px; line-height:1.75; color:#535b52; max-width:840px; }
.project-gallery-section { background:#e9ece4; }
.project-gallery { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.project-gallery figure { margin:0; min-width:0; }
.project-gallery img { width:100%; height:auto; display:block; border:1px solid #c9cec2; }
.project-gallery figcaption { margin-top:12px; font-size:13px; color:#535b52; }
.project-gallery-portrait { grid-template-columns:repeat(4,1fr); gap:20px; }
.project-note { font-size:12px; line-height:1.7; color:#626b60; margin-top:28px; max-width:850px; }
.project-final { background:#080909; color:#f7f7f2; }
.project-final p { color:#a6a8a4; }
.project-final p a { color:#c9ff36; }
.project-evidence { background:#c9ff36; }
.project-evidence blockquote { margin:0 0 25px; font-size:clamp(28px,4vw,50px); line-height:1.2; letter-spacing:-.04em; font-weight:700; overflow-wrap:anywhere; }
.project-evidence .project-note { color:#3e4c24; }
@media(max-width:700px) { .project-hero { padding-top:30px; } .project-section { padding:55px 0; } .project-intro { font-size:16px; } .project-facts { grid-template-columns:1fr; gap:22px; margin-bottom:45px; padding-bottom:35px; } .project-feature-grid,.project-gallery { grid-template-columns:1fr; gap:28px; } .project-gallery-portrait { grid-template-columns:1fr 1fr; gap:14px; } .project-back { margin-bottom:28px; } .project-button { padding:14px 18px; } }

.comparison-scroll { overflow-x:auto; margin:30px 0; }
.case-comparison { width:100%; border-collapse:collapse; font-size:14px; line-height:1.65; }
.case-comparison caption { text-align:left; font-weight:700; margin-bottom:16px; }
.case-comparison th,.case-comparison td { padding:18px; border:1px solid #cdd0c7; text-align:left; vertical-align:top; }
.case-comparison thead { background:#080909; color:#f7f7f2; }
.case-comparison tbody th { background:#e9ece4; }
@media(max-width:600px) { .case-comparison { min-width:650px; } }
