/* takeNplace 2026 site skin, loaded on every front-end page by the Code Snippet "Homepage 2026: assets, geo route, hero preload".
   Two jobs, both keyed to the 2026 design tokens (purple #643385, teal #64C2CF, ink #2B2530, muted #5F5666,
   ground #FAF8F5, hairline #D9CBE6, Roboto body, Cormorant Garamond display):
   1. Popup 1600 ("€10 gift from us"): v3 Elementor popup, restyled here because the v4 tools cannot edit it.
   2. WooCommerce shop archive (/shop/ and product categories): Astra's default grid dressed as homepage cards.
   Written 27/10/2026. */

/* ------------------------------------------------------------------ 1. Popup 1600 */
#elementor-popup-modal-1600 .dialog-widget-content { background: #FAF8F5; border-radius: 24px; box-shadow: 0 30px 80px rgba(27, 16, 36, .35); overflow: hidden; }
#elementor-popup-modal-1600 .dialog-message { padding: 36px 32px 28px; }
#elementor-popup-modal-1600 .elementor-1600 .e-con { background: transparent !important; }
#elementor-popup-modal-1600 .elementor-heading-title { font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 500 !important; font-size: 42px !important; line-height: 1.1 !important; letter-spacing: -.01em; color: #643385 !important; }
#elementor-popup-modal-1600 .elementor-widget-text-editor { font-family: Roboto, sans-serif; font-weight: 300; font-size: 16px; line-height: 1.5; color: #5F5666; }
#elementor-popup-modal-1600 .elementor-field-group label { font-family: Roboto, sans-serif; font-weight: 500; font-size: 13px; letter-spacing: .02em; color: #2B2530; margin-bottom: 6px; }
#elementor-popup-modal-1600 .elementor-field-group .elementor-field { background: #fff; border: 1px solid #D9CBE6; border-radius: 10px; padding: 12px 14px; font-family: Roboto, sans-serif; font-weight: 400; font-size: 15px; color: #2B2530; box-shadow: none; transition: border-color .2s; }
#elementor-popup-modal-1600 .elementor-field-group .elementor-field:focus { border-color: #643385; outline: none; box-shadow: 0 0 0 3px rgba(100, 51, 133, .12); }
#elementor-popup-modal-1600 .elementor-button { background: #64C2CF !important; color: #1B1024 !important; border: 0 !important; border-radius: 999px !important; padding: 14px 24px !important; font-family: Roboto, sans-serif !important; font-weight: 500 !important; font-size: 16px !important; letter-spacing: 0; box-shadow: 0 8px 20px rgba(100, 194, 207, .35); transition: background .2s, transform .2s; }
#elementor-popup-modal-1600 .elementor-button:hover, #elementor-popup-modal-1600 .elementor-button:focus { background: #4FB3C1 !important; transform: translateY(-1px); }
#elementor-popup-modal-1600 .dialog-close-button { top: 14px; right: 14px; width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 50%; box-shadow: 0 2px 8px rgba(0, 0, 0, .12); color: #643385; opacity: 1; }
#elementor-popup-modal-1600 .dialog-close-button i, #elementor-popup-modal-1600 .dialog-close-button svg { font-size: 16px; width: 16px; height: 16px; fill: #643385; }
@media (max-width: 600px) {
  #elementor-popup-modal-1600 .dialog-message { padding: 28px 20px 22px; }
  #elementor-popup-modal-1600 .elementor-heading-title { font-size: 34px !important; }
}

/* ------------------------------------------------------------------ 2. Shop archive */
body.woocommerce-shop #content, body.tax-product_cat #content, body.tax-product_tag #content { background: #FAF8F5; }
html body.woocommerce-shop #content .ast-container, html body.tax-product_cat #content .ast-container, html body.tax-product_tag #content .ast-container { max-width: 1168px !important; width: 100%; margin: 0 auto !important; padding: 40px 16px 64px !important; box-sizing: border-box; }
html body.woocommerce-shop .ast-archive-description, html body.tax-product_cat .ast-archive-description, html body.tax-product_tag .ast-archive-description { max-width: none !important; padding: 0 !important; margin: 0 0 6px !important; background: transparent !important; }
html body.woocommerce-shop .ast-archive-description .ast-archive-title, html body.tax-product_cat .ast-archive-description .ast-archive-title, html body.tax-product_tag .ast-archive-description .ast-archive-title { font-family: 'Cormorant Garamond', Georgia, serif !important; font-weight: 500 !important; font-size: 44px !important; line-height: 1.1 !important; letter-spacing: -.01em; color: #643385 !important; margin: 0 !important; }
.woocommerce-shop .woocommerce-products-header, .tax-product_cat .woocommerce-products-header { margin: 0; }
.woocommerce-shop .woocommerce-result-count, .woocommerce-shop .woocommerce-ordering, .tax-product_cat .woocommerce-result-count, .tax-product_cat .woocommerce-ordering { font-family: Roboto, sans-serif; font-weight: 300; font-size: 14px; color: #5F5666; margin: 6px 0 26px; }
.woocommerce .woocommerce-ordering select { border: 1px solid #D9CBE6; border-radius: 999px; padding: 8px 36px 8px 14px; background-color: #fff; color: #2B2530; font-family: Roboto, sans-serif; font-weight: 400; font-size: 14px; line-height: 1.3; }
html body.woocommerce ul.products, html body.woocommerce ul.products[class*="columns-"] { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 28px !important; column-gap: 28px !important; row-gap: 28px !important; margin: 0 !important; padding: 0 !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { width: auto !important; max-width: none !important; margin: 0 !important; float: none !important; display: flex; flex-direction: column; background: #fff; border: 1px solid #D9CBE6; border-radius: 14px; padding: 16px; box-shadow: 0 10px 30px rgba(100, 51, 133, .06); transition: transform .25s ease, box-shadow .25s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-2px); box-shadow: 0 18px 40px rgba(100, 51, 133, .12); }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap { position: relative; aspect-ratio: 1 / 1; background: #FAF8F5; border-radius: 10px; overflow: hidden; display: flex; align-items: center; justify-content: center; margin: 0 0 14px; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap a { display: block; width: 100%; height: 100%; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { width: 100%; height: 100%; object-fit: contain; margin: 0; padding: 10px; box-sizing: border-box; }
.woocommerce ul.products li.product .astra-shop-summary-wrap { display: flex; flex-direction: column; gap: 6px; flex: 1; text-align: left; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: Roboto, sans-serif; font-weight: 600; font-size: 17px; line-height: 1.3; color: #2B2530; margin: 0; padding: 0; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a { color: inherit; }
.woocommerce ul.products li.product .price { font-family: Roboto, sans-serif; font-weight: 600; font-size: 18px; color: #643385; margin: 0; }
.woocommerce ul.products li.product .price del { color: #5F5666; font-weight: 300; opacity: 1; margin-right: 6px; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .star-rating { margin: 0; }
.woocommerce ul.products li.product .button, .woocommerce ul.products li.product .ast-on-card-button { align-self: flex-start; margin: 10px 0 0 !important; background: #64C2CF; color: #1B1024; border: 0; border-radius: 999px; padding: 10px 20px; font-family: Roboto, sans-serif; font-weight: 500; font-size: 15px; line-height: 1.2; transition: background .2s; }
.woocommerce ul.products li.product .button:hover, .woocommerce ul.products li.product .button:focus { background: #4FB3C1; color: #1B1024; }
.woocommerce ul.products li.product .onsale, .woocommerce ul.products li.product .ast-onsale-card { top: 12px; left: 12px; right: auto; min-height: 0; min-width: 0; margin: 0; padding: 4px 10px; background: #643385; color: #fff; border-radius: 999px; font-family: Roboto, sans-serif; font-weight: 500; font-size: 12px; line-height: 1.4; letter-spacing: .02em; }
@media (max-width: 1024px) {
  html body.woocommerce ul.products, html body.woocommerce ul.products[class*="columns-"] { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 20px !important; column-gap: 20px !important; row-gap: 20px !important; }
  html body.woocommerce-shop #content .ast-container, html body.tax-product_cat #content .ast-container { padding: 28px 16px 48px !important; }
  html body.woocommerce-shop .ast-archive-description .ast-archive-title, html body.tax-product_cat .ast-archive-description .ast-archive-title { font-size: 36px !important; }
}
@media (max-width: 600px) {
  html body.woocommerce ul.products, html body.woocommerce ul.products[class*="columns-"] { grid-template-columns: minmax(0, 1fr) !important; gap: 16px !important; column-gap: 16px !important; row-gap: 16px !important; }
  .woocommerce-shop .woocommerce-result-count { display: none; }
  .woocommerce-shop .woocommerce-ordering { float: none; margin: 0 0 18px; }
}
