/* Scoped styling for editable core blocks on the fabrics guide. */
.sf-fabrics-shell,.sf-fabrics { margin:0; }
.sf-fabrics { color:var(--ink); }
.sf-fabrics :where(h1,h2,h3,p,figure,.wp-block-group,.wp-block-buttons,.wp-block-details) { margin-block:0; }
.sf-fabrics a { text-underline-offset:4px; }
.sf-fabrics [id] { scroll-margin-top:24px; }
.sf-fabrics .sf-k-eyebrow { font-size:11px; letter-spacing:.14em; font-weight:650; line-height:1.5; }
.sf-fabrics .sf-k-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:52px; padding-block:48px 34px; }
.sf-fabrics h1 { font-size:clamp(40px,5.5vw,76px); line-height:1.04; letter-spacing:-.05em; margin:20px 0 24px; }
.sf-fabrics .sf-k-intro { max-width:480px; font-size:17px; line-height:1.7; color:var(--muted); }
.sf-fabrics .sf-k-hero-image img { width:100%; height:440px; object-fit:cover; object-position:54% center; }
.sf-fabrics .sf-k-caption { font-size:11px; color:var(--muted); margin-top:10px; }
.sf-fabrics .sf-k-actions { gap:10px; display:flex; flex-wrap:wrap; margin:26px 0 0; }
.sf-fabrics .sf-k-actions .wp-block-button__link { font-size:14px; min-height:48px; padding:13px 18px; white-space:normal; }
.sf-fabrics .sf-k-secondary .wp-block-button__link { color:var(--ink); background:transparent; border:1px solid var(--ink); }
.sf-fabrics .sf-k-secondary .wp-block-button__link:hover { color:white; background:var(--ink); }
.sf-k-jump-band { border-block:1px solid var(--line); }
.sf-fabrics .sf-k-jumps { display:flex; flex-wrap:wrap; gap:12px 34px; padding-block:12px; }
.sf-k-jumps a { display:inline-block; padding-block:10px; font-size:13px; }
.sf-fabrics .sf-k-section { padding-block:58px; }
.sf-fabrics h2 { font-size:clamp(30px,3.5vw,46px); line-height:1.12; margin:12px 0 18px; }
.sf-fabrics .sf-k-section-intro { color:var(--muted); font-size:16px; line-height:1.65; max-width:730px; }
.sf-fabrics .sf-k-filters { display:flex; flex-wrap:wrap; gap:8px; margin:30px 0 0; }
.sf-fabrics .sf-k-filters .wp-block-button__link { display:inline-flex; align-items:center; min-height:46px; padding:10px 19px; background:white; border:1px solid var(--line); color:var(--ink); font-size:14px; font-weight:600; cursor:pointer; border-radius:3px; }
.sf-fabrics .sf-k-filters button.wp-block-button__link[aria-pressed=true] { background:var(--deep); color:white; border-color:var(--deep); }
.sf-fabrics .sf-k-filters .wp-block-button__link:hover { border-color:var(--ink); }
.sf-k-search { margin-top:20px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:13px; }
.sf-k-search input { font:inherit; font-size:15px; background:white; border:1px solid var(--line); padding:10px 12px; border-radius:2px; width:min(100%,300px); min-height:44px; color:var(--ink); }
.sf-k-search input:focus-visible { outline:3px solid #17687d; outline-offset:3px; }
.sf-fabrics .sf-k-results { margin:18px 0 24px; font-size:12px; color:var(--muted); }
.sf-fabrics .sf-k-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:start; }
.sf-fabrics .sf-k-card { background:white; border:1px solid var(--line); min-width:0; }
.sf-fabrics .sf-k-card[hidden] { display:none!important; }
.sf-fabrics .sf-k-texture img { width:100%; height:auto; aspect-ratio:2/1; object-fit:cover; }
.sf-fabrics .sf-k-card-body { padding:22px; }
.sf-fabrics .sf-k-use { font-size:10px; color:var(--muted); text-transform:uppercase; letter-spacing:.09em; min-height:15px; }
.sf-fabrics h3 { font-size:24px; line-height:1.2; letter-spacing:-.035em; margin:10px 0; }
.sf-fabrics .sf-k-lead { font-size:14px; font-weight:600; line-height:1.5; margin-bottom:10px; min-height:42px; }
.sf-fabrics .sf-k-copy { font-size:14px; line-height:1.65; color:var(--muted); min-height:116px; }
.sf-fabrics .sf-k-type { display:inline-block; font-size:11px; font-weight:600; background:var(--canvas); padding:6px 10px; margin:18px 0 16px; border-left:2px solid var(--gold); }
.sf-fabrics .sf-k-details { border-top:1px solid var(--line); padding:0; }
.sf-k-details summary { cursor:pointer; padding:17px 25px 17px 0; font-size:15px; font-weight:600; line-height:1.5; position:relative; list-style:none; }
.sf-k-details summary::-webkit-details-marker { display:none; }
.sf-k-details summary::after { content:'+'; position:absolute; right:3px; top:14px; font-size:21px; font-weight:400; }
.sf-k-details[open]>summary::after { content:'−'; }
.sf-fabrics .sf-k-card summary { font-size:13px; padding-block:14px; }
.sf-fabrics .sf-k-details>p { font-size:15px; line-height:1.7; padding-bottom:16px; max-width:830px; }
.sf-fabrics .sf-k-small { font-size:12px; line-height:1.65; color:var(--muted); }
.sf-k-card .sf-k-small { margin:14px 0; padding-bottom:0; }
.sf-fabrics .sf-k-enquire { font-size:13px; font-weight:600; margin-top:20px; }
.sf-fabrics .sf-k-enquire a { display:inline-block; padding:7px 0; }
.sf-fabrics .sf-k-source { font-size:11px; margin:12px 0; }
.sf-fabrics .sf-k-swatches { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 10px; padding-bottom:20px; }
.sf-fabrics .sf-k-swatch { min-width:0; }
.sf-fabrics .sf-k-swatch p { font-size:10px; line-height:1.4; margin-top:6px; overflow-wrap:anywhere; }
.sf-fabrics .sf-k-colour-chip { width:100%; height:35px; border:1px solid #38434820; border-radius:2px; }
.sf-fabrics .sf-k-colour-chip img { width:100%; height:100%; object-fit:cover; }
.sf-fabrics .sf-k-table { margin:25px 0; overflow:auto; }
.sf-k-table table { width:100%; border-collapse:collapse; font-size:14px; line-height:1.6; }
.sf-k-table td,.sf-k-table th { padding:17px 20px 17px 0; border:0; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.sf-k-table th { font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.sf-k-table td:first-child { font-weight:600; width:27%; }
.sf-k-table figcaption { text-align:left; font-size:12px; color:var(--muted); margin-top:14px; }
.sf-k-card .sf-k-table { margin:0; }
.sf-k-card .sf-k-table table { font-size:12px; }
.sf-k-card .sf-k-table th { font-size:10px; }
.sf-k-card .sf-k-table :where(th,td) { padding:9px 10px 9px 0; }
.sf-k-card .sf-k-table td:first-child { width:38%; }
.sf-fabrics .sf-k-sand { background:var(--sand); }
.sf-fabrics .sf-k-mood { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.sf-k-mood-images { display:grid; grid-template-columns:1.2fr 1fr; gap:16px; align-items:center; }
.sf-k-mood-images img { width:100%; height:330px; object-fit:cover; }
.sf-k-mood-images .sf-k-mood-texture img { height:230px; }
.sf-fabrics .sf-k-mood-copy>p:not(.sf-k-eyebrow) { margin-top:15px; font-size:15px; color:var(--muted); }
.sf-fabrics .sf-k-mood-copy>p.sf-k-small { font-size:12px; }
.sf-fabrics #hoito .wrap { max-width:960px; }
.sf-fabrics #hoito .sf-k-section-intro { margin-bottom:28px; }
.sf-fabrics .sf-k-contact { background:var(--deep); color:var(--canvas); }
.sf-fabrics .sf-k-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.sf-k-contact .sf-k-eyebrow { color:var(--gold); }
.sf-k-contact h2 { margin-bottom:0; }
.sf-k-contact-copy>p { font-size:15px; line-height:1.7; }
.sf-k-contact .sf-k-contact-links { margin-top:20px; font-size:13px; }
.sf-k-contact-links a { color:var(--canvas); }
.sf-fabrics .sf-k-credits { padding-block:22px; }
@media(min-width:1550px) { .sf-fabrics .sf-k-copy { min-height:92px; } .sf-fabrics .sf-k-lead { min-height:21px; } }
@media(max-width:1000px) {
 .sf-fabrics .sf-k-hero { gap:30px; }
 .sf-fabrics .sf-k-hero-image img { height:420px; }
 .sf-fabrics .sf-k-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sf-fabrics .sf-k-mood,.sf-fabrics .sf-k-contact-grid { gap:32px; }
}
@media(max-width:650px) {
 .sf-fabrics .wrap { width:calc(100% - 40px); }
 .sf-fabrics .sf-k-hero { grid-template-columns:1fr; gap:26px; padding-top:32px; }
 .sf-fabrics h1 { font-size:44px; margin-block:14px 20px; }
 .sf-fabrics .sf-k-intro { font-size:16px; }
 .sf-fabrics .sf-k-hero-image img { height:260px; }
 .sf-fabrics .sf-k-actions { gap:10px; }
 .sf-fabrics .sf-k-actions .wp-block-button { width:100%; }
 .sf-fabrics .sf-k-actions .wp-block-button__link { width:100%; }
 .sf-fabrics .sf-k-jumps { gap:2px 24px; }
 .sf-fabrics .sf-k-jumps p { flex-basis:calc(50% - 12px); }
 .sf-fabrics .sf-k-jumps a { font-size:12px; }
 .sf-fabrics .sf-k-section { padding-block:40px; }
 .sf-fabrics .sf-k-filters { gap:8px; }
 .sf-fabrics .sf-k-filters>.wp-block-button { flex:1 0 calc(50% - 8px); }
 .sf-fabrics .sf-k-filters .wp-block-button__link { width:100%; justify-content:center; padding-inline:10px; font-size:12px; }
 .sf-fabrics .sf-k-grid { grid-template-columns:1fr; gap:20px; }
 .sf-fabrics .sf-k-copy,.sf-fabrics .sf-k-lead { min-height:0; }
 .sf-fabrics .sf-k-card-body { padding:20px; }
 .sf-fabrics .sf-k-mood,.sf-fabrics .sf-k-contact-grid { grid-template-columns:1fr; gap:26px; }
 .sf-k-mood-images img { height:220px; }
 .sf-k-mood-images .sf-k-mood-texture img { height:170px; }
 .sf-fabrics #vertailu .sf-k-table table { font-size:12px; }
 .sf-fabrics #vertailu .sf-k-table :where(th,td) { padding-right:12px; overflow-wrap:anywhere; }
 .sf-fabrics #vertailu .sf-k-table td:first-child { width:28%; }
 .sf-fabrics .sf-k-credits { padding-block:20px; }
}
