/*
JGKIT Global VI Controller v1.0.0
Purpose:
- establish a single reusable visual system
- do NOT replace page templates
- do NOT change page copy or database content
- keep current page-specific plugins in control of their layouts
*/

:root{
  --jgkit-navy:#102942;
  --jgkit-navy-2:#0b1423;
  --jgkit-navy-3:#173650;
  --jgkit-orange:#ff6900;
  --jgkit-orange-hover:#e95f00;
  --jgkit-text:#14283f;
  --jgkit-muted:#63748a;
  --jgkit-bg:#f5f7fa;
  --jgkit-bg-2:#f8fafc;
  --jgkit-border:#e0e6ec;
  --jgkit-white:#ffffff;

  --jgkit-radius-btn:9px;
  --jgkit-radius-card:16px;
  --jgkit-radius-small:10px;

  --jgkit-shell:1160px;
  --jgkit-shadow:0 18px 44px rgba(19,43,68,.07);
  --jgkit-shadow-soft:0 10px 28px rgba(19,43,68,.05);

  --jgkit-section-y:60px;
  --jgkit-section-y-mobile:44px;
}

/* ---- Shared rhythm ---- */
.jgkit-vi-shell,
.jgkit-products-shell,
.jgkit-running-shell,
.jgkit-factory-shell,
.jgkit-contact-shell{
  width:min(var(--jgkit-shell),calc(100vw - 40px));
  margin-left:auto;
  margin-right:auto;
}

/* ---- Shared typography ---- */
.jgkit-vi-kicker,
.jgkit-products-kicker,
.jgkit-running-kicker,
.jgkit-factory-kicker,
.jgkit-contact-kicker{
  color:var(--jgkit-orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
  line-height:1.3;
}

.jgkit-vi-h1{
  margin:9px 0 14px;
  color:var(--jgkit-navy-2);
  font-size:clamp(44px,5.2vw,68px);
  line-height:.99;
  letter-spacing:-.05em;
}

.jgkit-vi-h2{
  margin:7px 0 12px;
  color:var(--jgkit-navy);
  font-size:clamp(31px,4vw,44px);
  line-height:1.05;
  letter-spacing:-.038em;
}

.jgkit-vi-copy{
  color:var(--jgkit-muted);
  font-size:15px;
  line-height:1.62;
}

/* ---- Shared buttons ---- */
.jgkit-vi-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:45px;
  padding:11px 17px;
  border-radius:var(--jgkit-radius-btn);
  text-decoration:none!important;
  font-size:12.5px;
  font-weight:850;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.jgkit-vi-btn:hover{transform:translateY(-1px)}
.jgkit-vi-btn.primary{
  background:var(--jgkit-orange);
  color:#fff!important;
}
.jgkit-vi-btn.primary:hover{background:var(--jgkit-orange-hover)}
.jgkit-vi-btn.secondary{
  border:1px solid var(--jgkit-border);
  background:#fff;
  color:var(--jgkit-navy)!important;
}
.jgkit-vi-btn.dark{
  background:var(--jgkit-navy);
  color:#fff!important;
}

/* Harmonize buttons already used by the current JGKIT page plugins */
.jgkit-products-btn.primary,
.jgkit-running-btn.primary,
.jgkit-factory-btn.primary,
.jgkit-contact-btn.primary{
  background:var(--jgkit-orange)!important;
  border-radius:var(--jgkit-radius-btn)!important;
}
.jgkit-products-btn.dark,
.jgkit-running-btn.secondary,
.jgkit-contact-btn.secondary{
  border-radius:var(--jgkit-radius-btn)!important;
}

/* ---- Shared cards ---- */
.jgkit-vi-card{
  border:1px solid var(--jgkit-border);
  border-radius:var(--jgkit-radius-card);
  background:#fff;
  box-shadow:var(--jgkit-shadow-soft);
}
.jgkit-vi-card.dark{
  background:var(--jgkit-navy);
  border-color:var(--jgkit-navy);
  color:#fff;
}

/* Existing cards: align radii/border tone without changing layout */
.jgkit-products-path,
.jgkit-products-card,
.jgkit-products-category,
.jgkit-running-range-grid article,
.jgkit-running-product-card,
.jgkit-running-faq-wrap,
.jgkit-contact-card{
  border-color:var(--jgkit-border)!important;
  border-radius:var(--jgkit-radius-card)!important;
}

/* ---- Trust chips ---- */
.jgkit-vi-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:8px 11px;
  border:1px solid var(--jgkit-border);
  border-radius:999px;
  background:#fff;
  color:var(--jgkit-text);
  font-size:10.5px;
  font-weight:800;
}

/* ---- Header polish ---- */
header.site-header,
.site-header{
  background:#fff;
}
.site-header a{
  text-decoration:none;
}

/* Keep main nav clean and consistent */
.site-header nav a,
header nav a{
  font-weight:750;
}

/* ---- Footer polish ---- */
footer,
.site-footer{
  background:var(--jgkit-navy-2);
}
footer a,
.site-footer a{
  text-decoration:none;
}

/* ---- Form fields ---- */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
select{
  border:1px solid var(--jgkit-border);
  border-radius:10px;
}
input:focus,
textarea:focus,
select:focus{
  outline:none;
  border-color:rgba(255,105,0,.7);
  box-shadow:0 0 0 3px rgba(255,105,0,.10);
}

/* ---- Product image rule ---- */
.woocommerce ul.products li.product img,
.jgkit-products-image img,
.jgkit-running-product-image img{
  object-fit:cover;
}

/* ---- Avoid excessive motion ---- */
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto!important;transition:none!important}
}

/* ---- Mobile ---- */
@media(max-width:640px){
  :root{
    --jgkit-section-y:var(--jgkit-section-y-mobile);
  }
  .jgkit-vi-shell,
  .jgkit-products-shell,
  .jgkit-running-shell,
  .jgkit-factory-shell,
  .jgkit-contact-shell{
    width:calc(100vw - 28px);
  }
  .jgkit-vi-h1{font-size:38px}
  .jgkit-vi-copy{font-size:14px}
  .jgkit-vi-btn{width:100%}
}
