/* Native WordPress furniture page blocks; shared site navigation is unchanged. */
.sf-furniture-shell { margin:0; }
.sf-furniture { color:var(--ink); padding-top:24px; }
.sf-furniture * { box-sizing:border-box; }
.sf-furniture :where(h1,h2,h3,p,figure,.wp-block-group,.wp-block-buttons,.wp-block-details) { margin-block:0; }
.sf-furniture a { text-underline-offset:4px; }
.sf-furniture a:focus-visible,.sf-furniture summary:focus-visible { outline:3px solid #17687d; outline-offset:4px; }
.sf-furniture .sf-f-breadcrumb { font-size:12px; color:var(--muted); margin-bottom:20px; }
.sf-furniture .sf-f-families { display:flex; flex-wrap:wrap; gap:6px 24px; padding:0 0 17px; margin-bottom:30px; border-bottom:1px solid var(--line); }
.sf-f-families p { font-size:14px; }
.sf-f-families a,.sf-f-families strong { display:inline-block; padding:8px 0; text-decoration:none; }
.sf-f-families strong { box-shadow:0 2px 0 var(--gold); }
.sf-f-families a:hover { text-decoration:underline; }
.sf-furniture .sf-f-hero { display:grid; grid-template-columns:.9fr 1.1fr; gap:48px; align-items:center; }
.sf-f-hero-copy { padding:16px 0; }
.sf-furniture .sf-f-eyebrow { font-size:11px; font-weight:650; letter-spacing:.13em; text-transform:uppercase; line-height:1.5; }
.sf-furniture h1 { font-size:clamp(44px,5.1vw,72px); line-height:1.02; letter-spacing:-.05em; margin:16px 0 20px; overflow-wrap:normal; }
.sf-furniture .sf-f-lead { font-size:21px; line-height:1.4; font-weight:550; margin-bottom:16px; max-width:460px; }
.sf-furniture .sf-f-intro { color:var(--muted); font-size:16px; line-height:1.7; max-width:470px; }
.sf-furniture .sf-f-actions { display:flex; flex-wrap:wrap; gap:10px; margin:25px 0 15px; }
.sf-furniture .sf-f-actions .wp-block-button__link { white-space:normal; font-size:14px; min-height:48px; padding:13px 18px; }
.sf-furniture .sf-f-secondary .wp-block-button__link { background:transparent; color:var(--ink); border:1px solid var(--ink); }
.sf-furniture .sf-f-secondary .wp-block-button__link:hover { background:var(--ink); color:white; }
.sf-furniture .sf-f-planner { font-size:13px; font-weight:550; }
.sf-furniture .sf-f-hero-image { overflow:hidden; background:var(--sand); }
.sf-furniture .sf-f-hero-image img { display:block; width:100%; height:450px; object-fit:cover; }
.sf-furniture .sf-f-hero-image.sf-f-cutout { background:white; }
.sf-furniture .sf-f-hero-image.sf-f-cutout img { object-fit:contain; padding:35px; }
.sf-furniture .sf-f-jumps { display:flex; flex-wrap:wrap; gap:8px 30px; padding:20px 0; margin-top:30px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.sf-f-jumps p { font-size:13px; font-weight:550; }
.sf-f-jumps a { display:inline-block; min-height:32px; padding:6px 0; text-decoration:none; }
.sf-f-jumps a:hover { text-decoration:underline; }
.sf-furniture section[id] { scroll-margin-top:145px; }
.sf-furniture .sf-f-section { padding-block:55px; }
.sf-furniture .sf-f-section-heading { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:27px; }
.sf-furniture .sf-f-section-heading h2 { font-size:clamp(28px,3.1vw,40px); line-height:1.13; letter-spacing:-.035em; margin-top:10px; }
.sf-furniture .sf-f-section-heading>p { max-width:330px; font-size:14px; color:var(--muted); }
.sf-furniture .sf-f-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.sf-furniture .sf-f-benefit { padding-top:18px; border-top:2px solid var(--gold); }
.sf-furniture h3 { font-size:22px; line-height:1.25; letter-spacing:-.025em; margin-bottom:12px; }
.sf-furniture .sf-f-benefit p { font-size:15px; line-height:1.65; color:var(--muted); }
.sf-furniture .sf-f-details-section { background:var(--sand); }
.sf-furniture .sf-f-details-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:56px; align-items:start; }
.sf-furniture .sf-f-details-intro>p:not(.sf-f-eyebrow) { margin-top:18px; font-size:16px; line-height:1.7; color:var(--muted); }
.sf-furniture .sf-f-detail-photo { margin-top:25px; }
.sf-furniture .sf-f-detail-photo img { width:100%; max-height:300px; object-fit:contain; background:white; display:block; }
.sf-furniture .sf-f-details-grid h2 { font-size:clamp(28px,3.1vw,40px); line-height:1.12; margin-top:12px; }
.sf-furniture .sf-f-details { border-top:1px solid #bcbfb7; padding:0; }
.sf-furniture .sf-f-details:last-child { border-bottom:1px solid #bcbfb7; }
.sf-furniture .sf-f-details summary { cursor:pointer; padding:20px 3px; font-weight:600; font-size:17px; line-height:1.5; }
.sf-furniture .sf-f-details[open] summary { padding-bottom:16px; }
.sf-furniture .sf-f-details>p { font-size:15px; line-height:1.7; padding:0 3px 18px; }
.sf-furniture .sf-f-specs { margin:0 0 22px; }
.sf-f-specs table { border-collapse:collapse; width:100%; }
.sf-f-specs td { font-size:14px; vertical-align:top; padding:11px 8px; border:0; border-bottom:1px solid #d0d0c7; }
.sf-f-specs td:first-child { width:34%; font-weight:600; }
.sf-furniture .sf-f-dimensions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; padding-bottom:24px; }
.sf-furniture .sf-f-module { background:#fff; padding:16px; }
.sf-furniture .sf-f-module h3 { font-size:17px; }
.sf-furniture .sf-f-module img { width:100%; height:165px; object-fit:contain; display:block; }
.sf-furniture .sf-f-module p { font-size:13px; line-height:1.7; margin-top:10px; }
.sf-furniture .sf-f-module .sf-f-module-link { font-weight:600; margin-top:12px; }
.sf-furniture .sf-f-photo-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-bottom:20px; }
.sf-f-photo-pair img { display:block; width:100%; height:160px; object-fit:contain; background:white; }
.sf-furniture .sf-f-video-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.sf-furniture .sf-f-video-grid.sf-f-one-video { max-width:850px; margin-inline:auto; grid-template-columns:1fr; }
/* WordPress adds each video's source ratio inline; keep portrait films in the same uncropped viewing area. */
.sf-furniture .sf-f-video-grid video { display:block; width:100%; height:auto; aspect-ratio:16/9!important; object-fit:contain; background:#fff; }
.sf-furniture .sf-f-video-grid figcaption { font-size:12px; line-height:1.6; color:var(--muted); padding-top:9px; text-align:left; }
.sf-furniture .sf-f-related { border-top:1px solid var(--line); }
.sf-furniture .sf-f-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.sf-f-related-grid .wp-block-image { background:white; margin-bottom:20px; }
.sf-f-related-grid .wp-block-image a { display:block; }
.sf-f-related-grid img { width:100%; height:190px; object-fit:contain; padding:18px; display:block; }
.sf-f-related-grid h3 { font-size:23px; }
.sf-f-related-grid p { font-size:14px; line-height:1.6; color:var(--muted); }
.sf-f-related-grid .sf-f-related-link { margin-top:13px; color:var(--ink); font-weight:600; }
.sf-furniture .sf-f-enquiry { background:var(--deep); color:var(--canvas); padding-block:48px; }
.sf-furniture .sf-f-enquiry-inner { display:grid; grid-template-columns:1.1fr 1fr; gap:48px; align-items:center; }
.sf-f-enquiry .sf-f-eyebrow { color:var(--gold); }
.sf-furniture .sf-f-enquiry h2 { font-size:clamp(30px,3vw,42px); line-height:1.12; margin-top:12px; }
.sf-furniture .sf-f-enquiry-copy>p { font-size:15px; line-height:1.7; color:#d0d9d7; }
.sf-furniture .sf-f-enquiry .wp-block-buttons { margin:20px 0 14px; }
.sf-furniture .sf-f-enquiry a:not(.wp-element-button) { color:var(--canvas); }
.sf-furniture .sf-f-contact { font-size:13px!important; }
.sf-furniture .sf-f-source-note { font-size:11px; color:var(--muted); margin-top:23px; }
@media(max-width:1000px) {
 .sf-furniture .sf-f-hero { gap:30px; grid-template-columns:1fr 1fr; }
 .sf-furniture .sf-f-hero-image img { height:420px; }
 .sf-furniture .sf-f-details-grid { gap:30px; }
 .sf-furniture .sf-f-benefits { gap:22px; }
}
@media(max-width:760px) {
 .sf-furniture { padding-top:18px; }
 .sf-furniture .sf-f-hero { grid-template-columns:1fr; gap:25px; }
 .sf-furniture .sf-f-hero-copy { padding:0; }
 .sf-furniture h1 { font-size:46px; margin-top:12px; }
 .sf-furniture .sf-f-lead { font-size:20px; }
 .sf-furniture .sf-f-hero-image img { height:auto; aspect-ratio:4/3; }
 .sf-furniture .sf-f-hero-image.sf-f-cutout img { height:300px; }
 .sf-furniture .sf-f-benefits { grid-template-columns:1fr; gap:25px; }
 .sf-furniture .sf-f-section { padding-block:38px; }
 .sf-furniture .sf-f-section-heading { display:block; }
 .sf-furniture .sf-f-section-heading>p { margin-top:16px; }
 .sf-furniture .sf-f-details-grid { grid-template-columns:1fr; gap:24px; }
 .sf-furniture .sf-f-detail-photo { max-width:360px; }
 .sf-furniture .sf-f-video-grid { grid-template-columns:1fr; }
 .sf-furniture .sf-f-related-grid { grid-template-columns:1fr; gap:28px; }
 .sf-furniture .sf-f-related-card { display:grid; grid-template-columns:110px 1fr; gap:0 20px; }
 .sf-f-related-card>.wp-block-image { grid-row:1/5; margin:0; align-self:start; }
 .sf-f-related-card .wp-block-image img { height:110px; padding:6px; }
 .sf-furniture .sf-f-enquiry-inner { grid-template-columns:1fr; gap:22px; }
 .sf-furniture .sf-f-families { gap:4px 21px; margin-bottom:24px; }
 .sf-furniture .sf-f-jumps { column-gap:23px; }
 .sf-furniture .sf-f-enquiry { padding-block:38px; }
 .sf-furniture section[id] { scroll-margin-top:100px; }
}
@media(max-width:380px) {
 .sf-furniture h1 { font-size:40px; }
 .sf-furniture .sf-f-dimensions { grid-template-columns:1fr; }
 .sf-furniture .sf-f-actions .wp-block-button { width:100%; }
 .sf-furniture .sf-f-actions .wp-block-button__link { width:100%; }
}

/* Manufacturer photography and product details, authored as native page blocks. */
.sf-furniture .sf-f-enrichment{padding-top:12px;scroll-margin-top:24px}
.sf-furniture section.sf-f-enrichment[id]{scroll-margin-top:24px}
.sf-f-e-heading{max-width:800px}
.sf-f-e-heading h2{font-size:clamp(28px,3.1vw,40px);line-height:1.15;letter-spacing:-.03em;margin:12px 0 18px}
.sf-f-e-heading>p:not(.sf-f-eyebrow){color:var(--muted);font-size:16px;line-height:1.7}
.sf-f-e-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0!important}
.sf-f-e-image img{display:block;width:100%;height:auto}
.sf-f-e-gallery .sf-f-e-image img{aspect-ratio:16/9;object-fit:contain;background:var(--sand)}
.sf-f-e-image figcaption{font-size:12px;color:var(--muted);line-height:1.6;margin-top:10px;text-align:left}
.sf-f-e-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.sf-f-e-card{background:white;border:1px solid var(--line);border-radius:3px;overflow:hidden;min-width:0}
.sf-f-e-card .sf-f-e-image img{aspect-ratio:3/4;object-fit:contain;background:#f0eeea}
.sf-f-e-card-copy{padding:22px 20px}
.sf-furniture .sf-f-e-card h3{font-size:21px;line-height:1.25;margin-bottom:12px}
.sf-f-e-card p{font-size:14px;line-height:1.75;color:var(--muted)}
.sf-furniture .sf-f-e-source{margin-top:24px;font-size:12px;line-height:1.7;color:var(--muted)}
.sf-f-e-fabrics{padding:18px 0 25px;border-top:1px solid #c9c9c0}
.sf-furniture .sf-f-e-fabrics h3{font-size:20px}
.sf-f-e-fabrics p{font-size:14px;line-height:1.7;color:var(--muted)}
.sf-f-e-fabric-links{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0!important}
.sf-f-e-fabric-links a{display:block;background:#fff;border:1px solid #bcbfb7;border-radius:3px;padding:9px 12px;font-size:14px;font-weight:550;text-decoration:none}
.sf-f-e-fabric-links a:hover{background:var(--deep);color:#fff}
.sf-furniture .sf-f-e-airflow{margin-bottom:20px}
.sf-f-e-airflow img{max-height:260px;object-fit:contain;background:white}
.sf-furniture .sf-f-e-measurements{font-weight:600;color:var(--ink)}
@media(max-width:950px){.sf-f-e-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sf-f-e-gallery{grid-template-columns:1fr;gap:22px}.sf-f-e-cards{gap:14px}.sf-f-e-card-copy{padding:18px 14px}.sf-furniture .sf-f-e-card h3{font-size:18px;overflow-wrap:break-word}.sf-f-e-card p{font-size:14px;line-height:1.6}.sf-furniture .sf-f-enrichment{padding-top:0}}
@media(max-width:360px){.sf-f-e-cards{grid-template-columns:1fr}}
