/* LEO Sticker front end layer. Loaded after the theme so it wins on specificity ties
   and never edits theme files. Palette is locked to the brand mark: ink 0B0B0C, accent FF4A1C. */

:root {
  --leo-ink: #0B0B0C;
  --leo-accent: #FF4A1C;
  --leo-accent-dark: #E23A0E;
  --leo-paper: #FFFFFF;
  --leo-soft: #F7F7F5;
  --leo-soft-2: #F1F1EE;
  --leo-line: #E6E6E3;
  --leo-line-strong: #D6D6D2;
  --leo-muted: #6B7280;
  --leo-body: #33363B;
  --leo-radius: 14px;
  --leo-radius-sm: 10px;
  --leo-radius-pill: 999px;
  --leo-shadow: 0 1px 2px rgba(11, 11, 12, .04), 0 8px 24px rgba(11, 11, 12, .06);
  --leo-shadow-hover: 0 2px 6px rgba(11, 11, 12, .06), 0 14px 34px rgba(11, 11, 12, .10);
  --leo-wrap: 1200px;
  --leo-gap: 24px;
  --leo-font: Rubik, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --leo-font-head: Montserrat, Rubik, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* ---------- base ---------- */
body {
  font-family: var(--leo-font);
  color: var(--leo-body);
  background: var(--leo-paper);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.woocommerce-loop-product__title,
.entry-title {
  font-family: var(--leo-font-head);
  color: var(--leo-ink);
  letter-spacing: -.01em;
  line-height: 1.18;
}

h1 { font-size: clamp(30px, 4.2vw, 44px); font-weight: 800; }
h2 { font-size: clamp(24px, 3vw, 32px); font-weight: 800; }
h3 { font-size: clamp(18px, 2vw, 22px); font-weight: 700; }

a { color: var(--leo-ink); text-decoration-color: var(--leo-line-strong); text-underline-offset: 3px; }
a:hover { color: var(--leo-accent); }

img { max-width: 100%; height: auto; }

/* one consistent content column across header, page and footer */
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.entry-content > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.wp-block-group.is-layout-constrained > * {
  max-width: var(--leo-wrap);
  margin-left: auto;
  margin-right: auto;
}

.wp-site-blocks { display: flex; flex-direction: column; }
.wp-site-blocks > main { flex: 1 0 auto; }

/* ---------- announcement bar ---------- */
.leo-announce {
  background: var(--leo-ink);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .01em;
}
.leo-announce-inner {
  max-width: var(--leo-wrap);
  margin: 0 auto;
  padding: 9px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 22px;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.leo-announce-inner span { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.leo-announce-inner span::before {
  content: "";
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--leo-accent);
  flex: 0 0 auto;
}
.leo-announce a { color: #fff; text-decoration: underline; text-decoration-thickness: 1px; }
.leo-announce a:hover { color: var(--leo-accent); }

/* ---------- header ---------- */
.leo-header-shell,
header.wp-block-template-part > .wp-block-group:first-child {
  position: sticky;
  top: 0;
  z-index: 60;
  background: rgba(255, 255, 255, .94);
  backdrop-filter: saturate(150%) blur(8px);
  border-bottom: 1px solid var(--leo-line);
}
.leo-header-row {
  max-width: var(--leo-wrap);
  margin: 0 auto;
  padding: 0 16px;
  gap: 18px;
  align-items: center;
}
/* brand mark sits before the wordmark without touching the template part */
.leo-header-row .wp-block-site-title { display: flex; align-items: center; }
.leo-header-row .wp-block-site-title a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--leo-font-head);
  font-weight: 800;
  font-size: 21px;
  letter-spacing: -.02em;
  text-decoration: none;
  color: var(--leo-ink);
  white-space: nowrap;
}
.leo-header-row .wp-block-site-title a::before { content: none; }
.leo-header-row .wp-block-site-title a:hover { color: var(--leo-accent); }

.leo-primary-nav a,
.wp-block-navigation .wp-block-navigation-item__content {
  font-size: 15px;
  font-weight: 600;
  color: var(--leo-ink);
  padding: 8px 2px;
  text-decoration: none;
}
.leo-primary-nav a:hover,
.wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--leo-accent); }

.leo-search { display: flex; align-items: center; gap: 6px; }
.leo-search-input {
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius-pill);
  padding: 8px 14px;
  font-size: 14px;
  min-width: 150px;
  background: var(--leo-soft);
  font-family: var(--leo-font);
}
.leo-search-input:focus { outline: none; border-color: var(--leo-ink); background: #fff; }
.leo-search-btn {
  border: 0;
  background: var(--leo-ink);
  color: #fff;
  border-radius: var(--leo-radius-pill);
  padding: 9px 16px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  font-family: var(--leo-font);
}
.leo-search-btn:hover { background: var(--leo-accent); }
.leo-cart-link {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius-pill);
  padding: 9px 16px;
  font-size: 14px; font-weight: 600;
  text-decoration: none;
  background: #fff;
}
.leo-cart-link:hover { border-color: var(--leo-ink); color: var(--leo-ink); }

/* ---------- buttons ---------- */
.wp-block-button__link,
.wc-block-components-button,
button.button,
input[type="submit"],
.leo-btn {
  font-family: var(--leo-font);
  font-weight: 700;
  font-size: 15px;
  border-radius: var(--leo-radius-pill);
  padding: 12px 24px;
  text-decoration: none;
  transition: background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
}
.wp-block-button__link,
.wc-block-components-button,
.single_add_to_cart_button,
button.button,
input[type="submit"] {
  background: var(--leo-ink);
  color: #fff;
  border: 1px solid var(--leo-ink);
}
.wp-block-button__link:hover,
.wc-block-components-button:hover,
.single_add_to_cart_button:hover,
button.button:hover,
input[type="submit"]:hover {
  background: var(--leo-accent);
  border-color: var(--leo-accent);
  color: #fff;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--leo-ink);
  border: 1px solid var(--leo-line-strong);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color: var(--leo-ink);
  color: var(--leo-ink);
}

/* ---------- product grid ---------- */
ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(232px, 1fr));
  gap: 26px 22px;
  margin: 0 0 40px !important;
  padding: 0 !important;
  list-style: none;
}
ul.products li.product {
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
  background: #fff;
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
ul.products li.product:hover {
  box-shadow: var(--leo-shadow-hover);
  transform: translateY(-2px);
  border-color: var(--leo-line-strong);
}
ul.products li.product a.woocommerce-LoopProduct-link { display: block; }
ul.products li.product img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  background: var(--leo-soft);
  margin: 0;
  padding: 10px;
  box-sizing: border-box;
}
.woocommerce-loop-product__title {
  font-family: var(--leo-font-head);
  font-size: 15px !important;
  font-weight: 700;
  line-height: 1.35;
  padding: 14px 16px 4px !important;
  margin: 0 !important;
  min-height: 44px;
}
ul.products li.product .price {
  font-family: var(--leo-font);
  font-size: 15px !important;
  font-weight: 700;
  color: var(--leo-ink) !important;
  padding: 0 16px 10px;
  margin: 0;
}
ul.products li.product .price del { color: var(--leo-muted); font-weight: 500; }
ul.products li.product .button,
ul.products li.product .add_to_cart_button {
  margin: 0 16px 16px !important;
  border-radius: var(--leo-radius-pill) !important;
  padding: 10px 16px !important;
  font-size: 14px !important;
  background: var(--leo-ink) !important;
  color: #fff !important;
  border: 0 !important;
}
ul.products li.product .button:hover { background: var(--leo-accent) !important; }
ul.products li.product .onsale,
.woocommerce span.onsale {
  background: var(--leo-accent);
  color: #fff;
  border-radius: var(--leo-radius-pill);
  font-size: 12px;
  font-weight: 700;
  padding: 5px 12px;
  min-height: 0;
  line-height: 1.4;
}

/* ---------- single product ---------- */
.single-product div.product {
  max-width: var(--leo-wrap);
  margin: 0 auto;
  padding: 26px 16px 56px;
}
.single-product div.product .product_title { margin: 0 0 14px; }
.single-product div.product .price {
  font-size: 26px !important;
  font-weight: 800;
  color: var(--leo-ink);
  margin: 0 0 18px;
}
.single-product div.product .woocommerce-product-gallery img { border-radius: var(--leo-radius); background: var(--leo-soft); }
.single-product div.product p,
.single-product div.product li { font-size: 15.5px; line-height: 1.75; }
.single-product div.product h2 {
  font-size: 24px;
  margin: 34px 0 12px;
  padding-top: 18px;
  border-top: 1px solid var(--leo-line);
}
.single-product div.product h3 { font-size: 18px; margin: 22px 0 6px; }
.single-product table.leo-specs { width: 100%; border-collapse: collapse; margin: 6px 0 18px; }
.single-product table.leo-specs th,
.single-product table.leo-specs td {
  border: 1px solid var(--leo-line);
  padding: 10px 14px;
  text-align: left;
  font-size: 14.5px;
  vertical-align: top;
}
.single-product table.leo-specs th { background: var(--leo-soft); width: 190px; font-weight: 600; color: var(--leo-ink); }
.woocommerce-tabs ul.tabs { padding-left: 0; }
.woocommerce-tabs ul.tabs li a { font-weight: 600; }

/* ---------- collection archive ---------- */
.woocommerce-products-header { max-width: var(--leo-wrap); margin: 0 auto; padding: 32px 16px 6px; }
.woocommerce-products-header__title.page-title { font-size: clamp(26px, 3.4vw, 38px); margin: 0 0 10px; }
.term-description { max-width: 760px; color: var(--leo-muted); font-size: 15.5px; line-height: 1.7; }
.woocommerce-result-count, .woocommerce-ordering select { font-size: 14px; color: var(--leo-muted); }
.woocommerce-ordering select {
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius-sm);
  padding: 8px 12px;
  font-family: var(--leo-font);
}

/* ---------- leo component blocks ---------- */
section, .leo-section { margin: 0 0 56px; }
.leo-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: var(--leo-gap);
}
.leo-card {
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius);
  background: #fff;
  overflow: hidden;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.leo-card:hover { box-shadow: var(--leo-shadow-hover); transform: translateY(-2px); border-color: var(--leo-line-strong); }
.leo-card img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; margin: 0; }
.leo-card-body { padding: 16px 18px 20px; }
.leo-card-body h3 { font-size: 17px; margin: 0 0 6px; }
.leo-card-body p { font-size: 14px; color: var(--leo-muted); margin: 0; line-height: 1.6; }
.leo-chip, .leo-badge {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius-pill);
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 600;
  color: var(--leo-ink);
  background: #fff;
  text-decoration: none;
}
.leo-chip:hover { border-color: var(--leo-ink); color: var(--leo-ink); }
.leo-chip-count { color: var(--leo-muted); font-weight: 500; }

/* ---------- footer ---------- */
.leo-footer {
  background: var(--leo-soft);
  border-top: 1px solid var(--leo-line);
  color: var(--leo-body);
}
.leo-footer .wp-block-site-title a {
  display: inline-flex; align-items: center; gap: 10px;
  font-family: var(--leo-font-head); font-weight: 800; font-size: 20px;
  color: var(--leo-ink); text-decoration: none;
}
.leo-footer .wp-block-site-title a::before { content: none; }
.leo-footer h4 { font-size: 14px; text-transform: uppercase; letter-spacing: .06em; color: var(--leo-ink); margin: 0 0 12px; }
.leo-footer ul { list-style: none; padding: 0; margin: 0; }
.leo-footer ul li { margin: 0 0 9px; }
.leo-footer ul li a { color: var(--leo-body); font-size: 14px; text-decoration: none; }
.leo-footer ul li a:hover { color: var(--leo-accent); text-decoration: underline; }
.leo-footer-grid { max-width: var(--leo-wrap); margin: 0 auto; gap: 40px; }
.leo-footer-bottom {
  max-width: var(--leo-wrap);
  margin: 26px auto 0;
  padding-top: 20px;
  border-top: 1px solid var(--leo-line);
  align-items: center;
  gap: 10px 24px;
}
.leo-pay {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
  margin: 18px 0 0;
}
.leo-pay-label { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--leo-muted); }
.leo-pay img, .leo-pay .leo-pay-badge {
  height: 30px;
  width: auto;
  border: 1px solid var(--leo-line);
  border-radius: 6px;
  background: #fff;
  padding: 3px 6px;
  box-sizing: content-box;
}
.leo-footer .leo-pay { max-width: var(--leo-wrap); margin: 22px auto 0; }
.leo-trust-row {
  max-width: var(--leo-wrap);
  margin: 0 auto 26px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  padding-top: 24px;
  border-top: 1px solid var(--leo-line);
}
.leo-trust-item { font-size: 13.5px; color: var(--leo-body); display: flex; gap: 10px; align-items: flex-start; }
.leo-trust-item strong { display: block; color: var(--leo-ink); font-size: 14px; }
.leo-trust-item::before {
  content: ""; width: 18px; height: 18px; flex: 0 0 18px; margin-top: 2px;
  border-radius: 50%; background: var(--leo-accent);
  box-shadow: inset 0 0 0 4px #fff;
  outline: 1px solid var(--leo-accent);
}

/* ---------- mega menu (leo-ux) ---------- */
.leo-mega, .leo-mega-panel {
  background: #fff;
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius);
  box-shadow: var(--leo-shadow);
}
.leo-col-title { font-family: var(--leo-font-head); font-size: 12px; text-transform: uppercase; letter-spacing: .07em; color: var(--leo-muted); }
.leo-col-list a { font-size: 14px; color: var(--leo-body); }
.leo-col-list a:hover { color: var(--leo-accent); }

/* ---------- blog ---------- */
.blog .entry-title, .archive .entry-title { font-size: clamp(22px, 2.6vw, 30px); }
.leo-guide-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--leo-gap); }
.leo-guide-card { border: 1px solid var(--leo-line); border-radius: var(--leo-radius); padding: 20px; background: #fff; }
.leo-guide-card h3 { font-size: 17px; margin: 0 0 8px; }
.leo-guide-card p { font-size: 14px; color: var(--leo-muted); margin: 0 0 12px; }

/* ---------- forms ---------- */
input[type="text"], input[type="email"], input[type="search"], input[type="tel"], textarea, select {
  font-family: var(--leo-font);
  border: 1px solid var(--leo-line);
  border-radius: var(--leo-radius-sm);
  padding: 11px 14px;
  font-size: 15px;
  background: #fff;
  max-width: 100%;
}
input:focus, textarea:focus, select:focus { outline: none; border-color: var(--leo-ink); box-shadow: 0 0 0 3px rgba(255, 74, 28, .12); }
label { font-size: 14px; font-weight: 600; color: var(--leo-ink); }

/* ---------- responsive ---------- */
@media (max-width: 980px) {
  .leo-hero-grid { grid-template-columns: 1fr !important; }
  ul.products { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 18px 14px; }
  .leo-footer-grid { gap: 28px; }
}
@media (max-width: 700px) {
  .leo-header-row { gap: 10px; }
  .leo-search-input { min-width: 0; width: 110px; }
  .leo-announce-inner { font-size: 12px; gap: 4px 14px; }
  ul.products { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
  .woocommerce-loop-product__title { font-size: 14px !important; padding: 12px 12px 4px !important; }
  ul.products li.product .button { margin: 0 12px 12px !important; }
  section, .leo-section { margin-bottom: 40px; }
}

/* Internal linking corpus blocks (item 3) */
.leo-links{margin:34px 0 8px;padding:22px 0 0;border:0;border-top:1px solid var(--leo-line,#e6e6e6);border-radius:0;background:transparent}
.leo-links-title{margin:0 0 12px;font-size:1.05rem;letter-spacing:.01em;color:var(--leo-ink,#0B0B0C)}
.leo-links-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 18px;margin:0;padding:0;list-style:none}
.leo-links-list li{margin:0}
.leo-links-list a{color:var(--leo-ink,#0B0B0C);text-decoration:none;border-bottom:1px solid rgba(255,74,28,.35)}
.leo-links-list a:hover{color:var(--leo-accent,#FF4A1C);border-bottom-color:var(--leo-accent,#FF4A1C)}

/* brand logo in the header */
.wp-block-site-title{margin:0}
.wp-block-site-title a{display:inline-flex;align-items:center;text-decoration:none}
.leo-logo-img{display:block;width:auto;height:42px;max-width:min(52vw,220px)}
.leo-header-shell{position:relative;z-index:5}
@media (max-width:782px){.leo-logo-img{height:34px}}

/* header row: logo + actions on line 1, the hub menu on its own full-width line */
.leo-header-row{flex-wrap:wrap!important;row-gap:0;max-width:100%;align-items:center}
.leo-header-row>*{min-width:0}
.leo-header-row>.leo-mega{order:3;flex:1 1 100%;justify-content:center;margin-top:8px;padding-top:8px;border-top:1px solid var(--leo-line,#e6e9ef)}
.leo-header-row>.leo-header-actions{margin-left:auto}
/* the theme pins the header to one row with !important; out-specify it so the menu
   can drop to its own line instead of overflowing the viewport */
@media (min-width:900px){
  body header .leo-header-row.wp-block-group.is-layout-flex.is-nowrap{flex-wrap:wrap!important}
}
@media (min-width:1181px){
  .leo-header-row>.leo-mega .leo-mega-bar{flex-wrap:nowrap;justify-content:center;width:100%;overflow-x:auto}
}
@media (max-width:1180px){.leo-top-link,.leo-top-btn{padding:9px 8px;font-size:14px}}
/* footer trust strip and payment row must wrap on narrow screens (no sideways scroll) */
.leo-trust-row{display:flex;flex-wrap:wrap;gap:14px;max-width:100%}
.leo-trust-item{flex:1 1 clamp(160px,22%,240px);min-width:0;max-width:100%;overflow-wrap:anywhere}
.leo-pay{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;max-width:100%}
.leo-pay-badge{height:28px;width:auto;max-width:100%}
@media (max-width:782px){
  .leo-trust-row{gap:12px}
  .leo-trust-item{flex:1 1 100%}
  .leo-pay{gap:8px}
  .leo-pay-badge{height:24px}
}

/* explicit page heading for the block checkout (block ships none) */
.leo-page-title{margin:0 0 18px;font-size:clamp(28px,3.4vw,40px);line-height:1.15;letter-spacing:-.01em;color:var(--leo-ink,#0B0B0C);font-weight:700}

/* ---------- header/footer visual polish (single grid line, even weights) ---------- */
.leo-logo-img{height:40px;width:auto;max-width:100%;display:block}
.wp-block-site-title{margin:0}
.wp-block-site-title a{display:inline-flex;align-items:center}

/* announcement strip: one uniform weight, evenly spaced items */
.leo-announce-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-weight:500;max-width:1180px;margin:0 auto;padding:0 16px}
.leo-announce-inner>span{display:inline-flex;align-items:center;white-space:nowrap}
.leo-announce-inner>span::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--leo-accent,#FF4A1C);display:inline-block;margin-right:9px}
.leo-announce-inner a{font-weight:500;color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){.leo-announce-inner{gap:16px;row-gap:6px;font-size:12.5px}}

/* hub menu: first label sits on the same left grid line as the logo */
.leo-mega{padding:0}
.leo-mega-bar{justify-content:space-between!important;column-gap:2px}
.leo-mega-bar>.leo-mega-item:last-child>.leo-top-link{padding-right:0}
/* top-level labels stay clean: no raw product counts in the bar */
.leo-mega-bar>.leo-mega-item>.leo-top-link>.leo-top-count,
.leo-mega-bar>.leo-mega-item>.leo-top-btn>.leo-top-count{display:none!important}
.leo-mega-bar>.leo-mega-item:first-child>.leo-top-link{padding-left:0}
.leo-mega-bar>.leo-mega-item:first-child>.leo-top-btn{padding-left:0}
.leo-mega-item:has(> .leo-panel)>.leo-top-btn::after,
.leo-mega-item:has(> .leo-panel)>.leo-top-link::after{content:"\25BE";font-size:11px;line-height:1;opacity:.85;margin-left:5px}
.leo-top-link,.leo-top-btn{font-weight:600}
@media (min-width:1181px){.leo-mega-bar{justify-content:flex-start}}

/* header actions: consistent icon weight next to the heavy logo */
.leo-header-actions{gap:14px;align-items:center}
.leo-header-actions .wc-block-mini-cart__icon,
.leo-header-actions svg{width:22px;height:22px;color:var(--leo-ink,#0B0B0C)}
.leo-header-actions a{color:var(--leo-ink,#0B0B0C)}
.leo-header-actions .wc-block-mini-cart__button{padding:6px;font-weight:600}

/* search: a comfortable submit control */
.leo-search-btn{font-size:13.5px;font-weight:600;letter-spacing:.01em;padding:10px 18px;border-radius:999px;background:var(--leo-ink,#0B0B0C);color:#fff;border:0;cursor:pointer}
.leo-search-input{min-width:300px}


/* contextual in-body links: they must be visibly links, not body-coloured text.
   The theme reset strips colour and underline from anchors inside entry content, which
   left every editorial interlink readable as plain prose (owner report: "interlinking
   nazar nahi aa rahi"). Accent underlines only, so the copy stays calm. */
.entry-content p a,
.leo-cat-intro p a,
.leo-cat-intro li a,
.leo-body p a,
main .product-description p a,
.woocommerce-product-details__short-description p a,
.single-product .woocommerce-Tabs-panel p a{
  color:var(--leo-accent,#FF4A1C);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
  text-decoration-color:rgba(255,74,28,.45);
  font-weight:inherit;
}
.entry-content p a:hover,
.leo-cat-intro p a:hover,
.leo-cat-intro li a:hover,
.leo-body p a:hover,
main .product-description p a:hover,
.woocommerce-product-details__short-description p a:hover,
.single-product .woocommerce-Tabs-panel p a:hover{
  color:#C93A12;
  text-decoration-thickness:2px;
  text-decoration-color:#C93A12;
}


/* ---------- homepage polish (2026-11-12): calmer rhythm, aligned card text ---------- */
.home .leo-hero{padding-top:20px!important;padding-bottom:0!important;margin-bottom:26px!important}
html body.home .leo-hero h1{font-size:clamp(28px,3vw,36px)!important;line-height:1.14!important;letter-spacing:-.015em;margin-bottom:14px!important;max-width:560px!important}
.home .leo-hero p{font-size:16.5px!important;line-height:1.65!important}
.home .leo-hero img{aspect-ratio:4/3!important}
.home .leo-section{margin-bottom:40px!important}
html body.home .leo-section>h2{font-size:clamp(22px,2.2vw,28px)!important;line-height:1.2}
.home .leo-card-grid{gap:20px!important}
.home .leo-card-body{padding:14px 16px 16px!important}
.home .leo-card-body h3{font-size:15px!important;line-height:1.35!important;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 6px!important}
.home .leo-card-body p{font-size:13.5px!important}
.leo-top-link,.leo-top-btn{font-size:14.5px;padding:10px 12px}
.leo-logo-img{width:210px;height:auto}

.home .leo-chip{white-space:nowrap;height:auto!important;min-height:0!important;align-self:center!important;padding:7px 14px!important;line-height:1.2!important;display:inline-flex;align-items:center}
