/* Company stories in the shared warm editorial system. */
body.portfolio .case-index-hero { padding-block:58px 50px; max-width:1280px; }
body.portfolio .case-index-hero h1 { font:400 clamp(55px,7.4vw,104px)/1.02 Georgia,serif; letter-spacing:-.055em; margin:23px 0 28px; }
body.portfolio .case-index-hero h1 em { color:var(--copper); font-weight:400; }
body.portfolio .case-lead { max-width:760px; font:400 clamp(21px,2.4vw,31px)/1.45 Georgia,serif; }
body.portfolio .case-intro-note { max-width:690px; font-size:13px; line-height:1.9; color:var(--muted); margin-top:18px; }
body.portfolio .case-index-list { padding-bottom:72px; }
body.portfolio .case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
body.portfolio .case-card-art { display:flex; align-items:center; padding:12px; border:1px solid var(--line); border-radius:8px; background:var(--mount); aspect-ratio:1.45; overflow:hidden; }
body.portfolio .case-card-art img { display:block; width:100%; height:100%; object-fit:contain; }
body.portfolio .case-card-meta,.case-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; color:var(--copper); font-size:10px; margin-top:19px; }
body.portfolio .case-card h2 { font:400 clamp(29px,2.8vw,38px)/1.2 Georgia,serif; letter-spacing:-.035em; margin:15px 0 12px; }
body.portfolio .case-card>p { font-size:12px; line-height:1.9; color:var(--muted); margin-bottom:20px; }
body.portfolio .case-pilots { border-top:1px solid var(--line); padding-block:55px 75px; }
body.portfolio .case-section-heading h2 { font:400 clamp(32px,4vw,49px)/1.14 Georgia,serif; letter-spacing:-.035em; margin:15px 0; }
body.portfolio .case-section-heading>p { max-width:700px; font-size:14px; line-height:1.9; color:var(--muted); }
body.portfolio .case-pilot-list { display:grid; grid-template-columns:1fr 1fr; gap:0 45px; margin-top:32px; }
body.portfolio .case-pilot-list>a { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line); padding:24px 0; }
body.portfolio .case-pilot-list h3 { font:400 28px/1.2 Georgia,serif; margin:0 0 8px; }
body.portfolio .case-pilot-list p { font-size:12px; color:var(--muted); line-height:1.7; }
body.portfolio .case-pilot-list>a>span { color:var(--copper); font-size:24px; }
body.portfolio .case-hero { padding-top:40px; }
body.portfolio .case-meta { justify-content:flex-start; gap:18px; margin:0 0 22px; }
body.portfolio .case-meta span:last-child { border-left:1px solid var(--line); padding-left:18px; color:var(--muted); }
body.portfolio .case-hero h1 { font:400 clamp(47px,6.5vw,92px)/1.06 Georgia,serif; letter-spacing:-.05em; max-width:1100px; }
body.portfolio .case-subtitle { max-width:850px; font:400 clamp(24px,3vw,38px)/1.35 Georgia,serif; color:var(--copper); margin-top:20px; }
body.portfolio .case-hero-intro { display:grid; grid-template-columns:1fr 1fr; gap:38px; margin-block:32px; }
body.portfolio .case-hero-intro p { font-size:14px; line-height:1.95; max-width:65ch; }
body.portfolio .case-passport { display:grid; grid-template-columns:.6fr 1.8fr 1fr; border-top:1px solid var(--line); padding-top:22px; gap:25px; margin:0 0 33px; }
body.portfolio .case-passport dt { color:var(--muted); font-size:10px; margin-bottom:8px; }
body.portfolio .case-passport dd { margin:0; font-size:13px; line-height:1.7; }
body.portfolio .case-hero-art { margin:0 0 65px; background:var(--mount); padding:25px; border:1px solid var(--line); border-radius:9px; }
body.portfolio .case-hero-art img { width:100%; max-height:560px; object-fit:contain; display:block; }
body.portfolio .case-hero-art figcaption,.case-figure figcaption { font-size:10px; line-height:1.7; color:var(--muted); margin-top:15px; }
body.portfolio .case-layout { display:grid; grid-template-columns:215px minmax(0,1fr); gap:65px; }
body.portfolio .case-outline { position:sticky; top:calc(var(--header-height,92px) + 25px); display:grid; gap:0; max-height:calc(100vh - 150px); overflow:auto; padding-bottom:20px; }
body.portfolio .case-outline>.eyebrow { margin-bottom:17px; }
body.portfolio .case-outline a { padding:10px 0; border-bottom:1px solid var(--line); font-size:11px; line-height:1.65; }
body.portfolio .case-outline a:hover { color:var(--copper); }
body.portfolio .case-chapter { border-top:1px solid var(--line); padding:30px 0 52px; scroll-margin-top:130px; }
body.portfolio .case-step { font:12px/1.4 Manrope,Arial,sans-serif; color:var(--copper); }
body.portfolio .case-chapter h2 { font:400 clamp(30px,3.3vw,44px)/1.18 Georgia,serif; letter-spacing:-.03em; margin:17px 0 24px; max-width:850px; }
body.portfolio .case-copy>p { font-size:14px; line-height:1.95; max-width:72ch; margin-bottom:19px; }
body.portfolio .case-figure { margin:30px 0; padding:20px; background:var(--mount); border:1px solid var(--line); border-radius:7px; }
body.portfolio .case-figure img { display:block; width:100%; max-height:700px; object-fit:contain; }
body.portfolio .case-palette { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:30px 0; }
body.portfolio .case-palette>div { min-width:0; }
body.portfolio .case-palette dt { margin:0; font-size:11px; line-height:1.8; }
body.portfolio .case-palette dt>span { display:block; background:var(--swatch); height:58px; border:1px solid #29251f20; border-radius:4px; margin-bottom:8px; }
body.portfolio .case-palette dd { color:var(--muted); font-size:10px; margin:5px 0 0; }
body.portfolio .case-site-preview { margin-top:30px; }
body.portfolio .case-site-preview .browser-art-screen { aspect-ratio:16/10; }
body.portfolio .case-preview-caption { color:var(--muted); font-size:11px; line-height:1.9; margin-top:14px; }
body.portfolio .case-preview-caption a { color:var(--copper); }
body.portfolio .case-outcome { display:grid; grid-template-columns:1fr 1fr; gap:30px; margin-bottom:28px; }
body.portfolio .case-chapter h3 { font:500 15px/1.5 Manrope,Arial,sans-serif; margin:20px 0 14px; }
body.portfolio .case-outcome ul,.case-measurements { padding-left:18px; margin:0; }
body.portfolio .case-outcome li,.case-measurements li { font-size:13px; line-height:1.9; margin-bottom:8px; }
body.portfolio .case-result-note { border-left:2px solid var(--copper); background:var(--mount); padding:20px 24px; }
body.portfolio .case-result-note p { font-size:13px; line-height:1.9; }
body.portfolio .case-materials { padding-block:35px 70px; scroll-margin-top:130px; }
body.portfolio .case-material-grid { display:grid; grid-template-columns:1fr 1fr; border-left:1px solid var(--line); border-top:1px solid var(--line); margin-top:30px; }
body.portfolio .case-material { display:block; border-right:1px solid var(--line); border-bottom:1px solid var(--line); padding:29px; }
body.portfolio .case-material:hover { background:var(--mount); }
body.portfolio .case-material h3 { font:400 29px/1.2 Georgia,serif; margin:15px 0; }
body.portfolio .case-material p { font-size:12px; line-height:1.8; color:var(--muted); }
body.portfolio .case-material-action { display:block; font-size:11px; margin-top:20px; color:var(--copper); }
body.portfolio .case-journey { display:flex; justify-content:space-between; align-items:center; gap:35px; padding-block:30px; border-block:1px solid var(--line); margin-block:35px 60px; }
body.portfolio .case-journey h2 { font:400 31px/1.2 Georgia,serif; margin:13px 0; }
body.portfolio .case-journey p { max-width:740px; font-size:12px; color:var(--muted); line-height:1.9; }
body.portfolio .case-journey>a { white-space:nowrap; }
body.portfolio .case-pilot-story { display:grid; grid-template-columns:.7fr 1.3fr; gap:7%; border-top:1px solid var(--line); padding-block:45px 60px; scroll-margin-top:130px; }
body.portfolio .case-pilot-story h2 { font:400 39px/1.18 Georgia,serif; margin:16px 0; }
body.portfolio .case-pilot-story h3 { font:400 27px/1.3 Georgia,serif; margin:0 0 18px; }
body.portfolio .case-pilot-story h3:not(:first-child) { margin-top:30px; }
body.portfolio .ei-case-link { display:inline-block; font-size:11px; color:var(--copper); margin-top:22px; border-bottom:1px solid currentColor; padding-bottom:5px; }
@media(max-width:1000px){body.portfolio .case-grid{grid-template-columns:1fr}body.portfolio .case-card{display:grid;grid-template-columns:.9fr 1.1fr;column-gap:28px;padding-bottom:35px;border-bottom:1px solid var(--line)}body.portfolio .case-card-art{grid-row:1/5}body.portfolio .case-card-meta{margin-top:0}body.portfolio .case-layout{grid-template-columns:1fr;gap:25px}body.portfolio .case-outline{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:8px 20px;padding-bottom:15px}body.portfolio .case-outline>.eyebrow{width:100%;margin:0}body.portfolio .case-outline a{padding:7px 0;font-size:10px}body.portfolio .case-hero-art{margin-bottom:35px}}
@media(max-width:700px){body.portfolio .case-index-hero{padding-top:35px}body.portfolio .case-index-hero h1{font-size:57px}body.portfolio .case-card{display:block;padding-bottom:30px}body.portfolio .case-card-meta{margin-top:18px}body.portfolio .case-pilot-list,body.portfolio .case-hero-intro,body.portfolio .case-outcome,body.portfolio .case-material-grid,body.portfolio .case-pilot-story{grid-template-columns:1fr}body.portfolio .case-hero-intro{gap:18px;margin-block:25px}body.portfolio .case-passport{grid-template-columns:1fr;gap:15px}body.portfolio .case-passport>div{display:grid;grid-template-columns:90px 1fr;gap:15px}body.portfolio .case-hero-art{padding:12px}body.portfolio .case-chapter{padding-bottom:35px}body.portfolio .case-figure{padding:10px;margin-block:23px}body.portfolio .case-palette{grid-template-columns:1fr 1fr;gap:18px}body.portfolio .case-material{padding:22px}body.portfolio .case-journey{display:block;margin-bottom:40px}body.portfolio .case-journey>a{display:inline-block;margin-top:20px}body.portfolio .case-pilot-story{gap:20px}body.portfolio .case-pilot-story h2{font-size:32px}body.portfolio .case-copy>p{font-size:13px}}
