.twaaq-layering-selector,.twaaq-fixed-set-note,.twaaq-mini-layer{border:1px solid #ded6ca;background:#fbf8f3;padding:18px;margin:18px 0}.twaaq-layering-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin-top:14px}.twaaq-layering-option{position:relative;border:1px solid #ddd;background:#fff;padding:10px;cursor:pointer;display:flex;flex-direction:column;gap:5px}.twaaq-layering-option:has(input:checked){border-color:#8a6a38;box-shadow:0 0 0 2px rgba(138,106,56,.15)}.twaaq-layering-option img{width:100%;height:auto}.twaaq-layering-name{font-weight:600}.twaaq-layering-saving{color:#177245;font-weight:700}.twaaq-layering-badge,.twaaq-layering-loop-badge{background:#8a6a38;color:#fff;font-size:12px;padding:3px 7px}.twaaq-layering-loop-badge{position:absolute;z-index:2;inset-inline-start:10px;top:10px}.twaaq-layering-skip{display:block;margin:10px 0}.twaaq-mini-layer select{max-width:100%;margin:6px 0}.twaaq-layering-landing>ol{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0;counter-reset:layering}.twaaq-layering-landing>ol li{list-style:none;border:1px solid #ded6ca;padding:18px}.twaaq-layering-total-saving{font-weight:700}@media(max-width:767px){.twaaq-layering-landing>ol{grid-template-columns:1fr}.twaaq-layering-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Side cart (v0.2) ---------- */
.twaaq-ml-li{list-style:none;padding:0!important;margin:0!important;border:0!important;display:block!important}
.twaaq-ml-li::before,.twaaq-ml-li::after{display:none!important}
.twaaq-ml{padding:16px 0 12px;margin:4px 0 8px;border-top:1px solid #eee}
.twaaq-ml.is-loading{opacity:.55;pointer-events:none}
.twaaq-ml-head{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}
.twaaq-ml-title{font-size:17px;font-weight:700;color:#111;line-height:1.3}
.twaaq-ml-sub{font-size:13px;color:#666;line-height:1.5}
.twaaq-ml-sub .amount{color:#8a6a38;font-weight:700}
.twaaq-ml-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.twaaq-ml-track::-webkit-scrollbar{height:4px}
.twaaq-ml-track::-webkit-scrollbar-thumb{background:#d8cfc2;border-radius:4px}
.twaaq-ml-card{flex:0 0 132px;scroll-snap-align:start;display:flex;flex-direction:column;gap:4px;text-align:start}
.twaaq-ml-img{position:relative;background:#f4f1ec;aspect-ratio:1/1;overflow:hidden}
.twaaq-ml-img img{width:100%!important;height:100%!important;object-fit:cover;display:block;margin:0!important;max-width:none!important}
.twaaq-ml-card.is-top .twaaq-ml-img{outline:2px solid #8a6a38;outline-offset:-2px}
.twaaq-ml-badge{position:absolute;inset-inline-start:0;top:0;background:#8a6a38;color:#fff;font-size:10px;font-weight:700;padding:3px 6px;line-height:1.3}
.twaaq-ml-name{font-size:13px;font-weight:600;color:#111;line-height:1.35;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px}
.twaaq-ml-price{font-size:13px;display:flex;flex-wrap:wrap;gap:4px;align-items:baseline}
.twaaq-ml-price del{color:#999;font-size:12px}
.twaaq-ml-price ins{text-decoration:none;color:#c0392b;font-weight:700}
.twaaq-ml-save{font-size:11px;color:#177245;font-weight:600}
.twaaq-mini-add{margin-top:4px!important;width:100%;min-height:34px;padding:6px 8px!important;background:#111!important;color:#fff!important;border:0!important;border-radius:0!important;font-size:12px!important;font-weight:700!important;text-transform:uppercase;cursor:pointer;line-height:1.2}
.twaaq-mini-add:hover{background:#8a6a38!important}
.twaaq-mini-add:disabled{opacity:.6}
.twaaq-mini-add-edp{margin-top:4px!important;width:100%;min-height:34px;padding:6px 8px!important;background:#111!important;color:#fff!important;border:0!important;border-radius:0!important;font-size:12px!important;font-weight:700!important;text-transform:uppercase;cursor:pointer;line-height:1.2}
.twaaq-mini-add-edp:hover{background:#8a6a38!important}
.twaaq-mini-add-edp:disabled{opacity:.6}
.twaaq-layering-preorder{display:block;background:#fff3cd;color:#6b5200;font-size:12px;font-weight:700;padding:5px 7px;margin-top:4px}
.twaaq-preorder-notice{margin:10px 0!important}
.twaaq-ml-total-saving{margin:0 0 10px!important;padding:8px 10px;background:#eef7f1;color:#177245;font-weight:700;font-size:13px;text-align:center}
ins.twaaq-price-now{text-decoration:none;font-weight:700}
.woocommerce-mini-cart-item del .amount,.cart_item del .amount{color:#999;font-weight:400}

/* ---------- v0.2.1 ---------- */
/* Woodmart's form.cart is a flex container: stop the selector from stretching (empty space under the options). */
form.cart .twaaq-layering-selector,.twaaq-layering-selector{flex:0 0 100%;width:100%;max-width:100%;align-self:flex-start;height:auto!important;min-height:0!important;box-sizing:border-box}
.twaaq-layering-options{align-content:start;align-items:stretch}
/* Highlighted AOS card */
.twaaq-layering-option.is-highlighted{border:2px solid #8a6a38;background:#fffaf1;padding:9px}
.twaaq-layering-option .twaaq-layering-badge{position:absolute;top:34px;inset-inline-start:10px;z-index:2;font-weight:700;letter-spacing:.2px}
.twaaq-layering-option.is-highlighted .twaaq-layering-name{color:#8a6a38}
.twaaq-ml-card.is-top .twaaq-ml-name{color:#8a6a38}

/* ---------- v0.2.2 ---------- */
.twaaq-ml{padding:16px 15px 12px}
/* Theme pins form.cart to the bottom on mobile; with the layering selector inside it the bar covers the whole screen. */
@media (max-width:790px){
body.twaaq-layering-pdp form.cart{position:static!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;transform:none!important;max-height:none!important;overflow:visible!important;box-shadow:none!important;z-index:auto!important;width:100%!important}
}

/* ---------- v0.2.4: side-cart slider (peek + edge fade) ---------- */
.twaaq-ml-slider{position:relative}
/* ~2.3 cards visible so the next card peeks in */
.twaaq-ml-card{flex:0 0 calc((100% - 20px) / 2.3);min-width:110px}
/* soft fade on the side that still has cards */
.twaaq-ml-slider::after{content:"";position:absolute;top:0;bottom:6px;inset-inline-end:0;width:28px;pointer-events:none;background:linear-gradient(to left,#fff,rgba(255,255,255,0));opacity:0;transition:opacity .2s}
.rtl .twaaq-ml-slider::after,[dir="rtl"] .twaaq-ml-slider::after{background:linear-gradient(to right,#fff,rgba(255,255,255,0))}
.twaaq-ml-slider.can-next::after{opacity:1}
.twaaq-ml-track{scroll-behavior:smooth}

/* ---------- v0.2.9: PDP placement ----------
   Title → price → short description → Layering selector + qty + Add to cart → Key Highlights and the rest.
   CSS-only (no DOM moves / no JS), so it is not affected by the speed optimizer's JS delay and causes no layout jump.
   Scoped with :has() to pages where the selector is actually rendered; other products keep the theme order. */
.summary-inner:has(form.cart .twaaq-layering-selector){display:flex!important;flex-direction:column}
.summary-inner:has(form.cart .twaaq-layering-selector)>*{order:50}
.summary-inner:has(form.cart .twaaq-layering-selector) .custom-product-details{display:contents}
.summary-inner:has(form.cart .twaaq-layering-selector) .custom-product-details>*{order:60}
.summary-inner:has(form.cart .twaaq-layering-selector)>.product_title{order:1}
.summary-inner:has(form.cart .twaaq-layering-selector)>.woocommerce-product-rating{order:2}
.summary-inner:has(form.cart .twaaq-layering-selector)>.price{order:3}
.summary-inner:has(form.cart .twaaq-layering-selector) .custom-product-details>.short_descriptions{order:4}
.summary-inner:has(form.cart .twaaq-layering-selector)>.stock{order:5}
.summary-inner:has(form.cart .twaaq-layering-selector)>form.cart{order:6}
.summary-inner:has(form.cart .twaaq-layering-selector)>.wd-wishlist-btn,
.summary-inner:has(form.cart .twaaq-layering-selector)>.wd-compare-btn{order:7}
.summary-inner:has(form.cart .twaaq-layering-selector)>.product_meta{order:90}
.summary-inner:has(form.cart .twaaq-layering-selector) form.cart .twaaq-layering-selector{margin-top:8px}
.summary-inner:has(form.cart .twaaq-layering-selector)>.wd-wishlist-btn{margin-bottom:24px}

/* ---------- v0.3.0: complete-the-layer pop-up ---------- */
html.twaaq-lp-open{overflow:hidden}
.twaaq-lp-overlay{position:fixed;inset:0;z-index:999999;background:rgba(17,17,17,.55);display:flex;align-items:center;justify-content:center;padding:16px;animation:twaaqLpFade .2s ease}
@keyframes twaaqLpFade{from{opacity:0}to{opacity:1}}
.twaaq-lp{position:relative;background:#fff;width:100%;max-width:760px;max-height:calc(100vh - 32px);overflow-y:auto;padding:28px 24px 20px;box-shadow:0 20px 60px rgba(0,0,0,.25);text-align:start}
.twaaq-lp.is-loading{pointer-events:none}
.twaaq-lp.is-loading .twaaq-lp-grid{opacity:.55}
.twaaq-lp-close{position:absolute;top:8px;inset-inline-end:10px;width:36px;height:36px;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;color:#111!important;font-size:28px!important;line-height:1!important;cursor:pointer;box-shadow:none!important}
.twaaq-lp-head{text-align:center;margin:0 24px 18px}
.twaaq-lp-kicker{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#8a6a38;margin-bottom:6px}
.twaaq-lp-title{font-size:22px;line-height:1.45;margin:0 0 8px;color:#111}
.twaaq-lp-sub{margin:0;color:#555;font-size:14px}
.twaaq-lp-sub .amount{color:#8a6a38;font-weight:700}
.twaaq-lp-done{margin:10px 0 0;padding:8px 10px;background:#eef7f1;color:#177245;font-weight:700}
.twaaq-lp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.twaaq-lp-card{display:flex;flex-direction:column;gap:4px;border:1px solid #eee;padding:8px}
.twaaq-lp-card.is-top{border-color:#8a6a38}
.twaaq-lp-img{position:relative;background:#f4f1ec;aspect-ratio:1/1;overflow:hidden}
.twaaq-lp-img img{width:100%!important;height:100%!important;object-fit:cover;display:block;margin:0!important;max-width:none!important}
.twaaq-lp-badge{position:absolute;inset-inline-start:0;top:0;background:#8a6a38;color:#fff;font-size:10px;font-weight:700;padding:3px 6px}
.twaaq-lp-name{font-size:13px;font-weight:600;color:#111;line-height:1.35;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px}
.twaaq-lp-price{font-size:13px;display:flex;flex-wrap:wrap;gap:4px;align-items:baseline}
.twaaq-lp-price del{color:#999;font-size:12px}
.twaaq-lp-price ins{text-decoration:none;color:#c0392b;font-weight:700}
.twaaq-lp-save{font-size:11px;color:#177245;font-weight:600}
.twaaq-lp-add{margin-top:auto!important;width:100%;min-height:36px;padding:6px 8px!important;background:#111!important;color:#fff!important;border:0!important;border-radius:0!important;font-size:12px!important;font-weight:700!important;cursor:pointer;line-height:1.2}
.twaaq-lp-add:hover,.twaaq-lp-add:focus{background:#8a6a38!important}
.twaaq-lp-skip{display:block;margin:16px auto 0!important;background:transparent!important;border:0!important;color:#666!important;text-decoration:underline;font-size:13px!important;cursor:pointer;box-shadow:none!important;min-height:0!important;padding:6px!important}
@media(max-width:767px){.twaaq-lp{padding:24px 14px 14px}.twaaq-lp-title{font-size:18px}.twaaq-lp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}

/* ---------- v0.3.0: sectioned campaign landing ---------- */
.twaaq-layering-landing.is-sections{margin:0 0 40px}
.twaaq-ll-hero{text-align:center;background:#fbf8f3;border:1px solid #ded6ca;padding:36px 20px;margin-bottom:20px}
.twaaq-ll-kicker{display:block;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#8a6a38;margin-bottom:8px}
.twaaq-ll-hero h1{margin:0 0 12px;font-size:34px}
.twaaq-ll-hero p{max-width:640px;margin:0 auto 18px;font-size:16px;color:#444}
.twaaq-ll-hero .amount{color:#8a6a38;font-weight:700}
.twaaq-ll-cta{display:inline-block;background:#111;color:#fff!important;padding:12px 28px;font-weight:700}
.twaaq-ll-cta:hover{background:#8a6a38}
.twaaq-layering-landing>ol.twaaq-ll-steps{margin:0 0 32px}
.twaaq-ll-steps li{display:flex;align-items:center;gap:12px;background:#fff}
.twaaq-ll-steps strong{flex:0 0 36px;height:36px;border-radius:50%;background:#8a6a38;color:#fff;display:flex;align-items:center;justify-content:center}
.twaaq-ll-steps .amount{font-weight:700}
.twaaq-ll-title{text-align:center;margin:32px 0 18px;scroll-margin-top:120px}
@media(max-width:767px){.twaaq-ll-hero h1{font-size:26px}}

/* ---------- v0.4.0: pairing chooser + combined landing grid ---------- */
.twaaq-lp{max-width:860px;padding:0;background:#fff}
.twaaq-lp-head{text-align:start;margin:0;padding:30px 30px 18px}
.twaaq-lp-kicker,.twaaq-lg-kicker{display:block;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#7a6a55}
.twaaq-lp-title{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-weight:400;font-size:30px;margin:10px 0 6px}
.twaaq-lp-first{display:flex;align-items:center;gap:14px;background:#f4efe8;border-top:1px solid #e6ddd0;border-bottom:1px solid #e6ddd0;padding:12px 30px}
.twaaq-lp-first img{width:56px!important;height:56px!important;object-fit:cover;margin:0!important}
.twaaq-lp-first span{display:block;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#7a6a55}
.twaaq-lp-first strong{font-weight:500;color:#111}
.twaaq-lp .twaaq-lp-grid{padding:20px 30px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.twaaq-lp-opt{position:relative;display:flex!important;flex-direction:column;align-items:stretch;gap:4px;text-align:start!important;background:#fff!important;color:#111!important;border:1px solid #e1d8cc!important;border-radius:0!important;padding:0 0 12px!important;min-height:0!important;height:auto!important;line-height:1.35!important;text-transform:none!important;font-weight:400!important;cursor:pointer;box-shadow:none!important;white-space:normal!important}
.twaaq-lp-opt:hover{border-color:#8a6a38!important}
.twaaq-lp-opt.is-selected{border-color:#111!important;box-shadow:0 0 0 1px #111!important}
.twaaq-lp-opt.is-selected::after{content:"\2713";position:absolute;top:8px;inset-inline-end:8px;width:24px;height:24px;border-radius:50%;background:#111;color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center}
.twaaq-lp-opt.is-top{border-color:#8a6a38!important}
.twaaq-lp-opt .twaaq-lp-img{display:block;background:#f4efe8}
.twaaq-lp-opt .twaaq-lp-name,.twaaq-lp-opt .twaaq-lp-price,.twaaq-lp-opt .twaaq-lp-save,.twaaq-lp-opt .twaaq-layering-preorder{margin-inline:12px}
.twaaq-lp-opt .twaaq-lp-name{font-size:15px;font-weight:500;min-height:0;margin-top:8px}
.twaaq-lp-opt .twaaq-lp-price{display:block;font-size:13px;color:#6b6257}
.twaaq-lp-opt .twaaq-lp-price strong{color:#111}
.twaaq-lp-foot{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-top:1px solid #e6ddd0;padding:14px 30px}
.twaaq-lp-total span{display:block;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#7a6a55}
.twaaq-lp-total strong{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-size:24px;font-weight:400}
.twaaq-lp-confirm{background:#1f1b16!important;color:#fff!important;border:0!important;border-radius:0!important;padding:14px 28px!important;font-weight:600!important;cursor:pointer;min-height:0!important}
.twaaq-lp-confirm:disabled{opacity:.35;cursor:not-allowed}
.twaaq-lp .twaaq-lp-skip{margin:0 auto 18px!important}
.twaaq-lp-done{margin-top:12px}
@media(max-width:767px){.twaaq-lp-head{padding:24px 16px 14px}.twaaq-lp-title{font-size:23px}.twaaq-lp-first{padding:10px 16px}.twaaq-lp .twaaq-lp-grid{padding:14px 16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.twaaq-lp-foot{padding:12px 16px}.twaaq-lp-confirm{padding:13px 16px!important}}

.twaaq-lg{margin:0 0 50px;color:#1f1b16}
.twaaq-lg-hero{display:grid;grid-template-columns:1fr 1fr;background:#f4efe8;min-height:420px}
.twaaq-lg-hero-copy{padding:48px 40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px}
.twaaq-lg-hero h1{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-weight:400;font-size:52px;line-height:1.05;margin:0}
.twaaq-lg-hero h1 span{display:block;color:#8a6a38}
.twaaq-lg-hero p{margin:0;max-width:420px;color:#4a4238;font-size:16px}
.twaaq-lg-price strong{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-size:26px;font-weight:400;color:#111;margin-inline-start:6px}
.twaaq-lg-cta{background:#1f1b16;color:#fff!important;padding:15px 30px;font-weight:600}
.twaaq-lg-cta:hover{background:#8a6a38}
.twaaq-lg-note{font-size:13px!important;color:#8a6a38!important}
.twaaq-lg-hero-media{position:relative;display:flex;align-items:flex-end;justify-content:center;background:#eae1d4;overflow:hidden}
.twaaq-lg-hero-media img{width:50%!important;height:100%!important;object-fit:cover;margin:0!important;max-width:none!important}
.twaaq-lg-hero-tag{position:absolute;bottom:20px;inset-inline-end:20px;background:rgba(255,255,255,.9);padding:6px 12px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase}
.twaaq-lg-strip{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#e9e1d5;padding:16px 40px;font-size:14px}
.twaaq-lg-head{margin:48px 0 20px;scroll-margin-top:120px}
.twaaq-lg-head h2{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-weight:400;font-size:36px;margin:10px 0 6px}
.twaaq-lg-head p{display:flex;justify-content:space-between;gap:10px;color:#6b6257;margin:0 0 18px}
.twaaq-lg-filters{display:flex;flex-wrap:wrap;gap:10px}
.twaaq-lg-filter{background:#fff!important;color:#1f1b16!important;border:1px solid #d8cfc2!important;border-radius:999px!important;padding:10px 20px!important;min-height:0!important;font-weight:500!important;text-transform:none!important;cursor:pointer;box-shadow:none!important}
.twaaq-lg-filter.is-active{background:#1f1b16!important;color:#fff!important;border-color:#1f1b16!important}
.twaaq-lg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}
.twaaq-lg-card{display:flex;flex-direction:column;gap:6px}
.twaaq-lg-img{position:relative;display:block;background:#f4efe8;aspect-ratio:1/1.05;overflow:hidden}
.twaaq-lg-img img{width:100%!important;height:100%!important;object-fit:cover;margin:0!important;transition:transform .4s}
.twaaq-lg-card:hover .twaaq-lg-img img{transform:scale(1.03)}
.twaaq-lg-badge{position:absolute;top:10px;inset-inline-start:10px;background:#fff;color:#1f1b16;font-size:12px;padding:4px 10px}
.twaaq-lg-card.is-unavailable .twaaq-lg-img img{opacity:.55}
.twaaq-lg-card.is-unavailable .twaaq-lg-badge{background:#6b6257;color:#fff}
.twaaq-lg-type{margin-top:10px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#7a6a55}
.twaaq-lg-name{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-size:22px;line-height:1.25;color:#1f1b16!important}
.twaaq-lg-line{font-size:14px;color:#4a4238}
.twaaq-lg-choose{margin-top:8px!important;display:block;width:100%;text-align:center;background:#fff!important;color:#1f1b16!important;border:1px solid #1f1b16!important;border-radius:0!important;padding:12px!important;min-height:0!important;font-weight:500!important;text-transform:none!important;cursor:pointer;box-shadow:none!important}
.twaaq-lg-choose:hover{background:#1f1b16!important;color:#fff!important}
.twaaq-lg-choose.is-loading,.twaaq-lg-choose.loading{opacity:.6;pointer-events:none}
.twaaq-lg-choose:disabled{border-color:#d8cfc2!important;color:#9a9086!important;background:#f7f4ef!important;cursor:not-allowed}
.twaaq-lg-card .added_to_cart{display:block;text-align:center;margin-top:6px;font-size:13px}
.twaaq-lg-foot{margin-top:40px;text-align:center;color:#6b6257;font-size:13px}
@media(max-width:1024px){.twaaq-lg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){.twaaq-lg-hero{grid-template-columns:1fr}.twaaq-lg-hero-copy{padding:32px 20px}.twaaq-lg-hero h1{font-size:40px}.twaaq-lg-hero-media{min-height:280px}.twaaq-lg-strip{padding:14px 20px}.twaaq-lg-head h2{font-size:28px}.twaaq-lg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 10px}.twaaq-lg-name{font-size:18px}.twaaq-lg-filter{padding:8px 14px!important}}

/* ---------- v0.4.2: brand font (same as twaaq.com, Arabic and English) ---------- */
.twaaq-lg,.twaaq-lp,.twaaq-lg button,.twaaq-lp button{font-family:var(--wd-text-font,"Almarai",Arial,sans-serif)}
.twaaq-lg h1,.twaaq-lg h2,.twaaq-lg-name,.twaaq-lp-title,.twaaq-lp-total strong,.twaaq-lg-price strong{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif)}

/* ---------- v0.4.3: campaign hero banner ---------- */
/* The bottles sit on the right of every artwork, so the copy uses the empty left side (physical, both languages). */
.twaaq-hero{position:relative;display:block;overflow:hidden;color:#1f1b16!important;text-decoration:none!important;font-family:var(--wd-text-font,"Almarai",Arial,sans-serif);background:#f4efe8}
.twaaq-hero-media,.twaaq-hero-media img{display:block;width:100%!important;height:auto!important;max-width:none!important;margin:0!important}
.twaaq-hero-copy{position:absolute;top:50%;left:5%;right:auto;transform:translateY(-50%);width:40%;display:flex;flex-direction:column;align-items:flex-start;gap:14px;text-align:start}
/* In RTL, flex-start and text-align:start already resolve to the right edge. */
.twaaq-hero-kicker{font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#7a6a55}
.twaaq-hero-title{font-family:var(--wd-title-font,"Almarai",Arial,sans-serif);font-size:clamp(26px,3.2vw,48px);line-height:1.2;font-weight:700;color:#1f1b16}
.twaaq-hero-sub{font-size:clamp(14px,1.2vw,18px);color:#3d362e}
.twaaq-hero-sub .amount{font-weight:700;color:#1f1b16}
.twaaq-hero-cta{display:inline-block;margin-top:6px;background:#1f1b16;color:#fff;padding:15px 34px;font-size:16px;font-weight:700;transition:background .2s}
.twaaq-hero:hover .twaaq-hero-cta,.twaaq-hero:focus-visible .twaaq-hero-cta{background:#8a6a38}
.twaaq-hero:focus-visible{outline:3px solid #8a6a38;outline-offset:-3px}
@media(max-width:1024px){.twaaq-hero-copy{width:46%;gap:10px}.twaaq-hero-cta{padding:12px 24px;font-size:15px}}
@media(max-width:767px){
.twaaq-hero-copy{position:static;transform:none;width:auto;padding:20px 16px 24px;align-items:center!important;text-align:center!important;gap:8px}
.twaaq-hero-title{font-size:24px}
.twaaq-hero-cta{width:100%;max-width:340px;text-align:center;padding:14px 20px}
}

/* v0.4.4: RTL hero – every line (kicker, title, price, CTA) sits on the right edge of the copy block. */
.rtl .twaaq-hero-copy,[dir="rtl"] .twaaq-hero-copy{direction:rtl;align-items:flex-start;text-align:right}
.twaaq-hero-sub{unicode-bidi:plaintext}
@media(max-width:767px){.rtl .twaaq-hero-copy,[dir="rtl"] .twaaq-hero-copy{align-items:center;text-align:center}}

/* ---------- v0.5.0: Layering landing hero carousel ---------- */
.twaaq-lg-hero.twaaq-carousel{position:relative;display:block;min-height:0;overflow:hidden;background:#f4efe8}
.twaaq-carousel-track{position:relative;aspect-ratio:1672/941;overflow:hidden}
.twaaq-carousel-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility 0s linear .8s}
.twaaq-carousel-slide.is-active{opacity:1;visibility:visible;transition:opacity .8s ease}
.twaaq-carousel-slide picture,.twaaq-carousel-slide img{display:block;width:100%!important;height:100%!important;max-width:none!important;margin:0!important;object-fit:cover}
/* Copy sits on the empty left side of every visual (bottles are on the right), in both languages. */
.twaaq-carousel .twaaq-hero-copy{position:absolute;top:50%;left:5%;right:auto;transform:translateY(-50%);width:40%;padding:0;z-index:2;gap:12px}
.twaaq-carousel .twaaq-lg-hero-copy h1{font-size:clamp(34px,4vw,56px)}
.twaaq-carousel .twaaq-lg-hero-copy p{max-width:none}
.twaaq-carousel-arrow{position:absolute;top:50%;z-index:3;transform:translateY(-50%);width:44px;height:44px;min-height:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.85)!important;color:#1f1b16!important;font-size:28px!important;line-height:44px!important;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.12)!important;transition:background .2s}
.twaaq-carousel-arrow:hover,.twaaq-carousel-arrow:focus-visible{background:#fff!important}
.twaaq-carousel-arrow:focus-visible,.twaaq-carousel-dot:focus-visible{outline:2px solid #1f1b16;outline-offset:2px}
.twaaq-carousel-arrow.is-prev{left:14px}
.twaaq-carousel-arrow.is-next{right:14px}
.twaaq-carousel-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:8px}
.twaaq-carousel-dot{width:10px;height:10px;min-height:0!important;padding:0!important;border:1px solid #1f1b16!important;border-radius:50%!important;background:rgba(255,255,255,.7)!important;cursor:pointer;box-shadow:none!important;transition:width .25s,background .25s}
.twaaq-carousel-dot.is-active{width:26px;border-radius:6px!important;background:#1f1b16!important}
@media(max-width:1024px){.twaaq-carousel .twaaq-hero-copy{width:46%;gap:8px}.twaaq-carousel .twaaq-lg-hero-copy p{font-size:14px}}
@media(max-width:767px){
.twaaq-lg-hero.twaaq-carousel{display:flex;flex-direction:column}
.twaaq-carousel-track{order:1;aspect-ratio:4/3}
.twaaq-carousel-dots{order:2;position:static;transform:none;justify-content:center;padding:14px 0 0}
.twaaq-carousel .twaaq-hero-copy{order:3;position:static;transform:none;width:auto;padding:16px 16px 26px;align-items:center!important;text-align:center!important}
.twaaq-carousel .twaaq-lg-hero-copy h1{font-size:36px}
.twaaq-carousel-arrow{display:none}
}
@media(prefers-reduced-motion:reduce){.twaaq-carousel-slide,.twaaq-carousel-slide.is-active{transition:none}}

/* v0.5.1: pin arrow sides (theme button styles override left/right); mirrored for RTL. */
.twaaq-carousel .twaaq-carousel-arrow.is-prev{left:14px!important;right:auto!important}
.twaaq-carousel .twaaq-carousel-arrow.is-next{right:14px!important;left:auto!important}
.rtl .twaaq-carousel .twaaq-carousel-arrow.is-prev,[dir="rtl"] .twaaq-carousel .twaaq-carousel-arrow.is-prev{right:14px!important;left:auto!important}
.rtl .twaaq-carousel .twaaq-carousel-arrow.is-next,[dir="rtl"] .twaaq-carousel .twaaq-carousel-arrow.is-next{left:14px!important;right:auto!important}
/* RTL: the ‹ › glyphs are bidi-mirrored by the browser, so no extra flip. */
.rtl .twaaq-carousel .twaaq-lg-hero-copy h1,[dir="rtl"] .twaaq-carousel .twaaq-lg-hero-copy h1{text-align:right}
@media(max-width:767px){.rtl .twaaq-carousel .twaaq-lg-hero-copy h1,[dir="rtl"] .twaaq-carousel .twaaq-lg-hero-copy h1{text-align:center}}
.twaaq-carousel .twaaq-carousel-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important}
.twaaq-carousel .twaaq-carousel-dots{position:absolute!important}
@media(max-width:767px){.twaaq-carousel .twaaq-carousel-dots{position:static!important}}
/* v0.5.4: theme button styles stretch the dots; fix sizes. Mobile arrows sit on the image (4:3), not the copy. */
.twaaq-carousel .twaaq-carousel-dot{width:10px!important;height:10px!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;line-height:0!important;font-size:0!important}
.twaaq-carousel .twaaq-carousel-dot.is-active{width:26px!important}
@media(max-width:767px){.twaaq-carousel .twaaq-carousel-arrow{display:flex!important;align-items:center;justify-content:center;top:calc((100vw - 30px) * .375)!important;width:36px!important;height:36px!important;font-size:22px!important;line-height:36px!important}}
/* v0.5.5: dots keep the site-wide 35px touch target; the visible dot is drawn inside. */
.twaaq-lg .twaaq-carousel .twaaq-carousel-dots{gap:2px}
.twaaq-lg .twaaq-carousel .twaaq-carousel-dot,.twaaq-lg .twaaq-carousel .twaaq-carousel-dot.is-active{width:32px!important;height:35px!important;min-height:35px!important;background:transparent!important;border:0!important;border-radius:0!important;display:inline-flex!important;align-items:center;justify-content:center}
.twaaq-carousel-dot::before{content:"";display:block;width:10px;height:10px;border-radius:50%;border:1px solid #1f1b16;background:rgba(255,255,255,.8);box-sizing:border-box;transition:width .25s,background .25s}
.twaaq-carousel-dot.is-active::before{width:24px;border-radius:6px;background:#1f1b16}
.twaaq-lg .twaaq-carousel .twaaq-carousel-dots{bottom:6px}
/* v0.5.7: arrow glyphs are chosen per language server-side; stop the browser from bidi-mirroring them. */
.twaaq-carousel-arrow span{direction:ltr;unicode-bidi:isolate;display:inline-block}
/* v0.5.8: mobile hero headline on one line, sized to the screen. */
@media(max-width:767px){.twaaq-lg .twaaq-carousel .twaaq-lg-hero-copy h1{font-size:clamp(22px,7.6vw,30px)!important;line-height:1.2;white-space:nowrap}.twaaq-lg .twaaq-carousel .twaaq-lg-hero-copy h1 span{display:inline!important}}

/* v0.6.1: pulsing "Offer" badge on the Layering menu link (all markets, desktop + mobile menus) */
.twaaq-menu-offer{display:inline-block;margin-inline-start:6px;padding:3px 7px;border-radius:10px;background:#c8102e;color:#fff!important;font-size:10px;font-weight:700;line-height:1;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;white-space:nowrap;box-shadow:0 0 0 0 rgba(200,16,46,.55);animation:twaaq-offer-pulse 1.4s ease-in-out infinite}
@keyframes twaaq-offer-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(200,16,46,.55)}50%{opacity:.45;box-shadow:0 0 0 5px rgba(200,16,46,0)}}
@media(prefers-reduced-motion:reduce){.twaaq-menu-offer{animation:none}}

/* ---------- v0.7.0: cart-first journey — landing builder, full-cart prompt, curated bundles ---------- */
.twaaq-cart-pairing{clear:both;margin:24px 0;padding:18px;border:1px solid #ded6ca;background:#fbf8f3}
.twaaq-cart-pairing .twaaq-ml{padding-inline:0}
.twaaq-layering-builder{margin:8px 0 24px}
/* The theme lays fieldsets out as flex rows and hides legends: restore a normal block with a visible step title. */
.twaaq-layering-builder .twaaq-builder-step{display:block!important;border:0;padding:0;margin:0 0 28px;min-width:0;width:100%}
.twaaq-layering-builder .twaaq-builder-step legend{display:block!important;width:100%;font-size:20px;font-weight:700;margin-bottom:14px;padding:0;border:0}
.twaaq-builder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;width:100%}
.twaaq-builder-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid #ded6ca;background:#fff;cursor:pointer;margin:0}
.twaaq-builder-card:has(input:checked){border-color:#8a6a38;box-shadow:0 0 0 2px rgba(138,106,56,.18)}
.twaaq-builder-card:has(input:focus-visible){outline:2px solid #8a6a38;outline-offset:2px}
.twaaq-builder-card input{position:absolute;top:10px;inset-inline-start:10px;z-index:2}
.twaaq-builder-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.twaaq-builder-card small{color:#8a6a38;font-weight:700}
.twaaq-builder-summary{min-height:26px;margin:8px 0 14px;color:#177245;font-weight:700;font-variant-numeric:tabular-nums}
.twaaq-builder-submit:disabled{opacity:.45;cursor:not-allowed}
.twaaq-curated-grid{margin-bottom:8px}
.twaaq-curated-price{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.twaaq-curated-price del{color:#6b6257;font-size:14px}
.twaaq-curated-price ins{text-decoration:none;font-weight:700}
.twaaq-curated-card .twaaq-layering-saving{font-size:14px}
#twaaq-curated{scroll-margin-top:120px}
@media(max-width:767px){.twaaq-builder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.twaaq-builder-card{padding:8px}.twaaq-cart-pairing{padding:14px}}

/* ---------- v0.7.1: half-height Lilac hero and selected-pairing banner ---------- */
/* The hero is about half as tall as the carousel was. The visual is shown whole (never cropped) on the
   side where the bottles are; a blurred copy of it fills the rest, so the copy keeps its empty side. */
.twaaq-lg-hero--half .twaaq-carousel-track{aspect-ratio:auto!important;height:clamp(300px,27vw,350px)}
.twaaq-lg-hero--half .twaaq-carousel-slide{overflow:hidden}
.twaaq-lg-hero--half .twaaq-hero-backdrop{position:absolute;inset:-40px;background-size:cover;background-position:center;filter:blur(26px);transform:scale(1.15)}
.twaaq-lg-hero--half .twaaq-carousel-slide picture{position:absolute;top:0;bottom:0;right:0;left:auto;height:100%!important;width:auto!important;aspect-ratio:1672/941;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24%);mask-image:linear-gradient(to right,transparent 0,#000 24%)}
.twaaq-lg-hero--half .twaaq-carousel-slide picture img{object-fit:cover!important}
.twaaq-lg-hero--half .twaaq-hero-copy{gap:8px!important;width:46%}
.twaaq-lg-hero--half .twaaq-lg-hero-copy h1{font-size:clamp(28px,3.1vw,40px)!important;line-height:1.1}
.twaaq-lg-hero--half .twaaq-lg-hero-copy h1 span{display:inline!important}
.twaaq-lg-hero--half .twaaq-lg-hero-copy p{font-size:14px;line-height:1.5}
.twaaq-lg-hero--half .twaaq-lg-note{font-size:12px!important}
@media(max-width:767px){
  .twaaq-lg-hero--half .twaaq-carousel-track{height:auto;aspect-ratio:8/3!important}
  .twaaq-lg-hero--half .twaaq-carousel-slide picture{left:50%;right:auto;transform:translateX(-50%);aspect-ratio:4/3;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 18%,#000 82%,transparent 100%)}
  .twaaq-lg-hero--half .twaaq-hero-copy{width:auto;padding:14px 16px 20px!important}
}
/* Selected-pairing banner: the creative carries its own copy, so it is scaled (not cropped) to about half height. */
.twaaq-sp{margin:40px auto 8px;max-width:640px;scroll-margin-top:120px}
.twaaq-sp-form{margin:0}
.twaaq-sp .twaaq-sp-button{display:block;width:100%;padding:0!important;margin:0;border:0!important;background:none!important;min-height:0!important;line-height:0;cursor:pointer;box-shadow:none!important;border-radius:0!important}
.twaaq-sp .twaaq-sp-button img{display:block;width:100%!important;height:auto!important;max-width:none!important;margin:0!important}
.twaaq-sp .twaaq-sp-button:focus-visible{outline:2px solid #1f1b16;outline-offset:3px}

/* ---------- v0.7.2 ---------- */
.twaaq-lg-strip.is-single{justify-content:center;text-align:center}
.twaaq-layering-builder.is-loading,.twaaq-sp-form.is-loading{opacity:.6;pointer-events:none}
.twaaq-builder-added a{text-decoration:underline;color:inherit}
.twaaq-lg-hero--half .twaaq-lg-hero-copy p:not(.twaaq-lg-price){font-size:clamp(16px,1.7vw,21px);line-height:1.4;color:#2b2622}

/* ---------- v0.7.3: add-to-cart button in the site's primary button style ---------- */
.twaaq-layering-builder .twaaq-builder-submit{background:#1f1b16!important;color:#fff!important;border:0!important;border-radius:0!important;padding:16px 34px!important;font-size:16px!important;font-weight:700!important;letter-spacing:.02em;min-height:52px;text-transform:none!important}
.twaaq-layering-builder .twaaq-builder-submit:hover:not(:disabled),.twaaq-layering-builder .twaaq-builder-submit:focus-visible{background:#8a6a38!important;color:#fff!important}
.twaaq-layering-builder .twaaq-builder-submit:disabled{background:#1f1b16!important;color:#fff!important;opacity:.35}
@media(max-width:767px){.twaaq-layering-builder .twaaq-builder-submit{display:block;width:100%}}
