.blog-page,
.journal-article { background: #f5efe9; color: #241a1c; }

.blog-eyebrow { color: #9d6c5d; font-size: .64rem; font-weight: 700; letter-spacing: .24em; margin: 0 0 18px; text-transform: uppercase; }
.blog-hero { background: #171717; color: #fff; padding: 88px 0 82px; }
.blog-hero-inner { align-items: end; display: grid; gap: 80px; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); }
.blog-hero h1 { color: #fff; font-family: var(--font-heading); font-size: clamp(4.2rem, 8vw, 7.5rem); font-weight: 400; letter-spacing: -.035em; line-height: .86; margin: 0; }
.blog-hero-note { border-left: 1px solid #514a47; padding-left: 30px; }
.blog-hero-note span { color: #d5b28e; font-size: .62rem; font-weight: 700; letter-spacing: .2em; }
.blog-hero-note p { color: #aaa29e; font-size: .8rem; line-height: 1.8; margin: 14px 0 0; max-width: 420px; }
.blog-topics { background: #211f1e; border-top: 1px solid #383432; color: #c1b9b4; }
.blog-topics .container { display: flex; gap: 0; justify-content: space-between; }
.blog-topics span { border-left: 1px solid #383432; flex: 1; font-size: .6rem; font-weight: 600; letter-spacing: .16em; padding: 18px 22px; text-align: center; }
.blog-topics span:last-child { border-right: 1px solid #383432; }

.blog-feed { padding: 88px 0 110px; }
.blog-section-heading { align-items: end; border-bottom: 1px solid #d4c7bd; display: flex; justify-content: space-between; margin-bottom: 42px; padding-bottom: 24px; }
.blog-section-heading h2 { font-family: var(--font-heading); font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 400; line-height: 1; margin: 0; }
.blog-section-heading > span { color: #776b67; font-size: .6rem; font-weight: 700; letter-spacing: .16em; }
.blog-grid { display: grid; gap: 62px 28px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.blog-card { border-top: 1px solid #d5c8bf; padding-top: 18px; }
.blog-card-featured { align-items: stretch; background: #fff; border: 1px solid #ded2c9; display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr); padding: 0; }
.blog-card-image { aspect-ratio: 16 / 10; background: #ebe1d8; display: block; overflow: hidden; }
.blog-card-featured .blog-card-image { aspect-ratio: auto; min-height: 520px; }
.blog-card-image img { display: block; height: 100%; object-fit: contain; transition: transform .5s ease; width: 100%; }
.blog-card-image:hover img { transform: scale(1.025); }
.blog-card-copy { padding-top: 22px; }
.blog-card-featured .blog-card-copy { align-self: center; padding: 52px; }
.blog-card-meta { color: #776c67; display: flex; flex-wrap: wrap; font-size: .6rem; font-weight: 600; gap: 12px; letter-spacing: .14em; margin-bottom: 20px; text-transform: uppercase; }
.blog-card-meta span::after { content: '·'; margin-left: 12px; }
.blog-card h2 { font-family: var(--font-heading); font-size: clamp(1.7rem, 2.7vw, 2.75rem); font-weight: 400; line-height: 1.16; margin: 0 0 18px; }
.blog-card:not(.blog-card-featured) h2 { font-size: clamp(1.55rem, 2.2vw, 2.05rem); }
.blog-card h2 a { color: #241a1c; }
.blog-card-copy > p { color: #6c625e; font-size: .82rem; line-height: 1.8; margin: 0 0 24px; }
.blog-read-more { border-bottom: 1px solid currentColor; color: #642334; display: inline-block; font-size: .64rem; font-weight: 700; letter-spacing: .14em; padding-bottom: 6px; text-transform: uppercase; }
.blog-read-more span { margin-left: 14px; }
.blog-empty { background: #fff; border: 1px solid #ded2c9; margin: 0 auto; max-width: 760px; padding: 70px 48px; text-align: center; }
.blog-feed .navigation.pagination { margin-top: 70px; text-align: center; }
.blog-feed .nav-links { align-items: center; display: flex; gap: 8px; justify-content: center; }
.blog-feed .page-numbers { align-items: center; border: 1px solid #d4c7bd; color: #241a1c; display: inline-flex; font-size: .7rem; justify-content: center; min-height: 40px; min-width: 40px; padding: 8px 12px; }
.blog-feed .page-numbers.current { background: #541727; border-color: #541727; color: #fff; }

.journal-article-hero { background: #171717; color: #fff; padding: 82px 0 150px; text-align: center; }
.journal-article-hero__inner { max-width: 980px; }
.journal-article-meta { color: #d1ae8a; display: flex; font-size: .62rem; font-weight: 700; gap: 14px; justify-content: center; letter-spacing: .18em; margin-bottom: 30px; text-transform: uppercase; }
.journal-article-meta span::after { content: '·'; margin-left: 14px; }
.journal-article-hero h1 { color: #fff; font-family: var(--font-heading); font-size: clamp(3.1rem, 6.2vw, 6rem); font-weight: 400; letter-spacing: -.025em; line-height: 1.02; margin: 0 auto 28px; }
.journal-article-hero__inner > p { color: #b8b0ac; font-size: .95rem; line-height: 1.8; margin: 0 auto; max-width: 720px; }
.journal-article-image { background: #e9ded5; margin-top: -86px; max-width: 1180px; padding: 0; }
.journal-article-image img { display: block; max-height: 760px; object-fit: contain; width: 100%; }
.journal-article-layout { display: grid; gap: 90px; grid-template-columns: 180px minmax(0, 700px); justify-content: center; padding-bottom: 100px; padding-top: 85px; }
.journal-article-aside { border-top: 1px solid #cfc0b6; color: #786d68; font-size: .6rem; letter-spacing: .13em; padding-top: 20px; text-transform: uppercase; }
.journal-article-aside span { color: #57202d; display: block; font-weight: 700; margin-bottom: 18px; }
.journal-article-aside p { margin: 0 0 28px; }
.journal-article-aside a { color: #3b3032; font-weight: 700; }
.journal-article-content { color: #514846; font-family: var(--font-body); font-size: .96rem; line-height: 1.95; }
.journal-article-content > p:first-child::first-letter { color: #67293a; float: left; font-family: var(--font-heading); font-size: 5rem; line-height: .78; margin: 12px 12px 0 0; }
.journal-article-content h2 { color: #241a1c; font-family: var(--font-heading); font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 400; line-height: 1.15; margin: 58px 0 22px; }
.journal-article-content h3 { color: #322629; font-family: var(--font-heading); font-size: 1.45rem; font-weight: 400; margin: 35px 0 14px; }
.journal-article-content p { margin: 0 0 24px; }
.journal-article-content ul { margin: 0 0 28px; padding-left: 20px; }
.journal-article-content li { margin-bottom: 10px; }
.journal-article-content a { color: #67293a; text-decoration: underline; text-underline-offset: 3px; }
.journal-product-edit { background: #fff; border-left: 3px solid #67293a; margin: 45px 0; padding: 28px 32px; }
.journal-product-edit span { color: #9d6c5d; display: block; font-size: .6rem; font-weight: 700; letter-spacing: .17em; margin-bottom: 10px; text-transform: uppercase; }
.journal-product-edit h3 { font-size: 1.55rem; margin: 0 0 10px; }
.journal-product-edit p { font-size: .85rem; margin-bottom: 14px; }
.journal-product-edit a { font-size: .65rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.journal-article-nav { border-bottom: 1px solid #cfc0b6; border-top: 1px solid #cfc0b6; display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 100px; padding: 28px 0; }
.journal-article-nav > div:last-child { text-align: right; }
.journal-article-nav a { color: #2e2224; font-family: var(--font-heading); font-size: 1.15rem; }
.journal-article-nav a span { color: #8b7e78; display: block; font-family: var(--font-body); font-size: .56rem; font-weight: 700; letter-spacing: .16em; margin-bottom: 8px; }

@media (max-width: 900px) {
    .blog-hero-inner { gap: 45px; grid-template-columns: 1fr; }
    .blog-hero-note { max-width: 520px; }
    .blog-card-featured { grid-template-columns: 1fr 1fr; }
    .blog-card-featured .blog-card-copy { padding: 36px; }
    .journal-article-layout { gap: 50px; grid-template-columns: 150px minmax(0, 1fr); }
}

@media (max-width: 680px) {
    .blog-hero { padding: 64px 0 58px; }
    .blog-hero h1 { font-size: clamp(4rem, 22vw, 6rem); }
    .blog-topics .container { overflow-x: auto; padding-left: 0; padding-right: 0; }
    .blog-topics span { flex: 0 0 auto; min-width: 155px; }
    .blog-feed { padding: 58px 0 72px; }
    .blog-section-heading { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 30px; }
    .blog-grid { gap: 48px; grid-template-columns: 1fr; }
    .blog-card-featured { display: block; }
    .blog-card-featured .blog-card-image { min-height: 0; }
    .blog-card-featured .blog-card-copy { padding: 30px 24px 34px; }
    .journal-article-hero { padding: 60px 0 108px; }
    .journal-article-hero h1 { font-size: clamp(2.8rem, 13.5vw, 4.2rem); overflow-wrap: anywhere; }
    .journal-article-image { margin-left: 15px; margin-right: 15px; margin-top: -62px; width: auto; }
    .journal-article-layout { display: block; padding-bottom: 68px; padding-top: 58px; }
    .journal-article-aside { margin-bottom: 42px; }
    .journal-article-content { font-size: .93rem; line-height: 1.85; }
    .journal-product-edit { padding: 24px 22px; }
    .journal-article-nav { gap: 30px; grid-template-columns: 1fr; margin-bottom: 70px; }
    .journal-article-nav > div:last-child { text-align: left; }
}

/* Conversion-led SEO story pages */
.seo-story-page { background: #fbf7f3; color: #38262a; }
.seo-story-page > p:empty { display: none; }
.seo-story-page img { display: block; height: auto; max-width: 100%; }
.seo-story-hero { background: linear-gradient(105deg, #f8ece4 0%, #f5dfd3 48%, #efd3c3 100%); overflow: hidden; }
.seo-story-hero__inner { display: grid; grid-template-columns: minmax(0, .95fr) minmax(460px, 1.05fr); margin: 0 auto; max-width: 1500px; min-height: 650px; }
.seo-story-hero__copy { align-self: center; padding: 72px 55px 72px max(45px, calc((100vw - 1420px) / 2)); position: relative; z-index: 2; }
.seo-story-kicker { color: #b56575; display: block; font-size: .66rem; font-weight: 700; letter-spacing: .19em; margin-bottom: 22px; text-transform: uppercase; }
.seo-story-hero h1 { color: #642f3a; font-family: var(--font-heading); font-size: clamp(3.2rem, 4.8vw, 5.2rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.04; margin: 0 0 25px; }
.seo-story-hero__lead { color: #5d4b4e; font-size: .96rem; line-height: 1.75; margin: 0 0 30px; max-width: 570px; }
.seo-story-benefits { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 32px 0 36px; }
.seo-story-benefits div { border-top: 1px solid rgba(110, 48, 63, .28); padding-top: 14px; }
.seo-story-benefits strong { color: #a94f65; display: block; font-family: var(--font-heading); font-size: 1.2rem; font-weight: 400; margin-bottom: 5px; }
.seo-story-benefits span { color: #635356; display: block; font-size: .61rem; font-weight: 600; line-height: 1.45; text-transform: uppercase; }
.seo-story-button { background: #642438; color: #fff !important; display: inline-flex; font-size: .66rem; font-weight: 700; gap: 24px; letter-spacing: .14em; padding: 17px 22px; text-decoration: none !important; text-transform: uppercase; }
.seo-story-button:hover { background: #36131d; }
.seo-story-hero__media { align-self: stretch; background: #ead4c8; min-width: 0; }
.seo-story-hero__media img { height: 100%; object-fit: contain; width: 100%; }

.seo-story-section { padding: 88px 0; }
.seo-story-section--white { background: #fff; }
.seo-story-section--blush { background: #f7e7e4; }
.seo-story-container { margin: 0 auto; max-width: 1320px; padding: 0 35px; }
.seo-story-heading { align-items: end; display: flex; gap: 45px; justify-content: space-between; margin-bottom: 44px; }
.seo-story-heading > div { max-width: 720px; }
.seo-story-heading h2 { color: #5f2b36; font-family: var(--font-heading); font-size: clamp(2.5rem, 4vw, 4rem); font-weight: 400; line-height: 1.07; margin: 0; }
.seo-story-heading > p { color: #756467; font-size: .85rem; line-height: 1.75; margin: 0; max-width: 430px; }
.seo-story-intro-grid { align-items: start; display: grid; gap: 56px; grid-template-columns: minmax(300px, .85fr) minmax(0, 1.15fr); }
.seo-story-copy { color: #625356; font-size: .9rem; line-height: 1.85; }
.seo-story-copy h2, .seo-story-copy h3 { color: #5f2b36; font-family: var(--font-heading); font-weight: 400; line-height: 1.15; }
.seo-story-copy h2 { font-size: clamp(2.25rem, 3.5vw, 3.4rem); margin: 0 0 22px; }
.seo-story-copy h3 { font-size: 1.6rem; margin: 32px 0 12px; }
.seo-story-copy p { margin: 0 0 22px; }
.seo-story-checklist { list-style: none; margin: 28px 0 0; padding: 0; }
.seo-story-checklist li { color: #47393c; margin: 0 0 13px; padding-left: 27px; position: relative; }
.seo-story-checklist li::before { color: #dc6d80; content: '✓'; font-weight: 700; left: 0; position: absolute; }
.seo-story-feature-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }
.seo-story-feature-card { min-width: 0; }
.seo-story-feature-card img { aspect-ratio: 1 / 1; background: #f1dfd9; object-fit: contain; width: 100%; }
.seo-story-feature-card h3 { color: #5b2a35; font-family: var(--font-heading); font-size: 1.35rem; font-weight: 400; margin: 18px 0 8px; }
.seo-story-feature-card p { color: #76666a; font-size: .75rem; line-height: 1.65; margin: 0; }
.seo-story-lifestyle { align-items: stretch; display: grid; gap: 60px; grid-template-columns: minmax(0, .95fr) minmax(400px, 1.05fr); }
.seo-story-lifestyle__image img { height: 100%; object-fit: cover; width: 100%; }
.seo-story-benefit-list { display: grid; gap: 0; }
.seo-story-benefit-list article { border-top: 1px solid #dcc8c2; padding: 20px 0; }
.seo-story-benefit-list article:last-child { border-bottom: 1px solid #dcc8c2; }
.seo-story-benefit-list h3 { color: #5d2c37; font-family: var(--font-heading); font-size: 1.35rem; font-weight: 400; margin: 0 0 7px; }
.seo-story-benefit-list p { color: #716064; font-size: .78rem; line-height: 1.7; margin: 0; }
.seo-story-care { display: grid; gap: 1px; grid-template-columns: repeat(5, 1fr); margin-top: 40px; }
.seo-story-care div { background: #fff; min-height: 150px; padding: 26px 20px; text-align: center; }
.seo-story-care strong { color: #d26379; display: block; font-family: var(--font-heading); font-size: 1.45rem; font-weight: 400; margin-bottom: 15px; }
.seo-story-care span { color: #514246; display: block; font-size: .68rem; line-height: 1.55; }
.seo-story-faq { margin: 0 auto; max-width: 900px; }
.seo-story-faq h2 { color: #5e2a36; font-family: var(--font-heading); font-size: clamp(2.4rem, 4vw, 3.6rem); font-weight: 400; margin: 0 0 32px; text-align: center; }
.seo-story-faq details { border-top: 1px solid #d8c5be; }
.seo-story-faq details:last-child { border-bottom: 1px solid #d8c5be; }
.seo-story-faq summary { color: #4d343a; cursor: pointer; font-family: var(--font-heading); font-size: 1.25rem; list-style: none; padding: 22px 40px 22px 0; position: relative; }
.seo-story-faq summary::after { color: #b25368; content: '+'; font-family: var(--font-body); position: absolute; right: 4px; }
.seo-story-faq details[open] summary::after { content: '−'; }
.seo-story-faq details p { color: #756469; font-size: .82rem; line-height: 1.75; margin: -5px 50px 22px 0; }
.seo-story-product-cta { align-items: center; background: #2b191e; color: #fff; display: flex; gap: 55px; justify-content: space-between; margin: 0; padding: 54px max(40px, calc((100vw - 1240px) / 2)); }
.seo-story-product-cta > div:first-child { max-width: 700px; }
.seo-story-product-cta__eyebrow { color: #d9aa9c; display: block; font-size: .6rem; font-weight: 700; letter-spacing: .18em; margin-bottom: 10px; }
.seo-story-product-cta h2 { color: #fff; font-family: var(--font-heading); font-size: clamp(2rem, 3vw, 3rem); font-weight: 400; margin: 0 0 10px; }
.seo-story-product-cta p { color: #c5b9b6; font-size: .78rem; line-height: 1.65; margin: 0; }
.seo-story-product-cta__action { border-left: 1px solid rgba(217, 170, 156, .34); flex: 0 0 230px; padding: 8px 0 8px 42px; text-align: left; }
.seo-story-product-cta__price { align-items: baseline; color: #f2c7bb; display: inline-flex; flex-wrap: nowrap; font-size: 1.25rem; font-weight: 600; gap: 7px; letter-spacing: .02em; margin-bottom: 18px; white-space: nowrap; }
.seo-story-product-cta__price span,
.seo-story-product-cta__price bdi { color: inherit; display: inline; font-size: inherit; font-weight: inherit; letter-spacing: inherit; margin: 0; white-space: nowrap; }
.seo-story-product-cta__price .woocommerce-Price-currencySymbol { font-size: .72em; margin-right: 2px; vertical-align: .18em; }
.seo-story-product-cta__action a { align-items: center; border-bottom: 1px solid #d9aa9c; color: #fff; display: inline-flex; font-size: .65rem; font-weight: 700; gap: 16px; letter-spacing: .15em; padding-bottom: 8px; }
.seo-story-product-cta__action a span { color: #d9aa9c; font-size: 1rem; letter-spacing: 0; margin: 0; }

/* Rose satin editorial: tighter, modern typography and image scale */
.seo-story-page { font-family: var(--font-body); }
.seo-story-page h1,
.seo-story-page h2,
.seo-story-page h3,
.seo-story-page summary { font-family: var(--font-body); }
.seo-story-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); max-width: none; min-height: 560px; width: 100%; }
.seo-story-hero__copy { padding-bottom: 58px; padding-top: 58px; }
.seo-story-hero h1 { font-size: clamp(2.7rem, 4vw, 4.15rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.02; }
.seo-story-hero__media img { height: auto; max-height: none; object-fit: contain; object-position: center center; width: 100%; }
.seo-story-intro-grid,
.seo-story-lifestyle,
.seo-story-care-panel { margin-left: auto; margin-right: auto; max-width: 1180px; padding-left: 30px; padding-right: 30px; }
.seo-story-intro-grid { gap: 52px; grid-template-columns: minmax(300px, .9fr) minmax(0, 1.1fr); }
.seo-story-intro-grid > div:first-child { color: #67585b; font-size: .9rem; line-height: 1.8; }
.seo-story-intro-grid > div:first-child h2,
.seo-story-lifestyle__copy h2,
.seo-story-care-panel h2 { color: #512d35; font-size: clamp(1.85rem, 2.7vw, 2.8rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.15; margin: 0 0 22px; }
.seo-story-checks { list-style: none; margin: 26px 0 0; padding: 0; }
.seo-story-checks li { border-top: 1px solid #e0d2cc; color: #5d4c50; font-size: .78rem; padding: 11px 0 11px 23px; position: relative; }
.seo-story-checks li::before { color: #bd5c70; content: '\2713'; font-weight: 700; left: 0; position: absolute; }
.seo-story-feature-card h3 { font-size: 1.05rem; font-weight: 600; letter-spacing: -.02em; }
.seo-story-feature-card img { object-fit: cover; }
.seo-story-lifestyle { align-items: center; gap: 64px; grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr); }
.seo-story-lifestyle__image { align-self: center; }
.seo-story-lifestyle__image img { aspect-ratio: 4 / 5; max-height: 620px; object-fit: cover; }
.seo-story-points { display: grid; gap: 0; }
.seo-story-points > div { border-top: 1px solid #dfd0ca; padding: 18px 0; }
.seo-story-points > div:last-child { border-bottom: 1px solid #dfd0ca; }
.seo-story-points strong { color: #4e3037; display: block; font-size: .82rem; font-weight: 600; margin-bottom: 6px; }
.seo-story-points p { color: #76666a; font-size: .78rem; line-height: 1.65; margin: 0; }

@media (max-width: 980px) {
    .seo-story-hero__inner { display: flex; flex-direction: column; min-height: 0; }
    .seo-story-hero__media { order: -1; }
    .seo-story-hero__media img { aspect-ratio: 16 / 10; height: auto; max-height: 540px; object-fit: cover; object-position: center 24%; }
    .seo-story-hero__copy { padding: 48px 32px 52px; }
    .seo-story-hero h1 { font-size: clamp(2.55rem, 8vw, 4rem); max-width: 680px; }
    .seo-story-benefits { grid-template-columns: repeat(2, 1fr); }
    .seo-story-intro-grid, .seo-story-lifestyle { gap: 42px; grid-template-columns: 1fr; }
    .seo-story-intro-grid, .seo-story-lifestyle, .seo-story-care-panel { max-width: 760px; }
    .seo-story-lifestyle__image { margin: 0 auto; max-width: 520px; width: 100%; }
    .seo-story-lifestyle__image img { max-height: 560px; }
}

@media (max-width: 680px) {
    .seo-story-hero__copy { padding: 38px 20px 42px; }
    .seo-story-hero h1 { font-size: clamp(2.25rem, 10.5vw, 3.2rem); line-height: 1.06; }
    .seo-story-hero__lead { font-size: .88rem; line-height: 1.65; }
    .seo-story-hero__media img { aspect-ratio: 4 / 3; max-height: 390px; }
    .seo-story-section { padding-bottom: 52px; padding-top: 52px; }
    .seo-story-container, .seo-story-intro-grid, .seo-story-lifestyle, .seo-story-care-panel { padding-left: 20px; padding-right: 20px; }
    .seo-story-heading { align-items: flex-start; flex-direction: column; gap: 20px; margin-bottom: 32px; }
    .seo-story-feature-grid { gap: 32px; grid-template-columns: 1fr; }
    .seo-story-feature-card img { aspect-ratio: 4 / 3; }
    .seo-story-lifestyle { gap: 34px; }
    .seo-story-lifestyle__image { max-width: 420px; }
    .seo-story-lifestyle__image img { max-height: 500px; }
    .seo-story-care { grid-template-columns: repeat(2, 1fr); }
    .seo-story-care div:last-child { grid-column: 1 / -1; }
    .seo-story-product-cta { align-items: flex-start; flex-direction: column; gap: 30px; padding: 42px 22px; }
    .seo-story-product-cta__action { border-left: 0; border-top: 1px solid rgba(217, 170, 156, .34); flex-basis: auto; padding: 25px 0 0; text-align: left; width: 100%; }
}
.vn-geo-guide { min-width: 0; }
.vn-geo-guide section { scroll-margin-top: 110px; }
.vn-geo-guide .vn-guide-note, .vn-geo-guide figcaption { font-size: .76rem; line-height: 1.7; color: #786864; }
.vn-guide-answer { background: #f0e6df; border-left: 3px solid #641c30; padding: 26px 30px; margin: 28px 0; }
.vn-guide-answer > strong, .vn-guide-toc > strong { color: #641c30; font-size: .7rem; letter-spacing: .14em; }
.vn-guide-answer p { margin: 12px 0 0; }
.vn-guide-toc { padding: 24px 0; border-bottom: 1px solid #d8c8bf; }
.vn-guide-toc ol { margin: 16px 0 0; padding-left: 22px; }
.vn-guide-table { overflow-x: auto; margin: 26px 0; }
.vn-guide-table table { width: 100%; border-collapse: collapse; font-size: .85rem; line-height: 1.65; }
.vn-guide-table th, .vn-guide-table td { text-align: left; border: 1px solid #dccdc4; padding: 16px; vertical-align: top; }
.vn-guide-table th { background: #efe5dd; color: #57182a; }
.vn-guide-product { margin: 30px 0 42px; border: 1px solid #dccdc4; }
.vn-guide-product figure { margin: 0; padding: 24px; background: #f2ebe5; }
.vn-guide-product figure img { display: block; width: 100%; height: auto; max-height: 440px; object-fit: contain; }
.vn-guide-product figcaption { margin-top: 14px; }
.vn-geo-guide .seo-story-product-cta { padding: 26px; gap: 22px; flex-wrap: wrap; }
.vn-geo-guide .seo-story-product-cta h2 { margin: 0 0 14px; color: #fff; font-size: 1.55rem; }
.vn-geo-guide .seo-story-product-cta p { margin: 0; }
.vn-geo-guide .seo-story-product-cta__action { border-left: 0; padding: 0; flex-basis: auto; }
.vn-geo-guide .seo-story-product-cta__action a { color: #fff; }
.vn-geo-guide .seo-story-product-cta__price { flex-wrap: wrap; }
.vn-guide-sources { border-top: 1px solid #dccdc4; margin-top: 42px; font-size: .82rem; }
.vn-geo-guide .vn-guide-sources h2 { font-size: 1.4rem; margin-top: 28px; }
.vn-guide-related { background: #f0e6df; padding: 24px 28px; }
.vn-geo-guide .vn-guide-related h2 { font-size: 1.7rem; margin: 0 0 20px; }
.vn-geo-guide .vn-guide-related ul { margin-bottom: 0; }
@media(max-width:600px) { .vn-guide-answer { padding: 20px; } .vn-guide-table th, .vn-guide-table td { padding: 10px; min-width: 105px; } .vn-guide-product figure { padding: 14px; } }

/* Keep the article masthead proportional on portrait and landscape tablets. */
@media (min-width: 681px) and (max-width: 1366px) {
    .journal-article .journal-article-hero { padding: 44px 0 48px; }
    .journal-article .journal-article-hero__inner { width: 100%; max-width: 960px; padding-left: 32px; padding-right: 32px; box-sizing: border-box; }
    .journal-article .journal-article-meta { margin-bottom: 22px; flex-wrap: wrap; row-gap: 8px; }
    .journal-article .journal-article-hero h1 { font-size: clamp(36px, 4.1vw, 54px); line-height: 1.14; max-width: 880px; margin-bottom: 20px; text-wrap: balance; }
    .journal-article .journal-article-hero__inner > p { max-width: 680px; font-size: 14px; line-height: 1.75; }
    .journal-article .journal-article-image { margin-top: 0; }
}
