:root{--spa-blog-gold:#d4aa55;--spa-blog-paper:#f0e8df;--spa-blog-muted:#93877d;--spa-blog-line:rgba(212,170,85,.2)}
.spa-blog-page,.spa-article{background:#030303;color:var(--spa-blog-paper);min-height:70vh}
.spa-blog-shell,.spa-article-shell{width:min(1420px,calc(100% - 72px));margin:0 auto}

/* Archive */
.spa-blog-hero{padding:92px 0 72px;border-bottom:1px solid var(--spa-blog-line)}
.spa-blog-hero-index{font-size:9px;letter-spacing:.18em;color:#8f6d35;margin-bottom:34px}
.spa-blog-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end}
.spa-blog-hero h1{margin:0!important;font:400 clamp(52px,6.2vw,96px)/.94 Georgia,serif!important;letter-spacing:-.02em;color:#eee8e1!important}
.spa-blog-hero h1 em{font-style:italic;color:var(--spa-blog-gold);font-weight:400}
.spa-blog-hero-copy{padding-bottom:8px}
.spa-blog-hero-copy p{max-width:520px;margin:0 0 25px;color:#a89e95;font-size:13px;line-height:1.8}
.spa-blog-hero-copy span{font-size:8px;letter-spacing:.16em;color:#765b30}
.spa-blog-cats{border-bottom:1px solid var(--spa-blog-line);position:sticky;top:0;z-index:20;background:rgba(3,3,3,.94);backdrop-filter:blur(12px)}
.spa-blog-cats .spa-blog-shell{display:flex;gap:28px;align-items:center;min-height:54px;overflow:auto;scrollbar-width:none}
.spa-blog-cats a{white-space:nowrap;color:#82776e!important;text-decoration:none!important;font-size:8px;letter-spacing:.12em;padding:19px 0 16px;border-bottom:1px solid transparent}
.spa-blog-cats a.is-active,.spa-blog-cats a:hover{color:#d4aa55!important;border-color:#d4aa55}
.spa-blog-feature{display:grid;grid-template-columns:1.15fr .85fr;min-height:510px;margin-top:72px;border:1px solid var(--spa-blog-line)}
.spa-blog-feature-media{display:block;min-width:0;overflow:hidden}.spa-blog-feature-media img{width:100%;height:100%;object-fit:cover;display:block;transition:.45s transform}.spa-blog-feature:hover img{transform:scale(1.012)}
.spa-blog-feature-copy{padding:58px 62px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#090806,#030303)}
.spa-blog-feature-copy>span,.spa-blog-list>header>span{font-size:8px;letter-spacing:.16em;color:#8b6a35}
.spa-blog-feature h2{margin:18px 0!important;font:400 clamp(34px,3.8vw,56px)/1.02 Georgia,serif!important}.spa-blog-feature h2 a{color:#eee7df!important;text-decoration:none!important}
.spa-blog-feature p{margin:0 0 24px;color:#978d84;font-size:11px;line-height:1.8;max-width:520px}
.spa-blog-meta,.spa-article-meta{display:flex;gap:12px;align-items:center;color:#746a62;font-size:7px;letter-spacing:.1em}.spa-blog-meta i,.spa-article-meta i{width:20px;height:1px;background:#574225}
.spa-blog-read{align-self:flex-start;margin-top:30px;color:#d5ad5b!important;text-decoration:none!important;font-size:8px;letter-spacing:.12em;border-bottom:1px solid #7e602f;padding-bottom:7px}.spa-blog-read b{font-weight:400;margin-left:8px}
.spa-blog-list{padding:96px 0}.spa-blog-list>header{text-align:center;margin-bottom:42px}.spa-blog-list>header h2{margin:10px 0 0!important;font:400 clamp(32px,3vw,47px)/1 Georgia,serif!important;color:#eee7df!important}
.spa-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}.spa-blog-card{min-width:0;border-bottom:1px solid var(--spa-blog-line);padding-bottom:25px}.spa-blog-card-media{display:block;aspect-ratio:4/3;overflow:hidden;background:#090806}.spa-blog-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s transform}.spa-blog-card:hover img{transform:scale(1.015)}
.spa-blog-card-copy{padding-top:18px}.spa-blog-card-copy>span{font-size:7px;letter-spacing:.13em;color:#856633}.spa-blog-card h3{margin:11px 0 10px!important;font:400 24px/1.08 Georgia,serif!important}.spa-blog-card h3 a{color:#ece4dc!important;text-decoration:none!important}.spa-blog-card p{color:#897f76;font-size:10px;line-height:1.7;margin:0 0 14px}.spa-blog-card-link{color:#c89e4f!important;text-decoration:none!important;font-size:8px;letter-spacing:.12em}.spa-blog-card-link b{font-weight:400;margin-left:7px}
.spa-blog-pagination{text-align:center;margin-top:55px}.spa-blog-pagination ul{display:flex;justify-content:center;gap:8px;list-style:none;padding:0}.spa-blog-pagination a,.spa-blog-pagination span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--spa-blog-line);color:#ae9f90!important;text-decoration:none!important;font-size:9px}.spa-blog-pagination .current{border-color:#b88a3d;color:#e1bb68!important}
.spa-blog-empty{padding:70px;border:1px solid var(--spa-blog-line);text-align:center;color:#897f76}
.spa-blog-ending{padding:85px 0;border-top:1px solid var(--spa-blog-line);background:linear-gradient(90deg,#070604,#030303)}.spa-blog-ending span{font-size:8px;letter-spacing:.18em;color:#84632f}.spa-blog-ending h2{margin:13px 0 28px!important;font:400 clamp(35px,4vw,62px)/1.02 Georgia,serif!important;color:#ede6df!important}.spa-blog-ending h2 em{font-style:italic;color:#d1a550;font-weight:400}.spa-blog-ending a,.spa-article-side-cta a{display:inline-flex;border:1px solid rgba(212,170,85,.55);padding:14px 19px;color:#d6ae5c!important;text-decoration:none!important;font-size:8px;letter-spacing:.1em}

/* Single */
.spa-reading-progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:9999;background:transparent}.spa-reading-progress i{display:block;height:100%;width:0;background:#d3a64d}
.spa-article-shell{padding-top:38px}.spa-article-breadcrumb{display:flex;gap:11px;align-items:center;font-size:7px;letter-spacing:.1em;color:#5f554e;margin-bottom:34px}.spa-article-breadcrumb a{color:#877869!important;text-decoration:none!important}
.spa-article-hero{display:grid;grid-template-columns:1fr .88fr;gap:56px;align-items:stretch;border-bottom:1px solid var(--spa-blog-line);padding-bottom:58px}.spa-article-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:25px 0}.spa-article-hero-copy>span{font-size:8px;letter-spacing:.17em;color:#95713a;margin-bottom:18px}.spa-article h1{margin:0 0 22px!important;font:400 clamp(44px,5.6vw,82px)/.98 Georgia,serif!important;letter-spacing:-.02em;color:#eee7df!important}.spa-article-intro{margin:0 0 29px!important;max-width:690px;color:#a99f96;font:400 16px/1.75 Georgia,serif!important}.spa-article-hero-media{margin:0;min-height:540px;overflow:hidden;border:1px solid var(--spa-blog-line)}.spa-article-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.spa-article-layout{display:grid;grid-template-columns:260px minmax(0,800px);gap:80px;justify-content:center;padding:78px 0 95px}.spa-article-side{min-width:0}.spa-article-toc{position:sticky;top:78px;border-top:1px solid var(--spa-blog-line);padding-top:18px}.spa-article-toc>span,.spa-article-side-cta>span{display:block;font-size:7px;letter-spacing:.16em;color:#80612f;margin-bottom:13px}.spa-article-toc a{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:9px 0;color:#837970!important;text-decoration:none!important;font-size:9px;line-height:1.4;border-bottom:1px solid rgba(212,170,85,.07)}.spa-article-toc a:hover{color:#d1ad65!important}.spa-article-toc b{font:400 9px Georgia,serif;color:#6f542d}.spa-article-side-cta{margin-top:32px;border:1px solid var(--spa-blog-line);padding:21px}.spa-article-side-cta p{color:#80766e;font-size:9px;line-height:1.65}.spa-article-side-cta a{padding:11px 13px;margin-top:7px}
.spa-article-body{min-width:0;color:#c7bfb7;font-size:15px;line-height:1.88}.spa-article-body>p:first-child{font-size:17px;color:#d7cfc7}.spa-article-body p{margin:0 0 24px}.spa-article-body h2{scroll-margin-top:90px;margin:66px 0 21px!important;font:400 clamp(31px,3vw,44px)/1.08 Georgia,serif!important;color:#eee7df!important}.spa-article-body h2:before{content:"";display:block;width:52px;height:1px;background:#a77c35;margin-bottom:17px}.spa-article-body h3{scroll-margin-top:90px;margin:38px 0 15px!important;font:400 25px/1.2 Georgia,serif!important;color:#e1d8cf!important}.spa-article-body strong{color:#eee5dc}.spa-article-body a{color:#d3aa5a!important;text-decoration-thickness:1px;text-underline-offset:3px}.spa-article-body ul,.spa-article-body ol{padding-left:22px;margin:0 0 27px}.spa-article-body li{padding:3px 0 3px 6px}.spa-article-body blockquote{margin:38px 0;padding:24px 28px;border-left:1px solid #bc8f43;background:#080705}.spa-article-body blockquote p{margin:0!important;font:italic 20px/1.6 Georgia,serif!important;color:#d9cfc5}.spa-article-body hr{border:0;border-top:1px solid var(--spa-blog-line);margin:48px 0}
.spa-article-products{margin-top:72px;padding-top:38px;border-top:1px solid var(--spa-blog-line)}.spa-article-products header,.spa-article-faq header{margin-bottom:30px}.spa-article-products header span,.spa-article-faq header span,.spa-article-related header span{font-size:7px;letter-spacing:.17em;color:#88652f}.spa-article-products header h2,.spa-article-faq header h2,.spa-article-related header h2{margin:8px 0 0!important;font:400 31px/1.1 Georgia,serif!important;color:#eee7df!important}.spa-article-products ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px!important}.spa-article-products li.product{width:100%!important;margin:0!important;float:none!important}
.spa-article-faq{margin-top:72px;padding-top:38px;border-top:1px solid var(--spa-blog-line)}.spa-article-faq details{border-bottom:1px solid var(--spa-blog-line);padding:18px 0}.spa-article-faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;cursor:pointer;color:#e4dbd2;font:400 17px/1.4 Georgia,serif}.spa-article-faq summary::-webkit-details-marker{display:none}.spa-article-faq summary i{font-style:normal;color:#c69d50}.spa-article-faq details[open] summary i{transform:rotate(45deg)}.spa-article-faq details p{margin:13px 40px 0 0!important;color:#8d8279;font-size:12px;line-height:1.75}
.spa-article-related{border-top:1px solid var(--spa-blog-line);padding:65px 0 90px}.spa-article-related header{text-align:center;margin-bottom:32px}.spa-article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.spa-article-related-grid article img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:15px}.spa-article-related-grid span{font-size:7px;letter-spacing:.12em;color:#7e6030}.spa-article-related-grid h3{margin:8px 0!important;font:400 21px/1.15 Georgia,serif!important}.spa-article-related-grid h3 a{color:#e9e0d8!important;text-decoration:none!important}

@media(max-width:1000px){.spa-blog-hero-grid,.spa-blog-feature,.spa-article-hero{grid-template-columns:1fr}.spa-blog-feature-media{aspect-ratio:16/10}.spa-article-hero-media{min-height:0;aspect-ratio:4/3}.spa-article-layout{grid-template-columns:1fr;gap:28px}.spa-article-side{order:0}.spa-article-toc{position:relative;top:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.spa-article-toc>span{grid-column:1/-1}.spa-article-side-cta{display:none}}
@media(max-width:720px){.spa-blog-shell,.spa-article-shell{width:min(100% - 30px,1420px)}.spa-blog-hero{padding:58px 0 46px}.spa-blog-hero-grid{gap:28px}.spa-blog-hero h1{font-size:48px!important}.spa-blog-feature{margin-top:38px}.spa-blog-feature-copy{padding:32px 25px}.spa-blog-feature h2{font-size:35px!important}.spa-blog-list{padding:60px 0}.spa-blog-grid{grid-template-columns:1fr}.spa-blog-card{display:grid;grid-template-columns:42% 1fr;gap:15px;padding-bottom:18px}.spa-blog-card-media{aspect-ratio:4/5}.spa-blog-card-copy{padding-top:3px}.spa-blog-card h3{font-size:19px!important}.spa-blog-card p{display:none}.spa-blog-ending{padding:55px 0}.spa-article-shell{padding-top:22px}.spa-article-breadcrumb{overflow:auto;white-space:nowrap}.spa-article-hero{gap:24px;padding-bottom:36px}.spa-article h1{font-size:44px!important}.spa-article-intro{font-size:14px!important}.spa-article-meta{flex-wrap:wrap}.spa-article-hero-media{aspect-ratio:4/5}.spa-article-layout{padding:42px 0 64px}.spa-article-toc{grid-template-columns:1fr}.spa-article-body{font-size:14px}.spa-article-body h2{font-size:31px!important;margin-top:52px!important}.spa-article-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.spa-article-related-grid{grid-template-columns:1fr}.spa-article-related-grid article{display:grid;grid-template-columns:38% 1fr;gap:0 15px}.spa-article-related-grid article img{grid-row:1/3;aspect-ratio:4/5;margin:0}.spa-article-related-grid span,.spa-article-related-grid h3{grid-column:2}.spa-article-related-grid h3{font-size:18px!important}}

/* 4.12.1 — editorial images inside articles */
.spa-article-body .spa-blog-seo-lead{display:none!important}.spa-blog-editorial-media{margin:48px 0 56px;overflow:hidden;border:1px solid var(--spa-blog-line);background:#080705}.spa-blog-editorial-media img{display:block;width:100%;height:auto;max-width:none}.spa-blog-editorial-media.is-editorial{width:78%;margin-left:auto}.spa-blog-editorial-media.is-editorial:nth-of-type(even){margin-left:0;margin-right:auto}@media(max-width:720px){.spa-blog-editorial-media,.spa-blog-editorial-media.is-editorial{width:calc(100% + 30px);margin-left:-15px!important;margin-right:-15px!important;margin-top:34px;margin-bottom:40px;border-left:0;border-right:0}}


/* =========================================================
   4.12.3 — ARTICLE EDITORIAL REFLOW
   Fewer oversized headings, shorter TOC, more magazine rhythm.
   ========================================================= */
.spa-article-body{
  max-width:760px;
  margin-inline:auto;
  font-size:15px;
  line-height:1.9;
}
.spa-article-body p{
  max-width:68ch;
  margin-bottom:22px;
}
.spa-article-body h2{
  margin:72px 0 22px!important;
  font-size:clamp(29px,2.55vw,38px)!important;
  line-height:1.08!important;
  letter-spacing:-.012em;
}
.spa-article-body h2:before{
  width:42px;
  margin-bottom:15px;
}
.spa-article-body h3{
  position:relative;
  margin:34px 0 14px!important;
  padding-left:16px;
  font-size:20px!important;
  line-height:1.28!important;
  color:#e6ddd4!important;
}
.spa-article-body h3:before{
  content:"";
  position:absolute;
  left:0;
  top:.18em;
  bottom:.18em;
  width:1px;
  background:rgba(212,170,85,.58);
}
.spa-article-body h3 + p{
  color:#bdb4ab;
}
.spa-article-body ul,
.spa-article-body ol{
  max-width:64ch;
  margin:0 0 28px;
  padding:17px 20px 17px 37px;
  background:linear-gradient(90deg,rgba(212,170,85,.055),rgba(212,170,85,.015));
  border-left:1px solid rgba(212,170,85,.28);
}
.spa-article-body blockquote{
  margin:46px 0;
}
.spa-article-toc{
  max-height:min(66vh,560px);
  overflow:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(212,170,85,.28) transparent;
}
.spa-article-toc a{
  padding:10px 0;
  font-size:9px;
}
.spa-blog-editorial-media{
  margin-top:54px;
  margin-bottom:62px;
}
.spa-blog-editorial-media img{
  aspect-ratio:auto;
  object-fit:cover;
}
@media(max-width:1000px){
  .spa-article-toc{
    max-height:none;
    overflow:visible;
  }
}
@media(max-width:720px){
  .spa-article-layout{padding-top:34px}
  .spa-article-toc{
    border:1px solid rgba(212,170,85,.16);
    padding:16px 17px 8px;
    background:rgba(255,255,255,.018);
    grid-template-columns:1fr;
  }
  .spa-article-toc>span{
    margin-bottom:8px;
  }
  .spa-article-toc a{
    grid-template-columns:24px 1fr;
    padding:8px 0;
    font-size:8.5px;
  }
  .spa-article-body{
    max-width:none;
    font-size:14px;
    line-height:1.85;
  }
  .spa-article-body p{
    max-width:none;
    margin-bottom:19px;
  }
  .spa-article-body h2{
    margin-top:50px!important;
    margin-bottom:17px!important;
    font-size:27px!important;
  }
  .spa-article-body h2:before{
    width:34px;
    margin-bottom:12px;
  }
  .spa-article-body h3{
    margin-top:27px!important;
    margin-bottom:11px!important;
    padding-left:13px;
    font-size:18px!important;
  }
  .spa-article-body ul,
  .spa-article-body ol{
    margin-left:0;
    margin-right:0;
    padding:14px 14px 14px 31px;
  }
  .spa-blog-editorial-media,
  .spa-blog-editorial-media.is-editorial{
    margin-top:30px!important;
    margin-bottom:34px!important;
  }
}


/* =========================================================
   4.12.4 — ARTICLE CONTENT ISOLATION
   The editorial typography must apply ONLY to the prose.
   It must never style WooCommerce product cards in articles.
   ========================================================= */

/* Prose owns the editorial rhythm */
.spa-article-prose{
  min-width:0;
  color:#c7bfb7;
  font-size:15px;
  line-height:1.9;
}
.spa-article-prose>p:first-child{
  font-size:17px;
  color:#d7cfc7;
}
.spa-article-prose p{
  max-width:68ch;
  margin:0 0 22px;
}
.spa-article-prose h2{
  scroll-margin-top:90px;
  margin:72px 0 22px!important;
  font:400 clamp(29px,2.55vw,38px)/1.08 Georgia,serif!important;
  letter-spacing:-.012em;
  color:#eee7df!important;
}
.spa-article-prose h2:before{
  content:"";
  display:block;
  width:42px;
  height:1px;
  background:#a77c35;
  margin-bottom:15px;
}
.spa-article-prose h3{
  scroll-margin-top:90px;
  position:relative;
  margin:34px 0 14px!important;
  padding-left:16px;
  font:400 20px/1.28 Georgia,serif!important;
  color:#e6ddd4!important;
}
.spa-article-prose h3:before{
  content:"";
  position:absolute;
  left:0;
  top:.18em;
  bottom:.18em;
  width:1px;
  background:rgba(212,170,85,.58);
}
.spa-article-prose h3 + p{color:#bdb4ab}
.spa-article-prose strong{color:#eee5dc}
.spa-article-prose a{
  color:#d3aa5a!important;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.spa-article-prose ul,
.spa-article-prose ol{
  max-width:64ch;
  margin:0 0 28px;
  padding:17px 20px 17px 37px;
  background:linear-gradient(90deg,rgba(212,170,85,.055),rgba(212,170,85,.015));
  border-left:1px solid rgba(212,170,85,.28);
}
.spa-article-prose li{padding:3px 0 3px 6px}
.spa-article-prose blockquote{
  margin:46px 0;
  padding:24px 28px;
  border-left:1px solid #bc8f43;
  background:#080705;
}
.spa-article-prose blockquote p{
  margin:0!important;
  font:italic 20px/1.6 Georgia,serif!important;
  color:#d9cfc5;
}
.spa-article-prose hr{
  border:0;
  border-top:1px solid var(--spa-blog-line);
  margin:48px 0;
}

/* Explicitly neutralise every editorial rule inside the product selection */
.spa-article-products ul.products{
  margin:0!important;
  padding:0!important;
  max-width:none!important;
  background:none!important;
  border:0!important;
  list-style:none!important;
}
.spa-article-products ul.products > li.product{
  padding:0!important;
  background:#050402!important;
  border-left:0!important;
}
.spa-article-products ul.products > li.product h2,
.spa-article-products ul.products > li.product h3{
  margin:0!important;
  padding:0!important;
  font:inherit!important;
  letter-spacing:normal!important;
}
.spa-article-products ul.products > li.product h2:before,
.spa-article-products ul.products > li.product h3:before{
  content:none!important;
  display:none!important;
}
.spa-article-products ul.products > li.product a{
  text-decoration:none!important;
}

/* Keep product cards compact in articles — no giant catalogue towers */
.spa-article-products .spa-card-v3-media{
  aspect-ratio:4/5!important;
  min-height:0!important;
}
.spa-article-products .spa-card-v3-panel{
  padding:16px 14px 14px!important;
}
.spa-article-products .spa-card-v3-copy h2{
  font:400 16px/1.15 Georgia,serif!important;
  color:#eee7df!important;
  min-height:auto!important;
  margin:0 0 9px!important;
}
.spa-article-products .spa-product-price{
  margin:0 0 12px!important;
}
.spa-article-products .spa-card-v3-cta{
  min-height:38px!important;
  padding:10px 12px!important;
}
.spa-article-products .spa-card-v3-actions{
  margin-top:11px!important;
  padding-top:11px!important;
}

/* FAQ also stays outside prose styling */
.spa-article-faq h2:before{content:none!important;display:none!important}

@media(max-width:720px){
  .spa-article-prose{
    font-size:14px;
    line-height:1.85;
  }
  .spa-article-prose p{
    max-width:none;
    margin-bottom:19px;
  }
  .spa-article-prose h2{
    margin-top:50px!important;
    margin-bottom:17px!important;
    font-size:27px!important;
  }
  .spa-article-prose h2:before{
    width:34px;
    margin-bottom:12px;
  }
  .spa-article-prose h3{
    margin-top:27px!important;
    margin-bottom:11px!important;
    padding-left:13px;
    font-size:18px!important;
  }
  .spa-article-prose ul,
  .spa-article-prose ol{
    margin-left:0;
    margin-right:0;
    padding:14px 14px 14px 31px;
  }

  .spa-article-products{
    margin-left:-15px;
    margin-right:-15px;
    padding-left:15px;
    padding-right:15px;
  }
  .spa-article-products ul.products{
    gap:10px!important;
  }
  .spa-article-products .spa-card-v3-panel{
    padding:13px 10px 12px!important;
  }
  .spa-article-products .spa-card-v3-copy h2{
    font-size:14px!important;
    line-height:1.18!important;
    margin-bottom:7px!important;
  }
  .spa-article-products .spa-card-v3-cta{
    min-height:36px!important;
    font-size:7px!important;
  }
  .spa-article-products .spa-card-v3-actions{
    display:none!important;
  }
}


/* =========================================================
   4.12.5 — ARTICLE IMAGE SCALE FIX
   Bigger, more editorial images inside blog posts only.
   ========================================================= */

/* Keep prose narrow, but let the images breathe wider than the text column. */
.spa-blog-editorial-media,
.spa-blog-editorial-media.is-editorial{
  width:min(980px, calc(100% + 260px))!important;
  max-width:min(980px, calc(100% + 260px))!important;
  margin-top:56px!important;
  margin-bottom:62px!important;
  margin-left:50%!important;
  transform:translateX(-50%)!important;
}

.spa-blog-editorial-media img,
.spa-blog-editorial-media.is-editorial img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:520px!important;
  max-height:none!important;
  object-fit:cover!important;
  border-radius:22px!important;
}

/* When the article contains paired media blocks, keep them visually large too. */
.spa-article-prose .wp-block-image,
.spa-article-prose figure.wp-block-image{
  width:min(980px, calc(100% + 260px))!important;
  max-width:min(980px, calc(100% + 260px))!important;
  margin:56px 50% 62px!important;
  transform:translateX(-50%)!important;
}
.spa-article-prose .wp-block-image img,
.spa-article-prose figure.wp-block-image img{
  width:100%!important;
  height:auto!important;
  min-height:520px!important;
  object-fit:cover!important;
  border-radius:22px!important;
}

/* If two images are displayed side-by-side inside article content, keep them elegant. */
.spa-article-prose .wp-block-gallery,
.spa-article-prose .blocks-gallery-grid{
  width:min(980px, calc(100% + 260px))!important;
  max-width:min(980px, calc(100% + 260px))!important;
  margin:56px 50% 62px!important;
  transform:translateX(-50%)!important;
}
.spa-article-prose .wp-block-gallery img,
.spa-article-prose .blocks-gallery-grid img{
  border-radius:18px!important;
  min-height:420px!important;
  object-fit:cover!important;
}

@media(max-width:1100px){
  .spa-blog-editorial-media,
  .spa-blog-editorial-media.is-editorial,
  .spa-article-prose .wp-block-image,
  .spa-article-prose figure.wp-block-image,
  .spa-article-prose .wp-block-gallery,
  .spa-article-prose .blocks-gallery-grid{
    width:calc(100% + 80px)!important;
    max-width:calc(100% + 80px)!important;
  }
  .spa-blog-editorial-media img,
  .spa-blog-editorial-media.is-editorial img,
  .spa-article-prose .wp-block-image img,
  .spa-article-prose figure.wp-block-image img{
    min-height:430px!important;
  }
}

@media(max-width:720px){
  .spa-blog-editorial-media,
  .spa-blog-editorial-media.is-editorial,
  .spa-article-prose .wp-block-image,
  .spa-article-prose figure.wp-block-image,
  .spa-article-prose .wp-block-gallery,
  .spa-article-prose .blocks-gallery-grid{
    width:calc(100% + 30px)!important;
    max-width:calc(100% + 30px)!important;
    margin-top:28px!important;
    margin-bottom:34px!important;
  }

  .spa-blog-editorial-media img,
  .spa-blog-editorial-media.is-editorial img,
  .spa-article-prose .wp-block-image img,
  .spa-article-prose figure.wp-block-image img{
    min-height:260px!important;
    border-radius:16px!important;
  }

  .spa-article-prose .wp-block-gallery img,
  .spa-article-prose .blocks-gallery-grid img{
    min-height:220px!important;
    border-radius:14px!important;
  }
}


/* =========================================================
   4.12.6 — MOBILE ARTICLE IMAGE BALANCE
   Keep desktop editorial impact, but make mobile images calmer.
   ========================================================= */
@media(max-width:720px){
  .spa-blog-editorial-media,
  .spa-blog-editorial-media.is-editorial,
  .spa-article-prose .wp-block-image,
  .spa-article-prose figure.wp-block-image,
  .spa-article-prose .wp-block-gallery,
  .spa-article-prose .blocks-gallery-grid{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }

  .spa-blog-editorial-media img,
  .spa-blog-editorial-media.is-editorial img,
  .spa-article-prose .wp-block-image img,
  .spa-article-prose figure.wp-block-image img{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:420px!important;
    object-fit:cover!important;
    border-radius:14px!important;
  }

  .spa-article-prose .wp-block-gallery img,
  .spa-article-prose .blocks-gallery-grid img{
    min-height:0!important;
    max-height:360px!important;
    object-fit:cover!important;
    border-radius:12px!important;
  }
}

@media(max-width:430px){
  .spa-blog-editorial-media,
  .spa-blog-editorial-media.is-editorial,
  .spa-article-prose .wp-block-image,
  .spa-article-prose figure.wp-block-image,
  .spa-article-prose .wp-block-gallery,
  .spa-article-prose .blocks-gallery-grid{
    margin-top:24px!important;
    margin-bottom:28px!important;
  }

  .spa-blog-editorial-media img,
  .spa-blog-editorial-media.is-editorial img,
  .spa-article-prose .wp-block-image img,
  .spa-article-prose figure.wp-block-image img{
    max-height:340px!important;
    border-radius:12px!important;
  }

  .spa-article-prose .wp-block-gallery img,
  .spa-article-prose .blocks-gallery-grid img{
    max-height:300px!important;
  }
}


/* =========================================================
   4.12.7 — ARTICLE PRODUCT CTA CONTRAST FIX
   Scope: product recommendations INSIDE blog articles only.
   ========================================================= */
.spa-article-products .spa-card-v3-cta{
  color:#070503!important;
  -webkit-text-fill-color:#070503!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
  font-weight:800!important;
  letter-spacing:.10em!important;
}
.spa-article-products .spa-card-v3-cta span{
  display:block!important;
  color:#070503!important;
  -webkit-text-fill-color:#070503!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  text-shadow:none!important;
  mix-blend-mode:normal!important;
  font:800 8px/1 Arial,sans-serif!important;
  letter-spacing:.10em!important;
  white-space:nowrap!important;
}
.spa-article-products .spa-card-v3-cta:hover,
.spa-article-products .spa-card-v3-cta:focus,
.spa-article-products .spa-card-v3-cta:active{
  color:#070503!important;
  -webkit-text-fill-color:#070503!important;
}
.spa-article-products .spa-card-v3-cta:hover span,
.spa-article-products .spa-card-v3-cta:focus span,
.spa-article-products .spa-card-v3-cta:active span{
  color:#070503!important;
  -webkit-text-fill-color:#070503!important;
  opacity:1!important;
}

@media(max-width:720px){
  .spa-article-products .spa-card-v3-cta{
    min-height:38px!important;
    height:38px!important;
    padding:0 10px!important;
    justify-content:center!important;
  }
  .spa-article-products .spa-card-v3-cta span{
    font-size:7.5px!important;
    letter-spacing:.085em!important;
  }
}
