/*
 * JAECOO.INFO v7.1.1 — Part 1 / Global visual foundation
 * Global typography, spacing, controls, header offset and card consistency.
 */
:root{
  --jx-brand:#1ecad3;
  --jx-brand-dark:#109da6;
  --jx-brand-soft:#e9fafb;
  --jx-ink:#111827;
  --jx-muted:#667085;
  --jx-line:#e7eaee;
  --jx-surface:#fff;
  --jx-surface-soft:#f6f8fa;
  --jx-radius-sm:10px;
  --jx-radius-control:12px;
  --jx-radius-card:18px;
  --jx-radius-panel:24px;
  --jx-shadow-card:0 10px 30px rgba(16,24,40,.08);
  --jx-header-offset:82px;
  --jx-container-wide:1240px;
  --jx-container-content:880px;
  --jx-container-reading:760px;
}
html{scroll-padding-top:calc(var(--jx-header-offset) + 18px)}
body{
  color:var(--jx-ink);
  font-size:16px;
  line-height:1.62;
  letter-spacing:-.005em;
  overflow-wrap:break-word;
}
body:not(.wp-admin) :where(h1,h2,h3,h4,h5,h6){
  color:var(--jx-ink);
  text-wrap:balance;
  letter-spacing:-.035em;
}
body:not(.wp-admin) h1{font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.06;font-weight:800}
body:not(.wp-admin) h2{font-size:clamp(1.55rem,2.7vw,2.15rem);line-height:1.12;font-weight:750}
body:not(.wp-admin) h3{font-size:clamp(1.08rem,1.6vw,1.35rem);line-height:1.22;font-weight:700}
body:not(.wp-admin) p{max-width:75ch}
.container{width:min(100%,var(--jx-container-wide));max-width:var(--jx-container-wide);padding-inline:clamp(18px,3vw,32px)}
.entry-content,.single-content-card--clean .entry-content{font-size:clamp(16px,1.2vw,18px);line-height:1.72}
.entry-content :where(p,ul,ol,blockquote){margin-block:0 1.25em}
.entry-content :where(h2,h3){scroll-margin-top:calc(var(--jx-header-offset) + 24px)}

/* Header: clearer proportions and reliable content clearance. */
.site-header{
  min-height:var(--jx-header-offset);
  height:var(--jx-header-offset);
  border-bottom-color:rgba(255,255,255,.09);
  box-shadow:0 8px 26px rgba(0,0,0,.12);
}
.header-inner{max-width:1440px;padding-inline:clamp(18px,3vw,36px);gap:clamp(14px,2vw,26px)}
.brand-wrap{min-width:min(230px,24vw)}
.custom-logo-wrap img{max-height:48px}
.jaecoo-menu>li>a{padding-block:30px;font-size:12.5px;letter-spacing:.045em;font-weight:750}
.icon-btn,.mobile-menu-btn{border-radius:12px}
.community-btn{border-radius:12px;box-shadow:0 8px 20px rgba(30,202,211,.22)}
main[id],#primary,.site-main{scroll-margin-top:calc(var(--jx-header-offset) + 18px)}
body:not(.home) .site-main,
body:not(.home) #primary.site-main{
  padding-top:clamp(24px,4vw,48px);
}

/* Shared section rhythm. */
.section-head{margin-bottom:18px;gap:18px}
.section-head h2{font-size:clamp(18px,2vw,24px);font-weight:800;text-transform:none;letter-spacing:-.035em}
.section-head a{font-size:13px;font-weight:700}
.page-header,.archive-header{margin-bottom:clamp(22px,3vw,36px)}
.page-header p,.archive-header p,.page-intro{color:var(--jx-muted);font-size:clamp(15px,1.2vw,17px);line-height:1.65}

/* One coherent card language without altering component structure. */
:where(.guide-panel,.popular-panel,.service-map-card,.docs-card,.community-strip,
.archive-card,.single-content-card,.page-content-card,.sidebar-search,.sidebar-card,
.site-sidebar .widget,.reader-path-card,.engagement-hub,.jlegal-card){
  border-color:var(--jx-line);
  border-radius:var(--jx-radius-card);
  box-shadow:var(--jx-shadow-card);
}
:where(.vehicle-card,.doc-list a,.topic-grid a,.drawer-card,.engage-card){border-radius:14px}
.post-card{border-radius:16px}
:where(.guide-panel,.popular-panel,.service-map-card,.docs-card,.reader-path-card,.engagement-hub,.archive-card){
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
@media (hover:hover){
  :where(.guide-panel,.popular-panel,.service-map-card,.docs-card,.reader-path-card,.engagement-hub,.archive-card):hover{
    border-color:rgba(30,202,211,.34);
    box-shadow:0 16px 42px rgba(16,24,40,.10);
  }
}

/* Controls and interactive states. */
body:not(.wp-admin) :where(input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=url],input[type=number],input[type=date],select,textarea){
  min-height:48px;
  border:1px solid #d9dfe4;
  border-radius:var(--jx-radius-control);
  padding:11px 14px;
  background:#fff;
  color:var(--jx-ink);
  font-size:16px;
  line-height:1.35;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
body:not(.wp-admin) textarea{min-height:130px;resize:vertical}
body:not(.wp-admin) :where(input,select,textarea):focus{
  outline:none;
  border-color:var(--jx-brand-dark);
  box-shadow:0 0 0 4px rgba(30,202,211,.14);
}
body:not(.wp-admin) :where(button,.button,.wp-element-button,input[type=submit]){border-radius:var(--jx-radius-control)}
body:not(.wp-admin) a:focus-visible,
body:not(.wp-admin) button:focus-visible{
  outline:3px solid rgba(30,202,211,.55);
  outline-offset:3px;
}

/* Long titles should not break card geometry. */
:where(.post-card h3,.archive-card h2,.archive-card h3,.vehicle-card strong,.doc-list strong){
  overflow-wrap:anywhere;
}
.archive-card :where(h2,h3){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Footer spacing and legibility only; structure remains unchanged. */
.site-footer{margin-top:clamp(48px,7vw,88px)}
.site-footer :where(p,a,small){line-height:1.55}
.site-footer a:focus-visible{outline-color:var(--jx-brand)}

@media(max-width:980px){
  :root{--jx-header-offset:68px}
  .site-header{height:var(--jx-header-offset);min-height:var(--jx-header-offset)}
  .header-inner{padding-inline:16px}
  .brand-wrap{min-width:0;flex:1}
  .custom-logo-wrap img{max-height:42px;max-width:210px}
  body:not(.home) .site-main,
  body:not(.home) #primary.site-main{padding-top:26px}
  .container{padding-inline:18px}
  .site-footer{margin-top:52px}
}
@media(max-width:640px){
  body{font-size:16px;line-height:1.58}
  body:not(.wp-admin) h1{font-size:clamp(29px,9vw,36px);line-height:1.08}
  body:not(.wp-admin) h2{font-size:clamp(23px,6.6vw,28px)}
  .section-head{align-items:flex-end;margin-bottom:14px}
  .section-head h2{font-size:20px}
  :where(.guide-panel,.popular-panel,.service-map-card,.docs-card,.community-strip,
  .archive-card,.single-content-card,.page-content-card,.sidebar-search,.sidebar-card,
  .site-sidebar .widget,.reader-path-card,.engagement-hub,.jlegal-card){border-radius:16px}
  .single-content-card--clean .entry-content{padding-inline:20px}
  body:not(.wp-admin) :where(input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=url],input[type=number],input[type=date],select,textarea){font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
