{"product_id":"saint-linen","title":"Saint Linen","description":"\u003cstyle\u003e\n  \/* ── TOKENS ── *\/\n  .uw-saint-linen {\n    --linen: #a89880;\n    --ink: #2D2D2A;\n    --ash: #f5f5f3;\n    --border: #e0e0da;\n\n    font-family: 'DM Sans', sans-serif;\n    color: var(--ink);\n    max-width: 780px;\n    margin: 0 auto;\n    padding: 0 4px;\n  }\n\n  \/* ── SECTION 1: HEADER ── *\/\n  .uw-header-tag {\n    display: inline-block;\n    font-size: 10px;\n    font-weight: 500;\n    letter-spacing: 0.22em;\n    text-transform: uppercase;\n    color: var(--ink);\n    opacity: 0.5;\n    margin-bottom: 10px;\n  }\n\n  .uw-header-title {\n    font-family: 'Bebas Neue', sans-serif;\n    font-size: clamp(44px, 8vw, 72px);\n    line-height: 0.95;\n    letter-spacing: 0.02em;\n    color: var(--linen);\n    margin: 0 0 10px 0;\n  }\n\n  .uw-header-subtitle {\n    font-style: italic;\n    font-weight: 300;\n    font-size: 15px;\n    color: var(--ink);\n    opacity: 0.7;\n    letter-spacing: 0.01em;\n    margin: 0 0 28px 0;\n  }\n\n  \/* ── SECTION 2: INTRO ── *\/\n  .uw-intro p {\n    font-size: 14.5px;\n    line-height: 1.75;\n    color: var(--ink);\n    font-weight: 300;\n    margin: 0 0 16px 0;\n  }\n\n  .uw-intro p:last-child { margin-bottom: 0; }\n\n  \/* ── SECTION 3: DOT DIVIDER ── *\/\n  .uw-divider {\n    display: flex;\n    align-items: center;\n    gap: 8px;\n    margin: 32px 0;\n  }\n\n  .uw-divider::before,\n  .uw-divider::after {\n    content: '';\n    flex: 1;\n    height: 1px;\n    background: var(--border);\n  }\n\n  .uw-divider-dots { display: flex; gap: 5px; }\n\n  .uw-divider-dots span {\n    width: 4px;\n    height: 4px;\n    border-radius: 50%;\n    background: var(--ink);\n    opacity: 0.3;\n  }\n\n  \/* ── SECTION 4: QUALITY GRID ── *\/\n  .uw-quality-label {\n    font-size: 10px;\n    font-weight: 500;\n    letter-spacing: 0.2em;\n    text-transform: uppercase;\n    color: var(--ink);\n    opacity: 0.5;\n    margin-bottom: 16px;\n  }\n\n  .uw-quality-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 12px;\n  }\n\n  .uw-quality-item {\n    background: var(--ash);\n    border: 1px solid var(--border);\n    border-radius: 4px;\n    padding: 16px 14px;\n    display: flex;\n    gap: 12px;\n    align-items: flex-start;\n  }\n\n  .uw-quality-icon { flex-shrink: 0; margin-top: 1px; }\n\n  .uw-quality-item-title {\n    font-size: 12px;\n    font-weight: 500;\n    letter-spacing: 0.04em;\n    text-transform: uppercase;\n    color: var(--ink);\n    margin: 0 0 4px 0;\n  }\n\n  .uw-quality-item-desc {\n    font-size: 12.5px;\n    font-weight: 300;\n    color: var(--ink);\n    line-height: 1.5;\n    margin: 0;\n    opacity: 0.7;\n  }\n\n  \/* ── SECTION 5: BADGE STRIP ── *\/\n  .uw-badge-strip {\n    display: grid;\n    grid-template-columns: repeat(4, 1fr);\n    border: 1px solid var(--border);\n    border-radius: 4px;\n    overflow: hidden;\n    margin: 32px 0;\n  }\n\n  .uw-badge {\n    padding: 14px 10px;\n    text-align: center;\n    background: var(--ash);\n    border-right: 1px solid var(--border);\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 5px;\n  }\n\n  .uw-badge:last-child { border-right: none; }\n\n  .uw-badge-label {\n    font-size: 9.5px;\n    font-weight: 500;\n    letter-spacing: 0.12em;\n    text-transform: uppercase;\n    color: var(--ink);\n    opacity: 0.5;\n    margin: 0;\n  }\n\n  .uw-badge-value {\n    font-size: 11px;\n    font-weight: 500;\n    color: var(--ink);\n    margin: 0;\n    line-height: 1.3;\n  }\n\n  \/* ── SECTION 6: OBJECTION BREAKERS ── *\/\n  .uw-objections {\n    display: flex;\n    flex-direction: column;\n    border: 1px solid var(--border);\n    border-radius: 4px;\n    overflow: hidden;\n    margin-bottom: 32px;\n  }\n\n  .uw-obj-block {\n    display: flex;\n    gap: 16px;\n    padding: 18px 16px;\n    border-bottom: 1px solid var(--border);\n    background: #fff;\n    align-items: flex-start;\n  }\n\n  .uw-obj-block:last-child { border-bottom: none; }\n\n  .uw-obj-icon { flex-shrink: 0; margin-top: 2px; }\n\n  .uw-obj-title {\n    font-size: 12px;\n    font-weight: 500;\n    letter-spacing: 0.06em;\n    text-transform: uppercase;\n    color: var(--ink);\n    margin: 0 0 5px 0;\n  }\n\n  .uw-obj-text {\n    font-size: 13px;\n    font-weight: 300;\n    color: var(--ink);\n    line-height: 1.6;\n    margin: 0;\n    opacity: 0.75;\n  }\n\n  \/* ── SECTION 7: SPECS ── *\/\n  .uw-specs-grid {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 16px;\n    margin-bottom: 32px;\n  }\n\n  .uw-specs-col-title {\n    font-size: 10px;\n    font-weight: 500;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    color: var(--ink);\n    opacity: 0.5;\n    margin: 0 0 12px 0;\n  }\n\n  .uw-specs-list {\n    list-style: none;\n    margin: 0;\n    padding: 0;\n    display: flex;\n    flex-direction: column;\n    gap: 8px;\n  }\n\n  .uw-specs-list li {\n    display: flex;\n    align-items: flex-start;\n    gap: 8px;\n    font-size: 13px;\n    font-weight: 300;\n    color: var(--ink);\n    line-height: 1.5;\n  }\n\n  .uw-specs-list li::before {\n    content: '';\n    width: 4px;\n    height: 4px;\n    border-radius: 50%;\n    background: var(--ink);\n    opacity: 0.3;\n    flex-shrink: 0;\n    margin-top: 6px;\n  }\n\n  \/* ── SECTION 8: CLOSING ── *\/\n  .uw-closing {\n    border-top: 1px solid var(--border);\n    padding-top: 28px;\n    text-align: center;\n  }\n\n  .uw-closing-headline {\n    font-family: 'Bebas Neue', sans-serif;\n    font-size: clamp(30px, 6vw, 52px);\n    line-height: 1.0;\n    letter-spacing: 0.03em;\n    color: var(--linen);\n    margin: 0 0 10px 0;\n  }\n\n  .uw-closing-tagline {\n    font-size: 11.5px;\n    font-weight: 300;\n    font-style: italic;\n    color: var(--ink);\n    opacity: 0.6;\n    letter-spacing: 0.04em;\n    margin: 0;\n  }\n\n  \/* ── RESPONSIVE ── *\/\n  @media (max-width: 520px) {\n    .uw-quality-grid { grid-template-columns: 1fr; }\n    .uw-badge-strip { grid-template-columns: repeat(2, 1fr); }\n    .uw-badge:nth-child(2) { border-right: none; }\n    .uw-badge:nth-child(1),\n    .uw-badge:nth-child(2) { border-bottom: 1px solid var(--border); }\n    .uw-specs-grid { grid-template-columns: 1fr; }\n  }\n\u003c\/style\u003e\n\u003cdiv class=\"uw-saint-linen\"\u003e\n\u003c!-- ── 1. HEADER ── --\u003e\n\u003cp class=\"uw-header-tag\"\u003eCelave \u0026amp; Co — Linen Set\u003c\/p\u003e\n\u003ch2 class=\"uw-header-title\"\u003eSaint Linen\u003c\/h2\u003e\n\u003cp class=\"uw-header-subtitle\"\u003eLinen shirt. Striped linen trousers. The set that makes getting dressed the easiest decision of your day.\u003c\/p\u003e\n\u003c!-- ── 2. INTRO ── --\u003e\n\u003cdiv class=\"uw-intro\"\u003e\n\u003cp\u003eSome looks take work. The Saint Linen isn't one of them. Two pieces — a relaxed linen shirt in white and a stripe-woven linen trouser in warm sand — cut from the same intention: effortless, put-together, done. No second-guessing what goes with what. No overthinking the palette. Just reach for both and walk out looking like you planned it the night before.\u003c\/p\u003e\n\u003cp\u003eThe shirt is loose-weave linen with just enough texture to keep it interesting — classic camp collar, button front, sleeves made for rolling. The kind of shirt that looks better slightly open, slightly worn-in. The trousers run with a relaxed straight leg and a subtle vertical stripe that adds movement without pattern noise — easy on the eye, clean on the body.\u003c\/p\u003e\n\u003cp\u003eTogether they read resort-casual. Apart, each piece holds its own against the rest of your wardrobe. The shirt over dark chinos, the trousers under a fitted tee — both work without the other. The Saint Linen was built to be worn as a set and styled as two separate weapons. That's what makes it worth owning.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c!-- ── 3. DIVIDER ── --\u003e\n\u003cdiv class=\"uw-divider\"\u003e\n\u003cdiv class=\"uw-divider-dots\"\u003e\n\u003cspan\u003e\u003c\/span\u003e\u003cspan\u003e\u003c\/span\u003e\u003cspan\u003e\u003c\/span\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ── 4. QUALITY GRID ── --\u003e\n\u003cp class=\"uw-quality-label\"\u003eCraftsmanship Details\u003c\/p\u003e\n\u003cdiv class=\"uw-quality-grid\"\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M6 3h10v16H6z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" opacity=\"0.4\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M8 3v16M10 3v16M12 3v16M14 3v16\" stroke=\"#2D2D2A\" stroke-width=\"0.8\" stroke-linecap=\"round\" opacity=\"0.35\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eLoose-Weave Linen\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eBreathes in warm weather, softens with every wash — the texture that defines summer dressing.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M11 3L5 8v11h12V8L11 3z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" opacity=\"0.4\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M8 8v13M14 8v13\" stroke=\"#2D2D2A\" stroke-width=\"1.1\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M11 3v5\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eMatched Two-Piece\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eShirt and trouser cut from the same linen family — a cohesive palette that works instantly together.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M7 3h8v4l2 2v10H5V9l2-2V3z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" opacity=\"0.4\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M9 3v4h4V3\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M11 10v5\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eRelaxed Shirt Fit\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eSlightly oversized drape — tuck for structure, leave out for ease. Looks right either way.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M5 4h12v15H5z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" opacity=\"0.4\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M8 4v15M11 4v15M14 4v15\" stroke=\"#2D2D2A\" stroke-width=\"0.9\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eStripe-Woven Trouser\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eVertical stripe in warm sand — woven into the fabric, not printed. Keeps its definition wash after wash.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M3 11c0-4.4 3.6-8 8-8s8 3.6 8 8-3.6 8-8 8\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M3 11h4M11 3v4M19 11h-4M11 19v-4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eStraight Leg Cut\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eRelaxed through the thigh with a clean straight fall — easy-wearing without looking unstructured.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-quality-item\"\u003e\n\u003cdiv class=\"uw-quality-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M11 2l2.5 5.5H19l-4.5 3.5 1.5 5.5L11 13.5 6 16.5l1.5-5.5L3 7.5h5.5L11 2z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linejoin=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-quality-item-title\"\u003eVersatile Separately\u003c\/p\u003e\n\u003cp class=\"uw-quality-item-desc\"\u003eEach piece works alone — shirt with dark chinos, trousers with a fitted tee. Double the outfits, one purchase.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ── 5. BADGE STRIP ── --\u003e\n\u003cdiv class=\"uw-badge-strip\"\u003e\n\u003cdiv class=\"uw-badge\"\u003e\n\u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 18 18\" fill=\"none\"\u003e\n        \u003ccircle cx=\"9\" cy=\"9\" r=\"7.5\" stroke=\"#2D2D2A\" stroke-width=\"1.2\" opacity=\"0.4\"\u003e\u003c\/circle\u003e\n        \u003ccircle cx=\"6\" cy=\"9\" r=\"1.2\" fill=\"#2D2D2A\" opacity=\"0.4\"\u003e\u003c\/circle\u003e\n        \u003ccircle cx=\"12\" cy=\"9\" r=\"1.2\" fill=\"#2D2D2A\" opacity=\"0.4\"\u003e\u003c\/circle\u003e\n        \u003cpath d=\"M7.5 9h3\" stroke=\"#2D2D2A\" stroke-width=\"1\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e\n\u003cp class=\"uw-badge-label\"\u003eIncludes\u003c\/p\u003e\n\u003cp class=\"uw-badge-value\"\u003eShirt + Pants\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-badge\"\u003e\n\u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 18 18\" fill=\"none\"\u003e\n        \u003cpath d=\"M4 5h10M4 9h10M4 13h6\" stroke=\"#2D2D2A\" stroke-width=\"1.2\" stroke-linecap=\"round\" opacity=\"0.5\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e\n\u003cp class=\"uw-badge-label\"\u003eFit\u003c\/p\u003e\n\u003cp class=\"uw-badge-value\"\u003eRelaxed\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-badge\"\u003e\n\u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 18 18\" fill=\"none\"\u003e\n        \u003crect x=\"2\" y=\"4\" width=\"14\" height=\"11\" rx=\"1.5\" stroke=\"#2D2D2A\" stroke-width=\"1.2\" opacity=\"0.4\"\u003e\u003c\/rect\u003e\n        \u003cpath d=\"M6 4V3M12 4V3\" stroke=\"#2D2D2A\" stroke-width=\"1.2\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n        \u003cpath d=\"M5 9h8M5 12h5\" stroke=\"#2D2D2A\" stroke-width=\"1.1\" stroke-linecap=\"round\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e\n\u003cp class=\"uw-badge-label\"\u003eDelivery\u003c\/p\u003e\n\u003cp class=\"uw-badge-value\"\u003e8–14 Days US\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-badge\"\u003e\n\u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 18 18\" fill=\"none\"\u003e\n        \u003cpath d=\"M9 2l1.8 3.8 4.2.6-3 3 .7 4.2L9 11.5l-3.7 2.1.7-4.2-3-3 4.2-.6L9 2z\" stroke=\"#2D2D2A\" stroke-width=\"1.2\" stroke-linejoin=\"round\" opacity=\"0.5\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e\n\u003cp class=\"uw-badge-label\"\u003eTracking\u003c\/p\u003e\n\u003cp class=\"uw-badge-value\"\u003eFull Tracking\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ── 6. OBJECTION BREAKERS ── --\u003e\n\u003cdiv class=\"uw-objections\"\u003e\n\u003cdiv class=\"uw-obj-block\"\u003e\n\u003cdiv class=\"uw-obj-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M11 3a8 8 0 100 16A8 8 0 0011 3z\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n          \u003cpath d=\"M8 11l2 2 4-4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-obj-title\"\u003eWon't linen wrinkle too much?\u003c\/p\u003e\n\u003cp class=\"uw-obj-text\"\u003eLinen wrinkles — that's part of the character. On a relaxed cut like this, it adds texture rather than looking sloppy. It's the crumple that makes it look lived-in, not unfinished.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-obj-block\"\u003e\n\u003cdiv class=\"uw-obj-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M4 11h14M14 7l4 4-4 4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" opacity=\"0.5\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-obj-title\"\u003eIs a matching set too much?\u003c\/p\u003e\n\u003cp class=\"uw-obj-text\"\u003eTonal sets in neutral palettes never read as costume. White and sand sit far enough apart to look intentionally coordinated — not matched like a uniform.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-obj-block\"\u003e\n\u003cdiv class=\"uw-obj-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M3 17l4-4 3 3 4-5 4 4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\" opacity=\"0.5\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-obj-title\"\u003eCan I wear the pieces separately?\u003c\/p\u003e\n\u003cp class=\"uw-obj-text\"\u003eThat's the whole point of buying a set. The shirt pulls over dark chinos or navy shorts. The trousers pair with a white tee or a fitted knit. Two pieces, six outfits minimum.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"uw-obj-block\"\u003e\n\u003cdiv class=\"uw-obj-icon\"\u003e\u003csvg width=\"22\" height=\"22\" viewbox=\"0 0 22 22\" fill=\"none\"\u003e\n          \u003cpath d=\"M11 2v4M11 16v4M2 11h4M16 11h4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\" stroke-linecap=\"round\" opacity=\"0.4\"\u003e\u003c\/path\u003e\n          \u003ccircle cx=\"11\" cy=\"11\" r=\"4\" stroke=\"#2D2D2A\" stroke-width=\"1.3\"\u003e\u003c\/circle\u003e\n        \u003c\/svg\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-obj-title\"\u003eIs the relaxed fit flattering?\u003c\/p\u003e\n\u003cp class=\"uw-obj-text\"\u003eThe shirt skims the torso without clinging — loose enough to breathe, structured enough to tuck when you want it sharp. The trousers sit clean at the waist with a straight fall that works on every build.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ── 7. COMPOSITION \/ SPECS ── --\u003e\n\u003cdiv class=\"uw-specs-grid\"\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-specs-col-title\"\u003eShirt\u003c\/p\u003e\n\u003cul class=\"uw-specs-list\"\u003e\n\u003cli\u003e100% loose-weave linen — White\u003c\/li\u003e\n\u003cli\u003eClassic spread collar, button front\u003c\/li\u003e\n\u003cli\u003eRelaxed fit — slightly oversized drape\u003c\/li\u003e\n\u003cli\u003eRoll-sleeve cuff, no button loop\u003c\/li\u003e\n\u003cli\u003eChest patch pocket\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cp class=\"uw-specs-col-title\"\u003eTrousers\u003c\/p\u003e\n\u003cul class=\"uw-specs-list\"\u003e\n\u003cli\u003eLinen-blend stripe weave — Sand\u003c\/li\u003e\n\u003cli\u003eStraight leg, relaxed through the thigh\u003c\/li\u003e\n\u003cli\u003eElasticated drawstring waistband\u003c\/li\u003e\n\u003cli\u003eFunctional side and back pockets\u003c\/li\u003e\n\u003cli\u003eSizes: S \/ M \/ L \/ XL \/ XXL\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- ── 8. CLOSING ── --\u003e\n\u003cdiv class=\"uw-closing\"\u003e\n\u003ch3 class=\"uw-closing-headline\"\u003eTwo pieces.\u003cbr\u003eOne decision. Every time.\u003c\/h3\u003e\n\u003cp class=\"uw-closing-tagline\"\u003eDesigned for daily rotation — limited production runs — no constant restocks.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Celave \u0026 Co","offers":[{"title":"30","offer_id":48606254072025,"sku":"Saint-Linen-44","price":35.0,"currency_code":"GBP","in_stock":true},{"title":"32","offer_id":48606254104793,"sku":"Saint-Linen-45","price":35.0,"currency_code":"GBP","in_stock":true},{"title":"34","offer_id":48606254137561,"sku":"Saint-Linen-46","price":35.0,"currency_code":"GBP","in_stock":true},{"title":"36","offer_id":48606254170329,"sku":"Saint-Linen-47","price":35.0,"currency_code":"GBP","in_stock":true},{"title":"38","offer_id":48606254203097,"sku":"Saint-Linen-48","price":35.0,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0810\/5793\/9673\/files\/Direct_Autoral_Celave___Co_39.png?v=1777820060","url":"https:\/\/celaveandco.com\/products\/saint-linen","provider":"Celave \u0026 Co","version":"1.0","type":"link"}