/* Orca Clean V38 — Fourth Services-hero group and offline geographic locator.
   Base geo shapes embedded in SVG generated from bundled Basemap GSHHG coastlines/rivers. */
.service-page .services-cinematic-bottom { grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(14px,2.45vw,36px); }
.service-page .services-highlight-group li {font-size:clamp(.76rem,.87vw,.89rem);gap:9px;}
.service-page .services-highlight-group h2 {font-size:clamp(.83rem,1vw,.95rem);}
.service-page .services-highlight-projects h2 {color:#e3f3ff;}
.service-page .services-cinematic-hero { min-height:max(865px,100svh); }
.service-page .services-cinematic-layout { min-height:calc(max(865px,100svh) - 157px); }
/* Map is always visible. No remote tile endpoints, scripts or map-library CSS. */
.service-page .office-area-v37-map-shell {background:#eaf2f5;border:1px solid #d6e4ec;box-shadow:0 17px 52px rgba(24,61,86,.09);border-radius:12px;}
.service-page .office-area-v38-map-figure {position:relative;display:flex;flex-direction:column;margin:0; width:100%;background:#eaf2f5;}
.service-page .office-area-v38-map-figure img {display:block;width:100%;height:auto;min-height:320px;aspect-ratio:1240 / 900;object-fit:cover;}
.service-page .office-area-v38-map-figure figcaption {display:flex;flex-wrap:wrap;align-items:center;column-gap:9px;row-gap:4px;padding:13px 16px;border-top:1px solid #d6e4ec;background:#f5f9fb;color:#516d80;line-height:1.5;font-size:.74rem;}
.service-page .office-area-v38-legend-dot {width:8px;height:8px;border:2px solid white;border-radius:50%;outline:2px solid #0a6c94;background:#0a6c94;flex-shrink:0;}
.service-page .office-area-v38-separator {color:#9db5c3;}
.service-page .office-area-v37-note .office-area-arrow {display:inline-block;line-height:1;transition:transform .2s ease;}
.service-page .office-area-v37-note a:hover .office-area-arrow,.service-page .office-area-v37-note a:focus-visible .office-area-arrow {transform:translate(2px,-2px);}
.service-page .office-area-v37-cities li {padding:7px 10px;}
@media (max-width:1200px) {
 .service-page .services-cinematic-bottom {grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 40px;}
 .service-page .services-highlight-group li {font-size:.88rem;}
 .service-page .services-cinematic-hero {min-height:max(910px,100svh)}
 .service-page .services-cinematic-layout {min-height:calc(max(910px,100svh) - 157px)}
}
@media (max-width:760px) {
 .service-page .services-cinematic-bottom {grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px;}
 .service-page .services-highlight-group:last-child {grid-column:auto;}
 .service-page .services-highlight-group:last-child ul {grid-template-columns:1fr;}
 .service-page .services-highlight-group h2{font-size:.81rem;}
 .service-page .services-highlight-group li{font-size:.74rem;align-items:flex-start;}
 .service-page .services-cinematic-hero {min-height:max(950px,100svh)}
 .service-page .services-cinematic-layout {min-height:calc(max(950px,100svh) - 139px)}
 .service-page .office-area-v38-map-figure img{min-height:0;}
 .service-page .office-area-v38-map-figure figcaption{font-size:.69rem;padding:10px 11px;}
}
@media (max-width:390px) {
 .service-page .services-cinematic-hero {min-height:max(1020px,100svh)}
 .service-page .services-cinematic-layout {min-height:calc(max(1020px,100svh) - 139px)}
 .service-page .services-highlight-group li{font-size:.71rem;gap:6px;}
}
@media (prefers-reduced-motion:reduce) {.service-page .office-area-v37-note .office-area-arrow{transition:none;}}


/* V39 refinements */
.service-page .services-highlight-projects ul {
  grid-template-columns:repeat(2,minmax(0,max-content));
  column-gap:22px;
  row-gap:10px;
  align-items:start;
}
.service-page .services-highlight-projects li:last-child {grid-column:1 / -1;}
.service-page .office-area-v37-map-shell {
  background:linear-gradient(180deg,#eef4f7 0%,#f8fbfd 100%);
  border-color:#d4e1e9;
  box-shadow:0 18px 56px rgba(19,55,80,.08);
}
.service-page .office-area-v38-map-figure {
  background:linear-gradient(180deg,#edf4f8 0%,#f7fafc 100%);
}
.service-page .office-area-v38-map-figure figcaption {
  background:#f8fbfd;
  color:#4e687a;
}
@media (max-width:760px) {
  .service-page .services-highlight-projects ul {grid-template-columns:1fr;}
  .service-page .services-highlight-projects li:last-child {grid-column:auto;}
}


/* V40 refinements */
.service-page .services-highlight-projects ul {
  grid-template-columns:max-content max-content;
  column-gap:14px;
  row-gap:10px;
  justify-content:start;
}
.service-page .services-highlight-projects li {
  white-space:nowrap;
}
.service-page .services-highlight-projects li:last-child {
  grid-column:1 / -1;
}
.service-page .services-highlight-projects li span {
  line-height:1.28;
}
.service-page .office-area-v37-note a:hover .office-area-arrow,
.service-page .office-area-v37-note a:focus-visible .office-area-arrow {
  transform:translate(2px,2px);
}
@media (max-width: 1024px){
  .service-page .services-cinematic-bottom {gap:clamp(12px,1.7vw,24px);}
  .service-page .services-highlight-projects ul {column-gap:12px;}
}
@media (max-width:760px) {
  .service-page .services-highlight-projects ul {grid-template-columns:1fr;}
  .service-page .services-highlight-projects li {white-space:normal;}
}


/* V42 map integration refinements */
.service-page .office-area-v37-map-shell {
  padding: 16px;
}
.service-page .office-area-v38-map-figure {
  background: #f5f8fb;
  border-radius: 22px;
  overflow: hidden;
}
.service-page .office-area-v38-map-figure img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  object-position: center;
}
.service-page .office-area-v38-map-figure figcaption {
  justify-content: flex-start;
  gap: 8px;
  min-height: 0;
}
.service-page .office-area-v38-separator {
  display: none;
}
@media (max-width: 760px) {
  .service-page .office-area-v37-map-shell {
    padding: 12px;
  }
}
