:root{--paper:#f6f3eb;--ink:#252d28;--muted:#646c62;--line:#d7d8cc;--green:#3d5141;--gold:#9b6f32;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--gold)}a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}header{display:flex;align-items:center;justify-content:space-between;padding:30px 0;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:Georgia,'Times New Roman',serif;font-size:23px;letter-spacing:-.5px;text-decoration:none;display:flex;gap:13px;align-items:center}.mark{color:var(--green);font-size:29px}nav{display:flex;gap:32px;font-size:13px}nav a{text-decoration:none}.skip{position:absolute;left:20px;top:-100px;padding:15px;background:var(--ink);color:white;z-index:2}.skip:focus{top:15px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--green);line-height:1.7}.hero{padding-top:62px;padding-bottom:66px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(64px,7.6vw,105px);line-height:1.03;font-weight:400;letter-spacing:-4px;margin:28px 0 30px}.hero h1 em{color:var(--green);font-weight:400}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:36px}.hero-bottom p{max-width:460px;color:var(--muted);font-size:17px;line-height:1.65;margin:0}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;border:1px solid var(--green);background:var(--green);color:#fffdf4;text-decoration:none;padding:17px 22px;font-size:13px;white-space:nowrap;transition:background .15s}.button:hover{background:#293b2d;color:white}.button span{font-size:18px}.collection{padding-top:29px;border-top:1px solid var(--line);scroll-margin-top:24px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:28px}h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:400;margin:0}.section-heading p{font-size:12px;color:var(--muted)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.design{min-width:0}.image-link{display:flex;width:100%;aspect-ratio:1.18;align-items:center;justify-content:center;overflow:hidden}.image-link img{width:100%;height:100%;object-fit:contain;transition:transform .25s}.image-link:hover img{transform:scale(1.025)}.waggle-dance{background:#7798d1}.navier-stokes{background:#f3f0e8}.navier-stokes.image-link{border:1px solid #e4e0d6;padding:25px}.card-copy{padding-top:23px}.card-copy .eyebrow{margin:0 0 9px;font-size:10px}.card-copy h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:31px;margin:0 0 13px}.card-copy h3 a{display:flex;justify-content:space-between;text-decoration:none}.card-copy h3 span{font-family:Arial,sans-serif;font-size:22px;font-weight:400;color:var(--muted)}.card-copy>p:not(.eyebrow):not(.status){font-size:14px;color:var(--muted);line-height:1.65;margin:0 0 19px;max-width:430px}.facts{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:11px;color:var(--muted);padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.status{font-size:11px;margin:17px 0;color:var(--green)}.status span{font-size:8px;margin-right:6px}.text-link{font-size:12px;text-decoration:none;border-bottom:1px solid var(--green);padding-bottom:5px;display:inline-flex;gap:30px}.notes{margin-top:85px;padding-top:45px;padding-bottom:60px;border-top:1px solid var(--line)}.notes h2{line-height:1.2;font-size:40px;letter-spacing:-.6px;margin:17px 0 35px}.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.note-grid>div>span{font-family:Georgia,serif;font-style:italic;color:var(--gold);font-size:19px}.note-grid h3{font-size:14px;font-weight:500;margin:16px 0 10px}.note-grid p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0 35px;font-size:11px;color:var(--muted)}.detail{padding-top:35px;padding-bottom:65px}.back{font-size:12px;text-decoration:none;display:inline-block;margin-bottom:36px}.detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:start}.detail figure{margin:0;border:1px solid var(--line)}.detail figure img{width:100%;height:auto;display:block}.detail figcaption{background:var(--paper);font-size:11px;color:var(--muted);line-height:1.5;padding:13px 15px;border-top:1px solid var(--line)}.detail h1{font-family:Georgia,serif;font-size:clamp(38px,4vw,58px);font-weight:400;letter-spacing:-1.8px;line-height:1.1;margin:17px 0}.intro{color:var(--muted);font-size:16px;line-height:1.65}.swatches{display:flex;gap:9px;margin:24px 0}.swatches span{display:block;width:19px;height:19px;border-radius:50%;border:1px solid #0002}dl{margin:25px 0 28px;border-top:1px solid var(--line)}dl>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:12px 0;font-size:12px}dt{color:var(--muted)}dd{margin:0;text-align:right}.detail .button{width:100%;justify-content:space-between}.individual{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;margin:20px 0 30px}.testing{border-left:2px solid var(--gold);padding-left:18px}.testing h2{font-family:Arial,sans-serif;font-size:13px;font-weight:700}.testing p{font-size:12px;color:var(--muted);line-height:1.7;margin:10px 0 0}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}header{padding:20px 0;align-items:flex-start}.brand{font-size:19px;gap:8px;max-width:190px}.mark{font-size:24px}nav{gap:12px;flex-direction:column;align-items:flex-end;font-size:11px}.hero{padding:40px 0 42px}.hero h1{font-size:63px;letter-spacing:-2.7px;margin:23px 0}.hero-bottom{flex-direction:column;align-items:flex-start;gap:24px}.hero-bottom p{font-size:15px;max-width:360px}.button{padding:14px 18px}.section-heading{align-items:flex-start;flex-direction:column;gap:3px;margin-bottom:22px}.section-heading p{margin:3px 0}.section-heading h2{font-size:30px}.grid{grid-template-columns:1fr;gap:45px}.card-copy{padding-top:20px}.notes{margin-top:55px;padding-top:28px;padding-bottom:35px}.notes h2{font-size:32px}.note-grid{grid-template-columns:1fr;gap:28px}.note-grid h3{margin-top:10px}.note-grid p{max-width:440px}footer{font-size:10px}.detail{padding-top:24px}.back{margin-bottom:25px}.detail-grid{grid-template-columns:1fr;gap:28px}.detail-copy .eyebrow{margin-top:0}.detail h1{font-size:45px}.detail figure{max-width:580px}.individual{gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.section-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:400;margin:0}main>.collection{border-top:0;padding-top:34px}.finished-embroidery,.inspiration{margin-top:58px;padding-top:36px;padding-bottom:30px;border-top:1px solid var(--line);scroll-margin-top:24px}.photo-intro,.photo-empty{font-size:14px;color:var(--muted);line-height:1.7;max-width:600px}.photo-empty{padding:20px 0}.finished-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:32px;margin-top:28px}.finished-photo{margin:0;max-width:540px}.finished-photo-image{display:block;background:#eae7dd;border:1px solid var(--line)}.finished-photo-image img{display:block;width:100%;height:auto}.finished-photo figcaption{padding:16px 0;font-size:13px;line-height:1.7;color:var(--muted)}.finished-photo-title{font-family:Georgia,'Times New Roman',serif;font-size:22px;color:var(--ink);text-decoration:none}.finished-photo figcaption p{margin:8px 0 0}.photo-credit{font-size:11px}.inspiration .finished-photo{max-width:540px}.finished-embroidery h2,.inspiration h2{line-height:1.2}.notes{margin-top:45px}footer{justify-content:flex-start}
@media(max-width:700px){.brand{max-width:270px;font-size:19px}.section-heading h1{font-size:30px}main>.collection{padding-top:25px}.finished-embroidery,.inspiration{margin-top:38px;padding-top:26px}.finished-embroidery h2,.inspiration h2{font-size:30px}.finished-photo-grid{grid-template-columns:1fr}.finished-photo{max-width:100%}nav{min-width:105px;gap:10px}}

/* Design pages: story, files, physical work, then process notes. */
.pattern-heading{padding-top:30px;padding-bottom:24px}
.pattern-heading .back{margin-bottom:22px}
.pattern-heading h1{font:400 clamp(38px,4.5vw,56px)/1.1 Georgia,serif;letter-spacing:-1.2px;margin:14px 0}
.pattern-heading .intro{max-width:700px;margin-bottom:0}
.page-nav{display:flex;flex-flow:row wrap;justify-content:flex-start;align-items:center;gap:12px 28px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;min-width:0}
.page-nav a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}
.design-section{padding-top:38px;padding-bottom:42px;scroll-margin-top:22px}
.design-section+.design-section{border-top:1px solid var(--line)}
.design-section>.eyebrow{margin:0 0 13px}
.design-section h2{font-size:34px;line-height:1.2;margin-bottom:25px}
.design-section h3{font:400 25px/1.25 Georgia,serif;margin:0 0 16px}
.design-section h4{font-size:14px;font-weight:600;line-height:1.5;margin:0 0 7px}
.prose{max-width:680px;font-size:15px;line-height:1.8;color:var(--muted)}
.prose p:first-child{margin-top:0}.prose p:last-child{margin-bottom:0}
.backstory-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
.backstory-layout h3{font-size:19px}
.process-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:30px;margin-top:26px}
.backstory-layout .process-image-grid{margin-top:0}
.process-image{margin:0;min-width:0;max-width:600px}
.process-image img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.process-image figcaption{font-size:12px;line-height:1.7;color:var(--muted);padding-top:12px}
.file-overview{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}
.file-overview dl{margin-top:0}
.file-summary,.file-list p,.variation-card p,.troubleshooting-note p,.lesson-list p{font-size:14px;line-height:1.75;color:var(--muted)}
.file-list,.lesson-list{list-style:none;margin:0;padding:0}
.file-list li{border-top:1px solid var(--line);padding:18px 0}
.file-list p{margin:0 0 9px}
.file-links{font-size:12px;line-height:1.9;overflow-wrap:anywhere}
.variations{margin-top:38px;padding-top:26px;border-top:1px solid var(--line);scroll-margin-top:22px}
.variation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px;margin-top:22px}
.variation-card{border:1px solid var(--line);padding:24px;max-width:560px;min-width:0}
.variation-card .eyebrow{font-size:10px;margin:0 0 10px;color:var(--green)}
.variation-card h4{font:400 24px/1.3 Georgia,serif}
.variation-card .variation-size{font-size:12px}
.variation-card .button{margin:10px 0 16px;width:100%;justify-content:space-between;white-space:normal}
.variation-preview{width:100%;height:auto;margin-top:10px}
.process-columns{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.troubleshooting-note{border-top:1px solid var(--line)}
.troubleshooting-note:last-child{border-bottom:1px solid var(--line)}
.troubleshooting-note summary{font-size:14px;line-height:1.5;padding:17px 4px;cursor:pointer;color:var(--ink)}
.troubleshooting-note summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.troubleshooting-note p{margin:0;padding:0 4px 18px}
.lesson-list li{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.lesson-list p{margin:0}.lesson-list li:last-child{margin-bottom:0}
@media(max-width:800px){
 .backstory-layout,.file-overview,.process-columns{grid-template-columns:1fr;gap:28px}
 .design-section h2{font-size:30px}.design-section{padding:30px 0 34px}
 .pattern-heading{padding-top:24px}.pattern-heading h1{font-size:43px}
 .page-nav{gap:14px 22px;font-size:12px;align-items:flex-start}
 .variation-card{padding:20px}.process-image{max-width:600px}
}

.file-list h3{font:600 14px/1.5 Arial,Helvetica,sans-serif;margin:0 0 7px}

.design-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;padding-bottom:30px}
.comparison-card{margin:0;min-width:0;scroll-margin-top:24px}
.comparison-card h2{font:400 25px/1.25 Georgia,serif;margin:0 0 15px}
.comparison-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1.18;background:#eeece4;border:1px solid var(--line)}
.comparison-image img{display:block;width:100%;height:100%;object-fit:contain}
.comparison-card figcaption{font-size:12px;line-height:1.7;color:var(--muted);padding-top:11px}
.comparison-empty{font-size:14px;line-height:1.7;color:var(--muted);padding:24px;border:1px solid var(--line)}
.backstory-layout:has(>.prose:only-child){grid-template-columns:1fr}
main>.collection:last-child{padding-bottom:55px}
@media(max-width:700px){.design-comparison{gap:16px;padding-bottom:24px}.comparison-card h2{font-size:22px;margin-bottom:12px}.comparison-card figcaption{font-size:11px}.comparison-image{aspect-ratio:1}.pattern-heading{padding-bottom:22px}}
