/* finesse · register=brand · shared Hertz shell · full navigation on every route */
:root { --hertz-orange:#ef4d22; --hertz-orange-dark:#d93d16; --hertz-ink:#171716; --hertz-paper:#f5f5f3; --hertz-nav-h:62px; --hertz-max:1380px; }
* { box-sizing:border-box; }
html, body { overflow-x:clip; }
a { color:inherit; text-decoration:none; }
.site-header { position:fixed; z-index:30; top:0; left:0; width:100%; height:var(--hertz-nav-h); color:#fff; background:linear-gradient(180deg,#fb5928 0%,#e84016 100%); box-shadow:0 2px 14px rgba(0,0,0,.12); }
.header-inner { position:relative; width:min(100%,var(--hertz-max)); height:100%; margin:0 auto; display:flex; justify-content:space-between; align-items:center; padding:0 32px; }
.brand-mark { display:inline-flex; align-items:center; gap:13px; min-width:0; color:#fff; }
.brand-mark img { display:block; width:174px; height:auto; filter:brightness(0) invert(1); }
.header-brand-divider { width:1px; height:22px; background:rgba(255,255,255,.5); }
.header-brand-name { color:#fff; font-size:15px; font-weight:700; letter-spacing:.12em; white-space:nowrap; }
.primary-nav { position:absolute; left:50%; display:flex; align-items:center; justify-content:center; gap:10px; min-width:0; transform:translateX(-50%); }
.primary-nav a { padding:8px 0; color:rgba(255,255,255,.86) !important; font-size:11px; font-weight:700; white-space:nowrap; transition:color .2s ease,opacity .2s ease; }
.primary-nav a:hover, .primary-nav a:focus-visible, .primary-nav a[aria-current="page"] { color:#fff; opacity:.75; }
.header-quick { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:0 13px; border:1px solid rgba(255,255,255,.62); color:#fff !important; font-size:11px; font-weight:700; white-space:nowrap; transition:background .2s ease,color .2s ease; }
.header-quick:hover, .header-quick:focus-visible { color:var(--hertz-orange) !important; background:#fff; }
/* Covers both the current shared header and older cached pages that still use .header. */
.site-header a, .site-header a:visited, .header a, .header a:visited { color:#fff !important; }
.primary-nav a:hover, .primary-nav a:focus-visible, .primary-nav a[aria-current="page"] { color:#fff !important; opacity:.75; }
.primary-nav .nav-menu { position:relative; display:flex; align-items:center; flex:0 0 auto; height:100%; }
.primary-nav .nav-menu-trigger { display:inline-flex; align-items:center; gap:0; min-height:36px; padding:8px 0; border:0; color:rgba(255,255,255,.86); background:transparent; font:inherit; font-size:11px; font-weight:700; white-space:nowrap; cursor:pointer; transition:color .2s ease,opacity .2s ease; }
.primary-nav .nav-menu-trigger span { margin-left:2px; color:rgba(255,255,255,.82); font-size:11px; line-height:1; transform:translateY(-1px); transition:transform .25s ease; }
.primary-nav .nav-menu-trigger:hover, .primary-nav .nav-menu-trigger:focus-visible, .primary-nav .nav-menu-trigger[aria-current="page"] { color:#fff; opacity:.75; }
.primary-nav .nav-menu.is-open .nav-menu-trigger span { transform:translateY(1px) rotate(180deg); }
.nav-menu-panel { position:absolute; z-index:80; top:calc(100% + 14px); left:50%; width:min(650px,calc(100vw - 48px)); padding:24px; color:#f6f6f2; background:#171716; border-top:4px solid var(--hertz-orange); box-shadow:0 18px 45px rgba(0,0,0,.25); opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,-8px); transition:opacity .24s ease,visibility .24s ease,transform .24s ease; }
.nav-menu:hover .nav-menu-panel, .nav-menu:focus-within .nav-menu-panel, .nav-menu.is-open .nav-menu-panel { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0); }
.nav-menu-intro { display:flex; justify-content:space-between; align-items:end; gap:24px; padding-bottom:19px; border-bottom:1px solid rgba(255,255,255,.17); }
.nav-menu-intro span { color:#ff7952; font-size:10px; font-weight:700; letter-spacing:.16em; }
.nav-menu-intro strong { color:#fff; font-size:20px; line-height:1.15; }
.nav-menu-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding-top:13px; }
.primary-nav .nav-menu-panel .nav-menu-links a { display:grid; gap:4px; min-height:106px; padding:14px 12px 13px; color:#fff !important; background:#242422; border:1px solid rgba(255,255,255,.08); opacity:1; transition:background .2s ease,border-color .2s ease,transform .2s ease; }
.primary-nav .nav-menu-panel .nav-menu-links a:hover, .primary-nav .nav-menu-panel .nav-menu-links a:focus-visible { color:#fff !important; background:var(--hertz-orange); border-color:var(--hertz-orange); transform:translateY(-3px); }
.nav-menu-links a span { color:#ff7952; font-size:10px; font-weight:700; letter-spacing:.16em; }
.nav-menu-links a strong { font-size:18px; line-height:1.2; }
.nav-menu-links a small { align-self:end; color:#aaa; font-size:9px; font-weight:700; letter-spacing:.13em; }
.nav-menu-links a:hover span, .nav-menu-links a:focus-visible span, .nav-menu-links a:hover small, .nav-menu-links a:focus-visible small { color:rgba(255,255,255,.78); }
.product-section { padding-bottom:58px !important; }
.product-section .view-all { margin-top:32px; padding-top:20px; }
.site-header a:focus-visible, .site-footer a:focus-visible, .subpage-btn:focus-visible { outline:2px solid var(--hertz-orange); outline-offset:4px; }
.site-footer { padding:56px 0 32px; color:#aaa; background:#0d0d0d; }
.site-footer-inner { width:min(var(--hertz-max),calc(100% - 64px)); margin:0 auto; display:grid; grid-template-columns:minmax(170px,.75fr) minmax(430px,1.55fr) auto; gap:48px; align-items:start; }
.site-footer-brand { display:grid; gap:17px; }
.site-footer-brand-lockup { display:flex; align-items:center; gap:12px; color:#fff; }
.site-footer-brand-lockup img { display:block; width:150px; filter:brightness(0) invert(1); }
.site-footer-brand-lockup span { color:#fff; font-size:16px; font-weight:700; letter-spacing:.12em; }
.site-footer-contact { display:grid; gap:8px; font-size:12px; }
.site-footer-contact a, .site-footer-contact strong { color:#fff; font-weight:700; }
.site-footer-contact-row { display:flex; gap:12px; }
.site-footer-contact-row > span { min-width:28px; color:#888; }
.site-footer-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.site-footer-nav h2 { margin:0 0 12px; color:#fff; font-size:12px; font-weight:700; }
.site-footer-nav a { display:block; padding:5px 0; color:#aaa; font-size:12px; line-height:1.5; transition:color .2s ease,padding-left .2s ease; }
.site-footer-nav a:hover, .site-footer-nav a:focus-visible { padding-left:5px; color:#fff; }
.site-footer-partner { justify-self:end; width:144px; filter:brightness(0) invert(1); opacity:.82; }
.site-footer-bottom { width:min(var(--hertz-max),calc(100% - 64px)); margin:38px auto 0; padding-top:18px; border-top:1px solid rgba(255,255,255,.16); color:#777; font-size:11px; }
.subpage-main { min-height:100vh; padding-top:var(--hertz-nav-h); }
.subpage-btn { display:inline-flex; align-items:center; gap:12px; min-height:46px; padding:0 20px; color:#fff; background:var(--hertz-orange); font-size:12px; font-weight:700; letter-spacing:.08em; transition:background .2s ease,transform .2s ease; }
.subpage-btn:hover { background:var(--hertz-orange-dark); transform:translateY(-2px); }
/* Give display titles the extra breathing room needed by the Chinese glyphs. */
.hero h1, .title, .section h2, .models h2, .copy h2, .end h2, .news h2, .detail-hero-copy h1, .detail-prose h2, .faq-answer h2 { line-height:1.06 !important; }
@media (max-width:900px) {
  .site-header { height:104px; }
  .header-inner { position:static; height:104px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; grid-template-rows:58px 46px; gap:0 14px; padding:0 19px; }
  .brand-mark { grid-column:1; grid-row:1; }
  .brand-mark img { width:140px; }
  .primary-nav { position:static; grid-column:1 / -1; grid-row:2; justify-content:flex-start; gap:22px; overflow-x:auto; padding:0 1px 10px; transform:none; scrollbar-width:none; }
  .primary-nav::-webkit-scrollbar { display:none; }
  .primary-nav a { font-size:11px; }
  .primary-nav .nav-menu { height:auto; }
  .primary-nav .nav-menu-trigger { font-size:11px; }
  .nav-menu-panel { position:fixed; top:104px; right:18px; left:18px; width:auto; max-height:calc(100vh - 122px); overflow:auto; transform:translateY(-8px); }
  .nav-menu:hover .nav-menu-panel, .nav-menu:focus-within .nav-menu-panel, .nav-menu.is-open .nav-menu-panel { transform:translateY(0); }
  .header-quick { grid-column:3; grid-row:1; min-height:32px; padding:0 10px; font-size:10px; }
  .subpage-main { padding-top:104px; }
  .site-footer-inner { grid-template-columns:1fr; gap:34px; }
  .site-footer-partner { justify-self:start; }
}
@media (max-width:560px) {
  .header-inner { padding:0 18px; }
  .brand-mark img { width:120px; }
  .header-brand-divider { height:19px; }
  .header-brand-name { font-size:13px; }
  .primary-nav { gap:20px; padding-bottom:9px; }
  .nav-menu-intro { display:grid; gap:9px; align-items:start; }
  .nav-menu-intro strong { font-size:18px; }
  .nav-menu-links { grid-template-columns:1fr; }
  .header-quick { padding:0 8px; }
  .site-footer { padding-top:46px; }
  .site-footer-inner, .site-footer-bottom { width:calc(100% - 36px); }
  .site-footer-nav { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 18px; }
}
