/*
 Vanodio / Astryx Stone visual fidelity adapter.
 Base: @astryxdesign/theme-stone 0.7.16 official production CSS.
 Native WordPress and WooCommerce markup receives the official Stone token
 values, radii and surfaces. This stylesheet is loaded AFTER legacy CSS.
 */
body.nep[data-astryx-theme="stone"] {
  --color-background-body:light-dark(#f0f0f7,#101018);
  --color-background-surface:light-dark(#ffffff,#1b1b21);
  --color-background-card:light-dark(#ffffff,#25252a);
  --color-background-muted:light-dark(#e2e2e8,#3a3a42);
  --color-text-primary:light-dark(#25252a,#f0f0f9);
  --color-text-secondary:light-dark(#5f5f64,#ababb3);
  --color-text-accent:light-dark(#25252a,#f0f0f9);
  --color-on-accent:light-dark(#ffffff,#25252a);
  --color-accent:light-dark(#25252a,#f0f0f9);
  --color-border:light-dark(#e2e2e8,#f0f0f91a);
  --color-border-emphasized:light-dark(#848489,#5e5e64);
  --radius-inner:.25rem;
  --radius-element:.5rem;
  --radius-container:.75rem;
  --radius-page:1.5rem;
  --radius-full:9999px;
  --nep-paper:var(--color-background-body);
  --nep-surface:var(--color-background-muted);
  --nep-field:var(--color-background-card);
  --nep-ink:var(--color-text-primary);
  --nep-muted:var(--color-text-secondary);
  --nep-accent:var(--color-accent);
  --nep-on-accent:var(--color-on-accent);
  --nep-line:var(--color-border);
  --nep-field-line:var(--color-border-emphasized);
  --nep-accent-hover:light-dark(#44444a,#dbdbe2);
  background:var(--color-background-body);
  color:var(--color-text-primary);
}
/* Rounding and surfaces: avoid earlier rectangular/pill mismatches. */
body.nep[data-astryx-theme="stone"] :is(.vd-site-header__cta,.vd-button,.vd-home .vd-button,.vd-home .vd-link,.sf-btn,.cta,.shop-action-primary,.shop-action-secondary,.nep-product-detail__contact,.nep-pdp-secondary-link,.inquiry button,.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button) {
  border-radius:var(--radius-element) !important;
}
body.nep[data-astryx-theme="stone"] :is(.vd-hero__media,.vd-home .vd-hero__media,.vd-home .vd-feature,.vd-home .vd-guide__image,.vd-home .vd-materials__image img,.vd-home .vd-trade-row,.vd-ways .vd-feature,.sf-card,.shop-hero-image,.nep-shop .shop-hero-image,.shop-room,.nep-shop .shop-room,.shop-preview,.nep-shop .shop-preview,.contact-aside,.services article,.story-image,.page-banner,.nep-journal-archive__card,.nep-related-product,.nep-product-detail__media) {
  border-radius:var(--radius-container) !important;
  overflow:hidden;
}
body.nep[data-astryx-theme="stone"] :is(.vd-home .vd-feature__media,.nep-shop .shop-room img,.nep-product-detail__media img,.nep-pdp-editorial .woocommerce-product-gallery__image a,.nep-pdp-editorial .woocommerce-product-gallery__image img,.contact-aside img,.page-content figure img) {
  border-radius:var(--radius-element);
}
body.nep[data-astryx-theme="stone"] :is(.inquiry input,.inquiry select,.inquiry textarea,.wc-block-components-text-input input,.woocommerce input.input-text,.woocommerce select,.woocommerce textarea) {
  border-radius:var(--radius-element) !important;
}
/* One Stone palette across home / product / contact / Shop rather than independent accents. */
body.home.nep[data-astryx-theme="stone"] {
  --vd-paper:var(--color-background-body);
  --vd-ink:var(--color-text-primary);
  --vd-muted:var(--color-text-secondary);
  --vd-accent:var(--color-accent);
  --vd-deep:light-dark(#25252a,#2b2b32);
  --vd-soft:var(--color-background-muted);
  --vd-line:var(--color-border);
  --vd-white:var(--color-background-card);
}
body.home.nep[data-astryx-theme="stone"] :is(.vd-home,.site-header,.site-footer) {background:var(--color-background-body);color:var(--color-text-primary);}
body.nep[data-astryx-theme="stone"] .vd-site-header__cta {background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent);}
body.nep[data-astryx-theme="stone"] .vd-site-header__cta:hover {background:var(--nep-accent-hover);color:var(--color-on-accent);}
body.nep[data-astryx-theme="stone"] .vd-site-footer {background:var(--color-background-muted);}
body.nep[data-astryx-theme="stone"] .vd-home .vd-hero__media {border-radius:var(--radius-page) !important;}
body.nep[data-astryx-theme="stone"] .vd-home .vd-feature {background:var(--color-background-card);}
body.nep[data-astryx-theme="stone"] .vd-home .vd-standards {background:var(--color-background-muted);}
body.nep[data-astryx-theme="stone"] .vd-home .vd-button--solid {background:var(--color-accent);color:var(--color-on-accent);}
body.nep[data-astryx-theme="stone"] .nep-shop {--shop-paper:var(--color-background-body);--shop-cream:var(--color-background-muted);--shop-ink:var(--color-text-primary);--shop-muted:var(--color-text-secondary);--shop-green:var(--color-accent);--shop-card:var(--color-background-card);--shop-line:var(--color-border);}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-hero {background:var(--color-background-body);}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-room {background:var(--color-background-muted);}
body.nep[data-astryx-theme="stone"] .nep-shop :is(.shop-preview,.shop-live-catalog li.product,.shop-room) {border-color:var(--color-border);}
/* Rounded catalog cards are the main visual evidence of Stone's design. */
body.nep[data-astryx-theme="stone"] .nep-shop ul.products {align-items:stretch;gap:20px;}
body.nep[data-astryx-theme="stone"] .nep-shop li.product {
  position:relative;display:flex;flex-direction:column;min-width:0;
  border:1px solid var(--color-border);border-radius:var(--radius-container);
  background:var(--color-background-card);overflow:hidden;
  box-shadow:var(--shadow-low);
}
body.nep[data-astryx-theme="stone"] .nep-shop li.product .woocommerce-LoopProduct-link {display:block;min-width:0;}
body.nep[data-astryx-theme="stone"] .nep-shop li.product .woocommerce-loop-product__title {padding:17px 19px 4px;font:650 20px/1.35 var(--font-family-heading);letter-spacing:-.035em;}
body.nep[data-astryx-theme="stone"] .nep-shop li.product .woocommerce-LoopProduct-link img {
  display:block;width:100%;height:auto;aspect-ratio:1.18;object-fit:cover;
  border-radius:0;margin:0;
}
body.nep[data-astryx-theme="stone"] .nep-shop li.product .price {padding:0 19px;margin:4px 0;color:var(--color-text-secondary);}
body.nep[data-astryx-theme="stone"] .nep-shop li.product a.button {align-self:flex-start;margin:12px 19px 20px;padding:11px 17px;}
body.nep[data-astryx-theme="stone"] .nep-shop li.product .vd-demo-loop-badge {
  position:absolute;top:14px;left:14px;z-index:3;
  display:inline-flex;align-items:center;gap:5px;
  border-radius:var(--radius-full);padding:6px 11px;
  background:light-dark(#fffefd,#2a2a32);color:var(--color-text-primary);
  border:1px solid var(--color-border);box-shadow:var(--shadow-low);
  font:700 10px/1.4 var(--font-family-body);letter-spacing:.04em;
}
/* Theme is stone, not repeated rectangular/bordered grids. */
body.nep[data-astryx-theme="stone"] .services article {background:var(--color-background-card);border:1px solid var(--color-border);box-shadow:var(--shadow-low);}
body.nep[data-astryx-theme="stone"] .nep-journal-archive :is(article,.nep-journal-card,.nep-journal-archive__featured) {border-radius:var(--radius-container);}
body.nep[data-astryx-theme="stone"] .nep-pdp-editorial :is(.nep-pdp-disclaimer,.nep-pdp-details,.nep-product-detail__media,.nep-related-product) {border-radius:var(--radius-container);}
body.nep[data-astryx-theme="stone"] :is(.page-content blockquote,.nep-article blockquote) {border-radius:var(--radius-container);}
@media (max-width:767px) {
  body.nep[data-astryx-theme="stone"] .nep-shop ul.products {gap:16px;}
  body.nep[data-astryx-theme="stone"] .nep-shop li.product .woocommerce-loop-product__title {font-size:18px;}
  body.nep[data-astryx-theme="stone"] .vd-home .vd-hero__media {border-radius:var(--radius-container) !important;}
}
@media (prefers-reduced-motion:reduce) {body.nep[data-astryx-theme="stone"] :is(li.product,.vd-feature,.shop-room) {transition:none;}}
/* When the real catalog contains only our one public *non-purchasable* demo,
   use a paired editorial layout, not an empty three-column retail shelf. */
body.nep[data-astryx-theme="stone"] .nep-shop .shop-live-catalog.vd-shop-single {
  display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  align-items:start;gap:24px;padding-block:12px 0;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single > :is(.shop-product-search,.shop-product-filters) {
  display:none!important;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single > .wp-block-woocommerce-product-collection {
  grid-column:1;min-width:0;width:100%;margin:0;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single .wc-block-product-template {
  width:100%;max-width:none;margin:0;
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single li.product {
  width:100%;max-width:100%;margin:0;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single .vd-shop-single-note {
  grid-column:2;display:flex;flex-direction:column;min-width:0;
  min-height:520px;padding:clamp(27px,4vw,50px);
  background:var(--color-background-muted);color:var(--color-text-primary);
  border:1px solid var(--color-border);border-radius:var(--radius-page);
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__eyebrow {
  margin:0 0 24px;color:var(--color-text-secondary);
  font:720 11px/1.5 var(--font-family-body);letter-spacing:.1em;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note h3 {
  max-width:18ch;margin:0 0 19px;
  color:var(--color-text-primary);font:660 clamp(29px,3vw,42px)/1.17 var(--font-family-heading);letter-spacing:-.045em;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note > p:not(.vd-shop-single-note__eyebrow) {
  max-width:55ch;margin:0 0 17px;
  font:470 15px/1.75 var(--font-family-body);color:var(--color-text-secondary);
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note .vd-shop-single-note__disclaimer {
  padding:13px 15px;border:1px solid var(--color-border-emphasized);
  border-radius:var(--radius-element);font-size:12px!important;line-height:1.55!important;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__actions {
  display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;margin-top:auto;padding-top:20px;
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__primary {
  display:inline-flex;justify-content:space-between;align-items:center;gap:17px;
  min-height:48px;padding:13px 18px;
  color:var(--color-on-accent);background:var(--color-accent);
  border:1px solid var(--color-accent);border-radius:var(--radius-element);
  font:700 12px/1.4 var(--font-family-body);
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__primary:hover {filter:brightness(.9);color:var(--color-on-accent);}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__secondary {
  display:inline-flex;align-items:center;gap:10px;min-height:44px;
  font:700 12px/1.4 var(--font-family-body);color:var(--color-text-primary);
  border-bottom:1px solid var(--color-text-primary);
}
body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__secondary:hover {opacity:.8;}
@media (max-width:1000px) {
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-live-catalog.vd-shop-single {grid-template-columns:1fr;gap:18px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single > .wp-block-woocommerce-product-collection,
  body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single .vd-shop-single-note {grid-column:1;}
  body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single .vd-shop-single-note {min-height:0;padding:25px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .vd-shop-single-note__actions {margin-top:14px;}
}

/* Shop/footer alignment repair. Keep the existing content and WooCommerce flow.
 * A single centered rail, one padding layer per panel, and complete pill buttons.
 */
body.nep[data-astryx-theme="stone"] { --vd-layout-width:1320px; --vd-layout-gutter:36px; }
body.nep[data-astryx-theme="stone"] .site-header > .top.vd-site-header__inner,
body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .wrap.vd-site-footer__main,
body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .wrap.vd-site-footer__bottom {
  width:min(calc(100% - var(--vd-layout-gutter) * 2),var(--vd-layout-width));
  max-width:none;margin-inline:auto;
}
/* Reset both former padding layers; the rounded panel owns all its spacing. */
body.nep[data-astryx-theme="stone"] .nep-shop section.shop-trade {
  width:min(calc(100% - var(--vd-layout-gutter) * 2),var(--vd-layout-width));
  margin:8px auto 0;padding:48px;
  border:0;border-radius:var(--radius-page);
  background:var(--color-background-inverted);color:var(--color-on-accent);
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade > .shop-trade-layout.wrap {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  width:100%;max-width:none;margin:0;padding:0;
  gap:48px;align-items:center;
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade-layout > div {min-width:0;}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade .shop-eyebrow {
  margin:0 0 16px;color:inherit;opacity:.8;
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade :is(h2,h2 em) {
  margin:0;color:inherit;font-style:normal;
  font-family:var(--font-family-heading);font-weight:650;
  font-size:clamp(30px,2.7vw,42px);line-height:1.18;letter-spacing:-.035em;
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade-detail {
  display:flex;flex-direction:column;align-items:flex-start;gap:24px;
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade-detail p {
  max-width:52ch;margin:0;color:inherit;opacity:.86;font-size:15px;line-height:1.7;
}
body.nep[data-astryx-theme="stone"] .nep-shop a.shop-trade-button,
body.nep[data-astryx-theme="stone"] .site-header a.vd-site-header__cta {
  display:inline-flex;align-items:center;justify-content:space-between;gap:20px;
  width:fit-content;max-width:100%;min-width:0;min-height:46px;
  margin:0;padding:12px 22px;
  border:1px solid currentColor;border-radius:var(--radius-full)!important;
  font:650 13px/1.45 var(--font-family-body);text-decoration:none;
}
body.nep[data-astryx-theme="stone"] .nep-shop a.shop-trade-button {
  background:var(--color-background-body);color:var(--color-text-primary);
  border-color:var(--color-background-body);
}
body.nep[data-astryx-theme="stone"] .nep-shop a.shop-trade-button:hover {
  background:var(--color-background-muted);color:var(--color-text-primary);
  border-color:var(--color-background-muted);
}
body.nep[data-astryx-theme="stone"] .nep-shop a.shop-trade-button:focus-visible {
  outline:2px solid currentColor;outline-offset:4px;
}
body.nep[data-astryx-theme="stone"] .nep-shop .shop-bottom-note.wrap {
  width:min(calc(100% - var(--vd-layout-gutter) * 2),var(--vd-layout-width));
  margin-inline:auto;padding:24px 0;gap:20px;align-items:center;
}
/* A shared footer grid: brand + three equal navigation columns. */
body.nep[data-astryx-theme="stone"] footer.vd-site-footer {margin:0;padding:0;}
body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .vd-site-footer__main {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);
  align-items:start;gap:64px;padding:48px 0 40px;
}
body.nep[data-astryx-theme="stone"] .vd-site-footer__brand {min-width:0;}
body.nep[data-astryx-theme="stone"] .vd-site-footer__brand p {max-width:36ch;margin:18px 0 20px;}
body.nep[data-astryx-theme="stone"] .vd-site-footer__links {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:32px;
}
body.nep[data-astryx-theme="stone"] .vd-site-footer__links nav {gap:14px;min-width:0;}
body.nep[data-astryx-theme="stone"] .vd-site-footer__links h2 {
  margin:0 0 4px;font-size:13px;line-height:1.5;
}
body.nep[data-astryx-theme="stone"] .vd-site-footer__links a {line-height:1.6;}
body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .vd-site-footer__bottom {
  margin-top:0;padding:20px 0;gap:24px;align-items:center;
}
@media(max-width:1100px) {
  body.nep[data-astryx-theme="stone"] .site-header a.vd-site-header__cta {display:none;}
}
@media(max-width:1000px) {
  body.nep[data-astryx-theme="stone"] .nep-shop section.shop-trade {padding:36px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade > .shop-trade-layout.wrap {gap:32px;}
  body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .vd-site-footer__main {gap:36px;}
  body.nep[data-astryx-theme="stone"] .vd-site-footer__links {gap:20px;}
}
@media(max-width:767px) {
  body.nep[data-astryx-theme="stone"] {--vd-layout-gutter:18px;}
  body.nep[data-astryx-theme="stone"] .nep-shop section.shop-trade {padding:28px 24px;margin-top:0;}
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade > .shop-trade-layout.wrap {grid-template-columns:1fr;gap:24px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade-detail {gap:20px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-trade-detail p {font-size:14px;}
  body.nep[data-astryx-theme="stone"] .nep-shop .shop-bottom-note.wrap {padding:20px 0;flex-wrap:wrap;gap:12px;}
  body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .vd-site-footer__main {grid-template-columns:1fr;gap:32px;padding:36px 0;}
  body.nep[data-astryx-theme="stone"] .vd-site-footer__links {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
  body.nep[data-astryx-theme="stone"] footer.vd-site-footer > .vd-site-footer__bottom {flex-direction:column;align-items:flex-start;gap:16px;}
}
@media(max-width:479px) {
  body.nep[data-astryx-theme="stone"] .vd-site-footer__links {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;}
}
