/* SourceUSA homepage (approved mockup). */
:root{--hm-navy:#0a2a5c;--hm-navy2:#0e3a7c;--hm-blue:#1554b8;--hm-blue2:#1d6fe0;--hm-red:#d71920;--hm-red2:#b8121a;--hm-ink:#0c1f3c;--hm-muted:#5d6f84;--hm-line:#dce4ed;--hm-bg:#f3f6fa}
*{box-sizing:border-box}
html,body{margin:0;max-width:100%;overflow-x:clip}
body.hm{background:#fff;color:var(--hm-ink);font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;font-size:14px;line-height:1.4}
.hm a{color:inherit}
.hm img{max-width:100%}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hm-wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 16px}

/* ---------- header ---------- */
.hm-header{background:#fff;border-bottom:1px solid var(--hm-line);box-shadow:0 2px 8px rgba(10,42,92,.06);position:relative;z-index:20}
.hm-bar{display:flex;align-items:center;gap:14px;min-height:74px}
.hm-logo img{display:block;height:54px;width:auto}
.hm-burger{display:none}
.hm-menu{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
.hm-nav{display:flex;align-items:center;gap:2px;flex:1;justify-content:center;flex-wrap:nowrap}
.hm-nav a{display:inline-flex;align-items:center;gap:5px;padding:24px 6px 21px;font-size:13px;white-space:nowrap;font-weight:700;text-decoration:none;color:var(--hm-ink);border-bottom:3px solid transparent}
.hm-nav a svg{color:var(--hm-navy2)}
.hm-nav a:hover,.hm-nav a.active{color:var(--hm-red);border-bottom-color:var(--hm-red)}
.hm-nav a.active svg,.hm-nav a:hover svg{color:var(--hm-red)}
.hm-actions{display:flex;gap:10px}
.hm-login,.hm-join{display:inline-flex;align-items:center;justify-content:center;min-width:80px;padding:9px 14px;white-space:nowrap;border-radius:6px;font-weight:800;font-size:14px;text-decoration:none}
.hm-login{border:1.5px solid #b9c6d6;color:var(--hm-navy)!important;background:#fff}
.hm-join{background:var(--hm-red);color:#fff!important;border:1.5px solid var(--hm-red)}
.hm-login:hover{border-color:var(--hm-navy)}.hm-join:hover{background:var(--hm-red2)}
.hm-lang{display:flex;align-items:center;gap:4px;font-size:11px}
.hm-lang-label{font-weight:700;color:#41536a;white-space:nowrap}
.hm-lang button{border:1px solid transparent;background:none;border-radius:6px;padding:5px 6px;font:600 12px Inter,Arial,sans-serif;color:var(--hm-ink);cursor:pointer;white-space:nowrap}
.hm-lang button.on{border-color:#b9c6d6;background:#f3f7fc}
.hm-header .sourceusa-language-switch{display:none!important}

/* ---------- layout ---------- */
.hm-layout{display:grid;grid-template-columns:minmax(0,1fr) 226px;gap:14px;padding-top:14px;padding-bottom:14px;align-items:start}
.hm-main{display:flex;flex-direction:column;gap:14px;min-width:0}

/* ---------- hero ---------- */
.hm-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:34px 34px 26px;border-radius:4px;color:#fff;background:linear-gradient(90deg,rgba(3,22,52,.95) 0%,rgba(4,33,76,.86) 48%,rgba(6,44,96,.55) 100%),url("home/hero-bg.jpg?v=1") right center/cover no-repeat,#062a5c;min-height:228px}
.hm-hero h1{margin:0 0 10px;font:900 clamp(19px,1.68vw,28px)/1.15 Montserrat,Inter,Arial,sans-serif;letter-spacing:.2px;text-transform:uppercase}
.hm-hero h1 .hl{color:#35c6ff}
.hm-hero p{margin:0 0 16px;font-size:15px;color:#e3edf9}
.hm-search{display:flex;max-width:720px;background:#fff;border-radius:6px;padding:4px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.hm-search select{border:0;border-right:1px solid var(--hm-line);background:#fff;padding:0 12px;font:700 14px Inter,Arial,sans-serif;color:var(--hm-ink);border-radius:4px 0 0 4px;cursor:pointer}
.hm-search input{flex:1;min-width:0;border:0;outline:0;padding:12px 14px;font-size:15px;color:var(--hm-ink)}
.hm-search button{border:0;border-radius:5px;background:var(--hm-red);color:#fff;font-weight:800;font-size:15px;padding:0 34px;cursor:pointer}
.hm-search button:hover{background:var(--hm-red2)}
.hm-popular{margin-top:12px;font-size:12px;color:#dbe7f6;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.hm-popular a{color:#fff;text-decoration:underline}
.hm-checks{list-style:none;margin:0;padding:0 8px 0 0;display:flex;flex-direction:column;gap:10px}
.hm-checks li{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;white-space:nowrap}
.hm-checks svg{color:#fff;fill:rgba(255,255,255,.1)}

/* ---------- stats band ---------- */
.hm-stats{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;background:linear-gradient(90deg,#0c2f68,#11408a);color:#fff;border-radius:4px;padding:14px 16px 14px 22px}
.hm-stat-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.hm-stat{display:flex;align-items:center;gap:14px;padding:4px 16px;border-right:1px solid rgba(255,255,255,.18)}
.hm-stat:last-child{border-right:0}
.hm-stat svg{flex:none;color:#fff;opacity:.95}
.hm-stat b{display:block;font:800 26px/1.05 Montserrat,Inter,Arial,sans-serif}
.hm-stat span{font-size:12.5px;color:#d8e5f6}
.hm-stat.hidden{display:none}
.hm-buy{display:flex;align-items:center;gap:12px;background:#eef3fb;color:var(--hm-navy)!important;border-radius:6px;padding:8px 14px 8px 8px;text-decoration:none}
.hm-buy img{width:118px;height:auto;border-radius:4px}
.hm-buy>span{display:flex;flex-direction:column;align-items:flex-start}
.hm-buy b{font:900 21px/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;color:var(--hm-navy);letter-spacing:.3px}
.hm-buy b.red{color:var(--hm-red);margin-bottom:6px}
.hm-buy-btn{background:var(--hm-navy);color:#fff;font-weight:700;font-size:12px;padding:6px 12px;border-radius:4px;white-space:nowrap}
.hm-buy:hover .hm-buy-btn{background:var(--hm-blue)}

/* ---------- action cards ---------- */
.hm-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.hm-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:10px 12px;padding:16px;border-radius:4px;color:#fff!important;text-decoration:none;min-height:132px}
.hm-card.blue{background:linear-gradient(160deg,#1a5cc4,#0f48a3)}
.hm-card.navy{background:linear-gradient(160deg,#0e2f68,#08214d)}
.hm-card.red{background:linear-gradient(160deg,#e0262d,#b8121a)}
.hm-card-ic{width:44px;height:44px;border-radius:8px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center}
.hm-card-body b{display:block;font-size:15px;margin-bottom:4px}
.hm-card-body .d{display:block;font-size:12px;line-height:1.45;color:rgba(255,255,255,.88)}
.hm-card-btn{grid-column:1/-1;justify-self:stretch;background:#fff;color:var(--hm-navy);font-weight:800;font-size:13px;text-align:center;padding:9px 10px;border-radius:4px}
.hm-card.red .hm-card-btn{color:var(--hm-red)}
.hm-card:hover .hm-card-btn{filter:brightness(.95)}

/* ---------- products ---------- */
.hm-products{border:1px solid var(--hm-line);border-radius:4px;padding:0 12px 14px;background:#fff}
.hm-tabs{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--hm-line);margin-bottom:12px}
.hm-tabs [role=tablist]{display:flex;gap:6px;overflow-x:auto}
.hm-tabs [role=tab]{border:0;background:none;padding:13px 14px 11px;font:600 13.5px Inter,Arial,sans-serif;color:#41536a;cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}
.hm-tabs [role=tab].active{color:var(--hm-red);border-bottom-color:var(--hm-red);font-weight:800}
.hm-arrows{display:flex;gap:6px}
.hm-arrows button{width:30px;height:30px;border:1px solid var(--hm-line);background:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--hm-ink)}
.hm-arrows button:disabled{opacity:.35;cursor:default}
.hm-product-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;min-height:250px}
.hm-pcard{display:flex;flex-direction:column;border:1px solid var(--hm-line);border-radius:4px;overflow:hidden;text-decoration:none;color:var(--hm-ink)!important;background:#fff;min-width:0;transition:box-shadow .15s}
.hm-pcard:hover{box-shadow:0 6px 18px rgba(10,42,92,.12)}
.hm-pimg{height:120px;background:linear-gradient(135deg,#f9fbfe,#e6edf6);display:flex;align-items:center;justify-content:center;font-size:42px;overflow:hidden}
.hm-pimg img{width:100%;height:100%;object-fit:contain;background:#fff}
.hm-pbody{padding:9px 10px 11px;display:flex;flex-direction:column;gap:2px;min-width:0}
.hm-pbody b{font-size:12.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hm-psub{font-size:11.5px;color:#41536a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-price{font-weight:800;color:var(--hm-red);font-size:14.5px;margin:3px 0}
.hm-price.rq{font-size:12px}
.hm-pmeta{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--hm-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hm-pmeta svg{flex:none}
.hm-empty{grid-column:1/-1;align-self:center;text-align:center;color:var(--hm-muted)}

/* ---------- services ---------- */
.hm-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.hm-svc{display:flex;flex-direction:column;border-radius:4px;overflow:hidden;text-decoration:none;color:#fff!important;background:var(--hm-navy)}
.hm-svc-img{height:118px;background:center/cover no-repeat}
.hm-svc-body{display:flex;flex-direction:column;flex:1;padding:12px 14px 14px;background:linear-gradient(180deg,#0e3474,#0a2a5c)}
.hm-svc-h{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.hm-svc-h b{font:800 14.5px/1.2 Montserrat,Inter,Arial,sans-serif;text-transform:uppercase}
.hm-svc ul{margin:0 0 12px;padding:0 0 0 30px;font-size:12px;line-height:1.6;color:#dbe7f6;flex:1}
.hm-svc li::marker{color:#fff}
.hm-svc-btn{background:var(--hm-red);color:#fff;font-weight:800;font-size:12.5px;text-align:center;padding:10px;border-radius:3px}
.hm-svc:hover .hm-svc-btn{background:var(--hm-red2)}

/* ---------- sidebar ---------- */
.hm-side{display:flex;flex-direction:column;gap:12px;min-width:0}
.hm-side .sx-ad{border-radius:4px}
.hm-adv{display:flex;flex-direction:column;gap:12px;padding:18px 16px 16px;border-radius:4px;color:#fff!important;text-decoration:none;min-height:420px;background:linear-gradient(180deg,rgba(8,30,70,.96) 0%,rgba(10,42,92,.88) 52%,rgba(10,42,92,.55) 100%),url("service-finance.jpg") center bottom/cover no-repeat,#0a2a5c}
.hm-adv>b>span{display:block;font:900 25px/1.15 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.3px;text-transform:uppercase}
.hm-adv ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:13px;flex:1}
.hm-adv li{display:flex;gap:8px;align-items:flex-start}
.hm-adv li svg{flex:none;color:#4fb3ff;margin-top:1px}
.hm-adv-btn{background:var(--hm-red);color:#fff;text-align:center;font:800 16px Inter,Arial,sans-serif;padding:12px;border-radius:4px;letter-spacing:.3px}
.hm-adv:hover .hm-adv-btn{background:var(--hm-red2)}

/* ---------- bottom strip + footer ---------- */
.hm-bottom{padding-bottom:14px}
.hm-footer{background:linear-gradient(180deg,#0a2a5c,#071f47);color:#fff;padding:26px 0 20px}
.hm-foot{display:grid;grid-template-columns:1.3fr 1.3fr 1fr 1fr;gap:28px;align-items:start}
.hm-foot-brand{display:flex;gap:16px;align-items:center}
.hm-foot-brand img{height:64px;width:auto;flex:none}
.hm-foot-brand p{margin:0;font-size:12.5px;color:#d5e1f1;line-height:1.5}
.hm-foot-col{display:flex;flex-direction:column;gap:6px;font-size:12.5px;padding-left:22px;border-left:1px solid rgba(255,255,255,.15)}
.hm-foot-col>b{font-size:14px;margin-bottom:4px}
.hm-foot-col a{color:#d5e1f1;text-decoration:none}
.hm-foot-col a:hover{color:#fff;text-decoration:underline}
.hm-foot-col .two{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px}
.hm-foot-col .two>a{display:block}
.hm-socials{display:flex;gap:14px;color:#fff;margin:2px 0 8px}
.hm-copy{margin:0;font-size:11.5px;color:#b8c8de}

/* ---------- responsive ---------- */
@media(max-width:1360px){.hm-lang-label{display:none}}
@media(max-width:1240px){.hm-nav a{padding-left:5px;padding-right:5px;font-size:12.5px}.hm-nav a svg{display:none}.hm-product-row{grid-template-columns:repeat(4,minmax(0,1fr))}.hm-product-row .hm-pcard:nth-child(n+5){display:none}}
@media(max-width:1060px){
  .hm-burger{display:inline-flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;margin-left:auto;border:1px solid #b9c6d6;border-radius:10px;background:#fff;color:var(--hm-navy);cursor:pointer}
  .hm-burger span{display:block;width:22px;height:2px;border-radius:2px;background:currentColor;transition:transform .2s,opacity .2s}
  .hm-header.open .hm-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .hm-header.open .hm-burger span:nth-child(2){opacity:0}
  .hm-header.open .hm-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hm-bar{flex-wrap:wrap;min-height:68px}
  .hm-logo img{height:50px}
  .hm-menu{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:12px;padding:4px 0 16px}
  .hm-header.open .hm-menu{display:flex}
  .hm-nav{flex-direction:column;align-items:stretch;gap:0}
  .hm-nav a{padding:13px 4px;font-size:16px;border-bottom:1px solid var(--hm-line)}
  .hm-nav a svg{display:inline}
  .hm-nav a.active{border-bottom-color:var(--hm-line)}
  .hm-actions>a{flex:1}
  .hm-lang{justify-content:center}.hm-lang-label{display:inline}
  .hm-layout{grid-template-columns:minmax(0,1fr)}
  .hm-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
  .hm-adv{min-height:0}
  .hm-cards,.hm-services{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hm-product-row{grid-template-columns:repeat(3,minmax(0,1fr))}.hm-product-row .hm-pcard:nth-child(n+4){display:none}
  .hm-foot{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .hm-hero{grid-template-columns:minmax(0,1fr);padding:26px 18px 22px}
  .hm-checks{display:none}
  .hm-search select{max-width:112px;font-size:13px;padding:0 6px}
  .hm-search button{padding:0 16px}
  .hm-stats{grid-template-columns:minmax(0,1fr);padding:14px}
  .hm-stat-list{grid-template-columns:1fr 1fr;gap:10px 0}
  .hm-stat{padding:4px 10px;border-right:0}
  .hm-stat b{font-size:22px}
  .hm-buy{justify-content:center}
  .hm-side{grid-template-columns:1fr 1fr}
  .hm-side .hm-adv{grid-column:1/-1}
  .hm-product-row{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-product-row .hm-pcard:nth-child(n+3){display:flex}.hm-product-row .hm-pcard:nth-child(n+5){display:none}
}
@media(max-width:560px){
  .hm-cards,.hm-services{grid-template-columns:minmax(0,1fr)}
  .hm-foot{grid-template-columns:1fr}
  .hm-foot-col{padding-left:0;border-left:0}
  .hm-foot-brand{flex-direction:column;align-items:flex-start}
  .hm-search{flex-wrap:wrap}
  .hm-search select{border-right:0;border-bottom:1px solid var(--hm-line);max-width:none;width:100%;padding:10px}
  .hm-search button{width:100%;padding:12px}
}

/* Trade shows: no licensed event photo yet, so a branded panel with an events icon */
.hm-svc-img.events{background:radial-gradient(circle at 70% 30%,rgba(53,198,255,.35),transparent 55%),linear-gradient(135deg,#123f86,#0a2a5c);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.9)}
