*{box-sizing:border-box}
body{margin:0;background:#121417;color:#f5f6f7;font:16px/1.55 'Segoe UI',Arial,sans-serif}
.wrap{width:min(1160px,92%);margin:auto}
.banner{padding:38px 0;background:linear-gradient(90deg,#121417 12%,rgba(18,20,23,.92) 44%,rgba(18,20,23,.08)),url(gar-hero-clean-no-text.jpg) center 54%/cover}
h1{font-size:clamp(36px,5vw,65px);line-height:1.04;letter-spacing:-.035em;margin:0}
h1 em{color:#0499f7;font-style:normal}
.banner p{max-width:520px}
.layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(275px,1fr);gap:32px;padding:35px 0 70px;align-items:start}
h2{font-size:25px;margin:0 0 14px}
.fields{display:grid;grid-template-columns:1fr 1.6fr;gap:12px}
.fields label{font-size:13px;font-weight:600;color:#b4bac1}
select{display:block;margin-top:4px;width:100%;padding:11px 7px;background:#23272d;color:white;border:1px solid #3d434a;border-radius:4px;font:inherit}
.hint,.kit p,aside p{color:#b4bac1}
.hint{font-size:13px;margin:12px 0 28px}
.kit,aside{background:#23272d;border:1px solid #3d434a;padding:18px;margin-bottom:12px}
.kit:has(:checked){border-color:#0499f7}
.kit label{display:flex;align-items:baseline;gap:10px;font-size:18px;font-weight:700;cursor:pointer}
.kit input{accent-color:#0499f7}
.kit p{margin:8px 0;font-size:14px}
a{color:#5cc0ff}
aside{position:sticky;top:20px;border-top:3px solid #0499f7}aside ul{padding-left:20px}aside dl>div{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #3d434a;padding:9px 0;font-size:14px}dd{margin:0}
.primary{display:block;text-align:center;background:#5cc0ff;color:#121417;padding:11px;font-weight:700;text-decoration:none}.call{display:block;text-align:center;padding-top:12px}
@media(max-width:800px){.layout{grid-template-columns:1fr}.fields{grid-template-columns:1fr 1fr}aside{position:static}}
@media(max-width:480px){.fields{grid-template-columns:1fr}.banner{background-position:right}.banner p{background:#121417d9}}

#quote textarea{width:100%;height:6em;padding:8px;background:#121417;color:#dde1e5;border:1px solid #3d434a}#quote button{margin:8px 10px 14px 0;padding:8px 12px;background:#2c3136;color:white;border:1px solid #7a828c;cursor:pointer}#quote [role=status]{font-size:13px}
.category-search{width:100%;padding:12px 14px;background:#1b1e23;border:1px solid #3d434a;color:#f5f6f7;font:inherit}
.category-groups{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}
.category-groups button{background:#23272d;color:#dde1e5;border:1px solid #3d434a;padding:10px 13px;font:600 13px/1.3 'Segoe UI',Arial,sans-serif;cursor:pointer}
.category-groups button[aria-pressed=true]{background:#0499f7;border-color:#5cc0ff;color:white}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.category-tile{display:flex;flex-direction:column;background:#23272d;border:1px solid #3d434a;color:#f5f6f7;text-decoration:none;transition:border-color .15s}
.category-tile:hover{border-color:#5cc0ff}
.category-tile img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#ffffff;padding:12px}
.category-tile span{padding:15px 12px;font-weight:650;font-size:14px;line-height:1.35}
.category-products{margin:18px 0}
.category-request{display:block;font-size:15px}
.category-request input{accent-color:#0499f7}
#kits>h2{margin-top:22px}
@media(max-width:1080px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:570px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tile span{padding:12px 9px;font-size:13px}}
/* Full-width category browsing with a separate installation summary. */
.layout{grid-template-columns:minmax(0,1fr) 300px;gap:30px;width:min(1380px,92%)}
body{font-family:Inter,'Segoe UI',Arial,sans-serif}
.banner{padding:48px 0;background:#1b1e23;border-bottom:1px solid #3d434a}
.banner p{max-width:680px;color:#b4bac1}
.category-search{border-radius:6px;background:#1b1e23}
.category-groups{gap:0;border-bottom:1px solid #3d434a}
.category-groups button{border:0;border-bottom:3px solid transparent;background:transparent;padding:14px 16px}
.category-groups button[aria-pressed=true]{background:transparent;border-color:#5cc0ff;color:#5cc0ff}
.category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.category-tile{overflow:hidden;border-radius:8px;background:#23272d;transition:transform .18s,border-color .18s,box-shadow .18s}
.category-tile:hover{transform:translateY(-3px);border-color:#5cc0ff;box-shadow:0 10px 28px #00000033}
.category-tile img{aspect-ratio:4/3;padding:18px;object-fit:contain}
.category-tile span{font-size:15px;padding:18px;min-height:75px}
.category-products{display:grid;gap:18px;margin:24px 0}
.category-products .kit{padding:24px;margin:0;border-radius:8px;background:#23272d}
.category-products .kit label{font-size:21px;line-height:1.35}
.category-products .kit p{line-height:1.65}
.category-products .kit a{font-size:13px}
.category-request{border-radius:8px;padding:20px}
.category-products+label{margin-top:20px}
aside{border-radius:8px;padding:22px}
@media(max-width:1200px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.layout{grid-template-columns:minmax(0,1fr) 270px;gap:22px}}
@media(max-width:900px){.layout{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}aside{position:static}}
@media(max-width:580px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-tile span{font-size:13px;padding:12px;min-height:66px}.category-tile img{padding:10px}.category-groups button{padding:12px 9px}.banner{padding:30px 0}}
@media(prefers-reduced-motion:reduce){.category-tile{transition:none}.category-tile:hover{transform:none}}
.banks-catalog-link{display:block;padding:18px 20px;margin-bottom:24px;border:1px solid #5cc0ff;border-radius:8px;background:#23272d;color:#dde1e5;font-weight:700;text-decoration:none}
.banks-controls{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-top:24px;align-items:center}
.banks-controls select{margin:0}
.banks-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.banks-product{padding:0;overflow:hidden;display:flex;flex-direction:column;border-radius:8px}
.banks-product>img{width:100%;height:190px;object-fit:contain;background:white;padding:20px}
.banks-product>div{padding:20px;flex:1;display:flex;flex-direction:column}
.banks-product h3{font-size:20px;line-height:1.3;margin:0 0 10px}
.banks-product .banks-brand{font-size:11px;letter-spacing:.12em;color:#5cc0ff;font-weight:700}
.banks-product .banks-add{margin-top:20px;font-size:14px;align-items:flex-start}
.banks-product a{margin-top:auto;font-size:13px}
@media(max-width:600px){.banks-controls,.banks-product-grid{grid-template-columns:1fr}}
.banks-product .banks-add{display:flex;align-items:center;gap:10px;background:#0499f7;color:#121417;padding:13px 15px;margin-top:16px;font-size:15px;font-weight:750;cursor:pointer}
.banks-product .banks-add:has(:checked){background:#5cc0ff}
.manufacturer-reference{margin-top:18px;font-size:12px;color:#b4bac1}
.manufacturer-reference summary{cursor:pointer}
.manufacturer-reference a{display:block;margin-top:10px}
.category-products .kit>label{flex-wrap:wrap}
.category-products .kit>label>span{display:block;width:100%;padding:10px;background:#0499f7;color:#121417;font-size:14px}
