/* Case collection and reusable case-study layout. */
.cases-page .site-header{background:rgba(255,250,251,.97)}
.case-nav-link{white-space:nowrap}
.desktop-nav{gap:clamp(14px,1.5vw,25px)}
.case-main{padding-top:var(--header-h)}
.case-shell{width:min(calc(100% - 2 * var(--gutter)),1280px);margin-inline:auto}
.case-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:32px;color:var(--muted);font-size:.76rem}
.case-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.case-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:clamp(32px,7vw,100px);align-items:center;padding-block:65px 82px}
.case-hero h1,.case-article-heading h1{font-family:var(--serif);font-size:clamp(3.3rem,6vw,6rem);font-weight:400;line-height:1.04;letter-spacing:-.04em;color:var(--forest-2);margin:24px 0 18px;overflow-wrap:anywhere}
.case-companion{font-size:.95rem;color:var(--bronze);margin:0 0 27px;letter-spacing:.03em}
.case-description{font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.8;color:var(--muted);max-width:710px;margin:0}
.case-art{position:relative;aspect-ratio:1/1.07;background:linear-gradient(145deg,#f8e3e9,#eab8c6);border-radius:160px 160px 4px 4px;overflow:hidden;isolation:isolate}
.case-art:before{content:"";position:absolute;inset:12%;border:1px solid rgba(125,47,76,.25);border-radius:150px 150px 0 0}
.case-folio{position:absolute;inset:24% 20% 12%;background:#fffafb;transform:rotate(-8deg);box-shadow:14px 15px 0 #c68399,25px 27px 0 #7d2f4c;display:flex;flex-direction:column;align-items:center;gap:16px;padding:25% 17% 0}
.case-folio img{width:40px;height:40px;opacity:.8}
.case-folio i{height:1px;width:100%;background:#dfb7c5;display:block}
.case-folio i:last-child{width:65%;align-self:flex-start}
.case-collection{padding-block:45px 70px;border-top:1px solid var(--line)}
.case-section-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}
.case-section-top h2,.case-inside h2{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,2.7vw,2.6rem);color:var(--forest-2);line-height:1.25}
.case-empty{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:30px;padding:clamp(28px,4vw,50px);background:var(--ivory);border:1px solid var(--line);border-inline-start:3px solid var(--bronze)}
.case-empty-icon{width:54px;height:64px;border:1px solid #c88fa3;border-radius:4px;position:relative;background:var(--paper)}
.case-empty-icon:after{content:"";position:absolute;inset:19px 12px;background:repeating-linear-gradient(to bottom,#d7a4b5 0px,#d7a4b5 1px,transparent 1px,transparent 9px)}
.case-empty h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,2.5vw,2.4rem);color:var(--forest-2);margin:0 0 13px;line-height:1.2}
.case-empty p{max-width:720px;color:var(--muted);margin:0;line-height:1.8}
.case-inside{padding-block:0 85px}
.case-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:36px}
.case-pillar{border-top:1px solid var(--line);padding-top:24px}
.case-number{display:block;font-size:.7rem;color:var(--bronze);letter-spacing:.1em;margin-bottom:22px}
.case-pillar h3{font-size:1rem;color:var(--forest-2);margin:0 0 9px}
.case-pillar p{font-size:.9rem;color:var(--muted);margin:0}
.case-contact{background:var(--stone);padding:50px clamp(24px,4vw,54px);display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:85px}
.case-contact>div{max-width:740px;min-width:0}
.case-contact h2{font-family:var(--serif);font-size:clamp(1.7rem,2.7vw,2.6rem);font-weight:400;color:var(--forest-2);line-height:1.2;margin:0 0 15px}
.case-contact p{font-size:.95rem;color:var(--muted);margin:0}
.case-contact .button{flex-shrink:0;max-width:100%;text-align:center;min-height:54px;padding-block:14px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.case-card{border-bottom:1px solid var(--line);padding-bottom:30px}
.case-card img{aspect-ratio:16/10;object-fit:cover;margin-bottom:24px}
.case-card time,.case-date{font-size:.78rem;color:var(--muted)}
.case-card h3{font-family:var(--serif);font-weight:400;font-size:2rem;color:var(--forest-2);line-height:1.2;margin:13px 0}
.case-card p{color:var(--muted);line-height:1.75}
.case-card a:hover h3{text-decoration:underline;text-underline-offset:5px}
.case-article-heading{max-width:1000px;padding-block:55px 40px}
.case-article-image{margin:0 0 55px;max-width:1100px}
.case-article-image img{aspect-ratio:16/9;object-fit:cover}
.case-article-layout{display:grid;grid-template-columns:230px minmax(0,800px);gap:70px;padding-bottom:80px;align-items:start}
.case-toc{position:sticky;top:110px;border-top:1px solid var(--line);padding-top:20px;font-size:.83rem}
.case-toc strong{display:block;color:var(--forest-2);margin-bottom:15px}
.case-toc a{display:block;margin-block:10px;text-decoration:underline;text-underline-offset:4px}
.case-prose{font-size:1.03rem;line-height:1.85;color:var(--muted);overflow-wrap:anywhere}
.case-prose section{scroll-margin-top:110px;border-top:1px solid var(--line);padding-top:30px;margin-top:35px}
.case-prose h2{font-family:var(--serif);font-size:2.2rem;font-weight:400;color:var(--forest-2);line-height:1.25;margin:0 0 20px}
.case-prose ol{padding-inline-start:26px}
.case-prose li{padding-inline-start:8px;margin-block:18px}
.case-prose .case-outcome{background:var(--ivory);padding:30px;border-inline-start:3px solid var(--bronze)}
.case-note{font-size:.84rem;border-top:1px solid var(--line);padding-top:25px;margin-top:40px}
html[dir=rtl] .case-hero h1,html[dir=rtl] .case-article-heading h1{line-height:1.35;letter-spacing:0;font-size:clamp(2.9rem,5vw,5rem)}
html[dir=rtl] .case-empty h3,html[dir=rtl] .case-contact h2,html[dir=rtl] .case-prose h2{line-height:1.6}
html[dir=rtl] .case-companion{direction:ltr;text-align:right}
html[lang=zh-Hans] .case-hero h1{font-size:clamp(2.8rem,5vw,5rem)}
@media(min-width:1501px) and (max-width:1760px){.header-phone{display:none}.header-bar{gap:20px}.desktop-nav{gap:17px}.nav-link{font-size:.73rem}}
@media(max-width:900px){.case-hero{grid-template-columns:minmax(0,1fr) 240px;gap:35px}.case-hero h1{font-size:clamp(2.9rem,6.6vw,4.2rem)}.case-contact{align-items:flex-start;flex-direction:column}.case-article-layout{grid-template-columns:minmax(0,1fr);gap:25px}.case-toc{position:static;display:flex;flex-wrap:wrap;gap:7px 20px}.case-toc strong{flex-basis:100%;margin:0}.case-toc a{margin-block:5px}}
@media(max-width:650px){.case-breadcrumbs{padding-top:25px}.case-hero{grid-template-columns:minmax(0,1fr);padding-block:40px 50px}.case-art{display:none}.case-hero h1{font-size:clamp(3rem,12vw,4.2rem);margin-top:20px}.case-description{font-size:1rem}.case-empty{grid-template-columns:minmax(0,1fr);gap:24px}.case-empty-icon{width:38px;height:46px}.case-empty-icon:after{inset:12px 9px}.case-pillars,.case-grid{grid-template-columns:minmax(0,1fr);gap:28px}.case-number{margin-bottom:12px}.case-inside{padding-bottom:55px}.case-contact{margin-bottom:55px}.case-article-heading h1{font-size:clamp(2.4rem,10vw,3.8rem)}.case-article-heading{padding-top:35px}.case-article-image{margin-bottom:30px}.case-companion{margin-bottom:22px}}
