/*
Theme Name: Sage Stitch
Description: Cottons La Conner — "Sage Stitch" system: cotton white / sage mist / fern / moss ink, berry accent, running-stitch motif, Young Serif + Figtree. Child of Flatsome.
Author: Cottons La Conner
Template: flatsome
Version: 1.0.0
Text Domain: sage-stitch
*/
@font-face{font-family:'Young Serif';src:url('https://cottonslaconner.com/wp-content/themes/sage-stitch/fonts/young-serif-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('https://cottonslaconner.com/wp-content/themes/sage-stitch/fonts/figtree-var.woff2') format('woff2');font-weight:300 900;font-style:normal;font-display:swap}
:root{
  --cs-cotton:#FBF9F3; --cs-linen:#F1ECE1; --cs-mist:#E4EBDA; --cs-sage:#87A27D; --cs-sage-lt:#C9D7BD;
  --cs-fern:#4E6B45; --cs-fern-dk:#3E5737; --cs-moss:#1F2A1C; --cs-berry:#8E3B57; --cs-line:#D9E2CC; --cs-muted:#5C6857;
  --cs-r:12px; --cs-r-lg:20px;
  --cs-display:'Young Serif',Georgia,'Times New Roman',serif;
  --cs-sans:'Figtree',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --cs-stitch:repeating-linear-gradient(90deg,var(--cs-sage) 0 10px,transparent 10px 17px);
}
/* ---------- base ---------- */
html,body,#wrapper,#main,.page-wrapper{background:var(--cs-cotton)}
body,p,li,td,input,select,textarea,.nav>li>a,.button{font-family:var(--cs-sans)!important}
body{color:var(--cs-moss);font-size:16.5px}
h1,h2,h3,h4,.heading-font,.section-title span,.product-main .product-title,.product-category .box-text h5,.cs-display{font-family:var(--cs-display)!important;font-weight:400!important;letter-spacing:-.005em;color:var(--cs-moss)}
h1{line-height:1.08} h2{line-height:1.14}
a{color:var(--cs-fern);text-decoration-thickness:1.5px;text-underline-offset:3px}
a:hover{color:var(--cs-fern-dk)}
:focus-visible{outline:3px dashed var(--cs-berry);outline-offset:3px}
::selection{background:var(--cs-sage-lt);color:var(--cs-moss)}
/* ---------- header: logo centered, stitched nav ---------- */
.header-top{background:var(--cs-mist)!important;color:var(--cs-moss);border-bottom:1px solid var(--cs-line)}
.header-top .flex-col.hide-for-medium.flex-left{flex:1}
.header-top .flex-left .nav{justify-content:center;width:100%}
.header-top a{color:var(--cs-fern);font-weight:600}
.header-main,.header-wrapper{background:var(--cs-cotton)!important}
.header-bottom{background:var(--cs-cotton)!important;border-top:1px solid var(--cs-line);position:relative}
.header-bottom:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--cs-stitch)}
.header-bottom .header-nav>li>a{font-weight:600!important;font-size:.97em;letter-spacing:.01em;text-transform:none;color:var(--cs-moss)!important;padding-left:4px;padding-right:4px}
.header-bottom .header-nav>li>a:hover,.header-bottom .header-nav>li.active>a{color:var(--cs-fern)!important;box-shadow:inset 0 -2px 0 var(--cs-fern)}
.header-search-form .search-field{border:1.5px solid var(--cs-line)!important;border-radius:999px 0 0 999px!important;background:#fff!important;box-shadow:none;padding-left:16px}
.header-search-form .ux-search-submit{border-radius:0 999px 999px 0!important;background:var(--cs-fern)!important;color:#fff!important}
.cart-icon strong{border-color:var(--cs-fern);color:var(--cs-fern);border-radius:6px 6px 10px 10px}
.cart-icon strong:after{border-color:var(--cs-fern)}
.header-cart-link i{color:var(--cs-moss)!important;font-size:1.25em}
.header-cart-link [data-icon-label]:after{background:var(--cs-berry)!important;color:#fff!important}
.nav-dropdown{border:1px solid var(--cs-line);border-radius:var(--cs-r);box-shadow:0 14px 30px -18px rgba(31,42,28,.35)}
/* ---------- buttons ---------- */
.button,button.button,input[type=submit],.single_add_to_cart_button.button,.checkout-button{font-weight:700!important;letter-spacing:.02em;text-transform:none;border-radius:var(--cs-r)!important;font-size:1em}
.button.primary:not(.is-outline),.button.secondary:not(.is-outline),button.button.alt,.single_add_to_cart_button.button,.checkout-button.button,input[type=submit].button{background:var(--cs-fern)!important;color:#fff!important;border:0!important;box-shadow:none;transition:background .15s,transform .15s}
.button.primary:not(.is-outline):hover,.single_add_to_cart_button.button:hover,.checkout-button.button:hover{background:var(--cs-moss)!important}
.button.is-outline{border:2px solid var(--cs-fern)!important;color:var(--cs-fern)!important;border-radius:var(--cs-r)!important;background:transparent}
.button.is-outline:hover{background:var(--cs-fern)!important;color:#fff!important}
.button.is-link,.button.primary.is-link{background:transparent!important;color:var(--cs-fern)!important;font-weight:700;box-shadow:none!important;padding-left:0;padding-right:0;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:5px}
/* ---------- product cards: linen + stitch on hover ---------- */
.product-small .box-image{border-radius:var(--cs-r-lg);overflow:hidden;background:var(--cs-linen);position:relative}
.product-small .box-image:after{content:"";position:absolute;inset:10px;border:2px dashed transparent;border-radius:14px;pointer-events:none;transition:border-color .2s}
.product-small:hover .box-image:after{border-color:rgba(135,162,125,.85)}
.product-small .box-text{padding-top:12px}
.product-small .product-title a{font-weight:600;color:var(--cs-moss)}
.product-small .category{color:var(--cs-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.7em;font-weight:700}
.price .amount,.price ins .amount{color:var(--cs-fern);font-weight:700}
.price del .amount{color:var(--cs-muted)}
.badge-inner,.on-sale{background:var(--cs-berry)!important;color:#fff!important;border-radius:999px}
.star-rating span::before,.star-rating::before{color:var(--cs-berry)}
/* ---------- category archive tiles ---------- */
.product-category .box-image{border-radius:var(--cs-r-lg);background:var(--cs-linen);overflow:hidden}
.product-category .box-text{background:transparent;padding:12px 4px!important}
.product-category .box-text h5,.product-category .header-title{font-family:var(--cs-display);font-weight:400;text-transform:none;font-size:1.2em;letter-spacing:0;color:var(--cs-moss)!important}
.product-category .count{display:none}
/* ---------- PDP ---------- */
.product-main .product-title{font-size:2.05em;line-height:1.1}
.cs-delivery{background:var(--cs-mist);border:2px dashed var(--cs-sage);border-radius:var(--cs-r);padding:14px 16px;margin-top:14px}
.cs-size-guide-link{color:var(--cs-fern);font-weight:700;text-decoration:underline;text-decoration-style:dashed;text-decoration-color:var(--cs-sage)}
.variations .ux-swatch{border:1.5px solid var(--cs-fern)!important;border-radius:999px!important;font-weight:700;min-width:46px;text-transform:uppercase}
.variations .ux-swatch.selected{background:var(--cs-fern)!important;color:#fff!important;box-shadow:none!important}
.woocommerce-tabs .nav>li.active>a{border-color:var(--cs-fern);color:var(--cs-moss)}
.woocommerce-tabs .nav li.cs-tab-review{display:none}
/* ---------- footer: light sage, not dark ---------- */
.footer-wrapper,.footer-1,.footer-2{background:var(--cs-mist)!important}
.footer-wrapper .widget-title,.footer-wrapper h3,.footer-wrapper h4{color:var(--cs-moss)}
.absolute-footer{background:var(--cs-sage)!important;color:var(--cs-moss)!important;border-top:0}
.absolute-footer a{color:var(--cs-moss)!important;font-weight:600}
.absolute-footer.dark .footer-text,.absolute-footer .copyright-footer{color:var(--cs-moss)!important}
/* ---------- shared section pieces ---------- */
.cs-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--cs-berry);font-size:.78em;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.cs-kicker:before{content:"";width:36px;height:2px;background:repeating-linear-gradient(90deg,var(--cs-berry) 0 7px,transparent 7px 12px)}
.cs-head{text-align:center;max-width:680px;margin:0 auto}
.cs-head h2{font-size:clamp(1.9em,3.4vw,2.6em);margin-bottom:8px}
.cs-head p{color:var(--cs-muted);margin-bottom:0}
.cs-stitch-rule{height:2px;background:var(--cs-stitch);margin:0 auto;max-width:120px;border:0}
/* ---------- homepage: hero (image left, text right, light) ---------- */
.cs-hero{background:var(--cs-mist)}
.cs-hero h1{font-size:clamp(2.4em,5.2vw,4.3em);margin-bottom:.32em}
.cs-hero h1 span{color:var(--cs-fern);background:linear-gradient(transparent 78%,var(--cs-sage-lt) 78%)}
.cs-hero p.lead{font-size:1.17em;max-width:520px;color:#3B4737}
.cs-hero .cs-facts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:20px;padding:0;list-style:none;font-size:.92em;color:var(--cs-muted)}
.cs-hero .cs-facts li{margin:0;display:flex;align-items:center;gap:8px}
.cs-hero .cs-facts li:before{content:"";width:9px;height:9px;border-radius:50%;border:2px solid var(--cs-fern)}
/* ---------- homepage: collections ---------- */
.cs-collections>br,.cs-timeline>br,.cs-care-list>br,.cs-care>br,.cs-faq>br{display:none}
.cs-collections{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.cs-col{display:block;background:#fff;border-radius:var(--cs-r-lg);padding:12px 12px 20px;color:var(--cs-moss)!important;text-decoration:none!important;border:1px solid var(--cs-line);transition:transform .2s,box-shadow .2s}
.cs-col:hover{transform:translateY(-3px);box-shadow:0 18px 34px -24px rgba(31,42,28,.45)}
.cs-col img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;margin-bottom:14px;background:var(--cs-linen)}
.cs-col strong{display:block;font-family:var(--cs-display);font-weight:400;font-size:1.3em;padding:0 8px;line-height:1.2}
.cs-col span{display:block;color:var(--cs-muted);font-size:.93em;padding:6px 8px 0}
.cs-col em{display:inline-block;font-style:normal;font-weight:700;color:var(--cs-fern);padding:10px 8px 0;font-size:.92em}
/* ---------- homepage: print-to-order timeline ---------- */
.cs-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;counter-reset:cs;margin-top:10px}
.cs-timeline:before{content:"";position:absolute;left:12%;right:12%;top:27px;height:2px;background:var(--cs-stitch)}
.cs-tl{position:relative;text-align:center;padding:0 6px}
.cs-tl:before{counter-increment:cs;content:counter(cs);display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--cs-cotton);border:2px solid var(--cs-fern);font-family:var(--cs-display);font-size:1.45em;color:var(--cs-fern);position:relative;z-index:1}
.cs-tl h3{font-size:1.2em;margin-bottom:6px}
.cs-tl p{color:var(--cs-muted);font-size:.95em;margin-bottom:0}
.cs-tl b{color:var(--cs-moss)}
/* ---------- homepage: care ---------- */
.cs-care{display:grid;grid-template-columns:1.1fr 2fr;gap:44px;align-items:center}
.cs-care-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cs-care-item{background:var(--cs-cotton);border:2px dashed var(--cs-sage);border-radius:var(--cs-r-lg);padding:22px 18px}
.cs-care-item svg{display:block;width:46px;height:46px;color:var(--cs-fern);margin-bottom:12px}
.cs-care-item h3{font-size:1.08em;margin-bottom:4px}
.cs-care-item p{font-size:.92em;color:var(--cs-muted);margin:0}
/* ---------- homepage: honest note ---------- */
.cs-note{max-width:820px;margin:0 auto;background:#fff;border-radius:var(--cs-r-lg);padding:30px 34px;border:1px solid var(--cs-line);position:relative}
.cs-note:before{content:"";position:absolute;inset:9px;border:2px dashed var(--cs-sage-lt);border-radius:14px;pointer-events:none}
.cs-note h2{font-size:1.7em;margin-bottom:8px}
.cs-note p{color:#3B4737}
/* ---------- FAQ ---------- */
.cs-faq details{border-bottom:2px dashed var(--cs-line);padding:16px 0}
.cs-faq summary{font-weight:700;cursor:pointer;list-style:none;font-size:1.04em}
.cs-faq summary::-webkit-details-marker{display:none}
.cs-faq summary:after{content:"+";float:right;font-family:var(--cs-display);color:var(--cs-fern);font-size:1.45em;line-height:1}
.cs-faq details[open] summary:after{content:"–"}
.cs-faq details p{margin:10px 0 0;color:var(--cs-muted)}
/* ---------- CTA ---------- */
.cs-cta{background:var(--cs-sage)}
.cs-cta h2{color:var(--cs-moss)!important}
.cs-cta .button.primary:not(.is-outline){background:var(--cs-moss)!important;color:#fff!important}
.cs-cta .button.primary:not(.is-outline):hover{background:var(--cs-fern-dk)!important}
/* ---------- archives / misc ---------- */
.cs-archive-title{font-size:2.15em;margin:0 0 4px;width:100%}
.category-page-title .page-title-inner{flex-wrap:wrap}
.cr-all-reviews-add-review,.cr-ajax-reviews-add-review{background:var(--cs-fern)!important;color:#fff!important;border-radius:var(--cs-r)!important}
.cs-disclosure{font-size:.86em;color:var(--cs-muted)}
@media (max-width:849px){
  .header-top{display:none!important}
  html,body{overflow-x:hidden}
  .cs-hero h1{font-size:2.3em}
  .cs-collections{grid-template-columns:repeat(2,1fr);gap:14px}
  .cs-timeline{grid-template-columns:1fr 1fr;row-gap:30px}.cs-timeline:before{display:none}
  .cs-care{grid-template-columns:1fr;gap:22px}.cs-care-list{grid-template-columns:1fr}
  .cs-note{padding:24px 22px}
}
@media (max-width:549px){.cs-collections{grid-template-columns:1fr}.cs-timeline{grid-template-columns:1fr}}
