/* Shared type roles. The approved Work archive is the reference. */
:root{
  --type-display:clamp(80px,10vw,150px);
  --type-section:clamp(32px,4.15vw,64px);
  --type-card:25px;
  --type-lead:20px;
  --type-body:16px;
  --type-label:16px;
  --type-meta:15px;
  --type-tag:13px;
  --type-control:16px;
  --type-count:14px;
  --type-nav:17px;
  --leading-body:1.55;
  --leading-heading:1.15;
  --tracking-heading:-.035em;
}
body{font-size:var(--type-body);line-height:var(--leading-body);font-weight:400;letter-spacing:0}

/* Page display titles share the archive's family, weight and tracking.
   Long page names use a smaller responsive ceiling on narrow screens. */
.hero h1,.page-hero h1,.works-hero h1,.case-title h1,.form-layout h1{
  font-family:'Barlow Condensed',sans-serif;font-size:var(--type-display);
  font-weight:500;line-height:1.05;letter-spacing:-.02em;text-transform:uppercase;
}
.page-hero h1 em,.form-layout h1 em{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;font-style:normal;color:var(--accent-text)}
[data-theme=light] .page-hero h1 em,[data-theme=light] .form-layout h1 em{color:var(--text)}
.form-layout h1{font-size:var(--type-section)}
.case-title h1{min-width:0}
.hero h1{line-height:1.05}

/* Section titles; card names follow the archive's project captions. */
h2,.intro h2,.method h2,.cta h2,.projects h2,.home-selection .section-top h2,
.people h2,.competencies h2,.application h2,.career-card h2,.dialog-body h2{
  font-family:Manrope,Arial,sans-serif;font-size:var(--type-section);font-weight:500;
  line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);
}
h3,.work-caption h3,.person h3,.competency h3,.project-copy h3,
.case-next strong,.values summary,legend,.form-panel h2,#application-review h3{
  font-family:Manrope,Arial,sans-serif;font-size:var(--type-card);font-weight:500;
  line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);
}
.person h3{overflow-wrap:normal}
.sector-name{font-size:var(--type-section);font-weight:500;line-height:var(--leading-heading);letter-spacing:var(--tracking-heading)}
/* Narrative quotations remain a distinct editorial role. */
.case-intro h2,.spotlight-card.is-current strong{
  font-family:Georgia,serif;font-size:clamp(30px,3.2vw,48px);font-weight:400;
  line-height:1.12;letter-spacing:var(--tracking-heading);
}
.spotlight-caption small,.spotlight-card.is-current small,
.spotlight-card:not(.is-current) .spotlight-caption small{
  font-family:Manrope,Arial,sans-serif;font-size:var(--type-card);font-weight:500;
  line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);
}

/* Introductions and reading text: shared line spacing and weight. */
.intro-copy,.page-hero .intro-copy,.prose,.hero-under,.hero-under p,
.sector-grid article>p,.works-hero>p:last-child,
.case-intro p,.case-text p,.dialog-body>p:not(.eyebrow),
.form-layout aside>p:not(.eyebrow){
  font-size:var(--type-lead);font-weight:400;line-height:var(--leading-body);letter-spacing:0;
}
.sector-grid article>p{max-width:100%;margin:20px 0 0;color:var(--text)}
.work-card>p,.case-intro dd,.dialog-facts dd,
.values details p,.competency>p:last-child,.career-card p,
.application>div>p:last-child,.team-list p,
.person>p:last-child,.team-list span,footer,
.field,.field input,.field textarea,.field select,pre{
  font-family:Manrope,Arial,sans-serif;font-size:var(--type-body);
  font-weight:400;line-height:var(--leading-body);letter-spacing:0;
}
.work-card>p{color:var(--muted)}

/* Uppercase section labels, secondary information and image categories. */
.eyebrow,.section-top>.eyebrow,.case-heading>.eyebrow,.dialog-body>.eyebrow,
.project-copy .eyebrow,.case-next .eyebrow,.hero-meta span:first-child,
.case-intro dt,.dialog-facts dt{
  font-size:var(--type-label);font-weight:600;line-height:1.45;
  letter-spacing:.12em;text-transform:uppercase;
}
.hero-meta{align-items:baseline;gap:18px}
.hero-meta span:first-child{max-width:none}
.hero-meta span:last-child{flex-shrink:0}
.hero-meta span:last-child,.section-top>.muted,.works-meta,
.work-caption>span,.case-title>span,.spotlight-position,.spotlight-hint,
.spotlight-number,.values .num,figcaption,.aside-note,.optional,
.form-note,.steps,footer small{
  font-size:var(--type-meta);font-weight:400;line-height:1.5;letter-spacing:0;
}
.work-caption>span,.case-title>span{flex-shrink:0;font-variant-numeric:tabular-nums;line-height:1.55}
.works-meta{padding:14px 0 27px}
.work-type,.spotlight-tag,.spotlight-card:not(.is-current) .spotlight-tag,.badge{
  font-size:var(--type-tag);font-weight:400;line-height:1.35;letter-spacing:0;
  padding:7px 12px;
}

/* Buttons and filters share the same scale; menu text is slightly larger. */
.pill,.filters .pill,.works-tools .pill,.hero-under .pill,
.form-actions .pill,.spotlight-play,.choice span,.text-link,.button-link,
.case-back,.case-next>a:first-child,.archive{
  font-size:var(--type-control);font-weight:400;line-height:1.35;letter-spacing:0;
}
.pill,.works-tools .pill{padding:12px 17px}
.works-tools .pill{gap:10px}
.filters span,.works-tools .pill span{font-size:var(--type-count);line-height:1.35;letter-spacing:0}
.header nav .pill,.header .menu{font-size:var(--type-nav);font-weight:400;line-height:1.35;letter-spacing:0;padding:12px 17px}
.work-search{max-width:340px;min-width:290px}
.work-search input{font-size:var(--type-body);font-weight:400;line-height:1.35;letter-spacing:0;height:48px}
.work-search>span:last-child{top:8px}
.spotlight-controls .spotlight-prev,.spotlight-controls .spotlight-next{font-size:21px}
.spotlight-controls .pill{padding:8px 14px}
.theme{padding:5px}

@media(max-width:1100px){
  :root{--type-lead:17px}
  .header nav .pill{padding:11px 13px}
  .sector-name{font-size:32px}
}
@media(max-width:1050px){:root{--type-card:23px}}
/* Collapse navigation before the larger labels become crowded. */
@media(min-width:801px) and (max-width:1000px){
  .header nav{display:none;position:absolute;top:94px;left:0;right:0;padding:24px;background:var(--bg);border-bottom:1px solid var(--line);align-items:stretch;flex-direction:column}
  .header nav.open{display:flex}
  .header .menu{display:flex}
}
@media(max-width:800px){
  :root{--type-section:36px;--type-nav:16px}
  .header nav .pill{font-size:17px;padding:14px 17px}
  .header .menu{padding:10px 14px}
  .sector-grid{grid-template-columns:1fr;gap:28px}
  .sector-photo{aspect-ratio:4/3}
  .sector-name{font-size:var(--type-section)}
  .sector-grid article>p{margin:18px 0 0}
  .hero-meta{flex-wrap:wrap;gap:8px 18px}
  .person h3{font-size:var(--type-card)}
}
@media(max-width:650px){
  :root{--type-display:clamp(72px,22vw,110px);--type-card:25px;--type-lead:16px;--type-label:14px;--type-meta:14px;--type-control:14px;--type-count:13px}
  .hero h1,.page-hero h1,.case-title h1,.form-layout h1{font-size:clamp(48px,14vw,78px)}
  .works-hero h1{font-size:var(--type-display)}
  .works-tools .pill{padding:11px 13px;gap:8px}
  .work-search{min-width:0}
  .work-caption>span,.case-title>span{font-size:15px}
  .spotlight-card:not(.is-current) .spotlight-caption small{font-size:16px;line-height:1.35;letter-spacing:0}
  .spotlight-card.is-current small{font-size:var(--type-card)}
  .spotlight-card.is-current strong{font-size:30px}
  .spotlight-card.is-current .spotlight-caption{align-items:flex-end;gap:12px}
  .spotlight-caption .round{flex-shrink:0}
  .people-grid{grid-template-columns:1fr}
  .person{min-height:0;padding:24px}
  .person h3{margin-top:26px}
  .team-list p{flex-direction:column;gap:5px}
  .team-list span{max-width:none;text-align:left}
  .career-card .pill{white-space:normal;text-align:left}
  .case-intro dl{grid-template-columns:1fr}
  .case-next{flex-direction:column;gap:28px}
  .case-next>a:last-child{max-width:100%;text-align:left}
  .hero-under{flex-wrap:wrap;gap:18px}
  .hero-under p{max-width:100%}
  .steps{flex-wrap:wrap;gap:12px}
  .steps span{flex:1 1 90px}
  .optional{float:none;margin-left:8px}
}
@media(max-width:360px){
  .header{padding-left:14px;padding-right:14px;gap:6px}
  .header .logo img{width:84px}
  .header .theme{width:64px;flex-shrink:0}
  .header .menu{padding-left:12px;padding-right:12px;gap:14px}
}

/* Studio title reveals the supplied crowd photograph. */
.page-hero .ink-heading em{
  font-family:Georgia,serif;font-size:.8em;font-style:italic;font-weight:400;
  text-transform:none;letter-spacing:-.045em;display:inline-block;vertical-align:top;max-width:100%;line-height:1.02;
}
.ink-heading,.culture-heading{position:relative;isolation:isolate;-webkit-text-stroke:.35px currentColor;--ink-radius:clamp(140px,14vw,210px)}
.ink-heading .ink-copy{
  position:absolute;inset:0;display:block;margin:0;padding:0;
  background:url('assets/studio-crowd.webp') center center / cover no-repeat;
  -webkit-background-clip:text;background-clip:text;
  color:transparent;-webkit-text-fill-color:transparent;
  pointer-events:none;user-select:none;
  filter:brightness(1.12);
  opacity:0;transition:opacity .22s ease;
  -webkit-mask-image:radial-gradient(circle var(--ink-radius) at var(--ink-x,-300px) var(--ink-y,-300px),#000 0%,rgba(0,0,0,.94) 20%,rgba(0,0,0,.68) 45%,rgba(0,0,0,.28) 70%,rgba(0,0,0,.06) 88%,transparent 100%);
  mask-image:radial-gradient(circle var(--ink-radius) at var(--ink-x,-300px) var(--ink-y,-300px),#000 0%,rgba(0,0,0,.94) 20%,rgba(0,0,0,.68) 45%,rgba(0,0,0,.28) 70%,rgba(0,0,0,.06) 88%,transparent 100%);
}
.page-hero .ink-heading .ink-copy em,
[data-theme=light] .page-hero .ink-heading .ink-copy em{color:transparent;-webkit-text-fill-color:transparent}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .ink-heading.is-ink-active .ink-copy{opacity:1}
}
@media(prefers-reduced-motion:reduce){.ink-heading .ink-copy{display:none;transition:none}}

/* Project stories: generous photographs retain their complete composition. */
.case-title h1{overflow-wrap:normal}
.case-shot{margin:0;min-width:0;border-radius:16px;overflow:hidden}
.case-photo{position:relative;display:block;width:100%;padding:0;border:0;background:none;color:inherit;cursor:default;text-align:left}
.case-photo img,.case-cover img{display:block;width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}
.case-intro{padding:48px 0 56px}
.case-intro .case-lead{font-size:var(--type-lead);line-height:var(--leading-body);letter-spacing:0;max-width:880px}
.case-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9%;padding:55px 0 65px;border-top:1px solid var(--line)}
.case-story h2{font-size:var(--type-section);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);font-weight:500;text-transform:none}
.case-story-copy{font-size:var(--type-lead);line-height:var(--leading-body);max-width:780px}
.case-story-copy p+p{margin-top:1.1em}
.case-gallery-row{display:grid;grid-template-columns:var(--photo-columns,1fr 1fr);gap:20px;align-items:start;margin-bottom:20px}
.case-gallery-single{display:block}
.case-gallery-portrait{max-width:740px;margin-left:auto;margin-right:auto}
.case-gallery-opening{margin-bottom:35px}
.photo-credit{font-size:var(--type-meta);color:var(--muted);margin:28px 0}
@media(max-width:800px){
 .case-story{grid-template-columns:1fr;gap:24px;padding:32px 0 40px}
 .case-intro{padding:32px 0 38px}
 .case-gallery-row{gap:12px;margin-bottom:12px}
 .case-shot{border-radius:12px}
}

/* Header logo: 20% larger at each existing responsive size. */
.header .logo img{width:138px}
@media(max-width:1100px){.header .logo img{width:114px}}
@media(max-width:360px){.header .logo img{width:100.8px}}

/* Studio opening photograph: preserve the supplied full composition. */
.studio-photo img{max-height:none;height:auto;object-fit:contain}

/* The approved sixteen-style animation keeps its full illustrated composition.
   Its letter baseline aligns with the surrounding heading at every type size. */
.hero .culture-heading>.culture-art,
[data-theme=light] .hero .culture-heading>.culture-art{
  display:inline-block;width:3.75em;max-width:100%;padding:0;
  vertical-align:-.335em;line-height:0;background:var(--accent);
  -webkit-text-stroke:0;isolation:isolate;
}
.culture-art picture,.culture-art img{display:block;width:100%;height:auto}
.culture-art picture{aspect-ratio:1160/450}

/* Partner portrait placeholders: shared editorial black-and-white framing. */
.person{padding:0 0 25px;overflow:hidden}
.person>.eyebrow,.person>h3,.person>p:last-child{margin-left:25px;margin-right:25px}
.partner-portrait{position:relative;margin:0 0 24px}
.partner-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1)}
.partner-portrait figcaption{position:absolute;left:12px;bottom:12px;margin:0;padding:4px 8px;border-radius:4px;background:#181818d9;color:#fff;font:11px/1.4 Manrope,sans-serif;letter-spacing:.02em}
.person h3{margin-top:16px}
@media(max-width:650px){.person{padding:0 0 24px}.partner-portrait img{aspect-ratio:4/5}.person h3{margin-top:16px}}

@media(max-width:600px){.case-gallery-row{display:block}.case-gallery-row .case-shot+.case-shot{margin-top:12px}}

/* Application submit: separate the action from the explanatory note. */
.application .form-panel>button[type=submit]{display:flex;width:fit-content;max-width:100%;margin:24px 0 0 auto;white-space:normal;text-align:center}
@media(max-width:650px){.application .form-panel>button[type=submit]{width:100%;justify-content:center}}

/* Keep illustration height out of the three headline line boxes. */
.hero .culture-heading>.hero-line{display:flex;flex-wrap:wrap;align-items:flex-start;column-gap:.15em;line-height:1.05}
.hero .culture-heading>.hero-line-final{padding-bottom:.3em}
.hero .culture-heading .culture-art,
[data-theme=light] .hero .culture-heading .culture-art{position:relative;display:block;flex:0 0 3.75em;width:3.75em;max-width:100%;height:1.05em;padding:0;line-height:0;background:none;-webkit-text-stroke:0}
.hero .culture-art picture{position:absolute;top:-.21em;left:0;width:100%;height:auto}
@media(max-width:650px){.hero .culture-heading .culture-art{margin-top:.2em}}

/* Dedicated service pages and contextual project navigation */
a.sector-photo{display:block;text-decoration:none;color:inherit}
.service-hero h1{max-width:1100px}.service-photo img{width:100%;height:auto;display:block}.service-photo figcaption{padding-top:12px;color:var(--muted)}
.service-offer{padding-left:1.2em;margin:0}.service-offer li{margin-bottom:1em}
.case-service-links,.service-related{padding:24px 0 48px}.case-service-links,.service-related>div{display:flex;flex-wrap:wrap;gap:12px}.service-related{margin:0 3vw}.service-related .eyebrow{margin-bottom:20px}
@media(max-width:650px){.service-hero h1{font-size:clamp(48px,12vw,78px);overflow-wrap:normal}.service-related>div{align-items:flex-start;flex-direction:column}.case-service-links .pill,.service-related .pill{white-space:normal}}

/* Archive grid/list switch. The same links support both views and filters. */
.work-list-category,.work-list-arrow,.work-list-head{display:none}
.work-view-switch{display:flex;gap:6px}.work-view-switch .pill{font-size:13px;padding:9px 15px;gap:8px}.works-meta{align-items:center;gap:16px}
.works-index[data-view=list] .work-grid{display:block}
.works-index[data-view=list] .work-list-head,.works-index[data-view=list] .work-card{display:grid;grid-template-columns:minmax(0,2.5fr) 100px minmax(0,1.5fr) 24px;gap:24px;align-items:center}
.works-index[data-view=list] .work-list-head{padding:15px 0;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line)}
.works-index[data-view=list] .work-card{position:relative;min-height:108px;padding:25px 0;border-bottom:1px solid var(--line)}
.works-index[data-view=list] .work-caption{display:contents}
.works-index[data-view=list] .work-caption h3{grid-column:1;grid-row:1;font-family:Manrope,sans-serif;font-size:clamp(18px,1.8vw,25px);line-height:1.3;letter-spacing:-.035em;transition:color .18s}
.works-index[data-view=list] .work-caption>span{grid-column:2;grid-row:1;font-size:13px}
.works-index[data-view=list] .work-list-category{display:block;grid-column:3;grid-row:1;font-size:13px;color:var(--muted)}
.works-index[data-view=list] .work-card>p{grid-column:4;grid-row:1;margin:0;font-size:13px}
.works-index[data-view=list] .work-list-arrow{display:block;grid-column:4;grid-row:1;font-size:22px}
.works-index[data-view=list] .work-image{display:none}
.works-index[data-view=list] .work-card:is(:hover,:focus-visible) h3,.works-index[data-view=list] .work-card:is(:hover,:focus-visible) .work-list-arrow{color:var(--accent-text)}
[data-theme=light] .works-index[data-view=list] .work-card:is(:hover,:focus-visible) h3{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:5px;text-underline-offset:6px}
.work-hover-preview{position:fixed;top:0;left:0;width:min(300px,32vw);z-index:90;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;filter:drop-shadow(0 12px 24px #0006)}
.work-hover-preview.is-visible{opacity:1;visibility:visible}.work-hover-preview img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:12px;border:1px solid #ffffff35}
@media(max-width:800px),(hover:none),(pointer:coarse){
 .work-hover-preview{display:none!important}.works-index[data-view=list] .work-list-head{display:none}
 .works-index[data-view=list] .work-card{grid-template-columns:90px minmax(0,1fr) 22px;gap:6px 15px;padding:20px 0;min-height:120px}
 .works-index[data-view=list] .work-image{display:block;grid-column:1;grid-row:1/5;width:90px;aspect-ratio:1.1;border-radius:8px}.works-index[data-view=list] .work-image .work-type,.works-index[data-view=list] .work-image .round{display:none}
 .works-index[data-view=list] .work-caption h3{grid-column:2;grid-row:1;font-size:18px}.works-index[data-view=list] .work-caption>span{grid-column:2;grid-row:4;font-size:11px}
 .works-index[data-view=list] .work-list-category{grid-column:2;grid-row:2;font-size:11px}.works-index[data-view=list] .work-card>p{grid-column:2;grid-row:3;font-size:11px}.works-index[data-view=list] .work-list-arrow{grid-column:3;grid-row:1/5}
}
@media(prefers-reduced-motion:reduce){.work-hover-preview,.works-index[data-view=list] h3{transition:none}}

.work-view-switch .pill.active{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.works-meta #works-count{white-space:nowrap}

/* Readable secondary information in the archive list. */
.works-index[data-view=list] .work-caption>span,.works-index[data-view=list] .work-list-category,.works-index[data-view=list] .work-card>p{font-size:15px;line-height:1.5}
.works-index[data-view=list] .work-list-head{font-size:14px}
@media(max-width:800px),(hover:none),(pointer:coarse){.works-index[data-view=list] .work-caption>span,.works-index[data-view=list] .work-list-category,.works-index[data-view=list] .work-card>p{font-size:13px;line-height:1.45}}
/* Official ADI artwork is kept complete, with its original generous clear space. */
.recognition{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0;margin:20px 0 50px}
.recognition-adi{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);gap:30px;align-items:center}
.adi-logo img{width:100%;height:auto;max-width:420px}.adi-positive{display:none!important}[data-theme=light] .adi-negative{display:none}[data-theme=light] .adi-positive{display:block!important}
.recognition-copy h2{font-size:clamp(28px,3vw,42px);margin:15px 0 20px}.recognition-copy ul{list-style:none;padding:0;margin:0 0 18px}.recognition-copy li{font-size:20px;line-height:1.5;margin:8px 0}.recognition-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:680px}.recognition-source{display:inline-block;margin-top:22px;text-decoration:underline;text-underline-offset:5px;font-size:14px}.recognition-copy .pill{margin-top:24px}
@media(max-width:650px){.recognition-adi{grid-template-columns:1fr;gap:0}.adi-logo{max-width:350px}.recognition{padding:20px 0 30px}.recognition-copy li{font-size:17px}}

/* Archive location remains in project details; year sorting also works on touch. */
.works-index[data-view=list] .work-card>p{display:none}
.work-year-sort{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:10px 0;color:inherit;font:inherit;text-align:left;cursor:pointer;min-height:44px}
.work-year-sort:hover{color:var(--text)}
.work-year-sort:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:800px),(hover:none),(pointer:coarse){
 .works-index[data-view=list] .work-list-head{display:flex;justify-content:flex-end;padding:0}
 .works-index[data-view=list] .work-list-head>span{display:none}
 .works-index[data-view=list] .work-caption>span{grid-row:3}
 .works-index[data-view=list] .work-image,.works-index[data-view=list] .work-list-arrow{grid-row:1/4}
}

/* One recognition layout across all award schemes; ADI mark lives on the cover. */
.case-services{list-style:none;margin:0;padding:0}
.case-services li{margin:0 0 7px;line-height:1.5}
.case-photo .case-adi-badge{position:absolute;bottom:24px;right:24px;width:280px;background:none}
.case-photo .case-adi-badge img{display:block;width:100%;height:auto;min-height:0;object-fit:contain}
@media(max-width:650px){.case-photo .case-adi-badge{width:180px;bottom:12px;right:12px}}

.case-photo:has(.case-adi-badge)::after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.5));pointer-events:none}
.case-photo .case-adi-badge{z-index:1}

.studio-recognitions{padding:65px 0}
.studio-recognitions>h2{font-size:var(--type-section);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);margin:20px 0 40px}
.studio-award{display:grid;grid-template-columns:100px minmax(0,1fr);gap:30px;border-top:1px solid var(--line);padding:32px 0}
.studio-award h3{font-size:clamp(21px,2vw,26px);line-height:1.25;margin:0 0 10px;font-weight:500}
.studio-award-category{font-size:17px;line-height:1.5;margin-bottom:10px}
.studio-award .muted{font-size:15px;line-height:1.6;max-width:800px}
.studio-award .pill{margin-top:20px}
@media(max-width:650px){.studio-recognitions{padding:40px 0}.studio-award{grid-template-columns:1fr;gap:12px;padding:25px 0}.studio-award-category{font-size:16px}}

/* Compact project metadata keeps long credits from dominating the introduction. */
.case-intro{grid-template-columns:minmax(0,1fr) 300px;gap:7%;padding-bottom:36px}
.case-intro dl>div{padding:10px 0 12px}
.case-intro dt{font-size:11px;line-height:1.4;letter-spacing:.1em;margin-bottom:5px}
.case-intro dd{font-size:14px;line-height:1.5}
.case-services li{margin:0 0 2px;line-height:1.45}
.case-services li:last-child{margin-bottom:0}
@media(max-width:1050px){.case-intro{grid-template-columns:minmax(0,1fr) 260px;gap:5%}}
@media(max-width:650px){.case-intro{grid-template-columns:1fr;gap:24px;padding-bottom:28px}.case-intro dd{font-size:14px}.case-intro dl{grid-template-columns:1fr}}

/* Static Culture accent, shared by both themes. */
.hero .culture-heading .culture-static,[data-theme=light] .hero .culture-heading .culture-static{display:inline-block;background:var(--accent);color:var(--ink);padding:0 .06em;line-height:1.05;white-space:nowrap}

/* Original photographic portrait: framing only, no generated facial changes. */
.partner-portrait.portrait-luca img{object-position:44% center}
.partner-portrait.portrait-luca{aspect-ratio:4/5;overflow:hidden}
.partner-portrait.portrait-luca img{position:absolute;width:140%;max-width:none;height:140%;left:-20%;top:-5%;object-fit:cover;object-position:44% center}
