/* ==========================================================================
   Horizon Global Solutions — theme stylesheet
   Palette: Platinum #E8E8E8 · Vampire Black #0A0A0A · Bright Maroon #C5234A · Raisin Black #212121
   Every class is prefixed hz- so nothing collides with WordPress core or plugins.
   ========================================================================== */

/* ── tokens + fonts ─────────────────────────────────────────────────────── */
@font-face{font-family:'Archivo';font-weight:500;font-display:swap;src:url(../fonts/archivo-500.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-weight:600;font-display:swap;src:url(../fonts/archivo-600.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-weight:700;font-display:swap;src:url(../fonts/archivo-700.woff2) format('woff2')}
@font-face{font-family:'Archivo';font-weight:800;font-display:swap;src:url(../fonts/archivo-800.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-weight:400;font-display:swap;src:url(../fonts/instrument-sans-400.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-weight:500;font-display:swap;src:url(../fonts/instrument-sans-500.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-weight:600;font-display:swap;src:url(../fonts/instrument-sans-600.woff2) format('woff2')}
@font-face{font-family:'Michroma';font-weight:400;font-display:swap;src:url(../fonts/michroma-400.woff2) format('woff2')}

:root{
  --hz-ink:#212121;--hz-ink-dark:#0A0A0A;--hz-paper:#FFFFFF;--hz-mist:#E8E8E8;--hz-mist-soft:#F4F4F4;
  --hz-line:#DEDEDE;--hz-sub:#5B5B5B;--hz-n400:#8A8A8A;
  --hz-accent:#C5234A;--hz-accent-2:#DF496D;--hz-accent-deep:#8A1834;
  --hz-dark-body:#C8C8C8;--hz-dark-sub:#A8A8A8;
  --hz-display:'Archivo','Noto Sans SC',system-ui,sans-serif;
  --hz-body:'Instrument Sans','Noto Sans SC',system-ui,sans-serif;
  --hz-util:'Michroma','Noto Sans SC',var(--hz-display);
  --hz-r-s:8px;--hz-r-m:14px;--hz-r-l:18px;--hz-r-panel:26px;--hz-r-pill:999px;
  --hz-e:cubic-bezier(.22,.61,.36,1);--hz-maxw:1220px;--hz-gut:22px;
  --hz-grain:url(../img/grain.webp);--hz-net:url(../img/network.webp);
  --hz-canvas-off:url(../img/offices.webp);--hz-canvas-off-v:url(../img/offices-tall.webp);
  --hz-canvas-svc:url(../img/services.webp);
}
html[lang^="zh"]{--hz-display:'Noto Sans SC','PingFang SC','Microsoft YaHei','Noto Sans CJK SC','Archivo',sans-serif;--hz-body:'Noto Sans SC','PingFang SC','Microsoft YaHei','Noto Sans CJK SC','Instrument Sans',sans-serif}
/* CJK: the tracked micro-labels set in the utility face are illegible in Chinese; give them body face, a larger size and light tracking */
html[lang^="zh"] .hz-eyebrow,html[lang^="zh"] .hz-facts .hz-k,html[lang^="zh"] .hz-hstat .hz-v,html[lang^="zh"] .hz-pill-n,html[lang^="zh"] .hz-step .hz-n,html[lang^="zh"] .hz-deliv b,
html[lang^="zh"] .hz-cv-lab,html[lang^="zh"] .hz-flow-lab,html[lang^="zh"] .hz-cv-note b,html[lang^="zh"] .hz-flow-note b,html[lang^="zh"] .hz-fl-gate .hz-g,html[lang^="zh"] .hz-track .hz-len,
html[lang^="zh"] .hz-tk i,html[lang^="zh"] .hz-cmp thead th,html[lang^="zh"] .hz-main .wp-block-table thead th,html[lang^="zh"] .hz-qc-item .hz-g,html[lang^="zh"] .hz-corr .hz-route,
html[lang^="zh"] .hz-mkt-h,html[lang^="zh"] .hz-clist li b,html[lang^="zh"] .hz-fcol .hz-fh,html[lang^="zh"] .hz-mapbtn{font-family:var(--hz-body);font-weight:600;letter-spacing:.08em;font-size:.8125rem}
html[lang^="zh"] .hz-hero h1{letter-spacing:0}html[lang^="zh"] h1,html[lang^="zh"] h2,html[lang^="zh"] h3,html[lang^="zh"] .hz-statement{letter-spacing:0}
html[lang^="zh"] .hz-mapbtn{font-size:.75rem}
html[lang^="zh"] h1,html[lang^="zh"] h2,html[lang^="zh"] h3{letter-spacing:0}

/* ── base ───────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;color-scheme:light;-webkit-tap-highlight-color:rgba(197,35,74,.14)}
body{margin:0;background:var(--hz-paper);color:var(--hz-sub);font-family:var(--hz-body);font-size:1rem;line-height:1.65;
     -webkit-font-smoothing:antialiased;overflow-x:hidden}
body.admin-bar .hz-header{top:32px}
@media(max-width:782px){body.admin-bar .hz-header{top:46px}}
[id]{scroll-margin-top:90px}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
a,button,summary,input,select,textarea{font-family:inherit;touch-action:manipulation}
:focus-visible{outline:2px solid var(--hz-accent);outline-offset:3px;border-radius:4px}
::selection{background:var(--hz-accent);color:#fff}
h1,h2,h3,h4,.hz-main h1,.hz-main h2,.hz-main h3,.hz-main h4{font-family:var(--hz-display);color:var(--hz-ink);font-weight:700;
  letter-spacing:-.02em;line-height:1.1;text-wrap:balance;margin:0}
h1,.hz-main h1{font-size:clamp(2.1rem,4.6vw,3.6rem)}
h2,.hz-main h2{font-size:clamp(1.6rem,3vw,2.5rem)}
h3,.hz-main h3{font-size:1.25rem;font-weight:600;letter-spacing:-.015em;line-height:1.3}
h4,.hz-main h4{font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;line-height:1.35}
p{margin:0;max-width:74ch}
.hz-main ul,.hz-main ol{margin:0;padding:0}
.hz-wrap{max-width:var(--hz-maxw);margin:0 auto;padding-left:max(var(--hz-gut),env(safe-area-inset-left));padding-right:max(var(--hz-gut),env(safe-area-inset-right))}
.hz-section{padding:clamp(56px,7vw,92px) 0}
.hz-section.hz-tight{padding-top:clamp(32px,4vw,52px)}
.hz-eyebrow{font-family:var(--hz-util);font-size:.625rem;letter-spacing:.22em;text-transform:uppercase;color:var(--hz-accent);margin:0}
.hz-lead{font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.6;color:var(--hz-sub)}
.hz-bg-mist{background:var(--hz-mist)}.hz-bg-soft{background:var(--hz-mist-soft)}
.hz-sm{font-size:.9375rem;line-height:1.65}.hz-tiny{font-size:.8125rem;line-height:1.6;color:var(--hz-sub)}
.hz-hl{color:var(--hz-accent);font-weight:600}
.hz-skip{position:absolute;left:-9999px;top:0;background:var(--hz-ink);color:#fff;padding:12px 20px;z-index:200;font-size:.875rem}
.hz-skip:focus{left:0}

/* ── WordPress block normalisation ──────────────────────────────────────── */
.hz-main .wp-block-group{margin-block:0}
.hz-main .wp-block-group.hz-shead{margin-bottom:clamp(32px,4vw,48px)}
.hz-main .wp-block-columns{margin:0;gap:18px;align-items:stretch}
.hz-main .wp-block-column{min-width:0}
.hz-main .wp-block-heading{margin:0}
.hz-main .wp-block-list{list-style:none;padding:0}
.hz-main .wp-block-buttons{gap:12px}
.hz-main .wp-block-button__link{border-radius:var(--hz-r-pill);padding:13px 24px;font-family:var(--hz-display);font-weight:600;font-size:.9375rem;
  background:var(--hz-accent);color:#fff;border:1px solid var(--hz-accent);line-height:1.2;min-height:48px;display:inline-flex;align-items:center}
.hz-main .wp-block-button__link:hover{background:var(--hz-accent-deep);border-color:var(--hz-accent-deep)}
.hz-main .is-style-outline .wp-block-button__link,.hz-main .hz-btn-light .wp-block-button__link{background:#fff;border-color:#fff;color:var(--hz-ink)}
.hz-main .is-style-outline .wp-block-button__link:hover,.hz-main .hz-btn-light .wp-block-button__link:hover{background:var(--hz-mist);border-color:var(--hz-mist)}
.hz-main .wp-block-table{margin:0}
.hz-main .wp-block-separator{border:none;border-top:1px solid var(--hz-line);margin:24px 0}
.hz-main .wp-block-details{margin:0}
.hz-main figure{margin:0}

/* ── buttons ────────────────────────────────────────────────────────────── */
.hz-btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:13px 24px;
  background:var(--hz-accent);color:#fff;border:1px solid var(--hz-accent);border-radius:var(--hz-r-pill);
  font-family:var(--hz-display);font-size:.9375rem;font-weight:600;letter-spacing:-.01em;cursor:pointer;
  transition:background .25s var(--hz-e),border-color .25s var(--hz-e)}
.hz-btn:hover{background:var(--hz-accent-deep);border-color:var(--hz-accent-deep)}
.hz-btn-sm{min-height:40px;padding:9px 18px;font-size:.875rem}
.hz-btn-light{background:#fff;border-color:#fff;color:var(--hz-ink)}
.hz-btn-light:hover{background:var(--hz-mist);border-color:var(--hz-mist)}
.hz-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--hz-accent);font-weight:600;font-size:.875rem;
  text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(197,35,74,.35)}
.hz-link::after{content:"›";font-size:1.05rem;line-height:1}
.hz-link:hover{color:var(--hz-accent-deep);text-decoration-color:var(--hz-accent-deep)}

/* ── header ─────────────────────────────────────────────────────────────── */
.hz-header{position:fixed;top:0;left:0;right:0;z-index:70;background:rgba(255,255,255,.92);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--hz-line);
  transition:box-shadow .3s var(--hz-e)}
.hz-header.hz-scrolled{box-shadow:0 8px 24px rgba(10,10,10,.06)}
.hz-nav{display:flex;align-items:center;gap:16px;max-width:var(--hz-maxw);margin:0 auto;min-height:68px;
  padding-left:max(var(--hz-gut),env(safe-area-inset-left));padding-right:max(var(--hz-gut),env(safe-area-inset-right))}
.hz-logo{display:inline-flex;flex-direction:column;gap:3px;line-height:1;min-height:48px;justify-content:center}
.hz-logo-m{font-family:var(--hz-util);font-size:.875rem;letter-spacing:.14em;color:var(--hz-ink)}
.hz-logo-s{display:flex;align-items:center;font-family:var(--hz-util);font-size:.5rem;letter-spacing:.16em;text-transform:uppercase;color:var(--hz-sub)}
.hz-logo-s .hz-b{width:7px;height:9px;margin-right:6px;
  background:linear-gradient(var(--hz-accent),var(--hz-accent)) 0 0/2px 100% no-repeat,linear-gradient(var(--hz-accent),var(--hz-accent)) 4px 0/2px 100% no-repeat}
.hz-menu{display:none;align-items:center;gap:2px;margin-left:auto}
.hz-menu ul,.hz-menu li,.hz-sheet ul,.hz-sheet li,.hz-fcol ul,.hz-fcol li{list-style:none;margin:0;padding:0}
.hz-menu ul{display:flex;align-items:center;gap:2px}
/* ── two-level navigation: mega-menu for Services, dropdown for Markets ─── */
.hz-mi{position:static}
.hz-mtop{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 12px;border:0;background:none;cursor:pointer;
  font-family:var(--hz-body);font-size:.9375rem;font-weight:500;color:var(--hz-ink);border-radius:var(--hz-r-s);position:relative;white-space:nowrap}
.hz-mtop:hover{color:var(--hz-accent)}
.hz-mtop::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--hz-accent);border-radius:2px;transform:scaleX(0);transform-origin:left center}
.hz-mi-on>.hz-mtop::after,.hz-mi.hz-open>.hz-mtop::after{transform:scaleX(1)}
.hz-chev{width:10px;height:6px;flex:none;transition:transform .25s var(--hz-e)}
.hz-mi.hz-open .hz-chev{transform:rotate(180deg)}
.hz-sub{display:none;position:absolute;left:0;right:0;top:100%;background:var(--hz-paper);border-top:1px solid var(--hz-line);
  box-shadow:0 24px 48px rgba(10,10,10,.10);z-index:60}
.hz-mi.hz-open>.hz-sub{display:block}
.hz-sub-in{max-width:var(--hz-maxw);margin:0 auto;padding:26px max(var(--hz-gut),22px) 28px;display:grid;gap:14px 24px;grid-template-columns:1fr;align-items:start}
.hz-sub-mega .hz-sub-in{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,min-content);grid-auto-flow:column;column-gap:34px}
.hz-sub-col{display:grid;gap:2px;align-content:start}
.hz-sub-col a{display:block;padding:7px 0;font-size:.875rem;color:var(--hz-sub);min-height:34px}
.hz-sub-col a:hover{color:var(--hz-accent)}
.hz-sub-col a.hz-sub-h{font-family:var(--hz-display);font-weight:600;font-size:.9375rem;color:var(--hz-ink);padding-bottom:4px}
.hz-sub-col a.hz-sub-h:hover{color:var(--hz-accent)}
.hz-sub-col a[aria-current]{color:var(--hz-accent);font-weight:600}
.hz-sub-flat a.hz-sub-h{font-family:var(--hz-body);font-weight:500;font-size:.9375rem;color:var(--hz-ink)}
.hz-sub-note{background:var(--hz-mist-soft);border-radius:var(--hz-r-m);padding:18px 20px;align-self:start}
.hz-sub-note .hz-eyebrow{margin-bottom:8px}
.hz-sub-note p{font-size:.875rem;margin-bottom:12px}
.hz-sub:not(.hz-sub-mega) .hz-sub-in{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 26px}
.hz-menu.hz-any-open .hz-mi:not(.hz-open) .hz-mtop{color:var(--hz-sub)}
.hz-scrim{position:fixed;inset:0;background:rgba(10,10,10,.28);opacity:0;pointer-events:none;transition:opacity .25s var(--hz-e);z-index:40}
.hz-scrim.hz-on{opacity:1;pointer-events:auto}
/* mobile sheet groups */
.hz-sheet-h{font-family:var(--hz-util);font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-sub);margin:22px 0 4px}
.hz-sheet a.hz-sheet-sub{padding-left:16px;font-size:.9375rem;font-weight:500;color:var(--hz-sub)}
.hz-sheet-in{padding-bottom:8px}
.hz-sheet-cta{margin-top:18px;width:100%}
/* WhatsApp float */
.hz-wa{position:fixed;right:16px;bottom:16px;z-index:55;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:12px 18px;
  border-radius:var(--hz-r-pill);background:var(--hz-ink-dark);color:#fff;font-family:var(--hz-display);font-weight:600;font-size:.875rem;
  box-shadow:0 10px 30px rgba(10,10,10,.22);transition:transform .25s var(--hz-e),background .25s}
.hz-wa:hover{background:var(--hz-accent);transform:translateY(-2px)}
.hz-wa svg{width:18px;height:18px;flex:none}
.hz-wa .hz-wa-t{display:none}
.hz-menu a{white-space:nowrap;position:relative;display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;font-size:.9375rem;font-weight:500;color:var(--hz-ink);border-radius:var(--hz-r-s)}
.hz-menu a:hover{color:var(--hz-accent)}
.hz-menu a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--hz-accent);border-radius:2px;transform:scaleX(0);transform-origin:left center}
.hz-menu a[aria-current]::after,.hz-menu .current-menu-item>a::after{transform:scaleX(1)}
.hz-langs{display:none;align-items:center;gap:2px;margin-left:8px;padding-left:10px;border-left:1px solid var(--hz-line)}
.hz-langs a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;padding:0 6px;border-radius:var(--hz-r-s);
  font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.12em;color:var(--hz-sub)}
.hz-langs a:hover{color:var(--hz-accent)}
.hz-langs a[aria-current]{color:var(--hz-ink);background:var(--hz-mist-soft)}
.hz-nav .hz-cta{margin-left:auto}
.hz-menu+.hz-langs+.hz-cta,.hz-menu+.hz-cta{margin-left:8px}
.hz-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;border:0;background:none;cursor:pointer;padding:0 12px}
.hz-burger span{width:22px;height:2px;background:var(--hz-ink);transition:transform .25s var(--hz-e),opacity .2s}
.hz-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hz-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.hz-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hz-sheet{position:fixed;inset:68px 0 auto 0;background:#fff;border-bottom:1px solid var(--hz-line);padding:8px var(--hz-gut) 20px;
  transform:translateY(-102%);visibility:hidden;transition:transform .35s var(--hz-e),visibility .35s var(--hz-e);z-index:69;overscroll-behavior:contain;
  max-height:calc(100vh - 68px);max-height:calc(100dvh - 68px);overflow-y:auto;-webkit-overflow-scrolling:touch}
body.admin-bar .hz-sheet{top:100px;max-height:calc(100dvh - 100px)}
.hz-sheet.hz-open{transform:none;visibility:visible}
.hz-sheet a{display:block;padding:13px 0;font-size:1.0625rem;font-weight:600;color:var(--hz-ink);border-bottom:1px solid var(--hz-line);min-height:52px}
.hz-sheet .hz-langs{display:flex;margin:12px 0 0;padding:0;border:0}
.hz-sheet .hz-langs a{border:1px solid var(--hz-line);padding:8px 14px;min-height:40px}
.hz-sheet .hz-btn{width:100%;margin-top:16px;color:#fff;border-bottom:none}
.hz-sheet .hz-btn{display:inline-flex}

/* ── hero ───────────────────────────────────────────────────────────────── */
.hz-hero{background:var(--hz-ink-dark);color:var(--hz-dark-body);padding:88px 0 clamp(48px,6vw,72px);position:relative;overflow:hidden}
.hz-hero .hz-eyebrow{color:var(--hz-accent-2)}
.hz-hero h1,.hz-hero .wp-block-heading{color:#fff;margin:18px 0 20px;max-width:20ch}
.hz-hero .hz-lead{color:var(--hz-dark-body);max-width:62ch}
.hz-crumb{font-size:.8125rem;color:var(--hz-dark-sub)}
.hz-crumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0;padding:0}
.hz-crumb a{color:var(--hz-dark-sub);min-height:24px;display:inline-flex;align-items:center}
.hz-crumb a:hover{color:#fff;text-decoration:underline}
.hz-crumb li[aria-current]{color:var(--hz-dark-body)}
.hz-crumb .hz-sep{opacity:.5}
.hz-crumb+.hz-eyebrow,.hz-crumb+.wp-block-group .hz-eyebrow{margin-top:26px}
.hz-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hz-hero .wp-block-buttons{margin-top:32px}
.hz-hero .wp-block-button__link{background:var(--hz-accent);color:#fff}
.hz-facts{display:grid;grid-template-columns:1fr;gap:1px;margin-top:clamp(40px,5vw,56px);background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);border-radius:var(--hz-r-m);overflow:hidden}
.hz-facts>div,.hz-facts>.wp-block-group{background:var(--hz-ink-dark);padding:20px 22px}
.hz-facts .hz-k{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-dark-sub)}
.hz-facts .hz-v{font-family:var(--hz-display);font-size:1.0625rem;font-weight:600;color:#fff;margin-top:7px;line-height:1.3}
/* homepage hero */
.hz-hero.hz-home-hero{padding-top:104px;padding-bottom:clamp(44px,5vw,72px)}
.hz-home-hero::before{content:"";position:absolute;inset:0;background:var(--hz-net) center/cover no-repeat;opacity:.34}
.hz-home-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,#0A0A0A 30%,rgba(10,10,10,.85) 55%,rgba(10,10,10,.45) 100%)}
.hz-home-hero .hz-wrap{position:relative;z-index:2}
.hz-home-hero h1{font-size:clamp(2.05rem,3.9vw,3.35rem);font-weight:800;letter-spacing:-.032em;line-height:1.06;max-width:24ch}
.hz-hstrip{display:grid;grid-template-columns:1fr;margin-top:clamp(40px,6vw,64px);border-top:1px solid rgba(255,255,255,.12)}
.hz-hstat{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.hz-hstat .hz-n{font-family:var(--hz-display);font-weight:700;font-size:1.75rem;letter-spacing:-.03em;color:#fff}
.hz-hstat .hz-v{font-family:var(--hz-util);font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:#8C8C8C;margin-top:9px}

/* ── section heads, grids, cards ────────────────────────────────────────── */
.hz-shead{max-width:780px;margin-bottom:clamp(32px,4vw,48px)}
.hz-shead .hz-eyebrow{display:block;margin-bottom:14px}
.hz-shead .hz-lead{margin-top:16px}
.hz-shead.hz-center{margin-left:auto;margin-right:auto;text-align:center}
.hz-shead.hz-center p{margin-left:auto;margin-right:auto}
.hz-grid{display:grid;grid-template-columns:1fr;gap:18px}
.hz-card{background:var(--hz-mist);border-radius:var(--hz-r-m);padding:26px 24px}
.hz-card h4,.hz-card .wp-block-heading{margin-bottom:8px}
.hz-card p{font-size:.9375rem;color:var(--hz-sub)}
.hz-card.hz-paper{background:var(--hz-paper);border:1px solid var(--hz-line)}
.hz-card .hz-tag{margin-top:18px;color:var(--hz-accent);font-weight:600;font-size:.875rem}
.hz-ico{width:38px;height:38px;border-radius:10px;background:rgba(197,35,74,.09);color:var(--hz-accent);display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px}
.hz-ico svg{width:20px;height:20px}
.hz-pillars{display:grid;grid-template-columns:1fr;gap:18px}
.hz-pill-card{background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:26px 24px;position:relative}
.hz-pill-n{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;color:var(--hz-accent);display:block;margin-bottom:12px}
.hz-pill-card h3{margin-bottom:10px}
.hz-pill-card>p{font-size:.9375rem;margin-bottom:14px}
.hz-pill-card ul{list-style:none;border-top:1px solid var(--hz-line);padding-top:12px;margin:0}
.hz-pill-card li{position:relative;padding-left:20px;margin:8px 0;font-size:.875rem;line-height:1.55}
.hz-pill-card li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:2px;background:var(--hz-accent)}
/* homepage service cards (bento) */
.hz-bento{display:grid;grid-template-columns:1fr;gap:16px}
.hz-bcard{position:relative;background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:var(--hz-r-l);padding:28px 26px;overflow:hidden;
  transition:transform .35s var(--hz-e),box-shadow .35s var(--hz-e)}
.hz-bcard:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(10,10,10,.09)}
.hz-bcard h3{margin:0 0 10px;font-size:1.375rem;font-weight:700}
.hz-bcard p{font-size:.9375rem}
.hz-bcard .hz-tag{margin-top:18px;color:var(--hz-accent);font-weight:600;font-size:.875rem;display:block}
.hz-bcard.hz-photo{background:var(--hz-ink-dark);color:var(--hz-dark-body);min-height:380px;display:flex;align-items:flex-end;border-color:transparent}
.hz-bcard.hz-photo .hz-ph{position:absolute;inset:0;background:var(--hz-canvas-svc) center/cover no-repeat;opacity:.9}
.hz-bcard.hz-photo .hz-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.1) 0%,rgba(10,10,10,.72) 55%,#0A0A0A 100%)}
.hz-bcard.hz-photo .hz-in{position:relative;z-index:2}
.hz-bcard.hz-photo h3{color:#fff}.hz-bcard.hz-photo p{color:var(--hz-dark-body)}
.hz-bcard.hz-photo .hz-link{color:var(--hz-accent-2)}
.hz-bcard.hz-photo .hz-ico{background:rgba(223,73,109,.18);color:var(--hz-accent-2)}
.hz-bcard.hz-dark{background:var(--hz-ink-dark);border-color:transparent;color:var(--hz-dark-body)}
.hz-bcard.hz-dark h3{color:#fff}.hz-bcard.hz-dark p{color:var(--hz-dark-body)}
.hz-bcard .hz-row{display:flex;flex-direction:column;gap:22px;align-items:flex-start}
.hz-bcard .hz-btn-inverse{background:#fff;color:var(--hz-ink);border-color:#fff}

/* ── steps, chain, gates, tracks, decide, compare, chips ────────────────── */
.hz-steps{display:grid;grid-template-columns:1fr;gap:26px}
.hz-step{border-top:2px solid var(--hz-accent);padding-top:18px}
.hz-step .hz-n{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;color:var(--hz-accent)}
.hz-step h4{margin:10px 0 8px}
.hz-step p{font-size:.9375rem}
.hz-deliv{margin-top:12px;padding-top:10px;border-top:1px solid var(--hz-line);font-size:.8125rem;color:var(--hz-sub)}
.hz-deliv b{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--hz-accent);display:block;margin-bottom:4px;font-weight:400}
.hz-chainviz{margin:0 0 clamp(34px,4vw,52px)}
.hz-cv-lab,.hz-flow-lab{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-sub);margin-bottom:12px}
.hz-cv-nodes{display:grid;grid-template-columns:1fr;gap:14px;position:relative;margin-bottom:22px}
.hz-cv-node{position:relative;padding-left:26px}
.hz-cv-dot{position:absolute;left:0;top:5px;width:11px;height:11px;border-radius:50%;background:var(--hz-accent);box-shadow:0 0 0 4px rgba(197,35,74,.14)}
.hz-cv-t{font-family:var(--hz-display);font-weight:700;font-size:.9375rem;color:var(--hz-ink);letter-spacing:-.01em}
.hz-cv-s{font-size:.8125rem;color:var(--hz-sub);margin-top:2px;line-height:1.45}
.hz-cv-segs{display:grid;grid-template-columns:1fr;gap:8px}
.hz-cv-seg{background:var(--hz-mist);border-radius:8px;padding:11px 13px;font-size:.75rem;color:var(--hz-sub);text-align:center;line-height:1.35;border:1px solid transparent}
.hz-cv-seg.hz-none{background:transparent;border:1px dashed var(--hz-line);color:#6A6A6A;font-style:italic}
.hz-cv-bar{background:var(--hz-ink-dark);color:#fff;border-radius:10px;padding:15px 18px;font-family:var(--hz-display);font-weight:600;font-size:.9375rem;text-align:center;position:relative;overflow:hidden}
.hz-cv-bar::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--hz-accent)}
.hz-cv-band+.hz-cv-band{margin-top:20px}
.hz-cv-note,.hz-flow-note{font-size:.8125rem;color:var(--hz-sub);margin-top:12px;display:flex;align-items:baseline;gap:9px;max-width:none}
.hz-cv-note b,.hz-flow-note b{color:var(--hz-accent);font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.16em;text-transform:uppercase;font-weight:400;flex:none}
.hz-flow{margin:34px 0 0}
.hz-flow-rail{display:grid;grid-template-columns:1fr;gap:10px;align-items:stretch}
.hz-fl-stage{background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:16px;text-align:center}
.hz-fl-stage p,.hz-fl-gate p,.hz-fl-end p{font-family:var(--hz-display);font-weight:600;font-size:.9375rem;color:var(--hz-ink);max-width:none}
.hz-fl-stage span,.hz-fl-end span{display:block;font-size:.75rem;color:var(--hz-sub);margin-top:4px;line-height:1.45}
.hz-fl-gate{background:var(--hz-paper);border:1px solid var(--hz-accent);border-radius:var(--hz-r-m);padding:16px 14px;text-align:center}
.hz-fl-gate .hz-g{font-family:var(--hz-util);font-size:.5rem;letter-spacing:.18em;text-transform:uppercase;color:var(--hz-accent);display:block;margin-bottom:6px}
.hz-fl-gate p{font-size:.875rem}
.hz-fl-end{background:var(--hz-ink-dark);border-radius:var(--hz-r-m);padding:16px 14px;text-align:center}
.hz-fl-end p{color:#fff;font-size:.875rem}.hz-fl-end span{color:var(--hz-dark-sub)}
.hz-tracks{display:grid;grid-template-columns:1fr;gap:20px}
.hz-track{border-radius:var(--hz-r-m);padding:22px 20px;border:1px solid var(--hz-line);background:var(--hz-paper)}
.hz-track.hz-on{border-color:var(--hz-accent);background:var(--hz-mist-soft)}
.hz-track h4{margin-bottom:4px}
.hz-track .hz-len{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.18em;text-transform:uppercase;color:var(--hz-sub);margin-bottom:16px;display:block}
.hz-track.hz-on .hz-len{color:var(--hz-accent)}
.hz-tk{display:flex;align-items:flex-start;gap:12px;padding:9px 0}
.hz-tk+.hz-tk{border-top:1px dashed var(--hz-line)}
.hz-tk i{flex:none;width:20px;height:20px;border-radius:50%;background:var(--hz-mist);color:var(--hz-sub);font-style:normal;font-family:var(--hz-util);font-size:.5rem;display:flex;align-items:center;justify-content:center;margin-top:2px}
.hz-track.hz-on .hz-tk i{background:var(--hz-accent);color:#fff}
.hz-tk p{font-size:.875rem;max-width:none}.hz-tk b{color:var(--hz-ink);font-weight:600}
.hz-decide{display:grid;grid-template-columns:1fr;border-top:1px solid var(--hz-line)}
.hz-dc-row{display:grid;grid-template-columns:1fr;gap:6px;padding:18px 0;border-bottom:1px solid var(--hz-line)}
.hz-dc-if{font-size:.9375rem;color:var(--hz-ink);max-width:none}
.hz-dc-then b{display:block;font-family:var(--hz-display);font-weight:600;color:var(--hz-accent);font-size:.9375rem}
.hz-dc-then span{display:block;font-size:.8125rem;color:var(--hz-sub);margin-top:2px}
.hz-cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.hz-cmp,.hz-main .wp-block-table table{width:100%;border-collapse:collapse;font-size:.9375rem;border:0}
.hz-cmp th,.hz-cmp td,.hz-main .wp-block-table td,.hz-main .wp-block-table th{text-align:left;padding:15px 16px;border:0;border-bottom:1px solid var(--hz-line);vertical-align:top}
.hz-cmp thead th,.hz-main .wp-block-table thead th{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-sub);border-bottom:1px solid #C9C9C9}
.hz-cmp tbody th{font-family:var(--hz-display);font-weight:600;color:var(--hz-ink);font-size:.9375rem;width:26%}
.hz-cmp td b,.hz-main .wp-block-table td strong{color:var(--hz-ink);font-weight:600}
.hz-ind{display:flex;flex-wrap:wrap;gap:10px}
.hz-ind span,.hz-ind li{border:1px solid var(--hz-line);border-radius:var(--hz-r-pill);padding:10px 18px;font-size:.9375rem;color:var(--hz-ink);background:var(--hz-paper);list-style:none}
.hz-qc{display:grid;grid-template-columns:1fr;gap:18px}
.hz-qc-item{background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:24px 22px}
.hz-qc-item .hz-g{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-accent);display:block;margin-bottom:10px}
.hz-qc-item h4{margin-bottom:8px}.hz-qc-item p{font-size:.9375rem}
.hz-qc-item .hz-out{margin-top:14px;padding-top:12px;border-top:1px solid var(--hz-line);font-size:.8125rem}
.hz-qc-item .hz-out b{color:var(--hz-ink);font-weight:600}

/* ── prose + aside ──────────────────────────────────────────────────────── */
.hz-split{display:grid;grid-template-columns:1fr;gap:34px}
.hz-prose h3{margin:30px 0 12px}
.hz-prose p{margin-bottom:14px}
.hz-prose ul{margin:0 0 18px;padding:0;list-style:none;max-width:74ch}
.hz-prose li{position:relative;padding-left:22px;margin-bottom:9px;font-size:.9375rem}
.hz-prose li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:2px;background:var(--hz-accent)}
.hz-prose b,.hz-prose strong{color:var(--hz-ink);font-weight:600}
.hz-aside{background:var(--hz-mist-soft);border-radius:var(--hz-r-m);padding:26px 24px;align-self:start}
.hz-aside h4{margin-bottom:12px}
.hz-aside ul{list-style:none;margin:0;padding:0}
.hz-aside li{padding:11px 0;border-top:1px solid var(--hz-line);font-size:.9375rem}
.hz-aside a{color:var(--hz-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--hz-accent);display:inline-flex;align-items:center;min-height:24px}
.hz-aside a:hover{color:var(--hz-accent)}
.hz-aside li:first-child{border-top:none}
.hz-aside .hz-src{margin-top:14px;font-size:.75rem;color:var(--hz-sub);line-height:1.6}
.hz-aside .hz-src a{color:var(--hz-sub);text-decoration:underline}

/* ── corridors panel + map ──────────────────────────────────────────────── */
.hz-panel{position:relative;background:var(--hz-ink-dark);border-radius:var(--hz-r-panel);padding:clamp(56px,8vw,100px) clamp(24px,5vw,60px);color:#fff;overflow:hidden}
.hz-panel h2{color:#fff}.hz-panel .hz-eyebrow{color:var(--hz-accent-2)}.hz-panel .hz-lead{color:var(--hz-dark-sub)}
.hz-panel .hz-grain{position:absolute;inset:0;background:var(--hz-grain);opacity:.35;mix-blend-mode:overlay;pointer-events:none}
.hz-panel>*{position:relative}
.hz-map{margin:4px auto clamp(28px,4vw,44px);max-width:1000px;position:relative}
.hz-map svg{width:100%;height:auto;display:block}
/* The three dot layers are one <path> each: zero-length subpaths drawn with a round
   linecap render exactly like circles, and turn 6,794 SVG nodes into 3. */
.hz-map .d-base{stroke:rgba(255,255,255,.10);stroke-width:3.1;stroke-linecap:round;fill:none}
.hz-map .d-cov{stroke:rgba(221,60,98,.6);stroke-width:4.1;stroke-linecap:round;fill:none}
.hz-map .d-hi{stroke:#DF496D;stroke-width:4.3;stroke-linecap:round;fill:none}
.hz-map .pin{fill:#fff}
.hz-map .mlabel{fill:#E8E8E8;font-size:13px;font-weight:600;font-family:var(--hz-body);letter-spacing:-.01em}
.hz-map .mleg{fill:#8A8A8A;font-size:11.5px;font-family:var(--hz-body)}
.hz-map .arc{fill:none;stroke:var(--hz-accent-2);stroke-width:1.35;opacity:.45;stroke-dasharray:3 6;stroke-linecap:round}
.hz-map .arc-run{fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;opacity:.9;stroke-dasharray:26 474;stroke-dashoffset:500}
@keyframes hz-corridor{from{stroke-dashoffset:500}to{stroke-dashoffset:0}}
@keyframes hz-pin{0%,100%{opacity:1}50%{opacity:.45}}
.hz-mapbar{display:flex;justify-content:center;margin:-6px 0 6px}
.hz-mapbtn{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:6px 14px;border-radius:var(--hz-r-pill);border:1px solid rgba(255,255,255,.22);
  background:transparent;color:var(--hz-dark-sub);cursor:pointer;font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.18em;text-transform:uppercase;transition:border-color .25s,color .25s}
.hz-mapbtn:hover{border-color:var(--hz-accent-2);color:#fff}
.hz-mapbtn .hz-ico-p{width:9px;height:9px;flex:none}
.hz-corr-grid{display:grid;grid-template-columns:1fr;gap:18px}
.hz-corr{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:var(--hz-r-m);padding:30px 28px;transition:background .35s var(--hz-e),transform .35s var(--hz-e)}
.hz-corr:hover{background:rgba(255,255,255,.09);transform:translateY(-4px)}
.hz-corr .hz-route{font-family:var(--hz-util);font-size:.6875rem;color:var(--hz-accent-2);text-transform:uppercase;letter-spacing:.2em}
.hz-corr h3{color:#fff;margin:12px 0 10px}
.hz-corr p{color:var(--hz-dark-body);font-size:.9375rem}
.hz-corr .hz-hubs{margin-top:16px;font-size:.8125rem;color:var(--hz-dark-sub)}
.hz-corr .hz-hubs b{color:#fff;font-weight:600}
.hz-adv{margin-top:clamp(28px,4vw,40px);font-size:clamp(1rem,1.4vw,1.125rem);color:var(--hz-dark-sub);max-width:70ch}
.hz-adv b{color:#fff;font-weight:600}
.hz-panel .hz-shead{max-width:820px}

/* ── offices, team, markets ─────────────────────────────────────────────── */
.hz-off-grid{display:grid;grid-template-columns:1fr;gap:18px}
.hz-off{background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:var(--hz-r-l);overflow:hidden}
.hz-off .hz-photo{position:relative;height:190px;background:var(--hz-canvas-off) no-repeat}
.hz-off-grid.hz-vflow .hz-photo{background-image:var(--hz-canvas-off-v)}
.hz-off .hz-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.15),rgba(10,10,10,.55))}
.hz-off .hz-badge{position:absolute;top:14px;right:14px;background:var(--hz-accent);color:#fff;font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;padding:6px 12px;border-radius:var(--hz-r-pill)}
.hz-off .hz-body{padding:22px 22px 26px}
.hz-off .hz-city{font-size:1.25rem;margin:0}
.hz-off .hz-reg{font-size:.75rem;color:var(--hz-accent);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin:6px 0 10px}
.hz-off p{font-size:.9375rem}
.hz-off .hz-tel{margin-top:10px;font-size:.875rem}.hz-off .hz-tel a{color:var(--hz-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--hz-accent);display:inline-flex;align-items:center;min-height:24px}
.hz-off.hz-more{display:flex;flex-direction:column;justify-content:center;padding:26px 22px;background:var(--hz-ink-dark);color:var(--hz-dark-body);border-color:transparent}
.hz-off.hz-more .hz-city{color:#fff}
.hz-tgroup+.hz-tgroup{margin-top:clamp(28px,4vw,44px)}
.hz-tgroup .hz-eyebrow{display:block;margin-bottom:16px}
.hz-tgrid{display:grid;grid-template-columns:1fr;gap:14px}
.hz-member{display:flex;gap:14px;align-items:flex-start;background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:18px}
.hz-avatar{flex:none;width:44px;height:44px;border-radius:50%;background:var(--hz-ink-dark);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--hz-util);font-size:.6875rem}
.hz-member .hz-nm{font-family:var(--hz-display);font-weight:600;color:var(--hz-ink);font-size:1rem}
.hz-member .hz-rl{font-size:.8125rem;color:var(--hz-accent);font-weight:600;margin:3px 0 6px}
.hz-member p{font-size:.875rem}
.hz-mkt{display:grid;grid-template-columns:1fr;gap:30px}
.hz-mkt-col{display:grid;gap:10px}
.hz-mkt-h{font-family:var(--hz-util);font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-sub);margin-bottom:4px}
.hz-mkt-col a,.hz-rel a{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);
  padding:18px 20px;min-height:64px;font-family:var(--hz-display);font-weight:600;color:var(--hz-ink);transition:border-color .25s var(--hz-e),color .25s var(--hz-e)}
.hz-mkt-col a:hover,.hz-rel a:hover{border-color:var(--hz-accent);color:var(--hz-accent)}
.hz-mkt-col a::after,.hz-rel a::after{content:"›";color:var(--hz-accent);font-size:1.15rem}
.hz-rel{display:grid;grid-template-columns:1fr;gap:12px}
.hz-sbody{max-width:72ch;font-size:clamp(1.0625rem,1.5vw,1.1875rem);margin:-10px auto 0;text-align:center}
.hz-tiny-top{margin-top:22px}
.hz-shead.hz-center .hz-sbody{margin-left:auto;margin-right:auto}
.hz-mkt-col ul,.hz-rel{display:grid;gap:10px;margin:0;padding:0}
.hz-bcard .hz-more{margin-top:14px}
.hz-statement{font-family:var(--hz-display);font-size:clamp(1.5rem,3.2vw,2.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;color:var(--hz-ink);max-width:26ch}

/* ── faq ────────────────────────────────────────────────────────────────── */
.hz-faq{max-width:900px;border-top:1px solid var(--hz-line)}
.hz-shead.hz-center+.hz-faq{margin:0 auto}
.hz-faq details,.hz-faq .wp-block-details{border-bottom:1px solid var(--hz-line)}
.hz-faq summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 0;
  font-family:var(--hz-display);font-weight:600;color:var(--hz-ink);font-size:1.0625rem;line-height:1.4;min-height:48px}
.hz-faq summary::-webkit-details-marker{display:none}
.hz-faq summary::after{content:"";flex:0 0 12px;width:12px;height:12px;margin-top:6px;border-right:2px solid var(--hz-accent);border-bottom:2px solid var(--hz-accent);transform:rotate(45deg);transition:transform .25s var(--hz-e)}
.hz-faq details[open] summary::after{transform:rotate(-135deg)}
.hz-faq details>*:not(summary){padding:0 0 20px;max-width:74ch;font-size:.9375rem}

/* ── cta panel, contact, form ───────────────────────────────────────────── */
.hz-cta-panel.hz-cta-light{background:var(--hz-mist-soft);border:1px solid var(--hz-line);color:var(--hz-sub)}
.hz-cta-panel.hz-cta-light h2,.hz-cta-panel.hz-cta-light .wp-block-heading{color:var(--hz-ink)}
.hz-cta-panel.hz-cta-light p{color:var(--hz-sub)}
.hz-cta-panel.hz-cta-light .wp-block-button__link{background:var(--hz-accent);border-color:var(--hz-accent);color:#fff}
.hz-cta-panel.hz-cta-light .wp-block-button__link:hover{background:var(--hz-accent-deep);border-color:var(--hz-accent-deep)}
.hz-cta-panel{background:var(--hz-ink-dark);border-radius:var(--hz-r-panel);padding:clamp(44px,6vw,72px) clamp(24px,4vw,56px);color:var(--hz-dark-body);text-align:center}
.hz-cta-panel h2,.hz-cta-panel .wp-block-heading{color:#fff;margin-bottom:16px}
.hz-cta-panel p{max-width:56ch;margin:0 auto 28px;color:var(--hz-dark-body)}
.hz-cta-panel .wp-block-buttons{justify-content:center}
.hz-contact{background:var(--hz-ink-dark);border-radius:var(--hz-r-panel);padding:clamp(48px,6vw,80px) clamp(24px,4.5vw,60px);color:var(--hz-dark-body);display:grid;grid-template-columns:1fr;gap:40px}
.hz-contact h2{color:#fff}.hz-contact .hz-eyebrow{color:var(--hz-accent-2)}.hz-contact .hz-lead{color:var(--hz-dark-sub)}
.hz-clist{list-style:none;margin:28px 0 0;padding:0}
.hz-clist li{padding:14px 0;border-top:1px solid rgba(255,255,255,.1);font-size:.9375rem;color:var(--hz-dark-body)}
.hz-clist-h{margin-top:28px;color:var(--hz-accent-2)}.hz-clist-tel{margin-top:10px}.hz-clist-tel li{padding:10px 0}
.hz-clist li b{color:#fff;font-family:var(--hz-util);font-weight:400;font-size:.625rem;letter-spacing:.14em;margin-right:12px;text-transform:uppercase}
.hz-clist li a{display:inline-flex;align-items:center;min-height:24px;color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--hz-accent-2)}
.hz-form{background:var(--hz-paper);border-radius:var(--hz-r-l);padding:28px 24px;color:var(--hz-ink)}
.hz-fld{margin-bottom:16px}
.hz-fld label{display:block;font-size:.875rem;font-weight:600;color:var(--hz-ink);margin-bottom:7px}
.hz-fld input,.hz-fld select,.hz-fld textarea{width:100%;background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:var(--hz-r-s);padding:13px 14px;font-size:1rem;color:var(--hz-ink);min-height:48px}
.hz-fld textarea{resize:vertical;min-height:110px}
.hz-fld input::placeholder,.hz-fld textarea::placeholder{color:var(--hz-sub)}
.hz-fld input:focus-visible,.hz-fld textarea:focus-visible,.hz-fld select:focus-visible{outline:none;border-color:var(--hz-accent);box-shadow:0 0 0 2px rgba(197,35,74,.9)}
.hz-fld [aria-invalid="true"]{border-color:var(--hz-accent)}
.hz-err{margin-top:7px;font-size:.8125rem;color:var(--hz-accent);font-weight:600}
.hz-consent label{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.8125rem;color:var(--hz-sub);line-height:1.5;cursor:pointer}
.hz-consent input{width:18px;height:18px;min-height:0;margin-top:2px;flex:none;accent-color:var(--hz-accent)}
.hz-consent a{color:var(--hz-accent);text-decoration:underline}
.hz-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.hz-form .hz-btn{width:100%;margin-top:4px}
.hz-note{font-size:.71875rem;color:var(--hz-sub);margin-top:12px;text-align:center;max-width:none}
.hz-note a{color:var(--hz-accent);text-decoration:underline;text-underline-offset:2px;display:inline-flex;align-items:center;min-height:24px}
.hz-fstatus{margin-top:12px;font-size:.8125rem;color:var(--hz-ink);background:var(--hz-mist-soft);border:1px solid var(--hz-line);border-radius:12px;padding:12px 14px;line-height:1.5;max-width:none}

/* ── footer ─────────────────────────────────────────────────────────────── */
.hz-footer{background:var(--hz-ink-dark);color:var(--hz-dark-sub);padding:clamp(48px,6vw,72px) 0 32px;font-size:.9375rem}
.hz-fgrid{display:grid;grid-template-columns:1fr;gap:30px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.14)}
.hz-footer .hz-logo-m{color:#fff}.hz-footer .hz-logo-s{color:var(--hz-dark-sub)}
.hz-fcol .hz-fh{font-family:var(--hz-util);font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hz-dark-sub);margin-bottom:12px}
.hz-fcol a{display:block;padding:6px 0;min-height:32px;color:var(--hz-dark-body)}
.hz-fcol a:hover{color:#fff}
.hz-fbot{padding-top:22px;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;font-size:.75rem}
.hz-about{margin-top:14px;max-width:34ch;font-size:.875rem;line-height:1.6;color:var(--hz-dark-sub)}

/* ── motion ─────────────────────────────────────────────────────────────── */
/* Hidden-until-revealed only when scripting is available: the .hz-js class is set
   by an inline script in the head, so with JavaScript off or broken every section
   stays visible instead of fading to nothing. */
@media(prefers-reduced-motion:no-preference){
  .hz-js .hz-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s var(--hz-e),transform .6s var(--hz-e)}
  .hz-js .hz-reveal.hz-in{opacity:1;transform:none}
  .hz-js .hz-chainviz .hz-cv-node,.hz-js .hz-chainviz .hz-cv-seg{opacity:0;transform:translateY(10px);transition:opacity .5s var(--hz-e),transform .5s var(--hz-e)}
  .hz-js .hz-chainviz .hz-cv-bar{opacity:0;transform:scaleX(.4);transform-origin:left center;transition:opacity .5s var(--hz-e),transform .7s var(--hz-e)}
  .hz-chainviz.hz-in .hz-cv-node,.hz-chainviz.hz-in .hz-cv-seg,.hz-chainviz.hz-in .hz-cv-bar{opacity:1;transform:none}
  .hz-chainviz.hz-in .hz-cv-node{transition-delay:calc(var(--i) * 90ms)}
  .hz-chainviz.hz-in .hz-cv-seg{transition-delay:calc(450ms + var(--i) * 70ms)}
  .hz-chainviz.hz-in .hz-cv-bar{transition-delay:820ms}
  .hz-flow .hz-flow-rail>*,.hz-flow .hz-dc-row{opacity:0;transform:translateY(8px);transition:opacity .45s var(--hz-e),transform .45s var(--hz-e);transition-delay:calc(var(--i) * 80ms)}
  .hz-flow.hz-in .hz-flow-rail>*,.hz-flow.hz-in .hz-dc-row{opacity:1;transform:none}
  .hz-menu a::after{transition:transform .3s var(--hz-e)}
  .hz-map .arc-run{animation:hz-corridor 5s linear infinite}
  .hz-map .pin{animation:hz-pin 3s ease-in-out infinite}
  .hz-motion-off .hz-map .arc-run,.hz-motion-off .hz-map .pin{animation-play-state:paused}
}
.hz-motion-off .hz-map .arc-run{opacity:.45}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hz-mapbar{display:none}
  *{transition-duration:.01ms!important;animation:none!important}
}


/* ── 2026 restructure: services strip, markets strip, footprint, offices ─── */
.hz-svc{display:grid;grid-template-columns:1fr;gap:16px}
.hz-svc-card{position:relative;background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-l);padding:26px 24px 24px;
  display:flex;flex-direction:column;transition:border-color .3s var(--hz-e),transform .3s var(--hz-e),box-shadow .3s var(--hz-e)}
.hz-svc-card:hover{border-color:var(--hz-accent);transform:translateY(-3px);box-shadow:0 18px 44px rgba(10,10,10,.08)}
.hz-svc-card .hz-ico{margin-bottom:16px}
.hz-svc-card h3{font-size:1.1875rem;line-height:1.35;margin-bottom:10px}
.hz-svc-card h3 a{color:var(--hz-ink);display:block;min-height:26px}
.hz-svc-card h3 a::after{content:"";position:absolute;inset:0;border-radius:var(--hz-r-l)}
.hz-svc-card:hover h3 a{color:var(--hz-accent)}
.hz-svc-card>p{font-size:.9375rem;margin-bottom:14px}
.hz-svc-card ul{list-style:none;margin:0 0 18px;padding:0;border-top:1px solid var(--hz-line);padding-top:12px}
.hz-svc-card li{position:relative;padding-left:18px;margin:6px 0;font-size:.8438rem;line-height:1.5;color:var(--hz-sub)}
.hz-svc-card li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:2px;background:var(--hz-accent)}
.hz-svc-card .hz-more{margin-top:auto;font-size:.875rem}
.hz-svc-card .hz-more a{font-weight:600}
.hz-cty{display:grid;grid-template-columns:1fr;gap:12px;list-style:none;margin:0;padding:0}
.hz-cty li{margin:0}
.hz-cty a{display:flex;flex-direction:column;gap:4px;background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);
  padding:18px 20px;min-height:78px;justify-content:center;transition:border-color .25s var(--hz-e),transform .25s var(--hz-e)}
.hz-cty a:hover{border-color:var(--hz-accent);transform:translateY(-2px)}
.hz-cty b{font-family:var(--hz-display);font-weight:600;font-size:1.0625rem;color:var(--hz-ink)}
.hz-cty a:hover b{color:var(--hz-accent)}
.hz-cty span{font-size:.8125rem;color:var(--hz-sub)}
.hz-panel-tight{padding:clamp(44px,6vw,72px) clamp(24px,5vw,60px)}
.hz-fstrip{margin-top:clamp(28px,4vw,40px);border-top:1px solid rgba(255,255,255,.12)}
.hz-fcities{margin-top:22px;font-family:var(--hz-util);font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--hz-dark-sub)}
.hz-panel-tight .wp-block-buttons{margin-top:26px}
.hz-sl{display:grid;grid-template-columns:1fr;gap:14px}
.hz-sl-card{position:relative;background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:22px 22px 20px;
  transition:border-color .25s var(--hz-e),transform .25s var(--hz-e)}
.hz-sl-card:hover{border-color:var(--hz-accent);transform:translateY(-2px)}
.hz-sl-h{font-size:1.0625rem;line-height:1.4;margin-bottom:8px}
.hz-sl-h a{color:var(--hz-ink);display:block;min-height:26px}
.hz-sl-h a::after{content:"";position:absolute;inset:0;border-radius:var(--hz-r-m)}
.hz-sl-card:hover .hz-sl-h a{color:var(--hz-accent)}
.hz-sl-card p{font-size:.9375rem}
.hz-oc-grid{display:grid;grid-template-columns:1fr;gap:16px}
.hz-oc{background:var(--hz-paper);border:1px solid var(--hz-line);border-radius:var(--hz-r-m);padding:24px 22px}
.hz-oc-city{font-size:1.1875rem;margin:0}
.hz-oc-reg{font-size:.75rem;color:var(--hz-accent);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin:6px 0 10px}
.hz-oc p{font-size:.9375rem}
.hz-oc-links{margin-top:14px;padding-top:12px;border-top:1px solid var(--hz-line);font-size:.875rem;color:var(--hz-sub)}
.hz-oc-links a{color:var(--hz-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--hz-accent);
  display:inline-flex;align-items:center;min-height:26px}
.hz-oc-links a:hover{color:var(--hz-accent)}
.hz-pill-two .hz-pill-card{padding:28px 26px}

/* ── responsive ─────────────────────────────────────────────────────────── */
@media(min-width:760px){
  :root{--hz-gut:34px}
  .hz-grid,.hz-steps,.hz-facts,.hz-rel,.hz-pillars,.hz-tracks,.hz-qc,.hz-corr-grid,.hz-off-grid,.hz-tgrid,.hz-mkt,.hz-bento,.hz-sl,.hz-oc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hz-svc{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hz-cty{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hz-cv-nodes,.hz-cv-segs{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
  .hz-cv-node{padding-left:0;padding-top:26px}
  .hz-cv-dot{top:0;left:0}
  .hz-cv-nodes::before{content:"";position:absolute;left:5px;right:5px;top:5px;height:1px;background:var(--hz-line)}
  .hz-cv-segs{gap:12px}
  .hz-dc-row{grid-template-columns:1.35fr 1fr;gap:26px;align-items:baseline}
  .hz-split{grid-template-columns:1.45fr .85fr;gap:44px}
  .hz-fgrid{grid-template-columns:1.5fr repeat(2,1fr)}
  .hz-hstrip{grid-template-columns:repeat(3,1fr)}
  .hz-hstat{padding:26px 26px 26px 0;border-bottom:none;border-right:1px solid rgba(255,255,255,.1);margin-right:26px}
  .hz-hstat:last-child{border-right:none;margin-right:0}
  .hz-contact{grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
  .hz-bcard.hz-span3{grid-column:span 1}
  .hz-bento{grid-template-columns:repeat(6,minmax(0,1fr))}
  .hz-bcard.hz-span3{grid-column:span 3}.hz-bcard.hz-span2{grid-column:span 3}.hz-bcard.hz-span6{grid-column:span 6}
  .hz-bcard .hz-row{flex-direction:row;align-items:center;justify-content:space-between}
}
@media(min-width:1024px){
  .hz-menu,.hz-langs{display:flex}
  .hz-burger,.hz-sheet{display:none}
  .hz-wa .hz-wa-t{display:inline}
  .hz-grid.hz-three,.hz-qc,.hz-off-grid.hz-four,.hz-tgrid,.hz-sl,.hz-oc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hz-svc{grid-template-columns:repeat(6,minmax(0,1fr))}
  .hz-svc-card{grid-column:span 2}
  .hz-svc-card.hz-svc-4,.hz-svc-card.hz-svc-5{grid-column:span 3}
  .hz-cty{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hz-pillars.hz-pill-two{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hz-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hz-facts{grid-template-columns:repeat(4,1fr)}
  .hz-off-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hz-flow-rail{grid-template-columns:1.1fr .8fr 1.1fr .8fr 1.1fr .8fr .9fr}
  .hz-bcard.hz-span2{grid-column:span 2}
  .hz-corr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
