/* Formore v8 hosted-site fixes: quote UI, hover product views, favicon-era cache-safe polish. */

/* Hover view layers. The badge intentionally does not exist in v8. */
.flip-hint{display:none!important}
.catalogue-media,.product-media{position:relative;overflow:hidden;isolation:isolate}
.flip-alt{position:absolute!important;inset:0!important;z-index:2!important;width:100%!important;height:100%!important;object-fit:contain!important;padding:1.5%!important;background:#fff!important;opacity:0!important;visibility:hidden;pointer-events:none!important;transform:none!important;transition:opacity .34s ease,visibility .34s ease!important}
.flip-alt.is-loaded.is-active{opacity:1!important;visibility:visible}
.catalogue-card:hover .flip-alt,.product-card:hover .flip-alt{transform:none!important}
.catalogue-media .view-badge{z-index:4}

/* Add-to-quote buttons */
.q-add-v8{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border:1px solid rgba(22,53,81,.22);border-radius:8px;background:#fff;color:var(--primary,#163551);font:700 12px/1.1 var(--font-ui,var(--font-body,Arial,sans-serif));letter-spacing:.02em;text-transform:uppercase;cursor:pointer;box-shadow:0 5px 14px rgba(12,31,48,.05);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease}
.q-add-v8:hover,.q-add-v8:focus-visible{transform:translateY(-1px);border-color:var(--gold,#f0ae29);box-shadow:0 8px 18px rgba(12,31,48,.11);outline:none}
.q-add-v8.is-on{background:var(--gold,#f0ae29);border-color:var(--gold,#f0ae29);color:#0c1f30;box-shadow:0 7px 18px rgba(240,174,41,.22)}
.q-btn-icon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(22,53,81,.08);font-size:15px;line-height:1}
.q-add-v8.is-on .q-btn-icon{background:rgba(12,31,48,.11)}
.q-add-card-v8{width:100%;margin:12px 0 0}
.q-add-block-v8{width:100%;margin:0 0 10px}
.q-add-detail-v8{min-height:48px;padding:13px 18px;margin-left:10px}

/* Floating quote list */
.q-fab-v8{appearance:none;-webkit-appearance:none;position:fixed;left:18px;bottom:18px;z-index:1100;display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:8px 9px 8px 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#163551;color:#fff;font:700 13px/1 var(--font-ui,var(--font-body,Arial,sans-serif));box-shadow:0 14px 34px rgba(12,31,48,.28);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.q-fab-v8:hover,.q-fab-v8:focus-visible{background:#0c1f30;transform:translateY(-2px);box-shadow:0 18px 40px rgba(12,31,48,.34);outline:2px solid rgba(240,174,41,.55);outline-offset:2px}
.q-fab-v8[hidden]{display:none!important}
.q-fab-v8 b{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:var(--gold,#f0ae29);color:#0c1f30;font-size:12px}
.q-fab-icon{font-size:17px;opacity:.9}

.q-panel-v8{position:fixed;left:18px;bottom:78px;z-index:1101;width:min(390px,calc(100vw - 36px));max-height:min(68vh,560px);overflow:auto;padding:0;border:1px solid rgba(22,53,81,.12);border-radius:16px;background:#fff;color:#162a3e;box-shadow:0 26px 70px rgba(12,31,48,.28);font-family:var(--font-body,Arial,sans-serif)}
.q-panel-v8[hidden]{display:none!important}
.q-head-v8{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 18px 14px;border-bottom:1px solid rgba(22,53,81,.09);background:rgba(255,255,255,.97);backdrop-filter:blur(10px)}
.q-head-v8 strong{display:block;margin-top:3px;color:#0c1f30;font:700 22px/1.05 var(--font-headline,var(--font-ui,Arial,sans-serif));letter-spacing:.01em;text-transform:uppercase}
.q-eyebrow-v8{display:block;color:#6a7a89;font:700 10px/1 var(--font-ui,var(--font-body,Arial,sans-serif));letter-spacing:.12em;text-transform:uppercase}
.q-x-v8{appearance:none;border:0;width:34px;height:34px;border-radius:50%;background:#f2f5f7;color:#163551;font:400 25px/30px Arial,sans-serif;cursor:pointer;flex:0 0 auto}
.q-x-v8:hover,.q-x-v8:focus-visible{background:#e7edf1;outline:2px solid rgba(240,174,41,.55)}
.q-items-v8{list-style:none;margin:0;padding:0 18px}
.q-items-v8 li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid rgba(22,53,81,.09)}
.q-items-v8 li a{min-width:0;color:#163551;font:650 13.5px/1.35 var(--font-body,Arial,sans-serif);text-decoration:none}
.q-items-v8 li a:hover{text-decoration:underline;text-decoration-color:var(--gold,#f0ae29);text-underline-offset:3px}
.q-rm-v8,.q-clear-v8{appearance:none;border:0;background:transparent;color:#6c7883;font:600 11px/1 var(--font-ui,var(--font-body,Arial,sans-serif));text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.q-rm-v8:hover,.q-clear-v8:hover{color:#9e3d2b}
.q-foot-v8{position:sticky;bottom:0;display:flex;align-items:center;gap:12px;padding:14px 18px 18px;background:linear-gradient(to bottom,rgba(255,255,255,.93),#fff 35%);backdrop-filter:blur(10px)}
.q-send-v8{display:inline-flex;align-items:center;justify-content:space-between;gap:16px;flex:1;min-height:46px;padding:12px 15px;border-radius:8px;background:var(--gold,#f0ae29);color:#0c1f30;font:800 12px/1 var(--font-ui,var(--font-body,Arial,sans-serif));letter-spacing:.03em;text-transform:uppercase;text-decoration:none;box-shadow:0 8px 18px rgba(240,174,41,.2)}
.q-send-v8:hover{background:#ffc64f;color:#0c1f30}
.q-empty-v8{margin:0;padding:20px 18px;color:#6d7a86;font-size:13px}
.q-live-v8{position:fixed!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(max-width:700px){
  .q-fab-v8{left:12px;bottom:82px}
  .q-panel-v8{left:12px;bottom:140px;width:calc(100vw - 24px);max-height:62vh}
  .q-add-detail-v8{margin:10px 0 0;width:100%}
}

@media(prefers-reduced-motion:reduce){
  .flip-alt,.q-add-v8,.q-fab-v8{transition:none!important}
}
