/* ===================================================================
   AppsXpert — content pages (zpg-)  •  reuses service.css zps- tokens
   Contact, About, Careers, Partners, Global Presence, FAQ, Legal,
   Blog, Case Studies. Light, white/grey, navy + brand accents.
   =================================================================== */
.zpg-main{--zpg-accent:#2563eb;font-family:var(--font-primary,'Inter',sans-serif);color:#1d2433;}
.zpg-main h1,.zpg-main h2,.zpg-main h3{font-family:var(--font-primary,'Inter',sans-serif);}

/* ---- centered hero ---- */
.zpg-hero{background:#f5f7fb;padding:78px 24px 70px;text-align:center;}
.zpg-hero-inner{max-width:840px;margin:0 auto;}
.zpg-eyebrow{display:inline-flex;align-items:center;gap:8px;background:#eaf1fd;color:var(--zpg-accent);font-weight:700;text-transform:uppercase;letter-spacing:.8px;font-size:12px;padding:8px 15px;border-radius:30px;}
.zpg-hero h1{font-size:46px;line-height:1.08;letter-spacing:-1.6px;color:#0B1F4A;font-weight:800;margin:20px 0 0;}
.zpg-hero p{font-size:17px;line-height:1.7;color:#5b6473;max-width:640px;margin:18px auto 26px;}
.zpg-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.zpg-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:12px;font-weight:700;font-size:15px;text-decoration:none;transition:transform .2s ease;}
.zpg-btn-p{background:var(--zpg-accent);color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.25);}
.zpg-btn-p:hover{transform:translateY(-2px);color:#fff;}
.zpg-btn-o{background:#fff;color:#0B1F4A;border:1px solid #dde3ec;}
.zpg-btn-o:hover{transform:translateY(-2px);color:#0B1F4A;}

/* ---- generic section ---- */
.zpg-sec{padding:74px 24px;}
.zpg-sec.grey{background:#f8f9fb;}
.zpg-head{max-width:760px;margin:0 auto 46px;text-align:center;}
.zpg-head .tag{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--zpg-accent);}
.zpg-head h2{font-size:34px;letter-spacing:-1px;color:#0B1F4A;font-weight:800;margin:12px 0 14px;}
.zpg-head p{font-size:16px;line-height:1.7;color:#5b6473;margin:0;}

/* ---- card grid (icon cards) ---- */
.zpg-cards{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px;}
.zpg-card{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:28px;transition:transform .3s ease,box-shadow .3s ease;}
.zpg-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(11,31,74,.10);}
.zpg-card-ic{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;margin-bottom:16px;}
.zpg-card h3{font-size:18px;color:#0B1F4A;margin:0 0 8px;font-weight:700;}
.zpg-card p{font-size:14.5px;color:#5b6473;line-height:1.6;margin:0;}

/* ---- stat band (yellow) ---- */
.zpg-stats{background:#fed600;}
.zpg-stats-inner{max-width:1140px;margin:0 auto;display:flex;flex-wrap:wrap;}
.zpg-stat{flex:1;min-width:160px;padding:34px 22px;text-align:center;border-right:1px solid rgba(11,31,74,.12);}
.zpg-stat:last-child{border-right:none;}
.zpg-stat b{display:block;font-size:30px;font-weight:800;color:#0B1F4A;letter-spacing:-1px;}
.zpg-stat span{display:block;font-size:14px;font-weight:600;color:#4a4a32;margin-top:5px;}

/* ---- rich prose (about / legal) ---- */
.zpg-rich{max-width:820px;margin:0 auto;}
.zpg-rich h2{font-size:26px;color:#0B1F4A;font-weight:800;margin:34px 0 12px;letter-spacing:-.5px;}
.zpg-rich h3{font-size:19px;color:#0B1F4A;font-weight:700;margin:24px 0 8px;}
.zpg-rich p{font-size:16px;line-height:1.8;color:#46505f;margin:0 0 14px;}
.zpg-rich ul{margin:0 0 16px;padding-left:22px;}
.zpg-rich li{font-size:16px;line-height:1.8;color:#46505f;margin-bottom:6px;}
.zpg-rich .upd{font-size:13.5px;color:#8a93a3;margin-bottom:26px;}

/* ---- contact ---- */
.zpg-contact{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:start;}
.zpg-cinfo .zpg-cline{display:flex;gap:15px;align-items:flex-start;margin-bottom:22px;}
.zpg-cinfo .zpg-cic{flex:0 0 auto;width:46px;height:46px;border-radius:12px;background:#eaf1fd;color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:18px;}
.zpg-cinfo b{display:block;color:#0B1F4A;font-size:15px;font-weight:700;margin-bottom:2px;}
.zpg-cinfo a,.zpg-cinfo span{color:#5b6473;font-size:14.5px;text-decoration:none;line-height:1.55;}
.zpg-cinfo a:hover{color:var(--zpg-accent);}
.zpg-form{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:30px;box-shadow:0 16px 40px rgba(11,31,74,.07);}
.zpg-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.zpg-field{margin-bottom:16px;}
.zpg-field label{display:block;font-size:13px;font-weight:600;color:#0B1F4A;margin-bottom:6px;}
.zpg-field input,.zpg-field textarea,.zpg-field select{width:100%;box-sizing:border-box;border:1px solid #dde3ec;border-radius:10px;padding:12px 14px;font:inherit;font-size:14.5px;color:#1d2433;background:#fbfcfe;}
.zpg-field input:focus,.zpg-field textarea:focus,.zpg-field select:focus{outline:none;border-color:var(--zpg-accent);box-shadow:0 0 0 3px rgba(37,99,235,.12);}
.zpg-field textarea{min-height:120px;resize:vertical;}
.zpg-form .zpg-btn-p{width:100%;justify-content:center;border:none;cursor:pointer;}
.zpg-form .note{font-size:12.5px;color:#8a93a3;margin:12px 0 0;text-align:center;}

/* ---- offices (global presence) ---- */
.zpg-offices{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px;}
.zpg-office{position:relative;background:#fff;border:1px solid #eceff3;border-radius:18px;padding:24px 24px 22px;overflow:hidden;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease;}
.zpg-office::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#2563eb;}
.zpg-office:hover{transform:translateY(-7px);box-shadow:0 22px 46px rgba(11,31,74,.13);}
.zpg-ohead{display:flex;align-items:center;gap:14px;margin-bottom:13px;}
.zpg-office .flagimg{width:58px;height:39px;flex:0 0 auto;object-fit:cover;border-radius:8px;box-shadow:0 8px 18px rgba(11,31,74,.20);border:1px solid #eceff3;}
.zpg-office .nm{min-width:0;}
.zpg-office .nm h3{font-size:17px;color:#0B1F4A;margin:0;font-weight:700;line-height:1.2;}
.zpg-office .nm .region{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--zpg-accent);margin-top:3px;}
.zpg-office p{font-size:13.5px;color:#5b6473;line-height:1.55;margin:0;display:flex;gap:8px;align-items:flex-start;}
.zpg-office p i{color:var(--zpg-accent);margin-top:3px;flex:0 0 auto;font-size:12px;}
.zpg-office .hq{position:absolute;top:15px;right:15px;background:#fed600;color:#0B1F4A;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:4px 9px;border-radius:20px;z-index:2;}

/* ---- partners / logos ---- */
.zpg-logos{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;}
.zpg-logo{background:#fff;border:1px solid #eceff3;border-radius:14px;height:96px;display:flex;align-items:center;justify-content:center;padding:14px;transition:transform .2s ease,box-shadow .2s ease;}
.zpg-logo:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(11,31,74,.08);}
.zpg-logo img{max-width:90px;max-height:48px;object-fit:contain;}
.zpg-logo i{font-size:40px;}
.zpg-logo b{font-size:17px;color:#0B1F4A;font-weight:700;}

/* ---- chips ---- */
.zpg-chips{max-width:1000px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}
.zpg-chip{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #eceff3;border-radius:30px;padding:11px 18px;font-size:14.5px;font-weight:600;color:#0B1F4A;transition:transform .2s ease,border-color .2s ease;}
.zpg-chip:hover{transform:translateY(-3px);border-color:var(--zpg-accent);}
.zpg-chip i{color:var(--zpg-accent);}

/* ---- blog / case-study cards ---- */
.zpg-posts{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;}
.zpg-post{display:flex;flex-direction:column;background:#fff;border:1px solid #eceff3;border-radius:18px;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;}
.zpg-post:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(11,31,74,.10);}
.zpg-post-top{height:8px;}
.zpg-post-body{padding:24px 26px;flex:1;display:flex;flex-direction:column;}
.zpg-post .cat{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--zpg-accent);}
.zpg-post h3{font-size:18.5px;color:#0B1F4A;margin:8px 0 9px;font-weight:700;line-height:1.3;}
.zpg-post p{font-size:14.5px;color:#5b6473;line-height:1.6;margin:0 0 16px;flex:1;}
.zpg-post .more{font-size:14px;font-weight:700;color:var(--zpg-accent);}

/* ---- case-study page ---- */
.zpg-cs-meta{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.zpg-cs-meta .m{background:#fff;border:1px solid #eceff3;border-radius:12px;padding:14px 20px;text-align:center;min-width:150px;}
.zpg-cs-meta .m span{display:block;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#8a93a3;}
.zpg-cs-meta .m b{display:block;font-size:15px;color:#0B1F4A;margin-top:4px;font-weight:700;}
.zpg-cs-split{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.zpg-cs-block{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:30px;}
.zpg-cs-block h3{font-size:19px;color:#0B1F4A;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:10px;}
.zpg-cs-block h3 i{color:var(--zpg-accent);}
.zpg-cs-block p{font-size:15px;color:#46505f;line-height:1.7;margin:0 0 10px;}
.zpg-cs-block ul{margin:0;padding-left:20px;}
.zpg-cs-block li{font-size:14.5px;color:#46505f;line-height:1.65;margin-bottom:7px;}
.zpg-results{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;}
.zpg-result{background:#fff;border:1px solid #eceff3;border-radius:16px;padding:28px;text-align:center;}
.zpg-result b{display:block;font-size:34px;font-weight:800;color:var(--zpg-accent);letter-spacing:-1px;}
.zpg-result span{display:block;font-size:14px;color:#5b6473;margin-top:6px;line-height:1.45;}

/* ---- CTA ---- */
.zpg-cta{background:#f8f9fb;padding:70px 24px;}
.zpg-cta-inner{max-width:780px;margin:0 auto;background:#E63946;border-radius:24px;padding:50px 40px;text-align:center;box-shadow:0 24px 54px rgba(230,57,70,.30);}
.zpg-cta-inner h2{font-size:32px;letter-spacing:-1px;color:#fff;font-weight:800;margin:0 0 12px;}
.zpg-cta-inner p{font-size:17px;color:rgba(255,255,255,.92);margin:0 0 26px;}
.zpg-cta-inner .zpg-btn-p{background:#fff;color:#E63946;box-shadow:0 10px 24px rgba(0,0,0,.18);}

/* ---- FAQ accordion (reuse zps look) ---- */
.zpg-faq{max-width:820px;margin:0 auto;}
.zpg-faqgrp{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--zpg-accent);margin:28px 0 12px;}
.zpg-faq-item{background:#fff;border:1px solid #eceff3;border-radius:14px;margin-bottom:13px;overflow:hidden;}
.zpg-faq-item.open{box-shadow:0 12px 30px rgba(11,31,74,.08);}
.zpg-faq-q{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:19px 22px;cursor:pointer;font-size:16px;font-weight:700;color:#0B1F4A;}
.zpg-faq-q i{color:var(--zpg-accent);transition:transform .3s ease;}
.zpg-faq-item.open .zpg-faq-q i{transform:rotate(180deg);}
.zpg-faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.zpg-faq-a p{padding:0 22px 20px;font-size:15px;color:#5b6473;line-height:1.7;margin:0;}

/* ---- reveal ---- */
.zpg-anim{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
.zpg-visible{opacity:1 !important;transform:none !important;}
@media(prefers-reduced-motion:reduce){.zpg-anim{opacity:1;transform:none;}}

@media(max-width:820px){
  .zpg-hero h1{font-size:34px;}
  .zpg-contact,.zpg-cs-split{grid-template-columns:1fr;}
  .zpg-form .row{grid-template-columns:1fr;}
}
@media(max-width:560px){.zpg-stat{border-right:none;border-bottom:1px solid rgba(11,31,74,.12);}}

/* ===== reworked components (industries / case studies / blog) ===== */
/* zig-zag feature rows */
.zpg-zig{max-width:1140px;margin:0 auto;display:flex;flex-direction:column;gap:46px;}
.zpg-zrow{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;}
.zpg-zrow.rev .zpg-zvis{order:2;}
.zpg-zvis{border-radius:22px;padding:40px;color:#fff;position:relative;overflow:hidden;min-height:230px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 20px 44px rgba(11,31,74,.14);}
.zpg-zvis .big{position:absolute;right:-12px;bottom:-26px;font-size:150px;opacity:.13;pointer-events:none;}
.zpg-zvis .ic{font-size:40px;margin-bottom:14px;}
.zpg-zvis h4{font-size:12.5px;text-transform:uppercase;letter-spacing:.8px;opacity:.85;margin:0;font-weight:700;}
.zpg-zvis .pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;position:relative;z-index:1;}
.zpg-zvis .pills span{background:rgba(255,255,255,.16);padding:6px 12px;border-radius:20px;font-size:12.5px;font-weight:600;}
.zpg-ztext .lbl{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--zpg-accent);margin:0 0 8px;}
.zpg-ztext h3{font-size:26px;color:#0B1F4A;font-weight:800;margin:0 0 12px;letter-spacing:-.5px;}
.zpg-ztext p{font-size:15.5px;color:#5b6473;line-height:1.7;margin:0 0 16px;}
.zpg-ztext ul{margin:0 0 18px;padding:0;list-style:none;}
.zpg-ztext li{position:relative;padding:5px 0 5px 24px;font-size:14.5px;color:#46505f;line-height:1.5;}
.zpg-ztext li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:6px;color:#2D9F4F;font-size:12px;}
.zpg-ztags{display:flex;flex-wrap:wrap;gap:8px;}
.zpg-ztags span{background:#eef2f8;color:#0B1F4A;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:20px;}
@media(max-width:820px){.zpg-zrow{grid-template-columns:1fr;gap:24px;}.zpg-zrow.rev .zpg-zvis{order:0;}}

/* compact industry tiles */
.zpg-itile-grp{max-width:1140px;margin:0 auto 28px;}
.zpg-itile-grp h3{font-size:13.5px;text-transform:uppercase;letter-spacing:.7px;color:var(--zpg-accent);margin:0 0 14px;font-weight:700;}
.zpg-itiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;}
.zpg-itile{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #eceff3;border-radius:12px;padding:14px 16px;transition:transform .2s ease,border-color .2s ease;}
.zpg-itile:hover{transform:translateY(-3px);border-color:var(--zpg-accent);}
.zpg-itile i{width:36px;height:36px;border-radius:9px;background:#eef2f8;color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:15px;flex:0 0 auto;}
.zpg-itile b{font-size:14px;color:#0B1F4A;font-weight:600;}

/* challenge -> solution cards */
.zpg-chal{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;}
.zpg-chalcard{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:28px;border-top:4px solid var(--zpg-accent);transition:transform .25s ease,box-shadow .25s ease;}
.zpg-chalcard:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(11,31,74,.09);}
.zpg-chalcard .pc{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#E63946;}
.zpg-chalcard h3{font-size:18px;color:#0B1F4A;margin:8px 0 8px;font-weight:700;}
.zpg-chalcard p{font-size:14.5px;color:#5b6473;line-height:1.6;margin:0;}
.zpg-chalcard .sol{margin-top:13px;font-size:13.5px;color:#2D9F4F;font-weight:600;line-height:1.5;}
.zpg-chalcard .sol i{margin-right:6px;}

/* featured spotlight */
.zpg-feature{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;background:#fff;border:1px solid #eceff3;border-radius:24px;padding:44px;box-shadow:0 20px 50px rgba(11,31,74,.07);}
.zpg-feature .ftag{display:inline-block;background:#eaf1fd;color:var(--zpg-accent);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:6px 13px;border-radius:20px;}
.zpg-feature h2{font-size:30px;color:#0B1F4A;font-weight:800;letter-spacing:-.8px;margin:14px 0 12px;}
.zpg-feature p{font-size:16px;color:#5b6473;line-height:1.7;margin:0 0 22px;}
.zpg-fmetrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.zpg-fmetric{background:#f8f9fb;border-radius:14px;padding:22px;text-align:center;}
.zpg-fmetric b{display:block;font-size:26px;font-weight:800;color:var(--zpg-accent);letter-spacing:-1px;}
.zpg-fmetric span{display:block;font-size:12.5px;color:#5b6473;margin-top:5px;}
@media(max-width:820px){.zpg-feature{grid-template-columns:1fr;padding:30px;}}

/* category nav */
.zpg-catnav{max-width:1000px;margin:0 auto 32px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.zpg-catnav a{background:#fff;border:1px solid #e7ebf2;border-radius:30px;padding:9px 18px;font-size:14px;font-weight:600;color:#0B1F4A;text-decoration:none;transition:all .2s ease;cursor:pointer;}
.zpg-catnav a:hover,.zpg-catnav a.on{background:var(--zpg-accent);color:#fff;border-color:var(--zpg-accent);}

/* rich case-study cards */
.zpg-csgrid{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:24px;}
.zpg-cscard{display:flex;flex-direction:column;background:#fff;border:1px solid #eceff3;border-radius:18px;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;}
.zpg-cscard:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(11,31,74,.10);}
.zpg-cstop{padding:22px 24px;color:#fff;position:relative;overflow:hidden;min-height:64px;}
.zpg-cstop .ic{font-size:30px;}
.zpg-cstop .big{position:absolute;right:-8px;bottom:-22px;font-size:96px;opacity:.14;}
.zpg-cstop .reg{position:absolute;top:18px;right:20px;font-size:12px;font-weight:600;background:rgba(255,255,255,.2);padding:5px 11px;border-radius:20px;}
.zpg-csbody{padding:22px 24px;flex:1;display:flex;flex-direction:column;}
.zpg-csbody .tag{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--zpg-accent);}
.zpg-csbody h3{font-size:18px;color:#0B1F4A;margin:7px 0 9px;font-weight:700;line-height:1.3;}
.zpg-csbody p{font-size:14px;color:#5b6473;line-height:1.6;margin:0 0 14px;flex:1;}
.zpg-csmetric{display:flex;align-items:center;gap:8px;font-size:13.5px;color:#0B1F4A;font-weight:700;border-top:1px solid #eef0f4;padding-top:12px;}
.zpg-csmetric i{color:#2D9F4F;}

/* timeline (approach) */
.zpg-timeline{max-width:880px;margin:0 auto;position:relative;}
.zpg-timeline::before{content:"";position:absolute;left:27px;top:14px;bottom:14px;width:2px;background:#dde3ec;}
.zpg-tstep{position:relative;padding:0 0 30px 80px;}
.zpg-tstep:last-child{padding-bottom:0;}
.zpg-tnum{position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;background:var(--zpg-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:800;box-shadow:0 10px 24px rgba(37,99,235,.25);}
.zpg-tstep h4{font-size:18px;color:#0B1F4A;margin:6px 0 6px;font-weight:700;}
.zpg-tstep p{font-size:14.5px;color:#5b6473;line-height:1.65;margin:0;}

/* big metric band */
.zpg-metrics{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;}
.zpg-metric{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:30px;text-align:center;}
.zpg-metric b{display:block;font-size:36px;font-weight:800;color:var(--zpg-accent);letter-spacing:-1.5px;}
.zpg-metric span{display:block;font-size:13.5px;color:#5b6473;margin-top:6px;line-height:1.4;}

/* deliverables checklist */
.zpg-deliv{max-width:920px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.zpg-deliv > div{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #eceff3;border-radius:12px;padding:15px 18px;font-size:14.5px;color:#46505f;line-height:1.5;}
.zpg-deliv i{color:#2D9F4F;margin-top:3px;flex:0 0 auto;}
@media(max-width:640px){.zpg-deliv{grid-template-columns:1fr;}}

/* solution feature cards (case study) */
.zpg-solgrid{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
.zpg-sol{background:#fff;border:1px solid #eceff3;border-radius:16px;padding:26px;}
.zpg-sol i{width:48px;height:48px;border-radius:12px;background:#eaf1fd;color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:19px;margin-bottom:14px;}
.zpg-sol h3{font-size:17px;color:#0B1F4A;margin:0 0 7px;font-weight:700;}
.zpg-sol p{font-size:14px;color:#5b6473;line-height:1.6;margin:0;}

/* related */
.zpg-related{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}

/* technology stack (grouped) */
.zpg-stack{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;}
.zpg-stackcol{background:#fff;border:1px solid #eceff3;border-radius:16px;padding:24px 26px;}
.zpg-stackcol h4{font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:var(--zpg-accent);margin:0 0 12px;font-weight:700;display:flex;align-items:center;gap:9px;}
.zpg-stackcol h4 i{font-size:15px;}
.zpg-stackcol ul{list-style:none;margin:0;padding:0;}
.zpg-stackcol li{font-size:14.5px;color:#0B1F4A;font-weight:600;padding:8px 0;border-bottom:1px solid #f1f3f7;display:flex;align-items:center;gap:10px;}
.zpg-stackcol li:last-child{border-bottom:none;}
.zpg-stackcol li i{color:#2D9F4F;font-size:12px;width:14px;text-align:center;flex:0 0 auto;}

/* expanded at-a-glance band */
.zpg-glance{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;}
.zpg-glance .g{background:#fff;border:1px solid #eceff3;border-radius:14px;padding:18px 20px;}
.zpg-glance .g span{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#8a93a3;}
.zpg-glance .g b{display:block;font-size:15px;color:#0B1F4A;margin-top:5px;font-weight:700;line-height:1.35;}

/* feature list (icon rows, no boxes) */
.zpg-featlist{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:30px 44px;}
.zpg-feat{display:flex;gap:18px;align-items:flex-start;}
.zpg-feat .fi{flex:0 0 auto;width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:21px;box-shadow:0 10px 22px rgba(11,31,74,.12);}
.zpg-feat h3{font-size:18px;color:#0B1F4A;margin:2px 0 7px;font-weight:700;}
.zpg-feat p{font-size:14.5px;color:#5b6473;line-height:1.62;margin:0;}
@media(max-width:760px){.zpg-featlist{grid-template-columns:1fr;gap:26px;}}

/* About — checklist (service offerings / approach principles) */
.zpg-checks{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:14px 26px;}
.zpg-checks.solo{max-width:620px;grid-template-columns:1fr;}
.zpg-check{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #eceff3;border-radius:13px;padding:16px 18px;transition:border-color .2s ease,transform .2s ease;}
.zpg-check:hover{border-color:#cfe0f7;transform:translateY(-2px);}
.zpg-check i{flex:0 0 auto;width:27px;height:27px;border-radius:50%;background:#eaf3ec;color:#2D9F4F;display:flex;align-items:center;justify-content:center;font-size:12px;margin-top:1px;}
.zpg-check.nv i{background:#e7eefb;color:#2563eb;}
.zpg-check span{font-size:14.5px;color:#384150;line-height:1.5;font-weight:500;}
.zpg-check b{display:block;font-size:15px;color:#0B1F4A;font-weight:700;margin-bottom:2px;}
@media(max-width:760px){.zpg-checks{grid-template-columns:1fr;}}

/* About — numbered strength rows */
.zpg-numlist{max-width:980px;margin:0 auto;display:flex;flex-direction:column;gap:16px;}
.zpg-num{display:flex;gap:22px;align-items:flex-start;background:#fff;border:1px solid #eceff3;border-radius:16px;padding:24px 28px;transition:transform .25s ease,box-shadow .25s ease;}
.zpg-num:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(11,31,74,.10);}
.zpg-num .n{flex:0 0 auto;width:48px;height:48px;border-radius:13px;background:#0B1F4A;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;}
.zpg-num .tx{min-width:0;}
.zpg-num h3{font-size:18.5px;color:#0B1F4A;margin:1px 0 7px;font-weight:700;}
.zpg-num p{font-size:14.5px;color:#5b6473;line-height:1.64;margin:0;}
@media(max-width:600px){.zpg-num{flex-direction:column;gap:14px;padding:22px 22px;}}

/* About — coming-soon badge inside office cards */
.zpg-office .nm h3 .soon{display:inline-block;background:#eef2f8;color:#7a8290;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;padding:3px 8px;border-radius:20px;vertical-align:middle;margin-left:6px;}
.zpg-office.is-soon{opacity:.74;}
.zpg-office .flagicon{width:58px;height:39px;flex:0 0 auto;border-radius:8px;background:#eef2f8;color:#0891b2;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 8px 18px rgba(11,31,74,.10);}

/* big statement panel (mission / vision centerpiece) */
.zpg-statement{max-width:920px;margin:0 auto;background:#0B1F4A;border-radius:26px;padding:58px 52px;text-align:center;color:#fff;position:relative;overflow:hidden;box-shadow:0 28px 60px rgba(11,31,74,.20);}
.zpg-statement.alt{background:#056cb8;}
.zpg-statement::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:transparent;top:-150px;right:-90px;}
.zpg-statement .qm{font-family:Georgia,serif;font-size:66px;line-height:0;height:34px;display:block;color:#fed600;opacity:.85;}
.zpg-statement p{font-size:28px;line-height:1.5;font-weight:700;margin:18px 0 0;letter-spacing:-.4px;position:relative;z-index:1;color:#fff;}
.zpg-statement p .hl{background:linear-gradient(90deg,#7cc4ff,#fed600);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.zpg-statement .by{margin-top:28px;font-size:12.5px;color:rgba(255,255,255,.8);font-weight:700;text-transform:uppercase;letter-spacing:1px;display:inline-flex;align-items:center;gap:12px;}
.zpg-statement .by::before,.zpg-statement .by::after{content:"";width:26px;height:2px;background:rgba(254,214,0,.65);}
@media(max-width:640px){.zpg-statement{padding:44px 28px;}.zpg-statement p{font-size:21px;}}

/* horizons (vision roadmap) */
.zpg-horizons{max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.zpg-horizon{background:#fff;border:1px solid #eceff3;border-radius:18px;padding:28px;border-top:4px solid var(--zpg-accent);}
.zpg-horizon .hn{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--zpg-accent);}
.zpg-horizon h3{font-size:18px;color:#0B1F4A;margin:8px 0 9px;font-weight:700;}
.zpg-horizon p{font-size:14.5px;color:#5b6473;line-height:1.6;margin:0;}
@media(max-width:760px){.zpg-horizons{grid-template-columns:1fr;}}

/* mission/vision split panels */
.zpg-mv{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.zpg-mvcard{position:relative;border-radius:22px;padding:38px;overflow:hidden;color:#fff;}
.zpg-mvcard.mi{background:#0B1F4A;}
.zpg-mvcard.vi{background:#056cb8;}
.zpg-mvcard .mvic{font-size:28px;margin-bottom:16px;}
.zpg-mvcard h3{font-size:22px;font-weight:800;margin:0 0 12px;color:#fff;letter-spacing:-.4px;}
.zpg-mvcard p{font-size:16px;line-height:1.7;color:rgba(255,255,255,.9);margin:0;}
.zpg-mvcard .wm{position:absolute;right:-14px;bottom:-24px;font-size:140px;opacity:.1;}
@media(max-width:760px){.zpg-mv{grid-template-columns:1fr;}}

/* ===================================================================
   Case study (zcs-) — a different layout for every section
   =================================================================== */
/* snapshot spec bar */
.zcs-bar{max-width:1080px;margin:0 auto;background:#fff;border:1px solid #eceff3;border-radius:18px;display:flex;flex-wrap:wrap;box-shadow:0 14px 34px rgba(11,31,74,.06);overflow:hidden;}
.zcs-bar .b{flex:1;min-width:175px;padding:22px 24px;display:flex;gap:13px;align-items:center;border-right:1px solid #eef0f4;}
.zcs-bar .b:last-child{border-right:none;}
.zcs-bar .b > i{width:42px;height:42px;border-radius:11px;background:#eaf1fd;color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:17px;flex:0 0 auto;}
.zcs-bar .b span{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#8a93a3;}
.zcs-bar .b b{display:block;font-size:14px;color:#0B1F4A;margin-top:2px;font-weight:700;line-height:1.3;}
@media(max-width:760px){.zcs-bar{flex-direction:column;}.zcs-bar .b{border-right:none;border-bottom:1px solid #eef0f4;}}

/* overview: editorial 2-col with facts panel */
.zcs-overview{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.55fr 1fr;gap:42px;align-items:start;}
.zcs-overview .narr p{font-size:16.5px;line-height:1.85;color:#46505f;margin:0 0 16px;}
.zcs-overview .narr p:first-child::first-letter{font-size:50px;font-weight:800;color:var(--zpg-accent);float:left;line-height:.9;padding:4px 12px 0 0;}
.zcs-facts{background:#f7f9fc;border:1px solid #e7ebf2;border-radius:18px;padding:28px 30px;position:sticky;top:100px;}
.zcs-facts h4{font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:var(--zpg-accent);margin:0 0 14px;font-weight:700;}
.zcs-facts .ff{padding:13px 0;border-bottom:1px solid #e3e8f0;}
.zcs-facts .ff:last-child{border-bottom:none;}
.zcs-facts .ff span{font-size:11.5px;color:#8a93a3;font-weight:700;text-transform:uppercase;letter-spacing:.4px;}
.zcs-facts .ff b{display:block;font-size:14.5px;color:#0B1F4A;margin-top:4px;font-weight:600;line-height:1.45;}
@media(max-width:820px){.zcs-overview{grid-template-columns:1fr;}.zcs-facts{position:static;}}

/* challenge: tinted panel, numbered pains */
.zcs-chal{max-width:900px;margin:0 auto;background:#fff;border:1px solid #f3dede;border-radius:22px;padding:38px 40px;}
.zcs-chal .intro{font-size:16.5px;color:#46505f;line-height:1.8;margin:0 0 24px;}
.zcs-pain{display:flex;gap:18px;align-items:flex-start;padding:17px 0;border-bottom:1px dashed #eed7d7;}
.zcs-pain:last-child{border-bottom:none;padding-bottom:0;}
.zcs-pnum{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:#E63946;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;box-shadow:0 8px 18px rgba(230,57,70,.25);}
.zcs-pain p{font-size:15.5px;color:#46505f;line-height:1.6;margin:0;padding-top:7px;}

/* technology stack: layered rows */
.zcs-stack{max-width:1000px;margin:0 auto;background:#fff;border:1px solid #eceff3;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(11,31,74,.06);}
.zcs-layer{display:grid;grid-template-columns:210px 1fr;gap:24px;align-items:center;padding:20px 28px;border-bottom:1px solid #eef0f4;}
.zcs-layer:last-child{border-bottom:none;}
.zcs-layer .lh{display:flex;align-items:center;gap:12px;font-size:14.5px;font-weight:700;color:#0B1F4A;}
.zcs-layer .lh i{width:38px;height:38px;border-radius:10px;background:#eaf1fd;color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:16px;flex:0 0 auto;}
.zcs-layer .lt{display:flex;flex-wrap:wrap;gap:9px;}
.zcs-layer .lt span{background:#f3f5f9;border:1px solid #e7ebf2;color:#0B1F4A;font-size:13px;font-weight:600;padding:7px 14px;border-radius:8px;}
@media(max-width:640px){.zcs-layer{grid-template-columns:1fr;gap:12px;}}

/* results: navy impact band + before/after */
.zcs-impact{max-width:1080px;margin:0 auto;background:#0B1F4A;border-radius:24px;padding:46px 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:26px;position:relative;overflow:hidden;}
.zcs-impact::after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:transparent;top:-160px;right:-100px;}
.zcs-im{text-align:center;position:relative;z-index:1;}
.zcs-im b{display:block;font-size:32px;font-weight:800;letter-spacing:-1px;background:linear-gradient(90deg,#7cc4ff,#fed600);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#fff;}
.zcs-im span{display:block;font-size:12.5px;color:rgba(255,255,255,.82);margin-top:7px;line-height:1.4;}
.zcs-ba{max-width:940px;margin:34px auto 0;display:flex;flex-direction:column;gap:14px;}
.zcs-barow{display:grid;grid-template-columns:1fr 44px 1fr;gap:14px;align-items:stretch;}
.zcs-bb{border:1px solid #eceff3;border-radius:13px;padding:15px 18px;background:#fff;}
.zcs-bb.before{border-left:4px solid #E63946;}
.zcs-bb.after{border-left:4px solid #2D9F4F;}
.zcs-bb span{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;}
.zcs-bb.before span{color:#E63946;}
.zcs-bb.after span{color:#2D9F4F;}
.zcs-bb p{font-size:14px;color:#0B1F4A;margin:5px 0 0;font-weight:600;line-height:1.45;}
.zcs-arrow{display:flex;align-items:center;justify-content:center;color:var(--zpg-accent);font-size:18px;}
.zcs-resnarr{max-width:780px;margin:30px auto 0;text-align:center;font-size:16px;color:#46505f;line-height:1.75;}
@media(max-width:640px){.zcs-barow{grid-template-columns:1fr;}.zcs-arrow{transform:rotate(90deg);}}

/* deliverables: single-column rail list */
.zcs-deliver{max-width:820px;margin:0 auto;background:#fff;border:1px solid #eceff3;border-radius:18px;padding:10px 30px;box-shadow:0 12px 30px rgba(11,31,74,.05);}
.zcs-dl{display:flex;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid #f1f3f7;}
.zcs-dl:last-child{border-bottom:none;}
.zcs-dl i{width:32px;height:32px;border-radius:50%;background:#e7f6ec;color:#2D9F4F;display:flex;align-items:center;justify-content:center;font-size:13px;flex:0 0 auto;}
.zcs-dl b{font-size:15px;color:#0B1F4A;font-weight:600;}

/* blog featured + meta */
.zpg-featpost{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.25fr 1fr;background:#fff;border:1px solid #eceff3;border-radius:22px;overflow:hidden;box-shadow:0 20px 50px rgba(11,31,74,.07);text-decoration:none;}
.zpg-featpost .img{min-height:250px;color:#fff;padding:36px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden;}
.zpg-featpost .img .big{position:absolute;right:-10px;top:-24px;font-size:150px;opacity:.13;}
.zpg-featpost .img .fcat{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;background:rgba(255,255,255,.2);padding:5px 12px;border-radius:20px;align-self:flex-start;}
.zpg-featpost .img h3{font-size:25px;font-weight:800;margin:14px 0 0;line-height:1.25;}
.zpg-featpost .fbody{padding:36px;display:flex;flex-direction:column;justify-content:center;}
.zpg-featpost .fbody .lbl{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--zpg-accent);}
.zpg-featpost .fbody p{font-size:15.5px;color:#5b6473;line-height:1.7;margin:10px 0 16px;}
.zpg-featpost .meta{font-size:13px;color:#8a93a3;}
.zpg-featpost .more{font-size:14px;font-weight:700;color:var(--zpg-accent);margin-top:14px;}
@media(max-width:820px){.zpg-featpost{grid-template-columns:1fr;}}
.zpg-post .pmeta{font-size:12.5px;color:#8a93a3;margin-top:auto;padding-top:12px;display:flex;gap:14px;}
.zpg-post .pmeta span{display:inline-flex;align-items:center;gap:5px;}

/* newsletter */
.zpg-news{max-width:840px;margin:0 auto;background:#0B1F4A;border-radius:24px;padding:46px 40px;text-align:center;color:#fff;}
.zpg-news h2{font-size:28px;font-weight:800;margin:0 0 10px;color:#fff;letter-spacing:-.5px;}
.zpg-news p{font-size:16px;color:rgba(255,255,255,.85);margin:0 0 24px;}
.zpg-news form{display:flex;gap:12px;max-width:480px;margin:0 auto;flex-wrap:wrap;}
.zpg-news input{flex:1;min-width:200px;border:none;border-radius:11px;padding:14px 16px;font:inherit;font-size:15px;}
.zpg-news button{border:none;border-radius:11px;padding:14px 24px;font:inherit;font-weight:700;font-size:15px;background:#fed600;color:#0B1F4A;cursor:pointer;}
.zpg-news .note{font-size:12.5px;color:rgba(255,255,255,.7);margin:14px 0 0;}

/* topic tiles */
.zpg-topics{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;}
.zpg-topic{background:#fff;border:1px solid #eceff3;border-radius:14px;padding:22px;text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;}
.zpg-topic:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(11,31,74,.08);}
.zpg-topic i{font-size:26px;color:var(--zpg-accent);}
.zpg-topic b{display:block;font-size:14.5px;color:#0B1F4A;margin-top:10px;font-weight:700;}
.zpg-topic span{display:block;font-size:12.5px;color:#8a93a3;margin-top:3px;}

/* ===================================================================
   Contact page (zct-) — premium split hero with embedded form
   =================================================================== */
.zct-hero{position:relative;overflow:hidden;background:#0B1F4A;padding:80px 24px 88px;}
.zct-hero::before{content:"";position:absolute;width:540px;height:540px;border-radius:50%;background:transparent;top:-180px;right:-140px;pointer-events:none;}
.zct-hero::after{content:"";position:absolute;width:440px;height:440px;border-radius:50%;background:transparent;bottom:-200px;left:-120px;pointer-events:none;}
.zct-inner{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;position:relative;z-index:2;}
.zct-left{color:#fff;}
.zct-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.8px;font-size:12px;padding:8px 15px;border-radius:30px;}
.zct-left h1{font-size:44px;line-height:1.08;letter-spacing:-1.6px;font-weight:800;margin:20px 0 0;color:#fff;}
.zct-ac{background:linear-gradient(90deg,#5ec2ff,#fed600);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.zct-left > p{font-size:17px;line-height:1.7;color:rgba(255,255,255,.82);margin:18px 0 26px;max-width:480px;}
.zct-trust{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.zct-trust li{display:flex;gap:11px;align-items:center;font-size:14.5px;color:rgba(255,255,255,.92);}
.zct-trust li i{flex:0 0 auto;width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.14);color:#fed600;display:flex;align-items:center;justify-content:center;font-size:13px;}
.zct-quick{display:flex;flex-wrap:wrap;gap:12px;}
.zct-qitem{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:11px 16px;color:#fff;text-decoration:none;font-size:14px;font-weight:600;transition:background .2s ease,transform .2s ease;}
.zct-qitem:hover{background:rgba(255,255,255,.2);color:#fff;transform:translateY(-2px);}
.zct-qitem i{color:#fed600;}
/* elevated form card */
.zct-formcard{background:#fff;border-radius:22px;padding:34px;box-shadow:0 34px 80px rgba(0,0,0,.34);}
.zct-formcard h2{font-size:22px;color:#0B1F4A;font-weight:800;margin:0 0 4px;letter-spacing:-.4px;}
.zct-formcard .sub{font-size:14px;color:#5b6473;margin:0 0 22px;}
.zct-formcard .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.zct-formcard .zpg-btn-p{width:100%;justify-content:center;border:none;cursor:pointer;margin-top:4px;}
.zct-formcard .note{font-size:12.5px;color:#8a93a3;margin:12px 0 0;text-align:center;}

/* offices: addresses + map */
.zpg-addrwrap{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1.05fr;gap:38px;align-items:start;}
.zpg-addrlist{display:flex;flex-direction:column;gap:15px;}
.zpg-addr{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #eceff3;border-radius:16px;padding:20px 22px;transition:transform .2s ease,box-shadow .2s ease;}
.zpg-addr:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(11,31,74,.09);}
.zpg-addr .flagimg{width:52px;height:35px;flex:0 0 auto;object-fit:cover;border-radius:7px;box-shadow:0 6px 14px rgba(11,31,74,.18);border:1px solid #eceff3;}
.zpg-addr .flagicon{width:52px;height:35px;flex:0 0 auto;border-radius:7px;background:#eef2f8;color:#0891b2;display:flex;align-items:center;justify-content:center;font-size:18px;}
.zpg-addr h3{font-size:16px;color:#0B1F4A;margin:0 0 5px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.zpg-addr h3 .hq{background:#fed600;color:#0B1F4A;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;padding:3px 8px;border-radius:20px;}
.zpg-addr h3 .soon{background:#eef2f8;color:#7a8290;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;padding:3px 8px;border-radius:20px;}
.zpg-addr p{font-size:13.5px;color:#5b6473;line-height:1.55;margin:0 0 8px;display:flex;gap:8px;align-items:flex-start;}
.zpg-addr p i{color:var(--zpg-accent);margin-top:3px;flex:0 0 auto;font-size:12px;}
.zpg-addr a{font-size:13px;font-weight:700;color:var(--zpg-accent);text-decoration:none;}
.zpg-addr a:hover{text-decoration:underline;}
.zpg-addr.is-soon{opacity:.72;}
.zpg-map{border-radius:18px;overflow:hidden;border:1px solid #eceff3;box-shadow:0 18px 44px rgba(11,31,74,.12);position:sticky;top:100px;background:#eaf1f6;}
.zpg-map iframe{width:100%;height:540px;border:0;display:block;}
#zpg-worldmap{width:100%;height:560px;background:#dde7ee;}
#zpg-worldmap .leaflet-container{font:inherit;}
.zpg-pin span{display:block;width:15px;height:15px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#2563eb;border:3px solid #fff;box-shadow:0 4px 10px rgba(11,31,74,.35);}
.zpg-pin.hq span{background:#fed600;box-shadow:0 0 0 5px rgba(254,214,0,.3),0 4px 10px rgba(11,31,74,.35);}
.leaflet-popup-content{font-size:13px;color:#0B1F4A;line-height:1.5;}
.leaflet-popup-content b{font-size:14px;}
.leaflet-popup-content a{color:#2563eb;font-weight:700;text-decoration:none;}
@media(max-width:860px){.zpg-addrwrap{grid-template-columns:1fr;}.zpg-map{position:static;}.zpg-map iframe{height:340px;}#zpg-worldmap{height:360px;}}

/* ways-to-reach divided bar (replaces 4-box grid) */
.zct-methods{max-width:1100px;margin:0 auto;background:#fff;border:1px solid #eceff3;border-radius:20px;display:flex;flex-wrap:wrap;box-shadow:0 16px 40px rgba(11,31,74,.07);overflow:hidden;}
.zct-method{flex:1 1 0;min-width:220px;padding:32px 26px;border-right:1px solid #eef0f4;text-align:center;transition:background .2s ease;}
.zct-method:last-child{border-right:none;}
.zct-method:hover{background:#fbfcfe;}
.zct-method .mic{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:21px;margin:0 auto 14px;}
.zct-method h3{font-size:16.5px;color:#0B1F4A;font-weight:700;margin:0 0 7px;}
.zct-method p{font-size:13.5px;color:#5b6473;line-height:1.55;margin:0 0 9px;}
.zct-method a{font-size:13.5px;font-weight:700;color:var(--zpg-accent);text-decoration:none;}
.zct-method a:hover{text-decoration:underline;}
@media(max-width:900px){.zct-method{flex-basis:50%;}.zct-method:nth-child(even){border-right:none;}.zct-method:nth-child(1),.zct-method:nth-child(2){border-bottom:1px solid #eef0f4;}}
@media(max-width:520px){.zct-method{flex-basis:100%;border-right:none;border-bottom:1px solid #eef0f4;}.zct-method:last-child{border-bottom:none;}}

/* what happens next steps */
.zct-steps{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.zct-step{text-align:center;position:relative;padding:0 14px;}
.zct-step:not(:last-child)::after{content:"";position:absolute;top:30px;left:64%;width:72%;height:2px;background:transparent;opacity:.4;}
.zct-snum{position:relative;z-index:2;width:62px;height:62px;margin:0 auto 16px;border-radius:50%;background:#fff;border:2px solid var(--zpg-accent);color:var(--zpg-accent);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;box-shadow:0 10px 24px rgba(37,99,235,.14);}
.zct-step h3{font-size:18px;color:#0B1F4A;font-weight:700;margin:0 0 8px;}
.zct-step p{font-size:14.5px;color:#5b6473;line-height:1.6;margin:0;}

@media(max-width:860px){
  .zct-inner{grid-template-columns:1fr;gap:34px;}
  .zct-left h1{font-size:34px;}
  .zct-steps{grid-template-columns:1fr;gap:30px;}
  .zct-step:not(:last-child)::after{display:none;}
}
@media(max-width:560px){.zct-trust{grid-template-columns:1fr;}.zct-formcard .row{grid-template-columns:1fr;}}

/* ---- mobile polish: tighter section rhythm on phones (≤600) ---- */
@media(max-width:600px){
  .zpg-hero{padding:50px 18px 44px;}
  .zpg-sec{padding:50px 18px;}
  .zpg-cta{padding:48px 18px;}
  .zpg-cta-inner{padding:36px 24px;}
  .zpg-head{margin-bottom:30px;}
  .zpg-statement{padding:40px 24px;}
}
