:root { --ole-ink:#273b33; --ole-cream:#fffaf2; --ole-coral:#a34824; --ole-lime:#eadfce; --ole-blue:#f3e6d4; }
/* Ticketwinkelwagen: hetzelfde palet en kaartoppervlak als de checkout. */
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce:has(.woocommerce-cart-form) {
  box-sizing:border-box; max-width:1080px; margin:2rem auto;
  padding:clamp(1rem,3vw,2rem); color:var(--ole-ink);
  background:var(--ole-cream); border:2px solid var(--ole-lime);
  border-radius:24px; box-shadow:0 16px 36px rgba(74,50,34,.12);
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart h2,
:is(.ole-ticket-order-flow,.ole-shop-cart) .cart_totals h2 {
  margin-top:0; color:var(--ole-ink); font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.6rem,3vw,2.4rem)!important; line-height:1.2; letter-spacing:-.02em;
  text-transform:none!important;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart-items,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form table.shop_table {
  border:0; border-collapse:collapse; background:transparent;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart-items th,
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart-items td,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form table.shop_table th,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form table.shop_table td {
  border-color:var(--ole-lime)!important; padding-top:1.2rem; padding-bottom:1.2rem;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-components-product-name,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form .product-name a {
  color:var(--ole-ink); font-weight:700; text-decoration:none; line-height:1.45;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-components-product-metadata {
  margin-top:.75rem; font-size:.9rem; line-height:1.6;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart-item__image img,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form .product-thumbnail img {
  border-radius:12px; width:88px; max-width:100%;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart__sidebar,
:is(.ole-ticket-order-flow,.ole-shop-cart) .cart-collaterals .cart_totals {
  box-sizing:border-box; background:#fff; padding:1.4rem; border:1px solid var(--ole-lime);
  border-radius:18px; box-shadow:0 8px 22px rgba(74,50,34,.05);
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-components-totals-wrapper { border-color:var(--ole-lime); }
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart__submit-button,
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-proceed-to-checkout a.checkout-button {
  box-sizing:border-box; display:flex; align-items:center; justify-content:center;
  width:100%; min-height:54px; padding:1rem 1.2rem!important; margin:0;
  border:0!important; border-radius:99px!important; background:var(--ole-coral)!important;
  color:#fff!important; font:800 1rem/1.45 sans-serif; text-align:center;
  text-decoration:none; box-shadow:none;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart__submit-button:hover,
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-proceed-to-checkout a.checkout-button:hover { filter:brightness(.85); }
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart__submit-button:focus-visible,
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-proceed-to-checkout a.checkout-button:focus-visible { outline:3px solid var(--ole-ink); outline-offset:4px; }
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-components-text-input input,
:is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-cart-form #coupon_code {
  min-height:48px; border:2px solid var(--ole-lime); border-radius:10px; background:#fff;
}
:is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-components-totals-coupon-link { color:var(--ole-coral); }
@media(max-width:700px) {
  :is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart,
  :is(.ole-ticket-order-flow,.ole-shop-cart) .woocommerce:has(.woocommerce-cart-form) { margin:1rem 0; padding:1rem; }
  :is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart__sidebar,
  :is(.ole-ticket-order-flow,.ole-shop-cart) .cart-collaterals .cart_totals { padding:1rem; margin-top:1rem; width:100%; }
  :is(.ole-ticket-order-flow,.ole-shop-cart) .wc-block-cart .wc-block-cart-item__image img { width:64px; }
}
.ole-ticket { position:relative; isolation:isolate; overflow:hidden; max-width:1100px; margin:3rem auto; color:var(--ole-ink); background:var(--ole-cream); border:2px solid var(--ole-lime); border-radius:24px; box-shadow:0 16px 36px rgba(74,50,34,.12); font-family:Georgia,"Times New Roman",serif; }
.ole-ticket__paint { position:absolute; z-index:-1; border-radius:50%; opacity:.55; }
.ole-ticket__paint--one { width:240px;height:240px;right:-70px;top:-90px;background:var(--ole-coral); }
.ole-ticket__paint--two { width:170px;height:170px;left:-60px;bottom:-75px;background:var(--ole-blue); }
.ole-ticket__hero { padding:3.5rem 4rem 2.5rem; background:linear-gradient(105deg,rgba(255,250,242,.98) 15%,rgba(255,250,242,.78)); }
.ole-ticket__stamp { display:inline-block; padding:.45rem .75rem; background:var(--ole-coral); color:#fff; font:800 .7rem/1 sans-serif; letter-spacing:.12em; border-radius:999px; }
.ole-ticket__eyebrow { margin:2rem 0 .5rem; color:var(--ole-coral); font:800 .85rem sans-serif; text-transform:uppercase; letter-spacing:.1em; }
.ole-ticket h2 { max-width:700px; margin:0; color:var(--ole-ink); font-size:clamp(2.4rem,6vw,5.4rem); line-height:.9; letter-spacing:-.04em; }
.ole-ticket__meta { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:2rem; font:700 1rem sans-serif; }
.ole-ticket__meta span { padding:.7rem 1rem; border:1px solid var(--ole-lime); border-radius:99px; background:#fff; }
.ole-ticket__body { display:grid; grid-template-columns:1fr minmax(310px,420px); gap:3rem; padding:2rem 4rem 4rem; }
.ole-ticket__story { max-width:520px; font-size:1.15rem; line-height:1.55; }
.ole-ticket__form { align-self:start; padding:1.5rem; background:#fff; border:2px solid var(--ole-lime); border-radius:18px; box-shadow:0 12px 28px rgba(74,50,34,.08); font:1rem sans-serif; }
.ole-ticket__form label { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.2rem; font-weight:700; }
.ole-ticket__personal { margin:0 0 1.2rem; padding:.9rem 1rem; background:var(--ole-blue); border-radius:12px; line-height:1.45; }
.ole-ticket__personal strong { display:block; font-weight:800; }
.ole-ticket__personal span { display:block; margin-top:.35rem; color:#58645f; font-weight:600; }
.ole-ticket__counter { display:inline-grid; grid-template-columns:44px 56px 44px; align-items:center; min-width:144px; border:2px solid var(--ole-coral); border-radius:99px; overflow:hidden; background:#fff; }
.ole-ticket__counter button,.ole-ticket__counter input { box-sizing:border-box!important; width:auto!important; min-width:0!important; height:44px!important; margin:0!important; padding:0!important; border:0!important; border-radius:0!important; box-shadow:none!important; text-align:center!important; line-height:44px!important; }
.ole-ticket__counter button { cursor:pointer; background:var(--ole-coral)!important; color:#fff!important; font-size:1.35rem!important; font-weight:800!important; }
.ole-ticket__counter input { appearance:textfield; -moz-appearance:textfield; background:#fff!important; color:var(--ole-ink)!important; -webkit-text-fill-color:var(--ole-ink); border-right:1px solid var(--ole-coral)!important; border-left:1px solid var(--ole-coral)!important; font-size:1.2rem!important; font-weight:800!important; opacity:1!important; }
.ole-ticket__counter input::-webkit-inner-spin-button,.ole-ticket__counter input::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.ole-ticket__check { padding:.9rem; background:var(--ole-blue); border-radius:12px; }
.ole-ticket__check input { accent-color:var(--ole-coral); }
.ole-ticket__check strong { margin-left:auto; white-space:nowrap; color:var(--ole-coral); }
.ole-ticket__total { display:flex; justify-content:space-between; align-items:flex-end; gap:.75rem; border-top:1px dashed var(--ole-coral); padding:1.2rem 0; font-size:1.1rem; }
.ole-ticket__total strong { flex:0 0 auto; white-space:nowrap; font-size:1.5rem; color:var(--ole-coral); }
.ole-ticket__button { display:flex; justify-content:space-between; width:100%; padding:1rem 1.2rem; border:0; border-radius:99px; background:var(--ole-coral); color:#fff; cursor:pointer; font:800 1.05rem sans-serif; }
.ole-ticket__button:hover { background:#7f3419; }
.ole-ticket__form small { display:block; margin-top:1rem; color:#58645f; line-height:1.4; }
.ole-ticket__image { display:block; width:min(100%,780px); max-height:420px; object-fit:cover; margin:2rem 0 0; border:1.6px solid var(--ole-lime); border-radius:12px; }
.ole-ticket-order-flow .map-free-shipping-notice { display:none!important; }
.ole-ticket-order-flow label[data-automation-id="woo-commerce-subscription-opt-in"] { display:none!important; }
.ole-ticket-order-flow form.checkout { max-width:1080px; margin:2rem auto; padding:clamp(1rem,3vw,2rem); color:var(--ole-ink); background:var(--ole-cream); border:2px solid var(--ole-lime); border-radius:24px; box-shadow:0 16px 36px rgba(74,50,34,.12); }
.ole-ticket-order-flow form.checkout h3 { margin-top:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.6rem,4vw,2.4rem); color:var(--ole-ink); }
.ole-ticket-order-flow form.checkout .form-row input.input-text { min-height:50px; border:2px solid var(--ole-lime); border-radius:10px; background:#fff; }
.ole-ticket-order-flow form.checkout #place_order { width:100%; min-height:54px; border:0; border-radius:99px; background:var(--ole-coral); color:#fff; font-weight:800; }
.ole-ticket-order-flow form.checkout #place_order:hover { background:#7f3419; }
@media (max-width:700px) {
  .ole-ticket { margin:2rem .7rem; }
  .ole-ticket__hero,.ole-ticket__body { padding:2rem 1.3rem; }
  .ole-ticket__body { display:block; }
  .ole-ticket__story { margin-bottom:2rem; }
  .ole-ticket h2 { font-size:3.1rem; }
  .ole-ticket__meta { display:block; }
  .ole-ticket__meta span { display:inline-block; margin:.25rem 0; }
  .ole-ticket-order-flow form.checkout { margin:1rem .35rem 2rem; padding:1rem; }
  .ole-ticket-order-flow form.checkout .col2-set .col-1,.ole-ticket-order-flow form.checkout .col2-set .col-2 { float:none; width:100%; }
  .ole-ticket-order-flow form.checkout .form-row-first,.ole-ticket-order-flow form.checkout .form-row-last { float:none; width:100%; }
  .ole-ticket-order-flow form.checkout table.shop_table { font-size:.9rem; }
  .ole-ticket-order-flow form.checkout #payment { background:#fff; }
}
.ole-participant{max-width:920px;margin:2rem auto;padding:clamp(1.2rem,4vw,3rem);border:1px solid #dbe5ed;border-radius:24px;background:#fff;box-shadow:0 16px 48px #123b6110;color:#153b61;font:1rem/1.6 system-ui,sans-serif}
.ole-participant__header{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem}.ole-participant__image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px}.ole-participant__image:empty{display:none}.ole-participant__header:has(.ole-participant__image:empty){grid-template-columns:1fr}.ole-participant__eyebrow{color:#0872cf;font-weight:700;letter-spacing:.06em}.ole-participant h2{margin:.5rem 0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.1;color:inherit}.ole-participant h3{font-size:clamp(1.7rem,4vw,2.6rem);color:inherit;margin:2rem 0 1rem}.ole-participant fieldset{border:0;padding:0;margin:0 0 1.5rem}.ole-participant legend{font-weight:700;margin-bottom:.75rem}.ole-participant__moment{display:flex;align-items:center;gap:1rem;padding:1rem;margin:.6rem 0;border:1px solid #dbe5ed;border-radius:14px;cursor:pointer}.ole-participant__moment:has(input:checked){border-color:#0872cf;background:#f1f8ff}.ole-participant__moment input{accent-color:#0872cf;width:20px;height:20px;flex-shrink:0}.ole-participant__moment>span{flex:1}.ole-participant__moment>span>span,.ole-participant__moment small{display:block}.ole-participant__moment b{white-space:nowrap}.ole-participant__fields{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.ole-participant__fields label{font-weight:700}.ole-participant__fields input{box-sizing:border-box;display:block;width:100%;margin-top:.5rem;border:1px solid #bccbd8;border-radius:12px;padding:1rem;color:#153b61;background:#fff;font:inherit}.ole-participant__fields input[readonly]{background:#f1f8ff}.ole-participant__total{text-align:right;font-size:1.5rem}.ole-participant__button{display:flex;justify-content:space-between;width:100%;border:0;border-radius:14px;padding:1.1rem 1.5rem;background:#0872cf;color:white;font:700 1.2rem system-ui;cursor:pointer}.ole-participant__button:hover{background:#0758a0}.ole-participant__note{font-size:.9rem;color:#526779}.ole-participant :focus-visible{outline:3px solid #0872cf;outline-offset:4px}@media(max-width:600px){.ole-participant__header,.ole-participant__fields{grid-template-columns:1fr}.ole-participant__moment{flex-wrap:wrap}.ole-participant{margin:1rem 0}}
/* Vier creatieve items, met native swipen en rustige fotokaarten. */
.ole-workshop-slider{max-width:1160px;margin:3rem auto;padding:clamp(1.2rem,4vw,3rem);background:var(--ole-cream);color:var(--ole-ink);border:1px solid var(--ole-lime);border-radius:28px;box-shadow:0 16px 40px rgba(74,50,34,.08);font:1rem/1.6 system-ui,sans-serif;box-sizing:border-box}
.ole-workshop-slider__header{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.8rem}.ole-workshop-slider__header h2{font:700 32px/1.2 Georgia,serif;letter-spacing:-.025em;color:inherit;margin:0 0 .65rem}.ole-workshop-slider__header p{margin:0;max-width:650px;opacity:.8}.ole-workshop-slider__controls{display:flex;gap:.7rem;flex-shrink:0}.ole-workshop-slider__controls[hidden]{display:none}.ole-workshop-slider__controls button{display:grid;place-items:center;width:48px;height:48px;padding:0;border:2px solid var(--ole-ink);border-radius:50%;background:var(--ole-ink);color:#fff;font:700 1.55rem/1 sans-serif;box-shadow:0 4px 12px rgba(39,59,51,.18);cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.ole-workshop-slider__controls button:hover:not(:disabled){background:var(--ole-coral);border-color:var(--ole-coral);color:#fff;transform:translateY(-1px)}.ole-workshop-slider__controls button:disabled{opacity:.42;background:#fff;color:var(--ole-ink);box-shadow:none;cursor:default}
.ole-workshop-slider__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3rem)/2.35);gap:1.25rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:3px 3px 18px;scrollbar-width:thin;scrollbar-color:var(--ole-lime) transparent}.ole-workshop-slider__card{scroll-snap-align:start;overflow:hidden;background:#fff;border:1px solid var(--ole-lime);border-radius:20px;box-shadow:0 5px 12px rgba(74,50,34,.04);min-width:0;margin:0}.ole-workshop-slider__photo{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--ole-blue)}.ole-workshop-slider__photo>img{display:block;width:100%;height:100%;object-fit:cover;margin:0;transition:transform .3s ease}.ole-workshop-slider__card:hover>.ole-workshop-slider__photo>img{transform:none}.ole-workshop-slider__placeholder{display:grid;place-items:center;height:100%;font:.9rem system-ui;color:var(--ole-ink);opacity:.6}.ole-workshop-slider__number{position:absolute;top:1rem;left:1rem;display:grid;place-items:center;width:38px;height:38px;background:var(--ole-cream);border-radius:50%;color:var(--ole-coral);font:700 .8rem system-ui;box-shadow:0 2px 8px #0001}.ole-workshop-slider__caption{padding:1.3rem 1.4rem 1.6rem}.ole-workshop-slider__caption h3{font:700 1.6rem/1.15 Georgia,serif;margin:0;color:inherit}.ole-workshop-slider__caption p{font-size:.95rem;line-height:1.6;margin:.8rem 0 0;overflow-wrap:anywhere;color:inherit;opacity:.8}.ole-workshop-slider__footer{display:flex;justify-content:space-between;gap:1rem;margin-top:.8rem;font-size:.8rem;color:var(--ole-coral)}.ole-workshop-slider :focus-visible{outline:3px solid var(--ole-coral);outline-offset:3px}@media(max-width:700px){.ole-workshop-slider{margin:1.5rem 0;border-radius:20px}.ole-workshop-slider__header{align-items:flex-start;flex-wrap:wrap}.ole-workshop-slider__track{grid-auto-columns:100%;gap:1rem}.ole-workshop-slider__photo{aspect-ratio:1/1}.ole-workshop-slider__controls button{width:40px;height:40px}}@media(prefers-reduced-motion:reduce){.ole-workshop-slider__photo>img{transition:none}.ole-workshop-slider__card:hover>.ole-workshop-slider__photo>img{transform:none}}
/* Workshopagenda: zand, lichte evenementkaarten en blauwgroene accenten. */
.ole-workshop-agenda{--ole-agenda-background:#c9aa78;--ole-agenda-card:#f6f4e8;--ole-agenda-text:#438a9a;background:var(--ole-agenda-background);color:var(--ole-agenda-text);padding:clamp(1.2rem,3vw,3.5rem);border-radius:18px;margin:2rem auto;max-width:1600px;box-sizing:border-box;font:1rem/1.75 system-ui,sans-serif}.ole-workshop-agenda__header{text-align:center;margin:0 auto 2.5rem;max-width:760px}.ole-workshop-agenda__header h2{color:inherit;font:400 clamp(1.9rem,4vw,2.7rem)/1.2 system-ui,sans-serif;letter-spacing:.07em;text-transform:uppercase;margin:0 0 1rem}.ole-workshop-agenda__header p{margin:0;font-size:1rem}.ole-workshop-agenda__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.5rem;align-items:stretch}.ole-workshop-agenda__card{display:flex;flex-direction:column;align-items:center;background:var(--ole-agenda-card);padding:1.25rem;text-align:center;color:inherit;min-width:0;box-shadow:0 5px 18px #584a2e08}.ole-workshop-agenda__image{width:100%;aspect-ratio:16/10;overflow:hidden;display:grid;place-items:center;background:#00000006}.ole-workshop-agenda__image img{display:block;width:100%;height:100%;object-fit:cover;margin:0}.ole-workshop-agenda__image>span{font-size:.8rem;padding:.5rem;opacity:.75}.ole-workshop-agenda__card h3{font:400 1.35rem/1.35 system-ui,sans-serif;color:inherit;margin:1.2rem 0 1.5rem;overflow-wrap:anywhere}.ole-workshop-agenda__when{font-size:.86rem;font-weight:800;line-height:1.9;margin-bottom:.4rem}.ole-workshop-agenda__when time{display:block;text-transform:uppercase}.ole-workshop-agenda__when span{display:block}.ole-workshop-agenda__location{font-weight:700;font-size:.9rem;margin:.25rem 0 1rem;overflow-wrap:anywhere}.ole-workshop-agenda__description{font-size:.95rem;line-height:1.85;margin:1rem 0 1.5rem;overflow-wrap:anywhere}.ole-workshop-agenda__card footer{margin-top:auto;width:100%;padding-top:.6rem}.ole-workshop-agenda__price{font-weight:700;margin:0 0 .8rem}.ole-workshop-agenda__price small{font-weight:400;display:block}.ole-workshop-agenda__button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:46px;width:100%;padding:.7rem .8rem;color:var(--ole-agenda-card)!important;background:var(--ole-agenda-text);border:1px solid var(--ole-agenda-text);border-radius:6px;font-weight:700;font-size:.9rem;text-decoration:none!important;line-height:1.5}.ole-workshop-agenda__button:hover{filter:brightness(.88)}.ole-workshop-agenda__button:focus-visible{outline:3px solid #273b33;outline-offset:4px}.ole-workshop-agenda__pending{display:block;font-size:.85rem;font-weight:700}.ole-workshop-agenda__empty{padding:2rem;background:var(--ole-agenda-card);text-align:center}.ole-workshop-agenda__booking{scroll-margin-top:100px;margin-bottom:2rem}.ole-workshop-agenda__booking>a{color:var(--ole-agenda-text);background:var(--ole-agenda-card);padding:.6rem 1rem;display:inline-block;border-radius:6px}.ole-workshop-agenda__booking .ole-participant{margin-top:1rem}@media(max-width:767px){.ole-workshop-agenda{margin:1rem 0;padding:1rem;border-radius:12px}.ole-workshop-agenda__grid{grid-template-columns:1fr;gap:1rem}.ole-workshop-agenda__header{margin:1rem auto 1.5rem}.ole-workshop-agenda__card{padding:1.2rem}.ole-workshop-agenda__card h3{margin-bottom:1rem}}
.ole-shop-slider .ole-workshop-slider__card{display:flex;flex-direction:column}.ole-shop-slider .ole-workshop-slider__photo{flex-shrink:0;background:#f6f3ec}.ole-shop-slider .ole-workshop-slider__photo>img{object-fit:contain;padding:12px 12px 88px;box-sizing:border-box;background:#f6f3ec}.ole-shop-slider .ole-workshop-slider__caption{display:flex;flex-direction:column;flex:1}.ole-shop-slider__info-button{position:absolute;z-index:2;top:.8rem;right:.8rem;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #fff9;border-radius:50%;background:#fff;color:var(--ole-ink);box-shadow:0 3px 12px #0003;font:italic 700 1.15rem/1 Georgia,serif;cursor:pointer}.ole-shop-slider__info-button:hover{background:var(--ole-coral);color:#fff}.ole-shop-slider__info-button:focus-visible{outline:3px solid var(--ole-coral);outline-offset:3px}.ole-shop-slider__dialog{width:min(620px,calc(100% - 2rem));max-height:min(80vh,760px);padding:0;border:0;border-radius:22px;background:#fff;color:var(--ole-ink);box-shadow:0 24px 80px #0005;overflow:auto}.ole-shop-slider__dialog::backdrop{background:#273b33a8;backdrop-filter:blur(2px)}.ole-shop-slider__dialog-inner{position:relative;padding:clamp(1.4rem,4vw,2.4rem)}.ole-shop-slider__dialog h3{padding-right:2.5rem;margin:0 0 1rem;color:inherit;font:700 clamp(1.55rem,4vw,2rem)/1.2 Georgia,serif}.ole-shop-slider__dialog-close{position:absolute;top:1rem;right:1rem;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--ole-lime);border-radius:50%;background:#fff;color:var(--ole-ink);font:400 1.5rem/1 system-ui,sans-serif;cursor:pointer}.ole-shop-slider__dialog-close:hover{background:var(--ole-coral);color:#fff}.ole-shop-slider__dialog-content{font:1rem/1.65 system-ui,sans-serif}.ole-shop-slider__dialog-content>:first-child{margin-top:0}.ole-shop-slider__dialog-content>:last-child{margin-bottom:0}.ole-shop-slider__dialog-content ul,.ole-shop-slider__dialog-content ol{padding-left:1.4rem}.ole-shop-slider__price{margin-top:1.2rem;color:var(--ole-ink);font:700 1.15rem/1.3 system-ui,sans-serif}.ole-shop-slider__price del{opacity:.55;font-weight:500}.ole-shop-slider__price ins{text-decoration:none}.ole-shop-slider__button{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.7rem;padding:.85rem 1.1rem;min-height:48px;box-sizing:border-box;border:0;border-radius:99px;background:var(--ole-coral);color:#fff!important;text-decoration:none!important;font:800 .9rem/1.4 system-ui,sans-serif;letter-spacing:.05em}.ole-shop-slider__button:hover{filter:brightness(.88)}.ole-shop-slider__button--disabled{opacity:.4;cursor:default}.ole-shop-slider .ole-workshop-slider__caption p{margin-bottom:auto}.ole-shop-slider [data-slider-position][hidden]{display:none}
/* Consistente, rustigere koppen op de CreaCafeOle-homepage. */
body.home .entry-content h1,
body.home .entry-content h2,
body.home .entry-content h3,
body.home #colophon.site-footer h3 {
  font-family:var(--global-heading-font-family, 'Playfair', Georgia, serif);
  font-weight:700;
  line-height:1.25;
  letter-spacing:normal;
}
body.home .entry-content h1,
body.home .entry-content h2 { font-size:32px; }
body.home .entry-content h3,
body.home #colophon.site-footer h3 { font-size:22px; }
body.home .ole-workshop-slider__header p { font-size:16px; line-height:1.6; }
@media(max-width:700px) {
  body.home .entry-content h1,
  body.home .entry-content h2 { font-size:28px; }
  body.home .entry-content h3,
  body.home #colophon.site-footer h3 { font-size:20px; }
}
/* Shop Cart als ruime kaart met een eigen besteloverzicht. */
.ole-shop-cart .woocommerce:has(.woocommerce-cart-form){container:olecart / inline-size}
.ole-shop-cart .kadence-woo-cart-form-wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:1.75rem;align-items:start}
.ole-shop-cart .kadence-woo-cart-form-wrap:before,.ole-shop-cart .kadence-woo-cart-form-wrap:after{display:none}
.ole-shop-cart .woocommerce-cart-form,.ole-shop-cart .cart-collaterals,.ole-shop-cart .cart-collaterals .cart_totals{float:none!important;width:100%!important;min-width:0;margin:0;box-sizing:border-box}
.ole-shop-cart .cart-summary h2{font-size:26px;line-height:1.25;margin-top:0;color:var(--ole-ink)}
.ole-shop-cart .cart-collaterals .cart_totals h2{font-size:24px!important;line-height:1.25;margin-bottom:1.25rem;overflow-wrap:normal}
.ole-shop-cart .cart-collaterals .cart_totals table{border:0;background:transparent;margin-bottom:1rem;width:100%}
.ole-shop-cart .cart-collaterals .cart_totals th,.ole-shop-cart .cart-collaterals .cart_totals td{border-color:var(--ole-lime);padding:.9rem .5rem;vertical-align:top;font-size:.95rem;overflow-wrap:anywhere}
.ole-shop-cart .cart-collaterals .cart_totals th{width:40%}
.ole-shop-cart .woocommerce-cart-form .product-thumbnail img{width:100px!important;max-width:100px!important;height:auto;border-radius:12px}
.ole-shop-cart .woocommerce-cart-form .product-name{min-width:120px;overflow-wrap:normal}
.ole-shop-cart .woocommerce-cart-form .quantity input{border:1px solid var(--ole-lime);border-radius:10px;background:white;min-height:44px}
.ole-shop-cart .woocommerce-cart-form .actions .coupon{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.ole-shop-cart .woocommerce-cart-form .actions .button{border-radius:10px;padding:.8rem 1rem;font-size:.9rem}
.ole-shop-cart .woocommerce-notices-wrapper{margin-bottom:1rem}
.ole-shop-cart .woocommerce-notices-wrapper:empty{display:none;margin:0}
@container olecart (min-width:760px){.ole-shop-cart .kadence-woo-cart-form-wrap{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr)}}
@media(max-width:767px){.ole-shop-cart .woocommerce-cart-form .product-thumbnail{display:block!important;text-align:center!important}.ole-shop-cart .woocommerce-cart-form .product-thumbnail:before{display:none}.ole-shop-cart .woocommerce-cart-form .product-name{min-width:0}.ole-shop-cart .cart-summary h2{font-size:23px}.ole-shop-cart .cart-collaterals .cart_totals h2{font-size:22px!important}}
/* Openbare CreAte Box locatiekaarten. */
.ole-location-cards__notice{background:var(--ole-agenda-card);padding:1rem 1.25rem;border-radius:12px;max-width:760px;margin:1.5rem auto 0!important}
.ole-location-cards address{font-style:normal;font-size:1rem;line-height:1.6;margin-bottom:1rem}
.ole-location-cards__boxes{border-block:1px solid currentColor;padding:1.25rem 0;margin:1rem 0 1.5rem}
.ole-location-cards__boxes h4{font-size:1rem;line-height:1.4;color:inherit;margin:0 0 1rem}
.ole-location-cards__boxes ul{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;list-style:none;margin:0;padding:0}
.ole-location-cards__boxes li{background:white;border-radius:999px;padding:.4rem .9rem;font-size:.95rem}
.ole-location-cards__boxes p,.ole-location-cards__contact{font-size:1rem;line-height:1.6}
.ole-location-cards__phone{display:block;margin:0 0 1.25rem;color:inherit;font-weight:600}
.ole-location-cards footer{margin-top:auto;width:100%}
/* Informatie aanvragen in dezelfde warme kaartstijl. */
form.informatie-aanvraag-form{box-sizing:border-box;max-width:1000px;margin:2rem auto;padding:clamp(1.25rem,4vw,3rem);background:#fffaf2;border:1px solid #eadfce;border-radius:26px;box-shadow:0 16px 48px #273b3310;color:#273b33}
form.informatie-aanvraag-form h3{font-size:32px;line-height:1.25;color:#273b33;margin:0 0 1.2rem}
form.informatie-aanvraag-form .informatie-aanvraag-row{margin:0 0 1.2rem;min-width:0}
form.informatie-aanvraag-form .informatie-aanvraag-row p{margin:0 0 1rem;font-size:17px;line-height:1.7}
form.informatie-aanvraag-form .informatie-aanvraag-row ul{margin:1rem 0 1.6rem;padding:1rem 1.3rem;background:#f0eee4;border-radius:12px;list-style:none;font-size:15px;line-height:1.6}
form.informatie-aanvraag-form .informatie-aanvraag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}
form.informatie-aanvraag-form .informatie-aanvraag-col-50,form.informatie-aanvraag-form .informatie-aanvraag-col-100{width:100%;float:none;max-width:100%}
form.informatie-aanvraag-form label{display:block;font-size:15px;font-weight:600;line-height:1.5;margin-bottom:.5rem}
form.informatie-aanvraag-form label+br{display:none}
form.informatie-aanvraag-form input:not([type=hidden]),form.informatie-aanvraag-form select,form.informatie-aanvraag-form textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:50px;padding:.8rem 1rem;border:1px solid #dfd5c5;border-radius:10px;background:#fff;color:#273b33;font:16px/1.5 system-ui,sans-serif}
form.informatie-aanvraag-form textarea{min-height:155px;resize:vertical}
form.informatie-aanvraag-form :is(input,select,textarea):focus{outline:2px solid #a34824;outline-offset:2px;border-color:#a34824}
form.informatie-aanvraag-form button[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.85rem 1.8rem;border:1px solid #a34824;border-radius:999px;background:#a34824;color:#fff;font:700 16px/1.4 system-ui,sans-serif;cursor:pointer}
form.informatie-aanvraag-form button[type=submit]:hover{background:#873a1d}
form.informatie-aanvraag-form button[type=submit]:focus-visible{outline:3px solid #273b33;outline-offset:4px}
@media(max-width:767px){form.informatie-aanvraag-form{margin:1rem 0;border-radius:18px}form.informatie-aanvraag-form .informatie-aanvraag-grid{grid-template-columns:1fr;gap:0}form.informatie-aanvraag-form h3{font-size:28px}form.informatie-aanvraag-form button[type=submit]{width:100%}}
form.informatie-aanvraag-form input:not([type=hidden]),form.informatie-aanvraag-form textarea{border-radius:10px!important}
/* Checkoutkoppen passen binnen de kolom zonder losse letters. */
.ole-ticket-order-flow form.checkout :is(h2,h3),.ole-ticket-order-flow #order_review_heading{font-size:28px!important;line-height:1.3!important;letter-spacing:normal;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
@media(max-width:767px){.ole-ticket-order-flow form.checkout :is(h2,h3),.ole-ticket-order-flow #order_review_heading{font-size:24px!important}}

/* Valutasymbool en bedrag blijven samen. */
:is(.ole-participant,.ole-ticket,.ole-workshop-agenda,.ole-ticket-order-flow,.ole-shop-cart) .woocommerce-Price-amount{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.ole-participant__moment .woocommerce-Price-currencySymbol{display:inline}
/* Bestelbevestiging als warme, overzichtelijke kaart. */
.ole-order-confirmation .woocommerce-order{box-sizing:border-box;max-width:1000px;margin:2rem auto;padding:clamp(1.25rem,4vw,3rem);border:1px solid #eadfce;border-radius:26px;background:#fffaf2;box-shadow:0 16px 48px #273b3310;color:#273b33}
.ole-order-confirmation .woocommerce-thankyou-order-received{background:#e8eee5;border:1px solid #d4dfcf;border-radius:14px;padding:1.2rem 1.4rem;font-size:20px;font-weight:600;line-height:1.5;margin:0 0 1.75rem}
.ole-order-confirmation ul.woocommerce-order-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1rem;padding:0;margin:0 0 2rem;list-style:none}
.ole-order-confirmation ul.woocommerce-order-overview:before,.ole-order-confirmation ul.woocommerce-order-overview:after{display:none}
.ole-order-confirmation ul.woocommerce-order-overview li{box-sizing:border-box;float:none;width:auto;margin:0;border:1px solid #eadfce;padding:1rem;background:white;border-radius:12px;font-size:12px;line-height:1.6;min-width:0;overflow-wrap:anywhere}
.ole-order-confirmation ul.woocommerce-order-overview li strong{display:block;font-size:16px;line-height:1.5;margin-top:.35rem;text-transform:none}
.ole-order-confirmation .woocommerce-order :is(h2,h3){font-size:26px!important;line-height:1.3;word-break:normal;overflow-wrap:normal;color:#273b33;margin:0 0 1.25rem}
.ole-order-confirmation .woocommerce-order-details,.ole-order-confirmation .woocommerce-customer-details{box-sizing:border-box;background:white;border:1px solid #eadfce;border-radius:16px;padding:clamp(1rem,3vw,1.75rem);margin:0 0 1.5rem}
.ole-order-confirmation table.woocommerce-table--order-details{width:100%;border:0;background:transparent;margin:0;border-collapse:collapse}
.ole-order-confirmation table.woocommerce-table--order-details :is(th,td){padding:1rem .5rem;border:0;border-bottom:1px solid #eadfce;vertical-align:top;font-size:16px;line-height:1.65}
.ole-order-confirmation table.woocommerce-table--order-details thead{background:#f6f3ed}
.ole-order-confirmation table.woocommerce-table--order-details .product-total{width:25%;text-align:right}
.ole-order-confirmation table.woocommerce-table--order-details tfoot td{text-align:right}
.ole-order-confirmation table.woocommerce-table--order-details tfoot tr:last-child :is(th,td){border-bottom:0;background:#f6f3ed;font-weight:700}
.ole-order-confirmation .wc-item-meta{list-style:none;margin:.75rem 0 0;padding:0;font-size:14px;line-height:1.65}
.ole-order-confirmation .wc-item-meta li{margin:.25rem 0}
.ole-order-confirmation .woocommerce-Price-amount{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.ole-order-confirmation .woocommerce-customer-details address{box-sizing:border-box;border:0!important;background:#f6f3ed;border-radius:12px;padding:1rem!important;font-style:normal;line-height:1.7;overflow-wrap:anywhere}
@media(max-width:767px){.ole-order-confirmation .woocommerce-order{margin:1rem 0;border-radius:18px}.ole-order-confirmation ul.woocommerce-order-overview{grid-template-columns:1fr;gap:.6rem}.ole-order-confirmation .woocommerce-order :is(h2,h3){font-size:23px!important}.ole-order-confirmation table.woocommerce-table--order-details :is(th,td){font-size:14px;padding:.8rem .35rem}.ole-order-confirmation .woocommerce-thankyou-order-received{font-size:18px}}

@media(max-width:700px){.ole-workshop-slider__header h2{font-size:28px}}

.ole-availability{display:block;color:#a34824!important;font-size:15px!important;font-weight:700!important;line-height:1.5;margin:.6rem 0}
.ole-shop-slider__object-label{position:absolute;left:10px;bottom:10px;z-index:2;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:12px;background:rgba(255,250,242,.94);box-shadow:0 2px 10px rgba(39,59,51,.14);color:var(--ole-ink)}
.ole-shop-slider__object-label strong{font:800 12px/1 system-ui,sans-serif;letter-spacing:.04em}
.ole-shop-slider__object-label img{display:block;width:52px;height:52px;background:#fff;border-radius:6px}
