
:root{
  --ink:#101411; --green:#283627; --olive:#5f6041; --gold:#c8ad70;
  --paper:#f6f5f1; --line:#d7d5cc; --white:#fff; --muted:#6e746e;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none}
.container{width:min(1280px,calc(100% - 40px));margin:auto}
.site-header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #ddd}
.brand-row{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.main-brand img{height:76px;width:auto}.header-marks{display:flex;gap:28px;align-items:center}.header-marks img{height:70px;width:auto}
.main-nav{border-top:1px solid #eee}.nav-inner{display:flex;justify-content:center;gap:38px}
.nav-inner a{padding:14px 0;text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.06em}
.nav-inner a:hover{color:var(--olive)}
.menu-toggle{display:none;background:none;border:0;font-size:28px}
.hero{min-height:430px;position:relative;background:linear-gradient(90deg,#0f1611 0%,#172017 48%,#28332c 100%);overflow:hidden}
.hero-photo{position:absolute;inset:0 0 0 42%;background:url('assets/hero-photo.jpg') center/cover no-repeat;opacity:.92}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,10,7,.96) 0%,rgba(6,10,7,.87) 38%,rgba(6,10,7,.28) 70%,rgba(6,10,7,.18) 100%)}
.hero-content{position:relative;z-index:1;color:#fff;padding:62px 0;width:min(1280px,calc(100% - 40px))}
.eyebrow{text-transform:uppercase;letter-spacing:.35em;font-size:13px;font-weight:700}.eyebrow.dark{color:var(--olive)}
.hero h1{font-size:56px;line-height:.95;margin:16px 0 4px;max-width:720px}
.hero h2{font-size:30px;color:var(--gold);margin:0 0 12px}.hero-copy{max-width:640px;font-size:19px;line-height:1.45}
.professional-only{display:inline-block;border:1px solid rgba(255,255,255,.45);padding:13px 18px;margin:4px 0 20px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:12px}
.hero-actions,.dual-actions,.client-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border:1px solid transparent;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.04em;cursor:pointer}
.btn-primary{background:var(--green);color:#fff;border-color:#7c8f76}.btn-outline{background:rgba(0,0,0,.35);color:#fff;border-color:#fff}.btn-gold{background:var(--gold);color:#171713}.btn-light{background:rgba(255,255,255,.1);color:#fff;border-color:#fff}.btn-white{background:#fff;color:#111;border-color:#bbb}.btn-dark{background:#172019;color:#fff}
.gateway{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;padding:16px 0}
.gateway-card{min-height:270px;position:relative;overflow:hidden;background-size:cover;background-position:center;color:#fff}
.gateway-card.catalog{background-image:url('assets/catalog-photo.jpg')}.gateway-card.shop{background-image:url('assets/shop-photo.jpg')}.gateway-card.um{background-image:url('assets/um-card-photo.jpg')}
.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,10,6,.88),rgba(5,10,6,.32))}
.card-content{position:relative;z-index:2;padding:25px;max-width:76%}.card-content h3{font-size:26px;margin:0 0 12px;text-transform:uppercase}.card-content p{line-height:1.45}
.section-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:8px 0 16px}.section-heading span{height:1px;background:#a8a89e}.section-heading h2{text-transform:uppercase;letter-spacing:.18em;font-size:21px;margin:0}
.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.solution-card{border:1px solid #e0e0db;background:#fff}.solution-card img{width:100%;height:140px;object-fit:cover}.solution-card div{padding:14px}.solution-card h3{font-size:16px;text-transform:uppercase;margin:0 0 7px}.solution-card p{font-size:14px;line-height:1.4;margin:0}
.custom{margin-top:16px;display:grid;grid-template-columns:1fr 1.55fr 1fr;min-height:210px;border:1px solid #ddd;background:#f4f2ed}.custom-photo{background-size:cover;background-position:center}.custom-photo.left{background-image:url('assets/custom-left.jpg')}.custom-photo.right{background-image:url('assets/custom-right.jpg')}.custom-copy{text-align:center;padding:24px}.custom-copy h2{text-transform:uppercase;margin:8px 0;font-size:26px}.service-tags{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:16px 0}.service-tags span{background:#fff;border:1px solid #d7d5cc;padding:7px 10px;font-size:11px;text-transform:uppercase;font-weight:700}
.brands{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 0}.brand-panel{min-height:190px;background-size:cover;background-position:center;position:relative;color:#fff;overflow:hidden}.um-panel{background-image:url('assets/um-banner.jpg')}.special-panel{background-image:url('assets/special-banner.jpg')}.brand-copy{position:relative;z-index:2;padding:28px;max-width:62%}.brand-copy h2{text-transform:uppercase;margin:0 0 8px;font-size:28px}.brand-copy small{display:block;font-size:13px}.brand-copy p{line-height:1.45}
.why{padding-bottom:15px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #e3e0d8}.why-grid article{padding:20px;border-right:1px solid #e3e0d8}.why-grid article:last-child{border-right:0}.why-grid strong{text-transform:uppercase;font-size:13px}.why-grid p{font-size:13px;color:#555;line-height:1.4;margin-bottom:0}
.client-access{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#eceae3;padding:20px 24px;margin-bottom:0}.client-access h2{text-transform:uppercase;margin:0 0 5px;font-size:22px}.client-access p{margin:0 0 4px}.client-access small{color:#666}
footer{background:#101715;color:#fff;padding:28px 0}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 2fr;gap:24px;align-items:start;font-size:13px}.footer-logo{height:56px;width:auto;filter:brightness(1.2)}.footer-links{display:flex;flex-direction:column;gap:7px}
dialog{border:0;padding:0;max-width:760px;width:calc(100% - 30px);box-shadow:0 20px 70px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(0,0,0,.55)}.register-form{padding:30px;position:relative}.close{position:absolute;right:15px;top:10px;font-size:28px;border:0;background:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:12px;font-weight:700;text-transform:uppercase}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:11px;border:1px solid #bbb;margin-top:5px;font:inherit}.form-grid .wide{grid-column:1/-1}.form-note{font-size:12px;color:#777}
@media(max-width:900px){
 .brand-row{height:75px}.main-brand img{height:58px}.header-marks{display:none}.menu-toggle{display:block}.main-nav{display:none}.main-nav.open{display:block}.nav-inner{flex-direction:column;gap:0;padding:10px 20px}.nav-inner a{border-bottom:1px solid #eee}
 .hero-photo{left:20%;opacity:.6}.hero h1{font-size:38px}.hero h2{font-size:23px}.hero-copy{font-size:16px}
 .gateway,.solution-grid,.brands,.why-grid{grid-template-columns:1fr 1fr}.custom{grid-template-columns:1fr}.custom-photo{min-height:150px}.card-content{max-width:88%}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .container{width:min(100% - 24px,1280px)}.hero{min-height:520px}.hero-photo{left:0}.hero:after{background:rgba(6,10,7,.72)}
 .hero-content{padding:44px 0}.hero h1{font-size:34px}.hero-actions{flex-direction:column;align-items:stretch}
 .gateway,.solution-grid,.brands,.why-grid{grid-template-columns:1fr}.gateway-card{min-height:300px}.card-content{max-width:100%}
 .client-access{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}
}

.quote-form{padding:30px;position:relative}
.quote-form h2{margin:6px 0 8px;text-transform:uppercase}
.quote-type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:18px 0}
.quote-type-grid label{cursor:pointer}
.quote-type-grid input{position:absolute;opacity:0;pointer-events:none}
.quote-type-grid span{display:flex;min-height:58px;align-items:center;justify-content:center;text-align:center;border:1px solid #bbb;background:#f5f4ef;padding:8px;font-size:11px;text-transform:uppercase;font-weight:800}
.quote-type-grid input:checked + span{background:var(--green);color:#fff;border-color:var(--green)}
.upload-field input[type="file"]{background:#fafafa}
.upload-field small{display:block;margin-top:5px;color:#777;text-transform:none;font-weight:400}
.quote-notice{background:#f0ede4;border-left:4px solid var(--gold);padding:12px 14px;margin:16px 0;font-size:13px;line-height:1.45}
@media(max-width:900px){.quote-type-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.quote-type-grid{grid-template-columns:1fr}}

/* ===== V4 COMPACT ABOVE-THE-FOLD ===== */
@media (min-width: 901px) {
  .brand-row { height: 68px; gap: 20px; }
  .main-brand img { height: 54px; }
  .header-marks { gap: 18px; }
  .header-marks img { height: 49px; }

  .nav-inner { gap: 28px; }
  .nav-inner a {
    padding: 10px 0;
    font-size: 11px;
    letter-spacing: .05em;
  }

  .hero { min-height: 305px; }
  .hero-content { padding: 32px 0 28px; }
  .hero-photo { inset: 0 0 0 46%; }

  .eyebrow { font-size: 11px; letter-spacing: .28em; margin: 0 0 8px; }
  .hero h1 {
    font-size: 44px;
    line-height: .96;
    margin: 8px 0 2px;
    max-width: 650px;
  }
  .hero h2 { font-size: 24px; margin: 0 0 8px; }
  .hero-copy {
    max-width: 620px;
    font-size: 16px;
    line-height: 1.35;
    margin: 8px 0 10px;
  }
  .professional-only {
    padding: 9px 14px;
    margin: 0 0 12px;
    font-size: 10px;
  }
  .hero-actions { gap: 9px; }
  .btn {
    min-height: 38px;
    padding: 0 16px;
    font-size: 10.5px;
  }

  .gateway { gap: 10px; padding: 10px 0 12px; }
  .gateway-card { min-height: 205px; }
  .card-content { padding: 18px; max-width: 82%; }
  .card-content h3 { font-size: 20px; margin: 0 0 8px; }
  .card-content p {
    font-size: 13px;
    line-height: 1.35;
    margin: 0 0 12px;
  }

  .section-heading { margin: 4px 0 10px; }
  .section-heading h2 { font-size: 18px; }
  .solution-card img { height: 108px; }
  .solution-card div { padding: 10px 12px; }
  .solution-card h3 { font-size: 14px; }
  .solution-card p { font-size: 12px; }

  .custom { min-height: 170px; margin-top: 10px; }
  .custom-copy { padding: 18px; }
  .custom-copy h2 { font-size: 21px; margin: 5px 0; }
  .custom-copy p { font-size: 13px; margin: 6px 0; }
  .service-tags { margin: 10px 0; }
  .service-tags span { padding: 5px 8px; font-size: 9px; }

  .brands { padding: 10px 0; gap: 10px; }
  .brand-panel { min-height: 145px; }
  .brand-copy { padding: 20px; max-width: 66%; }
  .brand-copy h2 { font-size: 22px; }
  .brand-copy p { font-size: 12px; margin: 6px 0 10px; }

  .why { padding-bottom: 10px; }
  .why-grid article { padding: 14px; }
  .why-grid strong { font-size: 11px; }
  .why-grid p { font-size: 11px; }

  .client-access { padding: 14px 18px; }
  .client-access h2 { font-size: 18px; }
  .client-access p, .client-access small { font-size: 11px; }

  footer { padding: 18px 0; }
}
