/* Larger photo layouts with room for surrounding copy and phone screens. */
html body .landing-scene-inset figure,
html body .landing-photo-detail { max-width:1056px; }
html body .landing-photo-comparison .hero-redesign-visual { max-width:1152px; }
html body .client-scene { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
html body .recent-work-card > img { aspect-ratio:3/2; object-fit:contain; }
.project-image-note { display:block; margin-bottom:.55rem; font-size:.75rem; color:#586174; font-weight:500; }
.recent-work-card .project-image-note { margin-bottom:0; }
html body .review-avatar { width:76.8px !important; height:76.8px !important; flex:0 0 76.8px !important; }
@media (min-width:901px) {
  html body main .container:has(img) { width:min(1416px, calc(100% - 40px)); }
  html body .hero-grid { grid-template-columns:minmax(0,1fr) minmax(0,1.06fr); }
  html body .tools-hero__grid { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:2.5rem; }
  html body .guided-tool-hero__grid { grid-template-columns:minmax(0,1fr) minmax(0,1.06fr); }
  html body .hero-card { width:100%; max-width:816px; }
  html body.variant-c .hero-grid { grid-template-columns:1fr; }
  html body.variant-c .hero-grid > .hero-card { width:min(912px,100%); max-width:912px; }
  html body[data-nav-key="home"] .hero-redesign .hero-image-shell { width:min(672px,100%) !important; }
  html body .hero-redesign .hero-wrap { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr) !important; gap:2rem !important; }
  html body .recent-work-track { grid-auto-columns:calc((100% - 2.55rem) / 4 * 1.2); }
}
@media (min-width:681px) and (max-width:900px) {
  html body .recent-work-track { grid-auto-columns:calc((100% - .85rem) / 2 * 1.2); }
  html body .hero-card, html body .tools-hero__art, html body .guided-tool-hero__art { max-width:816px; width:100%; }
}
@media (max-width:680px) {
  html body .recent-work-track { grid-auto-columns:min(96vw,382px); }
  html body[data-nav-key="home"] .hero-redesign .hero-image-shell { width:min(98.4vw,384px,100%) !important; }
  html body main img { max-width:100%; }
}
/* The word opens the overview; the separate arrow opens the service list. */
.audience-nav-list > li.audience-menu { display:flex; align-items:center; }
html body .audience-menu > .audience-menu__link { padding-right:.2rem; }
html body .audience-menu > .audience-menu__toggle { min-width:28px; padding-inline:.45rem; }
html body .audience-menu__panel { width:min(640px,90vw) !important; grid-template-columns:repeat(2,minmax(0,1fr)); max-height:calc(100dvh - 115px); overflow-y:auto; overscroll-behavior:contain; }
html body .audience-menu__panel strong { grid-column:1/-1; }
html body .audience-menu__panel:not(.is-open) { opacity:0; visibility:hidden; pointer-events:none; }
html body .audience-menu__panel a:first-of-type { background:transparent; font-weight:800; }
html body .audience-menu__panel a:hover { background:#eef1ff; }
html body .mobile-audience-row { display:flex; align-items:center; justify-content:space-between; }
html body .mobile-audience-row > a { flex:1; }
html body .mobile-audience-row > button { min-width:48px; min-height:48px; }
html body .mobile-audience-group { border-bottom:1px solid #eceef7; }
html body .mobile-audience-group .audience-mobile-sub:not(.is-open) { display:none; }
html body .mobile-audience-group .audience-mobile-sub.is-open { display:grid; }
@media (prefers-reduced-motion:reduce) {
  .audience-menu__panel, .audience-menu__toggle::after { transition:none; }
}
/* The service return remains available at the bottom of desktop landing pages. */
@media(min-width:1101px){html body.experience-ready .back-to-services.experience-return-help{display:flex!important;position:relative!important;inset:auto!important;transform:none!important;margin:24px auto!important}html body.experience-ready .back-to-services.experience-return-help:hover{transform:none!important}}
