:root{
  --jh-blue:#06145F;
  --jh-blue2:#0B1F7A;
  --jh-bg:#F5F7FF;
  --jh-text:#1d2733;
  --jh-muted:#64748b;
  --jh-border:#dce2f2;
  --jh-white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body,
button,
input,
textarea,
select,
.jh-site{
  margin:0;
  font-family:"Manrope","PingFang SC","Microsoft YaHei",Arial,sans-serif!important;
  color:var(--jh-text);
  background:#fff;
}
a{text-decoration:none}
img{max-width:100%;display:block}
.jh-container{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:0 20px;
  box-sizing:border-box;
}

/* Header */
.jh-header{position:sticky;top:0;z-index:9999;background:rgba(255,255,255,.97);box-shadow:0 4px 22px rgba(6,20,95,.09)}
.admin-bar .jh-header{top:32px}
.jh-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.jh-logo img{height:74px;width:auto;max-width:340px;object-fit:contain}
.jh-nav{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.jh-nav a{color:var(--jh-blue);font-size:15.5px;font-weight:800}
.jh-nav a:hover{color:var(--jh-blue2)}
.jh-actions{display:flex;align-items:center;gap:10px}
.jh-lang,.jh-menu-toggle{border:1.5px solid var(--jh-blue);background:#fff;color:var(--jh-blue);border-radius:999px;padding:9px 15px;font-weight:800;cursor:pointer}
.jh-lang:hover,.jh-menu-toggle:hover{background:var(--jh-blue);color:#fff}
.jh-menu-toggle{display:none;border-radius:8px}

/* Hero */
.jh-hero{position:relative;min-height:720px;background-size:cover;background-position:center;display:flex;align-items:center}
.jh-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,95,.91),rgba(6,20,95,.62),rgba(6,20,95,.12))}
.jh-hero-content{position:relative;z-index:1;max-width:850px;color:#fff}
.jh-eyebrow{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:145px;
  background:rgba(6,20,95,.75);
  color:#fff!important;
  border:2px solid rgba(255,255,255,.9);
  border-radius:999px;
  padding:10px 20px;
  font-weight:900;
  font-size:15px;
  letter-spacing:.04em;
  margin:0 0 40px!important;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
  text-transform:none!important;
}
.jh-hero h1{font-size:clamp(44px,5vw,76px);line-height:1.06;margin:0 0 22px;font-weight:900}
.jh-hero .subtitle{font-size:clamp(20px,2vw,28px);font-weight:800;line-height:1.45;margin:0 0 14px}
.jh-hero .desc{font-size:18px;line-height:1.7;margin:0 0 34px;max-width:760px}
.jh-buttons{display:flex;gap:16px;flex-wrap:wrap}
.jh-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;border-radius:6px;font-weight:900;border:2px solid transparent;transition:.2s ease;cursor:pointer}
.jh-btn-primary{background:var(--jh-blue);color:#fff;border-color:var(--jh-blue)}
.jh-btn-primary:hover{background:var(--jh-blue2);border-color:var(--jh-blue2)}
.jh-btn-secondary{background:transparent;color:#fff;border-color:#fff}
.jh-btn-secondary:hover{background:#fff;color:var(--jh-blue)}

/* Stats */
.jh-stats{
  background:var(--jh-blue);
  color:#fff;
  display:flex!important;
  justify-content:center;
  width:100%;
}
.jh-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  width:100%;
  max-width:1180px;
  margin:0 auto;
}
.jh-stat{
  text-align:center;
  padding:42px 18px;
  border-right:1px solid rgba(255,255,255,.18);
}
.jh-stat:last-child{border-right:0}
.jh-stat strong{
  display:block;
  font-size:42px;
  line-height:1;
  margin-bottom:10px;
}

/* General sections */
.jh-section{padding:90px 0}
.jh-light{background:var(--jh-bg)}
.jh-section h1,.jh-section h2{color:var(--jh-blue);font-weight:900;line-height:1.12;margin:0 0 24px}
.jh-section h1{font-size:clamp(40px,4.2vw,58px)}
.jh-section h2{font-size:clamp(34px,3.5vw,48px)}
.jh-section h3{color:var(--jh-blue);font-size:24px;margin:0}
.jh-section p{font-size:17px;line-height:1.85;margin:0 0 16px;color:#263244}
.jh-center{text-align:center}
.jh-intro{max-width:860px;margin:0 auto 42px!important;text-align:center;color:var(--jh-muted)!important}
.jh-two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center}
.jh-image-frame{border-radius:18px;overflow:hidden;box-shadow:0 18px 46px rgba(6,20,95,.18)}
.jh-image-frame img{width:100%;height:100%;object-fit:cover}

/* Products */
.jh-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.jh-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(6,20,95,.08);transition:.25s ease}
.jh-card:hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(6,20,95,.14)}
.jh-product-card img{width:100%;height:190px;object-fit:cover}
.jh-card-body{padding:22px;text-align:center}

/* Partners + Brands logo wall - larger logos, less empty space */
.jh-logo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:26px;
  align-items:stretch;
}
.jh-logo-box{
  background:#fff;
  border-radius:18px;
  min-height:210px;
  padding:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 28px rgba(6,20,95,.08);
  border:1px solid rgba(6,20,95,.08);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.jh-logo-box:hover{
  transform:translateY(-5px);
  box-shadow:0 16px 36px rgba(6,20,95,.16);
  border-color:rgba(6,20,95,.22);
}
.jh-logo-box img{
  width:100%;
  max-width:100%;
  height:170px;
  object-fit:contain;
}
.jh-logo-grid img{
    width:100%;
    height:180px!important;
    object-fit:contain;

    background:#fff;
    padding:10px;
    border-radius:14px;
    box-shadow:0 8px 24px rgba(6,20,95,.08);
}

/* Contact */
.jh-contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:52px;align-items:start}
.jh-info-box{background:var(--jh-bg);border-left:5px solid var(--jh-blue);border-radius:12px;padding:28px;margin-top:24px}
.jh-info-box p{margin-bottom:10px}
.jh-qr-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}
.jh-qr-box{background:#fff;padding:18px;border-radius:14px;box-shadow:0 8px 24px rgba(6,20,95,.08);text-align:center}
.jh-qr-box img{height:160px;margin:0 auto 12px;object-fit:contain}
.jh-form{background:var(--jh-bg);padding:38px;border-radius:16px;box-shadow:0 12px 32px rgba(6,20,95,.12)}
.jh-form input,.jh-form textarea{width:100%;padding:15px;margin-bottom:16px;border:1px solid var(--jh-border);border-radius:7px;font-size:15px}
.jh-form textarea{min-height:150px;resize:vertical}
.jh-message-ok{background:#e8fff2;color:#056b35;border:1px solid #9ee6bd;border-radius:8px;padding:12px 14px;font-weight:800;margin-bottom:18px}

/* Footer */
.jh-footer{background:var(--jh-blue);color:#fff;padding:46px 0 28px}
.jh-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
.jh-footer img{height:66px;background:#fff;border-radius:8px;padding:8px;margin-bottom:16px}
.jh-footer p{line-height:1.7;margin:0 0 10px;color:#fff}
.jh-footer h3{margin:0 0 14px;color:#fff}
.jh-footer a{color:#fff}
.jh-footer a:hover{text-decoration:underline}
.jh-copyright{border-top:1px solid rgba(255,255,255,.2);margin-top:32px;padding-top:20px;text-align:center;opacity:.92}

/* Language */
.zh{display:none}
body.zh-mode .en{display:none!important}
body.zh-mode .zh{display:inline!important}
body.zh-mode p.zh,
body.zh-mode h1.zh,
body.zh-mode h2.zh,
body.zh-mode h3.zh,
body.zh-mode div.zh,
body.zh-mode section.zh{display:block!important}
body.zh-mode .jh-stat .zh,
body.zh-mode .jh-nav .zh{display:inline!important}

/* Fix hero language badge display */
body:not(.zh-mode) .jh-eyebrow.zh{display:none!important}
body:not(.zh-mode) .jh-eyebrow.en{display:inline-flex!important}
body.zh-mode .jh-eyebrow.en{display:none!important}
body.zh-mode .jh-eyebrow.zh{display:inline-flex!important}

/* Responsive */
@media(max-width:1100px){
  .jh-header-inner{align-items:flex-start;flex-direction:column}
  .jh-logo img{height:auto;max-width:300px}
  .jh-stats-grid,.jh-product-grid{grid-template-columns:repeat(2,1fr)}
  .jh-logo-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
  .jh-logo-box{min-height:190px}
  .jh-logo-box img{height:155px}
  .jh-two-col,.jh-contact-grid,.jh-footer-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .admin-bar .jh-header{top:0}

  .jh-container{width:min(92vw,1180px)}

  .jh-header-inner{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:10px;
  }

  .jh-logo img{
    max-width:210px;
    height:auto;
  }

  .jh-actions{
    width:auto;
    display:flex;
    align-items:center;
    gap:8px;
  }

  .jh-menu-toggle{
    display:inline-flex;
  }

  .jh-nav{
    position:fixed;
    top:0;
    right:-320px;
    width:300px;
    max-width:82vw;
    height:100vh;
    background:#fff;
    z-index:10000;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:90px 24px 24px;
    box-shadow:-12px 0 30px rgba(6,20,95,.18);
    transition:right .28s ease;
    overflow-y:auto;
  }

  .jh-nav.open{
    right:0;
  }

  .jh-nav a{
    width:100%;
    padding:15px 0;
    font-size:17px;
    border-bottom:1px solid #eef1f8;
  }

  body.menu-open::before{
    content:"";
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.38);
    z-index:9998;
  }

  body.menu-open{
    overflow:hidden;
  }

  .jh-hero{min-height:620px}

  .jh-hero:before{
    background:linear-gradient(90deg,rgba(6,20,95,.92),rgba(6,20,95,.62));
  }

  .jh-eyebrow{
    font-size:14px;
    padding:9px 16px;
    min-width:auto;
  }

  .jh-stats-grid,
  .jh-product-grid,
  .jh-logo-grid,
  .jh-qr-grid{
    grid-template-columns:1fr;
  }

  .jh-section{padding:64px 0}

  .jh-product-card img{height:220px}

  .jh-logo-box{
    min-height:180px;
    padding:8px;
  }

  .jh-logo-box img{
    height:155px;
    max-width:100%;
  }
}
/* WPForms */

.wpforms-container{
    margin:0!important;
}

.wpforms-form input,
.wpforms-form textarea,
.wpforms-form select{

    border:1px solid #dce2f2!important;
    border-radius:8px!important;

    padding:14px!important;

    font-size:16px!important;

    box-shadow:none!important;
}

.wpforms-form textarea{
    min-height:180px!important;
}

.wpforms-submit{

    background:#06145F!important;

    color:#fff!important;

    border-radius:8px!important;

    padding:14px 34px!important;

    font-size:17px!important;

    font-weight:700!important;

    border:none!important;
}

.wpforms-submit:hover{

    background:#0B1F7A!important;

}

.wpforms-field-label{
    font-weight:700!important;
    color:#06145F!important;
}