/*
Theme Name: Caron Studio
Theme URI: https://caronstudio.shop
Author: Caron Studio
Description: Huisstijl-thema voor de drukwerkshop van Caron Studio. Warm, rustig en consistent, in groen, goud en beige. Klaar voor WooCommerce.
Version: 3.1.2
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: caron-studio
WC requires at least: 7.0
WC tested up to: 10.8
*/

:root{
  --green:#3e5c4e; --green-deep:#2f4a3d; --green-deeper:#243a30; --green-soft:#6fa589;
  --gold:#b57c46; --gold-soft:#c8a26b;
  --beige:#f5f0e8; --paper:#faf6ee; --paper-2:#f0eadd; --ivory:#f3ede1;
  --ink:#1a1a1a; --ink-soft:#2a2a2a;
  --rule:rgba(36,58,48,0.14); --rule-strong:rgba(36,58,48,0.28);
  --serif:'Libre Bodoni',Georgia,serif; --sans:'Inter Tight',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{color:var(--gold);text-decoration:none;}
a:hover{color:var(--green);}
.cs-wrap{max-width:1180px;margin:0 auto;padding-left:24px;padding-right:24px;}

h1,h2,h3{font-family:var(--serif);font-weight:500;color:var(--green);line-height:1.08;}
h1{font-size:clamp(34px,5.5vw,60px);}
h2{font-size:clamp(26px,3.6vw,40px);}
h1 em,h2 em,h3 em{color:var(--gold);font-style:italic;}

/* Aankondigingsbalk */
.cs-announce{background:var(--green-deeper);color:var(--beige);font-family:var(--mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;text-align:center;padding:10px 16px;}

/* Header */
.cs-header{background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:50;}
.cs-header-inner{max-width:1180px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;gap:28px;}
.cs-logo{flex:0 0 auto;}
.cs-logo a{font-family:var(--serif);font-weight:500;font-size:22px;color:var(--green);letter-spacing:0.02em;text-transform:uppercase;}
.cs-logo img{max-height:46px;width:auto;}
.cs-nav{flex:1 1 auto;}
.cs-nav ul{list-style:none;display:flex;gap:26px;margin:0;padding:0;}
.cs-nav a{font-size:13px;letter-spacing:0.06em;text-transform:uppercase;color:var(--green);font-weight:500;}
.cs-nav a:hover{color:var(--gold);}
.cs-tools{flex:0 0 auto;display:flex;align-items:center;gap:14px;}
.cs-search-toggle{background:transparent;border:none;color:var(--green);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:999px;transition:color .12s;}
.cs-search-toggle:hover{color:var(--gold);}
.cs-search-panel{border-top:1px solid var(--rule);background:var(--paper);}
.cs-search-wrap{max-width:1180px;margin:0 auto;padding:16px 24px;}
.cs-search-form{display:flex;gap:10px;align-items:center;}
.cs-search-form input[type=search]{flex:1;padding:13px 16px;border:1px solid var(--rule-strong);border-radius:999px;font-family:var(--sans);font-size:15px;background:var(--paper);color:var(--ink);}
.cs-search-form input[type=search]:focus{outline:none;border-color:var(--green);}
.cs-search-form button{background:var(--green-deep)!important;color:var(--beige)!important;border:none!important;border-radius:999px!important;padding:13px 24px!important;font-family:var(--sans)!important;font-weight:600!important;cursor:pointer;transition:background .12s;}
.cs-search-form button:hover{background:var(--gold)!important;}
.cs-cart{font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:var(--beige);background:var(--green);padding:10px 18px;border-radius:999px;font-weight:600;}
.cs-cart:hover{background:var(--gold);color:var(--beige);}

.cs-main{min-height:40vh;}
.cs-content,.cs-woo{max-width:1180px;margin:0 auto;padding:48px 24px 72px;}

/* Knoppen */
.cs-btn,.button,.wp-element-button,
.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit,.woocommerce .button.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  display:inline-block;background:var(--green)!important;color:var(--beige)!important;border:none!important;border-radius:999px!important;
  padding:13px 26px!important;font-family:var(--sans)!important;font-weight:600!important;letter-spacing:0.01em!important;text-transform:none!important;cursor:pointer;transition:background .15s ease;}
.cs-btn:hover,.button:hover,.wp-element-button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button.alt:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:var(--gold)!important;color:var(--beige)!important;}
.cs-link-arrow{font-size:14px;letter-spacing:0.04em;color:var(--green);font-weight:600;text-transform:uppercase;}
.cs-link-arrow:hover{color:var(--gold);}

/* HERO */
.cs-hero{background:var(--paper);}
.cs-hero-inner{max-width:1180px;margin:0 auto;padding:72px 24px;display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;}
.cs-hero h1{margin:0 0 22px;max-width:14ch;}
.cs-hero-sub{font-size:17px;max-width:46ch;color:var(--ink-soft);margin:0 0 30px;}
.cs-hero-cta{display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
.cs-hero-visual{position:relative;background:var(--ivory);border-radius:16px;min-height:340px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.cs-card{position:absolute;width:210px;height:128px;border-radius:10px;box-shadow:0 18px 40px rgba(36,58,48,0.18);}
.cs-card-light{background:#fff;left:18%;top:30%;transform:rotate(-8deg);border:1px solid var(--rule);}
.cs-card-green{background:var(--green-deep);right:16%;top:42%;transform:rotate(7deg);display:flex;align-items:center;justify-content:center;}
.cs-card-green span{font-family:var(--serif);color:var(--beige);font-size:15px;letter-spacing:0.04em;text-transform:uppercase;text-align:center;line-height:1.3;}
.cs-card-light span{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:8px;letter-spacing:0.1em;color:var(--green-soft);text-transform:uppercase;}

/* Sectiekop */
.cs-section{padding:64px 0;}
.cs-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;}

/* Categorieën */
.cs-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.cs-cat-card{background:var(--green-deep);color:var(--beige);border-radius:12px;padding:24px;min-height:150px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .15s ease;}
.cs-cat-card:hover{transform:translateY(-3px);}
.cs-cat-card h3{color:var(--beige);margin:0 0 8px;font-size:22px;}
.cs-cat-card p{opacity:0.82;font-size:14px;margin:0;}
.cs-cat-foot{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;}
.cs-cat-foot .bekijk{color:var(--gold-soft);}

/* Productraster */
.cs-prod-grid .products,.cs-prod-grid ul.products{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:20px!important;margin:0!important;padding:0!important;list-style:none;}
.cs-prod-grid ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:16px;text-align:left;}
.cs-prod-grid ul.products li.product img{border-radius:8px;margin-bottom:14px;}
.cs-prod-grid ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:19px;color:var(--green);padding:0 0 6px;}
.cs-prod-grid ul.products li.product .price{color:var(--gold);font-weight:600;display:block;margin-bottom:12px;}
.cs-prod-grid ul.products li.product .price .amount{color:var(--gold);}

/* Zo werkt het */
.cs-steps{background:var(--paper-2);}
.cs-steps-inner{max-width:1180px;margin:0 auto;padding:64px 24px;text-align:center;}
.cs-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:36px;}
.cs-step .num{width:46px;height:46px;border-radius:999px;background:var(--green-deep);color:var(--beige);font-family:var(--serif);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:18px;}
.cs-step h3{font-size:20px;margin:0 0 8px;}
.cs-step p{font-size:14px;color:var(--ink-soft);margin:0;max-width:30ch;margin:0 auto;}

/* Footer */
.cs-footer{background:var(--green-deeper);color:var(--beige);}
.cs-footer-top{max-width:1180px;margin:0 auto;padding:56px 24px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;}
.cs-footer-brand .name{font-family:var(--serif);font-size:24px;color:var(--beige);display:block;margin-bottom:14px;}
.cs-footer-brand p{opacity:0.8;font-size:14px;margin:0;max-width:34ch;}
.cs-footer h4{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 16px;font-weight:500;}
.cs-footer ul{list-style:none;margin:0;padding:0;}
.cs-footer ul li{margin-bottom:10px;}
.cs-footer ul a{color:var(--beige);opacity:0.85;font-size:14px;}
.cs-footer ul a:hover{opacity:1;color:var(--gold-soft);}
.cs-footer-bottom{border-top:1px solid rgba(245,240,232,0.15);}
.cs-footer-bottom-inner{max-width:1180px;margin:0 auto;padding:20px 24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;opacity:0.7;}

/* WooCommerce algemeen */
.woocommerce .price,.woocommerce span.amount{color:var(--green-deep);font-weight:600;}
.woocommerce div.product .product_title{font-family:var(--serif);}
.woocommerce-message,.woocommerce-info{border-top-color:var(--green)!important;}
.woocommerce-message::before,.woocommerce-info::before{color:var(--green)!important;}

/* Mobiel */
@media (max-width:860px){
  .cs-hero-inner{grid-template-columns:1fr;gap:32px;}
  .cs-hero-visual{min-height:260px;}
  .cs-cat-grid{grid-template-columns:1fr;}
  .cs-prod-grid .products,.cs-prod-grid ul.products{grid-template-columns:repeat(2,1fr)!important;}
  .cs-steps-grid{grid-template-columns:1fr;gap:28px;}
  .cs-footer-top{grid-template-columns:1fr 1fr;gap:28px;}
}
@media (max-width:760px){
  .cs-header-inner{flex-wrap:wrap;gap:14px;}
  .cs-nav{order:3;flex-basis:100%;}
  .cs-nav ul{gap:16px;flex-wrap:wrap;}
}
@media (max-width:520px){
  .cs-prod-grid .products,.cs-prod-grid ul.products{grid-template-columns:1fr!important;}
  .cs-footer-top{grid-template-columns:1fr;}
}

/* ===== Homepage verfijning naar ontwerp (v2.1) ===== */

/* Ruitjespapier-achtergrond */
.cs-grid-bg{
  background-color:var(--ivory);
  background-image:
    linear-gradient(rgba(36,58,48,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36,58,48,0.06) 1px, transparent 1px);
  background-size:26px 26px;
}

/* Hero beeldvlak */
.cs-hero-visual{background:transparent;border-radius:18px;min-height:380px;padding:0;}
.cs-hero-panel{position:relative;width:100%;height:100%;min-height:380px;border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(36,58,48,0.14);}
.cs-hero-panel .cs-card{position:absolute;}
.cs-card-light{width:46%;min-width:230px;aspect-ratio:1.7/1;background:#fff;left:8%;top:30%;transform:rotate(-5deg);border-radius:12px;box-shadow:0 18px 38px rgba(36,58,48,0.20);}
.cs-card-light .mark{position:absolute;left:18px;top:16px;font-family:var(--serif);font-size:13px;letter-spacing:0.04em;text-transform:uppercase;color:var(--green);opacity:0.55;}
.cs-card-light .label{position:absolute;left:18px;bottom:14px;font-family:var(--mono);font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:var(--green-soft);}
.cs-card-green{width:44%;min-width:220px;aspect-ratio:1.7/1;background:var(--green-deep);right:8%;top:42%;transform:rotate(6deg);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 38px rgba(36,58,48,0.28);}
.cs-card-green span{font-family:var(--serif);color:var(--beige);font-size:16px;letter-spacing:0.03em;text-transform:uppercase;text-align:center;line-height:1.25;}

/* Productkaarten homepage */
.cs-prod-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.cs-prod-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--rule);border-radius:14px;overflow:hidden;transition:transform .15s ease;}
.cs-prod-card:hover{transform:translateY(-3px);}
.cs-prod-thumb{position:relative;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;}
.cs-prod-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.cs-prod-thumb .ph{width:46%;aspect-ratio:3/4;background:#fff;border:1.5px dashed var(--rule-strong);border-radius:4px;}
.cs-prod-body{padding:18px;display:flex;flex-direction:column;gap:6px;flex:1;}
.cs-prod-body h3{font-family:var(--serif);font-size:20px;color:var(--green);margin:0;}
.cs-prod-body p{font-size:13px;color:var(--ink-soft);margin:0;flex:1;}
.cs-prod-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;}
.cs-prod-foot .vanaf{font-family:var(--mono);font-size:12px;letter-spacing:0.04em;color:var(--gold);}
.cs-prod-foot .samenstellen{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--green);font-weight:600;}
.cs-prod-card:hover .samenstellen{color:var(--gold);}

@media (max-width:860px){.cs-prod-cards{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.cs-prod-cards{grid-template-columns:1fr;}}

/* ===== Productpagina naar ontwerp (v2.2) ===== */
.cs-pp{max-width:1180px;margin:0 auto;padding:28px 24px 80px;}
.cs-pp-back{font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--green);opacity:0.7;display:inline-block;margin-bottom:24px;}
.cs-pp-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
.cs-pp-preview{position:relative;border-radius:16px;min-height:520px;display:flex;align-items:center;justify-content:center;
  background-color:var(--ivory);background-image:linear-gradient(rgba(36,58,48,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(36,58,48,0.06) 1px,transparent 1px);background-size:26px 26px;overflow:hidden;}
.cs-pp-preview img{width:62%;border-radius:6px;box-shadow:0 22px 50px rgba(36,58,48,0.18);}
.cs-pp-poster{width:58%;aspect-ratio:3/4;background:#fff;border-radius:6px;box-shadow:0 22px 50px rgba(36,58,48,0.18);display:flex;flex-direction:column;justify-content:space-between;padding:22px;}
.cs-pp-poster .mark{font-family:var(--serif);font-size:15px;color:var(--green);letter-spacing:0.04em;text-transform:uppercase;opacity:0.7;}
.cs-pp-poster .pttl{font-family:var(--serif);font-size:20px;color:var(--green);}
.cs-pp-tag{position:absolute;left:18px;bottom:18px;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:var(--beige);background:var(--green-deep);padding:6px 12px;border-radius:999px;}
.cs-pp h1{font-family:var(--serif);font-weight:500;color:var(--green);font-size:clamp(32px,4vw,44px);line-height:1.05;margin:0;}
.cs-pp-sub{font-size:16px;color:var(--ink-soft);margin:10px 0 28px;max-width:42ch;}
.cs-pp-group{margin-bottom:22px;}
.cs-pp-label{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--green-soft);margin-bottom:10px;}
.cs-pp-pills{display:flex;flex-wrap:wrap;gap:10px;}
.cs-pp-pill{border:1px solid var(--rule-strong);background:transparent;color:var(--ink);border-radius:999px;padding:10px 18px;font-family:var(--sans);font-size:14px;cursor:pointer;transition:all .12s;}
.cs-pp-pill:hover{border-color:var(--green);}
.cs-pp-pill.active{background:var(--green-deep);color:var(--beige);border-color:var(--green-deep);}
.cs-pp-divider{height:1px;background:var(--rule);margin:30px 0;}
.cs-pp-upload{border:1.5px dashed var(--rule-strong);border-radius:12px;padding:28px;text-align:center;background:var(--paper);}
.cs-pp-upload .t1{font-size:14px;color:var(--ink);margin-top:8px;}
.cs-pp-upload .t2{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--green-soft);margin-top:6px;}
.cs-pp-ctrl{display:flex;align-items:flex-start;gap:14px;border:1px solid var(--rule);border-radius:12px;padding:16px 18px;margin-bottom:12px;cursor:pointer;transition:border-color .12s;}
.cs-pp-ctrl.active{border-color:var(--green);box-shadow:0 0 0 1px var(--green) inset;}
.cs-pp-ctrl .dot{width:18px;height:18px;border-radius:999px;border:2px solid var(--rule-strong);flex:0 0 auto;margin-top:2px;}
.cs-pp-ctrl.active .dot{border-color:var(--green);background:radial-gradient(circle,var(--green) 0 5px,transparent 6px);}
.cs-pp-ctrl .name{font-weight:600;color:var(--ink);}
.cs-pp-ctrl .desc{font-size:13px;color:var(--ink-soft);margin-top:2px;}
.cs-pp-ctrl .price{font-family:var(--mono);font-size:12px;letter-spacing:0.04em;color:var(--gold);white-space:nowrap;margin-left:auto;}
.cs-pp-total{border:1px solid var(--rule);border-radius:14px;padding:24px;margin-top:28px;background:var(--paper);}
.cs-pp-total .label{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--green-soft);}
.cs-pp-total .amount{font-family:var(--serif);font-size:34px;color:var(--green);margin-top:4px;}
.cs-pp-total .amount .amount,.cs-pp-total .amount bdi{font-family:var(--serif);color:var(--green);}
.cs-pp-note{text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:0.08em;text-transform:uppercase;color:var(--green-soft);margin-top:16px;opacity:0.8;}
/* echte add-to-cart knop in stijl */
.cs-pp-total form.cart{margin-top:16px;display:flex;gap:12px;align-items:center;}
.cs-pp-total form.cart .quantity input{padding:12px;border:1px solid var(--rule-strong);border-radius:10px;width:72px;font-family:var(--sans);}
.cs-pp-total form.cart button.button{flex:1;background:var(--green-deep)!important;color:var(--beige)!important;border-radius:999px!important;padding:15px!important;font-weight:600!important;font-size:15px!important;}
.cs-pp-total form.cart button.button:hover{background:var(--gold)!important;}
@media (max-width:880px){.cs-pp-grid{grid-template-columns:1fr;gap:32px;}.cs-pp-preview{min-height:360px;}}

/* ===== Hero-foto met kader (v2.4.0) ===== */
.cs-hero-visual{overflow:visible!important;}
.cs-hero-photo{position:relative;width:100%;max-width:400px;margin:0 auto;transform:rotate(-2deg);}
.cs-hero-photo-frame{border:1px solid var(--rule-strong);border-radius:24px;padding:13px;background:transparent;}
.cs-hero-photo-inner{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/4;background:var(--ivory);box-shadow:0 24px 60px rgba(36,58,48,0.16);}
.cs-hero-photo-inner img{width:100%;height:100%;object-fit:cover;display:block;}
.cs-hero-photo-ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--green-soft);}

/* ===== Aanvraagbalk (v2.4.0) ===== */
.cs-cta-band{background:var(--green-deep);}
.cs-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:44px 0;flex-wrap:wrap;}
.cs-cta-copy{flex:1;min-width:260px;}
.cs-cta-copy h2{color:var(--beige);margin:0 0 8px;}
.cs-cta-copy h2 em{color:var(--gold-soft);}
.cs-cta-copy p{color:var(--beige);opacity:0.85;margin:0;max-width:56ch;}
.cs-btn-gold{background:var(--gold)!important;color:var(--beige)!important;}
.cs-btn-gold:hover{background:var(--gold-soft)!important;color:var(--green-deep)!important;}

@media (max-width:760px){
  .cs-hero-photo{max-width:320px;}
  .cs-cta-inner{flex-direction:column;align-items:flex-start;gap:20px;padding:34px 0;}
}

/* ===== Productpagina: echte WooCommerce variatie-cart (v2.5.0) ===== */
.cs-pp-options:empty{display:none;}
.cs-pp-total .variations_form.cart{margin:0;display:block;}
.cs-pp-total .single_variation_wrap{margin-top:14px;}
.cs-pp-total .woocommerce-variation-price{font-family:var(--serif);font-size:24px;color:var(--green);margin-bottom:12px;}
.cs-pp-total .woocommerce-variation-price .amount,.cs-pp-total .woocommerce-variation-price bdi{font-family:var(--serif);color:var(--green);}
.cs-pp-total .woocommerce-variation-availability{font-family:var(--mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--green-soft);margin-bottom:10px;}
.cs-pp-total .woocommerce-variation-add-to-cart{display:flex;gap:12px;align-items:center;}
.cs-pp-total .woocommerce-variation-add-to-cart .quantity input{padding:12px;border:1px solid var(--rule-strong);border-radius:10px;width:72px;font-family:var(--sans);}
.cs-pp-total .single_add_to_cart_button{flex:1;background:var(--green-deep)!important;color:var(--beige)!important;border-radius:999px!important;padding:15px!important;font-weight:600!important;font-size:15px!important;border:none!important;cursor:pointer;text-transform:none!important;}
.cs-pp-total .single_add_to_cart_button:hover{background:var(--gold)!important;}
.cs-pp-total .single_add_to_cart_button.disabled,.cs-pp-total .single_add_to_cart_button.wc-variation-selection-needed{opacity:0.45;}

/* ===== Shop: sorteerbalk, telling, paginering, upsells (v2.7.0) ===== */
.woocommerce .woocommerce-result-count{font-family:var(--mono);font-size:12px;letter-spacing:0.04em;text-transform:uppercase;color:var(--green-soft);margin-bottom:18px;}
.woocommerce .woocommerce-ordering{margin-bottom:22px;}
.woocommerce .woocommerce-ordering select,
.cs-woo select.orderby{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  font-family:var(--sans);font-size:14px;color:var(--green);
  background-color:var(--paper);border:1px solid var(--rule-strong);border-radius:999px;
  padding:11px 42px 11px 18px;cursor:pointer;line-height:1.2;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%233e5c4e' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px;
}
.woocommerce .woocommerce-ordering select:hover,.cs-woo select.orderby:hover{border-color:var(--green);}
.woocommerce .woocommerce-ordering select:focus,.cs-woo select.orderby:focus{outline:none;border-color:var(--green);}
.woocommerce nav.woocommerce-pagination{margin-top:36px;}
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li{border:none!important;margin:0;}
.woocommerce nav.woocommerce-pagination ul li{display:inline-block;margin:0 4px;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  font-family:var(--sans);font-size:14px;color:var(--green);border:1px solid var(--rule)!important;
  background:var(--paper);border-radius:999px!important;padding:8px 15px!important;min-width:auto;transition:all .12s;
}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--green-deep);color:var(--beige);border-color:var(--green-deep)!important;}
.woocommerce nav.woocommerce-pagination ul li a:hover{border-color:var(--green)!important;color:var(--gold);background:var(--paper);}

/* Upsells op de productpagina */
.cs-pp-upsells{margin-top:64px;}
.cs-pp-upsells h2{margin:0 0 24px;}

/* ===== Live zoekresultaten (v2.8.0) ===== */
.cs-search-results{margin-top:12px;display:flex;flex-direction:column;gap:4px;}
.cs-search-result{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:12px;transition:background .12s;}
.cs-search-result:hover{background:var(--paper-2);}
.cs-search-result img,.cs-search-noimg{width:48px;height:48px;border-radius:8px;object-fit:cover;flex:0 0 auto;background:var(--ivory);}
.cs-search-meta{display:flex;flex-direction:column;gap:2px;}
.cs-search-meta .t{font-family:var(--serif);font-size:16px;color:var(--green);}
.cs-search-meta .p{font-family:var(--mono);font-size:12px;color:var(--gold);}
.cs-search-meta .p .amount,.cs-search-meta .p bdi{color:var(--gold);}
.cs-search-empty{font-family:var(--mono);font-size:12px;letter-spacing:0.06em;text-transform:uppercase;color:var(--green-soft);padding:14px 12px;}

/* ===== Upsell-kaart met directe toevoegknop (v2.8.0) ===== */
.cs-upsell-card .cs-prod-body{gap:10px;}
.cs-upsell-card h3{margin:0;}
.cs-upsell-card h3 a{color:var(--green);}
.cs-upsell-card h3 a:hover{color:var(--gold);}
.cs-upsell-add{display:inline-block;text-align:center;margin-top:4px;background:var(--green-deep)!important;color:var(--beige)!important;border:none!important;border-radius:999px!important;padding:11px 18px!important;font-family:var(--sans)!important;font-weight:600!important;font-size:14px!important;text-transform:none!important;cursor:pointer;transition:background .12s;}
.cs-upsell-add:hover{background:var(--gold)!important;color:var(--beige)!important;}
.cs-upsell-add.loading,.cs-upsell-add.added{opacity:0.85;}
.cs-upsell-card .added_to_cart{display:inline-block;margin-top:8px;font-family:var(--mono);font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--green);}

/* ===== Ontwerp-CTA tegel in de shop-grid (v2.9.0) ===== */
.cs-prod-grid ul.products li.product.cs-shop-cta{background:var(--green-deep)!important;border:none!important;padding:0!important;overflow:hidden;}
.cs-shop-cta-inner{display:flex;flex-direction:column;height:100%;padding:26px;gap:14px;}
.cs-shop-cta-inner h3{font-family:var(--serif);font-weight:500;color:var(--beige)!important;font-size:23px;line-height:1.15;margin:0 0 10px;}
.cs-shop-cta-inner p{color:var(--beige);opacity:0.85;font-size:14px;line-height:1.5;margin:0;}
.cs-shop-cta-btn{display:inline-block;align-self:flex-start;margin-top:auto;background:var(--gold)!important;color:var(--beige)!important;border-radius:999px;padding:11px 20px;font-family:var(--sans);font-weight:600;font-size:14px;transition:background .12s,color .12s;}
.cs-shop-cta-btn:hover{background:var(--gold-soft)!important;color:var(--green-deep)!important;}

/* ===== Fix: WooCommerce clearfix-pseudo's tellen niet mee als grid-cel (v3.0.0) ===== */
.cs-prod-grid ul.products::before,
.cs-prod-grid ul.products::after,
.cs-woo ul.products::before,
.cs-woo ul.products::after,
.woocommerce ul.products::before,
.woocommerce ul.products::after{content:none!important;display:none!important;}

/* ===== Foto in de ontwerp-CTA tegel (v3.1.0) ===== */
.cs-shop-cta-copy{flex:0 0 auto;}
.cs-shop-cta-photo{flex:0 0 auto;height:110px;border-radius:12px;overflow:hidden;margin:4px 0;}
.cs-shop-cta-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 32%;display:block;}
