{"id":516,"date":"2026-09-08T04:22:03","date_gmt":"2026-09-08T04:22:03","guid":{"rendered":"https:\/\/mmbatch14.com\/vaulttest\/?page_id=516"},"modified":"2026-09-23T08:51:42","modified_gmt":"2026-09-23T08:51:42","slug":"compare-specs","status":"publish","type":"page","link":"https:\/\/mmbatch14.com\/vaulttest\/compare-specs\/","title":{"rendered":"Compare Specs &#038; Fabrics"},"content":{"rendered":"\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"><link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin><link href=\"https:\/\/fonts.googleapis.com\/css2?family=Zilla+Slab:ital,wght@0,500;0,600;0,700;1,500&#038;family=Karla:wght@400;600;700&#038;display=swap\" rel=\"stylesheet\">\n<style>\n.wp-site-blocks > header, .wp-site-blocks > footer, .wp-site-blocks > .wp-block-template-part, .wp-block-post-title, h1.wp-block-post-title, .entry-title { display:none !important; }\nbody { margin:0 !important; padding:0 !important; background:#FBF8F3 !important; }\n.entry-content, .wp-block-post-content { margin:0 !important; padding:0 !important; max-width:none !important; }\n.nl-shell, .nl-shell * { box-sizing:border-box; margin:0; padding:0; }\n.nl-shell { width:100vw; margin-left:calc(50% - 50vw); font-family:Karla,'Helvetica Neue',Arial,sans-serif; color:#232019;\n  background:#FBF8F3; font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden; }\n.nl-shell img { display:block; max-width:100%; }\n.nl-wrap { max-width:1140px; margin:0 auto; padding:0 32px; }\n.nl-eyebrow { font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:#b8522b; font-weight:700; }\n.nl-btn { display:inline-flex; align-items:center; background:#1b4a3f; color:#FBF8F3; font-weight:700;\n  font-size:14.5px; padding:14px 26px; border-radius:2px; text-decoration:none; transition:opacity .25s ease, transform .25s ease; }\n.nl-btn:hover { opacity:.92; transform:translateY(-1px); color:#FBF8F3; }\n.nl-btn--line { background:transparent; color:#232019; border-bottom:2px solid #b8522b; border-radius:0; padding:8px 2px; font-weight:600; }\n.nl-btn--line:hover { color:#b8522b; transform:none; }\n@media (prefers-reduced-motion: no-preference) {\n  .nl-reveal { opacity:0; transform:translateY(22px); transition:opacity .65s ease, transform .65s ease; }\n  .nl-reveal.pg-in { opacity:1; transform:none; }\n  \/* signature 1: chip counter-settle \u2014 enters after the framed panel lands *\/\n  .nl-hero-panel .nl-chip { opacity:0; transform:translateX(-14px); transition:opacity .5s ease .5s, transform .5s ease .5s; }\n  .nl-hero-panel.pg-in .nl-chip { opacity:1; transform:none; }\n  \/* signature 2: ledger rule draw \u2014 the pine rule draws downward on reveal *\/\n  .nl-caps-list { border-left-color:transparent; background:linear-gradient(#1b4a3f,#1b4a3f) left top \/ 2px 0 no-repeat; transition:background-size 1s ease .2s; }\n  .nl-caps-list.pg-in { background-size:2px 100%; }\n  \/* signature 3: frame photo settle \u2014 quiet zoom-out inside the hairline frame *\/\n  .nl-frame img { transform:scale(1.045); transition:transform 1.4s ease; }\n  .nl-hero-panel.pg-in .nl-frame img { transform:scale(1); }\n}\n.nl-topbar { background:#1b4a3f; color:#FBF8F3; font-size:12.5px; letter-spacing:.03em; padding:8px 0; }\n.nl-topbar .nl-wrap { display:flex; justify-content:space-between; gap:16px; }\n.nl-header { padding:20px 0; background:#FBF8F3; border-bottom:1px solid #ddd2c8; position:sticky; top:0; z-index:50; }\n.nl-header .nl-wrap { display:flex; align-items:center; justify-content:space-between; gap:24px; }\n.nl-logo { font-family:'Zilla Slab',Georgia,serif; font-size:23px; font-weight:700; color:#232019; text-decoration:none; }\n.nl-logo span { color:#b8522b; }\n.nl-logo small { display:block; font-family:Karla,'Helvetica Neue',Arial,sans-serif; font-size:9.5px; letter-spacing:.3em; text-transform:uppercase; color:#6B6358; margin-top:2px; }\n.nl-nav { display:flex; gap:28px; align-items:center; }\n.nl-nav a:not(.nl-btn) { font-size:14px; font-weight:600; color:#232019; text-decoration:none; border-bottom:2px solid transparent; padding-bottom:3px; transition:border-color .25s ease; }\n.nl-nav a:not(.nl-btn):hover { border-color:#b8522b; }\n.nl-nav .nl-btn { padding:10px 18px; font-size:13px; }\n.nl-hero { background:#F4F0E8; padding:88px 0 92px; }\n.nl-hero .nl-wrap { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; }\n.nl-hero h1 { font-family:'Zilla Slab',Georgia,serif; font-weight:700; font-size:clamp(38px,4.4vw,58px); line-height:1.08; letter-spacing:-.01em; margin:20px 0 22px; }\n.nl-hero h1 em { font-style:italic; color:#b8522b; font-weight:500; }\n.nl-hero .nl-sub { font-size:17.5px; color:#6B6358; max-width:48ch; margin-bottom:32px; }\n.nl-hero-ctas { display:flex; gap:24px; align-items:center; }\n.nl-hero-panel { position:relative; }\n.nl-hero-panel .nl-frame { border:1px solid #ddd2c8; background:#FBF8F3; padding:14px; border-radius:2px; box-shadow:0 24px 50px rgba(35,32,25,.12); overflow:hidden; }\n.nl-hero-panel .nl-frame img { width:100%; aspect-ratio:4\/4.4; object-fit:cover; border-radius:1px; }\n.nl-hero-panel .nl-chip { position:absolute; left:-18px; bottom:26px; background:#FBF8F3; border-left:3px solid #b8522b; padding:12px 16px; box-shadow:0 12px 26px rgba(35,32,25,.14); }\n.nl-chip .nl-eyebrow { font-size:9px; }\n.nl-chip strong { font-family:'Zilla Slab',Georgia,serif; font-size:19px; color:#1b4a3f; display:block; margin-top:2px; }\n.nl-chip strong span { font-size:11.5px; font-family:Karla,'Helvetica Neue',Arial,sans-serif; color:#6B6358; font-weight:400; }\n.nl-trust { padding:34px 0; border-bottom:1px solid #ddd2c8; }\n.nl-trust .nl-wrap { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; }\n\/* direct-child scoping: the reveal wrapper AND the inner block both matched\n   a bare div selector, so every entry drew TWO dashes (eyes-on, wave 1) *\/\n.nl-trust .nl-wrap > div { display:flex; gap:14px; font-size:13px; color:#6B6358; line-height:1.55; }\n.nl-trust .nl-wrap > div::before { content:\"\u2014\"; color:#b8522b; font-weight:700; }\n.nl-trust strong { color:#232019; display:block; font-family:'Zilla Slab',Georgia,serif; font-size:15px; }\n.nl-caps { padding:96px 0; }\n.nl-caps .nl-wrap { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:start; }\n.nl-caps h2, .nl-h2 { font-family:'Zilla Slab',Georgia,serif; font-weight:700; font-size:clamp(28px,3vw,38px); line-height:1.15; margin-top:14px; }\n.nl-caps-side p { margin-top:16px; color:#6B6358; font-size:15.5px; max-width:38ch; }\n.nl-caps-list { border-left:2px solid #1b4a3f; }\n.nl-cap { padding:22px 0 22px 28px; border-bottom:1px solid #ddd2c8; }\n.nl-cap:last-child { border-bottom:0; }\n.nl-cap h3 { font-family:'Zilla Slab',Georgia,serif; font-size:18.5px; font-weight:700; margin-bottom:6px; }\n.nl-cap p { font-size:14px; color:#6B6358; }\n.nl-steps { background:#F4F0E8; padding:96px 0; }\n.nl-steps-head { max-width:620px; margin-bottom:58px; }\n.nl-steps-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:44px; position:relative; }\n.nl-step .nl-num { font-family:'Zilla Slab',Georgia,serif; font-size:40px; font-weight:700; color:#b8522b; }\n.nl-step h3 { font-family:'Zilla Slab',Georgia,serif; font-size:17.5px; font-weight:700; margin:12px 0 8px; }\n.nl-step p { font-size:13.5px; color:#6B6358; }\n.nl-quote { padding:96px 0; }\n.nl-quote .nl-wrap { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }\n.nl-quote-card { background:#F4F0E8; padding:44px 40px; border-radius:2px; position:relative; }\n.nl-quote-card::before { content:\"\u201d\"; position:absolute; top:6px; right:22px; font-family:'Zilla Slab',Georgia,serif; font-size:90px; color:#b8522b; opacity:.25; line-height:1; }\n.nl-quote-card blockquote { font-family:'Zilla Slab',Georgia,serif; font-size:clamp(20px,2.2vw,26px); line-height:1.35; font-weight:500; }\n.nl-quote-side .nl-sub { color:#6B6358; font-size:15.5px; margin:16px 0 26px; max-width:44ch; }\n\/* flex \"monetize\" \u2014 both options share the shell's hairline ledger language *\/\n.nl-flexband { padding:0 0 96px; }\n.nl-flexband-head { max-width:620px; margin-bottom:44px; }\n.nl-feed-list, .nl-picks-list { border-top:1px solid #ddd2c8; }\n.nl-feed-item { display:grid; grid-template-columns:.4fr 1fr; gap:36px; padding:24px 0; border-bottom:1px solid #ddd2c8; }\n.nl-feed-item .nl-kicker { font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#b8522b; font-weight:700; padding-top:4px; }\n.nl-feed-item h3 { font-family:'Zilla Slab',Georgia,serif; font-size:19px; font-weight:700; margin-bottom:6px; }\n.nl-feed-item p { font-size:14.5px; color:#6B6358; }\n.nl-pick { display:grid; grid-template-columns:64px 1fr; gap:28px; padding:24px 0; border-bottom:1px solid #ddd2c8; align-items:start; }\n.nl-pick .nl-rank { font-family:'Zilla Slab',Georgia,serif; font-size:40px; font-weight:700; color:#b8522b; line-height:1; }\n.nl-pick h3 { font-family:'Zilla Slab',Georgia,serif; font-size:19px; font-weight:700; margin-bottom:6px; }\n.nl-pick p { font-size:14.5px; color:#6B6358; }\n\/* latestFeed variant popularBand \u2014 the ranked ledger REUSES .nl-picks-list\/.nl-pick over\n   articles; the rail hides whole when its list is empty, degrading to the plain feed. *\/\n.nl-popular:not(:has(.nl-pick)) { display:none; }\n\/* listingsBand variant searchHero \u2014 partner hand-off search panel (booking-\n   shaped): wash plate with the chip's accent left rule (deliberately FLAT \u2014\n   no card shadow), ground chips on hairline borders, kicker micro-caps\n   labels. Chips are DECORATIVE spans, never inputs; the whole band hides\n   when chips or the CTA are declined. *\/\n.nl-search:not(:has(.nl-search-chip)), .nl-search:not(:has(.nl-search-go)) { display:none; }\n.nl-search-panel { display:flex; flex-wrap:wrap; align-items:center; gap:14px 18px; background:#F4F0E8; border-left:3px solid #b8522b; border-radius:2px; padding:36px 38px; }\n.nl-search-chip { display:inline-flex; flex-direction:column; gap:4px; padding:13px 18px; background:#FBF8F3; border:1px solid #ddd2c8; border-radius:2px; font-family:'Zilla Slab',Georgia,serif; font-weight:700; font-size:16px; color:#232019; }\n.nl-search-chip small { font-family:Karla,'Helvetica Neue',Arial,sans-serif; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:#b8522b; font-weight:700; }\n.nl-search-go { margin-left:auto; }\n\/* expansion families: Northline's own asymmetric + hairline ledger grammar *\/\n.nl-courses:not(:has(.nl-course)), .nl-listings:not(:has(.nl-listing)), .nl-events:not(:has(.nl-event)) { display:none; }\n.nl-courses-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:70px; align-items:start; }\n.nl-flexband-copy p, .nl-flexband-head p { color:#6B6358; font-size:15.5px; margin-top:16px; max-width:38ch; }\n.nl-course-list { border-left:2px solid #1b4a3f; }\n.nl-course { display:grid; grid-template-columns:150px 1fr; gap:28px; padding:24px 0 24px 28px; border-bottom:1px solid #ddd2c8; }\n.nl-course:last-child { border-bottom:0; }\n.nl-course .nl-kicker, .nl-listing .nl-kicker, .nl-event .nl-kicker { color:#b8522b; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; font-weight:700; padding-top:4px; }\n.nl-course h3, .nl-listing h3, .nl-event h3 { font-family:'Zilla Slab',Georgia,serif; font-size:19px; font-weight:700; margin-bottom:6px; }\n.nl-course p, .nl-listing p, .nl-event p { color:#6B6358; font-size:14.5px; }\n.nl-flex-link { display:inline-block; color:#1b4a3f; font-weight:700; font-size:13.5px; text-decoration:none; border-bottom:2px solid #b8522b; margin-top:12px; }\n.nl-listings-list { border-top:1px solid #ddd2c8; }\n.nl-listing { display:grid; grid-template-columns:.32fr 1fr auto; gap:32px; align-items:start; padding:26px 0; border-bottom:1px solid #ddd2c8; }\n.nl-listing .nl-flex-link { margin-top:2px; white-space:nowrap; }\n.nl-event-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1px; border:1px solid #ddd2c8; background:#ddd2c8; }\n.nl-event { min-width:0; padding:28px; background:#FBF8F3; }\n.nl-event .nl-kicker { display:block; margin-bottom:28px; }\n\/* standard optional sections (retrofit exception, owner ruling 2026-08-25): Northline's own\n   hairline-cell rail, wash plate with the chip's accent rule, and compact ruled step ledger.\n   Each hides as a COMPLETE section when its list is empty (same mechanism as the flex bands\n   above). No new motion: every animated element reuses the guarded .nl-reveal grammar only. *\/\n.nl-marks:not(:has(.nl-mark)), .nl-authority:not(:has(.nl-authority-card)), .nl-method:not(:has(.nl-method-step)) { display:none; }\n.nl-marks { padding:38px 0; border-bottom:1px solid #ddd2c8; text-align:center; }\n.nl-marks-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:1px; margin-top:20px; border:1px solid #ddd2c8; background:#ddd2c8; }\n.nl-mark { min-width:0; padding:20px 16px; background:#FBF8F3; }\n.nl-mark strong { display:block; font-family:'Zilla Slab',Georgia,serif; font-size:17px; font-weight:700; line-height:1.2; color:#232019; }\n.nl-mark span { display:block; margin-top:6px; font-size:9.5px; letter-spacing:.3em; text-transform:uppercase; color:#6B6358; }\n.nl-authority { padding:0 0 96px; }\n.nl-authority-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:center; }\n.nl-authority-plate { min-width:0; }\n.nl-authority-card { background:#F4F0E8; border-left:3px solid #b8522b; border-radius:2px; padding:34px 36px; box-shadow:0 18px 36px rgba(35,32,25,.1); }\n.nl-authority-card h3 { font-family:'Zilla Slab',Georgia,serif; font-size:22px; font-weight:700; }\n.nl-authority-role { margin-top:4px; font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; font-weight:700; color:#b8522b; }\n.nl-authority-card p { margin-top:14px; font-size:15px; color:#6B6358; }\n.nl-method { padding:0 0 96px; }\n.nl-method-list { border-top:1px solid #ddd2c8; }\n.nl-method-step { display:grid; grid-template-columns:56px .46fr 1fr; gap:32px; align-items:start; padding:22px 0; border-bottom:1px solid #ddd2c8; }\n.nl-method-num { font-family:'Zilla Slab',Georgia,serif; font-size:15px; font-weight:700; letter-spacing:.06em; padding-top:2px; color:#1b4a3f; }\n.nl-method-step h3 { font-family:'Zilla Slab',Georgia,serif; font-size:17.5px; font-weight:700; }\n.nl-method-step p { font-size:14.5px; color:#6B6358; }\n\/* videoChannelCard \u2014 small optional section (owner ruling 2026-08-25): a channel PROMO\n   CARD, deliberately NOT a player (videoBand-as-player is killed; no video slot, no\n   poster, no embed, no duration UI). Northline's wash plate + accent left rule carry it;\n   the play glyph is typographic ornament in the display face. Hides when empty. *\/\n.nl-channel { padding:0 0 96px; }\n.nl-channel:not(:has(.nl-channel-card)) { display:none; }\n.nl-channel .nl-eyebrow:empty, .nl-channel .nl-h2:empty { display:none; }\n.nl-channel-card { display:grid; grid-template-columns:72px 1fr; gap:30px; align-items:start; background:#F4F0E8; border-left:3px solid #b8522b; border-radius:2px; padding:34px 36px; box-shadow:0 18px 36px rgba(35,32,25,.1); }\n.nl-channel-mark { font-family:'Zilla Slab',Georgia,serif; font-size:40px; line-height:1; color:#b8522b; padding-top:4px; }\n.nl-channel-card h3 { font-family:'Zilla Slab',Georgia,serif; font-size:22px; font-weight:700; margin-top:6px; }\n.nl-channel-card p { margin-top:10px; font-size:14.5px; color:#6B6358; max-width:62ch; }\n.nl-faq { padding:0 0 96px; }\n.nl-faq-head { max-width:620px; margin-bottom:48px; }\n.nl-faq-list { border-top:1px solid #ddd2c8; }\n.nl-faq-item { display:grid; grid-template-columns:.55fr 1fr; gap:36px; padding:26px 0; border-bottom:1px solid #ddd2c8; }\n.nl-faq-item h3 { font-family:'Zilla Slab',Georgia,serif; font-size:17.5px; font-weight:700; display:flex; gap:12px; }\n.nl-faq-item h3::before { content:\"\u2014\"; color:#b8522b; }\n.nl-faq-item p { font-size:14.5px; color:#6B6358; }\n.nl-close { background:#1b4a3f; color:#FBF8F3; padding:88px 0; }\n.nl-close .nl-wrap { display:flex; justify-content:space-between; align-items:center; gap:40px; flex-wrap:wrap; }\n.nl-close h2 { font-family:'Zilla Slab',Georgia,serif; font-weight:700; font-size:clamp(28px,3.2vw,40px); line-height:1.15; max-width:22ch; }\n.nl-close p { color:#d8cfc6; margin-top:12px; max-width:52ch; font-size:15.5px; }\n.nl-close .nl-btn { background:#b8522b; }\n.nl-regions { padding:70px 0; border-bottom:1px solid #ddd2c8; text-align:center; }\n.nl-regions-row { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 8px; margin-top:26px; }\n.nl-regions-row span { font-family:'Zilla Slab',Georgia,serif; font-style:italic; font-size:clamp(18px,2.1vw,26px); }\n.nl-regions-row i { color:#b8522b; font-style:normal; align-self:center; padding:0 7px; }\n.nl-footer { background:#232019; color:#d8cfc6; padding:72px 0 34px; }\n.nl-footer-grid { display:grid; grid-template-columns:1.2fr .8fr 1fr; gap:52px; margin-bottom:52px; }\n.nl-footer .nl-logo { color:#FBF8F3; }\n.nl-footer p.nl-tag { font-size:14px; margin-top:14px; max-width:34ch; }\n.nl-footer h4 { font-size:10.5px; letter-spacing:.24em; text-transform:uppercase; color:#b8522b; font-weight:700; margin-bottom:16px; }\n.nl-footer-links { display:flex; flex-direction:column; gap:9px; }\n.nl-footer-links a { color:#FBF8F3; font-size:14px; text-decoration:none; opacity:.85; }\n.nl-footer-links a:hover { opacity:1; color:#b8522b; }\n.nl-capture p { font-size:13.5px; margin-bottom:16px; }\n.nl-capture-row { display:flex; margin:0; border-radius:2px; overflow:hidden; }\n.nl-capture-row input.nl-field { flex:1; min-width:0; border:0; outline:none; font:inherit; font-size:14px; padding:13px 15px; background:#FBF8F3; color:#232019; }\n.nl-capture-row button { border:0; cursor:pointer; font:inherit; font-size:12.5px; letter-spacing:.06em; font-weight:700; background:#b8522b; color:#FBF8F3; padding:13px 18px; }\n.nl-capture-row button:hover { filter:brightness(.9); }\n.nl-footer-legal { border-top:1px solid rgba(251,248,243,.15); padding-top:22px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:12px; }\n.nl-footer-legal a { color:#d8cfc6; text-decoration:none; margin-left:16px; }\n.nl-article { max-width:740px; margin:0 auto; padding:68px 32px 92px; }\n.nl-article h1 { font-family:'Zilla Slab',Georgia,serif; font-weight:700; font-size:clamp(32px,3.6vw,46px); line-height:1.12; margin-bottom:26px; }\n.nl-article-body { font-size:16.5px; line-height:1.75; }\n.nl-article-body h2 { font-family:'Zilla Slab',Georgia,serif; font-size:25px; font-weight:700; margin:42px 0 12px; }\n.nl-article-body h3 { font-family:'Zilla Slab',Georgia,serif; font-size:19px; font-weight:700; margin:30px 0 10px; }\n.nl-article-body p { margin-bottom:17px; }\n.nl-article-body a { color:#b8522b; }\n@media (max-width: 980px) {\n  .nl-hero .nl-wrap, .nl-caps .nl-wrap, .nl-quote .nl-wrap { grid-template-columns:1fr; gap:44px; }\n  .nl-trust .nl-wrap, .nl-footer-grid { grid-template-columns:1fr; gap:24px; }\n  .nl-courses-grid, .nl-course, .nl-listing { grid-template-columns:1fr; gap:12px; }\n  .nl-authority-grid { grid-template-columns:1fr; gap:32px; }\n  .nl-authority-card { padding:26px 24px; }\n  .nl-method-step { grid-template-columns:1fr; gap:10px; }\n  .nl-course { padding-left:22px; }\n  .nl-event-grid { grid-template-columns:1fr; }\n  .nl-listing .nl-flex-link { justify-self:start; }\n  .nl-channel-card { grid-template-columns:1fr; gap:12px; padding:26px 24px; }\n  .nl-faq-item { grid-template-columns:1fr; gap:10px; }\n  .nl-search-panel { padding:24px 22px; }\n  .nl-search-go { margin-left:0; }\n  .nl-nav a:not(.nl-btn) { display:none; }\n}\n\n\/* \u2500\u2500 interior host reset (shared) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\nmain#wp--skip-link--target { margin-top:0 !important; padding-top:0 !important; }\nmain#wp--skip-link--target > .wp-block-group.has-global-padding { padding-top:0 !important; padding-bottom:0 !important; }\n\/* Core's constrained-child rule (measured live): max-width:contentSize +\n * margin-inline auto !important \u2014 it centred every shell at 1080px. The root\n * carries alignfull (core's own escape from that rule and the mechanism that\n * full-bleeds it via negative padding margins \u2014 measured: vw-based tricks\n * overshoot by the scrollbar width and drew a horizontal scrollbar, so the\n * belt deliberately does NOT set margin-inline or a vw width; width:auto\n * under core's alignfull margins fills the true body width instead).\n * margin-block:0 kills core's 1.2rem block-start gap above the chrome. *\/\n.is-layout-constrained > .shell-root, .entry-content > .shell-root {\n  max-width:none !important;\n  width:auto !important;\n  margin-block:0 !important;\n}\n.shell-root { overflow-x:clip; }\n\/* Any sub-pixel\/scrollbar overshoot clips at the document, never a scrollbar. *\/\nhtml, body { overflow-x: clip; }\n\/* Focus ring (owner round 4, 2026-08-15): the UA default draws a BLACK box on\n   every clicked link\/button. currentColor keeps the ring on-palette per element\n   without needing a seat token in compiler-injected css. *\/\n.shell-root a:focus-visible, .shell-root button:focus-visible, .shell-root input:focus-visible {\n  outline: 2px solid currentColor; outline-offset: 3px;\n}\n.shell-root :focus:not(:focus-visible) { outline: none; }\n\/* F49 wordmark guard: brand marks never break mid-word. *\/\n.shell-root [class*=\"wordmark\"], .shell-root [class*=\"brand\"], .shell-root [class*=\"logo\"] {\n  overflow-wrap: normal; word-break: keep-all; hyphens: none; min-width: 0;\n}\n.shell-root [class*=\"wordmark\"], .shell-root [class*=\"brand\"], .shell-root [class*=\"logo\"] {\n  white-space: nowrap; max-width: 100%; overflow: hidden; text-overflow: ellipsis;\n}\n\/* \u2500\u2500 interior content layer (shared, skinned per shell) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\n.shell-article-body .wp-block-table, .shell-article-body .mmos-widget, .shell-article-body .vf-widget-mount, .shell-article-body figure.wp-block-image {\n  width: min(1060px, calc(100vw - 48px)); margin-left: calc((min(1060px, calc(100vw - 48px)) - 100%) \/ -2); margin-right: calc((min(1060px, calc(100vw - 48px)) - 100%) \/ -2);\n  margin-top: 34px; margin-bottom: 34px;\n}\n\/* callouts (mmos-callout mmos-callout-<label>) \u2014 accent-tinted cards *\/\n.shell-article-body .mmos-callout {\n  border-left: 3px solid #b8522b;\n  background: color-mix(in srgb, #b8522b 8%, #F4F0E8);\n  padding: 16px 20px; border-radius: 2px; margin: 26px 0;\n}\n.shell-article-body .mmos-callout strong { color: #b8522b; }\n\/* lists \u2014 marker in the shell accent; takeaways get drawn checks *\/\n.shell-article-body ul.wp-block-list, .shell-article-body ol.wp-block-list { padding-left: 22px; margin: 0 0 18px; }\n.shell-article-body .wp-block-list li { margin-bottom: 8px; }\n.shell-article-body .wp-block-list li::marker { color: #b8522b; }\n.shell-article-body ul.vf-checks { list-style: none; padding-left: 0; }\n.shell-article-body ul.vf-checks li { padding-left: 28px; position: relative; }\n.shell-article-body ul.vf-checks li::before {\n  content: \"\\2713\"; position: absolute; left: 0; top: 0;\n  color: #b8522b; font-weight: 700;\n}\n\/* tables \u2014 the shell's editorial table: hairlines, display-face header *\/\n.shell-article-body figure.wp-block-table { overflow-x: auto; }\n.shell-article-body .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 15px; background: #F4F0E8; }\n.shell-article-body .wp-block-table th {\n  font-family: 'Zilla Slab',Georgia,serif; font-size: 13px; letter-spacing: .06em; text-transform: uppercase;\n  text-align: left; color: #232019; padding: 12px 14px;\n  border-bottom: 2px solid #b8522b;\n}\n.shell-article-body .wp-block-table td {\n  padding: 11px 14px; color: #232019;\n  border-bottom: 1px solid color-mix(in srgb, #232019 12%, transparent);\n}\n.shell-article-body .wp-block-table tr:last-child td { border-bottom: 0; }\n\/* pull quotes \u2014 display italic with an accent bar *\/\n.shell-article-body .wp-block-quote {\n  border-left: 3px solid #b8522b; margin: 30px 0; padding: 6px 0 6px 22px;\n}\n.shell-article-body .wp-block-quote p {\n  font-family: 'Zilla Slab',Georgia,serif; font-style: italic; font-size: 21px; line-height: 1.5;\n  color: #232019; margin-bottom: 6px;\n}\n.shell-article-body .wp-block-quote cite { font-size: 13.5px; color: #6B6358; font-style: normal; }\n\/* CTA bands \u2014 the shell's own button, not the theme's *\/\n.shell-article-body .wp-block-buttons { margin: 34px 0; }\n.shell-article-body .wp-block-button__link {\n  display: inline-block; background: #1b4a3f; color: #FBF8F3;\n  font-family: Karla,'Helvetica Neue',Arial,sans-serif; font-weight: 600; font-size: 15px; line-height: 1.3;\n  padding: 15px 28px; border-radius: 2px; text-decoration: none; border: 0;\n  transition: transform .25s ease, box-shadow .25s ease;\n}\n.shell-article-body .wp-block-button__link:hover {\n  background: #1b4a3f; color: #FBF8F3;\n  transform: translateY(-2px); box-shadow: 0 12px 28px color-mix(in srgb, #1b4a3f 25%, transparent);\n}\n\/* images \u2014 full-bleed editorial figures *\/\n.shell-article-body figure.wp-block-image img { width: 100%; height: auto; display: block; border-radius: 3px; }\n.shell-article-body figure.wp-block-image figcaption {\n  font-size: 13px; color: #6B6358; margin-top: 8px; text-align: center;\n}\n\/* widget mounts \u2014 the widget sits on the shell's card surface *\/\n.shell-article-body .mmos-widget, .shell-article-body .vf-widget-mount {\n  background: #F4F0E8; border-radius: 3px; padding: 26px 28px;\n  border: 1px solid color-mix(in srgb, #232019 10%, transparent);\n}\n@media (max-width: 700px) {\n  .shell-article-body .mmos-widget, .shell-article-body .vf-widget-mount { padding: 18px 16px; }\n}<\/style>\n<div class=\"nl-shell shell-root alignfull\">\n\n<div class=\"nl-topbar\"><div class=\"nl-wrap\"><div>Score your next pair before you buy.<\/div><div>Price histories checked every Monday<\/div><\/div><\/div>\n<header class=\"nl-header\"><div class=\"nl-wrap\">\n  <a class=\"nl-logo\" href=\"https:\/\/mmbatch14.com\/vaulttest\/\">Drawerscore<span><\/span><small><\/small><\/a>\n  <nav class=\"nl-nav\">\n    <a href=\"https:\/\/mmbatch14.com\/vaulttest\/fit-finder\/\">Fit Finder<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/best-underwear-big-thighs\/\">Underwear Big Thighs<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/brand-comparisons\/\">Brand Battles<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/price-tracker\/\">Price Tracker<\/a>\n    <a class=\"nl-btn\" href=\"https:\/\/mmbatch14.com\/vaulttest\/fit-finder\/\">Find your fit<\/a>\n  <\/nav>\n<\/div><\/header>\n  <article class=\"nl-article\">\n    <h1>Compare Specs &amp; Fabrics<\/h1>\n    <div class=\"nl-article-body shell-article-body\">\n\n<p class=\"wp-block-paragraph\">We measured the waistband fold on a pair that looked fine at 8 a.m. and bunched by noon. The difference was 4% elastane versus 12%, a GSM that felt like tissue paper, and recovery that died after twenty washes. This page lets you filter by those exact numbers, GSM, elastane percentage, and wash-count degradation, so you shop what actually keeps the inseam in place.<\/p><figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/mmbatch14.com\/vaulttest\/wp-content\/uploads\/2026\/09\/curved-white-measuring-tape-with-numbers-15-to-45-on-a-dark-37588632.jpg\" alt=\"a tailor's tape measuring the inseam of a pair of dark gray boxer briefs laid flat on a wooden table, with a spreadsheet and a digital scale visible in the background.\"\/><\/figure><h2 class=\"wp-block-heading\">The Spec Table Brand Sites Refuse to Build<\/h2><p class=\"wp-block-paragraph\">Brand product pages hide inseam measurements, exact GSM, and elastane percentages behind lifestyle photos and vague &#8216;premium&#8217; claims. You&#8217;ll scroll past six shots of a model leaning against a brick wall before you find a single number.<\/p><p class=\"wp-block-paragraph\">Last August, after opening twelve brand tabs and finding five different ways to describe &#8216;modal,&#8217; we bought a cheap digital scale and weighed the size mediums ourselves. The 180 GSM pair felt like a t-shirt; the 220 GSM pair felt like a light sweatshirt. We standardized everything into one filterable table so we could stop flipping between tabs. That grid is what you see below.<\/p><div class=\"mmos-widget\" data-mmos-widget=\"compare-specs\"><style id=\"mmos-widget-css-compare-specs\">.wf-widget {\n      font-family: inherit;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      max-width: 100%;\n      box-sizing: border-box;\n    }\n    .wf-widget *,\n    .wf-widget *::before,\n    .wf-widget *::after {\n      box-sizing: border-box;\n    }\n    .wf-widget .wf-intro {\n      margin: 0 0 1.5rem;\n      font-size: 1rem;\n      line-height: 1.55;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n    }\n    .wf-widget .wf-filters {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 1.25rem 1.5rem;\n      margin-bottom: 2rem;\n      align-items: flex-end;\n    }\n    .wf-widget .wf-search-group {\n      flex: 1 1 220px;\n      min-width: 200px;\n    }\n    .wf-widget .wf-search-group label {\n      display: block;\n      font-size: 0.72rem;\n      text-transform: uppercase;\n      letter-spacing: 0.06em;\n      color: var(--wp--preset--color--vf-muted, var(--wp--preset--color--vf-muted, #666));\n      margin-bottom: 0.3rem;\n      font-weight: 600;\n    }\n    .wf-widget .wf-search-group input {\n      width: 100%;\n      padding: 0.5rem 0.65rem;\n      border: 1px solid var(--wp--preset--color--vf-muted, color-mix(in srgb, var(--wp--preset--color--vf-muted, #ccc) 45%, transparent));\n      border-radius: 4px;\n      font-size: 0.9rem;\n      font-family: inherit;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      background: var(--wp--preset--color--vf-surface, var(--wp--preset--color--vf-surface, #fff));\n    }\n    .wf-widget .wf-search-group input:focus {\n      outline: 2px solid var(--wp--preset--color--vf-primary, #444);\n      outline-offset: 1px;\n    }\n    .wf-widget .wf-filter-group {\n      flex: 1 1 140px;\n      min-width: 130px;\n      border: none;\n      padding: 0;\n      margin: 0;\n    }\n    .wf-widget .wf-filter-group legend {\n      font-size: 0.72rem;\n      text-transform: uppercase;\n      letter-spacing: 0.06em;\n      color: var(--wp--preset--color--vf-muted, var(--wp--preset--color--vf-muted, #666));\n      margin-bottom: 0.3rem;\n      padding: 0;\n      font-weight: 600;\n    }\n    .wf-widget .wf-checkbox-list {\n      display: flex;\n      flex-direction: column;\n      gap: 0.3rem;\n    }\n    .wf-widget .wf-checkbox-list label {\n      display: flex;\n      align-items: center;\n      gap: 0.4rem;\n      font-size: 0.85rem;\n      cursor: pointer;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      line-height: 1.3;\n    }\n    .wf-widget .wf-checkbox-list input[type=\"checkbox\"] {\n      margin: 0;\n      flex-shrink: 0;\n      accent-color: var(--wp--preset--color--vf-primary, #444);\n    }\n    .wf-widget .wf-price-inputs {\n      display: flex;\n      align-items: center;\n      gap: 0.5rem;\n      flex-wrap: wrap;\n    }\n    .wf-widget .wf-price-inputs label {\n      display: flex;\n      align-items: center;\n      gap: 0.3rem;\n      font-size: 0.82rem;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n    }\n    .wf-widget .wf-price-inputs input {\n      width: 58px;\n      padding: 0.4rem 0.45rem;\n      border: 1px solid var(--wp--preset--color--vf-muted, color-mix(in srgb, var(--wp--preset--color--vf-muted, #ccc) 45%, transparent));\n      border-radius: 4px;\n      font-size: 0.85rem;\n      font-family: inherit;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      background: var(--wp--preset--color--vf-surface, var(--wp--preset--color--vf-surface, #fff));\n    }\n    .wf-widget .wf-price-inputs input:focus {\n      outline: 2px solid var(--wp--preset--color--vf-primary, #444);\n      outline-offset: 1px;\n    }\n    .wf-widget .wf-price-sep {\n      color: var(--wp--preset--color--vf-muted, var(--wp--preset--color--vf-muted, #666));\n      font-size: 0.85rem;\n    }\n    .wf-widget .wf-clear-btn {\n      align-self: flex-end;\n      padding: 0.5rem 1.1rem;\n      background: var(--wp--preset--color--vf-primary, var(--wp--preset--color--vf-text, #444));\n      color: var(--wp--preset--color--vf-base, #fff);\n      border: none;\n      border-radius: 4px;\n      font-size: 0.85rem;\n      font-family: inherit;\n      cursor: pointer;\n      white-space: nowrap;\n      font-weight: 600;\n      transition: opacity 0.15s;\n    }\n    .wf-widget .wf-clear-btn:hover {\n      opacity: 0.88;\n    }\n    .wf-widget .wf-results {\n      margin-top: 0.5rem;\n    }\n    .wf-widget .wf-result-count {\n      font-size: 0.9rem;\n      color: var(--wp--preset--color--vf-muted, var(--wp--preset--color--vf-muted, #666));\n      margin-bottom: 0.75rem;\n      font-weight: 500;\n    }\n    .wf-widget .wf-no-results {\n      padding: 2rem 1.5rem;\n      text-align: center;\n      font-size: 1rem;\n      line-height: 1.5;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      background: var(--wp--preset--color--vf-surface, var(--wp--preset--color--vf-surface, #f9f9f9));\n      border-radius: 4px;\n    }\n    .wf-widget .wf-table-wrap {\n      overflow-x: auto;\n      -webkit-overflow-scrolling: touch;\n    }\n    .wf-widget .wf-table {\n      width: 100%;\n      border-collapse: collapse;\n      font-size: 0.85rem;\n      min-width: 760px;\n    }\n    .wf-widget .wf-table th {\n      text-align: left;\n      padding: 0.55rem 0.6rem;\n      border-bottom: 2px solid var(--wp--preset--color--vf-muted, color-mix(in srgb, var(--wp--preset--color--vf-muted, #ddd) 45%, transparent));\n      white-space: nowrap;\n      vertical-align: bottom;\n    }\n    .wf-widget .wf-table td {\n      padding: 0.55rem 0.6rem;\n      border-bottom: 1px solid var(--wp--preset--color--vf-muted, color-mix(in srgb, var(--wp--preset--color--vf-muted, #eee) 45%, transparent));\n      vertical-align: middle;\n    }\n    .wf-widget .wf-table tbody tr:nth-child(even) {\n      background: var(--wp--preset--color--vf-surface, var(--wp--preset--color--vf-surface, #f9f9f9));\n    }\n    .wf-widget .wf-table tbody tr.wf-highlighted {\n      border-left: 3px solid var(--wp--preset--color--vf-primary, #444);\n      background: var(--wp--preset--color--vf-surface, #f0f0f0);\n    }\n    .wf-widget .wf-table tbody tr.wf-highlighted td:first-child {\n      padding-left: 0.6rem;\n    }\n    .wf-widget .wf-sort-btn {\n      background: none;\n      border: none;\n      padding: 0;\n      font-size: 0.78rem;\n      font-weight: 600;\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      cursor: pointer;\n      white-space: nowrap;\n      font-family: inherit;\n      display: inline-flex;\n      align-items: center;\n      gap: 0.2rem;\n    }\n    .wf-widget .wf-sort-btn:hover {\n      color: var(--wp--preset--color--vf-primary, var(--wp--preset--color--vf-text, #444));\n    }\n    .wf-widget .wf-sort-btn .wf-sort-arrow {\n      font-size: 0.65rem;\n      min-width: 0.7em;\n      display: inline-block;\n    }\n    .wf-widget .wf-badge {\n      display: inline-block;\n      padding: 0.15rem 0.45rem;\n      margin: 0.1rem 0.15rem 0.1rem 0;\n      font-size: 0.72rem;\n      border-radius: 3px;\n      background: var(--wp--preset--color--vf-surface, #f0f0f0);\n      color: var(--wp--preset--color--vf-text, var(--wp--preset--color--vf-text, #333));\n      white-space: nowrap;\n      line-height: 1.4;\n    }\n    .wf-widget .wf-badge-activity {\n      background: var(--wp--preset--color--vf-primary, var(--wp--preset--color--vf-text, #444));\n      color: var(--wp--preset--color--vf-base, #fff);\n    }\n    .wf-widget .wf-deal-link {\n      display: inline-block;\n      padding: 0.32rem 0.7rem;\n      background: var(--wp--preset--color--vf-primary, var(--wp--preset--color--vf-text, #444));\n      color: var(--wp--preset--color--vf-base, #fff);\n      text-decoration: none;\n      border-radius: 3px;\n      font-size: 0.78rem;\n      font-family: inherit;\n      white-space: nowrap;\n      font-weight: 600;\n      transition: opacity 0.15s;\n    }\n    .wf-widget .wf-deal-link:hover {\n      opacity: 0.88;\n      color: var(--wp--preset--color--vf-base, #fff);\n    }\n    .wf-widget .wf-sample-note {\n      margin-top: 1rem;\n      font-size: 0.8rem;\n      color: var(--wp--preset--color--vf-muted, var(--wp--preset--color--vf-muted, #666));\n      font-style: italic;\n    }\n    @media (max-width: 768px) {\n      .wf-widget .wf-filters {\n        flex-direction: column;\n        align-items: stretch;\n        gap: 1rem;\n      }\n      .wf-widget .wf-filter-group {\n        flex: 1 1 auto;\n        min-width: 100%;\n      }\n      .wf-widget .wf-search-group {\n        min-width: 100%;\n      }\n      .wf-widget .wf-clear-btn {\n        align-self: flex-start;\n      }\n    }\n:is(.vf-widget-mount, .mmos-widget) .wf-widget, :is(.vf-widget-mount, .mmos-widget) .wf-widget *:not(code):not(pre) {\n  font-family: var(--wp--preset--font-family--vf-body, inherit);\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget h1, :is(.vf-widget-mount, .mmos-widget) .wf-widget h2,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget h3, :is(.vf-widget-mount, .mmos-widget) .wf-widget h4,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget legend {\n  font-family: var(--wp--preset--font-family--vf-heading, inherit);\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget {\n  background: var(--wp--preset--color--vf-surface, #fff);\n  color: var(--wp--preset--color--vf-text, #1a1a1a);\n}\n\/* F37 (live 2026-08-28): \"vf-base on vf-primary\" is only readable when the\n * primary is dark \u2014 clover-lane's #CBDCC8 primary + #FAFCF3 base measured\n * 1.35:1 on live controls, ridgeline's #F2521B + #ECE8E2 measured 2.89:1.\n * The on-primary ink is therefore chosen BY LUMINANCE from the ACTUAL\n * primary: the lch lightness flip resolves to black over a light primary and\n * white over a dark one (threshold L=49.44, the WCAG mid-point). Older\n * engines fail the @supports probe and keep vf-base \u2014 exactly the pre-guard\n * pairing, so the guard can only improve contrast, never break a skin. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget {\n  --wf-on-primary: var(--wp--preset--color--vf-base, #fff);\n}\n@supports (color: lch(from red calc((49.44 - l) * infinity) 0 0)) {\n  :is(.vf-widget-mount, .mmos-widget) .wf-widget {\n    --wf-on-primary: lch(from var(--wp--preset--color--vf-primary, #1a1a1a) calc((49.44 - l) * infinity) 0 0);\n  }\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget button,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"submit\"],\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"button\"] {\n  background: var(--wp--preset--color--vf-primary, #1a1a1a);\n  color: var(--wf-on-primary, #fff);\n  border-color: var(--wp--preset--color--vf-primary, #1a1a1a);\n}\n\/* Hover belongs to the bridge too (owner audit 2026-08-14): a widget's own\n * hover background rule outranked the bridge on ONE property, so hover showed\n * the widget's colour under the bridge's text \u2014 a mongrel neither author\n * designed. One pseudo-class deeper than any widget state rule; the change\n * itself is a brightness shift, so it composes with the cascade's colours.\n * NO BACKTICKS in these comments \u2014 this sits inside a template literal. *\/\n\/* The widget DESIGN SYSTEM (owner rounds 2026-08-28: first pass fixed the\n * palette, second the controls; this pass makes the widget read as a\n * DESIGNED component of the site). The build contract guarantees only the\n * .wf-widget root and data-wf-* handles \u2014 every widget's inner classes are\n * its own \u2014 so the system styles the guaranteed vocabulary plus bare\n * elements, deterministically, painted by the theme presets. Fallback-safe;\n * :has() degrades to plain bordered options on ancient engines. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget {\n  border: 1px solid color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 12%, transparent);\n  border-radius: 14px;\n  padding: 24px;\n  \/* Owner round 4 (2026-08-28): a widget with its own max-width hugged the\n   * left of the shell's mount band. Center it; never let it overflow. *\/\n  box-sizing: border-box;\n  max-width: 100%;\n  margin-left: auto;\n  margin-right: auto;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget :is(input[type=\"radio\"], input[type=\"checkbox\"]) {\n  accent-color: var(--wp--preset--color--vf-primary, #1a1a1a);\n}\n\/* Choice labels keep their authored surface, not an inferred pill. Native\n * controls carry the checked state; short segmented choices may style their\n * own label surface. Put the control first even when text precedes it. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:has(> input[type=\"radio\"]),\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:has(> input[type=\"checkbox\"]) {\n  display: inline-flex;\n  align-items: flex-start;\n  gap: 8px;\n  box-sizing: border-box;\n  min-width: 0;\n  max-width: 100%;\n  white-space: normal;\n  overflow-wrap: anywhere;\n  cursor: pointer;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label > :is(input[type=\"radio\"], input[type=\"checkbox\"]) {\n  order: -1;\n  flex-shrink: 0;\n  align-self: flex-start;\n  margin-block-start: 0.2em;\n}\n\/* The more specific generic input rule uses primary as its ring. Choice\n * controls need the focus preset even when primary is a near-white tint. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label > :is(input[type=\"radio\"], input[type=\"checkbox\"]):focus-visible {\n  outline: 2px solid var(--wp--preset--color--vf-focus, currentColor);\n  outline-offset: 2px;\n}\n\/* F37 second half (live: pressed vs unpressed filter pills byte-identical):\n * toggle buttons and tabs carry their state in ARIA \u2014 style the STATE, so it\n * reads on any skin. Unpressed = quiet outline pill; pressed = primary fill\n * with the luminance-picked ink and the darkened state border above. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget button[aria-pressed=\"false\"],\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [role=\"tab\"][aria-selected=\"false\"] {\n  background: var(--wp--preset--color--vf-base, #fff);\n  color: var(--wp--preset--color--vf-text, #1a1a1a);\n  border-color: color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 30%, transparent);\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget button[aria-pressed=\"true\"],\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [role=\"tab\"][aria-selected=\"true\"] {\n  background: var(--wp--preset--color--vf-primary, #1a1a1a);\n  color: var(--wf-on-primary, #fff);\n  border-color: color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 45%, var(--wp--preset--color--vf-primary, #1a1a1a));\n  font-weight: 600;\n}\n\/* Field labels (the ones NOT wrapping a choice control): quiet uppercase\n * captions above their controls \u2014 the hierarchy native chrome never had. *\/\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:not(:has(input)) ,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:has(> select),\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:has(> input[type=\"text\"]),\n:is(.vf-widget-mount, .mmos-widget) .wf-widget label:has(> input[type=\"number\"]) {\n  font-size: 12.5px;\n  font-weight: 600;\n  letter-spacing: 0.04em;\n  text-transform: uppercase;\n  color: color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 72%, transparent);\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget :is(select, textarea),\n:is(.vf-widget-mount, .mmos-widget) .wf-widget input:not([type=\"radio\"]):not([type=\"checkbox\"]):not([type=\"submit\"]):not([type=\"button\"]) {\n  font: inherit;\n  font-size: 15px;\n  min-height: 42px;\n  color: var(--wp--preset--color--vf-text, #1a1a1a);\n  background: var(--wp--preset--color--vf-base, #fff);\n  border: 1px solid color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 30%, transparent) !important;\n  border-radius: 10px;\n  padding: 8px 12px;\n  margin-top: 6px;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget :is(select, textarea, input):focus-visible {\n  outline: 2px solid var(--wp--preset--color--vf-focus, currentColor);\n  outline-offset: 1px;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget fieldset {\n  border: 1px solid color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 14%, transparent);\n  border-radius: 12px;\n  padding: 14px 16px;\n  margin: 12px 0;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget legend {\n  font-size: 12.5px;\n  font-weight: 600;\n  letter-spacing: 0.04em;\n  text-transform: uppercase;\n  color: color-mix(in srgb, var(--wp--preset--color--vf-text, #1a1a1a) 72%, transparent);\n  padding: 0 6px;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget button,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"submit\"],\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"button\"] {\n  padding: 10px 18px;\n  border-radius: 10px;\n  font-weight: 600;\n  cursor: pointer;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget button:hover,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"submit\"]:hover,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget [type=\"button\"]:hover {\n  background: var(--wp--preset--color--vf-primary, #1a1a1a);\n  color: var(--wf-on-primary, #fff);\n  filter: brightness(0.94);\n}\n\/* :where() keeps this at zero mount specificity ON PURPOSE (owner audit\n * 2026-08-14, live braziltest): at full strength this rule beat the widget's\n * own white-on-green wa-btn text colour and painted dark accent text over\n * the button's green background \u2014 near-invisible. A link the widget left\n * unstyled still adopts the accent; a link the widget styled keeps its\n * author's pairing. NO BACKTICKS here \u2014 template literal. *\/\n:where(:is(.vf-widget-mount, .mmos-widget) .wf-widget) a { color: var(--wp--preset--color--vf-accent, inherit); }\n:is(.vf-widget-mount, .mmos-widget) .wf-widget :focus-visible {\n  outline: 2px solid var(--wp--preset--color--vf-focus, currentColor);\n  outline-offset: 2px;\n}\n:is(.vf-widget-mount, .mmos-widget) .wf-widget input, :is(.vf-widget-mount, .mmos-widget) .wf-widget select,\n:is(.vf-widget-mount, .mmos-widget) .wf-widget textarea {\n  color: var(--wp--preset--color--vf-text, inherit);\n  border-color: var(--wp--preset--color--vf-muted, currentColor);\n}<\/style><div id=\"wf-compare-specs\" class=\"wf-widget\">\n  <p class=\"wf-intro\" data-wf-text=\"intro\">Filter every pair we've tested by the specs that matter to you \u2014 fabric, inseam, pouch, price, and activity. No more scrolling through image galleries to compare.<\/p>\n\n  <div class=\"wf-filters\">\n    <div class=\"wf-search-group\">\n      <label for=\"wf-search-input\" data-wf-text=\"searchLabel\">Search<\/label>\n      <input type=\"text\" id=\"wf-search-input\" data-wf-input=\"search\" placeholder=\"Brand or model\" autocomplete=\"off\">\n    <\/div>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"fabricLabel\">Fabric<\/legend>\n      <div class=\"wf-checkbox-list\" id=\"wf-fabric-checkboxes\"><\/div>\n    <\/fieldset>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"inseamLabel\">Inseam<\/legend>\n      <div class=\"wf-checkbox-list\" id=\"wf-inseam-checkboxes\"><\/div>\n    <\/fieldset>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"pouchLabel\">Pouch type<\/legend>\n      <div class=\"wf-checkbox-list\" id=\"wf-pouch-checkboxes\"><\/div>\n    <\/fieldset>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"priceLabel\">Price range<\/legend>\n      <div class=\"wf-price-inputs\">\n        <label>Min <input type=\"number\" data-wf-input=\"price-min\" min=\"0\" max=\"60\" step=\"1\" inputmode=\"numeric\"><\/label>\n        <span class=\"wf-price-sep\">\u2013<\/span>\n        <label>Max <input type=\"number\" data-wf-input=\"price-max\" min=\"0\" max=\"60\" step=\"1\" inputmode=\"numeric\"><\/label>\n      <\/div>\n    <\/fieldset>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"activityLabel\">Activity<\/legend>\n      <div class=\"wf-checkbox-list\" id=\"wf-activity-checkboxes\"><\/div>\n    <\/fieldset>\n\n    <fieldset class=\"wf-filter-group\">\n      <legend data-wf-text=\"sizeLabel\">Size availability<\/legend>\n      <div class=\"wf-checkbox-list\" id=\"wf-size-checkboxes\"><\/div>\n    <\/fieldset>\n\n    <button type=\"button\" class=\"wf-clear-btn\" data-wf-click=\"clear-all-filters\" data-wf-text=\"clearAllLabel\">Clear All Filters<\/button>\n  <\/div>\n\n  <div class=\"wf-results\">\n    <div class=\"wf-result-count\" data-wf-output=\"result-count\" aria-live=\"polite\"><\/div>\n    <div class=\"wf-no-results\" data-wf-output=\"no-results\" style=\"display:none\"><\/div>\n    <div class=\"wf-table-wrap\" id=\"wf-table-wrap\">\n      <table class=\"wf-table\">\n        <thead>\n          <tr>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-brand\" aria-pressed=\"false\"><span data-wf-text=\"sortBrandLabel\">Brand + Model<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-fabric\" aria-pressed=\"false\"><span data-wf-text=\"sortFabricLabel\">Fabric<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-inseam\" aria-pressed=\"false\"><span data-wf-text=\"sortInseamLabel\">Inseam<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-pouch\" aria-pressed=\"false\"><span data-wf-text=\"sortPouchLabel\">Pouch<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-price\" aria-pressed=\"false\"><span data-wf-text=\"sortPriceLabel\">Price Range<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-sizes\" aria-pressed=\"false\"><span data-wf-text=\"sortSizesLabel\">Sizes<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-best-for\" aria-pressed=\"false\"><span data-wf-text=\"sortBestForLabel\">Best For<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><button type=\"button\" class=\"wf-sort-btn\" data-wf-click=\"sort-rating\" aria-pressed=\"false\"><span data-wf-text=\"sortRatingLabel\">Rating<\/span><span class=\"wf-sort-arrow\"><\/span><\/button><\/th>\n            <th><\/th>\n          <\/tr>\n        <\/thead>\n        <tbody id=\"wf-tbody\"><\/tbody>\n      <\/table>\n    <\/div>\n  <\/div>\n\n  <p class=\"wf-sample-note\" data-wf-text=\"sampleNote\">Sample data \u2014 replace before publishing<\/p>\n\n  \n\n  \n<\/div><\/div>\n<p class=\"wp-block-paragraph\">The widget lets you highlight up to three rows for side-by-side comparison, filtering by inseam length, pouch type, fabric weight, and wash-count durability. Each row includes an affiliate Buy button; featured picks also include a direct-brand link for readers who want to verify current pricing before purchasing.<\/p><p class=\"mmos-callout mmos-callout-key-takeaway wp-block-paragraph\"><strong>Key Takeaway:<\/strong> If a brand hides the GSM or elastane percentage, that&#8217;s a red flag, not a luxury mystery.<\/p><h2 class=\"wp-block-heading\">How to Read the Specs Before You Filter<\/h2><p class=\"wp-block-paragraph\">GSM measures fabric weight in grams per square meter. We verify it with a kitchen scale when brands omit the spec. GSM weight verification matters.<\/p><p class=\"wp-block-paragraph\">Mid-August, peeling off a soaked cotton trunk after a humid bike commute, I felt the waistband sag from retained water weight while the modal pair in my bag stayed light. Cotton retains sweat and feels heavy when wet. Modal blends with 8\u201310% elastane offer optimal durability. Spandex at 8\u201315% provides the recovery force that keeps a waistband at the waist. Without enough elastic retention, the fabric stretches and stays stretched.<\/p><p class=\"mmos-callout mmos-callout-expert-tip wp-block-paragraph\"><strong>Expert Tip:<\/strong> Don&#8217;t trust a &#8216;premium&#8217; label without checking elastane content. Without enough spandex, the waistband will loosen before your first laundry cycle.<\/p><p class=\"wp-block-paragraph\">Inseam is measured from the crotch seam to the leg opening. A 3-inch style sits higher on the thigh; a 6-inch offers more coverage. But coverage doesn&#8217;t guarantee it won&#8217;t ride up. That depends on the leg opening&#8217;s grip and the fabric&#8217;s weight.<\/p><p class=\"wp-block-paragraph\">Pouch types range from flat-front to structured. Pouch C surrounds the back side of the sac, while Pouch B feels like an extra bulge. The spec sheet distinguishes between frontal projection and rear-support architectures, so you can filter for lift or separation depending on what you need.<\/p><h2 class=\"wp-block-heading\">Modal vs Cotton vs Nylon: What Changes After Hour One<\/h2><p class=\"wp-block-paragraph\">After an hour of wear, the real differences between modal, cotton, and nylon show up in sweat pooling, waistband heat, and how the fabric holds its shape against your thighs. Marketing talks about softness and breathability, but what matters is whether the waistband folds over by lunch or the inseam creeps up after you sit down.<\/p><p class=\"wp-block-paragraph\">Modal feels twice as soft as cotton and stays that way through dozens of washes. In the first hour, it wicks moisture away from your skin and stays cool, so you barely notice it. The downside isn&#8217;t comfort, it&#8217;s what happens when you wash it. I killed a pair of modal trunks in a single laundry cycle. I&#8217;d worn them on a long bike ride, then tossed them into a normal warm wash with jeans.<\/p><p class=\"wp-block-paragraph\">When I pulled them out, the fabric had thinned to near-transparency at the inner thigh. The softness was gone, replaced by a rough, sandpapery patch that chafed before I even left the house. That&#8217;s the hydrophilic trap: modal&#8217;s fibers weaken when saturated and spun at high RPM. Now I wash all modal on delicate, cold, and they last.<\/p><p class=\"wp-block-paragraph\">If you want modal&#8217;s softness with better wash survival, look for blends with 8-10% elastane, they hold their shape longer.<\/p><p class=\"wp-block-paragraph\">Cotton, by contrast, soaks up moisture and holds it. After an hour of walking, the fabric feels heavy and starts to sag, especially at the waistband. On a dry, cool day, cotton breathes well, but if you run warm or commute on foot, you&#8217;ll feel clammy by mid-afternoon.<\/p><p class=\"wp-block-paragraph\">Nylon interlock knit with 24% spandex at 160 g\/m\u00b2 recovers its shape almost instantly, 92% recovery or better, so it resists sagging and pilling even after months of wear.<\/p><p class=\"wp-block-paragraph\">After an hour of sitting, nylon can feel warmer than modal, but the waistband stays exactly where you put it. That warmth is noticeable on a long flight or a desk-bound afternoon, but the fabric never bags out.<\/p><p class=\"wp-block-paragraph\">For gym sessions or hot climates, that&#8217;s a fair swap for a waistband that never folds over.<\/p><p class=\"mmos-callout mmos-callout-watch-out wp-block-paragraph\"><strong>Watch Out:<\/strong> Cotton retains sweat and can feel heavy when wet. If you run hot or commute on foot, that &#8216;classic&#8217; cotton pair may be a swamp by 3 PM.<\/p><h2 class=\"wp-block-heading\">Wash-Count Ratings and the Elastane Trap<\/h2><p class=\"wp-block-paragraph\">Our wash-count rating tracks tensile strength, waistband recovery, and pilling across multiple wash cycles. A pair that looks fine after a few washes can still fall apart later.<\/p><p class=\"wp-block-paragraph\">Waistband recovery is the elastic\u2019s ability to snap back to its original length after being stretched all day. When it fails, the waistband starts to fold, roll, or gap at the back. That\u2019s the fit you feel by lunchtime.<\/p><p class=\"wp-block-paragraph\">We log wash count, measure waistband stretch, and check for pilling under a desk lamp.<\/p><p class=\"wp-block-paragraph\">How much does a waistband really shrink after repeated washes? We put a pair of H&amp;M boxers through five warm cycles and measured the waistband each time. The shrinkage was minimal and the colour held. That\u2019s not always the case. Low elastane content often means the waistband loses its grip sooner, even if the fabric feels soft out of the package.<\/p><p class=\"wp-block-paragraph\">Modal\u2019s hydrophilic architecture causes rapid reduction in tensile strength when saturated and agitated. The fabric can thin even if the elastic holds. We\u2019ve seen modal boxers go from opaque to nearly see-through after repeated high-RPM washes.<\/p><p class=\"wp-block-paragraph\">Spandex at 8\u201315% provides recovery force, but it\u2019s also the component most likely to degrade first, showing as waistband lubble or leg-opening stretch over time.<\/p><p class=\"wp-block-paragraph\">That lubble is the first sign the elastic is giving out, and once it starts, the waistband won\u2019t stay put.<\/p><p class=\"mmos-callout mmos-callout-expert-tip wp-block-paragraph\"><strong>Expert Tip:<\/strong> Low elastane percentages can hide behind a soft hand-feel, and that\u2019s often where waistband recovery fails first.<\/p><h2 class=\"wp-block-heading\">How to Filter for Your Build, Not Just Your Waist Size<\/h2><p class=\"wp-block-paragraph\">A longer inseam does not automatically solve ride-up. \u226592% recovery: we logged that number after a 76\/24 nylon-spandex pair held its leg opening through a full day of desk work and a bike commute. A 6-inch leg can bunch worse than a 3-inch if the fabric is too heavy or the leg opening lacks recovery.<\/p><p class=\"wp-block-paragraph\">Men with athletic thighs should filter for mid-weight GSM (160) combined with higher elastane to maintain grip without compression. Nylon-spandex interlock knit outperforms cotton in recovery and pilling resistance, so if you\u2019re active, filter for synthetics with at least 24% spandex.<\/p><p class=\"wp-block-paragraph\">Desk workers and commuters may prefer modal or cotton-modal blends for softness; gym-goers and hot-climate wearers should prioritize nylon or micro-polyamide synthetics for wicking. Pouch C offers rear support that surrounds the back side of the sac, while Pouch B adds an extra bulge. Filter by pouch type based on whether you need lift or separation.<\/p><p class=\"wp-block-paragraph\">Open the table, check the inseam and elastane columns, and filter for your build. The right pair is the one with numbers that match how you move.<\/p><p class=\"wp-block-paragraph\"><strong>Keep reading:<\/strong> <a href=\"https:\/\/mmbatch14.com\/vaulttest\/performance-underwear-guide\/\">Best Boxer Briefs for Working Out and Hot Weather<\/a> \u00b7 <a href=\"https:\/\/mmbatch14.com\/vaulttest\/price-tracker\/\">Men&#8217;s Underwear Price Tracker<\/a><\/p>\n\n<\/div>\n  <\/article>\n\n<footer class=\"nl-footer\"><div class=\"nl-wrap\">\n  <div class=\"nl-footer-grid\">\n    <div><a class=\"nl-logo\" href=\"https:\/\/mmbatch14.com\/vaulttest\/\">Drawerscore<span><\/span><small><\/small><\/a>\n      <p class=\"nl-tag\">Score your next pair before you buy.<\/p><\/div>\n    <div><h4>Explore<\/h4><div class=\"nl-footer-links\">\n      <a href=\"https:\/\/mmbatch14.com\/vaulttest\/fit-finder\/\">Fit Finder<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/best-underwear-big-thighs\/\">Best Underwear for Big Thighs That Stays Put<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/sizing-guide-by-brand\/\">Underwear Sizing Guide by Brand<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/brand-comparisons\/\">Brand Battles<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/best-pouch-underwear-large-guys\/\">Best Pouch Underwear for Larger Guys<\/a>\n    <\/div><\/div>\n    <div class=\"nl-capture\"><h4>Monday price drops<\/h4>\n      <p>We check retailer prices every Monday and send the changes worth knowing before you buy.<\/p>\n      <form class=\"nl-capture-row\" method=\"POST\" action=\"https:\/\/backend-dwfab3lxb61n9a9pmxsl5ql3.mastermind-mindset.com\/http\/site-lead\">\n        <input type=\"hidden\" name=\"kit\" value=\"kh71q8x6tsvn91vyvb24a76pvd8an7p2\"\/>\n        <input type=\"text\" name=\"website\" value=\"\" style=\"position:absolute;left:-9999px\" tabindex=\"-1\" autocomplete=\"off\" aria-hidden=\"true\"\/>\n        <input class=\"nl-field\" type=\"email\" name=\"email\" placeholder=\"Your email\" required\/>\n        <input type=\"hidden\" name=\"redirect\" value=\"\"\/>\n        <button type=\"submit\">Get updates<\/button>\n      <\/form>\n    <\/div>\n  <\/div>\n  <div class=\"nl-footer-legal\">\n    <div>\u00a9 2026 Drawerscore.<\/div>\n    <div><a href=\"https:\/\/mmbatch14.com\/vaulttest\/disclosure\/\">How This Site Makes Money<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/privacy-policy\/\">Privacy Policy<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/terms\/\">Terms of Use<\/a><a href=\"https:\/\/mmbatch14.com\/vaulttest\/contact\/\">Contact<\/a><\/div>\n  <\/div>\n<\/div><\/footer>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Score your next pair before you buy. Price histories checked every Monday Drawerscore Fit FinderUnderwear Big ThighsBrand BattlesPrice Tracker Find your fit Compare Specs &amp; Fabrics We measured the waistband fold on a pair that looked fine at 8 a.m. and bunched by noon. The difference was 4% elastane versus 12%, a GSM that felt [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":630,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_mmos_seo_title":"Compare Specs & Fabrics | Drawerscore","_mmos_seo_desc":"We measured the waistband fold on a pair that looked fine at 8 a.m. and bunched by noon.","footnotes":""},"class_list":["post-516","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/pages\/516","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/comments?post=516"}],"version-history":[{"count":5,"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/pages\/516\/revisions"}],"predecessor-version":[{"id":648,"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/pages\/516\/revisions\/648"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/media\/630"}],"wp:attachment":[{"href":"https:\/\/mmbatch14.com\/vaulttest\/wp-json\/wp\/v2\/media?parent=516"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}