/* Three distinct storefront compositions. All product media retain their full frame. */

/* 05 — Copper Journal: warm paper, fine rules and an editorial product index. */
.ec-signature.ec-design-journal {
  --sig-bg:#f0e7da; --sig-surface:#f8f2e8; --sig-ink:#35271e;
  --sig-muted:#74604f; --sig-accent:#9b4b2b; --sig-line:#cdb9a1;
  --sig-heading:Georgia,'Times New Roman',serif; --sig-radius:0px;
  --sig-on-accent:#fff9f0; --glow-rgb:165,93,49;
  background:var(--sig-bg); font-family:Arial,Helvetica,sans-serif;
}
.ec-signature.ec-design-journal .sig-header { background:var(--sig-bg); border-top:5px solid var(--sig-accent); }
.ec-signature.ec-design-journal .sig-header .header-inner {
  display:grid; grid-template-columns:1fr auto 1fr; grid-template-rows:auto auto;
  min-height:0; padding-top:16px; gap:0 24px; border-bottom:3px double var(--sig-ink);
}
.ec-signature.ec-design-journal .sig-header .brand { grid-column:2; grid-row:1; justify-self:center; padding:15px 0 22px; }
.ec-signature.ec-design-journal .sig-header .wordmark { font-family:var(--sig-heading); font-weight:400; font-size:31px; letter-spacing:.1em; }
.ec-signature.ec-design-journal .sig-header .desktop-nav { grid-column:1/3; grid-row:2; justify-self:start; margin:0; gap:30px; font-size:10px; }
.ec-signature.ec-design-journal .sig-header .desktop-nav a { min-height:44px; padding:14px 0; }
.ec-signature.ec-design-journal .sig-header .header-actions { grid-column:3; grid-row:2; justify-self:end; margin:0; gap:18px; }
.ec-signature.ec-design-journal .sig-header .sig-search { grid-column:1; grid-row:1; max-width:220px; align-self:center; }
.ec-signature.ec-design-journal .sig-search input { border:0; border-bottom:1px solid var(--sig-line); background:transparent; border-radius:0; }
.ec-signature.ec-design-journal .sig-search button { background:transparent; color:var(--sig-accent); border:0; }
.ec-signature.ec-design-journal .sig-header :is(.es-icon,.sig-icon) { stroke-width:1.25; }
.ec-signature.ec-design-journal .announcement { background:var(--sig-ink); color:var(--sig-surface); }
.ec-signature.ec-design-journal .signature-hero { padding-top:34px; padding-bottom:42px !important; border-bottom:1px solid var(--sig-line); text-align:left; }
.ec-signature.ec-design-journal .sig-hero-layout { display:grid; grid-template-columns:minmax(195px,.72fr) minmax(0,1.28fr); gap:28px 6%; align-items:center; }
.ec-signature.ec-design-journal .sig-side { grid-column:1; grid-row:1; align-self:start; padding-top:12px; }
.ec-signature.ec-design-journal .sig-side :is(h1,h2) { font-family:var(--sig-heading); font-size:clamp(42px,5.7vw,74px); font-weight:400; letter-spacing:-.065em; line-height:1; }
.ec-signature.ec-design-journal .sig-side :is(.eyebrow,.sig-kicker) { color:var(--sig-accent); letter-spacing:.2em; }
.ec-signature.ec-design-journal .hero .hero-media.ec-video-stage { grid-column:2; grid-row:1/3; width:min(100%,590px,calc(72svh * var(--ec-native-ratio))) !important; margin:0 0 0 auto !important; }
.ec-signature.ec-design-journal .hero .hero-media.ec-video-stage::before { opacity:.15; filter:blur(26px) saturate(.4); }
.ec-signature.ec-design-journal .sig-hero-note { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:26px; border-top:1px solid var(--sig-line); padding-top:18px; }
.ec-signature.ec-design-journal .sig-product-index { border-top:3px double var(--sig-line); padding-top:12px; }
.ec-signature.ec-design-journal .sig-product-index a { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:48px; padding:10px 0; border-bottom:1px solid var(--sig-line); color:var(--sig-ink); }
.ec-signature.ec-design-journal .sig-product-index a:hover { color:var(--sig-accent); }
.ec-signature.ec-design-journal .sig-product-index :is(.sig-number,.sig-index-number) { color:var(--sig-accent); font:italic 27px/1 var(--sig-heading); }
.ec-signature.ec-design-journal .hero .hero-media.ec-video-stage .hero-cta .hero-button { border-radius:0; color:#39271c; background:rgba(255,246,227,.53); border-color:rgba(255,252,244,.9); letter-spacing:.13em; }
.ec-signature.ec-design-journal .signature-products { padding-top:40px; padding-bottom:65px; }
.ec-signature.ec-design-journal .sig-section-heading { padding-bottom:19px; margin-bottom:26px; border-bottom:3px double var(--sig-ink); align-items:baseline; }
.ec-signature.ec-design-journal .sig-section-heading :is(h1,h2) { font-size:clamp(34px,4vw,53px); font-style:italic; }
.ec-signature.ec-design-journal ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 38px; }
.ec-signature.ec-design-journal ul.products li.product {
  display:grid; grid-template-columns:minmax(115px,40%) minmax(0,1fr); grid-template-rows:auto auto 1fr;
  column-gap:22px; row-gap:8px; padding:26px 0 !important; border:0; border-top:1px solid var(--sig-line);
  border-radius:0; background:transparent; box-shadow:none; text-align:left;
}
.ec-signature.ec-design-journal ul.products li.product .woocommerce-loop-product__link { display:contents; }
.ec-signature.ec-design-journal ul.products li.product .woocommerce-loop-product__link::before { display:none; }
.ec-signature.ec-design-journal ul.products li.product a img { grid-column:1; grid-row:1/4; margin:0; width:100%; aspect-ratio:1; object-fit:contain; border:0; border-radius:0; background:#e8dac6; box-shadow:none; }
.ec-signature.ec-design-journal ul.products li.product .woocommerce-loop-product__title { grid-column:2; grid-row:1; align-self:end; padding:6px 0 0; margin:0; color:var(--sig-ink); font:400 clamp(23px,2.5vw,34px)/1.12 var(--sig-heading); letter-spacing:-.05em; }
.ec-signature.ec-design-journal ul.products li.product .price { grid-column:2; grid-row:2; margin:0; color:var(--sig-accent); font:400 13px/1.5 Arial,Helvetica,sans-serif; }
.ec-signature.ec-design-journal ul.products li.product .button { grid-column:2; grid-row:3; justify-self:start; align-self:start; margin:3px 0 0; padding:12px 0 8px; min-height:44px; color:var(--sig-ink); background:transparent; border:0; border-bottom:1px solid var(--sig-accent); border-radius:0; font-size:9px; letter-spacing:.12em; }
.ec-signature.ec-design-journal ul.products li.product .button:hover { color:var(--sig-accent); background:transparent; }
.ec-signature.ec-design-journal ul.products li.product .star-rating { grid-column:2; margin:0; }
.ec-signature.ec-design-journal .reviews-section { background:#e8d9c4; border-block:1px solid var(--sig-line); }
.ec-signature.ec-design-journal .customer-review { border:0; border-left:2px solid var(--sig-accent); background:transparent; padding:12px 24px; }
.ec-signature.ec-design-journal .sig-footer { background:var(--sig-bg); border-top:3px double var(--sig-ink); padding-top:37px; }
.ec-signature.ec-design-journal .sig-footer .footer-inner { align-items:start; }
.ec-signature.ec-design-journal .sig-footer .contact-intro h2 { font:italic 48px/1 var(--sig-heading); }
.ec-signature.ec-design-journal .sig-footer .contact-links { display:grid; gap:0; width:min(460px,55%); }
.ec-signature.ec-design-journal .sig-footer .contact-links > a { min-height:53px; padding:14px 0; border:0; border-bottom:1px solid var(--sig-line); font-size:12px; }
.ec-signature.ec-design-journal .sig-footer .contact-links > a > :is(.es-icon,.sig-icon):last-child { margin-left:auto; }
.ec-signature.ec-design-journal .mobile-navigation { color:var(--sig-ink); background:#f8f2e8; border-top:3px double var(--sig-accent); border-radius:0; }
.ec-signature.ec-design-journal .store-main .page-heading { padding-bottom:24px; border-bottom:3px double var(--sig-ink); }
.ec-signature.ec-design-journal .store-main :is(.page-heading h1,.woocommerce-products-header__title) { font-family:var(--sig-heading); font-style:italic; }
.ec-signature.ec-design-journal div.product div.summary { border-top:3px double var(--sig-accent); padding:28px 0 0; }
.ec-signature.ec-design-journal div.product .product_title { color:var(--sig-ink); font:400 clamp(38px,4.5vw,62px)/1.1 var(--sig-heading); }
.ec-signature.ec-design-journal div.product div.images img { border:1px solid var(--sig-line); border-radius:0; }
.ec-signature.ec-design-journal :is(table.shop_table,.cart_totals,.woocommerce-billing-fields,.woocommerce-additional-fields) { border-radius:0; }
.ec-signature.ec-design-journal table.shop_table thead { background:#e9dbc8; }
.ec-signature.ec-design-journal #order_review_heading { padding-block:14px; border-block:3px double var(--sig-line); }
.ec-signature.ec-design-journal :is(.ec-review-upload,.ec-manual-payment,.ec-manual-payment-choice) { color:var(--sig-ink); background:var(--sig-surface); border-color:var(--sig-line); border-radius:0; }

/* 06 — Sage Maison: soft organic geometry and an airy botanical gallery. */
.ec-signature.ec-design-sage {
  --sig-bg:#f2f5eb; --sig-surface:#fcfdf7; --sig-ink:#253c2b;
  --sig-muted:#5e705c; --sig-accent:#416440; --sig-line:#cbd6bf;
  --sig-heading:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;
  --sig-radius:24px; --sig-on-accent:#fcfdf7; --glow-rgb:122,153,100;
  background:var(--sig-bg); font-family:Arial,Helvetica,sans-serif;
}
.ec-signature.ec-design-sage .announcement { background:#314b34; color:#f1f6e9; }
.ec-signature.ec-design-sage .sig-header { padding-block:18px; background:var(--sig-bg); border-bottom:0; }
.ec-signature.ec-design-sage .sig-header .header-inner { display:flex; min-height:86px; padding:10px 26px; gap:24px; border:1px solid var(--sig-line); border-radius:100px; background:rgba(252,253,247,.88); }
.ec-signature.ec-design-sage .sig-header .brand { margin:0; padding:5px 0; max-width:210px; }
.ec-signature.ec-design-sage .sig-header .brand-logo { max-width:180px; }
.ec-signature.ec-design-sage .sig-header .desktop-nav { margin-left:auto; gap:28px; font-size:11px; letter-spacing:.03em; text-transform:none; }
.ec-signature.ec-design-sage .sig-header .desktop-nav a { min-height:44px; padding:13px 5px; }
.ec-signature.ec-design-sage .sig-header .header-actions { margin:0; gap:18px; }
.ec-signature.ec-design-sage .sig-header .cart-link { border:1px solid var(--sig-line); background:#e7eddd; border-radius:50%; width:46px; height:46px; }
.ec-signature.ec-design-sage .sig-header .sig-search { flex:0 1 230px; min-width:130px; margin-left:auto; }
.ec-signature.ec-design-sage .sig-search input { border-radius:99px; background:var(--sig-bg); }
.ec-signature.ec-design-sage .sig-search button { border-radius:50%; background:#e0e9d6; color:var(--sig-ink); }
.ec-signature.ec-design-sage .signature-hero { padding-top:14px; padding-bottom:54px !important; text-align:left; overflow:visible; }
.ec-signature.ec-design-sage .sig-hero-layout {
  position:relative; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr); align-items:center;
  column-gap:6%; row-gap:22px; padding:34px 5%; background:#e2e9d8; border-radius:110px 26px 110px 26px; isolation:isolate;
}
.ec-signature.ec-design-sage .sig-side { grid-column:2; grid-row:1; align-self:end; }
.ec-signature.ec-design-sage .sig-side :is(h1,h2) { max-width:430px; font:400 clamp(42px,5.1vw,68px)/1.05 var(--sig-heading); letter-spacing:-.05em; }
.ec-signature.ec-design-sage .sig-side :is(.eyebrow,.sig-kicker) { color:var(--sig-accent); font-size:11px; letter-spacing:.12em; }
.ec-signature.ec-design-sage .hero .hero-media.ec-video-stage { grid-column:1; grid-row:1/3; width:min(100%,560px,calc(68svh * var(--ec-native-ratio))) !important; margin:0 !important; }
.ec-signature.ec-design-sage .hero .hero-media.ec-video-stage::before { opacity:.22; filter:blur(28px) saturate(.45); }
.ec-signature.ec-design-sage .sig-hero-note { display:flex; align-items:center; justify-content:center; gap:30px; margin-top:24px; padding-top:0; border:0; }
.ec-signature.ec-design-sage .sig-featured-list { display:block; margin-top:28px; max-width:360px; }
.ec-signature.ec-design-sage .sig-featured { display:grid; grid-template-columns:92px minmax(0,1fr); align-items:center; gap:18px; padding:13px; background:rgba(252,253,247,.68); border:1px solid rgba(255,255,255,.7); border-radius:24px; }
.ec-signature.ec-design-sage .sig-featured img { object-fit:contain; width:92px; aspect-ratio:1; border-radius:16px; }
.ec-signature.ec-design-sage .sig-featured-copy { display:grid; gap:5px; }
.ec-signature.ec-design-sage .sig-featured-name { font:400 25px/1.15 var(--sig-heading); color:var(--sig-ink); }
.ec-signature.ec-design-sage .sig-featured-price { font-size:12px; color:var(--sig-muted); }
.ec-signature.ec-design-sage .hero .hero-media.ec-video-stage .hero-cta .hero-button { border-radius:99px; color:#243b2a; background:rgba(249,255,239,.58); border-color:rgba(255,255,255,.9); letter-spacing:.05em; }
.ec-signature.ec-design-sage .signature-products { padding-top:34px; padding-bottom:76px; }
.ec-signature.ec-design-sage .sig-section-heading { justify-content:center; text-align:center; margin-bottom:46px; gap:30px; }
.ec-signature.ec-design-sage .sig-section-heading :is(h1,h2) { font:400 clamp(36px,4.2vw,55px)/1.15 var(--sig-heading); }
.ec-signature.ec-design-sage ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px 30px; }
.ec-signature.ec-design-sage ul.products li.product { padding:16px 16px 20px !important; border:1px solid var(--sig-line); border-radius:70px 22px 22px 22px; background:var(--sig-surface); box-shadow:none; text-align:left; }
.ec-signature.ec-design-sage ul.products li.product:nth-child(3n+2) { margin-top:24px !important; margin-bottom:-24px !important; border-radius:22px 22px 70px 22px; }
.ec-signature.ec-design-sage ul.products li.product:nth-child(3n) { border-radius:22px 70px 22px 22px; }
.ec-signature.ec-design-sage ul.products li.product a img { aspect-ratio:1; object-fit:contain; border:0; border-radius:20px; background:#ece5d7; margin-bottom:20px; box-shadow:none; }
.ec-signature.ec-design-sage ul.products li.product .woocommerce-loop-product__link::before { display:none; }
.ec-signature.ec-design-sage ul.products li.product .woocommerce-loop-product__title { margin-bottom:7px; color:var(--sig-ink); font:400 clamp(23px,2.3vw,31px)/1.2 var(--sig-heading); }
.ec-signature.ec-design-sage ul.products li.product .price { color:var(--sig-muted); font-size:12px; }
.ec-signature.ec-design-sage ul.products li.product .button { margin-top:15px; padding:12px 18px; min-height:44px; color:var(--sig-ink); background:#e7efdf; border:1px solid #d2dfc6; border-radius:99px; font-size:10px; letter-spacing:.04em; text-transform:none; }
.ec-signature.ec-design-sage ul.products li.product .button:hover { color:var(--sig-on-accent); background:var(--sig-accent); border-color:var(--sig-accent); }
.ec-signature.ec-design-sage .reviews-section { margin-top:22px; background:#e2ead8; border:0; padding-block:52px; }
.ec-signature.ec-design-sage .reviews-layout { gap:46px; }
.ec-signature.ec-design-sage .reviews-layout > h2 { color:var(--sig-ink); font-family:var(--sig-heading); font-size:38px; }
.ec-signature.ec-design-sage .customer-review { color:var(--sig-ink); background:var(--sig-surface); border:1px solid var(--sig-line); border-radius:28px; padding:26px; }
.ec-signature.ec-design-sage :is(.review-author,.review-empty p) { color:var(--sig-muted); }
.ec-signature.ec-design-sage .sig-footer { padding-block:60px 64px; color:var(--sig-ink); background:var(--sig-bg); border-top:0; }
.ec-signature.ec-design-sage .sig-footer .footer-inner { display:flex; flex-direction:column; align-items:center; text-align:center; gap:28px; }
.ec-signature.ec-design-sage .sig-footer .contact-intro h2 { font:400 48px/1.1 var(--sig-heading); }
.ec-signature.ec-design-sage .sig-footer .contact-intro p { color:var(--sig-muted); }
.ec-signature.ec-design-sage .sig-footer .contact-links { justify-content:center; flex-wrap:wrap; gap:14px; }
.ec-signature.ec-design-sage .sig-footer .contact-links > a { min-height:50px; padding:13px 22px; border:1px solid var(--sig-line); border-radius:99px; color:var(--sig-ink); background:#e5eddc; font-size:12px; }
.ec-signature.ec-design-sage .sig-footer .contact-links > a > :is(.es-icon,.sig-icon) { color:var(--sig-accent); }
.ec-signature.ec-design-sage .mobile-navigation { color:var(--sig-ink); background:rgba(252,253,247,.97); border:1px solid var(--sig-line); border-bottom:0; border-radius:24px 24px 0 0; }
.ec-signature.ec-design-sage .store-main { padding-top:38px; }
.ec-signature.ec-design-sage .store-main :is(.page-heading h1,.woocommerce-products-header__title) { font-family:var(--sig-heading); font-size:clamp(38px,5vw,62px); }
.ec-signature.ec-design-sage div.product div.images img { border:0; border-radius:28px; }
.ec-signature.ec-design-sage div.product div.summary { padding:32px; background:#e3ebd9; border:1px solid #cddabd; border-radius:42px 16px 42px 16px; }
.ec-signature.ec-design-sage div.product .product_title { color:var(--sig-ink); font:400 clamp(36px,4vw,57px)/1.08 var(--sig-heading); }
.ec-signature.ec-design-sage :is(table.shop_table,.ec-review-upload,.ec-manual-payment,.ec-manual-payment-choice) { color:var(--sig-ink); background:var(--sig-surface); border-color:var(--sig-line); border-radius:20px; }
.ec-signature.ec-design-sage .cart-collaterals .cart_totals { padding:25px; border:1px solid var(--sig-line); border-radius:28px; background:#e5eddd; }
.ec-signature.ec-design-sage #customer_details { padding:26px; border:1px solid var(--sig-line); border-radius:28px; background:var(--sig-surface); }
.ec-signature.ec-design-sage #payment { border-radius:24px; }
.ec-signature.ec-design-sage #payment ul.payment_methods > li:is(.payment_method_ec_bank_transfer,.payment_method_ec_crypto_payment) { border-radius:22px; }
.ec-signature.ec-design-sage .ec-review-upload { border-radius:20px; }

/* 07 — Obsidian Gold: hard graphic divisions, strong typography, warm metal. */
.ec-signature.ec-design-obsidian {
  --sig-bg:#151614; --sig-surface:#22241f; --sig-ink:#f2f0e5;
  --sig-muted:#b5b9a8; --sig-accent:#d1ba68; --sig-line:#555846;
  --sig-heading:'Arial Narrow','Franklin Gothic Medium',Impact,Arial,sans-serif;
  --sig-radius:0px; --sig-on-accent:#171913; --glow-rgb:193,169,91;
  background:var(--sig-bg); font-family:Arial,Helvetica,sans-serif;
}
.ec-signature.ec-design-obsidian .announcement { background:var(--sig-accent); color:#1b1d15; font-weight:600; }
.ec-signature.ec-design-obsidian .sig-header { background:var(--sig-bg); border-bottom:1px solid var(--sig-line); }
.ec-signature.ec-design-obsidian .sig-header .header-inner { min-height:101px; display:grid; grid-template-columns:auto 1fr auto; gap:32px; border:0; }
.ec-signature.ec-design-obsidian .sig-header .brand { grid-column:1; grid-row:1; padding:20px 0; margin:0; max-width:240px; }
.ec-signature.ec-design-obsidian .sig-header .brand-logo { max-width:215px; max-height:58px; }
.ec-signature.ec-design-obsidian .sig-header .desktop-nav { grid-column:2; grid-row:1; justify-self:center; margin:0; gap:35px; font-size:11px; letter-spacing:.12em; }
.ec-signature.ec-design-obsidian .sig-header .desktop-nav a { display:inline-flex; align-items:center; min-height:44px; padding:11px 0; }
.ec-signature.ec-design-obsidian .sig-header .header-actions { grid-column:3; grid-row:1; margin:0; gap:18px; }
.ec-signature.ec-design-obsidian .sig-header .cart-link { width:47px; height:47px; border:1px solid var(--sig-line); border-radius:0; }
.ec-signature.ec-design-obsidian .sig-header .currency { color:var(--sig-accent); font-weight:600; }
.ec-signature.ec-design-obsidian .sig-header :is(.es-icon,.sig-icon) { stroke-width:1.7; }
.ec-signature.ec-design-obsidian .sig-header .es-cart-count { background:var(--sig-accent); color:#171913; border-radius:0; }
.ec-signature.ec-design-obsidian .sig-header .sig-search { grid-column:2; grid-row:2; margin-bottom:16px; justify-self:stretch; }
.ec-signature.ec-design-obsidian .sig-search input { background:#22241f; border:1px solid var(--sig-line); color:var(--sig-ink); border-radius:0; }
.ec-signature.ec-design-obsidian .sig-search button { color:var(--sig-on-accent); background:var(--sig-accent); border-radius:0; }
.ec-signature.ec-design-obsidian .signature-hero { padding-top:38px; padding-bottom:52px !important; text-align:left; }
.ec-signature.ec-design-obsidian .sig-hero-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr); grid-template-rows:auto auto; align-items:start; gap:0 6%; }
.ec-signature.ec-design-obsidian .sig-side { grid-column:2; grid-row:1; padding:30px 0 24px; border-top:4px solid var(--sig-accent); }
.ec-signature.ec-design-obsidian .sig-side :is(h1,h2) { font:700 clamp(46px,5.5vw,76px)/.98 var(--sig-heading); text-transform:uppercase; letter-spacing:-.045em; }
.ec-signature.ec-design-obsidian .sig-side :is(.eyebrow,.sig-kicker) { color:var(--sig-accent); font-size:11px; font-weight:600; letter-spacing:.18em; }
.ec-signature.ec-design-obsidian .hero .hero-media.ec-video-stage { grid-column:1; grid-row:1/3; width:min(100%,670px,calc(75svh * var(--ec-native-ratio))) !important; margin:0 !important; }
.ec-signature.ec-design-obsidian .hero .hero-media.ec-video-stage::before { opacity:.24; filter:blur(38px) saturate(.35); }
.ec-signature.ec-design-obsidian .sig-hero-note { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:26px; padding:19px 0 0; border-top:1px solid var(--sig-line); }
.ec-signature.ec-design-obsidian .sig-product-index { padding:0; border:0; }
.ec-signature.ec-design-obsidian .sig-product-index a { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:11px 0; border-bottom:1px solid var(--sig-line); font-size:12px; }
.ec-signature.ec-design-obsidian .sig-product-index :is(.sig-number,.sig-index-number) { color:var(--sig-accent); font:600 26px/1 var(--sig-heading); }
.ec-signature.ec-design-obsidian .hero .hero-media.ec-video-stage .hero-cta .hero-button { border-radius:0; color:#fff9dd; background:rgba(28,31,21,.58); border:1px solid rgba(235,220,164,.85); letter-spacing:.14em; font-weight:600; }
.ec-signature.ec-design-obsidian .signature-products { padding-top:35px; padding-bottom:60px; border-top:1px solid var(--sig-line); }
.ec-signature.ec-design-obsidian .sig-section-heading { align-items:end; padding-bottom:26px; margin-bottom:0; }
.ec-signature.ec-design-obsidian .sig-section-heading :is(h1,h2) { font:700 clamp(35px,4.6vw,60px)/1 var(--sig-heading); letter-spacing:-.035em; text-transform:uppercase; }
.ec-signature.ec-design-obsidian ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; padding:1px; background:var(--sig-line); border:1px solid var(--sig-line); }
.ec-signature.ec-design-obsidian ul.products li.product { padding:19px 19px 22px !important; border:0; border-radius:0; background:var(--sig-bg); box-shadow:none; text-align:left; }
.ec-signature.ec-design-obsidian ul.products li.product:hover { background:#22241f; }
.ec-signature.ec-design-obsidian ul.products li.product a img { aspect-ratio:1; object-fit:contain; margin-bottom:23px; border:0; border-radius:0; background:#eee6d5; box-shadow:none; }
.ec-signature.ec-design-obsidian ul.products li.product .woocommerce-loop-product__link::before { display:none; }
.ec-signature.ec-design-obsidian ul.products li.product .woocommerce-loop-product__title { margin-bottom:8px; color:var(--sig-ink); font:700 clamp(24px,2.7vw,36px)/1.07 var(--sig-heading); letter-spacing:-.025em; text-transform:uppercase; }
.ec-signature.ec-design-obsidian ul.products li.product .price { color:var(--sig-accent); font-size:13px; letter-spacing:.04em; }
.ec-signature.ec-design-obsidian ul.products li.product .button { display:flex; min-height:44px; padding:12px 15px; margin:20px 0 0; border:1px solid var(--sig-line); border-radius:0; background:transparent; color:var(--sig-ink); font-size:10px; letter-spacing:.13em; }
.ec-signature.ec-design-obsidian ul.products li.product .button:hover { color:var(--sig-on-accent); background:var(--sig-accent); border-color:var(--sig-accent); }
.ec-signature.ec-design-obsidian .reviews-section { background:#22241f; border-block:1px solid var(--sig-line); padding-block:45px; }
.ec-signature.ec-design-obsidian .reviews-layout { grid-template-columns:.8fr 1.2fr; gap:60px; }
.ec-signature.ec-design-obsidian .reviews-layout > h2 { color:var(--sig-ink); font:700 38px/1.05 var(--sig-heading); letter-spacing:-.025em; text-transform:uppercase; }
.ec-signature.ec-design-obsidian .customer-review { color:var(--sig-ink); background:var(--sig-bg); border:1px solid var(--sig-line); border-radius:0; }
.ec-signature.ec-design-obsidian :is(.review-author,.review-empty p) { color:var(--sig-muted); }
.ec-signature.ec-design-obsidian .sig-footer { padding-block:46px 58px; background:var(--sig-bg); color:var(--sig-ink); }
.ec-signature.ec-design-obsidian .sig-footer .footer-inner { display:grid; grid-template-columns:1fr 1fr; gap:45px; align-items:start; }
.ec-signature.ec-design-obsidian .sig-footer .contact-intro h2 { color:var(--sig-accent); font:700 clamp(42px,5vw,68px)/1 var(--sig-heading); letter-spacing:-.03em; text-transform:uppercase; }
.ec-signature.ec-design-obsidian .sig-footer .contact-intro p { color:var(--sig-muted); }
.ec-signature.ec-design-obsidian .sig-footer .contact-links { display:grid; grid-template-columns:1fr; gap:0; }
.ec-signature.ec-design-obsidian .sig-footer .contact-links > a { padding:17px 0; min-height:58px; color:var(--sig-ink); border:0; border-bottom:1px solid var(--sig-line); border-radius:0; font-size:12px; }
.ec-signature.ec-design-obsidian .sig-footer .contact-links > a > :is(.es-icon,.sig-icon):last-child { margin-left:auto; }
.ec-signature.ec-design-obsidian .sig-footer .contact-links > a:hover { color:var(--sig-accent); }
.ec-signature.ec-design-obsidian .mobile-navigation { border-radius:0; border-top:2px solid var(--sig-accent); color:var(--sig-ink); background:#151614; }
.ec-signature.ec-design-obsidian .mobile-navigation a { border-inline-end:1px solid var(--sig-line); }
.ec-signature.ec-design-obsidian .mobile-navigation a:last-child { border-inline-end:0; }
.ec-signature.ec-design-obsidian .store-main :is(.page-heading h1,.woocommerce-products-header__title) { font:700 clamp(40px,5vw,67px)/1 var(--sig-heading); text-transform:uppercase; letter-spacing:-.04em; }
.ec-signature.ec-design-obsidian div.product div.summary { border-top:4px solid var(--sig-accent); padding:25px 0 0; }
.ec-signature.ec-design-obsidian div.product .product_title { color:var(--sig-ink); font:700 clamp(39px,4.7vw,65px)/1 var(--sig-heading); text-transform:uppercase; letter-spacing:-.035em; }
.ec-signature.ec-design-obsidian div.product div.images img { border:1px solid var(--sig-line); border-radius:0; }
.ec-signature.ec-design-obsidian div.product .woocommerce-tabs ul.tabs { border-color:var(--sig-line); }
.ec-signature.ec-design-obsidian :is(table.shop_table,.ec-review-upload,.ec-manual-payment,.ec-manual-payment-choice) { color:var(--sig-ink); background:var(--sig-surface); border-color:var(--sig-line); border-radius:0; }
.ec-signature.ec-design-obsidian table.shop_table thead { color:var(--sig-accent); background:#1a1c17; }
.ec-signature.ec-design-obsidian :is(.cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3) { font-family:var(--sig-heading); text-transform:uppercase; font-weight:700; }
.ec-signature.ec-design-obsidian #order_review_heading { padding-top:25px; border-top:3px solid var(--sig-accent); }
.ec-signature.ec-design-obsidian #payment ul.payment_methods > li:is(.payment_method_ec_bank_transfer,.payment_method_ec_crypto_payment) { border-radius:0; }
.ec-signature.ec-design-obsidian #payment .ec-manual-payment-icon { color:var(--sig-accent); }
.ec-signature.ec-design-obsidian #payment .ec-manual-payment-icon svg { stroke-width:1.5; }

/* Native form states and touch targets are theme-coloured without replacing controls. */
.ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(.sig-product-index a,.sig-featured,.contact-links > a,.cart-link) { min-height:44px; }
.ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(a,button,input,select,textarea):focus-visible { outline:2px solid var(--sig-accent); outline-offset:4px; }
.ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,div.product form.cart .variations select,.quantity .qty,.select2-container--default .select2-selection--single,.select2-dropdown,.select2-results__option) { color:var(--sig-ink); background:var(--sig-surface); border-color:var(--sig-line); }
.ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) .select2-container--default .select2-selection--single .select2-selection__rendered { color:var(--sig-ink); }
.ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) .select2-results__option--highlighted[aria-selected] { color:var(--sig-on-accent); background:var(--sig-accent); }
.ec-signature.ec-design-sage :is(input.input-text,textarea,select,.select2-container--default .select2-selection--single) { border-radius:12px; }
.ec-signature.ec-design-obsidian :is(input.input-text,textarea,select,.select2-container--default .select2-selection--single) { border-radius:0; }

@media (max-width:1050px) {
  .ec-signature.ec-design-journal .sig-hero-layout { grid-template-columns:minmax(175px,.78fr) minmax(0,1.22fr); gap:22px 5%; }
  .ec-signature.ec-design-journal ul.products { gap:0 24px; }
  .ec-signature.ec-design-journal ul.products li.product { column-gap:16px; grid-template-columns:minmax(105px,40%) minmax(0,1fr); }
  .ec-signature.ec-design-journal ul.products li.product .woocommerce-loop-product__title { font-size:25px; }
  .ec-signature.ec-design-sage .sig-header .header-inner { padding-inline:20px; gap:18px; }
  .ec-signature.ec-design-sage .sig-header .desktop-nav { gap:18px; }
  .ec-signature.ec-design-sage .sig-header .sig-search { display:none; }
  .ec-signature.ec-design-sage .sig-hero-layout { padding:28px 4%; column-gap:5%; border-radius:70px 24px 70px 24px; }
  .ec-signature.ec-design-sage .sig-side :is(h1,h2) { font-size:clamp(37px,5.3vw,57px); }
  .ec-signature.ec-design-sage ul.products { gap:32px 18px; }
  .ec-signature.ec-design-sage ul.products li.product { padding:12px 12px 18px !important; }
  .ec-signature.ec-design-sage div.product div.summary { padding:24px; }
  .ec-signature.ec-design-obsidian .sig-header .header-inner { gap:22px; }
  .ec-signature.ec-design-obsidian .sig-header .desktop-nav { gap:22px; }
  .ec-signature.ec-design-obsidian .sig-hero-layout { grid-template-columns:minmax(0,1.15fr) minmax(210px,.85fr); gap:0 4%; }
  .ec-signature.ec-design-obsidian .sig-side :is(h1,h2) { font-size:clamp(42px,5.4vw,61px); }
  .ec-signature.ec-design-obsidian ul.products li.product { padding:14px 14px 19px !important; }
}

@media (max-width:767px) {
  .ec-signature.ec-design-journal .sig-header .header-inner { grid-template-columns:1fr auto; grid-template-rows:auto; gap:12px; padding-top:0; min-height:90px; }
  .ec-signature.ec-design-journal .sig-header .brand { grid-column:1; grid-row:1; justify-self:start; padding:18px 0; }
  .ec-signature.ec-design-journal .sig-header .wordmark { font-size:26px; }
  .ec-signature.ec-design-journal .sig-header .header-actions { grid-column:2; grid-row:1; }
  .ec-signature.ec-design-journal .sig-header :is(.desktop-nav,.sig-search) { display:none; }
  .ec-signature.ec-design-journal .signature-hero { padding-top:23px; padding-bottom:30px !important; }
  .ec-signature.ec-design-journal .sig-hero-layout { display:flex; flex-direction:column; align-items:stretch; gap:22px; }
  .ec-signature.ec-design-journal .sig-side { padding:0; }
  .ec-signature.ec-design-journal .sig-side :is(h1,h2) { font-size:45px; margin-bottom:16px; }
  .ec-signature.ec-design-journal .sig-side :is(.eyebrow,.sig-kicker) { margin-bottom:10px; }
  .ec-signature.ec-design-journal .hero .hero-media.ec-video-stage { width:100% !important; margin:0 !important; }
  .ec-signature.ec-design-journal .sig-hero-note { width:100%; padding-top:15px; }
  .ec-signature.ec-design-journal .sig-product-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
  .ec-signature.ec-design-journal .sig-product-index a { min-width:0; gap:7px; font-size:11px; }
  .ec-signature.ec-design-journal .signature-products { padding-top:28px; padding-bottom:36px; }
  .ec-signature.ec-design-journal .sig-section-heading { margin-bottom:10px; padding-bottom:15px; }
  .ec-signature.ec-design-journal .sig-section-heading :is(h1,h2) { font-size:36px; }
  .ec-signature.ec-design-journal ul.products { grid-template-columns:1fr !important; gap:0 !important; }
  .ec-signature.ec-design-journal ul.products li.product { grid-template-columns:minmax(105px,38%) minmax(0,1fr); gap:7px 19px; padding:20px 0 !important; }
  .ec-signature.ec-design-journal ul.products li.product .woocommerce-loop-product__title { padding-top:4px; font-size:28px; }
  .ec-signature.ec-design-journal ul.products li.product a img { margin:0; aspect-ratio:1; }
  .ec-signature.ec-design-journal ul.products li.product .price { font-size:12px; }
  .ec-signature.ec-design-journal ul.products li.product .button { margin-top:0; padding-top:9px; font-size:9px; }
  .ec-signature.ec-design-journal .sig-footer .footer-inner { display:block; }
  .ec-signature.ec-design-journal .sig-footer .contact-intro h2 { font-size:42px; }
  .ec-signature.ec-design-journal .sig-footer .contact-links { width:100%; margin-top:25px; }
  .ec-signature.ec-design-journal div.product div.summary { padding:24px 0 0; }

  .ec-signature.ec-design-sage .sig-header { padding-block:12px; }
  .ec-signature.ec-design-sage .sig-header .header-inner { min-height:73px; padding:8px 18px; gap:12px; border-radius:70px; }
  .ec-signature.ec-design-sage .sig-header .brand { max-width:190px; padding:0; margin-right:auto; }
  .ec-signature.ec-design-sage .sig-header .brand-logo { width:162px; max-width:100%; }
  .ec-signature.ec-design-sage .sig-header .header-actions { margin:0; }
  .ec-signature.ec-design-sage .sig-header :is(.desktop-nav,.sig-search,.currency) { display:none; }
  .ec-signature.ec-design-sage .signature-hero { padding-top:7px; padding-bottom:30px !important; }
  .ec-signature.ec-design-sage .sig-hero-layout { display:flex; flex-direction:column; gap:20px; padding:24px 14px 21px; border-radius:46px 18px 46px 18px; }
  .ec-signature.ec-design-sage .sig-side { order:0; align-self:stretch; padding-inline:8px; }
  .ec-signature.ec-design-sage .sig-side :is(h1,h2) { font-size:44px; margin-bottom:16px; }
  .ec-signature.ec-design-sage .sig-side :is(.eyebrow,.sig-kicker) { margin-bottom:10px; }
  .ec-signature.ec-design-sage .hero .hero-media.ec-video-stage { order:1; width:100% !important; margin:0 !important; }
  .ec-signature.ec-design-sage .sig-hero-note { order:2; align-self:stretch; padding-top:16px; }
  .ec-signature.ec-design-sage .sig-featured-list { margin-top:16px; }
  .ec-signature.ec-design-sage .sig-featured { grid-template-columns:65px minmax(0,1fr); padding:9px; gap:14px; border-radius:16px; }
  .ec-signature.ec-design-sage .sig-featured img { width:65px; border-radius:10px; }
  .ec-signature.ec-design-sage .sig-featured-name { font-size:23px; }
  .ec-signature.ec-design-sage .signature-products { padding-top:20px; padding-bottom:46px; }
  .ec-signature.ec-design-sage .sig-section-heading { margin-bottom:25px; gap:14px; flex-direction:column; align-items:center; }
  .ec-signature.ec-design-sage .sig-section-heading :is(h1,h2) { font-size:36px; }
  .ec-signature.ec-design-sage ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:19px 12px !important; }
  .ec-signature.ec-design-sage ul.products li.product { padding:9px 9px 14px !important; border-radius:35px 15px 15px 15px; }
  .ec-signature.ec-design-sage ul.products li.product:nth-child(3n+2) { margin-top:0 !important; margin-bottom:0 !important; border-radius:15px 15px 35px 15px; }
  .ec-signature.ec-design-sage ul.products li.product:nth-child(even) { margin-top:16px !important; margin-bottom:-16px !important; }
  .ec-signature.ec-design-sage ul.products li.product:nth-child(3n) { border-radius:15px 35px 15px 15px; }
  .ec-signature.ec-design-sage ul.products li.product a img { aspect-ratio:1; margin-bottom:14px; border-radius:13px; }
  .ec-signature.ec-design-sage ul.products li.product .woocommerce-loop-product__title { font-size:23px; }
  .ec-signature.ec-design-sage ul.products li.product .price { font-size:11px; }
  .ec-signature.ec-design-sage ul.products li.product .button { width:100%; padding:11px 8px; margin-top:12px; font-size:10px; letter-spacing:0; }
  .ec-signature.ec-design-sage .reviews-layout { display:block; }
  .ec-signature.ec-design-sage .reviews-layout > h2 { font-size:33px; margin-bottom:24px; }
  .ec-signature.ec-design-sage .sig-footer { padding-top:37px; }
  .ec-signature.ec-design-sage .sig-footer .contact-intro h2 { font-size:42px; }
  .ec-signature.ec-design-sage .sig-footer .contact-links { flex-direction:column; align-items:stretch; width:100%; }
  .ec-signature.ec-design-sage .sig-footer .contact-links > a { justify-content:center; }
  .ec-signature.ec-design-sage div.product div.summary { padding:24px 20px; border-radius:30px 15px 30px 15px; }
  .ec-signature.ec-design-sage div.product .product_title { font-size:43px; }
  .ec-signature.ec-design-sage .cart-collaterals .cart_totals { padding:18px 12px; border-radius:21px; }
  .ec-signature.ec-design-sage #customer_details { padding:19px 14px; border-radius:20px; }

  .ec-signature.ec-design-obsidian .sig-header .header-inner { min-height:88px; grid-template-columns:1fr auto; gap:16px; }
  .ec-signature.ec-design-obsidian .sig-header .brand { grid-column:1; padding:15px 0; max-width:205px; }
  .ec-signature.ec-design-obsidian .sig-header .brand-logo { max-width:185px; }
  .ec-signature.ec-design-obsidian .sig-header .header-actions { grid-column:2; }
  .ec-signature.ec-design-obsidian .sig-header :is(.desktop-nav,.sig-search,.currency) { display:none; }
  .ec-signature.ec-design-obsidian .signature-hero { padding-top:24px; padding-bottom:34px !important; }
  .ec-signature.ec-design-obsidian .sig-hero-layout { display:flex; flex-direction:column; gap:22px; }
  .ec-signature.ec-design-obsidian .sig-side { width:100%; padding:18px 0 0; }
  .ec-signature.ec-design-obsidian .sig-side :is(h1,h2) { font-size:51px; margin-bottom:16px; }
  .ec-signature.ec-design-obsidian .sig-side :is(.eyebrow,.sig-kicker) { margin-bottom:12px; }
  .ec-signature.ec-design-obsidian .hero .hero-media.ec-video-stage { width:100% !important; margin:0 !important; }
  .ec-signature.ec-design-obsidian .sig-hero-note { width:100%; padding-top:16px; }
  .ec-signature.ec-design-obsidian .sig-product-index { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; }
  .ec-signature.ec-design-obsidian .sig-product-index a { font-size:11px; }
  .ec-signature.ec-design-obsidian .signature-products { padding-top:27px; padding-bottom:37px; }
  .ec-signature.ec-design-obsidian .sig-section-heading { padding-bottom:20px; }
  .ec-signature.ec-design-obsidian .sig-section-heading :is(h1,h2) { font-size:39px; }
  .ec-signature.ec-design-obsidian ul.products { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:1px !important; }
  .ec-signature.ec-design-obsidian ul.products li.product { padding:11px 11px 15px !important; }
  .ec-signature.ec-design-obsidian ul.products li.product a img { margin-bottom:17px; aspect-ratio:1; }
  .ec-signature.ec-design-obsidian ul.products li.product .woocommerce-loop-product__title { font-size:25px; margin-bottom:8px; }
  .ec-signature.ec-design-obsidian ul.products li.product .price { font-size:11px; }
  .ec-signature.ec-design-obsidian ul.products li.product .button { padding:12px 6px; margin-top:16px; font-size:9px; letter-spacing:.05em; }
  .ec-signature.ec-design-obsidian .reviews-layout { display:block; }
  .ec-signature.ec-design-obsidian .reviews-layout > h2 { font-size:33px; margin-bottom:26px; }
  .ec-signature.ec-design-obsidian .sig-footer .footer-inner { display:block; }
  .ec-signature.ec-design-obsidian .sig-footer .contact-intro h2 { font-size:50px; }
  .ec-signature.ec-design-obsidian .sig-footer .contact-links { margin-top:25px; }
  .ec-signature.ec-design-obsidian div.product div.summary { padding:23px 0 0; }
  .ec-signature.ec-design-obsidian div.product .product_title { font-size:48px; }

  .ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) .sig-footer { padding-bottom:calc(98px + env(safe-area-inset-bottom,0px)); }
  .ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(input.input-text,textarea,select,.select2-selection__rendered) { font-size:16px; }
  .ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(.sig-side,.sig-hero-note,.sig-featured-list,.sig-product-index,.contact-links) { min-width:0; max-width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .ec-signature:is(.ec-design-journal,.ec-design-sage,.ec-design-obsidian) :is(.sig-featured,.sig-product-index a,.sig-header a,.hero-button,ul.products li.product) { transition:none; }
}
