:root {
  --black:#101114; --dark:#17191d; --gray:#73777d; --light:#f5f5f3;
  --white:#fff; --line:#e5e5e2;
  --primary:#0033AB; --primary2:#174fcf; --accent:#ff5a63; --on-primary:#fff;
  --max:1180px;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth}
body {margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--black);background:#fff;line-height:1.5}
a {color:inherit;text-decoration:none}
.container {width:min(var(--max),calc(100% - 40px));margin:auto}
.nav {position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-inner {height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand {display:flex;align-items:center;gap:18px;font-weight:900;letter-spacing:-.5px}
.brand-mark {font-size:25px;line-height:1;font-weight:950;letter-spacing:-1.5px;color:#111}
.brand-mark span {color:var(--primary)}
.logo-g {display:inline-flex;width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;align-items:center;justify-content:center;font-size:17px;font-weight:950;margin-right:5px;vertical-align:2px}
.brand-logo-img {height:36px;width:auto;max-width:170px;object-fit:contain}
.lorencic {height:43px;width:auto;object-fit:contain}
.nav-links {display:flex;gap:25px;font-size:14px;font-weight:700}
.nav-cta {background:var(--primary);color:var(--on-primary);padding:12px 18px;border-radius:7px}
.hero {background:
 radial-gradient(circle at 82% 28%,rgba(60,90,200,.28),transparent 30%),
 linear-gradient(125deg,#08090b 0%,#101521 58%,#151d2f 100%);color:#fff;overflow:hidden}
.hero {background:
 radial-gradient(circle at 82% 28%,color-mix(in srgb,var(--primary) 28%,transparent),transparent 30%),
 linear-gradient(125deg,#08090b 0%,#101521 58%,#151d2f 100%);color:#fff;overflow:hidden}
.hero-inner {min-height:680px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px}
.eyebrow {color:var(--accent);font-size:13px;font-weight:900;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px}
h1 {font-size:clamp(46px,6vw,82px);line-height:.95;letter-spacing:-4px;margin:0 0 24px;font-weight:950}
h1 em {font-style:normal;color:var(--primary2)}
.hero p {font-size:20px;color:#d8d9db;max-width:650px;margin:0 0 32px}
.buttons {display:flex;gap:12px;flex-wrap:wrap}
.btn {display:inline-flex;align-items:center;justify-content:center;padding:15px 22px;border-radius:8px;font-weight:900}
.btn-primary {background:var(--primary);color:var(--on-primary)}
.btn-secondary {border:1px solid #555;color:#fff}
.hero-card {position:relative;min-height:470px;display:flex;align-items:center;justify-content:center}
.machine {width:min(440px,90%);aspect-ratio:1/1;position:relative;filter:drop-shadow(0 35px 45px rgba(0,0,0,.55))}
.machine:before {content:"";position:absolute;inset:14% 13% 9%;border-radius:36px 36px 55px 55px;background:linear-gradient(145deg,#303238,#0d0e10);border:1px solid #555;transform:skewY(-3deg);box-shadow:inset 0 8px 0 rgba(60,90,200,.8);box-shadow:inset 0 8px 0 color-mix(in srgb,var(--primary) 80%,transparent)}
.machine:after {content:attr(data-brand);position:absolute;left:18%;top:31%;font-size:58px;font-weight:950;letter-spacing:-4px;color:#fff;transform:rotate(-5deg)}
.wheel {position:absolute;width:95px;height:95px;border-radius:50%;background:#090a0b;border:13px solid #34363a;bottom:3%;box-shadow:inset 0 0 0 5px #111}
.wheel.one {left:16%} .wheel.two {right:16%}
.handle {position:absolute;width:230px;height:125px;border:15px solid #42454a;border-bottom:0;border-radius:90px 90px 0 0;left:25%;top:4%;transform:rotate(-6deg)}
.badge {position:absolute;right:0;bottom:14%;background:var(--primary);color:var(--on-primary);padding:13px 17px;border-radius:9px;font-weight:900;box-shadow:0 15px 30px rgba(0,0,0,.3)}

.hero-photo-frame {position:relative;width:min(440px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:0 40px 70px rgba(0,0,0,.45)}
.hero-photo-frame img {width:100%;height:auto;max-height:360px;object-fit:contain;display:block;margin:auto}
.hero-photo-frame .badge {right:-14px;bottom:-14px}

/* Scaffold visual variant */
.scaffold {width:min(440px,90%);aspect-ratio:1/1;position:relative;filter:drop-shadow(0 35px 45px rgba(0,0,0,.55))}
.scaffold-frame {position:absolute;inset:6% 8%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:0}
.scaffold-frame .post {position:relative;border-right:8px solid #42454a}
.scaffold-frame .post:last-child {border-right:0}
.scaffold-frame .post:before,.scaffold-frame .post:after {content:"";position:absolute;left:-40%;right:-40%;height:8px;background:#585b61}
.scaffold-frame .post:before {top:0}
.scaffold-frame .post:after {bottom:0}
.scaffold-label {position:absolute;left:14%;bottom:10%;font-size:40px;font-weight:950;letter-spacing:-3px;color:#fff;background:rgba(0,0,0,.35);padding:6px 14px;border-radius:8px}
.scaffold-badge {position:absolute;right:6%;top:10%;background:var(--primary);color:var(--on-primary);padding:13px 17px;border-radius:9px;font-weight:900;box-shadow:0 15px 30px rgba(0,0,0,.3)}

.trust {background:#fff;border-bottom:1px solid var(--line)}
.trust-inner {display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:22px 0}
.trust-item {font-size:14px;font-weight:800} .trust-item small {display:block;color:var(--gray);font-weight:500;margin-top:3px}
.section {padding:90px 0}
.section.alt {background:var(--light)}
.kicker {font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:900;color:var(--primary);margin-bottom:10px}
h2 {font-size:clamp(32px,4vw,52px);letter-spacing:-2px;line-height:1.02;margin:0 0 15px}
.lead {color:#666;max-width:700px;font-size:18px}
.cards {display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px}
.card {display:block;border:1px solid var(--line);border-radius:14px;padding:26px;background:#fff;transition:.2s}
.card:hover {transform:translateY(-4px);box-shadow:0 15px 35px rgba(0,0,0,.08)}
.icon {width:44px;height:44px;margin-bottom:22px;color:var(--primary);display:flex;align-items:center;justify-content:center}
.icon svg {width:100%;height:100%}
.card h3 {margin:0 0 8px;font-size:21px}
.card p {margin:0;color:#666;font-size:15px}
.split {display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.list {display:grid;gap:13px;margin-top:25px}
.list div {display:flex;gap:12px;align-items:flex-start;font-weight:750}
.check {color:var(--primary);font-weight:950}
.quote {background:var(--black);color:#fff;border-radius:18px;padding:42px;position:relative;overflow:hidden}
.quote:after {content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:var(--primary);opacity:.12;right:-80px;top:-80px}
.quote p {font-size:27px;line-height:1.2;font-weight:850;letter-spacing:-1px;margin:0 0 18px;position:relative;z-index:1}
.quote small {color:#bbb}
.filter-chips {display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 6px}
.chip {display:inline-flex;width:auto;flex:none;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:800;font-size:14px;color:var(--black);cursor:pointer;transition:.15s}
.chip:hover {border-color:var(--primary)}
.chip.is-active {background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.chip-count {font-size:11px;font-weight:900;background:rgba(0,0,0,.08);border-radius:999px;padding:2px 8px;font-variant-numeric:tabular-nums}
.chip.is-active .chip-count {background:rgba(255,255,255,.28)}
.filter-chips + .products {margin-top:28px}
.products .product[hidden] {display:none}
.product-group {margin-top:38px}
.product-group:first-child {margin-top:0}
.product-group-title {font-size:19px;font-weight:900;margin:0 0 4px;padding-bottom:10px;border-bottom:2px solid var(--line)}
.products {display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:22px;justify-content:start;transition:grid-template-columns .25s ease}
@media (prefers-reduced-motion:reduce){.products{transition:none}}
.product-group .products {margin-top:18px}
.section > .container > .lead + .products {margin-top:35px}
.product {border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:.2s}
.product:hover {transform:translateY(-4px);box-shadow:0 15px 35px rgba(0,0,0,.08)}
.product-wide {max-width:none;grid-column:1/-1;flex-direction:row}
.product-wide .product-img {width:260px;height:auto;flex:0 0 260px}
.product-wide .product-body {flex:1;justify-content:center}
@media(max-width:640px){
 .product-wide{flex-direction:column}
 .product-wide .product-img{width:100%;height:210px}
}
.product-img {height:210px;background:linear-gradient(135deg,#ececea,#d8d8d5);display:flex;align-items:center;justify-content:center;position:relative}
.product-img:has(img) {background:#fff}
.product-img img {width:100%;height:100%;object-fit:contain;padding:14px;box-sizing:border-box}
.product-img[data-brand]:before {content:attr(data-brand);font-size:36px;font-weight:950;color:#17191d;letter-spacing:-3px;text-align:center;padding:0 12px}
.product-img[data-tag]:after {content:attr(data-tag);position:absolute;bottom:16px;right:17px;background:var(--primary);color:var(--on-primary);padding:5px 9px;border-radius:5px;font-size:10px;font-weight:900}
.product-body {padding:22px;display:flex;flex-direction:column;flex:1}
.product h3 {margin:0 0 7px;font-size:22px}
.product p {color:#666;font-size:14px;margin:0 0 17px;flex:1}
.text-link {font-weight:900;color:var(--primary)}
.form-wrap {display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}
.form {background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 15px 40px rgba(0,0,0,.06)}
label {display:block;font-size:13px;font-weight:800;margin:0 0 7px}
input,select,textarea {width:100%;padding:13px 14px;border:1px solid #d8d8d5;border-radius:7px;font:inherit;margin-bottom:16px;background:#fff}
textarea {min-height:120px;resize:vertical}
button {border:0;cursor:pointer;width:100%;font:inherit}
#form-success {display:none;margin-top:14px;font-weight:800;color:#16823a}
#form-error {display:none;margin-top:14px;font-weight:800;color:#b3261e}
.footer {background:#101114;color:#fff;padding:55px 0 25px}
.footer-grid {display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:35px}
.footer p,.footer a {color:#bfc0c3;font-size:14px}
.footer-bottom {border-top:1px solid #2d2e31;margin-top:35px;padding-top:20px;color:#888;font-size:12px;display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){
 .nav-links{display:none} .hero-inner,.split,.form-wrap{grid-template-columns:1fr}
 .hero-inner{padding:70px 0} .hero-card{min-height:390px} .cards{grid-template-columns:1fr 1fr}
 .trust-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
 .container{width:min(var(--max),calc(100% - 28px))} .cards,.trust-inner{grid-template-columns:1fr}
 h1{letter-spacing:-2px} .hero p{font-size:17px} .section{padding:65px 0}
 .footer-grid{grid-template-columns:1fr} .footer-bottom{display:block}
}
