/* All design rules are scoped to the plugin. No FOCOS/NOVA stylesheet is modified. */
#kslf-root.kslf{--kslf-ink:#182724;--kslf-muted:#52645e;--kslf-cream:#f6f3ed;--kslf-line:#d9dfd8;--kslf-accent:#a24a2c;--kslf-green:#254d40;color:var(--kslf-ink);background:var(--kslf-cream);font:16px/1.6 "Segoe UI",Arial,sans-serif;width:100%;margin:0 0 32px;isolation:isolate;scroll-margin-top:100px}
#kslf-root.kslf[hidden],[data-kslf-native][hidden]{display:none!important}#kslf-root.kslf *{box-sizing:border-box}#kslf-root.kslf [hidden]{display:none!important}#kslf-root.kslf a{color:inherit}#kslf-root.kslf button,#kslf-root.kslf input,#kslf-root.kslf select{font:inherit}#kslf-root.kslf button,#kslf-root.kslf a{touch-action:manipulation}#kslf-root.kslf button{cursor:pointer}#kslf-root.kslf a:focus-visible,#kslf-root.kslf button:focus-visible,#kslf-root.kslf input:focus-visible,#kslf-root.kslf select:focus-visible,#kslf-root.kslf [tabindex]:focus-visible{outline:3px solid var(--kslf-accent);outline-offset:4px}#kslf-root.kslf h1,#kslf-root.kslf h2,#kslf-root.kslf h3,#kslf-root.kslf p,#kslf-root.kslf figure{margin:0}#kslf-root.kslf h1,#kslf-root.kslf h2,#kslf-root.kslf h3{color:var(--kslf-ink);line-height:1.13;letter-spacing:-.035em;text-transform:none}#kslf-root.kslf h1{font-size:clamp(34px,4.6vw,68px);font-weight:750}#kslf-root.kslf h2{font-size:clamp(27px,3vw,42px);font-weight:700}#kslf-root.kslf h3{font-size:22px;font-weight:700}#kslf-root.kslf p{margin:0 0 16px}#kslf-root.kslf img{max-width:100%;height:auto}#kslf-root.kslf .kslf-nav{padding:24px 32px;border-bottom:1px solid var(--kslf-line);display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff}#kslf-root.kslf .kslf-brand{font-weight:800;font-size:21px;letter-spacing:.07em;text-decoration:none;line-height:1.2}#kslf-root.kslf .kslf-brand span{display:block;font-size:9px;letter-spacing:.16em;margin-top:8px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-nav>div{display:flex;flex-wrap:wrap;gap:24px}#kslf-root.kslf .kslf-nav>div a{font-size:14px;text-decoration:none;font-weight:600}#kslf-root.kslf .kslf-nav>div a:hover{text-decoration:underline}#kslf-root.kslf .kslf-body{padding:32px;max-width:1480px;margin:auto}#kslf-root.kslf .kslf-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;min-height:560px}#kslf-root.kslf .kslf-eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--kslf-accent);margin-bottom:16px}#kslf-root.kslf .kslf-hero h1{margin-bottom:24px}#kslf-root.kslf .kslf-hero em{font-style:normal;color:var(--kslf-accent)}#kslf-root.kslf .kslf-lead{font-size:18px;max-width:530px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-hero figure{position:relative;background:#fff;border:1px solid var(--kslf-line)}#kslf-root.kslf .kslf-hero img{display:block;aspect-ratio:1;object-fit:contain;padding:24px;max-height:580px;width:100%}#kslf-root.kslf .kslf-hero figcaption{padding:12px 20px;font-size:10px;letter-spacing:.14em;border-top:1px solid var(--kslf-line);color:var(--kslf-muted)}#kslf-root.kslf .kslf-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}#kslf-root.kslf .kslf-button{border:1px solid var(--kslf-green);background:var(--kslf-green);color:#fff;display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:12px 20px;text-decoration:none;border-radius:2px;font-size:14px;font-weight:650;line-height:1.4;gap:8px;white-space:normal;text-align:center}#kslf-root.kslf .kslf-button:hover{background:#17392f;color:white}#kslf-root.kslf .kslf-button:disabled{opacity:.65;cursor:wait}#kslf-root.kslf .kslf-secondary{background:transparent;color:var(--kslf-green)}#kslf-root.kslf .kslf-secondary:hover{background:#e5ece6;color:var(--kslf-ink)}#kslf-root.kslf .kslf-facts{display:flex;gap:24px;border-top:1px solid var(--kslf-line);padding-top:20px;flex-wrap:wrap}#kslf-root.kslf .kslf-facts span{font-size:12px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-facts strong{display:block;font-size:25px;color:var(--kslf-ink)}#kslf-root.kslf .kslf-section{padding:56px 0 24px}#kslf-root.kslf .kslf-section h2{margin-bottom:28px}#kslf-root.kslf .kslf-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}#kslf-root.kslf .kslf-steps article{border-top:2px solid var(--kslf-line);padding-top:20px}#kslf-root.kslf .kslf-steps b{font-size:11px;letter-spacing:.14em;color:var(--kslf-accent)}#kslf-root.kslf .kslf-steps h3{margin:16px 0}#kslf-root.kslf .kslf-steps p{color:var(--kslf-muted);font-size:14px}#kslf-root.kslf .kslf-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:24px}#kslf-root.kslf .kslf-card{background:white;border:1px solid var(--kslf-line);display:flex;flex-direction:column;text-decoration:none;min-width:0;transition:box-shadow .15s}#kslf-root.kslf .kslf-card:hover{box-shadow:0 5px 24px #18272412}#kslf-root.kslf .kslf-icon{aspect-ratio:1.5;display:flex;align-items:center;justify-content:center;padding:24px;background:#fff;overflow:hidden}#kslf-root.kslf .kslf-icon img{object-fit:contain;width:100%;height:100%;max-height:180px}#kslf-root.kslf .kslf-card-body{padding:22px;min-width:0;border-top:1px solid var(--kslf-line)}#kslf-root.kslf .kslf-card-body h3{margin-bottom:10px;font-size:21px;overflow-wrap:anywhere}#kslf-root.kslf .kslf-card-body p{font-size:13px;color:var(--kslf-muted);margin-bottom:12px}#kslf-root.kslf .kslf-card-body .kslf-eyebrow{font-size:9px;color:var(--kslf-accent);margin-bottom:10px}#kslf-root.kslf .kslf-inline{font-size:13px;font-weight:650;text-decoration:underline;text-underline-offset:4px;display:inline-block;margin:4px 0 12px}#kslf-root.kslf .kslf-page-head{margin:12px 0 32px;max-width:900px}#kslf-root.kslf .kslf-page-head h1,#kslf-root.kslf .kslf-page-head h2{margin:0 0 20px}#kslf-root.kslf .kslf-page-head p{color:var(--kslf-muted)}#kslf-root.kslf .kslf-filters{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;gap:20px;padding:24px;background:white;border:1px solid var(--kslf-line);margin-bottom:18px}#kslf-root.kslf label{display:block;font-size:13px;font-weight:600;color:var(--kslf-ink);margin:0 0 12px}#kslf-root.kslf input:not([type=hidden]),#kslf-root.kslf select{display:block;border:1px solid #b9c5bd;border-radius:2px;background:white;color:var(--kslf-ink);min-height:44px;padding:10px 12px;width:100%;margin-top:7px;font-size:15px}#kslf-root.kslf .kslf-colours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}#kslf-root.kslf .kslf-colour-card{background:white;border:1px solid var(--kslf-line);min-width:0}#kslf-root.kslf .kslf-colour-card>a:first-child{display:block;text-decoration:none}#kslf-root.kslf .kslf-swatch{height:150px;background:radial-gradient(ellipse at 20% 5%,#ffffff30,transparent 65%),var(--kslf-colour);display:flex;align-items:flex-end;padding:20px}#kslf-root.kslf .kslf-swatch span{background:#ffffffd9;color:#182724;font-size:9px;padding:3px 7px;letter-spacing:.12em}#kslf-root.kslf .kslf-native-link{font-size:12px;display:inline-block;margin:0 22px 20px;text-underline-offset:3px}#kslf-root.kslf .kslf-more{text-align:center;padding:30px}#kslf-root.kslf .kslf-note{font-size:12px;line-height:1.6;color:var(--kslf-muted);margin:20px 0 0;max-width:950px}#kslf-root.kslf .kslf-footer{padding:22px 32px;border-top:1px solid var(--kslf-line);display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-text-button{background:none;border:0;text-decoration:underline;font-size:12px;color:inherit;padding:8px}#kslf-root.kslf .kslf-advisor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:28px;background:white;border:1px solid var(--kslf-line)}#kslf-root.kslf .kslf-advisor label span{display:block;min-height:42px}#kslf-root.kslf .kslf-advisor>button{grid-column:1/-1;justify-self:start}#kslf-root.kslf .kslf-advice{padding:30px;border-left:4px solid var(--kslf-green);background:#e8eee7;margin-top:28px}#kslf-root.kslf .kslf-advice h2{margin-bottom:20px}#kslf-root.kslf .kslf-advice select{max-width:400px}#kslf-root.kslf .kslf-product-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:32px}#kslf-root.kslf .kslf-selection{padding:28px;background:white;border:1px solid var(--kslf-line);min-width:0}#kslf-root.kslf .kslf-selection h2{font-size:27px;margin-bottom:20px}#kslf-root.kslf .kslf-selection>p{font-size:14px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-selection>.kslf-button{margin-bottom:18px}#kslf-root.kslf .kslf-viewer-wrap{min-width:0;background:#eee9e0;border:1px solid var(--kslf-line);align-self:start}#kslf-root.kslf .kslf-viewer{height:480px;position:relative;overflow:hidden;touch-action:none}#kslf-root.kslf .kslf-viewer canvas{position:absolute;inset:0;display:block;width:100%;height:100%}#kslf-root.kslf .kslf-viewer-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;position:relative;z-index:1;gap:14px}#kslf-root.kslf .kslf-viewer-placeholder p{margin:0}#kslf-root.kslf .kslf-viewer-placeholder small{font-size:11px;color:var(--kslf-muted)}#kslf-root.kslf .kslf-dot{display:block;background:var(--kslf-colour);border-radius:50%;width:110px;height:110px;box-shadow:inset 12px 16px 22px #ffffff22,inset -12px -16px 22px #00000022,0 12px 28px #00000018;margin-bottom:15px}#kslf-root.kslf .kslf-viewer-controls{display:flex;flex-wrap:wrap;gap:5px;padding:12px;border-top:1px solid var(--kslf-line)}#kslf-root.kslf .kslf-viewer-controls button{background:#fff;border:1px solid #c3cec5;padding:7px 9px;font-size:12px;color:var(--kslf-ink);min-height:40px}#kslf-root.kslf .kslf-viewer-controls button[aria-pressed=true]{background:var(--kslf-green);color:white}#kslf-root.kslf .kslf-viewer-status{padding:0 16px 16px;font-size:11px;color:var(--kslf-muted);margin:10px 0 0}#kslf-root.kslf .kslf-price{font-size:36px;line-height:1.3;font-weight:750;margin:22px 0 4px}#kslf-root.kslf .kslf-base-price,#kslf-root.kslf .kslf-tax{font-size:12px;margin-bottom:8px}#kslf-root.kslf .kslf-delivery{font-size:13px;color:var(--kslf-green)}#kslf-root.kslf .kslf-buy{display:flex;align-items:flex-end;gap:12px;margin:20px 0}#kslf-root.kslf .kslf-buy label{max-width:110px;margin:0}#kslf-root.kslf .kslf-buy button{flex:1;min-height:46px}#kslf-root.kslf .kslf-warning{border-left:3px solid var(--kslf-accent);padding:12px;background:#faf1e9;font-size:14px}#kslf-root.kslf .kslf-article-thumb{width:96px;max-height:110px;object-fit:contain;margin:10px 0}#kslf-root.kslf .kslf-article-preview{padding:28px}#kslf-root.kslf .kslf-article-preview .kslf-page-head h2{font-size:32px}
@media(max-width:1000px){#kslf-root.kslf .kslf-feature-grid,#kslf-root.kslf .kslf-colours{grid-template-columns:repeat(3,minmax(0,1fr))}#kslf-root.kslf .kslf-body{padding:24px}#kslf-root.kslf .kslf-hero{gap:24px}#kslf-root.kslf .kslf-nav{padding:20px 24px}#kslf-root.kslf .kslf-product-layout{grid-template-columns:1fr 1fr;gap:20px}#kslf-root.kslf .kslf-selection{padding:22px}}
@media(max-width:720px){#kslf-root.kslf .kslf-hero,#kslf-root.kslf .kslf-product-layout,#kslf-root.kslf .kslf-advisor,#kslf-root.kslf .kslf-steps{grid-template-columns:1fr}#kslf-root.kslf .kslf-hero{min-height:0}#kslf-root.kslf .kslf-hero figure{max-width:480px;width:100%;margin:auto}#kslf-root.kslf .kslf-hero h1{font-size:46px}#kslf-root.kslf .kslf-feature-grid,#kslf-root.kslf .kslf-colours{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#kslf-root.kslf .kslf-filters{grid-template-columns:1fr;gap:8px;padding:18px}#kslf-root.kslf .kslf-nav{flex-wrap:wrap;gap:18px}#kslf-root.kslf .kslf-nav>div{gap:18px}#kslf-root.kslf .kslf-body{padding:22px 16px}#kslf-root.kslf .kslf-card-body{padding:16px}#kslf-root.kslf .kslf-icon{padding:20px;aspect-ratio:1.35}#kslf-root.kslf .kslf-card-body h3{font-size:19px}#kslf-root.kslf .kslf-section{padding-top:36px}#kslf-root.kslf .kslf-footer{flex-direction:column;align-items:flex-start;padding:20px 16px;gap:4px}#kslf-root.kslf .kslf-viewer{height:430px}#kslf-root.kslf .kslf-advisor label span{min-height:0}#kslf-root.kslf .kslf-advisor{padding:20px;gap:12px}#kslf-root.kslf .kslf-swatch{height:115px}#kslf-root.kslf .kslf-article-preview{padding:20px 16px}}
@media(max-width:400px){#kslf-root.kslf .kslf-feature-grid,#kslf-root.kslf .kslf-colours{grid-template-columns:1fr}#kslf-root.kslf .kslf-icon{height:180px;aspect-ratio:auto}#kslf-root.kslf .kslf-viewer{height:370px}#kslf-root.kslf .kslf-buy{flex-wrap:wrap}#kslf-root.kslf .kslf-buy button{flex-basis:100%}#kslf-root.kslf .kslf-hero h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){#kslf-root.kslf *{scroll-behavior:auto!important;transition:none!important}}

/* Host-theme boundary: native header/footer styles and forced link colours must
   not bleed into this independent studio. These rules never target shop chrome. */
#kslf-root.kslf .kslf-page-head{
  background:transparent;background-image:none;color:var(--kslf-ink);
  position:static;z-index:auto;inset:auto;padding:0;border:0;
  box-shadow:none!important;text-shadow:none;
}
#kslf-root.kslf :is(h1,h2,h3,h4,h5,h6){
  color:var(--kslf-ink);font-family:inherit;text-shadow:none;
}
#kslf-root.kslf .kslf-footer{
  background:transparent;background-image:none;position:static;z-index:auto;
  box-shadow:none!important;
}
#kslf-root.kslf a,
#kslf-root.kslf a:hover,
#kslf-root.kslf a:focus,
#kslf-root.kslf a:visited{color:inherit!important}
#kslf-root.kslf a.kslf-button,
#kslf-root.kslf a.kslf-button:hover,
#kslf-root.kslf a.kslf-button:focus,
#kslf-root.kslf a.kslf-button:visited{color:#fff!important}
#kslf-root.kslf a.kslf-secondary,
#kslf-root.kslf a.kslf-secondary:hover,
#kslf-root.kslf a.kslf-secondary:focus,
#kslf-root.kslf a.kslf-secondary:visited{color:var(--kslf-green)!important}
#kslf-root.kslf .kslf-description{margin:32px 0 0;padding:28px;background:#fff;border:1px solid var(--kslf-line);overflow-wrap:anywhere}
#kslf-root.kslf .kslf-description>h2{font-size:28px;margin:0 0 24px}
#kslf-root.kslf .kslf-description :is(h2,h3,h4,h5,h6){font-size:22px;line-height:1.3;margin:24px 0 14px}
#kslf-root.kslf .kslf-description :is(p,ul,ol,dl,blockquote){margin:0 0 16px}
#kslf-root.kslf .kslf-description :is(ul,ol){padding-left:24px}
#kslf-root.kslf .kslf-description li{margin:6px 0}
#kslf-root.kslf .kslf-description table{border-collapse:collapse;display:block;max-width:100%;overflow-x:auto;margin:18px 0}
#kslf-root.kslf .kslf-description :is(th,td){padding:10px;border:1px solid var(--kslf-line)}
@media(max-width:720px){#kslf-root.kslf .kslf-description{padding:20px 16px}}
