.offices-page { color:var(--ztc-text); background:var(--ztc-white); padding:48px 0 64px; }
.offices-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; padding-bottom:48px; }
.offices-hero .ztc-eyebrow { color:var(--ztc-action); }
.offices-hero h1 { font:600 var(--ztc-banner-h1-standard)/1.15 var(--ztc-serif); margin:24px 0; }
.offices-hero p { font-size:var(--ztc-fs-body); line-height:1.9; color:var(--ztc-text-muted); }
.offices-hero .offices-lead { font:600 var(--ztc-fs-h3)/1.5 var(--ztc-serif); color:var(--ztc-text); }
.offices-hero a { display:inline-flex; align-items:center; min-height:44px; gap:12px; color:var(--ztc-action); font-size:var(--ztc-fs-small); font-weight:600; }
.offices-layout { display:grid; gap:28px; }
.offices-city-index { display:flex; flex-wrap:wrap; column-gap:32px; border-top:1px solid var(--ztc-border); border-bottom:1px solid var(--ztc-border); padding:12px 0; }
.offices-city-index a { color:var(--ztc-action); display:inline-flex; align-items:center; gap:6px; min-height:44px; font-size:var(--ztc-fs-small); }
.offices-city-index small { color:var(--ztc-text-muted); font-size:var(--ztc-fs-label); }
.offices-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:64px; list-style:none; padding:0; margin:0; }
.office-card { border-top:1px solid var(--ztc-border); padding:28px 0; scroll-margin-top:108px; }
.office-card--hq { border-top:3px solid var(--ztc-brand-primary); }
.office-card header { display:flex; align-items:center; gap:16px; margin-bottom:14px; }
.office-card h3 { font:600 var(--ztc-fs-h3)/1.3 var(--ztc-serif); margin:0; }
.office-card header span { font-size:var(--ztc-fs-label); color:var(--ztc-text-muted); }
.office-card--hq header span { color:var(--ztc-action); background:var(--ztc-bg); padding:3px 10px; }
.office-card address { font:400 var(--ztc-fs-body)/1.9 var(--ztc-sans); color:var(--ztc-text-muted); user-select:text; overflow-wrap:anywhere; }
.office-actions { display:flex; gap:28px; margin-top:8px; }
.office-actions > * { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0; border:0; color:var(--ztc-action); background:transparent; font:600 var(--ztc-fs-small)/1.5 var(--ztc-sans); cursor:pointer; }
.office-actions > [hidden] { display:none; }
.office-status { min-height:24px; font-size:var(--ztc-fs-small); color:var(--ztc-action); }
.offices-page :is(a,button):focus-visible { outline:2px solid var(--ztc-action); outline-offset:4px; }
@media(max-width:991px) { .offices-hero { gap:32px; }.offices-list { column-gap:36px; } }
@media(max-width:767px) { .offices-page { padding:32px 0 40px; }.offices-hero { grid-template-columns:1fr; gap:20px; padding-bottom:32px; }.offices-hero h1 { margin:20px 0; }.offices-layout { gap:16px; }.offices-city-index { column-gap:24px; }.offices-list { grid-template-columns:1fr; }.office-card { padding:24px 0; } }
