/* ===== Weaving page — matched to the Knitting page ===== */
.weave-hero{ padding:0; border-bottom:1px solid var(--line); }
.weave-grid{ display:grid; grid-template-columns:1.05fr .95fr; min-height:min(82vh,780px); }
.weave-copy{ display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:clamp(40px,7vw,110px); background:var(--ivory); }
.weave-copy .kicker{ font-size:14px; color:var(--madder-deep); margin-bottom:18px; letter-spacing:.02em; }
.weave-copy h1{ font-size:clamp(38px,5vw,68px); line-height:1.04; }
.weave-copy .lede{ margin-top:24px; max-width:44ch; font-size:18px; color:var(--ink-soft); }
.weave-visual{ position:relative; overflow:hidden; background:var(--ivory-dim); border-left:1px solid var(--line); }
.weave-visual::after{ content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(143,50,50,.08),transparent 45%,rgba(87,98,74,.08)); pointer-events:none; }
.loom-art{ width:100%; height:100%; min-height:620px; display:block; }
.weave-points{ display:grid; grid-template-columns:repeat(3,1fr); gap:48px; margin-top:8px; }
.weave-points h3{ font-size:22px; margin-bottom:10px; }
.weave-points p{ color:var(--ink-soft); font-size:16px; max-width:34ch; }
.weave-process .section-head{ margin-bottom:56px; }
.weave-care-list{ list-style:none; margin:0; padding:0; max-width:640px; }
.weave-care-list li{ padding:18px 0; border-bottom:1px solid var(--line); color:var(--ink-soft); font-size:16.5px; display:flex; gap:18px; }
.weave-care-list li b{ font-family:'Fraunces',serif; font-weight:500; color:var(--ink); min-width:120px; }
.weave-cta{ text-align:center; }
.weave-cta .section-head{ margin-left:auto; margin-right:auto; }
.weave-cta .section-head p{ margin-left:auto; margin-right:auto; }
@media(max-width:900px){
  .weave-grid{ grid-template-columns:1fr; min-height:0; }
  .weave-visual{ order:0; border-left:0; border-bottom:1px solid var(--line); }
  .loom-art{ min-height:460px; }
}
@media(max-width:800px){ .weave-points{ grid-template-columns:1fr; gap:32px; } }
@media(max-width:560px){ .weave-care-list li{ flex-direction:column; gap:4px; } }
