@charset "UTF-8";
/* post-1.css */
.elementor-kit-1{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-ottie_jable:#C0AF9B;--e-global-color-ottie_tabaiba:#526848;--e-global-color-ottie_almagre:#95463F;--e-global-color-ottie_basalto:#171615;--e-global-color-ottie_estrella:#EBA91B;--e-global-color-ottie_verificada:#2A7549;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-color-theme_color_bg_color:#FFFFFF;--e-global-color-theme_color_bg_color_2:#F0EFE9;--e-global-color-theme_color_bd_color:#E1DED7;--e-global-color-theme_color_title:#101010;--e-global-color-theme_color_text:#6C6C6C;--e-global-color-theme_color_meta:#9B9B9B;--e-global-color-theme_color_link:#A23300;--e-global-color-theme_color_hover:#782600;--e-global-color-theme_color_alt_bg_color:#171717;--e-global-color-theme_color_alt_bg_color_2:#212121;--e-global-color-theme_color_alt_bd_color:#343434;--e-global-color-theme_color_alt_title:#FFFEFE;--e-global-color-theme_color_alt_text:#C4C4C4;--e-global-color-theme_color_alt_meta:#9C9C9C;--e-global-color-theme_color_alt_link:#A23300;--e-global-color-theme_color_alt_hover:#782600;--e-global-typography-theme_font_p-font-family:"Kumbh Sans";--e-global-typography-theme_font_p-font-size:16px;--e-global-typography-theme_font_p-font-weight:400;--e-global-typography-theme_font_p-text-transform:none;--e-global-typography-theme_font_p-font-style:normal;--e-global-typography-theme_font_p-line-height:1.625em;--e-global-typography-theme_font_p-letter-spacing:0px;--e-global-typography-theme_font_post-font-family:"inherit";--e-global-typography-theme_font_post-font-weight:inherit;--e-global-typography-theme_font_post-text-transform:inherit;--e-global-typography-theme_font_post-font-style:inherit;--e-global-typography-theme_font_post-text-decoration:inherit;--e-global-typography-theme_font_h1-font-family:"Albert Sans";--e-global-typography-theme_font_h1-font-size:52px;--e-global-typography-theme_font_h1-font-weight:400;--e-global-typography-theme_font_h1-text-transform:none;--e-global-typography-theme_font_h1-font-style:normal;--e-global-typography-theme_font_h1-text-decoration:none;--e-global-typography-theme_font_h1-line-height:1.14em;--e-global-typography-theme_font_h1-letter-spacing:-0.03em;--e-global-typography-theme_font_h2-font-family:"Albert Sans";--e-global-typography-theme_font_h2-font-size:47px;--e-global-typography-theme_font_h2-font-weight:400;--e-global-typography-theme_font_h2-text-transform:none;--e-global-typography-theme_font_h2-font-style:normal;--e-global-typography-theme_font_h2-text-decoration:none;--e-global-typography-theme_font_h2-line-height:1.13em;--e-global-typography-theme_font_h2-letter-spacing:-0.02em;--e-global-typography-theme_font_h3-font-family:"Albert Sans";--e-global-typography-theme_font_h3-font-size:35px;--e-global-typography-theme_font_h3-font-weight:400;--e-global-typography-theme_font_h3-text-transform:none;--e-global-typography-theme_font_h3-font-style:normal;--e-global-typography-theme_font_h3-text-decoration:none;--e-global-typography-theme_font_h3-line-height:1.1142em;--e-global-typography-theme_font_h3-letter-spacing:-0.02em;--e-global-typography-theme_font_h4-font-family:"Albert Sans";--e-global-typography-theme_font_h4-font-size:28px;--e-global-typography-theme_font_h4-font-weight:400;--e-global-typography-theme_font_h4-text-transform:none;--e-global-typography-theme_font_h4-font-style:normal;--e-global-typography-theme_font_h4-text-decoration:none;--e-global-typography-theme_font_h4-line-height:1.2143em;--e-global-typography-theme_font_h4-letter-spacing:-0.01em;--e-global-typography-theme_font_h5-font-family:"Albert Sans";--e-global-typography-theme_font_h5-font-size:23px;--e-global-typography-theme_font_h5-font-weight:400;--e-global-typography-theme_font_h5-text-transform:none;--e-global-typography-theme_font_h5-font-style:normal;--e-global-typography-theme_font_h5-text-decoration:none;--e-global-typography-theme_font_h5-line-height:1.2174em;--e-global-typography-theme_font_h5-letter-spacing:-0.01em;--e-global-typography-theme_font_h6-font-family:"Albert Sans";--e-global-typography-theme_font_h6-font-size:19px;--e-global-typography-theme_font_h6-font-weight:400;--e-global-typography-theme_font_h6-text-transform:none;--e-global-typography-theme_font_h6-font-style:normal;--e-global-typography-theme_font_h6-text-decoration:none;--e-global-typography-theme_font_h6-line-height:1.2632em;--e-global-typography-theme_font_h6-letter-spacing:-0.01em;--e-global-typography-theme_font_logo-font-family:"Albert Sans";--e-global-typography-theme_font_logo-font-size:35px;--e-global-typography-theme_font_logo-font-weight:400;--e-global-typography-theme_font_logo-text-transform:none;--e-global-typography-theme_font_logo-font-style:normal;--e-global-typography-theme_font_logo-text-decoration:none;--e-global-typography-theme_font_logo-line-height:1.1142em;--e-global-typography-theme_font_logo-letter-spacing:-0.01em;--e-global-typography-theme_font_button-font-family:"Albert Sans";--e-global-typography-theme_font_button-font-size:16px;--e-global-typography-theme_font_button-font-weight:500;--e-global-typography-theme_font_button-text-transform:none;--e-global-typography-theme_font_button-font-style:normal;--e-global-typography-theme_font_button-text-decoration:none;--e-global-typography-theme_font_button-line-height:19px;--e-global-typography-theme_font_button-letter-spacing:0px;--e-global-typography-theme_font_input-font-family:"inherit";--e-global-typography-theme_font_input-font-size:15px;--e-global-typography-theme_font_input-font-weight:400;--e-global-typography-theme_font_input-text-transform:none;--e-global-typography-theme_font_input-font-style:normal;--e-global-typography-theme_font_input-text-decoration:none;--e-global-typography-theme_font_input-line-height:1.6em;--e-global-typography-theme_font_input-letter-spacing:0px;--e-global-typography-theme_font_info-font-family:"inherit";--e-global-typography-theme_font_info-font-size:14px;--e-global-typography-theme_font_info-font-weight:400;--e-global-typography-theme_font_info-text-transform:none;--e-global-typography-theme_font_info-font-style:normal;--e-global-typography-theme_font_info-text-decoration:none;--e-global-typography-theme_font_info-line-height:1.5em;--e-global-typography-theme_font_info-letter-spacing:0px;--e-global-typography-theme_font_menu-font-family:"Albert Sans";--e-global-typography-theme_font_menu-font-size:16px;--e-global-typography-theme_font_menu-font-weight:500;--e-global-typography-theme_font_menu-text-transform:none;--e-global-typography-theme_font_menu-font-style:normal;--e-global-typography-theme_font_menu-text-decoration:none;--e-global-typography-theme_font_menu-line-height:1.5em;--e-global-typography-theme_font_menu-letter-spacing:-0.01em;--e-global-typography-theme_font_submenu-font-family:"Kumbh Sans";--e-global-typography-theme_font_submenu-font-size:15px;--e-global-typography-theme_font_submenu-font-weight:400;--e-global-typography-theme_font_submenu-text-transform:none;--e-global-typography-theme_font_submenu-font-style:normal;--e-global-typography-theme_font_submenu-text-decoration:none;--e-global-typography-theme_font_submenu-line-height:1.4em;--e-global-typography-theme_font_submenu-letter-spacing:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1290px;}.e-con{--container-max-width:1290px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:30px;}.elementor-element{--widgets-spacing:30px 30px;--widgets-spacing-row:30px;--widgets-spacing-column:30px;}{}.sc_layouts_title_caption{display:var(--page-title-display);}@media(max-width:1279px){.elementor-kit-1{--e-global-typography-theme_font_h1-font-size:45px;--e-global-typography-theme_font_h2-font-size:36px;--e-global-typography-theme_font_h3-font-size:28px;--e-global-typography-theme_font_h4-font-size:22px;--e-global-typography-theme_font_h5-font-size:20px;--e-global-typography-theme_font_h6-font-size:18px;--e-global-typography-theme_font_logo-font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-1{--e-global-typography-theme_font_p-font-size:15px;--e-global-typography-theme_font_h1-font-size:36px;--e-global-typography-theme_font_h2-font-size:31px;--e-global-typography-theme_font_h3-font-size:26px;--e-global-typography-theme_font_h5-font-size:19px;--e-global-typography-theme_font_h6-font-size:17px;--e-global-typography-theme_font_logo-font-size:26px;--e-global-typography-theme_font_button-font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* base-desktop.css */
.elementor .e-div-block-base{min-width:30px;padding:10px;display:block;}.elementor .e-flexbox-base{padding:10px;display:flex;flex-direction:row;}.elementor .e-tabs-base{padding-block-start:0px;display:flex;flex-direction:column;gap:30px;}.elementor .e-tabs-menu-base{display:flex;justify-content:center;}.elementor .e-tab-base{width:160px;color:#0C0D0E;cursor:pointer;padding:8px;border-width:2px;border-color:#E0E0E0;border-style:solid;background-color:#FFFFFF;display:block;}.elementor .e-tab-base.e--selected{border-color:#0C0D0E;outline-width:0px;}.elementor .e-tab-base:focus{border-color:#0C0D0E;outline-width:0px;}.elementor .e-tab-base:hover,.elementor .e-tab-base:focus-visible{background-color:#E0E0E0;}.elementor .e-tabs-content-area-base{display:block;}.elementor .e-tab-content-base{min-width:30px;padding:10px;display:block;}.elementor .e-form-base{display:block;}.elementor .e-heading-base{margin:0px;}.elementor .e-heading-link-base{all:unset;cursor:pointer;}.elementor .e-image-link-base{width:fit-content;all:unset;cursor:pointer;display:inherit;}.elementor .e-image-base{display:block;}.elementor .e-paragraph-base{margin:0px;}.elementor .e-paragraph-link-base{all:unset;cursor:pointer;}.elementor .e-svg-base{width:65px;height:65px;display:inline-block;}.elementor .e-button-base{text-align:center;padding-block-start:12px;padding-block-end:12px;padding-inline-start:24px;padding-inline-end:24px;border-radius:2px;border-width:0px;background-color:#375EFB;display:inline-block;}.elementor .e-youtube-base{overflow:hidden;aspect-ratio:16/9;}.elementor .e-divider-base{height:1px;border-width:0px;border-color:transparent;border-style:none;background-color:#000;}.elementor .e-self-hosted-video-base{max-width:100vw;aspect-ratio:16/9;display:inline-block;}
/* cart-toast.css */
/* Theme palette and typography follow the rest of Ottie automatically. */
.ottie-cart-toast-ready .woocommerce-message:has(.ottie-cart-toast-data) { display: none; }
.ottie-cart-toast[hidden], .ottie-cart-toast-data[hidden] { display: none; }
.ottie-cart-toast {
 position: fixed; z-index: 10010; right: 24px; bottom: 24px; width: 400px;
 max-width: calc(100vw - 32px); box-sizing: border-box; padding: 22px;
 color: var(--theme-color-title); background: var(--theme-color-bg_color);
 border: 1px solid var(--theme-color-bd_color); border-radius: 16px;
 box-shadow: 0 12px 42px color-mix(in srgb, var(--theme-color-title) 12%, transparent);
 opacity: 0; transform: translateY(18px) scale(.98); visibility: hidden;
 transition: opacity .3s ease, transform .4s cubic-bezier(.22,1,.36,1), visibility .3s;
}
.ottie-cart-toast.is-visible { opacity: 1; transform: translateY(0) scale(1); visibility: visible; }
.ottie-cart-toast-product { display: grid; grid-template-columns: 80px minmax(0,1fr); align-items: center; gap: 16px; }
.ottie-cart-toast-product + .ottie-cart-toast-product { margin-top: 14px; }
.ottie-cart-toast-product > img { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; }
.ottie-cart-toast .ottie-cart-toast-status { display: flex; align-items: center; gap: 7px; margin: 0 18px 6px 0; font-size: 16px; line-height: 1.4; color: var(--theme-color-text); }
.ottie-cart-toast-status svg { width: 18px; height: 18px; flex-shrink: 0; }
.ottie-cart-toast .ottie-cart-toast-name { margin: 0; font-size: 16px; line-height: 1.45; font-weight: 500; color: var(--theme-color-title); }
.ottie-cart-toast .ottie-cart-toast-details { margin: 2px 0 0; font-size: 14px; line-height: 1.4; color: var(--theme-color-text); }
.ottie-cart-toast .ottie-cart-toast-close {
 position: absolute; top: 0; right: 0; display: grid; place-items: center; width: 44px; height: 44px;
 min-width: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent;
 color: var(--theme-color-text); box-shadow: none; cursor: pointer;
}
.ottie-cart-toast .ottie-cart-toast-close:hover { color: var(--theme-color-text_hover); background: transparent; }
.ottie-cart-toast-close svg { width: 16px; height: 16px; }
.ottie-cart-toast .ottie-cart-toast-link { display: flex; align-items: center; justify-content: space-between; min-height: 44px; margin: 12px 0 -8px 96px; font-size: 16px; color: var(--theme-color-title); border-top: 1px solid var(--theme-color-bd_color); }
.ottie-cart-toast .ottie-cart-toast-link:hover { color: var(--theme-color-text_hover); }
/* The whole card opens the cart: the link's layer covers it, only the close button sits above. */
.ottie-cart-toast .ottie-cart-toast-link::after { content: ''; position: absolute; inset: 0; border-radius: 16px; }
.ottie-cart-toast .ottie-cart-toast-close { z-index: 1; }
.ottie-cart-toast:has(.ottie-cart-toast-link:active) .ottie-cart-toast-content { opacity: .7; }
.ottie-cart-toast :focus-visible { outline: 2px solid var(--theme-color-text_link); outline-offset: 2px; }
@media (max-width: 767px) {
 /* Above the configurator's or a lamp page's bar only while that bar is on screen. */
 .ottie-cart-toast { right: 16px; bottom: calc(16px + env(safe-area-inset-bottom) + var(--ottie-cart-bar-height, var(--ottie-mobile-cart-height, 0px))); padding: 18px; }
 .ottie-cart-toast-product { gap: 12px; grid-template-columns: 68px minmax(0,1fr); }
 .ottie-cart-toast-product > img { width: 68px; height: 68px; }
 .ottie-cart-toast .ottie-cart-toast-status { font-size: 16px; }
 .ottie-cart-toast .ottie-cart-toast-link { margin-left: 80px; }
}
@media (prefers-reduced-motion: reduce) { .ottie-cart-toast { transition: none; transform: none; } }

/* cookie-banner.css */
/* Compact consent bar. Colours come from the theme palette; the triple class outranks
   the custom CSS stored in Complianz without !important. */
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner {
 top: auto; right: 0; bottom: 0; left: 0; transform: none;
 width: 100%; min-width: 0; max-width: none; max-height: 85vh; overflow-y: auto;
 box-sizing: border-box; margin: 0; padding: 14px 16px calc(14px + env(safe-area-inset-bottom));
 display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px;
 font-family: inherit; color: var(--theme-color-title); background: var(--theme-color-bg_color_2);
 border: 0; border-top: 1px solid var(--theme-color-bd_color); border-radius: 0;
 box-shadow: 0 -8px 28px color-mix(in srgb, var(--theme-color-title) 10%, transparent);
 --cmplz_slider_active_color: var(--theme-color-hover);
 --cmplz_slider_inactive_color: var(--theme-color-text);
 --cmplz_slider_bullet_color: var(--theme-color-bg_color);
 --cmplz_category_header_always_active_color: var(--theme-color-title);
}
/* Complianz hides a decided banner with .cmplz-dismissed (two classes); the triple class above
   would keep it on screen after Aceptar or Rechazar. */
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-dismissed { display: none; }
/* The title stays available to screen readers as the dialog label. */
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-header {
 position: absolute; width: 1px; height: 1px; margin: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-divider,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-documents,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-links.cmplz-information { display: none; }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-body,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons { grid-column: 1 / -1; min-width: 0; width: auto; }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-message {
 width: auto; margin: 0; font-size: 15px; line-height: 1.45; color: var(--theme-color-title);
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-message a { color: var(--theme-color-title); text-decoration: underline; text-underline-offset: 2px; }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-categories { width: auto; margin-top: 12px; color: var(--theme-color-title); }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-category { background: var(--theme-color-bg_color); }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-category-title,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-description { color: var(--theme-color-title); }

/* Aceptar and Rechazar share one size and one style; Configurar reads as a link. */
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons {
 display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; align-items: center; gap: 8px;
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
 width: auto; min-width: 0; min-height: 44px; margin: 0; padding: 0 12px;
 font-family: inherit; font-size: 15px; font-weight: 500; line-height: 1.2; letter-spacing: normal; text-transform: none;
 color: var(--theme-color-title); background: var(--theme-color-bg_color);
 border: 1px solid var(--theme-color-title); border-radius: 24px; box-shadow: none;
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn:hover,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn:focus-visible {
 color: var(--theme-color-bg_color); background: var(--theme-color-title);
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences {
 padding: 0 4px; font-weight: 400; text-decoration: underline; text-underline-offset: 3px;
 background: transparent; border-color: transparent;
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences:hover,
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences:focus-visible {
 color: var(--theme-color-hover); background: transparent;
}
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-save-preferences { grid-column: 1 / -1; }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-btn:focus-visible { outline: 2px solid var(--theme-color-title); outline-offset: 2px; }
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:focus + .cmplz-label::before {
 box-shadow: 0 0 0 2px var(--theme-color-title);
}

/* Phones: a floating card low on the screen with a gap above the add-to-cart bar, so the
   lamp photo stays visible above it. No backdrop, so the page stays usable while the choice waits. */
@media (max-width: 767px) {
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner {
  top: auto; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom)); left: 16px; width: auto; transform: none;
  max-height: calc(100vh - 32px); padding: 16px; gap: 12px;
  border: 1px solid var(--theme-color-bd_color); border-radius: 16px;
  box-shadow: 0 12px 40px color-mix(in srgb, var(--theme-color-title) 18%, transparent);
 }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn { min-height: 38px; padding: 0 10px; font-size: 14px; }
 .ottie-mobile-cart-visible .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner { bottom: calc(var(--ottie-mobile-cart-height, 0px) + 12px); }
}
@media (max-width: 359px) {
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner { right: 12px; left: 12px; padding: 12px; gap: 10px; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-message { font-size: 13px; line-height: 1.4; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn { padding: 0 8px; font-size: 14px; }
}
/* Complianz scales the banner down with !important rules on short screens (phones in
   landscape), leaving 18 px buttons. These layout-only overrides keep 44 px targets. */
@media (max-height: 400px) {
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner { height: auto; zoom: 1; padding: 10px 16px !important; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-body { margin-top: 0 !important; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons { gap: 8px !important; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  height: auto !important; min-height: 44px !important; padding: 0 12px !important;
  font-size: 15px !important; line-height: 1.2 !important; zoom: 1 !important;
 }
}
@media (min-width: 768px) {
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner:not(.cmplz-categories-visible) {
  grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 32px;
  padding: 16px max(24px, calc((100% - 1200px) / 2));
 }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner:not(.cmplz-categories-visible) .cmplz-body { grid-column: 1; }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner:not(.cmplz-categories-visible) .cmplz-buttons {
  grid-column: 2; grid-template-columns: repeat(2, minmax(132px, auto)) auto;
 }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-categories-visible {
  left: auto; right: 24px; bottom: 24px; width: 480px; max-width: calc(100% - 48px);
  padding: 20px; border: 1px solid var(--theme-color-bd_color); border-radius: 16px;
 }
}
/* The friendly lead reads first. */
.cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-message strong { font-weight: 600; color: var(--theme-color-title); }
/* Phones: Configurar becomes a gear icon; the word stays as the button's accessible name. */
@media (max-width: 767px) {
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences {
  display: inline-flex; align-items: center; justify-content: center; width: 38px; min-width: 38px; padding: 0;
  font-size: 0; text-decoration: none; color: var(--theme-color-text);
 }
 .cmplz-cookiebanner.cmplz-cookiebanner.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences::before {
  content: ''; width: 24px; height: 24px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
 }
}

/* wishlist.css */
/* Favourites (wishlist.php). Theme colours only; the saved heart takes the brand colour. */
button.ottie-wishlist-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: color-mix(in srgb, var(--theme-color-bg_color) 92%, transparent);
	color: var(--theme-color-title);
	box-shadow: 0 2px 10px color-mix(in srgb, var(--theme-color-title) 10%, transparent);
	font-size: 0;
	line-height: 0;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
	transition: transform .15s ease;
}
button.ottie-wishlist-toggle:hover {
	background: var(--theme-color-bg_color);
	color: var(--theme-color-title);
}
button.ottie-wishlist-toggle:active {
	transform: scale(.9);
}
button.ottie-wishlist-toggle[aria-pressed="true"] svg {
	fill: var(--e-global-color-theme_color_hover, var(--theme-color-hover));
	stroke: var(--e-global-color-theme_color_hover, var(--theme-color-hover));
}

/* Cards: over the top right corner of the photo. */
/* The theme's catalogue card, and WooCommerce's card measured from its content box: the card itself has inner margins. */
.trx-addons-woo-products-product-wrapper,
ul.products li.product .post_item {
	position: relative;
}
button.ottie-wishlist-toggle.is-card {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 3;
}

/* The product page: at the right of the heading, beside the name. */
button.ottie-wishlist-toggle.is-summary {
	float: right;
	margin: -2px 0 8px 12px;
	box-shadow: none;
	border: 1px solid var(--theme-color-bd_color);
	width: 44px;
	height: 44px;
}

/* The header: before the cart, with its count. */
.elementor-widget-trx_sc_layouts_cart > .elementor-widget-container {
	display: flex;
	align-items: center;
	gap: 18px;
}
a.ottie-wishlist-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--theme-color-title);
	text-decoration: none;
}
a.ottie-wishlist-link svg {
	width: 24px;
	height: 24px;
}
.ottie-wishlist-count {
	position: absolute;
	top: -7px;
	right: -9px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border-radius: 9px;
	background: var(--theme-color-title);
	color: var(--theme-color-bg_color);
	font-size: 11px;
	font-weight: 500;
	line-height: 1;
}
.ottie-wishlist-count[hidden] {
	display: none;
}

/* The Favoritos page. */
.ottie-favoritos-title {
	margin: 0 0 32px;
}
.ottie-favoritos[aria-busy="true"] {
	min-height: 40vh;
}
.ottie-favoritos-empty {
	padding: 48px 0 64px;
	text-align: center;
}
.ottie-favoritos-empty p {
	margin: 0 0 20px;
	font-size: 17px;
	color: var(--theme-color-title);
}
a.ottie-favoritos-shop {
	display: inline-flex;
	align-items: center;
	min-height: 46px;
	padding: 0 26px;
	border-radius: 999px;
	background: var(--e-global-color-theme_color_hover, var(--theme-color-hover));
	color: var(--theme-color-bg_color);
	text-decoration: none;
}
@media (max-width: 767px) {
	.elementor-widget-trx_sc_layouts_cart > .elementor-widget-container {
		gap: 14px;
	}
	/* Phones: a small heart that leaves the photo its room (owner, 2026-11-06). */
	button.ottie-wishlist-toggle.is-card {
		top: 7px;
		right: 7px;
		width: 28px;
		height: 28px;
	}
	button.ottie-wishlist-toggle.is-card svg {
		width: 15px;
		height: 15px;
	}
	/* The finger still gets a 44 px target around the small circle. */
	button.ottie-wishlist-toggle.is-card::after {
		content: "";
		position: absolute;
		inset: -8px;
	}
	button.ottie-wishlist-toggle.is-summary {
		width: 34px;
		height: 34px;
	}
	button.ottie-wishlist-toggle.is-summary svg {
		width: 17px;
		height: 17px;
	}
	a.ottie-wishlist-link svg {
		width: 22px;
		height: 22px;
	}
}

/* mailin-front.css */
div.sib-sms-field {
    display: inline-block;
    position: relative;
    width: 100%;
}

.sib-sms-field .sib-country-block {
    position: absolute;
    right: auto;
    left: 0;
    top: 0;
    bottom: 0;
    padding: 1px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.sib-country-block .sib-toggle.sib-country-flg {
    z-index: 1;
    position: relative;
    width: 46px;
    height: 100%;
    padding: 0 0 0 8px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #dbdbdb;
    cursor: pointer;
}

.sib-country-block .sib-toggle .sib-cflags {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 15px;
    width: 20px;
    background-repeat: no-repeat;
    background-color: #dbdbdb;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-image: url('/wp-content/plugins/mailin/img/flags/fr.png');
}
.sib-country-block .sib-toggle .sib-icon-arrow {
    position: absolute;
    top: 50%;
    margin-top: -2px;
    right: 6px;
    width:  0;
    height: 0;
    border-left: 3px solid transparent;
    border-right: 3px solid transparent;
    border-top: 4px solid;
}
.sib-sms-field ul.sib-country-list {
    position: absolute;
    z-index: 2;
    list-style: none;
    text-align: left;
    padding: 0px;
    margin: 0px 0px 0px -1px;
    box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 4px;
    background-color: white;
    border: 1px solid rgb(204, 204, 204);
    white-space: nowrap;
    max-height: 150px;
    overflow-y: scroll;
    overflow-x: hidden;
    top: 50px;
    width: 250px;
}
.sib-sms-field ul.sib-country-list li.sib-country-prefix {
    font-size: 14px;
    padding:1px 10px;
    cursor: pointer;
}
.sib-sms-field ul.sib-country-list li.sib-country-prefix:hover {
    background-color: #dbdbdb;
}
.sib-sms-field ul.sib-country-list li .sib-flag-box {
    width: 20px;
}

.sib-sms-field ul.sib-country-list li .sib-flag-box .sib-flag {
    height: 18px;
    width: 20px;
    background-image: url("/wp-content/plugins/mailin/img/flags/ad.png");
    vertical-align: middle;
    display: inline-block;
    background-repeat:no-repeat;
}
.sib-sms-field ul.sib-country-list li .sib-flag-box .sib-dial-code {
    margin-left: 20px;
}
.sib-sms-field .sib-sms {
    padding-right: 6px;
    padding-left: 52px;
    margin-left: 0;
    position: relative;
    z-index: 0;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-right: 0;
}
.sib-multi-lists.sib_error {
    color: #A94442;
}
/* site.css */
/* /wp-content/plugins/ottie-store-ux/site.css, without rules no page can use (tools/perf/purge-css.mjs) */
.top_panel .elementor-element.elementor-element-65390b7c { justify-content:center; padding:7px 16px; }.top_panel .elementor .elementor-element.elementor-element-ottieenvio .elementor-heading-title { color:var(--theme-color-title); font:500 14px/1.5 "Albert Sans",sans-serif; margin:0; }.ottie-ribbon-second::before { content: ' · '; }@media(max-width:767px){.top_panel .elementor .elementor-element.elementor-element-ottieenvio .elementor-heading-title { font-size: 16px; line-height: 1.5; }}.single-product .cwginstock-subscribe-form .panel-heading h4 { color: var(--theme-color-title); font-size: 20px; line-height: 1.4; margin: 0 0 12px; }.single-product .ottie-stock-privacy, .single-product .ottie-stock-success { font-size: 16px; color: var(--theme-color-text); line-height: 1.5; margin: 0; }.sc_layouts_search,.elementor-widget-trx_sc_layouts_search{display:none!important}:is(.woocommerce-account,.ottie-login-dialog) .woocommerce-form-login .form-row:has(.woocommerce-form-login__rememberme){display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px}:is(.woocommerce-account,.ottie-login-dialog) .woocommerce-form-login .woocommerce-form-login__submit{order:-1;float:none;margin:0}:is(.woocommerce-account,.ottie-login-dialog) .woocommerce-form-login .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;float:none;margin:0;line-height:1.5}:is(.woocommerce-account,.ottie-login-dialog) .password-input .show-password-input{right:18px}:is(.woocommerce-account,.ottie-login-dialog) .password-input input[type="password"],:is(.woocommerce-account,.ottie-login-dialog) .password-input input[type="text"]{padding-right:52px}:is(.woocommerce-account,.ottie-login-dialog) .show-password-input::before{content:""!important;display:block!important;width:22px!important;height:22px!important;background:currentColor!important;mask:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}:is(.woocommerce-account,.ottie-login-dialog) .show-password-input.display-password::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1 12 5c6.5 0 10 7 10 7a19 19 0 0 1-3 3.9M6.2 6.2A22 22 0 0 0 2 12s3.5 7 10 7a11 11 0 0 0 5.8-1.8M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E")}.ottie-uno-part { transform-box: fill-box; transform-origin: center bottom; animation-duration: 8s; animation-iteration-count: infinite; animation-timing-function: ease-in-out; }.ottie-uno-part path { vector-effect: non-scaling-stroke; }.ottie-uno-part-a { animation-name: ottie-uno-swap-a; }.ottie-uno-part-b { opacity: 0; animation-name: ottie-uno-swap-b; }.ottie-uno-base { animation-delay: 2s; transform-origin: center bottom; }@keyframes ottie-uno-swap-a {
 0%, 12.5%, 76%, 100% { opacity: 1; transform: translateY(0) scale(1); }
 16.5% { opacity: 0; transform: translateY(-3px) scale(.75,.65); }
 16.51%, 66.5% { opacity: 0; transform: translateY(-4px) scale(.7,.65); }
 70% { opacity: 1; transform: translateY(.4px) scale(1.08,1.12); }
 73% { opacity: 1; transform: translateY(-.2px) scale(.98,.96); }
}@keyframes ottie-uno-swap-b {
 0%, 16.5%, 100% { opacity: 0; transform: translateY(-4px) scale(.7,.65); }
 20.5% { opacity: 1; transform: translateY(.4px) scale(1.08,1.12); }
 23.5% { opacity: 1; transform: translateY(-.2px) scale(.98,.96); }
 26%, 62.5% { opacity: 1; transform: translateY(0) scale(1); }
 66.5%, 99.99% { opacity: 0; transform: translateY(-3px) scale(.75,.65); }
}@media (prefers-reduced-motion: reduce) {.ottie-uno-part { animation: none; transform: none; }.ottie-uno-part-a { opacity: 1; }.ottie-uno-part-b { opacity: 0; }}body h1,body h2,body h3,body .elementor-heading-title{hyphens:none;-webkit-hyphens:none;word-break:normal}.ottie-lamp-stars { position:relative; display:inline-block; flex:none; font-size:16px; line-height:1; letter-spacing:.04em; white-space:nowrap; color:var(--theme-color-bd_color); }.ottie-lamp-stars::before { content:"★★★★★"; }.ottie-lamp-stars::after { content:"★★★★★"; position:absolute; top:0; left:0; width:var(--ottie-stars-fill); overflow:hidden; color:var(--e-global-color-ottie_estrella, var(--theme-color-hover)); }.ottie-card-name, .ottie-card-kind { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; line-height:1.4; }.ottie-card-name { font-size:16px; font-weight:500; }.ottie-card-kind { font-size:14px; }li.product:has(.ottie-card-rating) .ottie-card-name { padding-right:92px; }.ottie-card-rating { display:flex; align-items:center; gap:4px; height:22px; font-size:13px; line-height:1.2; color:var(--theme-color-text); pointer-events:none; }.ottie-card-rating .ottie-lamp-stars { font-size:13px; }.ottie-card-colors { display:flex; align-items:center; gap:6px; margin:6px 0 0; font-size:13px; line-height:1.2; color:var(--theme-color-text); }.ottie-card-dots { display:inline-flex; gap:3px; }.ottie-card-dots i { display:block; width:10px; height:10px; border-radius:50%; box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--theme-color-title) 12%, transparent); }.trx-addons-woo-products ul.products > li.product { display:flex; }.trx-addons-woo-products .trx-addons-woo-products-product-wrapper { display:flex; flex-direction:column; width:100%; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap { flex:1; display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:1fr auto auto; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap > .trx-addons-woo-products-product__link { grid-area:1 / 1; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap > .ottie-card-rating { grid-area:1 / 1; justify-self:end; align-self:start; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap > .ottie-card-colors { grid-row:2; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap > .price { grid-row:3; margin-top:8px !important; }@media(max-width:1023px) {.ottie-card-kind { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; white-space:normal; }.ottie-card-rating { gap:3px; font-size:12px; }.ottie-card-rating .ottie-lamp-stars { font-size:11px; letter-spacing:.02em; }li.product:has(.ottie-card-rating) .ottie-card-name { padding-right:78px; }}@media(max-width:374px) {.ottie-card-name { font-size:15px; }}@media(max-width:359px) {li.product:has(.ottie-card-rating) .ottie-card-name { padding-right:0; }.trx-addons-woo-products:has(.ottie-card-rating) .trx-addons-woo-products-details-wrap { grid-template-rows:1fr auto auto 22px; }.trx-addons-woo-products .trx-addons-woo-products-details-wrap > .ottie-card-rating { grid-area:auto; grid-row:4; justify-self:start; align-self:end; }}.trx-addons-woo-products ul.products li.product .trx-addons-woo-products-product-thumbnail a img.trx-addons-woo-products-product__on_hover { width:100%; height:100%; object-fit:cover; }.ottie-uno-card .trx-addons-woo-products-product-thumbnail,
:is(.single-product .related.products, .ottie-favoritos) li.product_cat-sistema-uno .post_featured { position:relative; }.ottie-uno-card .trx-addons-woo-products-product-thumbnail::after,
:is(.single-product .related.products, .ottie-favoritos) li.product_cat-sistema-uno .post_featured::after { content:"Sistema UNO"; position:absolute; z-index:4; top:12px; left:12px; padding:6px 11px; border:1px solid color-mix(in srgb, var(--theme-color-bg_color) 65%, transparent); border-radius:30px; background:color-mix(in srgb, var(--theme-color-bg_color) 94%, transparent); color:var(--theme-color-title); font:500 11px/1.3 "Albert Sans",sans-serif; letter-spacing:.025em; pointer-events:none; }@media(max-width:767px) {.ottie-uno-card .trx-addons-woo-products-product-thumbnail::after,
 :is(.single-product .related.products, .ottie-favoritos) li.product_cat-sistema-uno .post_featured::after { top:8px; left:8px; padding:5px 8px; font-size:10px; }}

/* purchase-summary.css */
body.woocommerce-cart .page_content_wrap { padding-top: 80px; }
@media(max-width:767px){ body.woocommerce-cart .page_content_wrap { padding-top: 24px; } }
/* Shared, compact purchase summaries; keep native WooCommerce table semantics. */
body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-remove a svg { width: 20px; height: 20px; }
body.woocommerce-cart .ottie-cart-title { font-family: "Albert Sans", sans-serif; font-size: clamp(40px,5vw,64px); line-height: 1.1; font-weight: 400; letter-spacing: -.035em; color: #20201d; margin: 0 0 40px; }
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-cart .cart_totals > h2 {
 font-family: "Albert Sans", sans-serif; font-size: 26px; line-height: 1.2; font-weight: 500; letter-spacing: -.025em; margin: 0 0 24px; color: #20201d;
}
body.woocommerce-checkout #order_review table.shop_table,
body.woocommerce-cart .cart_totals table.shop_table { border: 0; border-collapse: collapse; margin: 0 0 24px; width: 100%; }
body.woocommerce-checkout #order_review table.shop_table :is(th,td),
body.woocommerce-cart .cart_totals table.shop_table :is(th,td) {
 font-family: "Albert Sans", sans-serif; font-size: 16px; line-height: 1.45; font-weight: 400; color: #30302b; padding: 14px 0; border: 0; border-bottom: 1px solid #e4e2da; background: transparent; vertical-align: middle;
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table th { text-align: left; padding-right: 20px; }
body.woocommerce-checkout #order_review table.shop_table td:last-child,
body.woocommerce-checkout #order_review table.shop_table thead th:last-child,
body.woocommerce-cart .cart_totals table.shop_table td:last-child { text-align: right; }
body.woocommerce-checkout #order_review table.shop_table .amount,
body.woocommerce-cart .cart_totals table.shop_table .amount { font: inherit; color: inherit; white-space: nowrap; font-variant-numeric: tabular-nums; }
body.woocommerce-checkout #order_review table.shop_table strong,
body.woocommerce-cart .cart_totals table.shop_table strong { font-weight: 500; }
body.woocommerce-checkout #order_review table.shop_table .order-total :is(th,td),
body.woocommerce-cart .cart_totals table.shop_table .order-total :is(th,td) { font-size: 20px; font-weight: 500; border-bottom: 0; padding-top: 20px; }
body.woocommerce-checkout #order_review table.shop_table .product-total { width: 28%; }
body.woocommerce-checkout #order_review table.shop_table .ottie-checkout-product { gap: 14px; text-align: left; }
body.woocommerce-checkout #order_review table.shop_table .ottie-checkout-product img { width: 64px; height: 64px; border-radius: 4px; }
body.woocommerce-checkout #order_review table.shop_table .product-quantity { display: block; margin: 4px 0 0; font-size: 14px; color: #5c5c54; font-weight: 400; }
body.woocommerce-checkout #order_review table.shop_table #shipping_method,
body.woocommerce-cart .cart_totals table.shop_table #shipping_method { margin: 0; padding: 0; }
body.woocommerce-checkout #order_review table.shop_table #shipping_method li,
body.woocommerce-cart .cart_totals table.shop_table #shipping_method li { margin: 0; padding: 0; font-weight: 400; }
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination { font: inherit; font-size: 14px; color: #606057; line-height: 1.5; margin: 8px 0 0; }
body :is(.cart_totals,#order_review) .ottie-coupon-tag { display: inline-block; max-width: 100%; padding: 5px 10px; border: 1px solid #dedbd1; border-radius: 5px; background: #f3f1eb; color: #4c4a40; font-size: 13px; line-height: 1.35; font-weight: 500; overflow-wrap: anywhere; vertical-align: middle; }
body :is(.cart_totals,#order_review) .woocommerce-remove-coupon { display: inline-flex; align-items: center; margin-left: 10px; min-height: 44px; padding: 0; font-size: 13px; line-height: 20px; font-weight: 400; color: #665446; text-decoration: underline; text-underline-offset: 3px; vertical-align: middle; }
body.woocommerce-cart .cart_totals .checkout-button { display: block; width: 100%; box-sizing: border-box; margin: 8px 0 0; padding: 16px 24px; font-size: 16px; line-height: 1.25; }
body.woocommerce-cart .woocommerce-cart-form .coupon { float: none; width: auto; padding: 0; text-align: left; }
.ottie-coupon-disclosure { display: inline-block; max-width: 100%; }
.ottie-coupon-disclosure summary { list-style: none; display: flex; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; font: 400 15px/1.4 "Albert Sans",sans-serif; color: #45443c; }
.ottie-coupon-disclosure summary::-webkit-details-marker { display: none; }
.ottie-coupon-disclosure summary::before { content: none; }
body.ottie-auto-cart .woocommerce-cart-form button[name="update_cart"] { display: none!important; }
.ottie-coupon-fields { display: flex; align-items: center; gap: 8px; padding: 6px 0 12px; }
body.woocommerce-cart .ottie-coupon-fields :is(input,button) { float: none!important; width: auto!important; min-height: 44px; margin: 0!important; padding: 10px 16px; font-size: 16px; line-height: 1.4; }
body.woocommerce-cart .ottie-coupon-fields input { min-width: 0; max-width: 220px; }
body.woocommerce-cart .ottie-coupon-fields label { display: none; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .required { display: none; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label { font: 400 14px/1.5 "Albert Sans",sans-serif; color: #45443c; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
/* Desktop uses the same cards as mobile, with the product photo taking the lead. */
@media(min-width:768px){
 body.woocommerce-cart .woocommerce-cart-form table.shop_table { display: block; width: 100%; border: 0; margin: 0; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table > thead { display: none; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody { display: block; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item { display: grid; position: relative; grid-template-columns: minmax(180px,42%) minmax(0,1fr) 32px; grid-template-rows: 1fr auto 1fr; grid-template-areas: 'photo name remove' 'photo price price' 'photo quantity subtotal'; column-gap: 24px; row-gap: 14px; padding: 20px; margin-bottom: 20px; border: 1px solid #e4e2da; border-radius: 12px; background: #fff; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td { display: block; position: static; width: auto; min-width: 0; padding: 0; border: 0; background: transparent; text-align: left!important; font: 400 16px/1.45 "Albert Sans",sans-serif; color: #30302b; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td::before { content: none; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item :is(.mobile_cell,.mobile_cell > table,.mobile_cell > table > tbody,.first_row,.second_row) { display: contents; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-thumbnail { grid-area: photo; align-self: center; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-thumbnail a { display: block; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-thumbnail img { display: block; width: 100%; max-width: none; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 8px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-name { grid-area: name; align-self: end; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-name :is(a,.ottie-cart-name) { font-size: 21px; line-height: 1.35; font-weight: 500; letter-spacing: -.02em; color: #20201d; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-name dl.variation { margin: 10px 0 0; font-size: 14px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-price { grid-area: price; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-price .amount { font-size: 16px; color: #66645c; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-remove { grid-area: remove; align-self: start; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-remove a { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: -10px -6px 0; border-radius: 50%; font-size: 26px; color: #716f66!important; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item .product-quantity { grid-area: quantity; align-self: end; padding-top: 18px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity { width: 120px; height: 44px; background: #faf9f5; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity .qty { font-size: 16px; width: 40px; height: 44px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity :is(.q_inc,.q_dec) { min-width: 39px; height: 44px; line-height: 44px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item .product-subtotal { grid-area: subtotal; grid-column: 2 / 4; justify-self: end; align-self: end; padding-bottom: 10px; pointer-events: none; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-subtotal .amount { font-size: 19px; font-weight: 500; color: #20201d; white-space: nowrap; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr:has(> .actions) { display: block; border: 0; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions { display: flow-root; padding: 0 4px; border: 0; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .coupon { float: none; }
 body.woocommerce-cart .cart-collaterals { margin-top: 28px; }
 body.woocommerce-cart .cart-collaterals .cart_totals { box-sizing: border-box; float: none; width: 100%; padding: 28px; background: #f7f6f2; border: 1px solid #e4e2da; border-radius: 12px; }
 body.woocommerce-cart .cart_totals > h2 { font-size: 25px; }
 body.woocommerce-cart .cart_totals table.shop_table .cart-discount th { max-width: 180px; padding-right: 12px; }
 body.woocommerce-cart .cart_totals .wc-proceed-to-checkout { padding: 0; }
 /* Abode's generic iframe minimum must not stretch Stripe's own button height. */
 body.woocommerce-cart #wc-stripe-express-checkout-element iframe { min-height: 0; }
}
@media(min-width:1100px){
 body.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) { display: grid; grid-template-columns: minmax(0,1fr) 380px; column-gap: 36px; align-items: start; }
 body.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) > :not(.woocommerce-cart-form):not(.cart-collaterals) { grid-column: 1 / -1; }
 body.woocommerce-cart .woocommerce-cart-form { min-width: 0; margin: 0; }
 body.woocommerce-cart .cart-collaterals { min-width: 0; width: 100%; margin: 0; }
}
@media(max-width:767px){
 body.woocommerce-cart .ottie-cart-title { margin-bottom: 20px; font-size: 30px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table { display: block; border: 0; margin-bottom: 28px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody { display: block; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item { display: grid; position: relative; grid-template-columns: 88px minmax(0,1fr) 28px; grid-template-areas: 'photo name remove' 'photo price price' 'quantity subtotal subtotal'; gap: 12px; padding: 18px; margin-bottom: 16px; border: 1px solid #e4e2da; border-radius: 12px; background: #fff; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td { display: block; position: static; width: auto; min-width: 0; padding: 0; border: 0; background: transparent; text-align: left!important; font: 400 15px/1.45 "Albert Sans",sans-serif; color: #30302b; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item td::before { content: none; }
 /* Abode wraps mobile cells in a nested table; let its cells use the card grid. */
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item :is(.mobile_cell,.mobile_cell > table,.mobile_cell > table > tbody,.first_row,.second_row) { display: contents; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-thumbnail { grid-area: photo; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-thumbnail img { display: block; width: 88px; max-width: 100%; height: 108px; object-fit: cover; border-radius: 7px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-name { grid-area: name; align-self: center; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-name :is(a,.ottie-cart-name) { color: #20201d; font-weight: 500; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-price { grid-area: price; align-self: start; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-price .amount { color: #66645c; font-size: 14px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-remove { grid-area: remove; align-self: start; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .product-remove a { display: flex; align-items: center; justify-content: center; width: 36px; height: 44px; margin: -10px -5px 0; border-radius: 50%; font-size: 24px; color: #716f66!important; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item .product-quantity { grid-area: quantity; grid-column: 1 / 3; padding-top: 14px; margin-top: 4px; border-top: 1px solid #eeece5; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity { width: 120px; min-height: 44px; background: #faf9f5; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity .qty { font-size: 16px; width: 40px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table .quantity :is(.q_inc,.q_dec) { min-width: 39px; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item .product-subtotal { grid-area: subtotal; grid-column: 2 / 4; justify-self: end; align-self: end; padding-bottom: 11px; font-size: 17px; font-weight: 500; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item .product-subtotal .amount { color: #20201d; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table tr:has(> .actions) { display: block; border: 0; }
 body.woocommerce-cart .woocommerce-cart-form table.shop_table td.actions { display: block; padding: 0; border: 0; }
 body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] { margin-top: 12px; min-height: 44px; font-size: 14px; }
 body.woocommerce-cart .woocommerce-cart-form button[name="update_cart"]:disabled { display: none; }
 body.woocommerce-cart .cart_totals { box-sizing: border-box; width: 100%; padding: 22px 18px; background: #f7f6f2; border: 1px solid #e4e2da; border-radius: 12px; }
 body.woocommerce-cart .cart_totals table.shop_table tr { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; border-bottom: 1px solid #e4e2da; background: transparent; }
 body.woocommerce-cart .cart_totals table.shop_table tr :is(th,td) { display: block; width: auto; border-bottom: 0; }
 body.woocommerce-cart .cart_totals table.shop_table tr td::before { content: none; }
 body.woocommerce-cart .cart_totals table.shop_table .order-total { border: 0; }
 body.woocommerce-cart .cart_totals table.shop_table .cart-discount { grid-template-columns: minmax(0,1fr); gap: 0; }
 body.woocommerce-cart .cart_totals table.shop_table .cart-discount th { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding-bottom: 0; }
 body.woocommerce-cart .cart_totals table.shop_table .cart-discount td { padding-top: 0; }
 body.woocommerce-cart .cart_totals .woocommerce-remove-coupon { margin-left: 0; }
 body.woocommerce-checkout #order_review_heading,body.woocommerce-checkout .woocommerce-billing-fields > h3,body.woocommerce-cart .cart_totals > h2 { font-size: 24px; margin-bottom: 20px; }
 body.woocommerce-checkout #order_review table.shop_table :is(th,td),body.woocommerce-cart .cart_totals table.shop_table :is(th,td) { font-size: 16px; padding-top: 12px; padding-bottom: 12px; }
 body.woocommerce-checkout #order_review table.shop_table th,body.woocommerce-cart .cart_totals table.shop_table th { padding-right: 12px; }
 .ottie-coupon-fields { flex-wrap: wrap; }
 body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label { font-size: 16px; }
}
/* Cart feedback: a quiet, branded confirmation instead of the theme's bare notice. */
body.woocommerce-cart .woocommerce .woocommerce-message {
 position: relative; display: block; box-sizing: border-box;
 margin: 0 0 24px; padding: 15px 20px 15px 54px;
 border: 1px solid #dfe4d9; border-radius: 12px;
 background: #f3f5ef; color: #424b3d; box-shadow: none;
 font-family: "Albert Sans", sans-serif; font-size: 15px; font-weight: 400; line-height: 1.5;
}
body.woocommerce-cart .woocommerce .woocommerce-message::before {
 content: ""; position: absolute; top: 17px; left: 20px;
 width: 19px; height: 19px; margin: 0; border: 0;
 background: currentColor; color: #65735a;
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 2.5 2.5L16 9'/%3E%3C/svg%3E") center/contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 2.5 2.5L16 9'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.woocommerce-cart .woocommerce .woocommerce-message a { color: inherit; text-underline-offset: 3px; }
body.woocommerce-cart .woocommerce .woocommerce-notices-wrapper:empty { display: none; }
body.woocommerce-cart .woocommerce-cart-form .product-thumbnail img.ottie-config-cart-image,
body.woocommerce-checkout .ottie-checkout-product img.ottie-config-cart-image { object-fit: contain; background: #f7f6f2; }
/* Cart photo, opened large in place. */
body.woocommerce-cart .woocommerce-cart-form .product-thumbnail img { cursor: zoom-in; }
.ottie-cart-photo { width: min(100% - 32px, 640px); max-width: none; max-height: calc(100dvh - 32px); padding: 0; border: 0; border-radius: 16px; overflow: hidden; background: var(--theme-color-bg_color_2); }
.ottie-cart-photo::backdrop { background: color-mix(in srgb, var(--theme-color-title) 45%, transparent); }
html:has(.ottie-cart-photo[open]) { overflow: hidden; }
.ottie-cart-photo > img { display: block; width: 100%; height: auto; max-height: calc(100dvh - 32px); object-fit: contain; }
.ottie-cart-photo .ottie-cart-photo__close { position: absolute; top: 8px; right: 8px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: var(--theme-color-bg_color_2); color: var(--theme-color-title); font-size: 26px; line-height: 1; }
/* Cart extras and the lines around the pay button. Colours follow the theme palette. */
body.woocommerce-cart .ottie-cart-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 40px; }
body.woocommerce-cart .ottie-cart-head .ottie-cart-title { margin: 0; }
@media(max-width:767px){ body.woocommerce-cart .ottie-cart-head { margin-bottom: 20px; } }
body.woocommerce-cart .ottie-cart-continue { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 14px; line-height: 1.4; white-space: nowrap; color: var(--theme-color-text); }
body.woocommerce-cart .cart_totals table.shop_table tr.ottie-cart-tax-note { display: table-row; border: 0; }
body.woocommerce-cart .cart_totals table.shop_table tr.ottie-cart-tax-note td { display: table-cell; padding: 4px 0 0; border: 0; font-size: 13px; line-height: 1.4; text-align: left; color: var(--theme-color-text); }
body.woocommerce-cart .cart_totals table.shop_table tr.order-total:has(+ tr.ottie-cart-tax-note) { border-bottom: 0; }
body.woocommerce-cart .cart_totals table.shop_table tr.order-total:has(+ tr.ottie-cart-tax-note) :is(th, td) { padding-bottom: 0; }
body.woocommerce-cart .cart_totals tr.ottie-cart-tax-note td::before { content: none; }
.woocommerce-checkout .ottie-terms-line { margin: 8px 0 0; font-size: 13px; line-height: 1.5; text-align: center; text-wrap: balance; color: var(--theme-color-text); }
.woocommerce-checkout .ottie-terms-line a { text-decoration: underline; text-underline-offset: 3px; }
/* The same family as the cards on the product page, smaller, because the pay button comes first. */
.woocommerce-checkout ul.ottie-pay-assurance { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.woocommerce-checkout .ottie-pay-assurance li { display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 0; margin: 0; padding: 12px 4px; border-radius: 12px; background: var(--theme-color-bg_color_2); color: var(--theme-color-title); font-size: 13px; font-weight: 500; line-height: 1.3; text-align: center; }
.woocommerce-checkout .ottie-pay-assurance li::before { content: none; }
.woocommerce-checkout .ottie-pay-assurance .ottie-line-icon { box-sizing: border-box; flex: 0 0 34px; width: 34px; height: 34px; padding: 8px; border-radius: 50%; background: var(--theme-color-bg_color); }
.woocommerce-checkout .ottie-pay-assurance :is(.ottie-assurance-line, .ottie-assurance-note) { display: block; white-space: nowrap; }
.woocommerce-checkout .ottie-pay-assurance .ottie-assurance-note { margin-top: 2px; font-size: 12px; font-weight: 400; color: color-mix(in srgb, var(--theme-color-title) 72%, transparent); }
@media (min-width: 1025px) {
 .woocommerce-checkout .ottie-pay-assurance li { flex-direction: row; justify-content: center; gap: 8px; padding: 10px 6px; text-align: left; }
}
.woocommerce-checkout .ottie-field-note { display: block; margin-top: 6px; font-size: 13px; line-height: 1.4; color: var(--theme-color-text); }
.ottie-cart-bar { display: none; }
@media (max-width: 767px) {
 .ottie-cart-bar:not([hidden]) { display: block; position: fixed; inset: auto 0 0; z-index: 1000; padding: 12px 20px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--theme-color-bd_color); background: var(--theme-color-bg_color); }
 .ottie-cart-bar .button { display: block; width: 100%; box-sizing: border-box; text-align: center; }
 .ottie-cart-bar .ottie-cart-delivery[data-ottie-delivery] { justify-content: center; margin: 0 0 8px; font-size: clamp(12px, 3.45vw, 13px); line-height: 1.4; text-align: center; }
}

