/* Air Components Line Sets — product page builder. Brand: red #C8102E, charcoal #212529, body #586069. */
.ac-ls-builder{display:grid;gap:16px;margin:0 0 18px;padding:18px;background:#f4f5f6;border:1px solid #e3e5e8;border-radius:4px}
.ac-ls-field{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;border:0;min-width:0}
.ac-ls-field>label,.ac-ls-field>legend{font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem;color:#212529;padding:0;margin:0 0 4px}
.ac-ls-input{width:100%;max-width:100%;padding:9px 12px;border:1px solid #c9ccd1;border-radius:3px;background:#fff;font:inherit;color:#212529}
.ac-ls-input{max-width:160px}
.ac-ls-input.ac-ls-invalid{border-color:#C8102E;box-shadow:0 0 0 2px rgba(200,16,46,.15)}
.ac-ls-hint{font-size:.85rem;color:#586069}
/* hose chips */
.ac-ls-chips{display:flex;flex-wrap:wrap;gap:8px}
.ac-ls-field label.ac-ls-chip{position:relative;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;margin:0;border:1px solid #c9ccd1;border-radius:999px;background:#fff;cursor:pointer;text-transform:none;letter-spacing:0;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;font-size:15px;line-height:1;color:#212529}
.ac-ls-field .ac-ls-chip input[type=radio]{position:absolute!important;opacity:0!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important;pointer-events:none;appearance:none;-webkit-appearance:none}
.ac-ls-field .ac-ls-chip input[type=radio]::before,.ac-ls-field .ac-ls-chip input[type=radio]::after{display:none!important;content:none!important}
.ac-ls-chip .ac-ls-chip-price{font-family:Barlow,sans-serif;font-weight:500;font-size:12px;line-height:1;text-transform:none;letter-spacing:0;color:#586069}
.ac-ls-chip .ac-ls-chip-name{text-transform:none}
.ac-ls-field label.ac-ls-chip:hover{border-color:#C8102E}
.ac-ls-chip:has(input:checked){border-color:#C8102E;background:#C8102E;color:#fff}
.ac-ls-chip:has(input:checked) .ac-ls-chip-price{color:#fff;opacity:.9}
.ac-ls-chip:has(input:focus-visible){box-shadow:0 0 0 3px rgba(200,16,46,.3)}
.ac-ls-chip.is-unavailable{opacity:.5;cursor:not-allowed}
.ac-ls-hose-hint b{color:#212529;font-weight:600}
/* length row + notes */
.ac-ls-length-row{display:flex;flex-wrap:wrap;gap:16px}
.ac-ls-length-col[hidden]{display:none}
.ac-ls-note[hidden]{display:none}
.ac-ls-length-col{display:flex;flex-direction:column;gap:6px;flex:1 1 180px;min-width:0}
.ac-ls-length-col>label{font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem;color:#212529;padding:0;margin:0 0 4px}
.ac-ls-length .ac-ls-input{max-width:100%}
.ac-ls-note{margin:4px 0 0;padding:10px 12px;background:#fff;border-left:3px solid #C8102E;font-size:.85rem;line-height:1.4;color:#586069}
.ac-ls-hint.is-warn{color:#C8102E;font-weight:600}
.ac-ls-textarea{width:100%;padding:9px 12px;border:1px solid #c9ccd1;border-radius:3px;background:#fff;font:inherit;font-size:.95rem;color:#212529;resize:vertical;min-height:72px}
.ac-ls-textarea:focus{outline:none;border-color:#C8102E;box-shadow:0 0 0 2px rgba(200,16,46,.15)}
/* fitting picker button */
.ac-ls-pick{display:flex;align-items:center;gap:10px;width:100%;min-height:62px;padding:5px 10px 5px 5px;border:1px solid #c9ccd1;border-radius:3px;background:#fff;color:#212529;font:inherit;text-align:left;text-transform:none;letter-spacing:0;cursor:pointer;line-height:1.25}
.ac-ls-form button.ac-ls-pick,.ac-ls-form button.ac-ls-pick:hover,.ac-ls-form button.ac-ls-pick:focus,.ac-ls-form button.ac-ls-pick:active{background:#fff;color:#212529;text-shadow:none;transform:none}
.ac-ls-form button.ac-ls-pick:hover,.ac-ls-form button.ac-ls-pick:focus-visible{border-color:#C8102E;outline:none;box-shadow:0 0 0 1px #C8102E}
.ac-ls-form .ac-ls-pick:hover .ac-ls-pick-name,.ac-ls-form .ac-ls-pick:focus .ac-ls-pick-name{color:#212529}
.ac-ls-form .ac-ls-pick:hover .ac-ls-pick-meta,.ac-ls-form .ac-ls-pick:focus .ac-ls-pick-meta,.ac-ls-form .ac-ls-pick:hover .ac-ls-pick-placeholder,.ac-ls-form .ac-ls-pick:hover .ac-ls-pick-arrow{color:#586069}
.ac-ls-pick[disabled]{opacity:.5;cursor:not-allowed}
.ac-ls-pick-thumb{flex:0 0 50px;width:50px;height:50px;object-fit:contain;border:1px solid #e3e5e8;border-radius:2px;background:#fff}
.ac-ls-pick-thumb--empty{background:#f4f5f6}
.ac-ls-pick-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.ac-ls-pick-name{color:#212529;font-weight:600;font-size:.92rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ac-ls-pick-placeholder{font-weight:400;color:#586069}
.ac-ls-pick-meta{font-size:.8rem;color:#586069}
.ac-ls-pick-arrow{flex:0 0 auto;color:#586069;font-size:.8rem}
.ac-ls-clock[hidden]{display:none}
.ac-ls-req{color:#C8102E}
.ac-ls-clock-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ac-ls-clock-select{flex:0 0 auto;min-width:200px;padding:8px 12px;border:1px solid #c9ccd1;border-radius:3px;background:#fff;font:inherit;font-size:.95rem;color:#212529}
.ac-ls-clock-row .ac-ls-hint{flex:1 1 240px}
.ac-ls-clock.is-missing .ac-ls-clock-select{border-color:#C8102E;box-shadow:0 0 0 2px rgba(200,16,46,.15)}
/* search panel */
body.ac-ls-modal-open{overflow:hidden}
.ac-ls-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px}
.ac-ls-modal[hidden]{display:none}
.ac-ls-modal-backdrop{position:absolute;inset:0;background:rgba(33,37,41,.6)}
.ac-ls-modal-panel{position:relative;width:100%;max-width:720px;max-height:88vh;display:flex;flex-direction:column;background:#fff;border-radius:4px;box-shadow:0 20px 60px rgba(0,0,0,.35);overflow:hidden}
.ac-ls-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:#212529;color:#fff}
.ac-ls-modal-title{margin:0;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;font-size:1.1rem;color:#fff}
.ac-ls-modal-close{background:none;border:0;color:#fff;font-size:1.8rem;line-height:1;padding:0 4px;cursor:pointer}
.ac-ls-modal-search{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid #e3e5e8;background:#f4f5f6}
.ac-ls-modal-input{flex:1 1 auto;padding:10px 12px;border:1px solid #c9ccd1;border-radius:3px;font:inherit;font-size:1rem;color:#212529;background:#fff}
.ac-ls-modal-input:focus{outline:none;border-color:#C8102E;box-shadow:0 0 0 2px rgba(200,16,46,.15)}
.ac-ls-modal-count{flex:0 0 auto;font-size:.85rem;color:#586069;white-space:nowrap}
.ac-ls-modal-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 18px;border-bottom:1px solid #e3e5e8;background:#fff}
.ac-ls-modal-tags[hidden]{display:none}
.ac-ls-modal-tags-label{font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.75rem;color:#586069;margin-right:4px}
.ac-ls-modal-tag-list{display:flex;flex-wrap:wrap;gap:6px}
.ac-ls-modal button.ac-ls-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;margin:0;border:1px solid #c9ccd1;border-radius:999px;background:#fff;color:#212529;font:500 13px/1 Barlow,sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;box-shadow:none}
.ac-ls-modal button.ac-ls-tag:hover{border-color:#C8102E}
.ac-ls-modal button.ac-ls-tag.is-on{background:#C8102E;border-color:#C8102E;color:#fff}
.ac-ls-modal button.ac-ls-tag .ac-ls-tag-n{font-size:11px;color:#586069;background:#f4f5f6;border-radius:999px;padding:1px 6px}
.ac-ls-modal button.ac-ls-tag.is-on .ac-ls-tag-n{background:rgba(255,255,255,.25);color:#fff}
.ac-ls-modal button.ac-ls-tag--clear{border-style:dashed;color:#586069}
.ac-ls-modal-list{list-style:none;margin:0;padding:6px 0;overflow-y:auto;flex:1 1 auto;-webkit-overflow-scrolling:touch}
.ac-ls-opt{display:flex;align-items:center;gap:14px;padding:8px 18px;cursor:pointer;border-left:3px solid transparent}
.ac-ls-opt:hover,.ac-ls-opt:focus{background:#f4f5f6;outline:none;border-left-color:#C8102E}
.ac-ls-opt.is-current{background:#fdf1f3}
.ac-ls-opt-thumb{flex:0 0 50px;width:50px;height:50px;object-fit:contain;border:1px solid #e3e5e8;border-radius:2px;background:#fff}
.ac-ls-opt-text{flex:1 1 auto;min-width:0}
.ac-ls-opt-name{font-weight:600;color:#212529;font-size:.95rem;line-height:1.3}
.ac-ls-opt-meta{font-size:.8rem;color:#586069;margin-top:2px}
.ac-ls-opt-price{flex:0 0 auto;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;color:#212529;white-space:nowrap}
.ac-ls-opt-none{padding:24px 18px;color:#586069;text-align:center}
@media (max-width:640px){.ac-ls-modal{padding:0}.ac-ls-modal-panel{max-width:none;max-height:100vh;height:100vh;border-radius:0}.ac-ls-opt-price{font-size:.9rem}}
/* totals */
.ac-ls-total{margin-top:4px;padding-top:12px;border-top:1px solid #e3e5e8}
.ac-ls-breakdown{width:100%;margin:0;border-collapse:collapse;font-size:.95rem}
.ac-ls-breakdown td,.ac-ls-breakdown th{padding:4px 0;border:0;background:none;color:#586069;text-align:left}
.ac-ls-breakdown td:last-child,.ac-ls-breakdown th:last-child{text-align:right;white-space:nowrap}
.ac-ls-bd-total th{padding-top:8px;border-top:1px solid #c9ccd1;color:#212529;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;font-size:1.05rem}
.ac-ls-submit[disabled]{opacity:.45;cursor:not-allowed}
.ac-ls-admin-note{color:#C8102E;font-weight:600}
@media (min-width:640px){.ac-ls-builder{grid-template-columns:1fr 1fr}.ac-ls-hose,.ac-ls-assembly,.ac-ls-length,.ac-ls-clock,.ac-ls-notes,.ac-ls-total{grid-column:1/-1}}
.ac-ls-package-note{margin:0 0 14px;padding:10px 12px;background:#f4f5f6;border-left:3px solid #212529;font-size:.85rem;line-height:1.4;color:#586069}
/* Cart / checkout grouping */
.ac-ls-cart-tag{display:inline-block;margin-top:4px;font-size:.8rem;color:#586069}
.ac-ls-cart-tag strong{color:#212529}
.ac-ls-qty-locked{display:inline-block;min-width:2em;text-align:center}
/* Line-set pages only: narrower gallery, wider builder (Shopkeeper / Foundation grid). */
@media (min-width:1024px){
body.ac-lineset-page .product_content_wrapper>.row>.large-6.columns{width:32%!important}
body.ac-lineset-page .product_content_wrapper>.row>.large-4.columns{width:64%!important;margin-left:4%!important}
body.ac-lineset-page .product_content_wrapper>.row>.large-6.columns .product-images-wrapper{max-width:100%}
}
/* ===== 1.0: lines & add-ons ===== */
.ac-ls-builder .ac-ls-line{grid-column:1/-1;display:grid;gap:14px;padding:14px 16px 16px;background:#fff;border:1px solid #e3e5e8;border-left:3px solid #C8102E;border-radius:3px}
.ac-ls-builder:not(.is-multi) .ac-ls-line{padding:0;background:none;border:0;border-radius:0}
.ac-ls-line-title{margin:0;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:1.1rem;color:#212529}
.ac-ls-ends{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:640px){.ac-ls-ends{grid-template-columns:1fr 1fr}}
.ac-ls-addons{grid-column:1/-1}
.ac-ls-addon{border:1px solid #e3e5e8;border-radius:3px;background:#fff;margin:0 0 8px}
.ac-ls-addon-toggle{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;margin:0}
.ac-ls-field .ac-ls-addon-toggle{text-transform:none;letter-spacing:0;font-family:Barlow,sans-serif;font-weight:600;font-size:.95rem;color:#212529}
.ac-ls-addon-toggle input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:#C8102E;flex:0 0 auto}
.ac-ls-addon-label{flex:1 1 auto}
.ac-ls-addon-label small{font-weight:400;color:#586069}
.ac-ls-addon-price{font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;white-space:nowrap;color:#586069}
.ac-ls-addon.is-on .ac-ls-addon-price{color:#212529}
.ac-ls-addon-body{display:none;padding:0 12px 12px 40px;gap:10px;flex-wrap:wrap;align-items:center}
.ac-ls-addon.is-on .ac-ls-addon-body{display:flex}
.ac-ls-addon-products{flex:1 1 100%}
.ac-ls-addon-qty{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:#586069;margin:0}
.ac-ls-input--sm{max-width:90px;padding:6px 10px}
.ac-ls-bd-line th{padding-top:10px;color:#212529;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;font-size:.85rem;letter-spacing:.03em;text-align:left}
.ac-ls-bd-addon[hidden]{display:none}
.ac-ls-addon-follow{font-size:.78rem}
.ac-ls-addon-follow[hidden]{display:none}
/* ===== parts list, actions, send form ===== */
.ac-ls-subh{margin:0 0 8px;font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:1rem;color:#212529}
.ac-ls-partstable thead th{font-family:"Barlow Semi Condensed",Barlow,sans-serif;font-weight:700;text-transform:uppercase;font-size:.78rem;letter-spacing:.04em;color:#fff;background:#212529;padding:8px 10px;border:0}
.ac-ls-partstable thead th:first-child{border-radius:3px 0 0 0}.ac-ls-partstable thead th:last-child{border-radius:0 3px 0 0;text-align:right}
.ac-ls-partstable tbody td{padding:8px 10px;border-bottom:1px solid #e3e5e8;vertical-align:middle;color:#212529;font-size:.92rem}
.ac-ls-partstable tbody tr:nth-child(even) td{background:#f8f9fa}
.ac-ls-partstable tbody td:nth-child(2){white-space:nowrap;color:#586069;width:60px}
.ac-ls-partstable tbody td:last-child{text-align:right;white-space:nowrap;font-weight:600}
.ac-ls-partstable tfoot th{padding:10px;border:0;border-top:2px solid #212529}
.ac-ls-partstable tfoot th:last-child{text-align:right}
.ac-ls-parts-empty{color:#586069;font-style:italic;text-align:center;padding:16px 10px!important}
.ac-ls-rowprod{display:flex;align-items:center;gap:10px}
.ac-ls-rowprod>div{min-width:0}
.ac-ls-rowname{display:block;line-height:1.3}
.ac-ls-rowprod small{display:block;font-size:.78rem;color:#586069;margin-top:2px}
.ac-ls-rowthumb{flex:0 0 40px;width:40px;height:40px;object-fit:contain;border:1px solid #e3e5e8;border-radius:2px;background:#fff}
.ac-ls-rowthumb--empty{display:inline-block;background:#f4f5f6}
.ac-ls-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 10px}
.ac-ls-form .ac-ls-actions .button{margin:0}
.ac-ls-form .ac-ls-actions button.ac-ls-ghost{background:#fff!important;color:#212529!important;border:1px solid #c9ced3!important;text-shadow:none}
.ac-ls-form .ac-ls-actions button.ac-ls-ghost:hover:not([disabled]),.ac-ls-form .ac-ls-actions button.ac-ls-ghost:focus:not([disabled]){background:#f4f5f6!important;color:#212529!important;border-color:#212529!important}
.ac-ls-form .ac-ls-actions button.ac-ls-ghost[disabled]{opacity:.45;cursor:not-allowed}
.ac-ls-form .ac-ls-actions button.ac-ls-reset{border-color:#212529!important}
.ac-ls-form .ac-ls-actions button.ac-ls-reset:hover{background:#212529!important;color:#fff!important}
.ac-ls-sendwrap[hidden]{display:none}
.ac-ls-sendform{margin:0 0 14px;padding:16px;background:#fff;border:1px solid #e3e5e8;border-radius:4px;display:grid;gap:12px}
.ac-ls-sendform>label{display:block;font-weight:600;color:#212529;text-transform:none;letter-spacing:0;font-family:Barlow,sans-serif;font-size:.9rem}
.ac-ls-sendform label small{font-weight:400;color:#586069}
.ac-ls-sendform input[type=text],.ac-ls-sendform input[type=email],.ac-ls-sendform input[type=tel]{display:block;width:100%;margin-top:4px;padding:9px 12px;border:1px solid #c9ccd1;border-radius:3px;font:inherit;color:#212529;background:#fff}
.ac-ls-sendform .ac-ls-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ac-ls-form .ac-ls-sendform button.ac-ls-sendgo{width:100%;margin:0}
.ac-ls-sendmsg{font-weight:600}.ac-ls-sendmsg:empty{display:none}.ac-ls-sendmsg.is-ok{color:#1a7f37}.ac-ls-sendmsg.is-err{color:#C8102E}
.ac-ls-fine{font-size:.85rem;color:#586069;margin:0}
.ac-ls-foot{margin:4px 0 0}
.ac-ls-tel{color:#C8102E;font-weight:700;text-decoration:none}
.ac-ls-msg{margin-top:10px;font-weight:600}.ac-ls-msg:empty{display:none}.ac-ls-msg.is-err{color:#C8102E}
@media (min-width:640px){.ac-ls-sendform{grid-template-columns:1fr 1fr}.ac-ls-sendform .ac-ls-fine,.ac-ls-sendform .ac-ls-sendgo,.ac-ls-sendform .ac-ls-sendmsg{grid-column:1/-1}}
