/* Shop index: focused category discovery, separate from collection archive layouts. */

/* Product photography must never be blended into a tinted category image stage.
   Match the approved pure-white catalog, keeping original garment colors intact. */
body.woocommerce-shop .jss-commerce .jsst-img{
  background:#fff!important;
}
body.woocommerce-shop .jss-commerce .jsst-img img{
  background:#fff!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
  filter:none!important;
}

/* Explicit link decoration inside prose. Collection tiles remain full-card links
   and are differentiated through their border and clear, underlined action label. */
body.woocommerce-shop .jss-commerce p a:not(.button),
body.woocommerce-shop .jsc-shop-guide p a:not(.button){
  color:#78300f;
  text-decoration:underline!important;
  text-decoration-thickness:1.5px;
  text-underline-offset:4px;
}
body.woocommerce-shop .jss-commerce .jsst-card .jsst-action{
  color:#78300f!important;
  text-decoration:underline!important;
  text-decoration-thickness:1.5px;
  text-underline-offset:4px;
}
body.woocommerce-shop .jss-commerce a:focus-visible{
  outline:3px solid #a43b17!important;
  outline-offset:3px;
}

/* WordPress auto-paragraphs the small Shop-all links inside each family header.
   Use a descendant selector (not a direct-child selector) so the underline,
   contrast and target size hold in the actual rendered markup. */
body.woocommerce-shop .jss-commerce .jsst-family-head p{
  margin:0!important;
}
body.woocommerce-shop .jss-commerce .jsst-family-head a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:#78300f!important;
  font:800 15px/1.5 'Manrope',sans-serif!important;
  text-decoration:underline!important;
  text-decoration-thickness:1.5px;
  text-underline-offset:4px;
}
body.woocommerce-shop .jss-commerce .jsst-family-head a:hover{
  color:#512009!important;
}
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jss-kicker span{
  color:#645044!important;
}

/* Keep secondary copy at reliably readable contrast across the shop hub. */
body.woocommerce-shop .jss-commerce .jsst-eyebrow,
body.woocommerce-shop .jss-commerce .jsst-family-head>a,
body.woocommerce-shop .jss-commerce .jsst-note a{
  color:#85320f!important;
}

.jsc-shop-hero{position:relative;overflow:hidden}
.jsc-shop-hero::before{content:"";position:absolute;right:-10%;top:-130px;width:420px;height:420px;border:1px solid rgba(167,68,24,.14);border-radius:50%;pointer-events:none}
.jsc-shop-hero::after{content:"";position:absolute;right:-5%;top:-70px;width:280px;height:280px;border:1px solid rgba(167,68,24,.09);border-radius:50%;pointer-events:none}
.jsc-shop-hero .jss-container{position:relative;z-index:1}
.jsc-shop-hero .jsc-hero-top{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:center;gap:clamp(24px,5vw,80px);padding-bottom:38px}
.jsc-collection-page .jss-commerce .jsc-shop-hero h1{max-width:810px;font-size:clamp(42px,4.8vw,74px);line-height:1.01}
.jsc-shop-hero .jsc-hero-copy{border-left:3px solid #ef7b45;padding-left:24px}
.jsc-collection-page .jss-commerce .jsc-shop-hero .jsc-collection-intro p{max-width:410px;font-size:17px;line-height:1.75}
.jsc-shop-hero .jsc-browse-bar{gap:16px;padding:18px 0 22px}
.jsc-shop-shortcuts{display:flex;flex:1 1 590px;flex-wrap:wrap;gap:8px}
.jsc-shop-shortcuts a{display:flex;align-items:center;gap:9px;min-height:48px;padding:10px 14px;background:#fffaf6;border:1px solid #dfc9b8;border-radius:5px;color:#24211f;text-decoration:none;font-size:13px;font-weight:750;line-height:1.3;transition:background .18s,border-color .18s,transform .18s}
.jsc-shop-shortcuts a span:first-child{font-family:var(--jss-display,'Barlow Condensed',sans-serif);font-size:14px;letter-spacing:.04em;color:#ab491f}
.jsc-shop-shortcuts a span:last-child{margin-left:3px;font-size:15px;color:#ab491f}
.jsc-shop-shortcuts a:hover{border-color:#ab491f;background:#fff;transform:translateY(-1px);color:#24211f}
.jsc-shop-hero .jsc-color-filter{flex:0 1 auto}
.jsc-shop-hero .jsc-color-filter label{font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.jsc-shop-hero .jsc-color-filter select{min-width:156px}
#jsst-men,#jsst-women,#shop-all-jackets{scroll-margin-top:110px}
@media(max-width:1120px){.jsc-shop-hero .jsc-browse-bar{align-items:stretch}.jsc-shop-shortcuts{flex-basis:100%}.jsc-shop-hero .jsc-color-filter{margin-top:4px}}
@media(max-width:800px){.jsc-shop-hero .jsc-hero-top{grid-template-columns:1fr;gap:22px;padding-bottom:30px}.jsc-shop-hero .jsc-hero-copy{max-width:680px}.jsc-collection-page .jss-commerce .jsc-shop-hero h1{font-size:clamp(40px,7.5vw,58px)}}
@media(max-width:600px){.jsc-shop-hero::before,.jsc-shop-hero::after{display:none}.jsc-shop-hero .jsc-hero-top{padding-bottom:22px;gap:18px}.jsc-shop-hero .jsc-hero-copy{border-left-width:2px;padding-left:16px}.jsc-collection-page .jss-commerce .jsc-shop-hero h1{font-size:clamp(38px,10vw,52px);letter-spacing:-.025em}.jsc-collection-page .jss-commerce .jsc-shop-hero .jsc-collection-intro p{font-size:15px;line-height:1.65}.jsc-shop-shortcuts{display:grid;grid-template-columns:1fr;gap:7px;width:100%}.jsc-shop-shortcuts a{min-height:46px;justify-content:space-between;padding:10px 14px;font-size:14px}.jsc-shop-shortcuts a span:first-child{margin-right:auto}.jsc-shop-hero .jsc-color-filter{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.jsc-shop-hero .jsc-color-filter label{grid-column:1/-1}.jsc-shop-hero .jsc-color-filter select{width:100%;min-width:0}.jsc-shop-hero .jsc-color-filter button{min-width:116px;padding:10px 12px}#jsst-men,#jsst-women,#shop-all-jackets{scroll-margin-top:85px}}
@media(prefers-reduced-motion:reduce){.jsc-shop-shortcuts a{transition:none}.jsc-shop-shortcuts a:hover{transform:none}}


/* Decision-support content below the product grid: editorial, accessible and lightweight. */
.jsc-shop-guide{padding:clamp(66px,8vw,112px) 0 90px;background:#25211e;color:#fefbf6;margin-top:72px}
.jsc-shop-guide-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(230px,.7fr);align-items:end;gap:clamp(20px,6vw,100px);margin-bottom:36px}
.jsc-shop-guide-eyebrow{margin:0 0 12px;color:#ffb18b;font-size:11px;letter-spacing:.16em;font-weight:800}
.jsc-shop-guide h2,.jsc-shop-guide h3{font-family:var(--jss-display,'Barlow Condensed',sans-serif);text-transform:uppercase;line-height:1.07;letter-spacing:-.01em}
.jsc-shop-guide h2{font-size:clamp(38px,5vw,70px);color:#fff;margin:0;max-width:730px}
.jsc-shop-guide-top>p{max-width:450px;color:#e3d9cf;font-size:16px;line-height:1.75;margin:0 0 5px}
.jsc-shop-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.jsc-shop-guide-grid article{display:flex;flex-direction:column;min-height:260px;padding:27px 23px 24px;background:#f8f2e9;color:#2b2520;border-top:4px solid #ef7b45}
.jsc-shop-guide-no{color:#a34418;font-size:10px;font-weight:850;letter-spacing:.14em}
.jsc-shop-guide-grid h3{font-size:clamp(23px,2.3vw,29px);color:#29231f;margin:25px 0 12px}
.jsc-shop-guide-grid p{color:#625850;font-size:14px;line-height:1.7;margin:0 0 24px}
.jsc-shop-guide-grid a{display:inline-flex;gap:8px;align-items:center;min-height:44px;margin-top:auto;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px;color:#94360f}
.jsc-shop-guide-grid a:hover{color:#602004}
.jsc-shop-guide-bottom{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;gap:16px}
.jsc-shop-guide-custom,.jsc-shop-guide-help{padding:clamp(26px,3.5vw,46px)}
.jsc-shop-guide-custom{background:#ef7b45;color:#24211e}
.jsc-shop-guide-custom .jsc-shop-guide-eyebrow{color:#582306}
.jsc-shop-guide-bottom h3{font-size:clamp(29px,3.3vw,42px);margin:0 0 13px}
.jsc-shop-guide-custom h3{color:#24211e}
.jsc-shop-guide-bottom p{font-size:15px;line-height:1.7;max-width:500px;margin:0 0 20px}
.jsc-shop-guide-custom>a{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:13px 18px;min-height:47px;background:#26211f;color:#fff!important;font-size:14px;font-weight:800;text-decoration:none}
.jsc-shop-guide-custom>a:hover{background:#111}
.jsc-shop-guide-help{border:1px solid #706258;background:#302a26}
.jsc-shop-guide-help h3{color:#fff}
.jsc-shop-guide-help p{color:#e8ded5}
.jsc-shop-guide-links{display:flex;gap:8px;flex-wrap:wrap}
.jsc-shop-guide-links a{display:inline-flex;align-items:center;min-height:44px;padding:11px 13px;border:1px solid #9b887a;color:#fff;text-decoration:underline;text-underline-offset:3px;font-size:13px;font-weight:700}
.jsc-shop-guide-links a:hover{background:#fff;color:#24211e}
.jsc-shop-guide a:focus-visible{outline:3px solid #ffc18f;outline-offset:3px}
@media(max-width:1100px){.jsc-shop-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jsc-shop-guide-grid article{min-height:224px}.jsc-shop-guide-bottom{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.jsc-shop-guide{padding:58px 0 60px;margin-top:50px}.jsc-shop-guide-top{grid-template-columns:1fr;gap:15px}.jsc-shop-guide-top>p{font-size:15px}.jsc-shop-guide-bottom{grid-template-columns:1fr}}
@media(max-width:520px){.jsc-shop-guide-grid{grid-template-columns:1fr}.jsc-shop-guide-grid article{min-height:0;padding:25px}.jsc-shop-guide-grid h3{margin:16px 0 10px}.jsc-shop-guide-top{margin-bottom:25px}.jsc-shop-guide-custom,.jsc-shop-guide-help{padding:26px}}


/* Shop-page readability pass — improves actual shopping copy without changing other pages. */
/* The existing Customizer stylesheet sets category-card text as low as 10px on phones.
   Scope these stronger selectors to /shop so product detail pages and collections stay intact. */
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jss-kicker{
  font-size:13px;line-height:1.5;letter-spacing:.1em
}
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jsc-collection-intro p{
  font-size:17px;line-height:1.72
}
body.woocommerce-shop .jss-commerce .jsc-shop-shortcuts a{
  font-size:15px;line-height:1.45;min-height:50px
}
body.woocommerce-shop .jss-commerce .jsc-shop-shortcuts a span:first-child{
  font-size:14px
}
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jsc-color-filter label{
  font-size:14px;line-height:1.5;letter-spacing:.02em
}
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jsc-color-filter select{
  font-size:16px;min-height:48px
}
body.woocommerce-shop .jss-commerce .jsc-shop-hero .jsc-color-filter button{
  font-size:15px;min-height:48px
}
/* Larger editorial copy and category cards */
body.woocommerce-shop .jss-shop-body .jsst-eyebrow{
  font-size:13px;line-height:1.6;letter-spacing:.1em
}
body.woocommerce-shop .jss-shop-body .jsst-intro{
  font-size:16px;line-height:1.75;max-width:850px
}
body.woocommerce-shop .jss-shop-body .jsst-family-head a{
  font-size:15px;line-height:1.5
}
body.woocommerce-shop .jss-shop-body .jsst-copy{
  padding:17px 16px 18px;gap:9px
}
body.woocommerce-shop .jss-shop-body .jsst-name{
  font-size:17px;line-height:1.35;letter-spacing:-.01em
}
body.woocommerce-shop .jss-shop-body .jsst-desc{
  font-size:14px;line-height:1.55
}
body.woocommerce-shop .jss-shop-body .jsst-action{
  font-size:14px;line-height:1.5;padding-top:10px;min-height:38px
}
body.woocommerce-shop .jss-shop-body .jsst-tools>p{
  font-size:16px;line-height:1.72
}
body.woocommerce-shop .jss-shop-body .jsst-note{
  font-size:15px;line-height:1.72
}
/* Functional text: filters, sorting, result count, pricing, trust labels and actions. */
body.woocommerce-shop .jss-shop-body .woocommerce-breadcrumb{
  font-size:14px;line-height:1.6
}
body.woocommerce-shop .jss-shop-body .woocommerce-result-count{
  font-size:15px;line-height:1.6
}
body.woocommerce-shop .jss-shop-body .woocommerce-ordering select{
  font-size:16px;min-height:48px
}
body.woocommerce-shop .jss-shop-body ul.products li.product .custom-shipping-badge-below{
  font-size:12px!important;line-height:1.5!important;letter-spacing:.03em!important
}
body.woocommerce-shop .jss-shop-body ul.products li.product .ast-onsale-card{
  font-size:12px!important
}
body.woocommerce-shop .jss-shop-body ul.products li.product .price{
  font-size:18px!important;line-height:1.45!important
}
body.woocommerce-shop .jss-shop-body ul.products li.product .astra-shop-summary-wrap>.button{
  font-size:15px!important;line-height:1.45!important;min-height:48px
}
/* Buying guide at the bottom of /shop */
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-eyebrow{
  font-size:13px;line-height:1.55;letter-spacing:.11em
}
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-no{
  font-size:13px;line-height:1.5;letter-spacing:.08em
}
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-grid p,
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-bottom p{
  font-size:16px;line-height:1.65
}
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-grid a,
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-links a{
  font-size:15px;line-height:1.45;min-height:46px
}
body.woocommerce-shop .jsc-shop-guide .jsc-shop-guide-custom>a{
  font-size:16px;min-height:48px
}
@media(max-width:1250px){
  body.woocommerce-shop .jss-shop-body .jsst-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));gap:16px
  }
}
@media(max-width:780px){
  body.woocommerce-shop .jss-shop-body .jsst-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));gap:13px
  }
  body.woocommerce-shop .jss-shop-body .jsst-intro{
    font-size:16px;line-height:1.7
  }
  body.woocommerce-shop .jss-shop-body .jsst-copy{
    padding:14px 13px 16px;gap:8px
  }
  body.woocommerce-shop .jss-shop-body .jsst-name{
    font-size:16px;line-height:1.4
  }
  body.woocommerce-shop .jss-shop-body .jsst-desc,
  body.woocommerce-shop .jss-shop-body .jsst-action{
    font-size:14px;line-height:1.5
  }
  body.woocommerce-shop .jss-shop-body .jsst-family-head a{
    font-size:15px
  }
}
@media(max-width:600px){
  body.woocommerce-shop .jss-commerce .jsc-shop-hero .jss-kicker{
    font-size:12px;line-height:1.5
  }
  body.woocommerce-shop .jss-commerce .jsc-shop-hero .jsc-collection-intro p{
    font-size:16px;line-height:1.65
  }
  body.woocommerce-shop .jss-commerce .jsc-shop-shortcuts a{
    font-size:15px;min-height:48px
  }
  body.woocommerce-shop .jss-shop-body .jsst-eyebrow{
    font-size:13px
  }
  body.woocommerce-shop .jss-shop-body .jsst-family-head{
    align-items:center
  }
  body.woocommerce-shop .jss-shop-body .jsst-family h3{
    font-size:28px
  }
  body.woocommerce-shop .jss-shop-body .jsst-tools>p,
  body.woocommerce-shop .jss-shop-body .jsst-note{
    font-size:15px;line-height:1.72
  }
  body.woocommerce-shop .jss-shop-body ul.products li.product .woocommerce-loop-product__title{
    font-size:19px!important;line-height:1.25!important
  }
  body.woocommerce-shop .jss-shop-body ul.products li.product .price{
    font-size:16px!important;line-height:1.45!important
  }
  body.woocommerce-shop .jss-shop-body ul.products li.product .astra-shop-summary-wrap>.button{
    font-size:14px!important;min-height:46px;padding:11px!important
  }
  body.woocommerce-shop .jss-shop-body ul.products li.product .custom-shipping-badge-below{
    font-size:12px!important;padding:8px 6px!important
  }
}
@media(max-width:430px){
  /* Narrow phones: one readable horizontal category card instead of tiny two-column type. */
  body.woocommerce-shop .jss-shop-body .jsst-grid{
    grid-template-columns:minmax(0,1fr);gap:10px
  }
  body.woocommerce-shop .jss-shop-body .jsst-card{
    flex-direction:row;align-items:stretch
  }
  body.woocommerce-shop .jss-shop-body .jsst-img{
    flex:0 0 40%;width:40%;max-width:175px;aspect-ratio:auto;min-height:150px
  }
  body.woocommerce-shop .jss-shop-body .jsst-img img{
    width:100%!important;height:100%!important;object-fit:contain
  }
  body.woocommerce-shop .jss-shop-body .jsst-copy{
    padding:15px 12px 15px 13px;min-width:0;gap:7px
  }
  body.woocommerce-shop .jss-shop-body .jsst-name{
    font-size:17px;line-height:1.35
  }
  body.woocommerce-shop .jss-shop-body .jsst-desc{
    font-size:14px
  }
  body.woocommerce-shop .jss-shop-body .jsst-action{
    font-size:14px;min-height:32px
  }
}
