/* ==========================================================================
   FAB SUPPLIES — Design system
   Ported from the approved redesign concept. All classes are prefixed `fab-`
   so nothing collides with WooCommerce or plugin styles.
   ========================================================================== */

:root{
  --fab-ink-900:#0B1622; --fab-ink-800:#12212F; --fab-ink-700:#1A2E42; --fab-ink-600:#264057;
  --fab-gold-300:#EBD5A3; --fab-gold-400:#D9B769; --fab-gold-500:#C8A04A; --fab-gold-600:#A88232; --fab-gold-700:#7E611F;
  --fab-n-0:#FFFFFF; --fab-n-25:#FAFBFC; --fab-n-50:#F4F6F8; --fab-n-100:#EAEDF0; --fab-n-200:#DCE1E6;
  --fab-n-300:#C2C9D1; --fab-n-400:#98A2AD; --fab-n-500:#6B7683; --fab-n-600:#4B545E; --fab-n-700:#333B44;
  --fab-ok:#12805C; --fab-ok-bg:#E6F4EF; --fab-warn:#9A6A11; --fab-warn-bg:#FBF1DC; --fab-stop:#B03A2E;
  --fab-r-sm:4px; --fab-r-md:8px; --fab-r-lg:14px;
  --fab-sh-1:0 1px 2px rgba(11,22,34,.06), 0 1px 3px rgba(11,22,34,.05);
  --fab-sh-2:0 4px 10px rgba(11,22,34,.07), 0 2px 4px rgba(11,22,34,.05);
  --fab-sh-3:0 18px 40px rgba(11,22,34,.14), 0 4px 10px rgba(11,22,34,.07);
  --fab-maxw:1260px;
  --fab-ease:cubic-bezier(.22,.61,.36,1);
  --fab-display:Archivo,Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --fab-body:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fab-n-25);color:var(--fab-ink-900);font-family:var(--fab-body);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.fab-display{font-family:var(--fab-display);letter-spacing:-.022em;line-height:1.08;margin:0;font-weight:700}
h1{font-size:clamp(34px,4.4vw,56px);font-weight:800}
h2{font-size:clamp(26px,3.2vw,40px)}
h3{font-size:clamp(19px,2vw,25px)}
h4{font-size:17px;letter-spacing:-.01em}
p{margin:0 0 1em}
a{color:var(--fab-gold-700);text-decoration:none}
a:hover{color:var(--fab-gold-600)}
img{max-width:100%;height:auto;display:block}
figure{margin:0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.fab-skip:focus{position:fixed;top:8px;left:8px;z-index:9999;background:#fff;padding:10px 16px;border-radius:6px;box-shadow:var(--fab-sh-2)}
:focus-visible{outline:3px solid var(--fab-gold-500);outline-offset:2px}

.fab-wrap{max-width:var(--fab-maxw);margin:0 auto;padding:0 28px}
.fab-sec{padding:88px 0}
.fab-sec--sm{padding:56px 0}
.fab-sec--light{background:#fff;border-top:1px solid var(--fab-n-200);border-bottom:1px solid var(--fab-n-200)}
.fab-eyebrow{font-family:var(--fab-display);font-weight:700;font-size:12px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--fab-gold-600);display:block}
.fab-eyebrow--dark{color:var(--fab-gold-400)}
.fab-lede{font-size:18px;color:var(--fab-n-600);max-width:62ch}
.fab-muted{color:var(--fab-n-500)}
.fab-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px;flex-wrap:wrap}
.fab-sec-head h2{margin:8px 0 0}
.fab-sec-head .fab-lede{margin:12px 0 0}

/* ---------- Buttons ---------- */
.fab-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--fab-display);
  font-weight:700;font-size:14px;letter-spacing:.02em;padding:14px 24px;border-radius:var(--fab-r-md);
  border:1.5px solid transparent;cursor:pointer;transition:all .2s var(--fab-ease);text-align:center;line-height:1.2}
.fab-btn--primary{background:var(--fab-gold-500);color:var(--fab-ink-900);border-color:var(--fab-gold-500)}
.fab-btn--primary:hover{background:var(--fab-gold-400);border-color:var(--fab-gold-400);color:var(--fab-ink-900);
  transform:translateY(-1px);box-shadow:0 8px 20px rgba(200,160,74,.32)}
.fab-btn--dark{background:var(--fab-ink-900);color:#fff;border-color:var(--fab-ink-900)}
.fab-btn--dark:hover{background:var(--fab-ink-700);border-color:var(--fab-ink-700);color:#fff;transform:translateY(-1px);box-shadow:var(--fab-sh-2)}
.fab-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.fab-btn--ghost:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
.fab-btn--outline{background:transparent;color:var(--fab-ink-900);border-color:var(--fab-n-300)}
.fab-btn--outline:hover{border-color:var(--fab-ink-900);background:var(--fab-n-50);color:var(--fab-ink-900)}
.fab-btn--sm{padding:10px 16px;font-size:13px}
.fab-btn--lg{padding:17px 30px;font-size:15px}
.fab-btn--block{width:100%}

/* ---------- Header ---------- */
.fab-topline{background:var(--fab-ink-900);color:rgba(255,255,255,.8);font-size:12.5px;border-bottom:1px solid rgba(255,255,255,.08)}
.fab-topline .fab-wrap{display:flex;align-items:center;gap:22px;min-height:38px;flex-wrap:wrap}
.fab-topline a{color:rgba(255,255,255,.8)}
.fab-topline a:hover{color:var(--fab-gold-400)}
.fab-topline b{color:var(--fab-gold-400);font-weight:600}
.fab-topline .fab-push{margin-left:auto}

.fab-head{background:#fff;border-bottom:1px solid var(--fab-n-200);position:sticky;top:0;z-index:60}
.admin-bar .fab-head{top:32px}
.fab-head__row{display:flex;align-items:center;gap:26px;min-height:80px}
.fab-logo{display:flex;align-items:center;gap:11px;flex-shrink:0;color:var(--fab-ink-900)}
.fab-logo:hover{color:var(--fab-ink-900)}
.fab-logo img{max-height:56px;width:auto}
.fab-logo__mark{width:42px;height:42px;border-radius:7px;background:linear-gradient(135deg,var(--fab-ink-800),var(--fab-ink-600));
  display:grid;place-items:center;color:var(--fab-gold-400);font-family:var(--fab-display);font-weight:800;font-size:15px}
.fab-logo__txt{font-family:var(--fab-display);font-weight:800;font-size:17px;line-height:1.05}
.fab-logo__txt span{display:block;font-size:9.5px;font-weight:600;letter-spacing:.19em;color:var(--fab-gold-600);margin-top:2px}

.fab-search{flex:1;max-width:520px;position:relative}
.fab-search input[type=search],.fab-search input[type=text]{width:100%;height:46px;border:1.5px solid var(--fab-n-200);
  border-radius:var(--fab-r-md);padding:0 50px 0 16px;font-size:14.5px;font-family:inherit;background:var(--fab-n-50);
  transition:all .18s var(--fab-ease);color:var(--fab-ink-900)}
.fab-search input:focus{outline:none;border-color:var(--fab-ink-700);background:#fff;box-shadow:0 0 0 3px rgba(26,46,66,.09)}
.fab-search__go{position:absolute;right:5px;top:5px;width:36px;height:36px;border-radius:6px;background:var(--fab-ink-900);
  display:grid;place-items:center;color:var(--fab-gold-400);border:none;cursor:pointer}
.fab-search__go svg{width:16px;height:16px;fill:currentColor}

.fab-head__actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.fab-head__cta{display:flex;flex-direction:column;line-height:1.15;padding-right:14px;border-right:1px solid var(--fab-n-200)}
.fab-head__cta small{font-size:11px;color:var(--fab-n-500)}
.fab-head__cta b{font-family:var(--fab-display);font-size:16.5px;letter-spacing:-.01em;color:var(--fab-ink-900)}
.fab-iconbtn{width:44px;height:44px;border-radius:var(--fab-r-md);border:1.5px solid var(--fab-n-200);display:grid;
  place-items:center;position:relative;cursor:pointer;transition:all .18s var(--fab-ease);background:#fff;color:var(--fab-ink-900)}
.fab-iconbtn:hover{border-color:var(--fab-ink-900);background:var(--fab-n-50);color:var(--fab-ink-900)}
.fab-iconbtn svg{width:19px;height:19px;fill:currentColor}
.fab-iconbtn__count{position:absolute;top:-6px;right:-6px;min-width:19px;height:19px;border-radius:99px;
  background:var(--fab-gold-500);color:var(--fab-ink-900);font-size:11px;font-weight:700;display:grid;place-items:center;padding:0 5px}
.fab-burger{display:none;width:44px;height:44px;border-radius:var(--fab-r-md);border:1.5px solid var(--fab-n-200);
  background:#fff;cursor:pointer;align-items:center;justify-content:center}
.fab-burger svg{width:20px;height:20px;fill:var(--fab-ink-900)}

/* ---------- Main nav ---------- */
.fab-nav{background:var(--fab-ink-900);position:sticky;top:80px;z-index:55}
.admin-bar .fab-nav{top:112px}
.fab-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px;flex-wrap:wrap}
.fab-nav li{position:relative}
.fab-nav a{display:block;color:rgba(255,255,255,.9);font-family:var(--fab-display);font-weight:600;font-size:14px;
  letter-spacing:.015em;padding:15px;transition:all .18s var(--fab-ease);border-bottom:3px solid transparent}
.fab-nav a:hover,.fab-nav .current-menu-item>a,.fab-nav .current-menu-parent>a{color:var(--fab-gold-400);border-bottom-color:var(--fab-gold-500)}
.fab-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:250px;background:#fff;
  box-shadow:var(--fab-sh-3);border-radius:0 0 var(--fab-r-md) var(--fab-r-md);padding:8px 0;flex-direction:column;z-index:70}
.fab-nav li:hover>.sub-menu,.fab-nav li:focus-within>.sub-menu{display:flex}
.fab-nav .sub-menu a{color:var(--fab-ink-900);font-weight:500;font-family:var(--fab-body);font-size:14px;
  padding:10px 18px;border-bottom:none;border-left:3px solid transparent}
.fab-nav .sub-menu a:hover{background:var(--fab-n-50);color:var(--fab-ink-900);border-left-color:var(--fab-gold-500)}
.fab-nav__trade{margin-left:auto}
.fab-nav__trade a{color:var(--fab-gold-400)}

/* ---------- Hero ---------- */
.fab-hero{position:relative;min-height:600px;display:flex;align-items:flex-end;background:var(--fab-ink-900);overflow:hidden}
.fab-hero__img{position:absolute;inset:0;background-size:cover;background-position:center;background-color:var(--fab-ink-800)}
.fab-hero__scrim{position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(11,22,34,.96) 0%,rgba(11,22,34,.86) 38%,rgba(11,22,34,.36) 68%,rgba(11,22,34,.62) 100%)}
.fab-hero__inner{position:relative;padding:96px 28px 64px;width:100%}
.fab-hero h1{color:#fff;max-width:16ch;margin-top:16px}
.fab-hero h1 em{font-style:normal;color:var(--fab-gold-400)}
.fab-hero__sub{color:rgba(255,255,255,.82);font-size:19px;max-width:52ch;margin:22px 0 32px}
.fab-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:44px}
.fab-proof{display:flex;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.16);padding-top:26px}
.fab-proof__i{padding-right:38px;margin-right:38px;border-right:1px solid rgba(255,255,255,.14)}
.fab-proof__i:last-child{border:none;margin-right:0;padding-right:0}
.fab-proof__i b{display:block;font-family:var(--fab-display);font-weight:800;font-size:30px;color:var(--fab-gold-400);letter-spacing:-.02em;line-height:1}
.fab-proof__i span{font-size:12.5px;color:rgba(255,255,255,.66);letter-spacing:.03em;text-transform:uppercase}

/* ---------- Page header (interior pages) ---------- */
.fab-pagehead{background:var(--fab-ink-900);color:#fff;position:relative;overflow:hidden}
.fab-pagehead__img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.34}
.fab-pagehead__scrim{position:absolute;inset:0;background:linear-gradient(90deg,var(--fab-ink-900) 12%,rgba(11,22,34,.55) 100%)}
.fab-pagehead .fab-wrap{position:relative;padding:48px 28px 52px}
.fab-pagehead h1{color:#fff;font-size:clamp(28px,3.6vw,44px)}
.fab-pagehead p{color:rgba(255,255,255,.78);max-width:66ch;margin:14px 0 0;font-size:16px}
.fab-crumb{font-size:12.5px;color:rgba(255,255,255,.6);margin-bottom:14px}
.fab-crumb a{color:var(--fab-gold-400)}
.fab-crumb--light{color:var(--fab-n-500)}
.fab-crumb--light a{color:var(--fab-gold-700)}

/* ---------- Trust strip ---------- */
.fab-trust{background:#fff;border-bottom:1px solid var(--fab-n-200)}
.fab-trust .fab-wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.fab-trust__i{display:flex;gap:13px;align-items:flex-start;padding:26px 26px 26px 0;border-right:1px solid var(--fab-n-100)}
.fab-trust__i:last-child{border-right:none}
.fab-trust__ico{width:38px;height:38px;border-radius:9px;background:var(--fab-n-50);border:1px solid var(--fab-n-200);
  display:grid;place-items:center;flex-shrink:0;color:var(--fab-ink-700)}
.fab-trust__ico svg{width:19px;height:19px;fill:currentColor}
.fab-trust__i b{display:block;font-family:var(--fab-display);font-size:14.5px}
.fab-trust__i small{color:var(--fab-n-500);font-size:13px;line-height:1.45;display:block}

/* ---------- Category cards ---------- */
.fab-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fab-cats--3{grid-template-columns:repeat(3,1fr)}
.fab-cat{position:relative;border-radius:var(--fab-r-lg);overflow:hidden;background:var(--fab-ink-800);min-height:236px;
  display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--fab-sh-1);
  transition:transform .28s var(--fab-ease),box-shadow .28s var(--fab-ease)}
.fab-cat:hover{transform:translateY(-4px);box-shadow:var(--fab-sh-3)}
.fab-cat__bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .5s var(--fab-ease)}
.fab-cat:hover .fab-cat__bg{transform:scale(1.07)}
.fab-cat__scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,22,34,.93) 4%,rgba(11,22,34,.55) 46%,rgba(11,22,34,.1) 100%)}
.fab-cat__body{position:relative;padding:20px}
.fab-cat__body h3{color:#fff;font-size:17.5px;margin-bottom:5px}
.fab-cat__body p{color:rgba(255,255,255,.72);font-size:12.8px;line-height:1.45;margin:0 0 11px;
  max-height:0;opacity:0;overflow:hidden;transition:all .3s var(--fab-ease)}
.fab-cat:hover .fab-cat__body p{max-height:64px;opacity:1}
.fab-cat__meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--fab-gold-400);font-weight:600;letter-spacing:.03em}

/* ---------- Product cards (WooCommerce loop) ---------- */
ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;list-style:none;margin:0;padding:0}
.fab-shop ul.products{grid-template-columns:repeat(3,1fr)}
ul.products li.product{background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);overflow:hidden;
  display:flex;flex-direction:column;transition:all .24s var(--fab-ease);position:relative;margin:0;width:auto;float:none}
ul.products li.product:hover{border-color:var(--fab-n-300);box-shadow:var(--fab-sh-3);transform:translateY(-3px)}
.fab-pcard__img{display:block;aspect-ratio:4/3;background:var(--fab-n-50);position:relative;border-bottom:1px solid var(--fab-n-100);overflow:hidden}
.fab-pcard__img img{width:100%;height:100%;object-fit:cover}
.fab-pcard__ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--fab-n-400);font-size:12px;
  font-family:var(--fab-display);letter-spacing:.08em;text-transform:uppercase;background:var(--fab-n-50)}
.fab-flag{position:absolute;top:11px;left:11px;font-family:var(--fab-display);font-size:10.5px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;padding:5px 9px;border-radius:var(--fab-r-sm);
  background:var(--fab-ink-900);color:var(--fab-gold-400);z-index:2}
.fab-flag--sale{background:var(--fab-stop);color:#fff}
.fab-pcard__body{padding:16px;display:flex;flex-direction:column;flex:1;gap:9px}
.fab-sku{font-size:11px;letter-spacing:.09em;color:var(--fab-n-400);font-weight:600;text-transform:uppercase}
.fab-pcard__body h2,.fab-pcard__title{font-size:14.6px;line-height:1.34;letter-spacing:-.008em;font-weight:600;
  font-family:var(--fab-body);margin:0;color:var(--fab-ink-900)}
.fab-swatches{display:flex;gap:5px;flex-wrap:wrap}
.fab-sw{width:15px;height:15px;border-radius:99px;border:1.5px solid rgba(11,22,34,.14);box-shadow:inset 0 0 0 1.5px #fff}
.fab-stock{display:inline-flex;align-items:center;gap:6px;font-size:12.2px;font-weight:600;color:var(--fab-ok)}
.fab-stock::before{content:"";width:7px;height:7px;border-radius:99px;background:currentColor;flex-shrink:0}
.fab-stock--made{color:var(--fab-warn)}
.fab-stock--out{color:var(--fab-n-500)}
.fab-pcard__price{margin-top:auto;padding-top:11px;border-top:1px solid var(--fab-n-100);
  display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.fab-price{font-family:var(--fab-display);font-weight:800;font-size:23px;letter-spacing:-.03em;line-height:1;color:var(--fab-ink-900)}
.fab-price small,.fab-price__vat{font-size:11.5px;font-weight:600;color:var(--fab-n-500);letter-spacing:0;
  display:block;margin-top:4px;font-family:var(--fab-body)}
.fab-price__unit{font-size:11.5px;color:var(--fab-n-500);text-align:right;line-height:1.35}
ul.products li.product .button,ul.products li.product .fab-btn{margin:0}

/* ---------- Shop layout ---------- */
.fab-shop{display:grid;grid-template-columns:268px 1fr;gap:34px;align-items:start;padding:34px 0 88px}
.fab-facets{background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);overflow:hidden;position:sticky;top:150px}
.fab-facets__head{background:var(--fab-ink-900);color:var(--fab-gold-400);padding:14px 18px;font-family:var(--fab-display);
  font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700}
.fab-facets .widget,.fab-facet{border-bottom:1px solid var(--fab-n-100);padding:16px 18px}
.fab-facets .widget:last-child,.fab-facet:last-child{border-bottom:none}
.fab-facets .widget-title,.fab-facet__title{font-family:var(--fab-display);font-size:12.5px;letter-spacing:.09em;
  text-transform:uppercase;color:var(--fab-n-600);display:block;margin:0 0 11px;font-weight:700}
.fab-facets ul{list-style:none;margin:0;padding:0}
.fab-facets li{padding:4.5px 0;font-size:13.6px;color:var(--fab-n-700)}
.fab-facets li a{color:var(--fab-n-700)}
.fab-facets li a:hover{color:var(--fab-ink-900)}
.fab-facets .count{color:var(--fab-n-400);font-size:11.5px}

.fab-subcats{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px;list-style:none;padding:0}
.fab-subcat{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--fab-n-200);border-radius:99px;
  padding:6px 15px 6px 6px;font-size:13.4px;font-weight:600;transition:all .2s var(--fab-ease);color:var(--fab-ink-900)}
.fab-subcat:hover{border-color:var(--fab-ink-900);box-shadow:var(--fab-sh-1);transform:translateY(-1px);color:var(--fab-ink-900)}
.fab-subcat i{width:29px;height:29px;border-radius:99px;background-size:cover;background-position:center;
  background-color:var(--fab-n-100);display:block;flex-shrink:0}

.fab-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.fab-toolbar .woocommerce-result-count{margin:0;font-size:14px;color:var(--fab-n-600)}
.fab-toolbar .woocommerce-ordering{margin:0 0 0 auto}
.fab-toolbar select,.fab-select{height:40px;border:1.5px solid var(--fab-n-200);border-radius:var(--fab-r-md);padding:0 12px;
  font-family:inherit;font-size:13.5px;background:#fff;color:var(--fab-ink-900);cursor:pointer}

/* ---------- Single product ---------- */
.fab-pdp{display:grid;grid-template-columns:1.15fr 1fr;gap:52px;padding:28px 0 20px;align-items:start}
.fab-pdp .woocommerce-product-gallery{width:100%!important;float:none!important;margin:0!important}
.fab-pdp .woocommerce-product-gallery__image img{border-radius:var(--fab-r-lg);border:1px solid var(--fab-n-200)}
.fab-buybox{background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);padding:24px;box-shadow:var(--fab-sh-1)}
.fab-pricebox{background:var(--fab-n-50);border:1px solid var(--fab-n-200);border-radius:var(--fab-r-md);padding:16px;margin-bottom:18px}
.fab-pricebox .fab-price{font-size:38px}
.fab-breaks{width:100%;border-collapse:collapse;margin-top:13px;font-size:13px}
.fab-breaks th{text-align:left;font-family:var(--fab-display);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--fab-n-500);font-weight:700;padding:0 0 7px;border-bottom:1px solid var(--fab-n-200)}
.fab-breaks td{padding:7px 0;border-bottom:1px solid var(--fab-n-100)}
.fab-breaks tr:last-child td{border-bottom:none}
.fab-breaks .fab-save{color:var(--fab-ok);font-weight:600}
.fab-assure{display:flex;flex-direction:column;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--fab-n-100)}
.fab-assure div{display:flex;gap:10px;font-size:13.3px;color:var(--fab-n-600);align-items:flex-start}
.fab-assure b{color:var(--fab-ink-900)}
.fab-assure svg{width:17px;height:17px;fill:var(--fab-ink-700);flex-shrink:0;margin-top:2px}
.fab-fitted{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 16px;background:var(--fab-ok-bg);
  border-radius:var(--fab-r-md);border:1px solid rgba(18,128,92,.18)}
.fab-fitted p{margin:0;font-size:14px;color:#0E5F45}

.fab-pdp .quantity input.qty{height:48px;width:78px;border:1.5px solid var(--fab-n-200);border-radius:var(--fab-r-md);
  text-align:center;font-family:var(--fab-display);font-weight:700;font-size:16px}
.fab-pdp form.cart{margin:0}
.fab-pdp .single_add_to_cart_button,.fab-quote-btn{background:var(--fab-gold-500)!important;color:var(--fab-ink-900)!important;
  border:none!important;font-family:var(--fab-display)!important;font-weight:700!important;font-size:15px!important;
  height:54px;border-radius:var(--fab-r-md)!important;width:100%;margin-top:14px!important;cursor:pointer;
  transition:all .2s var(--fab-ease);letter-spacing:.02em}
.fab-pdp .single_add_to_cart_button:hover,.fab-quote-btn:hover{background:var(--fab-gold-400)!important;
  transform:translateY(-1px);box-shadow:0 8px 20px rgba(200,160,74,.32)}

/* Product tabs */
.woocommerce-tabs ul.tabs{display:flex;gap:2px;border-bottom:2px solid var(--fab-n-200);margin:56px 0 0;
  padding:0;list-style:none;flex-wrap:wrap}
.woocommerce-tabs ul.tabs::before,.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce-tabs ul.tabs li{margin:0 0 -2px;padding:0;background:none;border:none;border-radius:0}
.woocommerce-tabs ul.tabs li a{display:block;font-family:var(--fab-display);font-weight:600;font-size:14.5px;padding:14px 20px;
  color:var(--fab-n-500);border-bottom:3px solid transparent;transition:all .18s var(--fab-ease)}
.woocommerce-tabs ul.tabs li a:hover{color:var(--fab-ink-900)}
.woocommerce-tabs ul.tabs li.active a{color:var(--fab-ink-900);border-bottom-color:var(--fab-gold-500)}
.woocommerce-tabs .panel{padding-top:26px;max-width:78ch}
.woocommerce-tabs .panel h2:first-child{display:none}
.fab-specs,.woocommerce-product-attributes{width:100%;border-collapse:collapse;margin-top:8px;font-size:14.5px}
.fab-specs th,.woocommerce-product-attributes th{text-align:left;padding:13px 0;width:250px;color:var(--fab-n-500);
  font-weight:500;border-bottom:1px solid var(--fab-n-100);vertical-align:top}
.fab-specs td,.woocommerce-product-attributes td{padding:13px 0;border-bottom:1px solid var(--fab-n-100);font-weight:500}
.woocommerce-product-attributes td p{margin:0}

/* ---------- Split feature ---------- */
.fab-split{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.fab-frame{position:relative;border-radius:var(--fab-r-lg);overflow:hidden;aspect-ratio:4/3;background:var(--fab-ink-800);box-shadow:var(--fab-sh-3)}
.fab-frame__img{position:absolute;inset:0;background-size:cover;background-position:center}
.fab-stamp{position:absolute;left:22px;bottom:22px;background:rgba(11,22,34,.9);backdrop-filter:blur(8px);
  border:1px solid rgba(200,160,74,.4);border-radius:var(--fab-r-md);padding:14px 18px;color:#fff}
.fab-stamp b{display:block;font-family:var(--fab-display);font-size:22px;color:var(--fab-gold-400);line-height:1}
.fab-stamp span{font-size:11.5px;color:rgba(255,255,255,.7);letter-spacing:.05em;text-transform:uppercase}
.fab-promise{list-style:none;padding:0;margin:26px 0 0}
.fab-promise li{display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--fab-n-200)}
.fab-promise li:last-child{border-bottom:none}
.fab-promise__tick{width:23px;height:23px;border-radius:99px;background:var(--fab-ok-bg);color:var(--fab-ok);display:grid;
  place-items:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:2px}
.fab-promise b{font-family:var(--fab-display);font-size:15.5px;display:block;margin-bottom:2px}
.fab-promise small{color:var(--fab-n-500);font-size:13.5px;line-height:1.5}

/* ---------- Reviews ---------- */
.fab-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.fab-quote{background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);padding:24px}
.fab-stars{color:var(--fab-gold-500);letter-spacing:2px;font-size:14px;margin-bottom:11px}
.fab-quote p{font-size:15px;line-height:1.62;color:var(--fab-n-700)}
.fab-who{display:flex;align-items:center;gap:11px;margin-top:16px;padding-top:16px;border-top:1px solid var(--fab-n-100)}
.fab-av{width:36px;height:36px;border-radius:99px;background:var(--fab-ink-800);color:var(--fab-gold-400);display:grid;
  place-items:center;font-family:var(--fab-display);font-weight:700;font-size:13px;flex-shrink:0}
.fab-who b{display:block;font-size:13.6px;font-family:var(--fab-display)}
.fab-who small{color:var(--fab-n-500);font-size:12px}

/* ---------- CTA band ---------- */
.fab-band{background:var(--fab-ink-900);color:#fff;position:relative;overflow:hidden}
.fab-band::before{content:"";position:absolute;inset:0;background:radial-gradient(720px 420px at 88% 0%,rgba(200,160,74,.2),transparent 62%)}
.fab-band .fab-wrap{position:relative;padding:74px 28px;display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.fab-band h2{color:#fff;margin:12px 0 0}
.fab-band p{color:rgba(255,255,255,.76);margin:14px 0 0;font-size:16.5px}
.fab-band__actions{display:flex;flex-direction:column;gap:11px}

/* ---------- Cards ---------- */
.fab-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fab-cards--3{grid-template-columns:repeat(3,1fr)}
.fab-cards--2{grid-template-columns:repeat(2,1fr)}
.fab-card{background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);padding:24px}
.fab-card h3,.fab-card h4{margin-bottom:9px}
.fab-card p{font-size:14.5px;color:var(--fab-n-600);margin:0}

/* ---------- Forms ---------- */
.fab-field{margin-bottom:14px}
.fab-field label{font-size:12.5px;font-weight:600;color:var(--fab-n-600);display:block;margin-bottom:6px}
.fab-field input,.fab-field select,.fab-field textarea,
.fab-form input[type=text],.fab-form input[type=email],.fab-form input[type=tel],.fab-form select,.fab-form textarea{
  width:100%;border:1.5px solid var(--fab-n-200);border-radius:var(--fab-r-md);padding:12px 13px;font-family:inherit;
  font-size:14.5px;background:#fff;color:var(--fab-ink-900)}
.fab-field input,.fab-field select{height:46px;padding:0 13px}
.fab-field textarea{resize:vertical;min-height:120px}
.fab-field input:focus,.fab-field select:focus,.fab-field textarea:focus{outline:none;border-color:var(--fab-ink-700);
  box-shadow:0 0 0 3px rgba(26,46,66,.09)}
.fab-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fab-notice{padding:14px 16px;border-radius:var(--fab-r-md);font-size:14.5px;margin-bottom:18px}
.fab-notice--ok{background:var(--fab-ok-bg);color:#0E5F45;border:1px solid rgba(18,128,92,.2)}
.fab-notice--err{background:#FDECEA;color:#9B2C1F;border:1px solid rgba(176,58,46,.2)}

/* ---------- Quote basket ---------- */
.fab-quotebar{position:fixed;bottom:0;left:0;right:0;background:var(--fab-ink-900);color:#fff;z-index:80;
  box-shadow:0 -6px 24px rgba(11,22,34,.24);transform:translateY(100%);transition:transform .3s var(--fab-ease)}
.fab-quotebar.is-open{transform:none}
body.fab-has-quote{padding-bottom:78px}
.fab-quotebar .fab-wrap{display:flex;align-items:center;gap:18px;padding:14px 28px;flex-wrap:wrap}
.fab-quotebar b{font-family:var(--fab-display);color:var(--fab-gold-400)}
.fab-quotebar .fab-push{margin-left:auto}
.fab-quotetable{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--fab-n-200);
  border-radius:var(--fab-r-lg);overflow:hidden;font-size:14.3px}
.fab-quotetable th{background:var(--fab-ink-900);color:#fff;text-align:left;padding:13px 16px;font-family:var(--fab-display);
  font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:700}
.fab-quotetable td{padding:13px 16px;border-bottom:1px solid var(--fab-n-100);vertical-align:top}
.fab-quotetable tr:last-child td{border-bottom:none}

/* ---------- Footer ---------- */
.fab-foot{background:#07101A;color:rgba(255,255,255,.7);font-size:14px}
.fab-foot a{color:rgba(255,255,255,.7)}
.fab-foot a:hover{color:var(--fab-gold-400)}
.fab-foot__top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:44px;padding:64px 0 48px}
.fab-foot h2,.fab-foot h3,.fab-foot .widget-title{font-family:var(--fab-display);font-size:12.5px;letter-spacing:.13em;
  text-transform:uppercase;color:#fff;margin:0 0 16px;font-weight:700}
.fab-foot ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px}
.fab-foot__brand p{font-size:14px;line-height:1.65;max-width:36ch}
.fab-certs{display:flex;gap:9px;margin-top:20px;flex-wrap:wrap}
.fab-cert{border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:8px 11px;font-size:10.5px;
  font-family:var(--fab-display);font-weight:700;letter-spacing:.07em;color:rgba(255,255,255,.82);text-align:center;line-height:1.3}
.fab-foot__bot{border-top:1px solid rgba(255,255,255,.1);padding:20px 0;display:flex;gap:18px;flex-wrap:wrap;
  font-size:12.6px;color:rgba(255,255,255,.5)}
.fab-foot__bot .fab-push{margin-left:auto}
.fab-foot__legal{flex-direction:row!important;gap:18px!important}
.fab-foot input[type=email]{height:44px;border-radius:8px;border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.06);color:#fff;padding:0 13px;font-family:inherit;font-size:13.5px;width:100%}
.fab-foot input[type=email]::placeholder{color:rgba(255,255,255,.4)}

/* ---------- WooCommerce global resets ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--fab-gold-500);
  border-radius:var(--fab-r-md);font-size:14.5px}
.woocommerce-message::before,.woocommerce-info::before{color:var(--fab-gold-600)}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  background:var(--fab-ink-900);color:#fff;font-family:var(--fab-display);font-weight:700;font-size:13px;
  border-radius:var(--fab-r-md);padding:11px 18px;transition:all .2s var(--fab-ease);line-height:1.2}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{
  background:var(--fab-ink-700);color:#fff}
.woocommerce .button.alt,.woocommerce button.button.alt{background:var(--fab-gold-500);color:var(--fab-ink-900)}
.woocommerce .button.alt:hover,.woocommerce button.button.alt:hover{background:var(--fab-gold-400);color:var(--fab-ink-900)}
.woocommerce-breadcrumb{font-size:12.5px;color:var(--fab-n-500)}
.woocommerce span.onsale{background:var(--fab-stop);color:#fff;font-family:var(--fab-display);font-weight:700;
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;min-height:0;min-width:0;padding:6px 10px;
  border-radius:var(--fab-r-sm);line-height:1;top:11px;left:11px;right:auto;margin:0}
.woocommerce nav.woocommerce-pagination ul{border:none;display:flex;gap:6px;justify-content:center;margin-top:34px}
.woocommerce nav.woocommerce-pagination ul li{border:none}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--fab-n-200);border-radius:var(--fab-r-md);background:#fff;padding:9px 14px;
  font-family:var(--fab-display);font-weight:600;font-size:13.5px;color:var(--fab-ink-900)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--fab-ink-900);color:#fff;border-color:var(--fab-ink-900)}

/* ---------- Editor content (page.php / category descriptions) ---------- */
.fab-content{max-width:78ch}
.fab-content h2{margin:38px 0 14px}
.fab-content h3{margin:28px 0 10px}
.fab-content ul,.fab-content ol{padding-left:22px;line-height:1.75}
.fab-content li{margin-bottom:6px}
.fab-content table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14.5px;background:#fff;
  border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);overflow:hidden}
.fab-content th{background:var(--fab-ink-900);color:#fff;text-align:left;padding:12px 15px;font-family:var(--fab-display);
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.fab-content td{padding:12px 15px;border-bottom:1px solid var(--fab-n-100)}
.fab-content tr:last-child td{border-bottom:none}
.fab-content tr:nth-child(even) td{background:var(--fab-n-25)}
.fab-content blockquote{border-left:3px solid var(--fab-gold-500);padding-left:20px;margin:24px 0;color:var(--fab-n-600)}
.fab-term-desc{max-width:80ch;margin-bottom:26px}

/* ---------- Responsive ---------- */
@media(max-width:1080px){
  .fab-cats,ul.products,.fab-shop ul.products{grid-template-columns:repeat(3,1fr)}
  .fab-split,.fab-band .fab-wrap,.fab-pdp,.fab-shop{grid-template-columns:1fr;gap:34px}
  .fab-shop{padding-top:24px}
  .fab-facets{position:static}
  .fab-trust .fab-wrap{grid-template-columns:repeat(2,1fr)}
  .fab-trust__i:nth-child(2n){border-right:none}
  .fab-foot__top{grid-template-columns:1fr 1fr}
  .fab-quotes,.fab-cards,.fab-cards--3{grid-template-columns:1fr}
  .fab-cards--2{grid-template-columns:1fr}
}
@media(max-width:820px){
  .fab-burger{display:flex}
  .fab-head{position:static}
  .fab-head__row{flex-wrap:wrap;gap:14px;padding:14px 0;min-height:0}
  .fab-head__cta{display:none}
  .fab-search{order:3;flex-basis:100%;max-width:none}
  .fab-head__actions{margin-left:auto}
  .fab-topline .fab-wrap{flex-wrap:nowrap;overflow:hidden;gap:0}
  .fab-topline .fab-wrap>*:not(:first-child){display:none}
  .fab-nav{position:static}
  .fab-nav ul{flex-direction:column;align-items:stretch;display:none}
  .fab-nav.is-open ul{display:flex}
  .fab-nav a{padding:13px 28px;border-bottom:1px solid rgba(255,255,255,.08)}
  .fab-nav a:hover,.fab-nav .current-menu-item>a{border-bottom-color:rgba(255,255,255,.08)}
  .fab-nav .sub-menu{display:none!important}
  .fab-nav__trade{margin-left:0}
}
@media(max-width:720px){
  .fab-wrap{padding:0 18px}
  .fab-cats,ul.products,.fab-shop ul.products{grid-template-columns:repeat(2,1fr)}
  .fab-cats--3{grid-template-columns:1fr}
  .fab-sec{padding:56px 0}
  .fab-hero{min-height:auto}
  .fab-hero__inner{padding:56px 18px 44px}
  .fab-proof__i{padding-right:22px;margin-right:22px}
  .fab-proof__i b{font-size:23px}
  .fab-trust .fab-wrap{grid-template-columns:1fr}
  .fab-trust__i{border-right:none;border-bottom:1px solid var(--fab-n-100);padding:20px 0}
  .fab-trust__i:last-child{border-bottom:none}
  .fab-foot__top{grid-template-columns:1fr;gap:34px}
  .fab-grid-2{grid-template-columns:1fr}
  .fab-band .fab-wrap{padding:56px 18px}
  .fab-specs th,.woocommerce-product-attributes th{width:44%}
}
@media(max-width:379px){
  ul.products,.fab-shop ul.products,.fab-cats{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ---- WooCommerce grid overrides (higher specificity than woocommerce-layout.css) ---- */
.woocommerce ul.products,
.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px;list-style:none;margin:0;padding:0;float:none}
.woocommerce ul.products::before,.woocommerce ul.products::after,
.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{content:none!important;display:none!important}
.fab-shop .woocommerce ul.products,.fab-shop ul.products,
.woocommerce .fab-shop ul.products{grid-template-columns:repeat(3,1fr)!important}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;padding:0!important;float:none!important;clear:none!important}
.woocommerce ul.products li.product .fab-pcard__img{margin:0}
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0;font-size:14.6px}
@media(max-width:1080px){.woocommerce ul.products,.fab-shop ul.products,.woocommerce .fab-shop ul.products{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:720px){.woocommerce ul.products,.fab-shop ul.products,.woocommerce .fab-shop ul.products{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:379px){.woocommerce ul.products,.fab-shop ul.products,.woocommerce .fab-shop ul.products{grid-template-columns:1fr!important}}

/* ---- Product gallery: keep the zoom trigger under the sticky nav ---- */
.woocommerce div.product div.images .woocommerce-product-gallery__trigger,
.woocommerce-product-gallery__trigger{z-index:4!important;top:14px!important;right:14px!important;left:auto!important}
.fab-pdp .woocommerce-product-gallery{position:relative;background:#fff;border-radius:var(--fab-r-lg)}
.fab-pdp .woocommerce-product-gallery__image img{border-radius:var(--fab-r-lg)}
.fab-pdp .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,1fr);gap:9px;margin:9px 0 0;padding:0;list-style:none}
.fab-pdp .flex-control-thumbs li{width:auto!important;margin:0!important;float:none!important}
.fab-pdp .flex-control-thumbs img{border-radius:var(--fab-r-md);border:2px solid var(--fab-n-200);opacity:1}
.fab-pdp .flex-control-thumbs img.flex-active,.fab-pdp .flex-control-thumbs img:hover{border-color:var(--fab-gold-500)}
/* Anything targeted by an anchor clears the sticky header + nav */
.fab-pdp h1,.woocommerce-tabs{scroll-margin-top:240px}

/* ---- PDP summary column: beat woocommerce.css float/width ---- */
.woocommerce div.product div.summary,
.woocommerce-page div.product div.summary,
.fab-pdp .summary.entry-summary{float:none!important;width:100%!important;clear:none!important;margin-bottom:0!important}
.woocommerce div.product div.images,
.woocommerce-page div.product div.images{float:none!important;width:100%!important}
.woocommerce div.product{float:none!important;width:auto!important}
.fab-pdp::after{content:none!important}

/* ---- PDP tabs: beat woocommerce.css chrome ---- */
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:56px 0 0!important;
  display:flex!important;gap:2px;border-bottom:2px solid var(--fab-n-200)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{content:none!important;display:none!important;border:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;
  margin:0 0 -2px!important;padding:0!important;box-shadow:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;font-family:var(--fab-display);font-weight:600;
  font-size:14.5px;padding:14px 20px;color:var(--fab-n-600);border-bottom:2px solid transparent;text-shadow:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--fab-ink-900);border-bottom-color:var(--fab-gold-500)}

/* ---- Compact one-line nav + category mega menu (v1.0.4) ---- */
.fab-nav > .fab-wrap{position:relative}
.fab-nav > .fab-wrap > ul{flex-wrap:nowrap!important;gap:0}
.fab-nav > .fab-wrap > ul > li{position:static}
.fab-nav > .fab-wrap > ul > li > a{font-size:clamp(11.5px,.95vw,13px);padding:15px clamp(6px,.62vw,10px);
  letter-spacing:.004em;white-space:nowrap}
.fab-nav__trade > a{padding-left:14px!important}

.fab-nav .fab-mega{position:absolute;left:0;right:0;top:100%;z-index:70;background:#fff;
  border-top:3px solid var(--fab-gold-500);box-shadow:0 26px 52px -14px rgba(11,22,34,.34);
  border-radius:0 0 var(--fab-r-lg) var(--fab-r-lg);
  opacity:0;visibility:hidden;transform:translateY(-6px);pointer-events:none;
  transition:opacity .16s var(--fab-ease),transform .16s var(--fab-ease),visibility .16s}
.fab-nav li.fab-has-mega:hover>.fab-mega,
.fab-nav li.fab-has-mega:focus-within>.fab-mega{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.fab-mega__inner{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:30px;padding:26px 28px}
.fab-mega:not(.fab-mega--media) .fab-mega__inner{grid-template-columns:minmax(0,1fr) 210px}
.fab-mega__cols{display:grid;grid-template-columns:repeat(var(--fab-mega-cols,2),minmax(0,1fr));
  gap:1px 22px;align-content:start}
.fab-nav .fab-mega__link{display:flex!important;align-items:baseline;justify-content:space-between;gap:10px;
  color:var(--fab-ink-900)!important;font-family:var(--fab-body)!important;font-weight:500!important;
  font-size:14px!important;line-height:1.35;padding:9px 10px!important;border-bottom:0!important;
  border-radius:var(--fab-r-sm);white-space:normal!important;letter-spacing:0!important}
.fab-nav .fab-mega__link:hover{background:var(--fab-n-50);color:var(--fab-ink-900)!important}
.fab-mega__link i{font-style:normal;font-size:11.5px;color:var(--fab-n-400);font-variant-numeric:tabular-nums}
.fab-mega__side{border-left:1px solid var(--fab-n-200);padding-left:26px;display:flex;flex-direction:column;
  gap:14px;justify-content:flex-start}
.fab-nav .fab-mega__img{display:block!important;padding:0!important;border-bottom:0!important;
  border-radius:var(--fab-r-md);overflow:hidden;line-height:0}
.fab-mega__img img{width:100%;height:148px;object-fit:cover;display:block}
.fab-nav .fab-mega__all{display:block!important;color:var(--fab-ink-900)!important;
  font-family:var(--fab-display)!important;font-weight:700!important;font-size:13.5px!important;
  padding:12px 14px!important;text-align:center;background:var(--fab-gold-500);
  border-radius:var(--fab-r-md);border-bottom:0!important;white-space:normal!important;letter-spacing:.01em}
.fab-nav .fab-mega__all:hover{background:var(--fab-gold-400);color:var(--fab-ink-900)!important}

/* Burger takes over before the bar can crowd */
@media(max-width:1200px){
  .fab-burger{display:flex}
  .fab-nav{position:static}
  .fab-nav > .fab-wrap > ul{flex-direction:column;align-items:stretch;display:none;flex-wrap:wrap!important}
  .fab-nav.is-open > .fab-wrap > ul{display:flex}
  .fab-nav > .fab-wrap > ul > li > a{padding:13px 28px;font-size:14px;
    border-bottom:1px solid rgba(255,255,255,.08)}
  .fab-nav a:hover,.fab-nav .current-menu-item>a{border-bottom-color:rgba(255,255,255,.08)}
  .fab-nav__trade{margin-left:0}
  .fab-mega{display:none!important}
}

/* ---- Mega panel: main column + category blurb; larger logo (v1.0.5) ---- */
.fab-mega__main{min-width:0;display:flex;flex-direction:column}
.fab-mega__blurb{margin:16px 0 0;padding:0 10px;color:var(--fab-n-600);
  font-size:13.5px;line-height:1.6;max-width:64ch}
.fab-logo img{max-height:68px!important}
.fab-nav .fab-mega__img{background:var(--fab-n-100,#EDF0F3)}

/* ---- Logo badge (v1.0.7) ---- */
.fab-logo img{max-height:84px!important;width:auto}
.fab-head__row{min-height:104px}
@media(max-width:820px){.fab-logo img{max-height:56px!important}.fab-head__row{min-height:0}}

/* ---- Mega panel: grouped sub-subcategories (v1.0.8) ---- */
.fab-mega__cols{gap:16px 26px!important;align-items:start}
.fab-mega__group{break-inside:avoid;min-width:0}
.fab-nav .fab-mega__link--head{font-family:var(--fab-display)!important;font-weight:700!important;
  font-size:13.8px!important;padding:6px 10px!important}
.fab-nav .fab-mega__link--sub{font-size:13.2px!important;padding:6px 10px 6px 22px!important;
  color:var(--fab-n-600)!important;position:relative}
.fab-nav .fab-mega__link--sub::before{content:'';position:absolute;left:10px;top:50%;width:5px;height:1px;
  background:var(--fab-n-300)}
.fab-nav .fab-mega__link--sub:hover{color:var(--fab-ink-900)!important}

/* ---- Brand lockup logo (v1.1.0) ---- */
.fab-logo img{max-height:78px!important;width:auto}
.fab-head__row{min-height:104px}
@media(max-width:820px){.fab-logo img{max-height:48px!important}.fab-head__row{min-height:0}}

/* ---- Footer rebuild (v1.2.0) ---- */
.fab-foot__top{grid-template-columns:1.15fr 1fr 1.05fr 1.15fr!important;gap:40px!important;padding:66px 0 44px!important}
.fab-foot h2{font-family:var(--fab-display)!important;font-size:19px!important;letter-spacing:.005em!important;
  text-transform:none!important;color:var(--fab-gold-500)!important;font-weight:800!important;margin:0 0 18px!important}

.fab-foot__logo{display:block;margin-bottom:18px}
.fab-foot__logo img{max-width:240px;width:100%;height:auto;display:block}
.fab-foot__tag{font-size:14.5px;line-height:1.6;max-width:32ch;margin:0 0 22px}
.fab-foot__social{gap:16px!important}
.fab-foot__social a{display:flex!important;align-items:center;gap:14px;color:#fff!important;font-size:14.5px}
.fab-foot__social a:hover{color:var(--fab-gold-400)!important}
.fab-foot__ico{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;color:#fff}

.fab-branch{margin-bottom:22px;line-height:1.65}
.fab-branch__name{margin:0 0 2px;color:#fff;font-size:15px}
.fab-branch__name strong{font-weight:700}
.fab-branch__name span{color:rgba(255,255,255,.6);font-weight:400}
.fab-foot address{font-style:normal;margin:0;font-size:14.5px}
.fab-branch a{display:inline-block;margin-top:2px}

.fab-foot__split{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.fab-foot__split ul{gap:10px}
.fab-foot__cats{display:grid!important;grid-template-columns:1fr 1fr;gap:10px 22px}

.fab-foot__mid{display:grid;grid-template-columns:1fr auto;gap:44px;align-items:end;
  border-top:1px solid rgba(255,255,255,.1);padding:34px 0 30px}
.fab-foot__signup{max-width:379px}
.fab-foot__signup p{font-size:13.6px;margin:0 0 14px;line-height:1.6}
.fab-foot__form{display:flex;gap:8px}
.fab-foot__certs{flex-direction:row!important;gap:16px!important;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.fab-foot__certs img{display:block;width:auto;height:104px;border-radius:6px;background:#fff}

.fab-foot__bot{justify-content:flex-start!important}

@media(max-width:1080px){
  .fab-foot__top{grid-template-columns:1fr 1fr!important;gap:36px!important}
  .fab-foot__mid{grid-template-columns:1fr;align-items:start;gap:28px}
  .fab-foot__certs{justify-content:flex-start}
}
@media(max-width:720px){
  .fab-foot__top{grid-template-columns:1fr!important}
  .fab-foot__certs img{height:82px}
}
.fab-tabpanel > :first-child{margin-top:0}

/* ---- Footer category list: flow in columns so a wrapped item doesn't leave a gap ---- */
.fab-foot__cats{display:block!important;columns:2;column-gap:22px}
.fab-foot__cats li{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 10px}

/* ---- Product information accordion (v1.3.0) ---- */
.fab-acc{margin:56px 0 0;border-top:1px solid var(--fab-n-200)}
.fab-acc__item{position:relative;border-bottom:1px solid var(--fab-n-200);background:#fff;
  transition:background .2s var(--fab-ease)}
.fab-acc__item:nth-child(even){background:rgba(11,22,34,.022)}
.fab-acc__item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--fab-gold-500);transform:scaleY(0);transform-origin:top;
  transition:transform .26s var(--fab-ease)}
.fab-acc__item.is-open::before{transform:scaleY(1)}

.fab-acc__head{margin:0;font-size:inherit;line-height:inherit}
.fab-acc__btn{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;
  background:none;border:0;cursor:pointer;text-align:left;padding:26px 30px;
  font-family:var(--fab-display);font-weight:600;font-size:14px;letter-spacing:.17em;
  text-transform:uppercase;color:var(--fab-n-700);transition:color .18s var(--fab-ease)}
.fab-acc__btn:hover{color:var(--fab-ink-900)}
.fab-acc__item.is-open .fab-acc__btn{color:var(--fab-ink-900);font-weight:700}

.fab-acc__ico{position:relative;flex:0 0 18px;width:18px;height:18px;color:var(--fab-gold-600);
  transition:transform .3s var(--fab-ease),color .18s var(--fab-ease)}
.fab-acc__ico::before,.fab-acc__ico::after{content:'';position:absolute;background:currentColor;border-radius:2px}
.fab-acc__ico::before{left:0;right:0;top:8px;height:2px}
.fab-acc__ico::after{top:0;bottom:0;left:8px;width:2px;transition:transform .3s var(--fab-ease),opacity .2s}
.fab-acc__item.is-open .fab-acc__ico{transform:rotate(180deg)}
.fab-acc__item.is-open .fab-acc__ico::after{transform:scaleY(0);opacity:0}
.fab-acc__btn:hover .fab-acc__ico{color:var(--fab-gold-500)}

.fab-acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s var(--fab-ease)}
.fab-acc__item.is-open .fab-acc__panel{grid-template-rows:1fr}
.fab-acc__inner{overflow:hidden;min-height:0}
.fab-acc__inner > *{padding:0 30px}
.fab-acc__inner > *:last-child{padding-bottom:32px}
.fab-acc .fab-tabpanel{max-width:80ch}
.fab-acc .fab-tabpanel > :first-child{margin-top:0}
.fab-acc h2:not(.fab-acc__head),.fab-acc h3{font-size:19px;margin:26px 0 10px}
.fab-acc table{width:100%;border-collapse:collapse;margin:16px 0}
.fab-acc td,.fab-acc th{border-bottom:1px solid var(--fab-n-200);padding:10px 0;text-align:left;vertical-align:top}
.fab-acc ul,.fab-acc ol{padding-left:20px}
.fab-acc li{margin:0 0 7px}

@media(prefers-reduced-motion:reduce){
  .fab-acc__panel,.fab-acc__ico,.fab-acc__item::before{transition:none!important}
}
@media(max-width:720px){
  .fab-acc__btn{padding:20px 18px;font-size:12.8px;letter-spacing:.14em}
  .fab-acc__inner > *{padding:0 18px}
  .fab-acc__inner > *:last-child{padding-bottom:24px}
}

/* ---- Upsells & related products spacing (v1.3.1) ---- */
.woocommerce div.product .up-sells,
.woocommerce div.product .cross-sells,
.woocommerce div.product .related{clear:both;margin:0;padding:0}
.woocommerce div.product .up-sells{margin-top:78px}
.woocommerce div.product .related,
.woocommerce div.product .cross-sells{margin-top:74px;padding-top:66px;
  border-top:1px solid var(--fab-n-200)}
.woocommerce div.product .up-sells > h2,
.woocommerce div.product .cross-sells > h2,
.woocommerce div.product .related > h2{margin:0 0 32px;padding:0}
.woocommerce div.product .up-sells ul.products,
.woocommerce div.product .cross-sells ul.products,
.woocommerce div.product .related ul.products{margin-bottom:0}
@media(max-width:720px){
  .woocommerce div.product .up-sells{margin-top:52px}
  .woocommerce div.product .related,
  .woocommerce div.product .cross-sells{margin-top:48px;padding-top:44px}
  .woocommerce div.product .up-sells > h2,
  .woocommerce div.product .cross-sells > h2,
  .woocommerce div.product .related > h2{margin:0 0 22px}
}

/* ---- Shop facets (v1.4.0) ---- */
.fab-facets{align-self:start;position:sticky;top:calc(var(--fab-stick,120px) + 14px)}
.fab-facet{border-top:1px solid var(--fab-n-200);padding:18px 0 4px}
.fab-facet:first-of-type{border-top:0;padding-top:6px}
.fab-facet__title{display:block;font-family:var(--fab-display);font-weight:700;font-size:11.5px;
letter-spacing:.16em;text-transform:uppercase;color:var(--fab-n-600);margin:0 0 11px}
.fab-facet.is-active .fab-facet__title{color:var(--fab-gold-700)}
.fab-facet__up{display:block;font-size:13px;color:var(--fab-n-600);text-decoration:none;margin:0 0 8px}
.fab-facet__up:hover{color:var(--fab-ink-900)}
.fab-facet__list{list-style:none;margin:0;padding:0}
.fab-facet__list--scroll{max-height:262px;overflow-y:auto;padding-right:6px}
.fab-facet__list--scroll::-webkit-scrollbar{width:5px}
.fab-facet__list--scroll::-webkit-scrollbar-thumb{background:var(--fab-n-200);border-radius:3px}
.fab-facet__list li{margin:0}
.fab-facet__list a{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:14px;
color:var(--fab-n-700);text-decoration:none;line-height:1.35}
.fab-facet__list a:hover{color:var(--fab-ink-900)}
.fab-facet__list a > span:not(.fab-box){flex:1 1 auto;min-width:0}
.fab-facet__list i{flex:0 0 auto;font-style:normal;font-size:11.5px;color:var(--fab-n-500);
font-variant-numeric:tabular-nums}
.fab-facet__list li.is-current > a{color:var(--fab-ink-900);font-weight:600}
.fab-box{flex:0 0 15px;width:15px;height:15px;border:1.5px solid var(--fab-n-300);border-radius:3px;
position:relative;transition:border-color .15s var(--fab-ease),background .15s var(--fab-ease)}
.fab-facet__list a:hover .fab-box{border-color:var(--fab-gold-500)}
.fab-box.is-on{background:var(--fab-gold-500);border-color:var(--fab-gold-500)}
.fab-box.is-on::after{content:'';position:absolute;left:4px;top:.5px;width:4px;height:8px;
border:solid #fff;border-width:0 2px 2px 0;transform:rotate(42deg)}
.fab-facet__clear{display:inline-block;margin:0 0 14px;padding:6px 12px;border-radius:999px;
background:var(--fab-ink-900);color:#fff;font-size:12.5px;font-weight:600;text-decoration:none}
.fab-facet__clear:hover{background:var(--fab-gold-600)}
@media(max-width:900px){
.fab-facets{position:static}
.fab-facet__list--scroll{max-height:200px}
}

/* ---- Custom order panel (v1.4.2) ---- */
.fab-custom__ways{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.fab-custom__ways .fab-btn{margin:0}

/* ---- WooCommerce variation form on buyable products (v1.4.5) ---- */
.woocommerce div.product form.cart .variations{display:block;width:100%;margin:0 0 4px;border:0}
.woocommerce div.product form.cart .variations tbody,
.woocommerce div.product form.cart .variations tr,
.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td{display:block;width:100%;border:0;padding:0;background:none}
.woocommerce div.product form.cart .variations tr{margin:0 0 14px}
.woocommerce div.product form.cart .variations label{display:block;margin:0 0 6px;padding:0;
font-family:var(--fab-display);font-weight:600;font-size:12px;letter-spacing:.13em;
text-transform:uppercase;color:var(--fab-n-600)}
.woocommerce div.product form.cart .variations select{width:100%;min-height:48px;padding:0 38px 0 14px;
border:1px solid var(--fab-n-300);border-radius:10px;background:#fff;font:inherit;font-size:15px;
color:var(--fab-ink-900);appearance:none;-webkit-appearance:none;cursor:pointer;
background-image:linear-gradient(45deg,transparent 50%,var(--fab-n-600) 50%),linear-gradient(135deg,var(--fab-n-600) 50%,transparent 50%);
background-position:calc(100% - 19px) 21px,calc(100% - 14px) 21px;background-size:5px 5px,5px 5px;
background-repeat:no-repeat;transition:border-color .16s var(--fab-ease)}
.woocommerce div.product form.cart .variations select:focus{outline:0;border-color:var(--fab-gold-500);
box-shadow:0 0 0 3px rgba(200,160,74,.18)}
.woocommerce div.product form.cart .reset_variations{display:inline-block;margin:2px 0 0;font-size:13px;
color:var(--fab-n-600);text-decoration:underline}
.woocommerce div.product form.cart .reset_variations:hover{color:var(--fab-ink-900)}
.woocommerce div.product form.cart .woocommerce-variation-price{margin:0 0 14px;
font-family:var(--fab-display);font-weight:700;font-size:26px;color:var(--fab-ink-900)}
.woocommerce div.product form.cart .woocommerce-variation-availability{margin:0 0 12px;font-size:14px}
.woocommerce div.product form.cart .quantity{margin:0 0 12px}

/* ---- Shop facets: sticky, self-scrolling, collapsible (v1.5.0) ---- */
.fab-shop{align-items:start}
.fab-facets{position:sticky;top:calc(var(--fab-stick,134px) + 14px);
display:flex;flex-direction:column;max-height:calc(100vh - var(--fab-stick,134px) - 34px);
overflow:hidden}
.fab-facets__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
scrollbar-width:thin;scrollbar-color:var(--fab-n-300) transparent}
.fab-facets__scroll::-webkit-scrollbar{width:6px}
.fab-facets__scroll::-webkit-scrollbar-thumb{background:var(--fab-n-300);border-radius:3px}
.fab-facets__scroll::-webkit-scrollbar-track{background:transparent}

/* Header doubles as the mobile open/close control. */
.fab-facets__head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;
gap:12px;width:100%;border:0;text-align:left;cursor:default;font:inherit;
background:var(--fab-ink-900);color:var(--fab-gold-400);padding:14px 18px;
font-family:var(--fab-display);font-size:12.5px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}
.fab-facets__chev{display:none}

/* Facet blocks. */
.fab-facet{border-bottom:1px solid var(--fab-n-100);padding:0}
.fab-facet:last-child{border-bottom:0}
.fab-facet__h{margin:0;font-size:inherit;line-height:inherit}
.fab-facet__btn{display:flex;align-items:center;gap:10px;width:100%;padding:14px 18px;
background:none;border:0;cursor:pointer;text-align:left;font:inherit;
transition:background .15s var(--fab-ease)}
.fab-facet__btn:hover{background:rgba(11,22,34,.03)}
.fab-facet__btn .fab-facet__title{flex:1 1 auto;margin:0}
.fab-facet__badge{flex:0 0 auto;font-style:normal;font-size:11px;font-weight:700;line-height:1;
padding:4px 7px;border-radius:999px;background:var(--fab-gold-500);color:var(--fab-ink-900)}
.fab-facet__chev{flex:0 0 9px;width:9px;height:9px;border-right:2px solid var(--fab-n-500);
border-bottom:2px solid var(--fab-n-500);transform:rotate(45deg) translate(-2px,-2px);
transition:transform .24s var(--fab-ease);margin-left:2px}
.fab-facet.is-open > .fab-facet__h .fab-facet__chev{transform:rotate(-135deg) translate(-2px,-2px)}
.fab-facet.is-active > .fab-facet__h .fab-facet__title{color:var(--fab-gold-700)}

.fab-facet__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s var(--fab-ease)}
.fab-facet.is-open > .fab-facet__body{grid-template-rows:1fr}
.fab-facet__inner{overflow:hidden;min-height:0}
.fab-facet__inner > *{padding-left:18px;padding-right:18px}
.fab-facet__inner > *:last-child{padding-bottom:14px}
.fab-facet__list--scroll{max-height:230px;overflow-y:auto}

.fab-facet__clear{margin:14px 18px 0}

@media(prefers-reduced-motion:reduce){
.fab-facet__body,.fab-facet__chev{transition:none!important}
}

/* Mobile: collapse the whole panel behind the Refine bar. */
@media(max-width:900px){
.fab-facets{position:static;max-height:none;margin-bottom:6px}
.fab-facets__head{cursor:pointer}
.fab-facets__chev{display:block;flex:0 0 10px;width:10px;height:10px;
border-right:2px solid currentColor;border-bottom:2px solid currentColor;
transform:rotate(45deg) translate(-2px,-2px);transition:transform .24s var(--fab-ease)}
.fab-facets.is-open .fab-facets__chev{transform:rotate(-135deg) translate(-2px,-2px)}
.fab-facets__scroll{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--fab-ease);overflow:hidden}
.fab-facets.is-open .fab-facets__scroll{grid-template-rows:1fr}
.fab-facets__inner{min-height:0;overflow:hidden}
}

/* ---- Instant search suggestions (v1.5.0) ---- */
.fab-search{position:relative}
.fab-sugg{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:60;
background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);
box-shadow:0 18px 44px rgba(11,22,34,.16);overflow:hidden auto;max-height:min(70vh,520px);
padding:6px 0}
.fab-sugg[hidden]{display:none}
.fab-sugg__head{margin:8px 16px 4px;font-family:var(--fab-display);font-size:10.5px;font-weight:700;
letter-spacing:.16em;text-transform:uppercase;color:var(--fab-n-500)}
.fab-sugg__item,.fab-sugg__cat{display:flex;align-items:center;gap:12px;padding:9px 16px;
text-decoration:none;color:var(--fab-n-700);transition:background .12s var(--fab-ease)}
.fab-sugg__item:hover,.fab-sugg__cat:hover,
.fab-sugg__item.is-active,.fab-sugg__cat.is-active{background:rgba(11,22,34,.04)}
.fab-sugg__cat{font-weight:600;color:var(--fab-ink-900)}
.fab-sugg__cat i{margin-left:auto;font-style:normal;font-size:11.5px;color:var(--fab-n-500)}
.fab-sugg__thumb{flex:0 0 42px;width:42px;height:42px;border-radius:8px;background:var(--fab-n-50);
border:1px solid var(--fab-n-200);overflow:hidden;display:flex;align-items:center;justify-content:center}
.fab-sugg__thumb img{width:100%;height:100%;object-fit:contain}
.fab-sugg__body{flex:1 1 auto;min-width:0}
.fab-sugg__title{display:block;font-size:14px;color:var(--fab-ink-900);line-height:1.3;
overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fab-sugg__title b{color:var(--fab-gold-700);font-weight:700}
.fab-sugg__cat b{color:var(--fab-gold-700)}
.fab-sugg__meta{display:block;font-size:11.5px;color:var(--fab-n-500);margin-top:2px;
overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fab-sugg__price{flex:0 0 auto;font-size:12.5px;font-weight:600;color:var(--fab-n-600);white-space:nowrap}
.fab-sugg__more{display:block;padding:11px 16px;margin-top:4px;border-top:1px solid var(--fab-n-100);
font-size:13px;font-weight:600;color:var(--fab-ink-900);text-decoration:none}
.fab-sugg__more:hover,.fab-sugg__more.is-active{background:var(--fab-ink-900);color:#fff}
.fab-sugg__none{margin:0;padding:16px;font-size:13.5px;color:var(--fab-n-600)}
@media(max-width:820px){
.fab-sugg{max-height:60vh}
.fab-sugg__price{display:none}
}

/* ---- Facet rows were flush to the panel edge (v1.5.1) ----
   `.fab-facets ul{padding:0}` outranks `.fab-facet__inner > *`, so the list
   lost its side padding. Pad the rows themselves instead — the hover band then
   spans the full panel width, which reads better than an inset one. */
.fab-facet__inner > *{padding-left:0;padding-right:0}
.fab-facet__inner > *:last-child{padding-bottom:10px}
.fab-facet .fab-facet__list li{padding:0}
.fab-facet .fab-facet__list a{padding:8px 18px;border-radius:0}
.fab-facet .fab-facet__list a:hover{background:rgba(11,22,34,.035)}
.fab-facet .fab-facet__list li.is-current > a{background:rgba(200,160,74,.10)}
.fab-facet .fab-facet__up{padding:2px 18px 8px}
.fab-facet__list--scroll{padding-right:4px}
.fab-facets .fab-facet__clear{margin:14px 18px 2px}

/* ---- Footer payment marks (v1.6.0) ---- */
.fab-foot__pay{margin:26px 0 0}
.fab-foot__pay-label{display:block;font-family:var(--fab-display);font-size:10.5px;font-weight:700;
letter-spacing:.19em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:0 0 12px}
.fab-foot__pay-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px}
.fab-foot__pay-mark{display:inline-flex;line-height:0;border-radius:5px;overflow:hidden;
opacity:.94;transition:opacity .18s var(--fab-ease)}
.fab-foot__pay-mark:hover{opacity:1}
.fab-foot__pay-row img{max-height:30px;width:auto;display:block}
.fab-foot__pay-note{margin:12px 0 0;font-size:12px;line-height:1.55;color:rgba(255,255,255,.42);max-width:46ch}
@media(max-width:820px){
.fab-foot__pay{margin-top:22px}
.fab-foot__pay-note{max-width:none}
}

/* ---- Contact / take-off forms (v1.7.0) ---- */
.fab-form{margin:26px 0 0;max-width:760px}
.fab-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.fab-field--full{grid-column:1/-1}
.fab-field{display:flex;flex-direction:column;min-width:0}
.fab-field label{font-family:var(--fab-display);font-weight:600;font-size:12px;letter-spacing:.12em;
text-transform:uppercase;color:var(--fab-n-600);margin:0 0 7px}
.fab-req{color:var(--fab-gold-600)}
.fab-field input[type=text],.fab-field input[type=email],.fab-field input[type=tel],
.fab-field textarea{width:100%;padding:13px 15px;border:1px solid var(--fab-n-300);border-radius:10px;
background:#fff;font:inherit;font-size:15.5px;color:var(--fab-ink-900);
transition:border-color .16s var(--fab-ease),box-shadow .16s var(--fab-ease)}
.fab-field textarea{resize:vertical;min-height:132px;line-height:1.55}
.fab-field input:focus,.fab-field textarea:focus{outline:0;border-color:var(--fab-gold-500);
box-shadow:0 0 0 3px rgba(200,160,74,.18)}
.fab-field input[type=file]{width:100%;padding:22px 15px;border:1.5px dashed var(--fab-n-300);
border-radius:12px;background:var(--fab-n-25,#fafbfc);font:inherit;font-size:14px;cursor:pointer;
transition:border-color .16s var(--fab-ease),background .16s var(--fab-ease)}
.fab-field input[type=file]:hover{border-color:var(--fab-gold-500);background:rgba(200,160,74,.05)}
.fab-field input[type=file]::file-selector-button{margin-right:14px;padding:9px 16px;border:0;
border-radius:8px;background:var(--fab-ink-900);color:#fff;font:inherit;font-size:13.5px;
font-weight:600;cursor:pointer}
.fab-field__hint{margin:7px 0 0;font-size:12.5px;line-height:1.5;color:var(--fab-n-500)}
.fab-form .fab-btn{margin-top:22px}
.fab-form__small{margin:14px 0 0;font-size:12.5px;color:var(--fab-n-500)}
.fab-form__small a{color:var(--fab-n-600);text-decoration:underline}
.fab-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.fab-note{padding:15px 18px;border-radius:12px;margin:0 0 22px;font-size:15px;line-height:1.55}
.fab-note--ok{background:rgba(35,140,80,.09);border:1px solid rgba(35,140,80,.28);color:#1d6b40}
.fab-note--err{background:rgba(190,45,45,.07);border:1px solid rgba(190,45,45,.26);color:#9c2b2b}
@media(max-width:720px){
.fab-form__grid{grid-template-columns:1fr}
}

/* ---- Empty category state (v1.8.0) ---- */
.fab-empty{margin:8px 0 34px}
.fab-empty h3{margin:0 0 10px}

/* ---- Sticky category bar: sit flush under the header (v1.9.0) ---- */
.fab-nav{top:var(--fab-headh,105px)}
.admin-bar .fab-nav{top:var(--fab-headh,137px)}
.fab-head{box-shadow:0 1px 0 rgba(11,22,34,.04)}
@media(max-width:1024px){
  .fab-nav{top:0}
  .admin-bar .fab-nav{top:0}
}

/* ---- Editorial content pages: About (v1.9.0) ---- */
.fab-content--wide{max-width:none}
.fab-content--wide > p{max-width:78ch}

.fab-ed-split{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;margin:0 0 18px}
.fab-ed-split + .fab-ed-split{margin-top:64px}
.fab-ed-split__text > h2:first-child{margin-top:0}
.fab-ed-split__text p{max-width:56ch}
.fab-ed-split--flip .fab-ed-split__media{order:-1}

.fab-figure{margin:0;border-radius:var(--fab-r-lg);overflow:hidden;background:var(--fab-n-100);
  border:1px solid var(--fab-n-200);box-shadow:0 18px 40px -28px rgba(11,22,34,.45)}
.fab-figure img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.fab-figure figcaption{font-size:12.5px;color:var(--fab-n-500);padding:10px 14px;background:#fff;
  border-top:1px solid var(--fab-n-100)}

.fab-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;
  border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);overflow:hidden;background:#fff}
.fab-stats div{display:block;padding:24px 26px;border-right:1px solid var(--fab-n-100)}
.fab-stats div:last-child{border-right:none}
.fab-stats b{display:block;font-family:var(--fab-display);font-size:26px;line-height:1.1;
  color:var(--fab-ink-900);letter-spacing:-.01em}
.fab-stats span{display:block;margin-top:6px;font-size:13.5px;color:var(--fab-n-600)}

.fab-ed-promise{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:26px 0 0;padding:0;list-style:none}
.fab-content .fab-ed-promise{padding-left:0}
.fab-ed-promise li{display:block;margin:0;background:#fff;border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);
  padding:22px 24px;border-top:3px solid var(--fab-gold-500)}
.fab-ed-promise b{display:block;font-family:var(--fab-display);font-size:16.5px;color:var(--fab-ink-900);margin-bottom:7px}
.fab-ed-promise span{font-size:14.6px;line-height:1.65;color:var(--fab-n-600)}

.fab-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0 0;padding:0;list-style:none}
.fab-content .fab-tiles{padding-left:0}
.fab-tiles li{margin:0}
.fab-tiles a{display:block;position:relative;border-radius:var(--fab-r-lg);overflow:hidden;
  border:1px solid var(--fab-n-200);background:var(--fab-ink-900)}
.fab-tiles img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;opacity:.82;
  transition:transform .35s ease,opacity .25s ease}
.fab-tiles a:hover img{transform:scale(1.04);opacity:.95}
.fab-tiles b{position:absolute;left:16px;bottom:14px;right:16px;color:#fff;font-family:var(--fab-display);
  font-size:16px;text-shadow:0 2px 12px rgba(0,0,0,.6)}

.fab-branches{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:24px 0 0;padding:0;list-style:none}
.fab-content .fab-branches{padding-left:0}
.fab-branches li{display:block;margin:0;background:var(--fab-n-25);border:1px solid var(--fab-n-200);
  border-radius:var(--fab-r-lg);padding:22px 24px}
.fab-branches b{display:block;font-family:var(--fab-display);font-size:16.5px;margin-bottom:8px;color:var(--fab-ink-900)}
.fab-branches span{display:block;font-size:14.6px;line-height:1.7;color:var(--fab-n-600)}
.fab-branches a{color:var(--fab-ink-900);font-weight:600}

.fab-callout{background:var(--fab-ink-900);border-radius:var(--fab-r-lg);padding:36px 38px;margin:64px 0 0;
  display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.fab-callout h2{color:#fff;margin:0 0 8px!important}
.fab-callout p{color:rgba(255,255,255,.76);margin:0;max-width:50ch;font-size:15.5px}
.fab-callout__actions{margin-left:auto;display:flex;gap:11px;flex-wrap:wrap}

@media(max-width:900px){
  .fab-ed-split,.fab-ed-split + .fab-ed-split{grid-template-columns:1fr;gap:26px;margin-top:44px}
  .fab-ed-split--flip .fab-ed-split__media{order:0}
  .fab-stats{grid-template-columns:repeat(2,1fr)}
  .fab-stats div:nth-child(2){border-right:none}
  .fab-stats div:nth-child(-n+2){border-bottom:1px solid var(--fab-n-100)}
  .fab-ed-promise,.fab-branches{grid-template-columns:1fr}
  .fab-tiles{grid-template-columns:repeat(2,1fr)}
  .fab-callout{padding:28px 24px}
  .fab-callout__actions{margin-left:0}
}
@media(max-width:520px){
  .fab-stats{grid-template-columns:1fr}
  .fab-stats div{border-right:none;border-bottom:1px solid var(--fab-n-100)}
  .fab-tiles{grid-template-columns:1fr}
}

/* ---- Mobile polish (v1.9.2) ---- */
.fab-quotebar__note{color:rgba(255,255,255,.55);font-size:13px}
.fab-quotebar__short{display:none}
@media(max-width:640px){
  .fab-quotebar .fab-wrap{flex-wrap:nowrap;gap:12px;padding:11px 18px}
  .fab-quotebar__note{display:none}
  .fab-quotebar__long{display:none}
  .fab-quotebar__short{display:inline}
  .fab-quotebar .fab-btn{white-space:nowrap;padding:11px 16px}
  .fab-quotebar > .fab-wrap > span:first-child{font-size:14px;line-height:1.25}
}
@media(max-width:560px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .fab-shop ul.products li.product .woocommerce-loop-product__title{font-size:14.5px;line-height:1.35}
  ul.products li.product .fab-sku{font-size:10.5px}
  ul.products li.product .price,.fab-shop ul.products li.product .price{font-size:15px}
  ul.products li.product .button{padding:11px 12px;font-size:12.5px}
  .fab-term-desc{font-size:15px}
}

/* ---- Category buying guide, below the product grid (v1.10.0) ---- */
.fab-guide{border-top:1px solid var(--fab-n-200);margin:52px 0 0;padding:40px 0 8px}
.fab-guide__inner{max-width:78ch}
.fab-guide h2{font-size:clamp(20px,2.4vw,26px);margin:0 0 14px}
.fab-guide h3{font-size:17px;margin:30px 0 10px}
.fab-guide p{margin:0 0 14px;color:var(--fab-n-700);line-height:1.75}
.fab-guide ul{padding-left:20px;margin:0 0 16px;line-height:1.75}
.fab-guide li{margin-bottom:7px;color:var(--fab-n-700)}
.fab-guide li strong{color:var(--fab-ink-900)}
.fab-guide a{color:var(--fab-ink-900);text-decoration:underline;text-underline-offset:2px}
.fab-guide a:hover{color:var(--fab-gold-700)}
.fab-guide__inner > *:last-child{margin-bottom:0}
@media(max-width:720px){.fab-guide{margin-top:38px;padding-top:30px}}

/* =========================================================================
   Basket - one list, priced and POA lines together (v1.11.0)
   ====================================================================== */

.fab-vatswitch{display:inline-flex;align-items:center;gap:6px;margin-left:18px}
.fab-vatswitch__label{opacity:.65;font-size:12px;letter-spacing:.02em}
.fab-vatswitch__opt{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;line-height:1.7;text-decoration:none;opacity:.7}
.fab-vatswitch__opt:hover{opacity:1}
.fab-vatswitch__opt.is-on{background:var(--fab-gold,#C9A24B);color:#0B1220;font-weight:700;opacity:1}

.fab-vatnote{font-size:11.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;opacity:.55;white-space:nowrap}
.fab-poa{color:var(--fab-gold-dark,#8E6F2A);font-weight:700}
.fab-from{font-size:12px;text-transform:uppercase;letter-spacing:.05em;opacity:.6;font-weight:700}

/* --- layout --- */
.fab-basket{display:grid;grid-template-columns:minmax(0,1fr) 344px;gap:28px;align-items:start}
.fab-basket__main{min-width:0}
.fab-basket__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 14px}
.fab-basket__bar h2{margin:0;font-size:19px;letter-spacing:-.01em}
.fab-basket__bar .fab-vatswitch{margin-left:0}
.fab-basket__bar .fab-vatswitch__opt{border:1px solid var(--fab-n-200,#e5e7eb)}
.fab-basket__bar .fab-vatswitch__opt.is-on{border-color:var(--fab-gold,#C9A24B)}

/* --- lines --- */
.fab-lines{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--fab-n-200,#e5e7eb);border-radius:14px;overflow:hidden}
.fab-line{display:grid;grid-template-columns:76px minmax(0,1fr) 118px 132px 24px;gap:18px;align-items:center;padding:18px 20px;border-top:1px solid var(--fab-n-100,#f1f2f4)}
.fab-line:first-child{border-top:0}
.fab-line__img{display:block;width:76px;height:76px;border-radius:9px;overflow:hidden;background:var(--fab-n-50,#f7f8f9);flex:none}
.fab-line__img img{width:100%;height:100%;object-fit:contain;display:block;mix-blend-mode:multiply}
.fab-line__body{min-width:0}
.fab-line__name{display:block;font-weight:700;font-size:15.5px;line-height:1.35;color:inherit;text-decoration:none}
.fab-line__name:hover{text-decoration:underline}
.fab-line__sku{display:inline-block;margin-top:5px;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;opacity:.5;font-weight:600}
.fab-line__opts{list-style:none;margin:8px 0 0;padding:0;font-size:13px;line-height:1.55}
.fab-line__opts li{color:var(--fab-n-600,#55606e)}
.fab-line__opts span{opacity:.7}

.fab-stepper{display:inline-flex;align-items:center;border:1px solid var(--fab-n-200,#e5e7eb);border-radius:9px;overflow:hidden;background:#fff}
.fab-stepper__btn{width:34px;height:38px;border:0;background:transparent;font-size:17px;line-height:1;cursor:pointer;color:var(--fab-n-700,#3d4753)}
.fab-stepper__btn:hover{background:var(--fab-n-50,#f7f8f9)}
.fab-stepper input{width:44px;height:38px;border:0;border-left:1px solid var(--fab-n-200,#e5e7eb);border-right:1px solid var(--fab-n-200,#e5e7eb);text-align:center;font-weight:700;font-size:15px;padding:0;background:transparent;-moz-appearance:textfield}
.fab-stepper input::-webkit-outer-spin-button,.fab-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.fab-line__money{text-align:right}
.fab-line__total{display:block;font-weight:800;font-size:17px;letter-spacing:-.01em}
.fab-line__hint{display:block;margin-top:4px;font-size:12px;opacity:.55}
.fab-line__rm{justify-self:end;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:17px;line-height:1;text-decoration:none;color:var(--fab-n-400,#98a1ad)}
.fab-line__rm:hover{background:#fdecec;color:#c0392b}

.fab-basket__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 2px 0}
.fab-basket__back{font-weight:600;font-size:14.5px;text-decoration:none}
.fab-basket__back:before{content:"\2190";margin-right:7px}
.fab-basket__back:hover{text-decoration:underline}

/* --- summary --- */
.fab-sum{position:sticky;top:calc(var(--fab-headh,105px) + 18px);background:#fff;border:1px solid var(--fab-n-200,#e5e7eb);border-radius:14px;padding:22px}
.fab-sum__h{margin:0 0 16px;font-size:16px;letter-spacing:.01em}
.fab-sum__poa{margin:0 0 16px;padding:12px 14px;border-radius:10px;background:rgba(201,162,75,.1);border:1px solid rgba(201,162,75,.3);font-size:13.5px;line-height:1.5}
.fab-sum__rows{margin:0;padding:0;font-size:14.5px}
.fab-sum__rows div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0}
.fab-sum__rows dt{margin:0;opacity:.7}
.fab-sum__rows dd{margin:0;font-weight:600;text-align:right}
.fab-sum__delivery dd{font-weight:600;font-size:13.5px;opacity:.8}
.fab-sum__total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:12px;padding-top:15px;border-top:2px solid var(--fab-navy,#0B1220)}
.fab-sum__total span{font-weight:700;font-size:15px}
.fab-sum__total b{font-size:23px;letter-spacing:-.02em}
.fab-sum__note{margin:7px 0 18px;font-size:12px;opacity:.55;line-height:1.5}
.fab-sum__alt{display:block;text-align:center;margin-top:11px;font-size:13.5px;text-decoration:underline;opacity:.75}
.fab-sum__trust{list-style:none;margin:20px 0 0;padding:18px 0 0;border-top:1px solid var(--fab-n-100,#f1f2f4);font-size:13px;line-height:1.5}
.fab-sum__trust li{position:relative;padding-left:23px;margin-bottom:9px;opacity:.8}
.fab-sum__trust li:last-child{margin-bottom:0}
.fab-sum__trust li:before{content:"\2713";position:absolute;left:0;top:-1px;color:var(--fab-gold-dark,#8E6F2A);font-weight:800}
.fab-sum__call{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--fab-n-100,#f1f2f4);font-size:13px;line-height:1.6;opacity:.85}
.fab-sum__call a{font-size:17px;text-decoration:none}
.fab-sum__call span{display:block;font-size:12px;opacity:.6}

/* --- quote form --- */
.fab-qform{margin:34px 0 0;background:#fff;border:1px solid var(--fab-n-200,#e5e7eb);border-radius:14px;padding:28px;max-width:760px;scroll-margin-top:calc(var(--fab-headh,105px) + 20px)}
.fab-qform h2{margin:0 0 6px;font-size:21px}
.fab-qform__lede{margin:0 0 20px;font-size:14.5px;line-height:1.6;opacity:.7;max-width:56ch}
.fab-qform__small{margin:12px 0 0;font-size:12.5px;opacity:.55;text-align:center}

/* --- empty --- */
.fab-basket-empty{max-width:520px;padding:26px 0 10px}
.fab-basket-empty h2{margin:0 0 10px;font-size:26px}
.fab-basket-empty p{font-size:15.5px;line-height:1.65;opacity:.75}
.fab-basket-empty__call{font-size:14.5px;opacity:.7}
.fab-basket-empty__call a{text-decoration:none}

/* --- the basket page loses the tall hero; the job is the content --- */
body.fab-basket-page .fab-pagehead{padding-top:34px;padding-bottom:30px}
body.fab-basket-page .fab-pagehead h1{font-size:34px}

@media(max-width:1024px){
  .fab-basket{grid-template-columns:1fr;gap:22px}
  .fab-sum{position:static}
}
@media(max-width:640px){
  .fab-line{grid-template-columns:60px minmax(0,1fr) 22px;grid-template-areas:"img body rm" ". qty money";gap:12px 14px;padding:16px}
  .fab-line__img{grid-area:img;width:60px;height:60px}
  .fab-line__body{grid-area:body}
  .fab-line__qty{grid-area:qty}
  .fab-line__money{grid-area:money;text-align:right}
  .fab-line__rm{grid-area:rm;align-self:start}
  .fab-basket__bar{flex-wrap:wrap;gap:10px}
  .fab-qform{padding:22px}
}

/* The basket needs the full column - a squeezed line row is unreadable. */
body.fab-basket-page .fab-content{max-width:none}
body.fab-basket-page .fab-content--wide{max-width:none}

/* Basket polish */
.fab-line{grid-template-columns:76px minmax(0,1fr) 118px 152px 24px}
.fab-line__money .fab-poa{font-size:13.5px;line-height:1.35;display:block}
.fab-basket__update[hidden]{display:none!important}
body.fab-basket-page .fab-pagehead{padding-top:30px!important;padding-bottom:26px!important}
@media(max-width:640px){
  .fab-line{grid-template-columns:60px minmax(0,1fr) 22px}
}

/* WooCommerce notices - one block, full width, above the content (v1.11.3) */
.fab-notices{padding:18px 0 0}
.fab-notices .woocommerce-message,
.fab-notices .woocommerce-info,
.fab-notices .woocommerce-error{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 10px;padding:14px 18px;border-radius:11px;border:1px solid var(--fab-n-200,#e5e7eb);background:#fff;font-size:14.5px;line-height:1.5;list-style:none}
.fab-notices .woocommerce-message{border-color:rgba(201,162,75,.45);background:rgba(201,162,75,.08)}
.fab-notices .woocommerce-error{border-color:#e6b3ad;background:#fdf3f2;color:#8c2f22}
.fab-notices .button{margin-left:auto;flex:none}
.fab-notices ul{margin:0;padding:0}

/* =========================================================================
   Mobile fixes (v1.11.6)
   ====================================================================== */

/* The shop grid could not shrink below its own content, so the whole page
   scrolled sideways on a phone. A grid track of 1fr means minmax(auto,1fr),
   and auto is min-content - the long category labels in the Refine panel set
   a floor wider than the screen. minmax(0,1fr) plus min-width:0 on the items
   lets it actually fit. */
@media(max-width:900px){
  .fab-shop{grid-template-columns:minmax(0,1fr)!important}
  .fab-shop>*{min-width:0}
  .fab-facets,
  .fab-facets__scroll,
  .fab-facets__inner,
  .fab-facet,
  .fab-facet__body,
  .fab-facet__inner,
  .fab-facet__list{min-width:0;max-width:100%}
  .fab-facet__title,
  .fab-facet__list a{overflow-wrap:anywhere}
}

/* Footer brand block reads better centred once it is a single column. */
@media(max-width:760px){
  .fab-foot__brand{text-align:center}
  .fab-foot__logo{margin-left:auto;margin-right:auto}
  .fab-foot__logo img{margin-left:auto;margin-right:auto}
  .fab-foot__brand p,
  .fab-foot__tag{max-width:none;margin-left:auto;margin-right:auto}
  .fab-foot__social{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}
  .fab-foot__social li{width:auto;max-width:100%}
}

/* =========================================================================
   FAQs
   ====================================================================== */

.fab-faq{border-top:1px solid var(--fab-n-200)}
.fab-faq__head{font-family:var(--fab-display);font-size:26px;line-height:1.2;margin:0 0 4px;padding-top:26px}
.fab-faq__block{margin-top:34px}
.fab-faq__block .fab-faq{border-top:0}

.fab-faq__item{border-bottom:1px solid var(--fab-n-200)}
.fab-faq__q{
	cursor:pointer;list-style:none;
	display:flex;align-items:flex-start;gap:14px;
	padding:17px 0;
	font-weight:600;font-size:16.5px;line-height:1.45;
	color:var(--fab-ink-900);
	transition:color .15s var(--fab-ease);
}
.fab-faq__q::-webkit-details-marker{display:none}
.fab-faq__q::after{
	content:"";flex:0 0 auto;margin-left:auto;
	width:11px;height:11px;margin-top:5px;
	border-right:2px solid var(--fab-n-500);
	border-bottom:2px solid var(--fab-n-500);
	transform:rotate(45deg);
	transition:transform .18s var(--fab-ease),border-color .18s var(--fab-ease);
}
.fab-faq__q:hover{color:var(--fab-gold-700)}
.fab-faq__q:hover::after{border-color:var(--fab-gold-600)}
.fab-faq__item[open] .fab-faq__q::after{transform:rotate(225deg);margin-top:9px}
.fab-faq__a{padding:0 34px 20px 0;color:var(--fab-ink-700);font-size:15.5px;line-height:1.65;max-width:70ch}
.fab-faq__a p{margin:0 0 12px}
.fab-faq__a p:last-child{margin-bottom:0}
.fab-faq__ask{margin-top:18px;font-size:14.5px;color:var(--fab-ink-600)}

@media(max-width:600px){
	.fab-faq__head{font-size:22px}
	.fab-faq__q{font-size:15.5px;padding:15px 0}
	.fab-faq__a{padding-right:0}
}

/* =========================================================================
   Inspiration — cards and grid
   ====================================================================== */

.fab-projgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.fab-projgrid>*{min-width:0}
.fab-projgrid--3{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:980px){.fab-projgrid,.fab-projgrid--3{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:620px){.fab-projgrid,.fab-projgrid--3{grid-template-columns:minmax(0,1fr);gap:18px}}

.fab-projcard{
	display:block;background:var(--fab-n-0);
	border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);
	overflow:hidden;text-decoration:none;min-width:0;
	transition:transform .18s var(--fab-ease),box-shadow .18s var(--fab-ease),border-color .18s var(--fab-ease);
}
.fab-projcard:hover{transform:translateY(-3px);box-shadow:var(--fab-sh-2);border-color:var(--fab-n-300)}
.fab-projcard__img{
	display:block;aspect-ratio:4/3;width:100%;
	background:var(--fab-n-100) center/cover no-repeat;
}
.fab-projcard__body{display:block;padding:17px 19px 20px}
.fab-projcard__type{
	display:block;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
	color:var(--fab-gold-700);margin-bottom:6px;
}
.fab-projcard__title{
	display:block;font-family:var(--fab-display);font-size:19px;line-height:1.28;
	color:var(--fab-ink-900);overflow-wrap:anywhere;
}
.fab-projcard__meta{display:block;margin-top:8px;font-size:13.5px;color:var(--fab-ink-600)}

/* Filter chips */
.fab-projfilter{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 28px}
.fab-chip{
	display:inline-block;padding:9px 16px;border-radius:999px;
	border:1px solid var(--fab-n-300);background:var(--fab-n-0);
	font-size:14px;font-weight:600;color:var(--fab-ink-700);text-decoration:none;
	transition:all .15s var(--fab-ease);
}
.fab-chip:hover{border-color:var(--fab-gold-500);color:var(--fab-gold-700)}
.fab-chip.is-on{background:var(--fab-ink-900);border-color:var(--fab-ink-900);color:#fff}

/* =========================================================================
   Inspiration — single entry
   ====================================================================== */

.fab-proj{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:46px;align-items:start}
.fab-proj>*{min-width:0}

@media(max-width:900px){.fab-proj{grid-template-columns:minmax(0,1fr);gap:30px}}

.fab-proj__loc{
	font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
	color:var(--fab-gold-700);margin:0 0 12px;
}

.fab-proj__spec{
	background:var(--fab-n-25);border:1px solid var(--fab-n-200);
	border-radius:var(--fab-r-lg);padding:26px;position:sticky;top:calc(var(--fab-headh) + 18px);
}
.fab-proj__spec h2{font-family:var(--fab-display);font-size:20px;margin:0 0 14px}
.fab-proj__spec ul{list-style:none;margin:0;padding:0}
.fab-proj__spec li{
	position:relative;padding:0 0 0 20px;margin:0 0 10px;
	font-size:14.8px;line-height:1.55;color:var(--fab-ink-800);overflow-wrap:anywhere;
}
.fab-proj__spec li::before{
	content:"";position:absolute;left:0;top:8px;
	width:7px;height:7px;border-radius:50%;background:var(--fab-gold-500);
}
.fab-proj__note{margin:16px 0 16px;font-size:13.4px;line-height:1.55;color:var(--fab-ink-600)}

@media(max-width:900px){.fab-proj__spec{position:static}}

/* Gallery */
.fab-projgal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}
.fab-projgal>*{min-width:0}
.fab-projgal__item{margin:0;border-radius:var(--fab-r-md);overflow:hidden;background:var(--fab-n-100)}
.fab-projgal__item img{display:block;width:100%;height:auto}
.fab-projgal__item:only-child{grid-column:1/-1}

@media(max-width:620px){.fab-projgal{grid-template-columns:minmax(0,1fr)}}

/* =========================================================================
   Inspiration — products used
   ====================================================================== */

.fab-projbuy{
	margin-top:46px;background:var(--fab-n-0);
	border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);
	overflow:hidden;
}
.fab-projbuy__head{
	display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
	padding:24px 26px;border-bottom:1px solid var(--fab-n-200);background:var(--fab-n-25);
}
.fab-projbuy__head h2{font-family:var(--fab-display);font-size:23px;margin:0 0 3px}
.fab-projbuy__head .fab-muted{margin:0;font-size:14px}
.fab-projbuy__form{margin:0}

.fab-projbuy__list{display:block}
.fab-projbuy__row{
	display:grid;grid-template-columns:76px minmax(0,1fr) auto auto;
	gap:18px;align-items:center;
	padding:16px 26px;border-bottom:1px solid var(--fab-n-100);
}
.fab-projbuy__row:last-child{border-bottom:0}
.fab-projbuy__row>*{min-width:0}

.fab-projbuy__img{display:block;border-radius:var(--fab-r-sm);overflow:hidden;background:var(--fab-n-100)}
.fab-projbuy__img img{display:block;width:100%;height:76px;object-fit:cover}

.fab-projbuy__name{
	display:block;font-weight:600;font-size:15.5px;line-height:1.4;
	color:var(--fab-ink-900);text-decoration:none;overflow-wrap:anywhere;
}
.fab-projbuy__name:hover{color:var(--fab-gold-700)}
.fab-projbuy__info .fab-sku{display:block;margin-top:3px}
.fab-projbuy__price{text-align:right;font-weight:700;font-size:15.5px;color:var(--fab-ink-900);white-space:nowrap}
.fab-projbuy__price del{font-weight:400;opacity:.55}
.fab-projbuy__act{white-space:nowrap}

@media(max-width:760px){
	.fab-projbuy__head{padding:20px}
	.fab-projbuy__row{
		grid-template-columns:64px minmax(0,1fr);
		grid-template-areas:"img info" "price price" "act act";
		gap:12px 14px;padding:16px 20px;
	}
	.fab-projbuy__img{grid-area:img}
	.fab-projbuy__img img{height:64px}
	.fab-projbuy__info{grid-area:info}
	.fab-projbuy__price{grid-area:price;text-align:left}
	.fab-projbuy__act{grid-area:act}
	.fab-projbuy__act .fab-btn{width:100%}
	.fab-projbuy__form,.fab-projbuy__form .fab-btn{width:100%}
}

/* =========================================================================
   Inspiration — strips on other pages
   ====================================================================== */

.fab-projstrip{margin-top:46px}
.fab-projstrip__head{
	display:flex;align-items:baseline;justify-content:space-between;gap:16px;
	flex-wrap:wrap;margin:0 0 20px;
}
.fab-projstrip__head h2{font-family:var(--fab-display);font-size:24px;margin:0}
.fab-projstrip__all{font-size:14.5px;font-weight:600;color:var(--fab-gold-700);text-decoration:none;white-space:nowrap}
.fab-projstrip__all:hover{text-decoration:underline}

@media(max-width:600px){.fab-projstrip__head h2{font-size:21px}}

/* =========================================================================
   Page header - stronger sense of where you are
   ====================================================================== */

.fab-pagehead__img{opacity:.46}
.fab-pagehead__scrim{background:linear-gradient(90deg,rgba(11,22,34,.93) 0%,rgba(11,22,34,.78) 42%,rgba(11,22,34,.5) 100%)}
.fab-pagehead .fab-wrap{padding:56px 28px 60px}

.fab-crumb{font-size:13.5px;font-weight:600;letter-spacing:.015em;color:rgba(255,255,255,.72);margin-bottom:16px}
.fab-crumb a:hover{color:#fff;text-decoration:underline}

.fab-pagehead h1{font-size:clamp(34px,5vw,58px);line-height:1.06;letter-spacing:-.015em}
.fab-pagehead h1::after{content:"";display:block;width:66px;height:4px;border-radius:2px;background:var(--fab-gold-500);margin:20px 0 0}
.fab-pagehead p{font-size:17px;margin-top:18px}

/* The basket page still loses the tall hero - the job there is the content. */
body.fab-basket-page .fab-pagehead .fab-wrap{padding:34px 28px 34px}
body.fab-basket-page .fab-pagehead h1::after{display:none}

@media(max-width:760px){
  .fab-pagehead .fab-wrap{padding:40px 20px 44px}
  .fab-pagehead h1{font-size:clamp(30px,8vw,40px)}
  .fab-pagehead h1::after{width:52px;height:3px;margin-top:16px}
  .fab-crumb{font-size:12.5px;margin-bottom:13px}
  .fab-pagehead p{font-size:15.5px;margin-top:14px}
}

/* =========================================================================
   Advice — cards
   ====================================================================== */

.fab-guidecard{
	display:block;background:var(--fab-n-0);
	border:1px solid var(--fab-n-200);border-radius:var(--fab-r-lg);
	overflow:hidden;text-decoration:none;min-width:0;
	transition:transform .18s var(--fab-ease),box-shadow .18s var(--fab-ease),border-color .18s var(--fab-ease);
}
.fab-guidecard:hover{transform:translateY(-3px);box-shadow:var(--fab-sh-2);border-color:var(--fab-n-300)}
.fab-guidecard__img{display:block;aspect-ratio:16/10;width:100%;background:var(--fab-n-100) center/cover no-repeat}
.fab-guidecard__body{display:block;padding:18px 20px 22px}
.fab-guidecard__cat{
	display:block;font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
	color:var(--fab-gold-700);margin-bottom:7px;
}
.fab-guidecard__title{
	display:block;font-family:var(--fab-display);font-size:19px;line-height:1.28;
	color:var(--fab-ink-900);overflow-wrap:anywhere;
}
.fab-guidecard__excerpt{display:block;margin-top:9px;font-size:14.5px;line-height:1.55;color:var(--fab-ink-600)}
.fab-guidecard__meta{display:block;margin-top:12px;font-size:12.8px;font-weight:600;color:var(--fab-n-500)}

/* The lead guide */
.fab-guidecard--lg{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);margin-bottom:26px}
.fab-guidecard--lg .fab-guidecard__img{aspect-ratio:auto;height:100%;min-height:320px}
.fab-guidecard--lg .fab-guidecard__body{display:flex;flex-direction:column;justify-content:center;padding:38px}
.fab-guidecard--lg .fab-guidecard__title{font-size:clamp(24px,2.4vw,32px);line-height:1.18}
.fab-guidecard--lg .fab-guidecard__excerpt{font-size:16px;margin-top:12px}

@media(max-width:820px){
	.fab-guidecard--lg{grid-template-columns:minmax(0,1fr)}
	.fab-guidecard--lg .fab-guidecard__img{min-height:0;aspect-ratio:16/10}
	.fab-guidecard--lg .fab-guidecard__body{padding:22px 20px 26px}
}

/* =========================================================================
   Advice — the article
   ====================================================================== */

.fab-article{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:52px;align-items:start}
.fab-article>*{min-width:0}

@media(max-width:960px){.fab-article{grid-template-columns:minmax(0,1fr);gap:32px}}

.fab-article__meta{
	display:flex;flex-wrap:wrap;align-items:center;gap:10px;
	font-size:13.5px;font-weight:600;color:var(--fab-n-500);
	padding-bottom:20px;border-bottom:1px solid var(--fab-n-200);margin-bottom:26px;
}
.fab-article__meta a{color:var(--fab-gold-700);text-decoration:none}
.fab-article__meta a:hover{text-decoration:underline}

/* The short answer */
.fab-key{
	background:var(--fab-n-25);border:1px solid var(--fab-n-200);
	border-left:4px solid var(--fab-gold-500);
	border-radius:var(--fab-r-md);padding:24px 26px;margin:0 0 32px;
}
.fab-key h2{font-family:var(--fab-display);font-size:17px;margin:0 0 12px;letter-spacing:.01em}
.fab-key ul{list-style:none;margin:0;padding:0}
.fab-key li{
	position:relative;padding-left:22px;margin:0 0 9px;
	font-size:16px;line-height:1.55;color:var(--fab-ink-800);
}
.fab-key li:last-child{margin-bottom:0}
.fab-key li::before{
	content:"";position:absolute;left:0;top:9px;
	width:8px;height:8px;border-radius:50%;background:var(--fab-gold-500);
}

/* Body typography */
.fab-article__body{font-size:17px;line-height:1.72;color:var(--fab-ink-800)}
.fab-article__body p{margin:0 0 20px;max-width:72ch}
.fab-article__body h2{
	font-family:var(--fab-display);font-size:27px;line-height:1.22;
	margin:44px 0 14px;scroll-margin-top:calc(var(--fab-headh) + 20px);
}
.fab-article__body h3{font-family:var(--fab-display);font-size:20px;line-height:1.3;margin:32px 0 10px}
.fab-article__body ul,.fab-article__body ol{margin:0 0 22px;padding-left:22px;max-width:72ch}
.fab-article__body li{margin:0 0 9px;line-height:1.65}
.fab-article__body a{color:var(--fab-gold-700);text-underline-offset:3px}
.fab-article__body table{width:100%;border-collapse:collapse;margin:8px 0 26px;font-size:15px}
.fab-article__body th,.fab-article__body td{
	text-align:left;padding:11px 14px;border-bottom:1px solid var(--fab-n-200);vertical-align:top;
}
.fab-article__body th{background:var(--fab-n-25);font-weight:700;color:var(--fab-ink-900)}
.fab-article__body .fab-tablewrap,.fab-article__body figure.wp-block-table{overflow-x:auto}

@media(max-width:600px){
	.fab-article__body{font-size:16px}
	.fab-article__body h2{font-size:23px;margin-top:36px}
	.fab-article__body h3{font-size:18.5px}
}

/* Images in the flow */
.fab-guidefig{margin:0 0 26px;border-radius:var(--fab-r-md);overflow:hidden;background:var(--fab-n-100)}
.fab-guidefig img{display:block;width:100%;height:auto}
.fab-guidefig figcaption{
	padding:10px 2px 0;font-size:13.5px;line-height:1.5;color:var(--fab-n-500);
}

/* Where an image still has to go — editors only */
.fab-imgslot{
	display:block;border:2px dashed var(--fab-gold-400,#D8B96A);border-radius:var(--fab-r-md);
	background:rgba(200,160,74,.06);padding:22px 24px;margin:0 0 26px;
}
.fab-imgslot b{display:block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--fab-gold-700);margin-bottom:7px}
.fab-imgslot span{display:block;font-size:15.5px;line-height:1.55;color:var(--fab-ink-800)}
.fab-imgslot em{display:block;margin-top:9px;font-size:13px;font-style:normal;color:var(--fab-n-500)}

/* Asides */
.fab-aside{
	background:var(--fab-ok-bg,#EEF6F0);border-left:4px solid var(--fab-ok,#2E7D4F);
	border-radius:var(--fab-r-md);padding:20px 24px;margin:0 0 26px;max-width:72ch;
}
.fab-aside b{
	display:block;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
	color:var(--fab-ok,#2E7D4F);margin-bottom:7px;
}
.fab-aside p{margin:0 0 10px;font-size:16px;line-height:1.62}
.fab-aside p:last-child{margin-bottom:0}
.fab-aside--warn{background:var(--fab-warn-bg,#FDF4E7);border-left-color:var(--fab-warn,#B26A00)}
.fab-aside--warn b{color:var(--fab-warn,#B26A00)}

/* Foot of the article */
.fab-article__foot{
	margin-top:38px;padding-top:26px;border-top:1px solid var(--fab-n-200);
}
.fab-article__foot p{font-size:15.5px;line-height:1.6;color:var(--fab-ink-600);max-width:66ch;margin:0 0 16px}
.fab-article__cta{display:flex;gap:11px;flex-wrap:wrap}

/* =========================================================================
   Advice — the sidebar
   ====================================================================== */

.fab-article__side{position:sticky;top:calc(var(--fab-headh) + 18px);display:grid;gap:20px}

@media(max-width:960px){.fab-article__side{position:static}}

.fab-toc{
	background:var(--fab-n-25);border:1px solid var(--fab-n-200);
	border-radius:var(--fab-r-lg);padding:22px 24px;
}
.fab-toc__head{
	font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
	color:var(--fab-n-500);margin:0 0 12px;
}
.fab-toc ol{list-style:none;counter-reset:toc;margin:0;padding:0}
.fab-toc li{counter-increment:toc;margin:0 0 9px;line-height:1.45}
.fab-toc li:last-child{margin-bottom:0}
.fab-toc a{
	display:block;padding-left:26px;position:relative;
	font-size:14.5px;color:var(--fab-ink-700);text-decoration:none;
}
.fab-toc a::before{
	content:counter(toc);position:absolute;left:0;top:1px;
	font-size:12px;font-weight:700;color:var(--fab-gold-600);
}
.fab-toc a:hover{color:var(--fab-gold-700)}

.fab-sidecta{
	background:var(--fab-ink-900);color:#fff;
	border-radius:var(--fab-r-lg);padding:24px;
}
.fab-sidecta h2{font-family:var(--fab-display);font-size:19px;margin:0 0 8px;color:#fff}
.fab-sidecta p{font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.8);margin:0 0 16px}

/* Grid directly under the featured guide */
.fab-projgrid--after{margin-top:0}

/* Guides without photography yet: a branded panel rather than a grey hole. */
.fab-guidecard__img{background:linear-gradient(135deg,var(--fab-ink-900) 0%,var(--fab-ink-700) 55%,var(--fab-gold-700) 190%) center/cover no-repeat}
.fab-projcard__img{background:linear-gradient(135deg,var(--fab-ink-900) 0%,var(--fab-ink-700) 55%,var(--fab-gold-700) 190%) center/cover no-repeat}

/* Main nav: divide the shop categories from the content pages. Matches the
   first item that is not a product category - robust to adding either. */
.fab-nav > .fab-wrap > ul > li.menu-item-type-taxonomy + li:not(.menu-item-type-taxonomy){
position:relative;margin-left:10px;padding-left:11px;
}
.fab-nav > .fab-wrap > ul > li.menu-item-type-taxonomy + li:not(.menu-item-type-taxonomy)::before{
content:"";position:absolute;left:0;top:50%;
width:1px;height:22px;margin-top:-11px;
background:rgba(255,255,255,.22);
}

/* ---- Nav divider on mobile (v1.15.1) --------------------------------------
   The desktop divider is a short vertical rule between the last category and
   the first non-category item. In the burger menu the items stack, so that
   vertical tick reads as a stray mark and its padding indents the item.
   Mobile hides it and instead turns the horizontal rule that is already there
   gold, which is the same separation using the language of the stacked menu. */
@media(max-width:1200px){
.fab-nav > .fab-wrap > ul > li.menu-item-type-taxonomy + li:not(.menu-item-type-taxonomy){
margin-left:0;
padding-left:0;
}
.fab-nav > .fab-wrap > ul > li.menu-item-type-taxonomy + li:not(.menu-item-type-taxonomy)::before{
display:none;
}
.fab-nav > .fab-wrap > ul > li.menu-item-type-taxonomy + li:not(.menu-item-type-taxonomy) > a{
display:block;
margin-top:-1px;
border-top:1px solid var(--fab-gold-400,#C8A04A);
}
}

/* ============================================================
   Cookie consent banner  (added v1.15.2)
   Classes are .fab-cc* — collision-checked against theme.css.
   ============================================================ */

.fab-cc{position:fixed;z-index:2147483000;left:1.25rem;bottom:1.25rem;
width:min(30rem,calc(100vw - 2.5rem));font-family:inherit}
.fab-cc[hidden]{display:none}

.fab-cc__panel{background:var(--fab-ink-900,#0B1220);color:#fff;
border:1px solid rgba(217,183,105,.35);border-radius:10px;
box-shadow:0 18px 48px rgba(0,0,0,.45);padding:1.25rem 1.25rem 1.1rem}

.fab-cc__title{margin:0 0 .5rem;font-size:1.0625rem;line-height:1.3;color:#fff;letter-spacing:.01em}
.fab-cc__text{margin:0;font-size:.875rem;line-height:1.55;color:rgba(255,255,255,.82)}

.fab-cc__link{color:var(--fab-gold-400,#C8A04A);text-decoration:underline;
text-underline-offset:2px;white-space:nowrap}
.fab-cc__link:hover,.fab-cc__link:focus{color:#fff}

.fab-cc__options{margin:.9rem 0 0;padding:.85rem 0 0;
border-top:1px solid rgba(255,255,255,.14);display:grid;gap:.65rem}
.fab-cc__options[hidden]{display:none}

.fab-cc__opt{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:start;
font-size:.8125rem;line-height:1.5;color:rgba(255,255,255,.78);cursor:pointer}
.fab-cc__opt input{margin:.2rem 0 0;width:1rem;height:1rem;accent-color:var(--fab-gold-400,#C8A04A)}
.fab-cc__opt input:disabled{cursor:not-allowed;opacity:.65}
.fab-cc__opt strong{color:#fff;font-weight:600}

/* Accept and Reject are deliberately the same size, weight and shape.
   The ICO expects equal prominence; a quiet reject is not consent. */
.fab-cc__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:1rem}

.fab-cc__btn{flex:1 1 auto;min-width:8.5rem;appearance:none;border:1px solid transparent;
border-radius:6px;padding:.6rem 1.1rem;font:inherit;font-size:.875rem;font-weight:600;
line-height:1.2;cursor:pointer;
transition:background-color .15s ease,border-color .15s ease,color .15s ease}

.fab-cc__btn--accept{background:var(--fab-gold-400,#C8A04A);color:var(--fab-ink-900,#0B1220)}
.fab-cc__btn--accept:hover{background:#d9b769}

.fab-cc__btn--reject{background:transparent;border-color:rgba(255,255,255,.45);color:#fff}
.fab-cc__btn--reject:hover{background:rgba(255,255,255,.1);border-color:#fff}

.fab-cc__btn--save{background:var(--fab-gold-400,#C8A04A);color:var(--fab-ink-900,#0B1220);flex-basis:100%}
.fab-cc__btn--save[hidden]{display:none}

.fab-cc__manage{flex:0 0 auto;appearance:none;background:none;border:0;padding:.4rem .2rem;
font:inherit;font-size:.8125rem;color:rgba(255,255,255,.72);text-decoration:underline;
text-underline-offset:2px;cursor:pointer}
.fab-cc__manage:hover{color:#fff}

.fab-cc__btn:focus-visible,.fab-cc__manage:focus-visible,
.fab-cc__link:focus-visible,.fab-cc__opt input:focus-visible{
outline:2px solid var(--fab-gold-400,#C8A04A);outline-offset:2px}

@media(max-width:900px){
.fab-cc{left:.75rem;right:.75rem;bottom:.75rem;width:auto}
.fab-cc__panel{padding:1.1rem 1rem 1rem}
.fab-cc__actions{gap:.5rem}
.fab-cc__btn{flex:1 1 100%;min-width:0}
.fab-cc__manage{flex:1 1 100%;text-align:center;padding-top:.15rem}
}

@media(prefers-reduced-motion:reduce){
.fab-cc__btn{transition:none}
}

/* ---- File input: let the drop zone size itself (v1.15.3) -------------------
   .fab-field input,.fab-field select sets height:46px for every field. The
   file input then adds padding:22px 15px on top of that fixed height, which
   leaves roughly nothing for the content box — so the "Choose files" button
   and the filename were being clipped off the bottom of the dashed box.
   Same trap as the image crop: a later rule only overrides the properties it
   actually declares, and the file rule never reset the height. */
.fab-field input[type="file"]{
height:auto;
min-height:0;
line-height:1.3;
}



/* ---- Navigation: categories only, one row (v1.16.0) ----------------------
   The primary menu carries product categories and nothing else now, which is
   what its aria-label always claimed. Inspiration, Advice and Trade account
   moved to the top line, where they are visible on every page without
   competing with fourteen categories for the same row.

   Fourteen still will not fit 1204px at 13px, so the bar runs a little
   tighter and the burger takes over at 1150px instead of 1100px. Do not put
   a page back into the primary menu without checking the row again. */
@media(min-width:1201px){
.fab-nav > .fab-wrap > ul{flex-wrap:nowrap!important}
.fab-nav > .fab-wrap > ul > li > a{
font-size:clamp(11px,.9vw,12px);
padding:15px clamp(5px,.5vw,7px);
}
.fab-nav__util{display:none!important}
}

/* Top line: Inspiration - Advice - Trade account, right of the phone and
   email, left of the VAT switch. */
.fab-topline__nav{margin-left:auto}
.fab-topline__menu{display:flex;align-items:center;gap:18px;margin:0;padding:0;list-style:none}
.fab-topline__menu li{margin:0}
.fab-topline__menu a{display:block;padding:2px 0;font-weight:500}
.fab-topline__menu li:last-child a{color:var(--fab-gold-400,#C8A04A);font-weight:600}
@media(max-width:1200px){
.fab-topline__nav{display:none}
}

/* The same three links inside the burger drawer, so nothing is lost below
   1150px. The gold rule above the first one is the same separation the
   stacked menu used when these items sat at the end of the categories. */
@media(max-width:1200px){
.fab-nav .fab-nav__util > li > a{
border-bottom:1px solid rgba(255,255,255,.08);
}
.fab-nav .fab-nav__util > li:first-child > a{
border-top:1px solid var(--fab-gold-400,#C8A04A);
margin-top:-1px;
}
.fab-nav .fab-nav__util > li:last-child > a{
color:var(--fab-gold-400,#C8A04A);
font-weight:700;
}
}


/* ---- Home page: promise tiles are links now (v1.17.0) -------------------
   The four tiles under the hero were decorative. Each one names something
   the site actually has a page for, so each one now goes there. This is
   also where Advice and Trade accounts pick up the reach they lost when
   they came out of the primary menu. */
a.fab-trust__i{color:inherit;text-decoration:none;transition:background .16s var(--fab-ease),transform .16s var(--fab-ease)}
a.fab-trust__i:hover{background:var(--fab-n-50,#F6F8FA);color:inherit}
a.fab-trust__i:hover b{color:var(--fab-gold-500,#B8912F)}
a.fab-trust__i:focus-visible{outline:2px solid var(--fab-gold-400,#C8A04A);outline-offset:-2px}


/* ---- Product tab content: captioned figures (v1.17.1) --------------------
   The installation diagram on the baffle pages sits in a <figure> inside a
   tab panel. Without this the caption inherits body copy size and colour, so
   it reads as another paragraph instead of a caption, and the figure has no
   air around it. */
.fab-tabpanel figure{margin:26px 0 30px}
.fab-tabpanel figure img{display:block;width:100%;height:auto;
border:1px solid var(--fab-n-200,#E3E8ED);border-radius:var(--fab-r-md,8px)}
.fab-tabpanel figcaption{margin-top:11px;font-size:14.5px;line-height:1.55;
color:var(--fab-n-600,#4A5A6A)}

/* ---- "Other colours" row under a colour-split product (v1.18.0) ---------
   Sits between the tabs and Related products. Square thumbs because every
   colour uses the same panel render, so the only thing that varies is the
   colour itself — crop them identically and the comparison is honest. */
.fab-colours{margin:44px 0 8px}
.fab-colours__head{margin-bottom:18px}
.fab-colours__head h2{margin:4px 0 0;font-size:clamp(20px,2.2vw,26px)}
.fab-colours__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}
.fab-colours__card{display:block;color:inherit;text-decoration:none;
border:1px solid var(--fab-n-200,#E3E8ED);border-radius:var(--fab-r-md,8px);
overflow:hidden;background:#fff;transition:border-color .16s var(--fab-ease),transform .16s var(--fab-ease)}
.fab-colours__card:hover{border-color:var(--fab-gold-400,#C8A04A);transform:translateY(-2px);color:inherit}
.fab-colours__img{display:block;background:var(--fab-n-50,#F6F8FA)}
.fab-colours__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.fab-colours__name{display:block;padding:11px 13px;font-weight:600;font-size:14.5px;line-height:1.3}
.fab-colours__card:hover .fab-colours__name{color:var(--fab-gold-500,#B8912F)}
@media(max-width:520px){
.fab-colours__grid{grid-template-columns:repeat(2,1fr);gap:12px}
}


/* ---- Mega panel: guide pills (v1.2.0) ---- */
.fab-mega__pills{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;padding:0 10px}
.fab-nav .fab-mega__pill{display:inline-flex!important;align-items:center;gap:7px;
background:var(--fab-gold-500);color:var(--fab-ink-900)!important;
font-family:var(--fab-display)!important;font-weight:700!important;font-size:12.5px!important;
padding:8px 14px!important;border-radius:99px;border-bottom:0!important;
white-space:nowrap!important;letter-spacing:.01em!important;line-height:1.2}
.fab-nav .fab-mega__pill:hover{background:var(--fab-gold-400);color:var(--fab-ink-900)!important}
.fab-mega__pill svg{width:12px;height:12px;flex:none}
/* The border-bottom:0!important above kills the nav's underline, but it was also
   killing the ghost pill's own bottom border. This one has to shout back. */
.fab-nav .fab-mega__pill--ghost{background:transparent;
border:1.5px solid var(--fab-n-300)!important;color:var(--fab-n-600)!important}
.fab-nav .fab-mega__pill--ghost:hover{border-color:var(--fab-ink-900)!important;
background:var(--fab-n-50);color:var(--fab-ink-900)!important}

/* ---- Advice index: tools strip (v1.2.0) ---- */
.fab-tools{background:var(--fab-ink-900);color:#fff;border-radius:var(--fab-r-lg);
padding:30px 32px;margin:0 0 40px}
.fab-tools__head{display:flex;flex-direction:column;margin-bottom:20px}
.fab-tools__head h2{color:#fff;font-size:clamp(21px,2.2vw,27px);margin:8px 0 0}
.fab-tools__head p{color:rgba(255,255,255,.66);font-size:14.5px;margin:9px 0 0;max-width:70ch}
.fab-tools__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fab-tool{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.06);
border:1px solid rgba(255,255,255,.12);border-radius:var(--fab-r-md);padding:15px 17px;
color:#fff;transition:all .18s var(--fab-ease)}
.fab-tool:hover{background:rgba(255,255,255,.11);border-color:var(--fab-gold-500);color:#fff;
transform:translateY(-1px)}
.fab-tool__ico{flex:none;width:38px;height:38px;border-radius:var(--fab-r-md);display:grid;
place-items:center;background:var(--fab-gold-500);color:var(--fab-ink-900)}
.fab-tool__ico svg{width:18px;height:18px}
.fab-tool__b{flex:1;min-width:0}
.fab-tool__b b{display:block;font-family:var(--fab-display);font-size:15px;line-height:1.25}
.fab-tool__b span{display:block;font-size:13px;color:rgba(255,255,255,.64);margin-top:3px;line-height:1.45}
.fab-tool__go{flex:none;font-size:17px;color:var(--fab-gold-400);transition:transform .18s var(--fab-ease)}
.fab-tool:hover .fab-tool__go{transform:translateX(3px)}
.fab-tool--alt .fab-tool__ico{background:transparent;border:1.5px solid var(--fab-gold-500);color:var(--fab-gold-400)}
@media(max-width:760px){
	.fab-tools{padding:24px 20px}
	.fab-tools__grid{grid-template-columns:1fr}
}
