{"product_id":"bernina-l-450","title":"Bernina L 450","description":"\u003c!-- ================= SEWING MACHINE — PRODUCT SNIPPET (REFERENCE, universal\/brand-agnostic) — TEMPLATE 2.0 ================= --\u003e\n\u003c!-- Paste this whole block into the Shopify product description (Show HTML \/ \u003c\u003e) --\u003e\n\u003c!-- Narrative layer only. Structured attributes (stitches, speed, throat, hoops) live in --\u003e\n\u003c!-- Shopify metafields and are handled by bulk edit — never re-list them here. Swap content per machine. --\u003e\n\u003c!-- UPDATED — new standard as of the Janome CoverPro 2000CPX build:\n     - Key Features \/ Included Accessories are SIDE-BY-SIDE columns (2 fixed columns by\n       default via .ksf-tricol), each its own bordered .ksf-featblock card containing ONE\n       plain vertical list — no internal split-in-half sub-columns anymore. This reverts to\n       the older side-by-side layout (see live Quilt Maker 18 reference) and REPLACES the\n       prior \"stacked full-width + internal featgrid split\" symmetry-logic pattern. Do not\n       reintroduce the featgrid 2-column split inside a block — one list per block now.\n     - INCLUDED PRESSER FEET AS ITS OWN 3RD COLUMN IS SERGER-ONLY. For every other machine\n       type (sewing, quilting, embroidery, coverstitch, combo, etc.) — even ones with a long\n       named list of presser feet — fold ALL feet into Included Accessories as regular\n       bullets and use only 2 columns. Only for sergers: add a 3rd .ksf-featblock and the\n       ksf-tricol-3 modifier class on the \u003csection class=\"ksf-tricol\"\u003e for 3 fixed columns.\n     - Highlights have NO CAP — build as many as source images support. If an image can't be\n       sourced for a highlight, drop it (it stays covered in Key Features\/Specs as text)\n       rather than leaving a broken slot.\n     - No \"machine shown for demonstration...\" fine print — removed permanently, never\n       reintroduce it.\n     - FIXED CSS BUG: .ksf-panel-split no longer sets display:grid unconditionally on the\n       base class. display is only ever set on the ACTIVE (checked) tab — block for plain\n       panels (Specs, Videos), grid for split panels (Warranty, Why Buy, Education). Applying\n       display unconditionally on the base class breaks the tab-toggle by keeping split panels\n       visible\/laid-out regardless of which tab is selected. Never reintroduce that pattern.\n     - Removed unused legacy sections that were dead CSS with no matching markup: hero-bonus\n       block, gift callout, SIO \"what you get\" branded block, video-grid (multi-embed grid),\n       delivery section, dimensions table\/photo grid, generic ksf-table. If a future build\n       needs one of these concepts, rebuild it fresh rather than reviving this old CSS.\n     - Fine-print\/note classes (.ksf-fineprint, .ksf-note) are KEPT even though currently\n       unused — low-cost to keep on hand, per standing team preference. --\u003e\n\u003cdiv class=\"ksf-pp\"\u003e\n\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@500;600;700\u0026family=Bebas+Neue\u0026display=swap');\n  .ksf-pp { font-family: 'Montserrat', -apple-system, sans-serif; color: #2a2a2a; background: #fff; max-width: 1080px; margin: 0 auto; padding: 8px 0 40px; line-height: 1.6; }\n  .ksf-pp * { box-sizing: border-box; }\n  .ksf-pp h1, .ksf-pp h2 { font-family: 'Bebas Neue', Impact, sans-serif; letter-spacing: 0.01em; color: #2a2a2a; font-weight: 400; margin: 0; }\n  .ksf-pp h1 { font-size: clamp(40px, 6vw, 64px); line-height: 1; }\n  .ksf-pp .ksf-title { font-size: clamp(30px, 4vw, 44px); line-height: 1; margin-bottom: 20px; }\n  .ksf-pp .ksf-eyebrow { font-family: 'Bebas Neue', sans-serif; font-size: 14px; letter-spacing: 4px; text-transform: uppercase; color: #07bcad; font-weight: 500; margin: 0 0 12px; }\n  .ksf-pp .ksf-lead { color: #4a4a4a; font-size: 17px; max-width: 640px; margin: 14px 0 0; }\n  .ksf-pp .ksf-lead + .ksf-lead { margin-top: 18px; }\n\n  \/* HERO *\/\n  .ksf-pp .ksf-hero { display: grid; grid-template-columns: 1.15fr 1fr; gap: 40px; align-items: center; background: #07bcad; border-radius: 24px; padding: 40px; margin: 0 0 40px; }\n  .ksf-pp .ksf-hero h1 { color: #fff; }\n  .ksf-pp .ksf-hero .ksf-eyebrow { color: #e0fffb; }\n  .ksf-pp .ksf-hero .ksf-lead { color: rgba(255,255,255,0.92); }\n  .ksf-pp .ksf-hero-text { min-width: 0; }\n  .ksf-pp .ksf-hero-media { min-width: 0; }\n  .ksf-pp .ksf-hero-image { background: transparent; border-radius: 16px; padding: 0; box-shadow: none; }\n  .ksf-pp .ksf-hero-image img { display: block; width: 100%; height: auto; border-radius: 0; }\n  \/* Video hero: responsive 16:9 YouTube embed. Used INSTEAD of the image when a video exists. *\/\n  .ksf-pp .ksf-hero-video { position: relative; width: 100%; aspect-ratio: 16 \/ 9; border-radius: 16px; overflow: hidden; box-shadow: 0 16px 40px -20px rgba(0,0,0,0.35); background: #000; }\n  .ksf-pp .ksf-hero-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }\n\n  \/* KEY FEATURE CIRCLES (stitched badges) *\/\n  .ksf-pp .ksf-hero-features { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 40px; }\n  .ksf-pp .ksf-feature-item { background: transparent; border: none; padding: 0; text-align: center; display: flex; flex-direction: column; align-items: center; }\n  .ksf-pp .ksf-feature-circle { position: relative; width: 150px; height: 150px; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding: 22px; margin-bottom: 16px; transition: transform .25s ease; }\n  .ksf-pp .ksf-feature-item:hover .ksf-feature-circle { transform: translateY(-4px) rotate(-2deg); }\n  .ksf-pp .ksf-feature-circle::before { content: \"\"; position: absolute; inset: 10px; border-radius: 50%; border: 2px dashed rgba(255,255,255,0.9); }\n  .ksf-pp .ksf-feature-item:nth-child(1) .ksf-feature-circle { background: #07bcad; }\n  .ksf-pp .ksf-feature-item:nth-child(2) .ksf-feature-circle { background: #4a3db1; }\n  .ksf-pp .ksf-feature-item:nth-child(3) .ksf-feature-circle { background: #f10b65; }\n  .ksf-pp .ksf-feature-item:nth-child(4) .ksf-feature-circle { background: #ffaa00; }\n  .ksf-pp .ksf-feature-num { font-family: 'Bebas Neue', Impact, sans-serif; font-size: 16px; line-height: 1.1; letter-spacing: 0.02em; color: #fff; position: relative; z-index: 1; }\n  .ksf-pp .ksf-feature-item p { color: #4a4a4a; font-size: 13px; margin: 0; line-height: 1.45; max-width: 200px; }\n  @media (max-width: 640px) { .ksf-pp .ksf-feature-circle { width: 130px; height: 130px; } }\n\n  \/* MEDIA CARDS (alternating image + text) — one per Highlight, NO CAP on count *\/\n  .ksf-pp .ksf-card { padding: 32px 0; margin-bottom: 8px; }\n  .ksf-pp .ksf-card--media { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: center; }\n  .ksf-pp .ksf-card--media .ksf-card-text { display: flex; flex-direction: column; }\n  .ksf-pp .ksf-card--media .ksf-eyebrow { margin-bottom: 8px; }\n  .ksf-pp .ksf-card--media .ksf-title { margin-bottom: 14px; }\n  .ksf-pp .ksf-section-shot { margin: 0; border-radius: 12px; overflow: hidden; box-shadow: none; aspect-ratio: 16\/9; }\n  .ksf-pp .ksf-section-shot img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 0; }\n  .ksf-pp .ksf-section-shot--contain img { object-fit: contain; background: #f4f5f6; }\n  .ksf-pp .ksf-card-video { position: relative; width: 100%; aspect-ratio: 16\/9; border-radius: 12px; overflow: hidden; background: #000; }\n  .ksf-pp .ksf-card-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }\n  .ksf-pp .ksf-bullets { list-style: none; margin: 0; padding: 0; color: #4a4a4a; font-size: 16px; }\n  .ksf-pp .ksf-bullets li { position: relative; padding-left: 28px; margin-bottom: 14px; line-height: 1.5; }\n  .ksf-pp .ksf-bullets li:last-child { margin-bottom: 0; }\n  .ksf-pp .ksf-bullets li::before { content: \"\"; position: absolute; left: 0; top: 9px; width: 10px; height: 10px; border-radius: 50%; background: #07bcad; }\n\n  \/* KEY FEATURES \/ INCLUDED ACCESSORIES \/ INCLUDED PRESSER FEET — SIDE-BY-SIDE COLUMNS\n     Each section is its own bordered .ksf-featblock card, placed side by side with the others\n     (2 columns if no Presser Feet block, 3 if it exists). Each card holds ONE plain vertical\n     list — no internal split-in-half sub-columns. auto-fit lets this wrap to a single column\n     on narrow\/mobile screens automatically.\n     For SERGERS (and any machine without a real named presser-feet list): drop the 3rd\n     (Presser Feet) block, fold the single foot into Accessories, use only 2 columns. *\/\n  \/* KEY FEATURES \/ INCLUDED ACCESSORIES [\/ INCLUDED PRESSER FEET — SERGERS ONLY] — SIDE-BY-SIDE\n     COLUMNS. Default is 2 fixed columns (Key Features + Accessories) for every machine type.\n     Included Presser Feet as its own 3rd column is SERGER-ONLY — for every other machine type\n     (sewing, quilting, embroidery, coverstitch, combo, etc.), fold ALL presser feet into\n     Included Accessories as regular bullets, even if there's a long named list of them.\n     Each card holds ONE plain vertical list — no internal split-in-half sub-columns.\n     For the serger 3-column case, add the ksf-tricol-3 modifier class alongside ksf-tricol. *\/\n  .ksf-pp .ksf-tricol { display: grid !important; grid-template-columns: 1fr 1fr; gap: 28px; align-items: start; }\n  .ksf-pp .ksf-tricol.ksf-tricol-3 { grid-template-columns: 1fr 1fr 1fr; }\n  .ksf-pp .ksf-featblock { border: 1px solid #e6e7e8; border-radius: 18px; padding: 28px 26px; background: #fafbfb; }\n  .ksf-pp .ksf-tricol-title { font-family: 'Bebas Neue', Impact, sans-serif; font-size: clamp(22px, 2.2vw, 28px); letter-spacing: 0.02em; margin-bottom: 18px; }\n  .ksf-pp .ksf-collist { list-style: none; margin: 0; padding: 0; font-family: 'Montserrat', -apple-system, sans-serif; color: #4a4a4a; font-size: 13px; line-height: 1.5; }\n  .ksf-pp .ksf-collist li { position: relative; padding-left: 18px; margin-bottom: 12px; }\n  .ksf-pp .ksf-collist li:last-child { margin-bottom: 0; }\n  .ksf-pp .ksf-collist li::before { content: \"\"; position: absolute; left: 0; top: 7px; width: 6px; height: 6px; border-radius: 50%; background: #07bcad; }\n  .ksf-pp .ksf-collist li strong { color: #2a2a2a; }\n  @media (max-width: 900px) { .ksf-pp .ksf-tricol.ksf-tricol-3 { grid-template-columns: 1fr 1fr; } }\n  @media (max-width: 700px) { .ksf-pp .ksf-tricol, .ksf-pp .ksf-tricol.ksf-tricol-3 { grid-template-columns: 1fr; } }\n\n  \/* FINE PRINT \/ CALLOUT NOTE — kept on hand though currently unused anywhere in this template.\n     The old \"machine shown for demonstration and may not be compatible\" disclaimer copy is\n     PERMANENTLY REMOVED and must never be reintroduced; these classes are just generic\n     utility styling if a different small-print or callout need comes up. *\/\n  .ksf-pp .ksf-fineprint { color: #8a8a8a; font-size: 12px; line-height: 1.5; margin: 8px 0 0; }\n  .ksf-pp .ksf-note { background: #f6f6f8; border-left: 3px solid #07bcad; border-radius: 8px; padding: 14px 16px; margin: 20px 0; color: #4a4a4a; font-size: 14px; line-height: 1.55; }\n  .ksf-pp .ksf-note strong { color: #2a2a2a; }\n\n  \/* WARRANTY tab prose width constraint *\/\n  .ksf-pp .ksf-warranty .ksf-lead { max-width: 720px; }\n\n  \/* PLAYLIST VIDEO SECTION (pure CSS, scales to many videos, up to 15) *\/\n  .ksf-pp .ksf-vp { display: grid; grid-template-columns: 1.7fr 1fr; gap: 20px; align-items: start; }\n  .ksf-pp .ksf-vp input[type=\"radio\"] { position:absolute; opacity:0; pointer-events:none; }\n  .ksf-pp .ksf-vp-stage { position: relative; }\n  .ksf-pp .ksf-vp-screen { position: relative; width: 100%; aspect-ratio: 16\/9; border-radius: 16px; overflow: hidden; background:#000; display:none; }\n  .ksf-pp .ksf-vp-screen iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }\n  .ksf-pp .ksf-vp-list { border:1px solid #e6e7e8; border-radius:16px; overflow:hidden; max-height:420px; overflow-y:auto; }\n  .ksf-pp .ksf-vp-listhead { font-family:'Bebas Neue',sans-serif; letter-spacing:2px; text-transform:uppercase; font-size:15px; color:#fff; background:linear-gradient(120deg,#07bcad,#4a3db1); padding:12px 16px; position:sticky; top:0; }\n  .ksf-pp .ksf-vp-row { display:flex; gap:12px; align-items:center; padding:12px 14px; cursor:pointer; border-bottom:1px solid #f0f0f0; transition:background .15s; }\n  .ksf-pp .ksf-vp-row:hover { background:#f6f7f8; }\n  .ksf-pp .ksf-vp-row:last-child { border-bottom:none; }\n  .ksf-pp .ksf-vp-num { font-family:'Bebas Neue',sans-serif; font-size:18px; color:#07bcad; width:22px; flex-shrink:0; text-align:center; }\n  .ksf-pp .ksf-vp-rowtitle { font-size:14px; font-weight:600; color:#2a2a2a; line-height:1.35; }\n  .ksf-pp .ksf-vp-play { margin-left:auto; width:26px; height:26px; border-radius:50%; background:#07bcad; flex-shrink:0; position:relative; }\n  .ksf-pp .ksf-vp-play::after { content:\"\"; position:absolute; top:50%; left:54%; transform:translate(-50%,-50%); border-left:8px solid #fff; border-top:5px solid transparent; border-bottom:5px solid transparent; }\n  .ksf-pp #vp1:checked ~ .ksf-vp-stage #vps1,\n  .ksf-pp #vp2:checked ~ .ksf-vp-stage #vps2,\n  .ksf-pp #vp3:checked ~ .ksf-vp-stage #vps3,\n  .ksf-pp #vp4:checked ~ .ksf-vp-stage #vps4,\n  .ksf-pp #vp5:checked ~ .ksf-vp-stage #vps5,\n  .ksf-pp #vp6:checked ~ .ksf-vp-stage #vps6,\n  .ksf-pp #vp7:checked ~ .ksf-vp-stage #vps7,\n  .ksf-pp #vp8:checked ~ .ksf-vp-stage #vps8,\n  .ksf-pp #vp9:checked ~ .ksf-vp-stage #vps9,\n  .ksf-pp #vp10:checked ~ .ksf-vp-stage #vps10,\n  .ksf-pp #vp11:checked ~ .ksf-vp-stage #vps11,\n  .ksf-pp #vp12:checked ~ .ksf-vp-stage #vps12,\n  .ksf-pp #vp13:checked ~ .ksf-vp-stage #vps13,\n  .ksf-pp #vp14:checked ~ .ksf-vp-stage #vps14,\n  .ksf-pp #vp15:checked ~ .ksf-vp-stage #vps15 { display:block; }\n  .ksf-pp #vp1:checked ~ .ksf-vp-list label[for=\"vp1\"],\n  .ksf-pp #vp2:checked ~ .ksf-vp-list label[for=\"vp2\"],\n  .ksf-pp #vp3:checked ~ .ksf-vp-list label[for=\"vp3\"],\n  .ksf-pp #vp4:checked ~ .ksf-vp-list label[for=\"vp4\"],\n  .ksf-pp #vp5:checked ~ .ksf-vp-list label[for=\"vp5\"],\n  .ksf-pp #vp6:checked ~ .ksf-vp-list label[for=\"vp6\"],\n  .ksf-pp #vp7:checked ~ .ksf-vp-list label[for=\"vp7\"],\n  .ksf-pp #vp8:checked ~ .ksf-vp-list label[for=\"vp8\"],\n  .ksf-pp #vp9:checked ~ .ksf-vp-list label[for=\"vp9\"],\n  .ksf-pp #vp10:checked ~ .ksf-vp-list label[for=\"vp10\"],\n  .ksf-pp #vp11:checked ~ .ksf-vp-list label[for=\"vp11\"],\n  .ksf-pp #vp12:checked ~ .ksf-vp-list label[for=\"vp12\"],\n  .ksf-pp #vp13:checked ~ .ksf-vp-list label[for=\"vp13\"],\n  .ksf-pp #vp14:checked ~ .ksf-vp-list label[for=\"vp14\"],\n  .ksf-pp #vp15:checked ~ .ksf-vp-list label[for=\"vp15\"] { background:#eef7f6; }\n  .ksf-pp #vp1:checked ~ .ksf-vp-list label[for=\"vp1\"] .ksf-vp-num,\n  .ksf-pp #vp2:checked ~ .ksf-vp-list label[for=\"vp2\"] .ksf-vp-num,\n  .ksf-pp #vp3:checked ~ .ksf-vp-list label[for=\"vp3\"] .ksf-vp-num,\n  .ksf-pp #vp4:checked ~ .ksf-vp-list label[for=\"vp4\"] .ksf-vp-num,\n  .ksf-pp #vp5:checked ~ .ksf-vp-list label[for=\"vp5\"] .ksf-vp-num,\n  .ksf-pp #vp6:checked ~ .ksf-vp-list label[for=\"vp6\"] .ksf-vp-num,\n  .ksf-pp #vp7:checked ~ .ksf-vp-list label[for=\"vp7\"] .ksf-vp-num,\n  .ksf-pp #vp8:checked ~ .ksf-vp-list label[for=\"vp8\"] .ksf-vp-num,\n  .ksf-pp #vp9:checked ~ .ksf-vp-list label[for=\"vp9\"] .ksf-vp-num,\n  .ksf-pp #vp10:checked ~ .ksf-vp-list label[for=\"vp10\"] .ksf-vp-num,\n  .ksf-pp #vp11:checked ~ .ksf-vp-list label[for=\"vp11\"] .ksf-vp-num,\n  .ksf-pp #vp12:checked ~ .ksf-vp-list label[for=\"vp12\"] .ksf-vp-num,\n  .ksf-pp #vp13:checked ~ .ksf-vp-list label[for=\"vp13\"] .ksf-vp-num,\n  .ksf-pp #vp14:checked ~ .ksf-vp-list label[for=\"vp14\"] .ksf-vp-num,\n  .ksf-pp #vp15:checked ~ .ksf-vp-list label[for=\"vp15\"] .ksf-vp-num { color:#f10b65; }\n  @media (max-width: 760px) { .ksf-pp .ksf-vp { grid-template-columns:1fr; } .ksf-pp .ksf-vp-list { max-height:300px; } }\n\n  \/* SINGLE VIDEO — used INSTEAD of the playlist when there is exactly ONE video.\n     Centered embed, caption below, no sidebar list. Drop the Videos tab entirely if there\n     are zero videos. *\/\n  .ksf-pp .ksf-single-video { max-width: 720px; margin: 0 auto; }\n  .ksf-pp .ksf-single-video-frame { position: relative; width: 100%; aspect-ratio: 16\/9; border-radius: 16px; overflow: hidden; background: #000; }\n  .ksf-pp .ksf-single-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }\n  .ksf-pp .ksf-single-video-caption { text-align: center; font-size: 14px; font-weight: 600; color: #4a4a4a; margin: 14px 0 0; }\n\n  \/* TAB PROSE PANELS (Warranty \/ Why Buy \/ Education hold text, not just tables) *\/\n  .ksf-pp .ksf-panel-prose { padding: 24px 28px; color: #4a4a4a; font-size: 15px; line-height: 1.65; }\n  .ksf-pp .ksf-panel-prose h3 { font-family: 'Bebas Neue', sans-serif; font-size: 22px; letter-spacing: 1px; color: #2a2a2a; margin: 0 0 10px; }\n  .ksf-pp .ksf-panel-prose ul { margin: 10px 0 0; padding-left: 20px; }\n  .ksf-pp .ksf-panel-prose li { margin-bottom: 8px; }\n  \/* PANEL with image on the left + prose on the right (e.g. Warranty \/ Why Buy \/ Education).\n     IMPORTANT: display is NOT set here. It is set ONLY on the active\/checked tab rule below\n     (grid for split panels, block for plain panels). Setting display:grid unconditionally on\n     this base class is the bug that was fixed — never reintroduce it. *\/\n  .ksf-pp .ksf-panel-split { grid-template-columns: 0.8fr 1.2fr; gap: 28px; align-items: start; padding: 24px 28px; }\n  .ksf-pp .ksf-panel-split img { display: block; width: 100%; height: auto; max-width: 100%; }\n  .ksf-pp .ksf-panel-split .ksf-panel-splitbody { color: #4a4a4a; font-size: 15px; line-height: 1.65; }\n  .ksf-pp .ksf-panel-split h3 { font-family: 'Bebas Neue', sans-serif; font-size: 22px; letter-spacing: 1px; color: #2a2a2a; margin: 0 0 10px; }\n  @media (max-width: 640px) { .ksf-pp .ksf-panel-split { grid-template-columns: 1fr; gap: 18px; } }\n\n  \/* FAQ ACCORDION (pure CSS via \u003cdetails\u003e) *\/\n  .ksf-pp .ksf-faq { margin: 40px 0 0; }\n  .ksf-pp .ksf-faq .ksf-eyebrow { text-align: center; }\n  .ksf-pp .ksf-faq .ksf-title { text-align: center; margin-bottom: 24px; }\n  .ksf-pp .ksf-faq-item { border: 1px solid #e6e7e8; border-radius: 14px; margin-bottom: 12px; overflow: hidden; background: #fff; }\n  .ksf-pp .ksf-faq-item summary { list-style: none; cursor: pointer; padding: 18px 22px; font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 16px; color: #2a2a2a; display: flex; justify-content: space-between; align-items: center; gap: 16px; }\n  .ksf-pp .ksf-faq-item summary::-webkit-details-marker { display: none; }\n  .ksf-pp .ksf-faq-item summary::after { content: \"+\"; font-family: 'Bebas Neue', sans-serif; font-size: 26px; color: #07bcad; line-height: 1; flex-shrink: 0; }\n  .ksf-pp .ksf-faq-item[open] summary::after { content: \"\\2013\"; }\n  .ksf-pp .ksf-faq-item[open] summary { color: #07bcad; }\n  .ksf-pp .ksf-faq-answer { padding: 0 22px 20px; color: #4a4a4a; font-size: 15px; line-height: 1.65; }\n\n  \/* ===== SPECIFICATIONS + WARRANTY + WHY BUY + EDUCATION + VIDEOS — contained tabbed card (pure CSS, no JS) ===== *\/\n  .ksf-pp .ksf-speccard { margin: 24px 0; border: 1px solid #e6e7e8; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 50px -30px rgba(0,0,0,0.25); background: #fff; }\n  .ksf-pp .ksf-speccard-head { background: linear-gradient(120deg, #07bcad 0%, #069e92 100%); padding: 22px 28px; }\n  .ksf-pp .ksf-speccard-head .ksf-eyebrow { font-family: 'Bebas Neue', sans-serif; font-size: 13px; letter-spacing: 4px; text-transform: uppercase; color: #e0fffb; margin: 0 0 2px; }\n  .ksf-pp .ksf-speccard-head h2 { font-family: 'Bebas Neue', Impact, sans-serif; font-size: clamp(26px, 3.4vw, 36px); line-height: 1; color: #fff; margin: 0; font-weight: 400; }\n  .ksf-pp .ksf-tabs input[type=\"radio\"] { position: absolute; opacity: 0; pointer-events: none; }\n  .ksf-pp .ksf-tabnav { display: flex; flex-wrap: wrap; gap: 6px; padding: 14px 20px 0; background: #f4f5f6; border-bottom: 1px solid #e6e7e8; }\n  .ksf-pp .ksf-tablabel { font-family: 'Bebas Neue', sans-serif; font-size: 16px; letter-spacing: 1.5px; text-transform: uppercase; padding: 10px 18px; border-radius: 10px 10px 0 0; background: transparent; color: #8a8a8a; cursor: pointer; user-select: none; transition: background .2s, color .2s; border: 1px solid transparent; border-bottom: none; position: relative; top: 1px; }\n  .ksf-pp .ksf-tablabel:hover { color: #4a4a4a; }\n  .ksf-pp .ksf-panel { display: none; }\n  .ksf-pp .ksf-spec-table { width: 100%; border-collapse: collapse; }\n  .ksf-pp .ksf-spec-table td { padding: 13px 28px; font-size: 15px; border-bottom: 1px solid #f1f1f2; }\n  .ksf-pp .ksf-spec-table tr:last-child td { border-bottom: none; }\n  .ksf-pp .ksf-spec-table tr:nth-child(even) { background: #fafbfb; }\n  .ksf-pp .ksf-spec-table td.ksf-k { color: #2a2a2a; font-weight: 600; width: 54%; }\n  .ksf-pp .ksf-spec-table td.ksf-v { color: #565656; }\n  \/* each tab is tinted its own BRAND color when inactive, solid when active *\/\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t1\"] { background: rgba(7,188,173,0.12); color: #06978b; }\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t2\"] { background: rgba(41,182,216,0.14); color: #1f97b8; }\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t3\"] { background: rgba(74,61,177,0.12); color: #4a3db1; }\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t4\"] { background: rgba(241,11,101,0.12); color: #f10b65; }\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t5\"] { background: rgba(255,170,0,0.16); color: #cc8800; }\n  .ksf-pp .ksf-tabnav label[for=\"ksf-t6\"] { background: rgba(7,188,173,0.12); color: #06978b; }\n  .ksf-pp #ksf-t1:checked ~ .ksf-tabnav label[for=\"ksf-t1\"] { background: #07bcad; color: #fff; border-color: #07bcad; }\n  .ksf-pp #ksf-t2:checked ~ .ksf-tabnav label[for=\"ksf-t2\"] { background: #29b6d8; color: #fff; border-color: #29b6d8; }\n  .ksf-pp #ksf-t3:checked ~ .ksf-tabnav label[for=\"ksf-t3\"] { background: #4a3db1; color: #fff; border-color: #4a3db1; }\n  .ksf-pp #ksf-t4:checked ~ .ksf-tabnav label[for=\"ksf-t4\"] { background: #f10b65; color: #fff; border-color: #f10b65; }\n  .ksf-pp #ksf-t5:checked ~ .ksf-tabnav label[for=\"ksf-t5\"] { background: #ffaa00; color: #fff; border-color: #ffaa00; }\n  .ksf-pp #ksf-t6:checked ~ .ksf-tabnav label[for=\"ksf-t6\"] { background: #07bcad; color: #fff; border-color: #07bcad; }\n  \/* FIXED (do not merge these two rules \/ do not apply display unconditionally elsewhere):\n     Specifications (t1) and Videos (t5\/t6) are PLAIN panels -\u003e display:block when active.\n     Warranty (t2), Why Buy From Us (t3), Education (t4) are SPLIT panels (image+text) -\u003e\n     display:grid when active. If the Videos tab is ever dropped (0 videos), just delete its\n     input\/label\/panel trio — do not renumber the others. *\/\n  .ksf-pp #ksf-t1:checked ~ #ksf-p1,\n  .ksf-pp #ksf-t5:checked ~ #ksf-p5,\n  .ksf-pp #ksf-t6:checked ~ #ksf-p6 { display: block; }\n  .ksf-pp #ksf-t2:checked ~ #ksf-p2,\n  .ksf-pp #ksf-t3:checked ~ #ksf-p3,\n  .ksf-pp #ksf-t4:checked ~ #ksf-p4 { display: grid; }\n  @media (max-width: 640px) {\n    .ksf-pp .ksf-tablabel { font-size: 14px; padding: 8px 12px; letter-spacing: 1px; }\n    .ksf-pp .ksf-spec-table td { padding: 12px 16px; font-size: 14px; }\n    .ksf-pp .ksf-spec-table td.ksf-k { width: 56%; }\n    .ksf-pp .ksf-speccard-head { padding: 18px 20px; }\n  }\n\n  @media (max-width: 860px) {\n    .ksf-pp .ksf-hero { grid-template-columns: 1fr; padding: 28px; }\n    .ksf-pp .ksf-hero-media { order: -1; }\n    .ksf-pp .ksf-hero-features { grid-template-columns: repeat(2, 1fr); }\n    .ksf-pp .ksf-card--media { grid-template-columns: 1fr; gap: 20px; }\n    .ksf-pp .ksf-card--media .ksf-section-shot { order: -1; }\n  }\n  @media (max-width: 640px) {\n    .ksf-pp .ksf-card { padding: 20px 0; }\n    .ksf-pp .ksf-hero-features { grid-template-columns: 1fr; }\n  }\n\u003c\/style\u003e\n\n\n  \u003c!-- HERO --\u003e\n  \u003cheader class=\"ksf-hero\"\u003e\n    \u003cdiv class=\"ksf-hero-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eBERNINA\u003c\/p\u003e\n      \u003ch1\u003eL 450 Overlocker\u003c\/h1\u003e\n      \u003cp class=\"ksf-lead\"\u003eThe BERNINA L 450 Overlocker offers exceptional ease of use, speed, and precision for beginners and experienced sewists alike. Perfect as a companion to any sewing machine, it cuts, sews, and finishes seams in one single operation with flawless 2-, 3-, or 4-thread stitch formations.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-hero-media\"\u003e\n      \u003cdiv class=\"ksf-hero-image\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-hero.png?v=1790779467\" alt=\"BERNINA L 450 Overlocker\" loading=\"eager\"\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/header\u003e\n\n  \u003c!-- 4 KEY FEATURE CIRCLES (2-line titles) --\u003e\n  \u003cdiv class=\"ksf-hero-features\"\u003e\n    \u003cdiv class=\"ksf-feature-item\"\u003e\n      \u003cdiv class=\"ksf-feature-circle\"\u003e\u003cdiv class=\"ksf-feature-num\"\u003e1,200 SPM\u003cbr\u003eMax Sewing Speed\u003c\/div\u003e\u003c\/div\u003e\n      \u003cp\u003eSmooth AC motor for reliable, even stitching.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-feature-item\"\u003e\n      \u003cdiv class=\"ksf-feature-circle\"\u003e\u003cdiv class=\"ksf-feature-num\"\u003e16 Stitch\u003cbr\u003eVariations\u003c\/div\u003e\u003c\/div\u003e\n      \u003cp\u003eOverlock, stretch, flatlock, rolled hem, and picot.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-feature-item\"\u003e\n      \u003cdiv class=\"ksf-feature-circle\"\u003e\u003cdiv class=\"ksf-feature-num\"\u003e3–9 mm\u003cbr\u003eCutting Width\u003c\/div\u003e\u003c\/div\u003e\n      \u003cp\u003eClean edges on everything from sheers to heavy fabrics.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-feature-item\"\u003e\n      \u003cdiv class=\"ksf-feature-circle\"\u003e\u003cdiv class=\"ksf-feature-num\"\u003eAC Motor\u003cbr\u003eDrive Technology\u003c\/div\u003e\u003c\/div\u003e\n      \u003cp\u003eReliable power with 5-step presser foot pressure.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- HIGHLIGHTS: alternating side, 5 images. --\u003e\n  \u003csection class=\"ksf-card ksf-card--media\"\u003e\n    \u003cfigure class=\"ksf-section-shot\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-highlight-01.jpg?v=1790778269\" alt=\"Color-coded lay-in threading paths on the BERNINA L 450 Overlocker\"\u003e\n    \u003c\/figure\u003e\n    \u003cdiv class=\"ksf-card-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eEasy Threading\u003c\/p\u003e\n      \u003ch2 class=\"ksf-title\"\u003eColor-Coded Lay-In Threading\u003c\/h2\u003e\n      \u003cp class=\"ksf-lead\"\u003eFollow the color-coded lay-in threading paths, with a lower looper assistant to help guide the way and a handwheel position window that shows exactly when you’re ready to thread. A manual needle threader makes the needles just as easy.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"ksf-card ksf-card--media\"\u003e\n    \u003cdiv class=\"ksf-card-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eStitch Variety\u003c\/p\u003e\n      \u003ch2 class=\"ksf-title\"\u003e16 Stitches \u0026amp; Built-in Rolled Hem\u003c\/h2\u003e\n      \u003cp class=\"ksf-lead\"\u003eChoose from 16 stitch formations, including 4-thread overlock, 3-thread stretch, flatlock, rolled hem, and picot. The built-in rolled hem lever switches to rolled hemming without changing stitch plates, and you can adjust stitch length (0.8–4 mm) on the fly.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cfigure class=\"ksf-section-shot\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-highlight-02.jpg?v=1790778269\" alt=\"16 stitch variations and built-in rolled hem on the BERNINA L 450 Overlocker\"\u003e\n    \u003c\/figure\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"ksf-card ksf-card--media\"\u003e\n    \u003cfigure class=\"ksf-section-shot\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-highlight-03.jpg?v=1790778269\" alt=\"Micro Thread Control lever on the BERNINA L 450 Overlocker\"\u003e\n    \u003c\/figure\u003e\n    \u003cdiv class=\"ksf-card-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003ePrecision Finishing\u003c\/p\u003e\n      \u003ch2 class=\"ksf-title\"\u003eMicro Thread Control (mtc)\u003c\/h2\u003e\n      \u003cp class=\"ksf-lead\"\u003eBERNINA’s patented Micro Thread Control lever fine-tunes the over-edge loops and eliminates loose loops instantly, so every seam finishes clean and balanced.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"ksf-card ksf-card--media\"\u003e\n    \u003cdiv class=\"ksf-card-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eFeed \u0026amp; Performance\u003c\/p\u003e\n      \u003ch2 class=\"ksf-title\"\u003eDifferential Feed \u0026amp; Smooth AC Motor\u003c\/h2\u003e\n      \u003cp class=\"ksf-lead\"\u003eDifferential feed ensures wave-free seams in knits and pucker-free finishes on delicate fabrics. The smooth AC motor sews up to 1,200 stitches per minute, with 5-step presser foot pressure adjustment to match every fabric.\u003c\/p\u003e\n    \u003c\/div\u003e\n    \u003cfigure class=\"ksf-section-shot\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-highlight-04.jpg?v=1790778269\" alt=\"Differential feed seam on knit fabric with the BERNINA L 450 Overlocker\"\u003e\n    \u003c\/figure\u003e\n  \u003c\/section\u003e\n\n  \u003csection class=\"ksf-card ksf-card--media\"\u003e\n    \u003cfigure class=\"ksf-section-shot\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-highlight-05.jpg?v=1790778269\" alt=\"Tool storage inside the looper cover of the BERNINA L 450 Overlocker\"\u003e\n    \u003c\/figure\u003e\n    \u003cdiv class=\"ksf-card-text\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eOrganized Sewing\u003c\/p\u003e\n      \u003ch2 class=\"ksf-title\"\u003eSmart Storage Built In\u003c\/h2\u003e\n      \u003cp class=\"ksf-lead\"\u003eFrequently used tools are organized right inside the looper cover, so they’re always within reach. The dual-purpose cut-offs bin catches fabric trimmings and doubles as convenient storage for the foot control.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ============ KEY FEATURES \/ INCLUDED ACCESSORIES \/ INCLUDED PRESSER FEET ============\n       Stacked full-width cards (L 460 layout). Key Features flows into 2 columns via inline CSS columns.\n       Tool box omitted until confirmed. FHS knee lifter + extension table are OPTIONAL on this model. --\u003e\n  \u003csection class=\"ksf-card ksf-tricol\" style=\"grid-template-columns: 1fr;\"\u003e\n    \u003cdiv class=\"ksf-featblock\"\u003e\n      \u003ch2 class=\"ksf-title ksf-tricol-title\"\u003eKey Features\u003c\/h2\u003e\n      \u003cul class=\"ksf-collist\" style=\"columns: 2 260px; column-gap: 48px;\"\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eMicro Thread Control (mtc):\u003c\/strong\u003e Patented fine-tuning lever eliminates loose over-edge loops instantly.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eSmooth AC Motor:\u003c\/strong\u003e Reliable performance sewing up to 1,200 stitches per minute with ease.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eDual LED Lighting:\u003c\/strong\u003e Two bright LED lights illuminate the needle and lower looper workspace.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eErgonomic Threading:\u003c\/strong\u003e Manual needle threader, color-coded lay-in paths, lower looper assistant, and a handwheel position window.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eDifferential Feed:\u003c\/strong\u003e Ensures wave-free seams in knits and pucker-free finishes on delicate fabrics.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eAccessory Storage in Cover:\u003c\/strong\u003e Frequently used tools are organized right inside the looper cover.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eDual-Purpose Cut-Offs Bin:\u003c\/strong\u003e Catches fabric trimmings and doubles as convenient foot control storage.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eBuilt-in Rolled Hem Lever:\u003c\/strong\u003e Switch to rolled hemming without changing stitch plates.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003ePresser Foot Control:\u003c\/strong\u003e 5-step presser foot pressure adjustment and 2-step presser foot lift.\u003c\/li\u003e\n        \u003cli style=\"break-inside: avoid;\"\u003e\n\u003cstrong\u003eSafety \u0026amp; Convenience:\u003c\/strong\u003e Safety switch interlocks when the cover is open, integrated thread cutter on the left cover, and upper knife driven from below.\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-featblock\"\u003e\n      \u003ch2 class=\"ksf-title ksf-tricol-title\"\u003eIncluded Accessories\u003c\/h2\u003e\n      \u003cul class=\"ksf-collist\"\u003e\n        \u003cli\u003e\n\u003cstrong\u003eThreading Hardware:\u003c\/strong\u003e Upper Looper Converter, Needle Set\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eSewing Aids:\u003c\/strong\u003e Seam Guide\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eStorage \u0026amp; Cleanup:\u003c\/strong\u003e Cut-offs Bin, Dust Cover\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"ksf-featblock\"\u003e\n      \u003ch2 class=\"ksf-title ksf-tricol-title\"\u003eIncluded Presser Feet\u003c\/h2\u003e\n      \u003cul class=\"ksf-collist\"\u003e\n        \u003cli\u003e\u003cstrong\u003eStandard Overlock Foot\u003c\/strong\u003e\u003c\/li\u003e\n      \u003c\/ul\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ============ DETAILS — contained tabbed card (pure CSS, no JS) ============\n       5 tabs: Specifications · Warranty · Why Buy From Us · Education · Videos (8-video playlist). --\u003e\n  \u003cdiv class=\"ksf-speccard ksf-tabs\"\u003e\n    \u003cinput type=\"radio\" name=\"ksf-spectabs\" id=\"ksf-t1\" checked\u003e\n    \u003cinput type=\"radio\" name=\"ksf-spectabs\" id=\"ksf-t2\"\u003e\n    \u003cinput type=\"radio\" name=\"ksf-spectabs\" id=\"ksf-t3\"\u003e\n    \u003cinput type=\"radio\" name=\"ksf-spectabs\" id=\"ksf-t4\"\u003e\n    \u003cinput type=\"radio\" name=\"ksf-spectabs\" id=\"ksf-t5\"\u003e\n\n    \u003cdiv class=\"ksf-speccard-head\"\u003e\n      \u003cp class=\"ksf-eyebrow\"\u003eDetails\u003c\/p\u003e\n      \u003ch2\u003eProduct Details\u003c\/h2\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"ksf-tabnav\"\u003e\n      \u003clabel class=\"ksf-tablabel\" for=\"ksf-t1\"\u003eSpecifications\u003c\/label\u003e\n      \u003clabel class=\"ksf-tablabel\" for=\"ksf-t2\"\u003eWarranty\u003c\/label\u003e\n      \u003clabel class=\"ksf-tablabel\" for=\"ksf-t3\"\u003eWhy Buy From Us\u003c\/label\u003e\n      \u003clabel class=\"ksf-tablabel\" for=\"ksf-t4\"\u003eEducation\u003c\/label\u003e\n      \u003clabel class=\"ksf-tablabel\" for=\"ksf-t5\"\u003eVideos\u003c\/label\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- TAB 1: Specifications (serger terminology, one unified table).\n         Weight, dimensions and differential feed ratio not on the spec sheet — omitted until provided. --\u003e\n    \u003cdiv class=\"ksf-panel\" id=\"ksf-p1\"\u003e\n      \u003ctable class=\"ksf-spec-table\"\u003e\u003ctbody\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eMaximum Sewing Speed\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eUp to 1,200 SPM \/ AC Motor\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eNumber of Threads\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e2, 3, and 4 threads\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eStitch Library\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e16 Stitch Variations (4-Thread Overlock, 3-Thread Stretch, Flatlock, Rolled Hem, Picot)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eCutting Width\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e3 mm to 9 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eStitch Length\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e0.8 mm to 4.0 mm (adjustable while sewing)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eDifferential Feed\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eYes\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eTension Control\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eMicro Thread Control (mtc)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eThreading System\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eColor-Coded Lay-In Threading \/ Lower Looper Assistant \/ Manual Needle Threader \/ Handwheel Position Window\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003ePresser Foot\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e5-Step Pressure Adjustment \/ 2-Step Lift\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eKnife\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eUpper Knife Driven from Below\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eRolled Hem\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eBuilt-in Rolled Hem Lever (no stitch plate change)\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eSafety \u0026amp; Convenience\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eSafety Switch Interlocks \/ Integrated Thread Cutter\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eLighting\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003e2 LED Sewing Lights\u003c\/td\u003e\n\u003c\/tr\u003e\n        \u003ctr\u003e\n\u003ctd class=\"ksf-k\"\u003eOptional Upgrades\u003c\/td\u003e\n\u003ctd class=\"ksf-v\"\u003eSlide-on Extension Table \/ FHS Knee Lifter Kit (sold separately)\u003c\/td\u003e\n\u003c\/tr\u003e\n      \u003c\/tbody\u003e\u003c\/table\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- TAB 2: Warranty (BERNINA version — badge + copy from Warranty_Bernina_-_Desktop.fig) --\u003e\n    \u003cdiv class=\"ksf-panel ksf-panel-split\" id=\"ksf-p2\"\u003e\n      \u003cfigure style=\"margin:0;\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/Bernina.png?v=1790607930\" alt=\"BERNINA warranty — 20-Year Mechanical, 5-Year Circuit Boards, 2-Year Electrical\"\u003e\n      \u003c\/figure\u003e\n      \u003cdiv class=\"ksf-panel-splitbody\"\u003e\n        \u003ch3\u003eBERNINA Warranty Coverage\u003c\/h3\u003e\n        \u003cp\u003eBernina is the gold standard in home sewing machines. Their warranty coverage is built to match a machine designed to last generations.\u003c\/p\u003e\n        \u003cul\u003e\n          \u003cli\u003e\n\u003cstrong\u003eMechanical Parts\u003c\/strong\u003e — 20-year limited warranty\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003ePrinted Circuit Boards\u003c\/strong\u003e — 5-year warranty\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003eElectrical Parts\u003c\/strong\u003e — 2-year warranty\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003cp\u003eBernina’s warranty covers defects in materials and workmanship for the original purchaser. Mechanical parts are covered for 20 years, circuit boards for 5 years, and electrical parts for 2 years. Important: warranty coverage is limited to the cost of the affected part only — labor charges are not included. All shipping costs to and from the dealer or designated service point are the purchaser’s responsibility. The warranty must be registered via the Bernina Customer Portal within 30 days of purchase, or countersigned by an authorized Bernina dealer within 90 days — otherwise coverage is void. Original proof of purchase required for all service.\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eYour Bernina warranty is valid at any authorized Bernina dealer — return your machine to an authorized location for all repairs and replacements.\u003c\/strong\u003e\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- TAB 3: Why Buy From Us (image left, text right — STANDARD, same every machine) --\u003e\n    \u003cdiv class=\"ksf-panel ksf-panel-split\" id=\"ksf-p3\"\u003e\n      \u003cfigure style=\"margin:0;\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/Why_buy_from_us.png?v=1785865697\" alt=\"Why buy from us\"\u003e\n      \u003c\/figure\u003e\n      \u003cdiv class=\"ksf-panel-splitbody\"\u003e\n        \u003ch3\u003eWhy Buy From Us\u003c\/h3\u003e\n        \u003cp\u003eWhen you buy from Sew It Online, you're covered — before, during, and after the sale.\u003c\/p\u003e\n        \u003cul\u003e\n          \u003cli\u003e\n\u003cstrong\u003eReal Support When You Need It\u003c\/strong\u003e — call us first. Our techs and education specialists solve a lot over video, find you a local repair shop, or walk you through shipping it back. Just keep your box.\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003eWarranty Valid at Any Authorized Dealer\u003c\/strong\u003e — your coverage travels with you. Take your machine anywhere for service, no questions asked.\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003cp\u003ePlus, every machine purchase includes access to our full education library — see the Education tab.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- TAB 4: Education (image left, text right — STANDARD, same every machine) --\u003e\n    \u003cdiv class=\"ksf-panel ksf-panel-split\" id=\"ksf-p4\"\u003e\n      \u003cfigure style=\"margin:0;\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/Why_buy_from_us.png?v=1785865697\" alt=\"Education included\"\u003e\n      \u003c\/figure\u003e\n      \u003cdiv class=\"ksf-panel-splitbody\"\u003e\n        \u003ch3\u003eWhat Education Is Included\u003c\/h3\u003e\n        \u003cp\u003eEvery machine purchase includes access to our full education library:\u003c\/p\u003e\n        \u003cul\u003e\n          \u003cli\u003e✂️ \u003cstrong\u003eSew What's Possible Challenge\u003c\/strong\u003e — start sewing real projects fast.\u003c\/li\u003e\n          \u003cli\u003e📚 \u003cstrong\u003eBeyond The Basics\u003c\/strong\u003e — level up your technique.\u003c\/li\u003e\n          \u003cli\u003e🧵 \u003cstrong\u003eMachine Maintenance Course\u003c\/strong\u003e — keep your machine running right.\u003c\/li\u003e\n          \u003cli\u003e🏆 \u003cstrong\u003eFrom Box to Confidence\u003c\/strong\u003e — sewing the same day it arrives.\u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- TAB 5: Videos — playlist (8 videos), original YouTube titles. --\u003e\n    \u003cdiv class=\"ksf-panel\" id=\"ksf-p5\"\u003e\n      \u003cdiv class=\"ksf-vp\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp1\" checked\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp2\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp3\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp4\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp5\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp6\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp7\"\u003e\n        \u003cinput type=\"radio\" name=\"ksf-vp\" id=\"vp8\"\u003e\n        \u003cdiv class=\"ksf-vp-stage\"\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps1\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/4yW4Pi16Dzs\" title=\"BERNINA L 450: video instructions 1\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps2\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/bFOokLE76mg\" title=\"BERNINA L 450: video instructions 2\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps3\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/3DF4Xuf0Uak\" title=\"BERNINA L 450: video instructions 3\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps4\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/b1firfeAtjM\" title=\"BERNINA L 450: video instructions 4\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps5\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/0uDfNmEM7y4\" title=\"BERNINA L 450: video instructions 5\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps6\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/Os5IXBfGC4E\" title=\"BERNINA L 450: video instructions 6\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps7\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/v1ihB061xZ4\" title=\"BERNINA L 450: video instructions 7\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n          \u003cdiv class=\"ksf-vp-screen\" id=\"vps8\"\u003e\u003ciframe src=\"https:\/\/www.youtube.com\/embed\/M21lhwsGZnM\" title=\"BERNINA L 450: video instructions 8\/8\" loading=\"lazy\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen\u003e\u003c\/iframe\u003e\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"ksf-vp-list\"\u003e\n          \u003cdiv class=\"ksf-vp-listhead\"\u003eBERNINA L 450 Videos\u003c\/div\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp1\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e1\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 1\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp2\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e2\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 2\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp3\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e3\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 3\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp4\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e4\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 4\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp5\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e5\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 5\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp6\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e6\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 6\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp7\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e7\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 7\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n          \u003clabel class=\"ksf-vp-row\" for=\"vp8\"\u003e\u003cspan class=\"ksf-vp-num\"\u003e8\u003c\/span\u003e\u003cspan class=\"ksf-vp-rowtitle\"\u003eBERNINA L 450: video instructions 8\/8\u003c\/span\u003e\u003cspan class=\"ksf-vp-play\"\u003e\u003c\/span\u003e\u003c\/label\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003c!-- ============ FAQ (accordion + FAQPage schema) ============ --\u003e\n  \u003csection class=\"ksf-faq\"\u003e\n    \u003cp class=\"ksf-eyebrow\"\u003eQuestions\u003c\/p\u003e\n    \u003ch2 class=\"ksf-title\"\u003eFrequently Asked Questions\u003c\/h2\u003e\n\n    \u003cdetails class=\"ksf-faq-item\"\u003e\n      \u003csummary\u003eIs the BERNINA L 450 good for beginners?\u003c\/summary\u003e\n      \u003cdiv class=\"ksf-faq-answer\"\u003eYes. The L 450 is designed for beginners and experienced sewists alike, with color-coded lay-in threading, a lower looper assistant, a manual needle threader, and a handwheel position window that shows exactly when you’re ready to thread.\u003c\/div\u003e\n    \u003c\/details\u003e\n    \u003cdetails class=\"ksf-faq-item\"\u003e\n      \u003csummary\u003eCan the BERNINA L 450 sew a rolled hem?\u003c\/summary\u003e\n      \u003cdiv class=\"ksf-faq-answer\"\u003eYes. The built-in rolled hem lever lets you switch to rolled hemming without changing stitch plates. The L 450 offers 16 stitch variations in total, including overlock, stretch, flatlock, rolled hem, and picot.\u003c\/div\u003e\n    \u003c\/details\u003e\n    \u003cdetails class=\"ksf-faq-item\"\u003e\n      \u003csummary\u003eDoes the BERNINA L 450 come with a knee lifter or extension table?\u003c\/summary\u003e\n      \u003cdiv class=\"ksf-faq-answer\"\u003eNo. The Free Hand System (FHS) knee lifter kit and the slide-on extension table are optional upgrades, sold separately.\u003c\/div\u003e\n    \u003c\/details\u003e\n    \u003cdetails class=\"ksf-faq-item\"\u003e\n      \u003csummary\u003eWhat accessories come with the BERNINA L 450?\u003c\/summary\u003e\n      \u003cdiv class=\"ksf-faq-answer\"\u003eThe L 450 includes a standard overlock foot, an upper looper converter, a cut-offs bin, a seam guide, a needle set, and a dust cover.\u003c\/div\u003e\n    \u003c\/details\u003e\n  \u003c\/section\u003e\n\n  \u003cscript type=\"application\/ld+json\"\u003e\n  {\n    \"@context\": \"https:\/\/schema.org\",\n    \"@type\": \"FAQPage\",\n    \"mainEntity\": [\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Is the BERNINA L 450 good for beginners?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Yes. The L 450 is designed for beginners and experienced sewists alike, with color-coded lay-in threading, a lower looper assistant, a manual needle threader, and a handwheel position window that shows exactly when you're ready to thread.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Can the BERNINA L 450 sew a rolled hem?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Yes. The built-in rolled hem lever lets you switch to rolled hemming without changing stitch plates. The L 450 offers 16 stitch variations in total, including overlock, stretch, flatlock, rolled hem, and picot.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Does the BERNINA L 450 come with a knee lifter or extension table?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"No. The Free Hand System (FHS) knee lifter kit and the slide-on extension table are optional upgrades, sold separately.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"What accessories come with the BERNINA L 450?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"The L 450 includes a standard overlock foot, an upper looper converter, a cut-offs bin, a seam guide, a needle set, and a dust cover.\"\n        }\n      }\n    ]\n  }\n  \u003c\/script\u003e\n\n\u003c\/div\u003e\n\u003c!-- =============================== END SNIPPET =============================== --\u003e","brand":"Bernina","offers":[{"title":"Default Title","offer_id":71432585609469,"sku":null,"price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1628\/9107\/files\/bernina-l450-hero.png?v=1790779621","url":"https:\/\/sewitonline.com\/products\/bernina-l-450","provider":"Sew It Online","version":"1.0","type":"link"}