@charset "UTF-8";
.case-page{--case-blue:#1f2a44;--case-wash:#edf2f2}
.case-page .header{border-bottom:1px solid var(--line)}
.case-page .header nav a[aria-current]{color:var(--green)}
.case-hero{padding-top:30px}
.case-back{display:inline-flex;align-items:center;gap:13px;font-size:.8125rem;color:var(--muted);padding-block:10px}
.case-back:hover{color:var(--green)}
.case-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding-top:55px}
.case-title-row .eyebrow{margin-bottom:14px}
.case-title-row h1{font-size:clamp(2.7rem,5.3vw,4.6rem);letter-spacing:.06em;line-height:1.4}
.case-subtitle{margin-top:17px;font-size:clamp(1rem,1.7vw,1.4rem);line-height:1.8;font-weight:500;letter-spacing:.045em}
.mobile-break{display:none}
.case-category{font-size:.6875rem;letter-spacing:.12em;line-height:1.9;text-align:right;color:var(--muted);padding-bottom:5px}
.case-category span{display:block;letter-spacing:.04em;margin-top:14px;font-size:.8125rem}
.case-intro-row{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:32px}
.case-lead{max-width:650px;font-size:.9375rem;line-height:2;color:var(--muted)}
.case-actions{display:flex;flex-shrink:0;gap:10px}
.case-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:13px 22px;font-size:.8125rem;font-weight:600;border:1px solid var(--line);transition:background .2s,color .2s}
.case-button.primary{background:var(--green);border-color:var(--green);color:white}
.case-button.primary:hover{background:#123e32}
.case-button.secondary:hover{background:var(--wash)}
.case-button>span[aria-hidden]{font-size:1.15rem}
.case-visual{margin:45px 0 0;background:var(--case-wash);padding:28px 38px 25px;overflow:hidden}
.visual-label,.case-visual figcaption{display:flex;justify-content:space-between;gap:16px;font-size:.625rem;letter-spacing:.1em;color:#506366;line-height:1.7}
.case-visual img{width:min(100%,960px);height:auto;aspect-ratio:4/3;object-fit:contain;margin:-16px auto -10px}
.case-visual figcaption{font-size:.75rem;letter-spacing:.02em}
.case-body{display:grid;grid-template-columns:205px minmax(0,1fr);column-gap:70px;align-items:start;padding-top:90px}
.case-sidebar{position:sticky;top:40px;padding-top:6px}
.case-sidebar nav{display:flex;flex-direction:column;gap:5px;margin:0;font-weight:400}
.case-sidebar nav p{font-size:.625rem;letter-spacing:.14em;margin-bottom:20px;color:var(--muted)}
.case-sidebar nav a{font-size:.8125rem;display:flex;gap:14px;padding-block:12px}
.case-sidebar nav a span{font-size:.6875rem;color:#698377;align-self:center}
.sidebar-link{display:inline-block;font-size:.75rem;color:var(--green);border-bottom:1px solid var(--line);padding-bottom:9px;margin-top:33px}
.case-section{padding-bottom:80px;scroll-margin-top:35px}
.case-section>.eyebrow{margin-bottom:14px;font-size:.6875rem}
.case-section>h2{font-size:clamp(1.5rem,2.3vw,2rem);margin-bottom:34px}
.case-content h3{font-size:1.125rem;line-height:1.75;letter-spacing:.02em}
.case-content p,.case-content li{overflow-wrap:anywhere}
.project-facts{margin:0;border-top:1px solid var(--line)}
.project-facts>div{display:grid;grid-template-columns:115px 1fr;gap:24px;padding-block:21px;border-bottom:1px solid var(--line);font-size:.875rem;line-height:1.9}
.project-facts dt{color:var(--muted)}
.project-facts dd{margin:0;min-width:0}
.inline-link{color:var(--green);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.editorial-block{display:grid;grid-template-columns:155px minmax(0,1fr);gap:30px;padding-block:29px;border-top:1px solid var(--line)}
.editorial-block h3{font-size:.9375rem}
.editorial-block p,.design-principles p,.implementation-grid article>p:last-child,.reflection-pair p,.ai-note>p:last-child{font-size:.9375rem;line-height:2;color:var(--muted)}
.editorial-block p+p{margin-top:15px}
.case-list{margin:0;padding:0;list-style:none}
.case-list li{position:relative;font-size:.9375rem;line-height:1.9;color:var(--muted);padding-left:17px}
.case-list li+li{margin-top:8px}
.case-list li:before{content:"";position:absolute;left:0;top:.85em;width:5px;height:5px;border-radius:50%;background:#61927a}
.design-note{margin-top:23px;padding:30px 34px;background:var(--wash)}
.design-note-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.design-note-head h3{font-size:1rem}
.color-palette{display:flex;gap:6px;flex-shrink:0}
.color-palette span{width:24px;height:24px;border-radius:50%;background:#1f2a44}
.color-palette span:nth-child(2){background:#8fd4dd}.color-palette span:nth-child(3){background:white;border:1px solid #dce2de}
.design-principles{list-style:none;margin:27px 0 0;padding:0;display:grid;gap:26px}
.design-principles li{display:grid;grid-template-columns:28px 1fr;gap:15px}
.design-principles li>span{font-size:.6875rem;color:var(--green);padding-top:4px}
.design-principles h4{margin:0 0 7px;font-weight:600;font-size:.9375rem;line-height:1.7}
.performance-panel{background:var(--green);color:white;padding:32px 34px}
.performance-label{font-size:.625rem;letter-spacing:.13em;color:#c7ded3;margin-bottom:10px}
.performance-panel h3{margin-bottom:10px}
.performance-panel>div>p:last-child{font-size:.875rem;line-height:1.95;color:#dce9e2;max-width:600px}
.performance-scores{display:grid;grid-template-columns:1fr 1fr;margin-top:26px;border-block:1px solid #4c7d6b;padding-block:22px}
.performance-scores>div{padding-left:22px}
.performance-scores>div:first-child{padding-left:0;border-right:1px solid #4c7d6b}
.performance-scores>div>span{font-size:.75rem;color:#dce9e2}
.performance-scores p{display:flex;align-items:baseline;gap:17px;margin-top:8px;font-variant-numeric:tabular-nums}
.performance-scores p>span:first-child{font-size:1.7rem;color:#bdd3c8}
.performance-scores p>span:nth-child(2){color:#bdd3c8;font-size:1rem}
.performance-scores strong{font-size:3rem;color:var(--accent);font-weight:500;line-height:1.3;letter-spacing:-.035em}
.performance-scores strong span{font-size:.75rem;margin-left:5px}
.performance-caption{font-size:.6875rem;color:#c7ded3;margin-top:14px}
.implementation-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:36px;margin-top:20px}
.implementation-grid article{padding-block:28px;border-bottom:1px solid var(--line)}
.tech-label{font-size:.625rem;letter-spacing:.12em;color:#5a7f6b;margin-bottom:8px;line-height:1.6}
.implementation-grid h3{margin-bottom:11px}
.implementation-wide{grid-column:1/-1}
.reflection-pair{display:grid;grid-template-columns:1fr 1fr;gap:34px;border-top:1px solid var(--line);padding-top:27px}
.reflection-label{font-size:.625rem;letter-spacing:.12em;color:#5a7f6b}
.reflection-pair h3{margin:7px 0 12px}
.ai-note{margin-block:30px;padding:27px 30px;background:var(--wash);border-left:3px solid #7d9b87}
.ai-note h3{margin-bottom:12px}
.project-takeaways{margin-top:25px;background:var(--green);color:white;padding:38px 36px}
.project-takeaways .eyebrow{font-size:.625rem;margin-bottom:12px}
.project-takeaways h3{font-size:1.25rem}
.project-takeaways ul{list-style:none;margin:25px 0 28px;padding:0}
.project-takeaways li{position:relative;padding-left:24px;font-size:.9375rem;line-height:1.9;color:#e3ede7}
.project-takeaways li+li{margin-top:13px}
.project-takeaways li:before{content:"↗";position:absolute;left:0;color:var(--accent)}
.project-takeaways .case-button{border-color:#729a85;min-width:200px;color:var(--accent)}
.project-takeaways .case-button:hover{background:#ffffff12}
.reflection-section{padding-bottom:70px}
.case-end{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-block:37px 55px}
.case-end>a:first-child{display:flex;align-items:center;gap:25px;font-size:1rem;line-height:1.8}
.case-end small{display:block;font-size:.625rem;letter-spacing:.1em;color:var(--muted);margin-bottom:8px}
.case-end>a:last-child{font-size:.8125rem;color:var(--green);display:flex;gap:30px;padding-block:10px}
@media(min-width:1600px){.case-title-row{padding-top:65px}}
@media(max-width:1100px){.case-intro-row{flex-direction:column;align-items:flex-start;gap:22px}.case-body{column-gap:40px;grid-template-columns:180px minmax(0,1fr)}.editorial-block{grid-template-columns:1fr;gap:15px}}
@media(max-width:800px){.case-body{grid-template-columns:1fr;padding-top:50px}.case-sidebar{position:static;padding:0 0 42px}.case-sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;border-block:1px solid var(--line);padding-block:10px}.case-sidebar nav p{display:none}.case-sidebar nav a{font-size:.75rem;gap:12px}.sidebar-link{display:none}.case-section{padding-bottom:62px}.case-title-row{padding-top:35px}.case-visual{padding:23px 25px}.editorial-block{grid-template-columns:155px minmax(0,1fr);gap:24px}}
@media(max-width:540px){.case-hero{padding-top:19px}.case-back{font-size:.75rem}.case-title-row{display:block;padding-top:29px}.case-title-row h1{font-size:2.65rem}.case-title-row .eyebrow{font-size:.625rem}.case-subtitle{font-size:1.0625rem;margin-top:13px}.mobile-break{display:initial}.case-category{text-align:left;font-size:.5625rem;margin-top:22px;line-height:1.7}.case-category span{font-size:.75rem;margin-top:5px}.case-category{word-spacing:.1em}.case-intro-row{margin-top:20px;gap:24px}.case-lead{font-size:.875rem;line-height:1.95}.case-lead br{display:none}.case-actions{width:100%;gap:9px}.case-actions .case-button{flex:1;gap:12px;padding:12px 15px;font-size:.75rem;min-height:48px}.case-visual{margin-top:30px;padding:18px 10px 16px}.visual-label{padding-inline:5px;font-size:.5rem}.visual-label span:last-child{display:none}.case-visual img{margin:0 auto;max-width:100%;width:100%}.case-visual figcaption{padding-inline:5px;font-size:.625rem}.case-visual figcaption span:last-child{display:none}.case-body{padding-top:32px}.case-sidebar{padding-bottom:38px}.case-sidebar nav{gap:0 12px}.case-sidebar nav a{font-size:.6875rem;gap:7px;line-height:1.7}.case-sidebar nav a span{font-size:.5625rem}.case-section>.eyebrow{font-size:.5625rem;margin-bottom:12px}.case-section>h2{font-size:1.4rem;margin-bottom:25px}.project-facts>div{grid-template-columns:80px minmax(0,1fr);gap:16px;padding-block:18px;font-size:.8125rem}.editorial-block{grid-template-columns:1fr;gap:12px;padding-block:23px}.editorial-block p,.case-list li,.design-principles p,.implementation-grid article>p:last-child,.reflection-pair p,.ai-note>p:last-child{font-size:.875rem;line-height:1.95}.design-note{padding:25px 20px;margin-top:14px}.design-note-head{align-items:flex-start;gap:10px}.design-note-head h3{font-size:.9375rem}.color-palette{gap:4px;margin-top:5px}.color-palette span{width:14px;height:14px}.design-principles{gap:23px}.design-principles li{gap:9px;grid-template-columns:23px 1fr}.design-principles h4{font-size:.875rem}.performance-panel{padding:25px 20px}.performance-panel h3{font-size:1.0625rem}.performance-panel>div>p:last-child{font-size:.8125rem}.performance-scores>div{padding-left:15px}.performance-scores p{gap:9px;flex-wrap:wrap}.performance-scores strong{font-size:2.5rem}.performance-scores p>span:first-child{font-size:1.3rem}.performance-scores p>span:nth-child(2){font-size:.8125rem}.implementation-grid{grid-template-columns:1fr;margin-top:4px}.implementation-grid article{padding-block:24px}.implementation-grid h3{font-size:1.0625rem;margin-bottom:9px}.reflection-pair{grid-template-columns:1fr;gap:26px}.reflection-pair article+article{border-top:1px solid var(--line);padding-top:24px}.ai-note{padding:23px 20px;margin-block:25px}.project-takeaways{padding:28px 22px;margin-top:17px}.project-takeaways h3{font-size:1.0625rem}.project-takeaways li{font-size:.875rem}.project-takeaways .case-button{min-width:100%}.reflection-section{padding-bottom:45px}.case-end{align-items:flex-start;flex-direction:column;gap:26px;padding-block:28px 35px}.case-end>a:first-child{gap:18px;font-size:.9375rem}.case-end>a:last-child{padding-left:34px}.case-end small{font-size:.5625rem}}
