/* Brand overrides on top of Bootstrap 5.3.8 */
:root{--brand:#3FC98C;--brand-deep:#31A173;--brand-ink:#06281A;
 --bs-body-font-size:1.0625rem;--bs-body-line-height:1.6;
 --bs-link-color:#1d7552;--bs-link-color-rgb:29,117,82;--bs-link-hover-color:#06281A;--bs-link-hover-color-rgb:6,40,26}
[data-bs-theme=dark]{--bs-link-color:#3FC98C;--bs-link-color-rgb:63,201,140;--bs-link-hover-color:#7fe0b6;--bs-link-hover-color-rgb:127,224,182}
h1,h2,h3{letter-spacing:-.01em}
.btn-brand{--bs-btn-color:#06281A;--bs-btn-bg:#3FC98C;--bs-btn-border-color:#3FC98C;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#31A173;--bs-btn-hover-border-color:#31A173;--bs-btn-active-color:#fff;--bs-btn-active-bg:#2a8c63;--bs-btn-active-border-color:#2a8c63}
.btn-outline-brand{--bs-btn-color:#1d7552;--bs-btn-border-color:#3FC98C;--bs-btn-hover-color:#06281A;--bs-btn-hover-bg:#3FC98C;--bs-btn-hover-border-color:#3FC98C;--bs-btn-active-color:#06281A;--bs-btn-active-bg:#3FC98C}
[data-bs-theme=dark] .btn-outline-brand{--bs-btn-color:#3FC98C}
.page-link{color:var(--bs-link-color)}.page-item.active .page-link{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.logo{height:34px;width:auto}.logo-d{display:none}[data-bs-theme=dark] .logo-l{display:none}[data-bs-theme=dark] .logo-d{display:inline}
.navbar .nav-link{font-weight:500}
@media(min-width:992px){.mega{margin-top:.5rem;box-shadow:0 .5rem 1.5rem rgba(0,0,0,.12)}}
.mega .small a{text-decoration:none}.mega .small a:hover{text-decoration:underline}
.hero{max-width:46rem}.hero .lead{max-width:36rem;color:var(--bs-secondary-color)}
.tile{background:var(--bs-tertiary-bg)}.tile a{text-decoration:none}.tile a:hover{text-decoration:underline}
.pcard{overflow:hidden}.pcard:hover{box-shadow:0 .25rem 1rem rgba(0,0,0,.1)}
.pcard-img{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:#fff;border-bottom:1px solid var(--bs-border-color)}
.pcard-img img{width:100%;height:100%;object-fit:contain;padding:.5rem}
.pcard-cat{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--brand-deep);text-decoration:none;margin-bottom:.25rem}
.pcard-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3;height:2.6em}
.pcard-ph{display:block;width:40%;aspect-ratio:1;background:#9aa3ab;-webkit-mask:var(--ph) center/contain no-repeat;mask:var(--ph) center/contain no-repeat}
.photo{background:#fff}.photo img{object-fit:contain;padding:1rem}
.prose{max-width:70ch}.prose p,.prose li{line-height:1.6}
.prose table{width:100%;margin-bottom:1rem}.prose th,.prose td{padding:.4rem .6rem;border-bottom:1px solid var(--bs-border-color);vertical-align:top}
.prose img{max-width:100%;height:auto}.toc ul{margin-bottom:0}
.specs th{width:34%;font-weight:600}
.columns-3{columns:1}@media(min-width:768px){.columns-3{columns:3}}
/* Pagefind Component UI */
.catalogue pagefind-results{--pf-results-display:grid;--pf-results-columns:repeat(auto-fill,minmax(210px,1fr));--pf-results-gap:1rem}
.catalogue{--pf-background:var(--bs-body-bg);--pf-text:var(--bs-body-color);--pf-border:var(--bs-border-color);--pf-hover:var(--bs-tertiary-bg);--pf-font:inherit}
.catalogue .pf-result{list-style:none}
.offcanvas-lg .offcanvas-body pagefind-filter-pane{display:block}
.keyspecs li{margin-bottom:.15rem}
.thumb{width:64px;height:64px;background:#fff}.thumb img{width:100%;height:100%;object-fit:contain}
.gal-img{max-height:80vh;object-fit:contain;background:#fff}
.photo img[data-bs-toggle]{cursor:zoom-in}
@media(max-width:575.98px){
 .catalogue pagefind-results{--pf-results-columns:repeat(2,minmax(0,1fr));--pf-results-gap:.5rem}
 .pcard-img{aspect-ratio:4/3;max-height:110px}
 main h1{font-size:1.5rem;margin-bottom:.5rem!important}
 .pcard .card-body{padding:.5rem;font-size:15px}.pcard .card-body .small,.pcard .card-body .btn{font-size:15px}
 .pcard-title{font-size:15px;height:auto;margin-bottom:.25rem}
 .pcard .card-body>p.text-body-secondary,.pcard .card-body>.btn{display:none}
 .pcard-offer{margin-bottom:0!important}
 .catalogue>section>div:first-child{margin-bottom:.5rem!important}
}
/* Home */
body.home{background:var(--bs-body-bg)}
.home main.container{max-width:1500px;padding-top:1.25rem!important}
.hband{background:#eceae3;border-bottom:1px solid var(--bs-border-color);padding:1.1rem 0 .9rem}
[data-bs-theme=dark] .hband{background:#1b1a17}
.hband .container{max-width:1500px}
.hband h1{font-size:2.2rem;font-weight:800;margin:0 0 .15rem!important;line-height:1.15}
.hband-lead{margin:0 0 .6rem;font-size:1rem}
.hpills{display:flex;flex-wrap:wrap;gap:.4rem .5rem;align-items:center}
.hpill{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .7rem;border-radius:2rem;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);color:var(--bs-body-color);text-decoration:none;font-size:.85rem;font-weight:600;white-space:nowrap}
.hpill:hover{border-color:var(--brand)}
.hpill i{display:block;width:1rem;height:1rem;background:currentColor;opacity:.6;-webkit-mask:var(--ph) center/contain no-repeat;mask:var(--ph) center/contain no-repeat}
.hpill-all{border:0;background:none;color:var(--brand-deep)}
.hstats{margin:.5rem 0 0;font-size:.85rem;color:var(--bs-secondary-color)}
.mq{position:relative;overflow:hidden;border-bottom:1px solid var(--bs-border-color);background:var(--bs-body-bg);display:flex;align-items:center}
.mq-lbl{flex:none;padding:0 .9rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--brand-deep);white-space:nowrap;position:relative;z-index:1;background:var(--bs-body-bg)}
.mq-view{flex:1;overflow:hidden;min-width:0}
.mq-track{display:flex;width:max-content;animation:mq 90s linear infinite}
.mq:hover .mq-track,.mq:focus-within .mq-track,.mq.paused .mq-track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.mq-i{display:flex;align-items:center;gap:.5rem;padding:.4rem 1.1rem .4rem 0;margin-right:.5rem;text-decoration:none;color:var(--bs-body-color);font-size:.85rem;white-space:nowrap}
.mq-img{display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;background:#fff;border:1px solid var(--bs-border-color);border-radius:.3rem;padding:.15rem;overflow:hidden}
.mq-img img{width:100%;height:100%;object-fit:contain}.mq-img .pcard-ph{width:60%}
.mq-n{max-width:20ch;overflow:hidden;text-overflow:ellipsis}.mq-p{font-weight:700;margin-left:.1rem}
@media(prefers-reduced-motion:reduce){.mq-track{animation:none}.mq-view{overflow-x:auto}.mq-dup{display:none!important}}
.bhead{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.bhead h2{font-size:1.5rem;margin:0}.bhead p{font-size:.9rem}.bhead a{font-weight:700;text-decoration:none;color:var(--brand-deep)}
.bfilter{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 .8rem}
.bf{border:1px solid var(--bs-border-color);border-radius:2rem;padding:.3rem .8rem;font-size:.85rem;font-weight:700;background:var(--bs-secondary-bg);color:var(--bs-body-color);cursor:pointer}
.bf[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}
.bf:nth-child(8n+2){background:hsl(215 80% 93%);color:hsl(215 60% 30%)}.bf:nth-child(8n+3){background:hsl(38 80% 90%);color:hsl(30 70% 30%)}.bf:nth-child(8n+5){background:hsl(160 50% 90%);color:hsl(165 60% 22%)}.bf:nth-child(8n+6){background:hsl(225 70% 94%);color:hsl(225 50% 32%)}.bf:nth-child(8n+7){background:hsl(270 60% 94%);color:hsl(270 40% 36%)}.bf:nth-child(8n+8){background:hsl(0 80% 94%);color:hsl(0 55% 36%)}
[data-bs-theme=dark] .bf:not([aria-pressed=true]){background:var(--bs-secondary-bg);color:var(--bs-body-color)}
.bf[aria-pressed=true]{background:var(--brand)!important;border-color:var(--brand);color:var(--brand-ink)!important}
.bcard{transition:transform .15s,box-shadow .15s}.bcard:hover{transform:translateY(-3px);box-shadow:0 .5rem 1.2rem rgba(0,0,0,.14)}
@media(prefers-reduced-motion:reduce){.bcard{transition:none}.bcard:hover{transform:none}}
.bcard .pcard-img{aspect-ratio:auto;height:140px}.bcard .card-body{padding:.6rem;font-size:15px}.bcard .card-body .small,.bcard .card-body .btn{font-size:14px}.bcard .card-body>p.text-body-secondary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.4rem!important}.bcard .pcard-offer{margin-bottom:.5rem!important}
.bmore{display:block;margin:1.25rem auto 0}
.hbox{background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.5rem;padding:1rem;margin:1.75rem 0 .75rem}
.hrow{display:flex;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:.25rem}
.hg{flex:0 0 200px;scroll-snap-align:start;border:1px solid var(--bs-border-color);border-radius:.4rem;padding:.6rem;text-decoration:none;color:var(--bs-body-color);display:flex;flex-direction:column;gap:.2rem}
.hg-t{font-weight:600;font-size:.9rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcard-ph{width:45%}.pcard-img{overflow:hidden}
@media(max-width:575.98px){.hband{padding:.7rem 0 .6rem}.hband h1{font-size:1.55rem}.hband-lead{font-size:.88rem;margin-bottom:.5rem}.hpills{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:.1rem}.hpills::-webkit-scrollbar{display:none}.hstats{margin-top:.45rem;font-size:.78rem}.mq-lbl{display:none}.bcard .pcard-img{height:110px}.mq-img{width:2.2rem;height:2.2rem}.bhead h2{font-size:1.25rem}.bhead a{font-size:.85rem}.bfilter{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:.6rem 0}.bfilter::-webkit-scrollbar{display:none}.bf{flex:none;white-space:nowrap}.hrow .hg{flex-basis:170px}}
