/* Generated by tools/build_deceti0_css.js. Do not edit directly. */
/* Complete DECETI-0 CSS package. */

/* source: catalog/view/stylesheet/deceti/deceti-0/palette-contract.css */
/* DECETI-0 raw palette implementation. RGB channels only. */
:root {
  --theme-palette-page: 238 238 238;
  --theme-palette-surface: 255 255 255;
  --theme-palette-surface-alt: 248 249 250;
  --theme-palette-surface-elevated: 255 255 255;
  --theme-palette-preview: 241 243 245;
  --theme-palette-text: 17 24 39;
  --theme-palette-text-muted: 107 114 128;
  --theme-palette-text-inverse: 255 255 255;
  --theme-palette-text-disabled: 148 163 184;
  --theme-palette-border: 212 217 223;
  --theme-palette-border-strong: 160 160 160;
  --theme-palette-border-focus: 2 181 255;
  --theme-palette-brand-primary: 2 181 255;
  --theme-palette-brand-primary-hover: 0 197 240;
  --theme-palette-brand-dark: 0 51 77;
  --theme-palette-brand-accent: 127 232 255;
  --theme-palette-brand-accent-text: 0 51 77;
  --theme-palette-action-primary: 0 51 77;
  --theme-palette-action-primary-hover: 0 197 240;
  --theme-palette-action-design: 0 51 77;
  --theme-palette-action-design-hover: 0 197 240;
  --theme-palette-action-upload: 212 11 120;
  --theme-palette-action-upload-hover: 253 31 154;
  --theme-palette-action-template: 47 128 0;
  --theme-palette-action-template-hover: 69 198 3;
  --theme-palette-action-neutral: 68 68 68;
  --theme-palette-action-neutral-hover: 34 34 34;
  --theme-palette-action-danger: 220 53 69;
  --theme-palette-action-danger-hover: 190 38 54;
  --theme-palette-info: 1 90 120;
  --theme-palette-success: 47 128 0;
  --theme-palette-warning: 255 179 71;
  --theme-palette-danger: 220 53 69;
  --theme-palette-total-background: 187 243 255;
  --theme-palette-total-text: 0 51 77;
  --theme-palette-total-border: 127 232 255;
}



/* source: catalog/view/stylesheet/deceti/deceti-0/tokens.css */
/* DECETI design tokens — version deceti-0. */
:root {
  --deceti-color-primary: #02b5ff;
  --deceti-color-primary-hover: #00c5f0;
  --deceti-color-primary-dark: #00334d;
  --deceti-color-primary-deep: #002638;
  --deceti-color-legacy-blue: #003366;
  --deceti-color-accent: #7fe8ff;
  --deceti-color-accent-header: #6be3fd;
  --deceti-color-accent-soft: rgba(127, 232, 255, 0.25);
  --deceti-color-accent-strong: #1ad4fd;
  --deceti-color-accent-pale: #e0f7ff;
  --deceti-color-accent-hover: #eefbff;

  --deceti-color-surface: #ffffff;
  --deceti-color-page: #eeeeee;
  --deceti-color-panel: #f8f9fa;
  --deceti-color-panel-soft: #f8f8f8;
  --deceti-color-panel-muted: #f1f5f9;
  --deceti-color-panel-gray: #ebebeb;
  --deceti-color-preview-background: rgb(var(--theme-palette-preview, 224 228 232));
  --deceti-color-text: #111827;
  --deceti-color-text-black: #000000;
  --deceti-color-text-strong: #0f172a;
  --deceti-color-text-dark: #222222;
  --deceti-color-text-neutral: #444444;
  --deceti-color-text-brand: #00334d;
  --deceti-color-text-muted: #6b7280;
  --deceti-color-border: #d4d9df;
  --deceti-color-border-control: #cbd5e1;
  --deceti-color-border-soft: #dfe6df;
  --deceti-color-border-dotted: #d9e5ee;
  --deceti-color-border-muted: #dddddd;
  --deceti-color-border-dark: #a0a0a0;
  --deceti-color-focus: #60a5fa;
  --deceti-color-focus-alt: #5e9eff;

  --deceti-color-action-design: #00334d;
  --deceti-color-action-upload: #d40b78;
  --deceti-color-action-upload-dark: #d0117b;
  --deceti-color-action-upload-hover: #fd1f9a;
  --deceti-color-action-template: #2f8000;
  --deceti-color-action-template-hover: #45c603;
  --deceti-color-action-primary: #0b5fff;
  --deceti-color-action-primary-border: #0a4bd9;
  --deceti-color-action-primary-hover: #2a6dff;
  --deceti-color-action-primary-hover-border: #3a7bff;
  --deceti-color-warning: #ffb347;
  --deceti-color-warning-yellow: #fccd01;
  --deceti-color-warning-yellow-hover: #ffe600;
  --deceti-color-warning-gold: #ffc32b;
  --deceti-color-danger: #dc3545;
  --deceti-color-danger-text: #eb340a;
  --deceti-color-danger-red: #ec0909;
  --deceti-color-success: #2f8000;
  --deceti-color-carousel-accent: #e84a64;
  --deceti-color-shadow-blue: #0f067e;
  --deceti-color-brand-pink: #cf0075;
  --deceti-color-border-shipping: #2a3b44;
  --deceti-color-info-background: #015a78;
  --deceti-color-info-text: #04293c;
  --deceti-color-heading: #14293c;
  --deceti-color-light-text: #f2f2f2;
  --deceti-color-off-white: #f0f0f0;
  --deceti-color-control-muted: #94a3b8;

  --deceti-color-footer-background: #232323;
  --deceti-color-footer-text: #f0f0f0;

  --calc-accent: #7fe8ff;
  --calc-accent-soft: #bbf3ff;
  --calc-accent-text: #00334d;
  --calc-focus: #02b5ff;
  --calc-focus-ring: rgba(127, 232, 255, 0.45);
  --calc-frame-outline: #1ad4fd;
  --calc-error-text: #b94a48;
  --calc-error-background: #f2dede;
  --calc-error-border: #eed3d7;

  --deceti-radius-control: 9999px;
  --deceti-radius-block: 15px;
  --deceti-radius-header: 20px;
}



/* source: catalog/view/stylesheet/deceti/deceti-0/header.css */
/* DECETI-0 header layout, service information, logo and announcement. */
.deceti-container { max-width: 1300px; margin: 0 auto; padding: 0 15px; }
.deceti-top-info-wrap, .deceti-header { background: var(--deceti-color-surface); }
.deceti-top-info-wrap .deceti-container { width: min(1340px, calc(100% - 30px)); max-width: 1340px; padding-right: 0; padding-left: 0; }
.deceti-top-info { display: flex; align-items: center; justify-content: space-between; column-gap: clamp(18px, 2.2vw, 36px); row-gap: 12px; padding: 10px 0; flex-wrap: nowrap; }
.deceti-info-item { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--deceti-color-text-black); white-space: nowrap; }
.deceti-info-icon { width: 34px; min-width: 34px; display: inline-flex; align-items: center; justify-content: center; }
.deceti-info-item img { height: 35px; width: auto; display: block; }
.deceti-info-icon i { font-size: 31px; line-height: 1; color: var(--deceti-color-text-black); }
.deceti-info-item h3 { margin: 0; font-size: 22px; font-weight: 500; line-height: 1.2; }
.deceti-bbb { display: flex; flex: 0 0 auto; align-items: center; justify-content: center; background: var(--deceti-color-primary-deep, #003b57); padding: 6px 10px; border-radius: 10px; }
.deceti-bbb-image { display: block; width: 162px; height: auto; border: 0; }
.deceti-info-item:hover .deceti-phone, .deceti-info-item:focus .deceti-phone { color: var(--deceti-color-accent-header); }
.deceti-header-inner { display: flex; min-height: 134px; align-items: center; justify-content: space-between; padding-top: 0; }
.deceti-logo img { max-width: 323px; height: auto; }
.deceti-top-message-box { margin-top: 0; background-color: var(--deceti-color-accent-header); color: var(--deceti-color-info-text); font-size: 32px; font-weight: 400; border-radius: 20px; padding: 10px 18px; max-width: 680px; text-align: center; }
.deceti-phone { margin: 0; color: var(--deceti-color-text-black); white-space: nowrap; }
@media (max-width: 991px) {
  .deceti-top-info { flex-direction: column; gap: 10px; }
  .deceti-header-inner { min-height: 0; padding: 16px 0; flex-direction: column; gap: 12px; }
  .deceti-top-message-box { width: 100%; max-width: 100%; font-size: 20px; }
}
@media (min-width: 992px) and (max-width: 1399px) {
  .deceti-top-info { column-gap: 16px; }
  .deceti-info-icon { width: 32px; min-width: 32px; }
  .deceti-info-icon i { font-size: 29px; }
  .deceti-info-item h3 { font-size: 18px; }
  .deceti-bbb-image { width: 145px; }
}

/* Home CMS content is rendered after the header and may bring legacy
   typography with it. Header chrome must never inherit that page font. */
html body :is(
  .deceti-top-info-wrap,
  .deceti-header,
  .deceti-top-info,
  .deceti-info-item,
  .deceti-info-item h3,
  .deceti-phone,
  .deceti-top-message-box,
  .deceti-megamenu-background,
  .deceti-menu-wrap,
  .deceti-megamenu,
  .deceti-megamenu a,
  .deceti-submenu,
  .deceti-mobile-toggle
) {
  font-family: Arial, Helvetica, sans-serif !important;
}



/* source: catalog/view/stylesheet/deceti/deceti-0/menu.css */
/* Database-driven desktop mega menu and mobile accordion. */
.deceti-megamenu-background{position:relative;z-index:70;margin-top:12px;background:transparent}
.deceti-menu-wrap{max-width:1340px;margin:0 auto;overflow:visible;border-radius:20px 20px 0 0;background:var(--deceti-color-primary-dark)}
.deceti-megamenu{display:flex;align-items:center;justify-content:center;gap:28px;margin:0;padding:0;list-style:none}
.deceti-megamenu>li{position:relative}
.deceti-megamenu>li>a{display:inline-block;padding:20px 0;color:var(--deceti-color-surface);background:transparent!important;font-size:22px;font-weight:700;line-height:normal;text-align:left;text-decoration:none}
.deceti-megamenu>li>a:hover,.deceti-megamenu>li>a:focus{color:var(--deceti-color-accent-header);background:transparent!important;outline:0}
.deceti-megamenu>li.has-submenu>a{padding-right:0}.deceti-megamenu>li.has-submenu>a::after{position:static;margin-left:6px;content:"\25BC";color:var(--deceti-color-accent-header);font-family:inherit;font-size:12px}
.deceti-megamenu>li.has-submenu:hover>a::after,.deceti-megamenu>li.has-submenu:focus-within>a::after{transform:none}
.deceti-home>a{width:auto;padding-right:0!important;padding-left:0!important;font-size:22px!important}.deceti-menu-loading{align-items:center;padding:20px 0;color:rgba(255,255,255,.75);font-weight:700}
.deceti-submenu{position:absolute;z-index:9999;top:calc(100% + 10px);left:0;width:min(300px,calc(100vw - 40px));padding:11px;border:1px solid rgba(0,51,77,.14);border-radius:14px;background:var(--deceti-color-surface);box-shadow:0 24px 60px rgba(0,51,77,.24);opacity:0;visibility:hidden;transform:translateY(9px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease}
.deceti-submenu::before{position:absolute;top:-12px;left:0;width:100%;height:14px;content:""}.deceti-submenu-wide{left:-70px;width:min(520px,calc(100vw - 40px))}
.deceti-submenu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px}.deceti-submenu ul{margin:0;padding:0;list-style:none}.deceti-submenu-column{display:grid;align-content:start;gap:3px}.deceti-submenu li{margin:0;padding:0}
.deceti-submenu li>a{display:flex;min-height:48px;padding:10px 11px;border:1px solid transparent;border-radius:9px;align-items:center;color:var(--deceti-color-primary-dark);background:transparent!important;font-size:18px;font-weight:750;line-height:1.2;text-decoration:none;transition:color .17s ease,background-color .17s ease,border-color .17s ease,transform .17s ease}
.deceti-submenu li>a::before{width:7px;height:7px;margin-right:10px;border-radius:50%;content:"";flex:0 0 7px;background:var(--deceti-color-accent-header)}
.deceti-theme.deceti-0 .deceti-submenu li>a:hover,.deceti-theme.deceti-0 .deceti-submenu li>a:focus,.deceti-theme.deceti-0 .deceti-submenu li>a:focus-visible,.deceti-theme.deceti-0 .deceti-submenu li>a.active,.deceti-theme.deceti-0 .deceti-submenu li>a[aria-current="page"]{border-color:var(--deceti-color-primary-dark)!important;color:#fff!important;background:var(--deceti-color-primary-dark)!important;outline:0;transform:translateX(3px)}
.deceti-theme.deceti-0 .deceti-submenu li>a:hover::before,.deceti-theme.deceti-0 .deceti-submenu li>a:focus::before,.deceti-theme.deceti-0 .deceti-submenu li>a.active::before,.deceti-theme.deceti-0 .deceti-submenu li>a[aria-current="page"]::before{background:var(--deceti-color-accent-header)!important}
.deceti-submenu-promo{display:block;overflow:hidden;min-height:120px;border-radius:10px;background:#f1f5f9}.deceti-submenu-promo img{display:block;width:100%;height:100%;min-height:120px;object-fit:cover}.deceti-submenu-nested{padding-left:12px!important}.deceti-submenu-nested a{min-height:38px!important;font-size:13px!important}
.deceti-mobile-toggle{display:none;width:100%;padding:14px 15px;border:0;color:var(--deceti-color-surface);background:var(--deceti-color-primary-dark);font-size:18px;font-weight:800;text-align:left}.deceti-mobile-toggle span{float:right;font-size:22px}
@media(min-width:992px){.deceti-megamenu>li.has-submenu:hover>.deceti-submenu,.deceti-megamenu>li.has-submenu:focus-within>.deceti-submenu{opacity:1;visibility:visible;transform:translateY(0)}}
@media(max-width:991px){.deceti-mobile-toggle{display:block}.deceti-megamenu{display:none;flex-direction:column;gap:0;border-radius:0}.deceti-megamenu.open{display:flex}.deceti-megamenu>li{display:block}.deceti-megamenu>li>a{display:block;padding:14px 15px;font-size:20px}.deceti-home>a{width:100%;padding-right:15px!important;padding-left:15px!important}.deceti-megamenu>li.open>a::after{transform:none}.deceti-submenu,.deceti-submenu-wide{position:static;display:none;width:100%;margin-top:0;padding:9px;opacity:1;visibility:visible;transform:none;box-shadow:none}.deceti-megamenu>li.open>.deceti-submenu{display:block}.deceti-submenu-grid{grid-template-columns:1fr}.deceti-submenu li>a{min-height:44px}.deceti-submenu-promo{display:none}}



/* source: catalog/view/stylesheet/deceti/deceti-0/products.css */
/*========================================= PRODUCTS LIST START ===============================*/
.productlist {
    display: flex;
    flex-wrap: wrap;
    gap: 60px; /* Matches spacing in `.i-grid` */
    justify-content: center;
    padding: 0;
    margin: 10px 0;
    list-style-type: none;
    margin-top: 30px;
}

.productlist li {
    flex: 1 1 calc(30% - 20px);
    max-width: 350px;
    background-color: var(--deceti-color-panel-soft);
    padding: 15px;
    border-radius: 10px;
    border: 2px solid var(--deceti-color-border-soft);
    text-align: center;
    transition: transform 0.3s ease, outline 0.3s ease, background-color 0.3s ease;
    box-sizing: border-box;
}

.productlist li:hover {
    transform: scale(1.05);
    outline: 4px solid var(--deceti-color-accent-strong);
    background-color: var(--deceti-color-accent-pale);
}

.productlist img {
    width: min(100%, var(--product-card-image-width, 250px));
    height: var(--product-card-image-height, 250px);
    max-width: 100%;
    object-fit: contain;
    border-radius: 10px;
    transition: transform 0.3s ease, border 0.3s ease;
}

.productlist :is(h1, h2, h3, h4, h5, h6) {
    font-size: var(--font-heading-2-size, 32px);
}

.productlist img:hover {
    transform: scale(1.03);
    /* border: 2px solid #333; */
}

.productlist a {
    text-decoration: none;
    color: inherit;
    display: block; /* Ensures clickable area is full width */
    user-select: none; /* Prevents text selection */
}

/* Mobile-friendly adjustments */
@media (max-width: 768px) {
    .productlist {
        gap: 15px; /* Slightly tighter spacing for mobile */
    }
    .productlist li {
        flex: 1 1 100%;
        max-width: 100%;
    }
}
/*========================================= PRODUCTS LIST END ===============================*/



/* source: catalog/view/stylesheet/deceti/deceti-0/buttons.css */
/*========================================= BUTTONS START ===============================*/
.deceti-buttons-scope .deceti-btns{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.75rem; padding:0; margin:0; list-style:none;
}
.deceti-buttons-scope .deceti-btn{
  --btn-bg:var(--deceti-color-action-primary); --btn-border:var(--deceti-color-action-primary-border); --btn-bg-hover:var(--deceti-color-action-primary-hover); --btn-border-hover:var(--deceti-color-action-primary-hover-border); --btn-text:var(--deceti-color-surface);
  display:inline-flex; align-items:center; justify-content:center; gap:.65rem; width:100%;
  padding:1rem 1.35rem; border-radius:9999px;
  background:var(--btn-bg); color:var(--btn-text); border:2px solid var(--btn-border);
  text-decoration:none; font-weight:800; letter-spacing:.02em; font-size:clamp(14px,1.7vw,16px);
  transition:background-color .2s ease, border-color .2s ease, transform .1s ease;
}
.deceti-buttons-scope .deceti-btn:hover{
  background:var(--btn-bg-hover); border-color:var(--btn-border-hover); transform:translateY(-1px);
}
.deceti-buttons-scope .deceti-btn:active{ transform:translateY(0); }
.deceti-buttons-scope .deceti-btn .fa{ font-size:1.15em; line-height:1; }
.deceti-buttons-scope .deceti-btn__label{ white-space:nowrap; }
@media (max-width:480px){ .deceti-buttons-scope .deceti-btn__label{ white-space:normal; text-align:center; } }

/*========================================= BUTTONS END ===============================*/



/* source: catalog/view/stylesheet/deceti/deceti-0/theme-buttons.css */
/* Bootstrap button variables shared by the storefront theme. */
.btn-primary {
  --bs-btn-color: var(--deceti-color-surface); --bs-btn-bg: var(--deceti-color-primary-dark); --bs-btn-border-color: var(--deceti-color-primary-dark);
  --bs-btn-hover-color: var(--deceti-color-surface); --bs-btn-hover-bg: var(--deceti-color-primary-hover); --bs-btn-hover-border-color: var(--deceti-color-primary-hover);
  --bs-btn-focus-shadow-rgb: 0, 197, 240; --bs-btn-active-color: var(--deceti-color-surface); --bs-btn-active-bg: var(--deceti-color-primary-deep); --bs-btn-active-border-color: var(--deceti-color-primary-deep);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); --bs-btn-disabled-color: var(--deceti-color-surface); --bs-btn-disabled-bg: var(--deceti-color-primary-dark); --bs-btn-disabled-border-color: var(--deceti-color-primary-dark);
}
.btn-outline-primary {
  --bs-btn-color: var(--deceti-color-surface); --bs-btn-bg: var(--deceti-color-primary-hover); --bs-btn-border-color: var(--deceti-color-primary-hover);
  --bs-btn-hover-color: var(--deceti-color-surface); --bs-btn-hover-bg: var(--deceti-color-primary-hover); --bs-btn-hover-border-color: var(--deceti-color-primary-dark);
  --bs-btn-focus-shadow-rgb: 0, 197, 240; --bs-btn-active-color: var(--deceti-color-surface); --bs-btn-active-bg: var(--deceti-color-primary-dark); --bs-btn-active-border-color: var(--deceti-color-primary-dark);
  --bs-btn-disabled-color: var(--deceti-color-surface); --bs-btn-disabled-bg: var(--deceti-color-primary-hover); --bs-btn-disabled-border-color: var(--deceti-color-primary-hover);
}



/* source: catalog/view/stylesheet/deceti/deceti-0/product-page.css */
/*========================================= TOP PAGE DESIGN START ===============================*/

  html, body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-size: 16px; /* Base font size for scalability */
  }

  *, *::before, *::after {
    box-sizing: inherit;
  }


.top-message-box {
  background-color: var(--deceti-color-accent-header);
  color: var(--deceti-color-primary-dark);
  font-size: 32px;
  border-radius: 20px;
  padding: 10px;
  width: 80%;
  margin-top: 45px;
  text-align: center;
  float: left;
}


  .text-block {
   /* opacity: 0;*/
       padding-left: 20px;
       padding-right: 20px;
/*    transform: translateY(20px);
    animation: slideDown 0.3s ease-out forwards;
    animation-delay: 0.1s;*/
  }

  @keyframes slideDown {
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .image-wrapper {
    background-color: var(--deceti-color-primary-dark);
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .image-container {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    position: relative;
    margin: 0;
  }

  .image-left {
    width: 70%;
    height: auto;
    object-fit: cover;
    z-index: 1;
    display: block;
  }

  .image-right-block {
    width: 35%;
    min-width: 280px;
    max-width: 592px;
    background-color: var(--deceti-color-accent-strong);
    border-radius: 0px;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    height: auto;
    margin-left: -85px;
  }

  .message-overlay {
    color: var(--deceti-color-heading);
    text-align: left;
    width: 100%;
   /* margin-top: -40px;*/
  }

  .message-overlay h1 {
    font-size: 26px;
    margin-bottom: 15px;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 10px;
    color:var(--deceti-color-primary-dark);
  }

  .message-overlay h1 img {
    width: 70px;
    height: 70px;
  }

  .message-overlay p {
    font-size: 18px;
    color: var(--deceti-color-primary-dark);
    /*padding-left:35px;*/
    margin-bottom: 12px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    line-height: 1.5;
  }

  .message-overlay img.icon {
    width: 25px;
    margin-top: 2px;
    flex-shrink: 0;
  }

  .magenta-banner {
    width: 100%;
    background-color: var(--deceti-color-brand-pink);
    padding: 10px 0;
    text-align: center;
  }

  .magenta-banner span {
    color: white;
    font-size: 2.2vw;
    font-weight: bold;
    display: inline-block;
  }


@media (max-width: 915px) {
  .image-container {
    flex-direction: column;
  }


.top-message-box {
    font-size: 26px;
    padding: 10px;
    width: 90%;
    margin-left: 40px;
    margin-top: 35px;
 
}

  .message-overlay {
    margin-top: 0px;
  }

  .image-left,
  .image-right-block {
    width: 100%;
    margin-left: 0;
    max-width: none; /* 👈 override the max-width */
  }


  .image-right-block {
    height: 85vh; /* 👈 full screen height */
  }
}



@media (max-width: 500px) {
.top-message-box {
        font-size: 26px;
        padding: 10px;
   	width: 80%;
        margin-left: 40px;
        margin-top: 35px;
        margin-bottom: 20px;
    }
    .image-right-block {
        height: 48vh;
    }

.magenta-banner span
 {

    font-size: 20px;
}

.blue-top-line {
   font-size: 18px;
}
.blue-top-text {
    font-size: 18px;
}


}




@media (max-width: 400px) {

.top-message-box {
        font-size: 26px;
        padding: 10px;
   	width: 80%;
        margin-left: 40px;
        margin-top: 35px;
        margin-bottom: 20px;
    }
    .image-right-block {
        height: 71vh;
    }

.magenta-banner span
 {

    font-size: 20px;
}

.blue-top-line {
   font-size: 18px;
}
.blue-top-text {
    font-size: 14px;
}


}

.centered-text {
  text-align: center;
}

.google-review {
  text-align: center;
  font-family: sans-serif;
  text-decoration: none;
  color: inherit;
  display: inline-block;
  margin-top: 8px;
}

.google-review .rating-score {
  margin-left: 4px;
  font-size: 24px; 
  font-weight: 600;
}

.google-review .stars {
  color: var(--deceti-color-warning-gold);
  font-size: 30px;
}

.google-review .source {
  margin-left: 6px;
  font-size: 20px;
}

/* Responsive adjustments */
@media (max-width: 920px) {
  .google-review .rating-score {
    font-size: 16px;
  }

.google-review {
  margin-top: 0px;
}


  .google-review .stars {
    font-size: 18px;
  }

  .google-review .source {
    font-size: 13px;
  }
}

@media (max-width: 500px) {



  .google-review .rating-score {
    font-size: 8px;
  }
.google-review {
  margin-top: 0px;
}

  .google-review .stars {
    font-size: 8px;
  }

  .google-review .source {
    font-size: 8px;
  }
}
.message-overlay p {
/*  font-size: 18px;*/
}


  .content-block {
    background-color: var(--deceti-color-surface);
    border: 2px solid var(--deceti-color-legacy-blue); /* dark blue */
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    font-size: 2rem; /* Larger font size */
    width: 100%; /* Full width of parent */
  }

  .content-block h2,
  .content-block h3,
  .content-block h4 {
    color: var(--deceti-color-legacy-blue);
  }

  .cta-btn a {
    font-size: 1.5rem;
    padding: 0.75rem 1.5rem;
  }

  .btn-outline-primary {
    border-width: 2px;
  }

  .deceti-page-container {
    max-width: 100%;
    margin: auto;
  }

  /* Layout for small content blocks in the same row */
  .feature-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
  }

  .feature-box {
    flex: 1;
    border-radius: 8px;
    text-align: center;
    font-size: 24px; /* Increased font size */
  }

  .feature-box h4 {
    font-size: 18px; /* Make h4 big */
    margin-bottom: 1rem;
  }

  .feature-box h2 {
    font-size: 24px; /* Larger h2 */
    margin-bottom: 1.5rem; /* Adjust margin to give space */
  }

  .content-block.text-center h2 {
    font-size: 24px; 
    margin-bottom: 2rem;
    font-weight:600;
  }

  .content-block.text-center p {
    font-size: 16px; 
  }


  .content-block.text-center h3 {
    font-size: 24px; 
    margin-bottom: 1.5rem;
    font-weight:600 !important;
  }

  .content-block.text-center h4 {
    font-size: 24px; /* Adjusted h4 size */
    margin-bottom: 1.5rem;
    font-weight:600 !important;

  }
.mt-3 {
    font-size: 18px !important;
    margin-top: 1rem;
  }


  .content-block {
    background-color: var(--deceti-color-surface);
    border: 2px solid var(--deceti-color-legacy-blue); /* dark blue */
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    font-size: 2rem; /* Larger font size */
    width: 100%; /* Full width of parent */
  }

  .content-block h2,
  .content-block h3,
  .content-block h4 {
    color: var(--deceti-color-legacy-blue);
  }

  .cta-btn a {
    font-size: 1.5rem;
    padding: 0.75rem 1.5rem;
  }

  .btn-outline-primary {
    border-width: 2px;
  }

  .deceti-page-container {
    max-width: 100%;
    margin: auto;
  }

  /* Layout for small content blocks in the same row */
  .feature-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
  }

  .feature-box {
    flex: 1;
    border-radius: 8px;
    text-align: center;
    font-size: 24px; /* Increased font size */
  }

  .feature-box h4 {
    font-size: 18px; /* Make h4 big */
    margin-bottom: 1rem;
  }

  .feature-box h2 {
    font-size: 24px; /* Larger h2 */
    margin-bottom: 1.5rem; /* Adjust margin to give space */
  }

  .content-block.text-center h2 {
    font-size: 24px; 
    margin-bottom: 2rem;
    font-weight:600;
  }

  .content-block.text-center p {
    font-size: 16px; 
  }


  .content-block.text-center h3 {
    font-size: 24px; 
    margin-bottom: 1.5rem;
    font-weight:600 !important;
  }

  .content-block.text-center h4 {
    font-size: 24px; /* Adjusted h4 size */
    margin-bottom: 1.5rem;
    font-weight:600 !important;

  }
.mt-3 {
    font-size: 18px !important;
    margin-top: 1rem;
  }

.custom-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.custom-list li a {
    color: white;
    text-decoration: none;
}

.custom-list li a:hover {
    color: var(--deceti-color-accent-strong);       /* Change text color on hover */
    text-decoration: none;  /* Keep no underline */
}




/*========================================= TOP PAGE DESIGN END ===============================*/
 
.deceti-content-block .row { margin: 20px 0; }
.deceti-block-topblock { margin-top: 0px; }



/* source: catalog/view/stylesheet/deceti/deceti-0/calculator.css */
/*========================================= CALCULATOR START ===============================*/




.svg-button svg path:first-of-type {
  transition: fill 0.3s ease;
  fill: var(--deceti-color-warning-yellow); /* original color */
}

.svg-button:hover svg path:first-of-type {
  fill: var(--deceti-color-warning-yellow-hover); /* new color on hover */
}
.blue-top-line {
  background-color: var(--deceti-color-accent-strong);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  color: var(--deceti-color-primary-dark);
  font-weight: bold;
  font-size: 25px;
  text-align: center;

  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
}

.blue-top-text {
  display: block;
}

.vertical-group {
  float: left;
  width: 50%; 
  box-sizing: border-box; 
}


.vertical-group > div {
  clear: both;
}
.blocksize {
  margin-bottom: 10px;
}



@media screen and (max-width: 768px) {
  .vertical-group {
    float: none;
    width: 100%; 
  }
  

  .vertical-group > div {
    display: block; 
  }
  
  .blocksize {
    width: 100%; 
  }
}
.btn-custom-color-startdesign {
    background: var(--deceti-color-primary-dark) !important;
}

.btn-custom-color-startdesign:hover {
    background: var(--deceti-color-primary-hover) !important;
}


.btn-custom-color-designonline {
    background: var(--deceti-color-primary-dark) !important;
}

.btn-custom-color-designonline:hover {
    background: var(--deceti-color-primary-hover) !important;
}





.btn-custom-color-uploadartwork {

    background: var(--deceti-color-action-upload-dark) !important;
}

.btn-custom-color-uploadartwork:hover {
    background: var(--deceti-color-action-upload-hover) !important;
}


.btn-custom-color-templates {
    background: var(--deceti-color-action-template) !important;
}

.btn-custom-color-templates:hover {
    background: var(--deceti-color-action-template-hover) !important;
}

@media (max-width: 800px) {
.calc {
    width:100% !important;
}
}


.custom-contact-message {
  float: left;
  width: 100%;
  padding-left: 1px;
  padding-right: 1px;
  text-align: center;
  height: 20px;
}

.custom-contact-message-text {
  padding-top: 20px;
  display: inline-block;
}
@media (max-width: 767.98px) {
  .custom-contact-message {
    height: 100px;
  }
}



/* Force checkbox + label to align properly */
.form-check {
    display: flex;
    align-items: center;
}

/* Big checkbox + remove Bootstrap's default top margin */
.form-check-input.checkbox-lg {
    width: 1.3rem;
    height: 1.3rem;
    margin-top: 0 !important;  /* removes Bootstrap default 0.25rem */
}

/* Big text label (24px) aligned with checkbox */
.form-check-label.label-lg {
    font-size: 16px !important;
    line-height: 1.2;
    margin-left: 0.5rem;
    margin-bottom: 0;
}


.calculator {
border: 1px solid var(--deceti-color-primary-dark);
border-radius: 15px;
background-color: var(--deceti-color-panel-gray);
background-position: top center;
background-repeat: no-repeat;
background-attachment: scroll;
font-size:18px;
    user-select: none; /* Prevent text selection */
    -webkit-user-select: none; /* For Safari */
    -moz-user-select: none; /* For Firefox */
    -ms-user-select: none; /* For IE/Edge */

}

.calculator  .col-md-6 {
    width: 50%;
    padding-left:10px;
    padding-right:10px;
}



@media (max-width: 960px) {
.calculator {
border-radius: 15px;
background-color: var(--deceti-color-panel-gray);
background-position: top center;
background-repeat: no-repeat;
background-attachment: scroll;
font-size:15px;
}

.calculator  .col-md-6 {
    width: 100%;
    padding-left:0px;
    padding-right:0px;
    margin-top:10px;
}

.calculator  .col-md-6 .col-md-4 {
    width: 50%;
  float:left;
}

.calculator .col-md-6 .col-md-4.blocksize {
  width: 50% !important;
  float:left;
}            

.calculator .col-md-6 .col-md-2.blocksize {
  width: 50% !important;
  float:left;
}            
.calculator .col-md-6 .col-md-3.blocksize {
  width: 50% !important;
  float:left;
}            
.calculator .col-md-6 .col-md-5.blocksize {
  width: 50% !important;
  float:left;
}            


.calculator .row .col-md-4.blockbutton {
  width: 100% !important;
}            




}

.button, .btn {
    color: var(--deceti-color-surface) !important;
    border-radius:20px;
}
.col-md-6 {
float:left !important;
}

/* Bigger, rounded selects only inside .calculator */
.calculator select {
  display: block;
  width: 100%;
  /* roomy padding with space for the custom arrow */
  padding: 0.75rem 2.75rem 0.75rem 1rem;
  font-size: 18px;
  line-height: 1.4;

  border: 2px solid var(--deceti-color-border-control);        /* slate-300 */
  border-radius: 9999px;             /* pill shape */
  background-color: var(--deceti-color-surface);
  color: var(--deceti-color-text-strong);                    /* slate-900 */

  /* remove native arrows & style consistently */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  /* custom arrow */
  background-image:
    url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7l5 5 5-5' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 12px 12px;

  box-shadow: inset 0 1px 2px rgba(0,0,0,.04);
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.calculator select:hover {
  border-color: var(--deceti-color-control-muted); /* slate-400 */
}

.calculator select:focus {
  outline: 0;
  border-color: var(--deceti-color-focus);             /* blue-400 */
  box-shadow: 0 0 0 3px rgba(59,130,246,.25);
}

.calculator select:disabled {
  background-color: var(--deceti-color-panel-muted);         /* slate-100 */
  color: var(--deceti-color-control-muted); /* slate-400 */
  cursor: not-allowed;
}

/* Extra large variant (optional) */
.calculator .select-lg {
  font-size: 18px;
  padding: .75rem 2rem .75rem .875rem;
  border-radius: 9999px;
}

.product-options
.select-lg {
  font-size: 18px;
  padding: .75rem 2rem .75rem .875rem;
  border-radius: 9999px;
}


/* Hide IE/old Edge dropdown arrow */
.calculator select::-ms-expand { display: none; }


/*========================================= CALCULATOR END ===============================*/

/* DECETI PAGE pricingcalculator-h */
.deceti-page-pricingcalculator-h /* ===== Finishing outer white box ===== */
  .deceti-finishing .finishing-module{
    margin: 10px 20px 0 20px;
    background:#fff;
    border-radius:15px;
    padding:14px 0 18px 0;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-module-title{
    margin: 0 20px;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-module-title{
    border-radius:15px;
    background-color: var(--calc-accent) !important;
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text) !important;
    font-weight:700;
    font-size:18px;
    margin:0 20px;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-card{ margin-top:10px; }

  .deceti-page-pricingcalculator-h .deceti-finishing dl{margin:0;}
  .deceti-page-pricingcalculator-h .deceti-finishing dt{margin:0 0 10px 0;}
  .deceti-page-pricingcalculator-h .deceti-finishing dd{margin:10px 0 0 0;}

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-header{
    border-radius:15px;
    background-color: var(--calc-accent);
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text);
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
    border-radius:15px;
    background-color: var(--calc-accent-soft);
    padding:10px 20px;
    text-align:left;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishing-title{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px 0;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing .finishingnotice{
    display:inline-block;
    margin:6px 0 8px 0;
    padding:4px 10px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    background: rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-h .deceti-finishing label{
    font-size:18px;
    font-weight:600;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing select{
    width:100%;
    max-width:420px;
    border-radius:10px;
    padding:8px 10px;
  }

  .deceti-page-pricingcalculator-h .deceti-finishing input[type="checkbox"]{
    transform: scale(1.2);
    margin: 4px 6px 0 0;
  }

  .deceti-page-pricingcalculator-h .blue-top-line{
    background-color:#1ad4fd;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    color:var(--calc-accent-text);
    font-weight:bold;
    font-size:25px;
    text-align:center;
    display:flex;
    justify-content:center;
    align-items:center;
    height:50px;
  }

  .deceti-page-pricingcalculator-h .blue-top-text{display:block;}

  .deceti-page-pricingcalculator-h /* Gallery */
  .native-gallery-thumb{padding:0;border:0;background:transparent;}
  .deceti-page-pricingcalculator-h .native-gallery-thumb img{
    width:120px;
    height:120px;
    object-fit:cover;
    border-radius:14px;
    border:3px solid transparent;
    transition:border-color .2s ease,transform .2s ease;
  }
  .deceti-page-pricingcalculator-h .native-gallery-thumb.is-active img{
    border-color:var(--thumb-active-color);
    transform:scale(1.05);
  }

  .deceti-page-pricingcalculator-h /* Shapes */
  .icon{max-width:100px;max-height:100px;}
  .deceti-page-pricingcalculator-h .icon:hover{fill:var(--deceti-color-primary);}
  .deceti-page-pricingcalculator-h .col-md-3.shape-div.shapezero{
    background:var(--deceti-color-primary);
    border-radius:20px;
    color:#fff;
    text-align:center;
    width:100px;
    height:100px;
    margin-left:auto;
    margin-right:auto;
    padding:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:1.2;
    word-break:break-word;
    overflow:hidden;
  }

  .deceti-page-pricingcalculator-h .icon-scrollbar{
    overflow-x:hidden;
    overflow-y:scroll;
    height:200px;
    width:100%;
    scrollbar-width: thin;
    scrollbar-color: #888 var(--deceti-color-primary);
  }

  .deceti-page-pricingcalculator-h /* Quantity list */
  ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list>label{
    display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
  }
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list>label>.table-cell{
    flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
  }
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
  .deceti-page-pricingcalculator-h ul.quantity-list .table-cell.save{
    float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
  }
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
  .deceti-page-pricingcalculator-h ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

  .deceti-page-pricingcalculator-h ul.quantity-list .selected{
    background-color: var(--calc-accent-soft) !important;
    color: var(--calc-accent-text) !important;
  }
  .deceti-page-pricingcalculator-h ul.quantity-list .selected .table-cell,

  .deceti-page-pricingcalculator-h ul.quantity-list .selected .table-cell.save{
    color: var(--calc-accent-text) !important;
  }

  .deceti-page-pricingcalculator-h ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

  /* Totals typography: values supplied by the server bridge. */
  .deceti-page-pricingcalculator-h .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
  .deceti-page-pricingcalculator-h .total h4{font-size:16px;font-weight:500;}

  @media (max-width:900px){
    .deceti-page-pricingcalculator-h .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-h .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
    .deceti-page-pricingcalculator-h .responsive .container .total h4{font-size:13px;font-weight:500;}
    .deceti-page-pricingcalculator-h .responsive .quantity-list{font-size:14px;}
  }

  @media (max-width:500px){
    .deceti-page-pricingcalculator-h .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-h .responsive .quantity-list{font-size:14px;}
    .deceti-page-pricingcalculator-h .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
    .deceti-page-pricingcalculator-h .responsive .container .total h4{font-size:14px;font-weight:500;}
  }

  .deceti-page-pricingcalculator-h .tooltipquantity{
    font-weight:500;
    font-size:100%;
    color:#fff;
    top:-12px;
    min-width:30px;
    background:rgb(255,66,66);
    border-radius:4px;
    padding:5px 10px;
    text-align:center;
  }

  .deceti-page-pricingcalculator-h #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
  .deceti-page-pricingcalculator-h #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

  .deceti-page-pricingcalculator-h /* Size selector UI */
  #sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-1{
    display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
  }
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-1 input[type="radio"]+label{
    display:inline-block;
    cursor:pointer;
    font-weight:700;
    font-size:16px;
    line-height:1.2;
    min-width:110px;
    min-height:44px;
    padding:10px 12px;
    text-align:center;
    border:1px solid #ccc;
    border-radius:6px;
    color:#000;
    transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
  }
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
    background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
    background-position:-150%;
    background-size:400%;
    background-color:#000;
    border-color:#262626;
    color:#fff;
    cursor:default;
    pointer-events:none;
  }
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
    color:#fff;
    border-color:var(--deceti-color-focus);
    background-color:var(--deceti-color-primary);
    box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-2{display:block;}
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-2 .size-row{
    display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;width:100%;
  }
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
  .deceti-page-pricingcalculator-h #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

  .deceti-page-pricingcalculator-h .dimension-label{ font-size: 16px; font-weight: 600; }

  .deceti-page-pricingcalculator-h #product-options-calc button.btn{
    margin-bottom: 12px;
  }

  .deceti-page-pricingcalculator-h #product-options-calc button.btn:last-of-type{
    margin-bottom: 0;
  }

  .deceti-page-pricingcalculator-h /* ===== New calculator layout ===== */
  .calculator .calc-right-top,


  .calculator.deceti-page-pricingcalculator-h .calc-right-actions{
    display:block;
    width:100%;
    max-width:100%;
    float:none !important;
    clear:both;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top > .container,


  .calculator.deceti-page-pricingcalculator-h .calc-right-top > .shipping_calc_wrap,


  .calculator.deceti-page-pricingcalculator-h .calc-right-top > .deceti-quantity-savings,


  .calculator.deceti-page-pricingcalculator-h .calc-right-actions > .container{
    display:block;
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    clear:both !important;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top > .container > .col-md-12{
    width:100% !important;
    max-width:100% !important;
    float:none !important;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-row{
    display:flex;
    flex-wrap:nowrap;
    width:100%;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-card{
    flex:0 0 25% !important;
    width:25% !important;
    max-width:25% !important;
    padding-left:5px;
    padding-right:5px;
    text-align:center;
    margin-bottom:5px;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-card-inner{
    min-height:100%;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-value{
    font-size:25px;
    padding-top:10px;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-note{
    font-size:12px;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-actions .action-buttons-row{
    display:flex;
    flex-wrap:nowrap;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-actions .blockbutton{
    padding-left:5px;
    padding-right:5px;
    margin-top:0 !important;
  }

  .calculator.deceti-page-pricingcalculator-h .calc-right-actions .blockbutton input{
    width:100% !important;
    margin:0 0 5px 0 !important;
  }

  @media (max-width: 991px){
    .calculator.deceti-page-pricingcalculator-h .calc-right-top .summary-row{
      flex-wrap:wrap;
    }
    .calculator.deceti-page-pricingcalculator-h .calc-right-actions .action-buttons-row{
      flex-wrap:wrap;
    }
  }
/* END DECETI PAGE pricingcalculator-h */

/* DECETI PAGE pricingcalculator-v */
.deceti-page-pricingcalculator-v /* ===== Finishing outer white box ===== */
  .deceti-finishing .finishing-module{
    margin: 10px 20px 0 20px;
    background:#fff;
    border-radius:15px;
    padding:14px 0 18px 0;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-module-title{
    margin: 0 20px;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-module-title{
    border-radius:15px;
    background-color: var(--calc-accent) !important;
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text) !important;
    font-weight:700;
    font-size:18px;
    margin:0 20px;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-card{ margin-top:10px; }

  .deceti-page-pricingcalculator-v .deceti-finishing dl{margin:0;}
  .deceti-page-pricingcalculator-v .deceti-finishing dt{margin:0 0 10px 0;}
  .deceti-page-pricingcalculator-v .deceti-finishing dd{margin:10px 0 0 0;}

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-header{
    border-radius:15px;
    background-color: var(--calc-accent);
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text);
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
    border-radius:15px;
    background-color: var(--calc-accent-soft);
    padding:10px 20px;
    text-align:left;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishing-title{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px 0;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing .finishingnotice{
    display:inline-block;
    margin:6px 0 8px 0;
    padding:4px 10px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    background: rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-v .deceti-finishing label{
    font-size:18px;
    font-weight:600;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing select{
    width:100%;
    max-width:420px;
    border-radius:10px;
    padding:8px 10px;
  }

  .deceti-page-pricingcalculator-v .deceti-finishing input[type="checkbox"]{
    transform: scale(1.2);
    margin: 4px 6px 0 0;
  }

  .deceti-page-pricingcalculator-v .blue-top-line{
    background-color:#1ad4fd;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    color:var(--calc-accent-text);
    font-weight:bold;
    font-size:25px;
    text-align:center;
    display:flex;
    justify-content:center;
    align-items:center;
    height:50px;
  }

  .deceti-page-pricingcalculator-v .blue-top-text{display:block;}

  .deceti-page-pricingcalculator-v /* Gallery */
  .native-gallery-thumb{padding:0;border:0;background:transparent;}
  .deceti-page-pricingcalculator-v .native-gallery-thumb img{
    width:120px;
    height:120px;
    object-fit:cover;
    border-radius:14px;
    border:3px solid transparent;
    transition:border-color .2s ease,transform .2s ease;
  }
  .deceti-page-pricingcalculator-v .native-gallery-thumb.is-active img{
    border-color:var(--thumb-active-color);
    transform:scale(1.05);
  }

  .deceti-page-pricingcalculator-v /* Shapes */
  .icon{max-width:100px;max-height:100px;}
  .deceti-page-pricingcalculator-v .icon:hover{fill:var(--deceti-color-primary);}
  .deceti-page-pricingcalculator-v .col-md-3.shape-div.shapezero{
    background:var(--deceti-color-primary);
    border-radius:20px;
    color:#fff;
    text-align:center;
    width:100px;
    height:100px;
    margin-left:auto;
    margin-right:auto;
    padding:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:1.2;
    word-break:break-word;
    overflow:hidden;
  }

  .deceti-page-pricingcalculator-v .icon-scrollbar{
    overflow-x:hidden;
    overflow-y:scroll;
    height:200px;
    width:100%;
    scrollbar-width: thin;
    scrollbar-color: #888 var(--deceti-color-primary);
  }

  .deceti-page-pricingcalculator-v /* Quantity list */
  ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list>label{
    display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
  }
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list>label>.table-cell{
    flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
  }
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
  .deceti-page-pricingcalculator-v ul.quantity-list .table-cell.save{
    float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
  }
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
  .deceti-page-pricingcalculator-v ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

  .deceti-page-pricingcalculator-v ul.quantity-list .selected{
    background-color: var(--calc-accent-soft) !important;
    color: var(--calc-accent-text) !important;
  }
  .deceti-page-pricingcalculator-v ul.quantity-list .selected .table-cell,

  .deceti-page-pricingcalculator-v ul.quantity-list .selected .table-cell.save{
    color: var(--calc-accent-text) !important;
  }

  .deceti-page-pricingcalculator-v ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

  /* Totals typography: values supplied by the server bridge. */
  .deceti-page-pricingcalculator-v .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
  .deceti-page-pricingcalculator-v .total h4{font-size:16px;font-weight:500;}

  @media (max-width:900px){
    .deceti-page-pricingcalculator-v .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-v .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
    .deceti-page-pricingcalculator-v .responsive .container .total h4{font-size:13px;font-weight:500;}
    .deceti-page-pricingcalculator-v .responsive .quantity-list{font-size:14px;}
  }

  @media (max-width:500px){
    .deceti-page-pricingcalculator-v .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-v .responsive .quantity-list{font-size:14px;}
    .deceti-page-pricingcalculator-v .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
    .deceti-page-pricingcalculator-v .responsive .container .total h4{font-size:14px;font-weight:500;}
  }

  .deceti-page-pricingcalculator-v .tooltipquantity{
    font-weight:500;
    font-size:100%;
    color:#fff;
    top:-12px;
    min-width:30px;
    background:rgb(255,66,66);
    border-radius:4px;
    padding:5px 10px;
    text-align:center;
  }

  .deceti-page-pricingcalculator-v #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
  .deceti-page-pricingcalculator-v #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

  .deceti-page-pricingcalculator-v /* Size selector UI */
  #sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-1{
    display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
  }
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-1 input[type="radio"]+label{
    display:inline-block;
    cursor:pointer;
    font-weight:700;
    font-size:16px;
    line-height:1.2;
    min-width:110px;
    min-height:44px;
    padding:10px 12px;
    text-align:center;
    border:1px solid #ccc;
    border-radius:6px;
    color:#000;
    transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
  }
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
    background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
    background-position:-150%;
    background-size:400%;
    background-color:#000;
    border-color:#262626;
    color:#fff;
    cursor:default;
    pointer-events:none;
  }
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
    color:#fff;
    border-color:var(--deceti-color-focus);
    background-color:var(--deceti-color-primary);
    box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-2{display:block;}
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-2 .size-row{
    display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;width:100%;
  }
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
  .deceti-page-pricingcalculator-v #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

  .deceti-page-pricingcalculator-v .dimension-label{ font-size: 16px; font-weight: 600; }

  .deceti-page-pricingcalculator-v #product-options-calc button.btn{
    margin-bottom: 12px;
  }

  .deceti-page-pricingcalculator-v #product-options-calc button.btn:last-of-type{
    margin-bottom: 0;
  }

  .deceti-page-pricingcalculator-v /* ===== New calculator layout ===== */
  .calculator.calculator-vertical{
    width:100%;
    max-width:560px;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #form_upload > .container{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #form_upload > .container > .row{
    display:flex;
    flex-direction:column;
    width:100%;
    margin-left:0;
    margin-right:0;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .calc{
    display:flow-root;
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    clear:both !important;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .custom-contact-message{
    height:auto;
    min-height:20px;
    clear:both;
    margin-top:10px;
    margin-bottom:10px;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .custom-contact-message-text{
    padding-top:0;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #finishing_options_wrapper{
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #finishing_options_wrapper .finishing-module{
    width:100%;
    margin-left:0;
    margin-right:0;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #finishing_options_wrapper .finishing-module-title{
    margin-left:12px;
    margin-right:12px;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical #finishing_options_wrapper .finishing-card{
    margin-left:12px;
    margin-right:12px;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .calc-right-actions .action-buttons-row{
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    gap:10px;
    margin-left:0;
    margin-right:0;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .calc-right-actions .blockbutton{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    padding-left:0;
    padding-right:0;
  }

  .calculator.deceti-page-pricingcalculator-v.calculator-vertical .calc-right-actions .blockbutton input{
    display:block;
    width:100% !important;
    min-height:48px;
    margin:0 !important;
    white-space:normal;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top,


  .calculator.deceti-page-pricingcalculator-v .calc-right-actions{
    display:block;
    width:100%;
    max-width:100%;
    float:none !important;
    clear:both;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top > .container,


  .calculator.deceti-page-pricingcalculator-v .calc-right-top > .shipping_calc_wrap,


  .calculator.deceti-page-pricingcalculator-v .calc-right-top > .deceti-quantity-savings,


  .calculator.deceti-page-pricingcalculator-v .calc-right-actions > .container{
    display:block;
    width:100% !important;
    max-width:100% !important;
    float:none !important;
    clear:both !important;
    box-sizing:border-box;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top > .container > .col-md-12{
    width:100% !important;
    max-width:100% !important;
    float:none !important;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-row{
    display:flex;
    flex-wrap:nowrap;
    width:100%;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-card{
    flex:0 0 25% !important;
    width:25% !important;
    max-width:25% !important;
    padding-left:5px;
    padding-right:5px;
    text-align:center;
    margin-bottom:5px;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-card-inner{
    min-height:100%;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-value{
    font-size:25px;
    padding-top:10px;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-note{
    font-size:12px;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-actions .action-buttons-row{
    display:flex;
    flex-wrap:nowrap;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-actions .blockbutton{
    padding-left:5px;
    padding-right:5px;
    margin-top:0 !important;
  }

  .calculator.deceti-page-pricingcalculator-v .calc-right-actions .blockbutton input{
    width:100% !important;
    margin:0 0 5px 0 !important;
  }

  @media (max-width: 991px){
    .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-row{
      flex-wrap:wrap;
    }
    .calculator.deceti-page-pricingcalculator-v .calc-right-actions .action-buttons-row{
      flex-wrap:wrap;
    }
  }
/* END DECETI PAGE pricingcalculator-v */

/* DECETI PAGE pricingcalculator-js */
.deceti-page-pricingcalculator-js /* ===== Finishing outer white box ===== */
  .deceti-finishing .finishing-module{
    margin: 10px 20px 0 20px;
    background:#fff;
    border-radius:15px;
    padding:14px 0 18px 0;  /* inner spacing, header + cards */
  }
  
  .deceti-page-pricingcalculator-js /* Keep your title aligned inside the white box */
  .deceti-finishing .finishing-module-title{
    margin: 0 20px; /* was 0 20px already, keep it */
  }
  
  .deceti-page-pricingcalculator-js /* Cards sit inside white box */
  .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px; /* keep consistent padding */
  }
  
  
  .deceti-page-pricingcalculator-js .deceti-finishing .finishing-module-title{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent)) !important;
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text)) !important;
    font-weight:700;
    font-size:18px;
    margin:0 20px;
  }
  
  .deceti-page-pricingcalculator-js /* optional: tighten cards under header */
  .deceti-finishing .finishing-card{ margin-top:10px; }
  
  .deceti-page-pricingcalculator-js /* ===== Shared finishing theme (both calculators) ===== */
  .deceti-finishing dl{margin:0;}
  .deceti-page-pricingcalculator-js .deceti-finishing dt{margin:0 0 10px 0;}
  .deceti-page-pricingcalculator-js .deceti-finishing dd{margin:10px 0 0 0;}
  
  .deceti-page-pricingcalculator-js .deceti-finishing .finishing-header{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent));
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text) );
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
    border-radius:15px;
    background-color: var(--calc-accent-soft, var(--calc-accent-soft) );
    padding:10px 20px;
    text-align:left;
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing .finishing-title{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px 0;
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing .finishingnotice{
    display:inline-block;
    margin:6px 0 8px 0;
    padding:4px 10px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    background: rgba(0,0,0,0.08);
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing label{
    font-size:18px;
    font-weight:600;
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing select{
    width:100%;
    max-width:420px;
    border-radius:10px;
    padding:8px 10px;
  }
  
  .deceti-page-pricingcalculator-js .deceti-finishing input[type="checkbox"]{
    transform: scale(1.2);
    margin: 4px 6px 0 0;
  }

  .deceti-page-pricingcalculator-js .blue-top-line{
    background-color:#1ad4fd;border-top-left-radius:10px;border-top-right-radius:10px;
    color:var(--calc-accent-text);font-weight:bold;font-size:25px;text-align:center;
    display:flex;justify-content:center;align-items:center;height:50px;
  }
  .deceti-page-pricingcalculator-js .blue-top-text{display:block;}

  .deceti-page-pricingcalculator-js /* Gallery */
  .native-gallery-thumb{padding:0;border:0;background:transparent;}
  .deceti-page-pricingcalculator-js .native-gallery-thumb img{
    width:120px;height:120px;object-fit:cover;border-radius:14px;border:3px solid transparent;
    transition:border-color .2s ease,transform .2s ease;
  }
  .deceti-page-pricingcalculator-js .native-gallery-thumb.is-active img{border-color:var(--thumb-active-color);transform:scale(1.05);}

  .deceti-page-pricingcalculator-js /* Shapes */
  .icon{max-width:100px;max-height:100px;}
  .deceti-page-pricingcalculator-js .icon:hover{fill:var(--deceti-color-primary);}
  .deceti-page-pricingcalculator-js .col-md-3.shape-div.shapezero{
    background:var(--deceti-color-primary);border-radius:20px;color:#fff;text-align:center;
    width:100px;height:100px;margin-left:auto;margin-right:auto;padding:6px;
    display:flex;align-items:center;justify-content:center;line-height:1.2;
    word-break:break-word;overflow:hidden;
  }

  .deceti-page-pricingcalculator-js .icon-scrollbar{
    overflow-x:hidden;
    overflow-y:scroll;
    height:200px;
    width:100%;
    scrollbar-width: thin;
    scrollbar-color: #888 var(--deceti-color-primary);
  }
  
  .deceti-page-pricingcalculator-js /* Quantity list */
  ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list>label{
    display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
  }
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list>label>.table-cell{
    flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
  }
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
  .deceti-page-pricingcalculator-js ul.quantity-list .table-cell.save{
    float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
  }
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
  .deceti-page-pricingcalculator-js ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

  .deceti-page-pricingcalculator-js ul.quantity-list .selected{
    background-color: var(--calc-accent-soft) !important;
    color: var(--calc-accent-text) !important;
  }
  .deceti-page-pricingcalculator-js ul.quantity-list .selected .table-cell,

  .deceti-page-pricingcalculator-js ul.quantity-list .selected .table-cell.save{
    color: var(--calc-accent-text) !important;
  }

  .deceti-page-pricingcalculator-js ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

  /* Totals typography: values supplied by the server bridge. */
  .deceti-page-pricingcalculator-js .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
  .deceti-page-pricingcalculator-js .total h4{font-size:16px;font-weight:500;}

  @media (max-width:900px){
    .deceti-page-pricingcalculator-js .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-js .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
    .deceti-page-pricingcalculator-js .responsive .container .total h4{font-size:13px;font-weight:500;}
    .deceti-page-pricingcalculator-js .responsive .quantity-list{font-size:14px;}
  }
  @media (max-width:500px){
    .deceti-page-pricingcalculator-js .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-js .responsive .quantity-list{font-size:14px;}
    .deceti-page-pricingcalculator-js .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
    .deceti-page-pricingcalculator-js .responsive .container .total h4{font-size:14px;font-weight:500;}
  }

  .deceti-page-pricingcalculator-js .tooltipquantity{
    font-weight:500;font-size:100%;color:#fff;top:-12px;min-width:30px;
    background:rgb(255,66,66);border-radius:4px;padding:5px 10px;text-align:center;
  }

  .deceti-page-pricingcalculator-js #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
  .deceti-page-pricingcalculator-js #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

  .deceti-page-pricingcalculator-js /* Size selector UI */
  #sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-1{
    display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
  }
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-1 input[type="radio"]+label{
    display:inline-block;cursor:pointer;font-weight:700;font-size:16px;line-height:1.2;
    min-width:110px;min-height:44px;padding:10px 12px;text-align:center;border:1px solid #ccc;
    border-radius:6px;color:#000;
    transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
  }
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
    background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
    background-position:-150%;background-size:400%;background-color:#000;border-color:#262626;color:#fff;
    cursor:default;pointer-events:none;
  }
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
    color:#fff;border-color:var(--deceti-color-focus);background-color:var(--deceti-color-primary);
    box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-2{display:block;}
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-2 .size-row{
    display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;width:100%;
  }
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
  .deceti-page-pricingcalculator-js #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

  .deceti-page-pricingcalculator-js .dimension-label{ font-size: 16px; font-weight: 600; }

  .deceti-page-pricingcalculator-js #product-options-calc button.btn{
    margin-bottom: 12px;
  }
  
  .deceti-page-pricingcalculator-js #product-options-calc button.btn:last-of-type{
   margin-bottom: 0;
  }

  .deceti-page-pricingcalculator-js /* ==========================================================
     PACKAGING OPTION SELECTOR
     ========================================================== */

  .deceti-packaging-choice{
    position: relative;
    overflow: visible !important;
    z-index: 1000;
  }

  .deceti-page-pricingcalculator-js #shipping_packaging_option_choice_wrap,


  .deceti-page-pricingcalculator-js #shipping_packaging_option_choice_wrap .deceti-packaging-choice-inner,


  .deceti-page-pricingcalculator-js #packaging_combined_field_wrap{
    overflow: visible !important;
  }

  .deceti-page-pricingcalculator-js #packaging_combined_field_wrap{
    position: relative;
    z-index: 1001;
  }

  .deceti-page-pricingcalculator-js #deceti_packaging_dropdown{
    position: relative;
    z-index: 1002;
  }

  .deceti-page-pricingcalculator-js #deceti_packaging_dropdown_menu{
    z-index: 10000 !important;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-select-row{
    padding: 4px;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-select-label{
    display: block;
    margin: 0 0 6px 4px;
    color: #34384a;
    font-size: 16px;
    font-weight: 700;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-select{
    width: 100%;
    height: 48px;
    padding: 8px 14px;
    border: 2px solid #d8dde5;
    border-radius: 18px;
    background-color: #fff;
    font-size: 18px;
    line-height: 1.2;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-select:focus{
    border-color: var(--deceti-color-primary);
    box-shadow:
      0 0 0 4px
      var(--calc-accent-soft);
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information-wrap{
    margin-top: 8px;
    overflow: hidden;
    border: 1px solid #d9dde3;
    border-radius: 4px;
    background: #fff;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information{
    padding: 14px 18px;
    background: #f6f6f7;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information[hidden]{
    display: none !important;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information:empty{
    display: none;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information-title{
    margin-bottom: 6px;
    color: #34384a;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information-list{
    padding-left: 20px;
    margin: 0;
    color: #34384a;
  }

  .deceti-page-pricingcalculator-js .deceti-packaging-information-list li{
    margin: 2px 0;
    padding-left: 1px;
    font-size: 14px;
    line-height: 1.45;
  }
/* END DECETI PAGE pricingcalculator-js */

/* DECETI PAGE pricingcalculator-options */
.deceti-page-pricingcalculator-options .deceti-finishing{
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

.deceti-page-pricingcalculator-options .deceti-finishing dl{ margin: 0; }
.deceti-page-pricingcalculator-options .deceti-finishing dt{ margin: 0 0 8px 0; }
.deceti-page-pricingcalculator-options .deceti-finishing dd{ margin: 8px 0 0 0; }

.deceti-page-pricingcalculator-options .deceti-finishing .finishing-module-title{
  border-radius: 15px;
  background-color: var(--calc-accent, #7FE8FF) !important;
  padding: 0 30px;
  height: 40px;
  display: flex;
  align-items: center;
  color: var(--calc-accent-text, #00334d) !important;
  font-weight: 700;
  font-size: 18px;
  margin: 0 20px;
}

.deceti-page-pricingcalculator-options .deceti-finishing .finishing-card{
  margin: 10px 20px 0 30px;
  border-radius: 15px;
  background: var(--calc-accent-soft, #7fe8ff);
  padding: 10px 20px;
  text-align: left;
  border: 0;
  box-shadow: none;
}

.deceti-page-pricingcalculator-options .deceti-finishing .finishing-title{
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 6px 0;
}

.deceti-page-pricingcalculator-options .deceti-finishing .finishingnotice{
  display: inline-block;
  margin: 6px 0 8px 0;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  background: rgba(0, 0, 0, 0.08);
}

.deceti-page-pricingcalculator-options .deceti-finishing label{
  font-size: 16px;
  font-weight: 600;
}

.deceti-page-pricingcalculator-options .deceti-finishing select{
  width: 100%;
  max-width: 360px;
  border-radius: 10px;
  padding: 8px 10px;
}

.deceti-page-pricingcalculator-options .deceti-finishing input[type="checkbox"]{
  width: 18px;
  height: 18px;
  margin: 0;
}

.deceti-page-pricingcalculator-options .deceti-finishing input[type="checkbox"],


.deceti-page-pricingcalculator-options .deceti-finishing input[type="radio"]{
  -webkit-appearance: auto !important;
  appearance: auto !important;
  accent-color: var(--calc-accent-text, #00334d);
  background: transparent !important;
}

.deceti-page-pricingcalculator-options .deceti-finishing input[type="checkbox"]{
  opacity: 1 !important;
  position: static !important;
  pointer-events: auto !important;
}

.deceti-page-pricingcalculator-options .deceti-finishing label.finishing-one{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.deceti-page-pricingcalculator-options .deceti-finishing .finishing-one{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.deceti-page-pricingcalculator-options .deceti-finishing .finishing-one-label{
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  pointer-events: auto !important;
}

.deceti-page-pricingcalculator-options .deceti-finishing input[type="checkbox"].deceti-finishing-input{
  pointer-events: auto !important;
  opacity: 1 !important;
  position: static !important;
  z-index: 1;
}

.deceti-page-pricingcalculator-options /* ==========================================================
   BOX FINISHING — STANDARD SELECT
   ========================================================== */

.deceti-box-finishing-select-block{
  width: 100%;
  max-width: 680px;
  margin: 15px auto 0;
  padding: 0;
  text-align: left;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-main-label{
  display: block;
  margin: 0 0 7px 4px;
  color: #111827;
  font-size: 17px;
  font-weight: 700;
}

.deceti-page-pricingcalculator-options #shipping_packaging_option_choice_wrap{
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: transparent;
}

.deceti-page-pricingcalculator-options #shipping_packaging_option_choice_wrap .deceti-packaging-choice-inner,


.deceti-page-pricingcalculator-options #packaging_combined_field_wrap{
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.deceti-page-pricingcalculator-options #Packaging_Combined_Id_C,


.deceti-page-pricingcalculator-options #shipping_packaging_option_choice{
  display: block;
  width: 100%;
  max-width: none;
  min-height: 52px;
  padding: 10px 44px 10px 18px;
  border: 2px solid #d4dce8;
  border-radius: 24px;
  outline: none;
  background-color: #fff;
  color: #111827;
  font-size: 17px;
  line-height: 1.25;
  cursor: pointer;
  box-shadow: none;
}

.deceti-page-pricingcalculator-options #Packaging_Combined_Id_C:focus,


.deceti-page-pricingcalculator-options #shipping_packaging_option_choice:focus{
  border-color: var(--calc-accent, #7FE8FF);
  box-shadow: 0 0 0 3px rgba(127, 232, 255, 0.35);
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information-block{
  width: 100%;
  margin-top: 8px;
  padding: 0;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information{
  display: none;
  padding: 14px 18px;
  border: 1px solid #d9dde3;
  border-radius: 12px;
  background: #f6f6f7;
  color: #34384a;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information.is-visible{
  display: block;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information-title{
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information-list{
  padding-left: 20px;
  margin: 0;
}

.deceti-page-pricingcalculator-options .deceti-box-finishing-information-list li{
  margin: 3px 0;
  font-size: 14px;
  line-height: 1.45;
}

@media (max-width: 576px){
  .deceti-page-pricingcalculator-options .deceti-box-finishing-select-block{
    max-width: 100%;
  }

  .deceti-page-pricingcalculator-options #Packaging_Combined_Id_C,


  .deceti-page-pricingcalculator-options #shipping_packaging_option_choice{
    min-height: 48px;
    font-size: 16px;
  }
}

@media (max-width: 576px){
  .deceti-page-pricingcalculator-options .deceti-finishing{ max-width: 100%; }
  .deceti-page-pricingcalculator-options .deceti-finishing .finishing-card{ margin-left: 0; margin-right: 0; }
  .deceti-page-pricingcalculator-options .deceti-finishing select{ max-width: 100%; }
}

.deceti-page-pricingcalculator-options ul.quantity-list{
  width: 100%;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list{
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border-radius: 5px;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list > label{
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0;
  padding: 0;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list > label > .table-cell{
  flex: 1 1 0;
  padding: 6px 6px;
  white-space: nowrap;
  min-width: 0;
  font-size: 16px;
  text-align: center;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list > label > .table-cell:first-child{
  text-align: left;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list:hover > label{
  background-color: #0b5ed7;
  color: #fff;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list:hover .save{ color: #fff; }
.deceti-page-pricingcalculator-options .save{ color: #1a7f37; font-weight: 600; }

.deceti-page-pricingcalculator-options .tooltipquantity{
  font-weight: 500;
  font-size: 100%;
  color: #fff;
  top: -12px;
  min-width: 30px;
  background: rgb(255, 66, 66);
  border-radius: 4px;
  padding: 5px 10px;
  text-align: center;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list.is-selected > label{
  background-color: #0b5ed7;
  color: #fff;
}

.deceti-page-pricingcalculator-options ul.quantity-list > li.quantity-list.is-selected .save{ color: #fff; }
.deceti-page-pricingcalculator-options /* ==========================================================
   BOX OPTIONS / PRODUCTION TIME — TWO EQUAL COLUMNS
   ========================================================== */

#box_options_selector_block > .col-md-12{
  width: 100%;
  max-width: 100%;
}

.deceti-page-pricingcalculator-options #box_options_selector_block .deceti-box-finishing-select-block{
  display: block;
  width: 100%;
  max-width: none;
  margin: 15px 0 0;
  padding: 0;
}

.deceti-page-pricingcalculator-options #box_options_title{
  display: block;
  width: 100%;
  margin: 0 0 8px;
  color: #111827;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
}

.deceti-page-pricingcalculator-options #shipping_packaging_option_choice_wrap{
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  clear: both;
}

.deceti-page-pricingcalculator-options #Packaging_Combined_Id_C,


.deceti-page-pricingcalculator-options #shipping_packaging_option_choice{
  width: 100%;
  max-width: none;
  min-height: 56px;
  box-sizing: border-box;
}

.deceti-page-pricingcalculator-options /*
 * Production Time:
 * title in the left column,


.deceti-page-pricingcalculator-options controls in the right column.
 */
#production_time_wrapper{
  width: 100%;
  max-width: none;
  margin: 10px 0 0 !important;
  text-align: left;
}

.deceti-page-pricingcalculator-options #production_time_wrapper .finishing-module-title{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0 0 8px;
  padding: 0;
  border-radius: 0;
  background: transparent !important;
  color: #111827 !important;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
}

.deceti-page-pricingcalculator-options #production_time_wrapper .finishing-card{
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/*
 * Mobile: title above the control.
 */
@media (max-width: 767px){


  .deceti-page-pricingcalculator-options #box_options_title,



  .deceti-page-pricingcalculator-options #production_time_wrapper .finishing-module-title{
    font-size: 22px;
  }
}

.deceti-page-pricingcalculator-options /* Quantity and Box Options must have identical typography. */
.deceti-standard-field-title,


.deceti-page-pricingcalculator-options #box_options_title.deceti-standard-field-title{
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: inherit !important;
  font-size: 24px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  color: #111827 !important;
  text-align: center !important;
}

.deceti-page-pricingcalculator-options /*
 * Initial calculator module visibility comes from the controller.
 * Do not use !important here: pricingcalculator.js may update
 * visibility after a user selection changes.
 */

/* ==========================================================
   INITIAL SERVER VISIBILITY
   ========================================================== */

#finishing_options_row[data-deceti-server-enabled="0"],


.deceti-page-pricingcalculator-options #box_options_selector_block[data-deceti-server-enabled="0"],


.deceti-page-pricingcalculator-options #production_time_row[data-deceti-server-enabled="0"]{
  display: none !important;
  visibility: hidden !important;
}

.deceti-page-pricingcalculator-options #finishing_options_row[data-deceti-server-enabled="1"],


.deceti-page-pricingcalculator-options #box_options_selector_block[data-deceti-server-enabled="1"],


.deceti-page-pricingcalculator-options #production_time_row[data-deceti-server-enabled="1"]{
  visibility: visible;
}

.deceti-page-pricingcalculator-options /*
 * Frame Quantity is initially controlled by Twig and then by the
 * current Frame_Id_C value. Do not lock it with !important.
 */
#frame_qty_block{
  visibility: visible;
}
/* END DECETI PAGE pricingcalculator-options */

/* DECETI PAGE uploadartwork */
.deceti-page-uploadartwork .deceti-finishing{
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

.deceti-page-uploadartwork .deceti-finishing dl{ margin: 0; }
.deceti-page-uploadartwork .deceti-finishing dt{ margin: 0 0 8px 0; }
.deceti-page-uploadartwork .deceti-finishing dd{ margin: 8px 0 0 0; }

.deceti-page-uploadartwork .deceti-finishing .finishing-header{
  border-radius: 15px;
  background: var(--calc-accent, #7FE8FF);
  padding: 0 30px;
  height: 40px;
  display: flex;
  align-items: center;
  color: var(--calc-accent-text, #00334d);
}

.deceti-page-uploadartwork .deceti-finishing .finishing-card{
  margin: 10px 20px 0 30px;
  border-radius: 15px;
  background: var(--calc-accent-soft, #7fe8ff);
  padding: 10px 20px;
  text-align: left;
  border: 0;
  box-shadow: none;
}

.deceti-page-uploadartwork .deceti-finishing .finishing-title{
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 6px 0;
}

.deceti-page-uploadartwork .deceti-finishing .finishingnotice{
  display: inline-block;
  margin: 6px 0 8px 0;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  background: rgba(0, 0, 0, 0.08);
}

.deceti-page-uploadartwork .deceti-finishing label{
  font-size: 16px;
  font-weight: 600;
}

.deceti-page-uploadartwork .deceti-finishing select{
  width: 100%;
  max-width: 360px;
  border-radius: 10px;
  padding: 8px 10px;
}

.deceti-page-uploadartwork .deceti-finishing input[type="checkbox"]{
  width: 18px;
  height: 18px;
  margin: 0;
}

@media (max-width: 576px){
  .deceti-page-uploadartwork .deceti-finishing{ max-width: 100%; }
  .deceti-page-uploadartwork .deceti-finishing .finishing-card{ margin-left: 0; margin-right: 0; }
  .deceti-page-uploadartwork .deceti-finishing select{ max-width: 100%; }
}

.deceti-page-uploadartwork ul.quantity-list{
  width: 100%;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list{
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border-radius: 5px;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list > label{
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0;
  padding: 0;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list > label > .table-cell{
  flex: 1 1 0;
  padding: 6px 6px;
  white-space: nowrap;
  min-width: 0;
  font-size: 16px;
  text-align: center;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list > label > .table-cell:first-child{
  text-align: left;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list:hover > label{
  background-color: #0b5ed7;
  color: #fff;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list:hover .save{ color: #fff; }
.deceti-page-uploadartwork .save{ color: #1a7f37; font-weight: 600; }

.deceti-page-uploadartwork .tooltipquantity{
  font-weight: 500;
  font-size: 100%;
  color: #fff;
  top: -12px;
  min-width: 30px;
  background: rgb(255, 66, 66);
  border-radius: 4px;
  padding: 5px 10px;
  text-align: center;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list.is-selected > label{
  background-color: #0b5ed7;
  color: #fff;
}

.deceti-page-uploadartwork ul.quantity-list > li.quantity-list.is-selected .save{ color: #fff; }

.deceti-page-uploadartwork /* ==========================================================
   BOX OPTIONS + PRODUCTION TIME
   ========================================================== */

.deceti-option-selector-block{
  width: 100%;
  max-width: 680px;
  margin: 15px auto 0;
  padding: 0;
  text-align: left;
}

.deceti-page-uploadartwork .deceti-option-selector-main-label{
  display: block;
  margin: 0 0 7px 4px;
  color: #111827;
  font-size: 17px;
  font-weight: 700;
}

.deceti-page-uploadartwork .deceti-option-selector-wrap{
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: transparent;
}

.deceti-page-uploadartwork .deceti-option-select-row{
  width: 100%;
  margin: 0;
  padding: 0;
}

.deceti-page-uploadartwork .deceti-option-select-label{
  display: block;
  margin: 0 0 6px 4px;
  color: #34384a;
  font-size: 15px;
  font-weight: 700;
}

.deceti-page-uploadartwork .deceti-option-select{
  display: block;
  width: 100%;
  max-width: none;
  min-height: 52px;
  padding: 10px 44px 10px 18px;
  border: 2px solid #d4dce8;
  border-radius: 24px;
  outline: none;
  background-color: #fff;
  color: #111827;
  font-size: 17px;
  line-height: 1.25;
  cursor: pointer;
  box-shadow: none;
}

.deceti-page-uploadartwork .deceti-option-select:focus{
  border-color: var(--calc-focus);
  box-shadow: 0 0 0 3px var(--calc-focus-ring);
}

.deceti-page-uploadartwork .deceti-option-information-wrap{
  width: 100%;
  margin-top: 8px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-radius: 12px;
  background: #fff;
}

.deceti-page-uploadartwork .deceti-option-information{
  padding: 14px 18px;
  background: #f6f6f7;
  color: #34384a;
}

.deceti-page-uploadartwork .deceti-option-information[hidden]{
  display: none !important;
}

.deceti-page-uploadartwork .deceti-option-information:empty{
  display: none;
}

.deceti-page-uploadartwork .deceti-option-information-title{
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.deceti-page-uploadartwork .deceti-option-information-list{
  padding-left: 20px;
  margin: 0;
}

.deceti-page-uploadartwork .deceti-option-information-list li{
  margin: 3px 0;
  font-size: 14px;
  line-height: 1.45;
}

.deceti-page-uploadartwork /* Same packaging presentation as deceti_cp_b_pricingcalculator.twig. */
.deceti-packaging-choice{
  position: relative;
  overflow: visible !important;
  z-index: 1000;
}

.deceti-page-uploadartwork #shipping_packaging_option_choice_wrap{
  overflow: visible !important;
}

.deceti-page-uploadartwork .deceti-packaging-select-row{ padding: 4px; }

.deceti-page-uploadartwork .deceti-packaging-select-label{
  display: block;
  margin: 0 0 6px 4px;
  color: #34384a;
  font-size: 16px;
  font-weight: 700;
}

.deceti-page-uploadartwork .deceti-packaging-select{
  width: 100%;
  height: 48px;
  padding: 8px 14px;
  border: 2px solid #d8dde5;
  border-radius: 18px;
  background-color: #fff;
  font-size: 18px;
  line-height: 1.2;
}

.deceti-page-uploadartwork .deceti-packaging-select:focus{
  border-color: var(--calc-focus);
  box-shadow: 0 0 0 4px var(--calc-focus-ring);
}

.deceti-page-uploadartwork .deceti-packaging-information-wrap{
  margin-top: 8px;
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-radius: 4px;
  background: #fff;
}

.deceti-page-uploadartwork .deceti-packaging-information{
  padding: 14px 18px;
  background: #f6f6f7;
}

.deceti-page-uploadartwork .deceti-packaging-information[hidden]{ display: none !important; }
.deceti-page-uploadartwork .deceti-packaging-information:empty{ display: none; }

.deceti-page-uploadartwork .deceti-packaging-information-title{
  margin-bottom: 6px;
  color: #34384a;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.deceti-page-uploadartwork .deceti-packaging-information-list{
  padding-left: 20px;
  margin: 0;
  color: #34384a;
}

.deceti-page-uploadartwork .deceti-packaging-information-list li{
  margin: 2px 0;
  padding-left: 1px;
  font-size: 14px;
  line-height: 1.45;
}

.deceti-page-uploadartwork .deceti-packaging-dropdown{ position: relative; width: 100%; }
.deceti-page-uploadartwork .deceti-packaging-dropdown-button{
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; min-height: 48px; padding: 9px 16px;
  border: 2px solid #d8dde5; border-radius: 18px;
  background: #fff; color: #111; font-size: 18px;
  line-height: 1.25; text-align: left; cursor: pointer;
}
.deceti-page-uploadartwork .deceti-packaging-dropdown.is-open .deceti-packaging-dropdown-button{
  border-color: var(--calc-focus);
  border-bottom-right-radius: 0; border-bottom-left-radius: 0;
  box-shadow: 0 0 0 3px var(--calc-focus-ring);
}
.deceti-page-uploadartwork .deceti-packaging-dropdown-arrow{ margin-left: 12px; transition: transform .15s ease; }
.deceti-page-uploadartwork .deceti-packaging-dropdown.is-open .deceti-packaging-dropdown-arrow{ transform: rotate(180deg); }
.deceti-page-uploadartwork .deceti-packaging-dropdown-menu{
  position: absolute; z-index: 10000; top: 100%; right: 0; left: 0;
  max-height: 420px; overflow-y: auto; border: 1px solid #aeb4bc;
  border-top: 0; background: #fff; box-shadow: 0 8px 18px rgba(0,0,0,.16);
}
.deceti-page-uploadartwork .deceti-packaging-dropdown-item{
  display: block; width: 100%; padding: 12px 16px; border: 0;
  border-bottom: 1px solid #d9dde3; background: #fff;
  color: #34384a; text-align: left; cursor: pointer;
}
.deceti-page-uploadartwork .deceti-packaging-dropdown-item:hover,

.deceti-page-uploadartwork .deceti-packaging-dropdown-item.is-selected{ background: #f3f5f7; }
.deceti-page-uploadartwork .deceti-packaging-dropdown-item-title{ display: block; font-size: 16px; font-weight: 700; line-height: 1.3; }
.deceti-page-uploadartwork .deceti-packaging-dropdown-item-information{ padding-left: 20px; margin: 6px 0 0; }
.deceti-page-uploadartwork .deceti-packaging-dropdown-item-information li{ margin: 2px 0; font-size: 14px; line-height: 1.4; }

@media (max-width: 576px){
  .deceti-page-uploadartwork .deceti-option-selector-block{
    max-width: 100%;
  }

  .deceti-page-uploadartwork .deceti-option-select{
    min-height: 48px;
    font-size: 16px;
  }
}
.deceti-page-uploadartwork /* ==========================================================
   BOX OPTIONS / PRODUCTION TIME — CALCULATOR FIELD LAYOUT
   ========================================================== */

#box_options_selector_block{
  display: none;
}

.deceti-page-uploadartwork .deceti-box-options-layout{
  width: 100%;
  margin: 15px 0 0;
}

.deceti-page-uploadartwork .deceti-box-options-heading-row{
  margin-bottom: 8px;
}

.deceti-page-uploadartwork .deceti-box-options-heading{
  text-align: center;
}

.deceti-page-uploadartwork .deceti-box-options-heading strong{
  font: inherit;
  font-weight: 700;
}

.deceti-page-uploadartwork #shipping_packaging_option_choice_wrap{
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.deceti-page-uploadartwork /*
 * Production Time uses the same layout:
 * title in the left half,


.deceti-page-uploadartwork controls on the next full-width row.
 */
#production_time_wrapper{
  width: 100%;
  max-width: none;
  margin: 15px 0 0 !important;
}

.deceti-page-uploadartwork #production_time_wrapper .finishing-module-title,


.deceti-page-uploadartwork #production_time_wrapper .finishing-header{
  width: 50%;
  min-height: 0;
  height: auto;
  margin: 0 0 8px;
  padding: 0;
  justify-content: center;
  border-radius: 0;
  background: transparent !important;
  color: inherit !important;
  font: inherit;
  font-weight: 700;
  text-align: center;
}

.deceti-page-uploadartwork #production_time_wrapper .finishing-card{
  width: 100%;
  max-width: none;
  margin: 0;
  box-sizing: border-box;
}

.deceti-page-uploadartwork /*
 * Frame Quantity stays hidden until its initial state is resolved.
 */
#frame_qty_block[data-deceti-server-enabled="0"]{
  display: none;
}

@media (max-width: 767px){
  .deceti-page-uploadartwork #production_time_wrapper .finishing-module-title,

  .deceti-page-uploadartwork #production_time_wrapper .finishing-header{
    width: 100%;
  }
}

.deceti-page-uploadartwork /*
 * Prevent Wire Frame from flashing before pricingcalculator initializes.
 * The calculator explicitly shows it when it is available.
 */
/*
 * Frame visibility is controlled by pricingcalculator.js.
 */

/* Box Options is hidden until real options are rendered. */
#box_options_selector_block{
  display: none;
}

.deceti-page-uploadartwork .deceti-box-options-layout{
  width: 100%;
  margin: 15px 0 0;
}

.deceti-page-uploadartwork .deceti-box-options-heading-row{
  margin-bottom: 8px;
}

.deceti-page-uploadartwork .deceti-box-options-heading{
  text-align: center;
}

.deceti-page-uploadartwork .deceti-box-options-heading strong{
  font: inherit;
  font-weight: 700;
}

.deceti-page-uploadartwork #shipping_packaging_option_choice_wrap{
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.deceti-page-uploadartwork /* ==========================================================
   AUTHORITATIVE SERVER VISIBILITY

   JavaScript may control enabled modules,


.deceti-page-uploadartwork but it must never
   temporarily display a module disabled by the controller.
   ========================================================== */

#frame_qty_block[data-deceti-server-enabled="0"],


.deceti-page-uploadartwork #finishing_options_row[data-deceti-server-enabled="0"],


.deceti-page-uploadartwork #production_time_wrapper[data-deceti-server-enabled="0"],


.deceti-page-uploadartwork #box_options_selector_block[data-deceti-server-enabled="0"]{
  display: none !important;
  visibility: hidden !important;
}

.deceti-page-uploadartwork /*
 * Enabled modules must not inherit the hidden visibility left
 * by previous initialization code.
 */
#frame_qty_block[data-deceti-server-enabled="1"],


.deceti-page-uploadartwork #finishing_options_row[data-deceti-server-enabled="1"],


.deceti-page-uploadartwork #production_time_wrapper[data-deceti-server-enabled="1"],


.deceti-page-uploadartwork #box_options_selector_block[data-deceti-server-enabled="1"]{
  visibility: visible;
}
/* END DECETI PAGE uploadartwork */

/* DECETI options/upload shared presentation utilities */
.deceti-page-pricingcalculator-options .deceti-ui-width-90,.deceti-page-uploadartwork .deceti-ui-width-90{width:90%}
.deceti-page-pricingcalculator-options .deceti-ui-text-center,.deceti-page-uploadartwork .deceti-ui-text-center{text-align:center}
.deceti-page-pricingcalculator-options .deceti-ui-price-value,.deceti-page-uploadartwork .deceti-ui-price-value{padding-top:10px;font-size:25px}
.deceti-page-pricingcalculator-options .deceti-ui-help-text,.deceti-page-uploadartwork .deceti-ui-help-text{font-size:12px}
.deceti-page-pricingcalculator-options .deceti-ui-mt-10,.deceti-page-uploadartwork .deceti-ui-mt-10{margin-top:10px}
.deceti-page-pricingcalculator-options .deceti-ui-width-full,.deceti-page-uploadartwork .deceti-ui-width-full{width:100%}
.deceti-page-pricingcalculator-options .deceti-ui-mt-15,.deceti-page-uploadartwork .deceti-ui-mt-15{margin-top:15px}
.deceti-page-pricingcalculator-options .deceti-ui-clear-both,.deceti-page-uploadartwork .deceti-ui-clear-both{clear:both}
.deceti-page-pricingcalculator-options .deceti-ui-font-16,.deceti-page-uploadartwork .deceti-ui-font-16{font-size:16px}
.deceti-page-pricingcalculator-options .deceti-ui-flex-2,.deceti-page-uploadartwork .deceti-ui-flex-2{flex:2}.deceti-page-pricingcalculator-options .deceti-ui-flex-1,.deceti-page-uploadartwork .deceti-ui-flex-1{flex:1}.deceti-page-pricingcalculator-options .deceti-ui-flex-40,.deceti-page-uploadartwork .deceti-ui-flex-40{flex:0 0 40px}
.deceti-page-pricingcalculator-options .deceti-ui-total-inner,.deceti-page-uploadartwork .deceti-ui-total-inner{padding-bottom:10px;border-radius:10px}
/* END DECETI options/upload shared presentation utilities */
.deceti-page-pricingcalculator-options .deceti-ui-summary-layout,.deceti-page-uploadartwork .deceti-ui-summary-layout{margin-top:10px;margin-bottom:10px;padding:15px 25px;border-radius:15px;background:var(--deceti-color-surface)}
.deceti-page-pricingcalculator-options .deceti-ui-contact-panel,.deceti-page-uploadartwork .deceti-ui-contact-panel{margin-top:20px;margin-bottom:10px;padding:20px;border-radius:15px;background:var(--deceti-color-panel-soft)}
.deceti-page-pricingcalculator-options .deceti-ui-contact-title,.deceti-page-uploadartwork .deceti-ui-contact-title{margin-bottom:10px;font-size:18px;font-weight:700}.deceti-page-pricingcalculator-options .deceti-ui-contact-textarea,.deceti-page-uploadartwork .deceti-ui-contact-textarea{width:100%;border-radius:15px!important}
.deceti-page-pricingcalculator-options .deceti-ui-submit-full{width:100%;margin-top:10px}.deceti-page-uploadartwork .deceti-ui-submit-wide{width:94%;margin:10px}
.deceti-page-pricingcalculator-options .deceti-ui-shipping-row,.deceti-page-uploadartwork .deceti-ui-shipping-row{display:flex;align-items:center;gap:8px}.deceti-page-pricingcalculator-options .deceti-ui-shipping-zone,.deceti-page-uploadartwork .deceti-ui-shipping-zone{width:100%;height:40px;padding:6px 10px;font-size:15px;line-height:1.2}.deceti-page-pricingcalculator-options .deceti-ui-shipping-postcode,.deceti-page-uploadartwork .deceti-ui-shipping-postcode{width:100%;height:40px;padding:6px 12px;font-size:15px}.deceti-page-pricingcalculator-options .deceti-ui-shipping-button,.deceti-page-uploadartwork .deceti-ui-shipping-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0}
.deceti-page-pricingcalculator-options .deceti-ui-total-card-fill,.deceti-page-uploadartwork .deceti-ui-total-card-fill{height:100%;padding:0 10px 10px;border-radius:10px}.deceti-page-pricingcalculator-options .deceti-ui-price-summary,.deceti-page-uploadartwork .deceti-ui-price-summary{align-items:stretch;margin-top:15px}.deceti-page-pricingcalculator-options .deceti-ui-alert-full,.deceti-page-uploadartwork .deceti-ui-alert-full{display:block;box-sizing:border-box;width:100%;max-width:none;margin:0}
.deceti-page-uploadartwork .deceti-ui-option-row{margin-top:10px;text-align:left}
.deceti-page-pricingcalculator-options .deceti-ui-alert-row{box-sizing:border-box;clear:both;width:100%;margin:8px 0 0;padding:0}
.deceti-page-pricingcalculator-options .deceti-ui-option-row,.deceti-page-uploadartwork .deceti-ui-option-row{margin-top:10px;text-align:left}
.deceti-page-pricingcalculator-options .deceti-ui-production-wrapper,.deceti-page-uploadartwork .deceti-ui-production-wrapper{clear:both;margin-top:10px}
.deceti-page-pricingcalculator-options .deceti-ui-shipping-wrap,.deceti-page-uploadartwork .deceti-ui-shipping-wrap{margin-top:10px;padding:6px;border-radius:15px;background:var(--deceti-color-surface)}
.deceti-page-pricingcalculator-options .deceti-ui-runtime-notice,.deceti-page-uploadartwork .deceti-ui-runtime-notice{margin-top:10px;margin-bottom:10px}
.deceti-page-pricingcalculator-options .deceti-ui-shipping-promo,.deceti-page-uploadartwork .deceti-ui-shipping-promo{box-sizing:border-box;width:100%;min-height:40px;margin-top:10px;padding:12px 30px;border:3px solid var(--calc-accent);border-radius:15px;background:var(--deceti-color-surface);text-align:center}
.deceti-page-pricingcalculator-options.deceti-ui-summary-layout,.deceti-page-uploadartwork.deceti-ui-summary-layout{box-sizing:border-box;border:3px solid var(--calc-accent)}
.calculator.deceti-page-pricingcalculator-v #shipping_calc_wrap.deceti-ui-shipping-wrap{box-sizing:border-box;width:100%;margin-top:10px;padding:8px;border:3px solid var(--calc-accent);border-radius:15px;background:#fff}
.calculator.deceti-page-pricingcalculator-h #shipping_calc_wrap.deceti-ui-shipping-wrap,
.calculator.deceti-page-pricingcalculator-js #shipping_calc_wrap.deceti-ui-shipping-wrap{box-sizing:border-box;clear:both;width:100%;margin-top:10px;padding:8px;border:3px solid var(--calc-accent);border-radius:15px;background:#fff}
.calculator.deceti-page-pricingcalculator-h #shipping_promo_wrap.deceti-ui-shipping-message-short,
.calculator.deceti-page-pricingcalculator-js #shipping_promo_wrap.deceti-ui-shipping-message-short,
.calculator.deceti-page-pricingcalculator-v #shipping_promo_wrap.deceti-ui-shipping-message-short{display:flex;align-items:center;justify-content:center;box-sizing:border-box;clear:both;width:100%;height:auto;min-height:48px;margin-top:10px;padding:8px 20px;border:3px solid var(--calc-accent);border-radius:15px;background:#fff;text-align:center;overflow:visible}
.deceti-page-pricingcalculator-options #finishing_options_wrapper .finishing-module-title,
.deceti-page-uploadartwork #finishing_options_wrapper .finishing-module-title{display:flex;align-items:center;height:40px;margin:0 20px;padding:0 30px;border-radius:15px;background:var(--calc-accent)!important;color:var(--calc-accent-text)!important;font-size:18px;font-weight:700}
.deceti-page-pricingcalculator-options #shipping_calc_wrap.deceti-ui-shipping-wrap,
.deceti-page-uploadartwork #shipping_calc_wrap.deceti-ui-shipping-wrap{box-sizing:border-box;width:100%;margin-top:10px;padding:8px;border:3px solid var(--calc-accent);border-radius:15px;background:#fff}

/* DECETI PAGE pricingcalculator-stickers */
.deceti-page-pricingcalculator-stickers /* ===== Shared finishing theme (both calculators) ===== */
.deceti-finishing dl{margin:0;}
.deceti-page-pricingcalculator-stickers .deceti-finishing dt{margin:0 0 10px 0;}
.deceti-page-pricingcalculator-stickers .deceti-finishing dd{margin:10px 0 0 0;}

.deceti-page-pricingcalculator-stickers .deceti-finishing .finishing-header{
  border-radius:15px;
  background-color: var(--calc-accent, var(--calc-accent));
  padding:0 30px;
  height:40px;
  display:flex;
  align-items:center;
  color: var(--calc-accent-text, var(--calc-accent-text) );
}

.deceti-page-pricingcalculator-stickers .deceti-finishing .finishing-card{
  margin:10px 20px 0 20px;
  border-radius:15px;
  background-color: var(--calc-accent-soft, var(--calc-accent-soft) );
  padding:10px 20px;
  text-align:left;
}

.deceti-page-pricingcalculator-stickers .deceti-finishing .finishing-title{
  font-size:18px;
  font-weight:700;
  margin:0 0 6px 0;
}

.deceti-page-pricingcalculator-stickers .deceti-finishing .finishingnotice{
  display:inline-block;
  margin:6px 0 8px 0;
  padding:4px 10px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  background: rgba(0,0,0,0.08);
}

.deceti-page-pricingcalculator-stickers .deceti-finishing label{
  font-size:18px;
  font-weight:600;
}

.deceti-page-pricingcalculator-stickers .deceti-finishing select{
  width:100%;
  max-width:420px;
  border-radius:10px;
  padding:8px 10px;
}

.deceti-page-pricingcalculator-stickers .deceti-finishing input[type="checkbox"]{
  transform: scale(1.2);
  margin: 4px 6px 0 0;
}

.deceti-page-pricingcalculator-stickers input[type="checkbox"],


.deceti-page-pricingcalculator-stickers input[type="radio"]{ transform: scale(1.5); margin: 5px; }

.deceti-page-pricingcalculator-stickers .blue-top-line{
  background-color:#1ad4fd;border-top-left-radius:10px;border-top-right-radius:10px;
  color:var(--calc-accent-text);font-weight:bold;font-size:25px;text-align:center;
  display:flex;justify-content:center;align-items:center;height:50px;
}
.deceti-page-pricingcalculator-stickers .blue-top-text{display:block;}

.deceti-page-pricingcalculator-stickers /* Gallery */
.product-image-span #preview .native-gallery-main{
  display:flex;
  justify-content:center;
  align-items:flex-start;
  width:100%;
}
.deceti-page-pricingcalculator-stickers .product-image-span #preview .native-gallery-main > img{
  display:block;
  margin-left:auto;
  margin-right:auto;
}
.deceti-page-pricingcalculator-stickers .native-gallery-thumb{padding:0;border:0;background:transparent;}
.deceti-page-pricingcalculator-stickers .native-gallery-thumb img{
  width:120px;height:120px;object-fit:cover;border-radius:14px;border:3px solid transparent;
  transition:border-color .2s ease,transform .2s ease;
}
.deceti-page-pricingcalculator-stickers .native-gallery-thumb.is-active img{border-color:var(--thumb-active-color);transform:scale(1.05);}

.deceti-page-pricingcalculator-stickers /* Shapes */
.icon{max-width:100px;max-height:100px;}
.deceti-page-pricingcalculator-stickers .icon:hover{fill:var(--deceti-color-primary);}

.deceti-page-pricingcalculator-stickers /* keep legacy custom tile styling (but we will use it inside #shape_0 as inner element) */
.col-md-3.shape-div.shapezero{
  background:var(--deceti-color-primary);border-radius:20px;color:#fff;text-align:center;
  width:100px;height:100px;margin-left:auto;margin-right:auto;padding:6px;
  display:flex;align-items:center;justify-content:center;line-height:1.2;
  word-break:break-word;overflow:hidden;
}

.deceti-page-pricingcalculator-stickers .icon-scrollbar{
  overflow-x:hidden;overflow-y:scroll;height:200px;width:100%;
  scrollbar-width:thin;scrollbar-color:#888 var(--deceti-color-primary);
}

.deceti-page-pricingcalculator-stickers /* ===== FIX ONLY SHAPES LAYOUT (no global flex on .shape-div) ===== */
.shape-div{ outline:none !important; border:none !important; } .deceti-page-pricingcalculator-stickers /* keep reset */

#shapes .shape-div{
  padding-bottom:20px;
  text-align:center;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  min-height:120px;
}

.deceti-page-pricingcalculator-stickers #shapes .shape-div svg{
  display:block;
  margin:0 auto;
}


.deceti-page-pricingcalculator-stickers /* === SHAPE_0 must be exactly 100x100 === */
#shapes #shape_0.shapezero{
  width: 100px !important;
  height: 100px !important;
  min-width: 100px !important;
  min-height: 100px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 12px !important;
  padding: 6px !important;
  border-radius: 20px !important;

  /* чтобы длинный текст не ломал размер */
  line-height: 1.2;
  word-break: break-word;
  overflow: hidden;
}

.deceti-page-pricingcalculator-stickers #shapes .shape-div{
  border-radius:20px;
}

.deceti-page-pricingcalculator-stickers /* Active state: "light up" the SVG */
#shapes .shape-div.is-active svg{
  color: var(--thumb-active-color, var(--deceti-color-primary));
  fill: var(--thumb-active-color, var(--deceti-color-primary));
  stroke: var(--thumb-active-color, var(--deceti-color-primary));
}
.deceti-page-pricingcalculator-stickers #shapes .shape-div.is-active svg *{
  fill: var(--thumb-active-color, var(--deceti-color-primary)) !important;
  stroke: var(--thumb-active-color, var(--deceti-color-primary)) !important;
}

.deceti-page-pricingcalculator-stickers /* Custom shape tile (shape_0): always grey ONLY if it contains svg (safe) */
#shape_0 svg,


.deceti-page-pricingcalculator-stickers #shape_0 svg *{
  fill:#b9b9b9 !important;
  stroke:#b9b9b9 !important;
  filter:none !important;
}
.deceti-page-pricingcalculator-stickers #shape_0{ opacity:0.75; }

.deceti-page-pricingcalculator-stickers /* Quantity list */
ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list>label{
  display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list>label>.table-cell{
  flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
.deceti-page-pricingcalculator-stickers ul.quantity-list .table-cell.save{
  float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
.deceti-page-pricingcalculator-stickers ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

.deceti-page-pricingcalculator-stickers ul.quantity-list .selected{
  background-color: var(--calc-accent-soft) !important;
  color: var(--calc-accent-text) !important;
}
.deceti-page-pricingcalculator-stickers ul.quantity-list .selected .table-cell,

.deceti-page-pricingcalculator-stickers ul.quantity-list .selected .table-cell.save{
  color: var(--calc-accent-text) !important;
}

.deceti-page-pricingcalculator-stickers ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

.deceti-page-pricingcalculator-stickers .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
.deceti-page-pricingcalculator-stickers .total h4{font-size:16px;font-weight:500;}

@media (max-width:900px){
  .deceti-page-pricingcalculator-stickers /* keep old custom tile size */
  .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
  .deceti-page-pricingcalculator-stickers #shape_0 .shapezero-inner{width:70px;height:70px;font-size:12px;}

  .deceti-page-pricingcalculator-stickers .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
  .deceti-page-pricingcalculator-stickers .responsive .container .total h4{font-size:13px;font-weight:500;}
  .deceti-page-pricingcalculator-stickers .responsive .quantity-list{font-size:14px;}
}
@media (max-width:500px){
  .deceti-page-pricingcalculator-stickers .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
  .deceti-page-pricingcalculator-stickers #shape_0 .shapezero-inner{width:70px;height:70px;font-size:12px;}

  .deceti-page-pricingcalculator-stickers .responsive .quantity-list{font-size:14px;}
  .deceti-page-pricingcalculator-stickers .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
  .deceti-page-pricingcalculator-stickers .responsive .container .total h4{font-size:14px;font-weight:500;}
}

.deceti-page-pricingcalculator-stickers .tooltipquantity{
  font-weight:500;font-size:100%;color:#fff;top:-12px;min-width:30px;
  background:rgb(255,66,66);border-radius:4px;padding:5px 10px;text-align:center;
}

.deceti-page-pricingcalculator-stickers #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
.deceti-page-pricingcalculator-stickers #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

.deceti-page-pricingcalculator-stickers /* Size selector UI */
#sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-1{
  display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-1 input[type="radio"]+label{
  display:inline-block;cursor:pointer;font-weight:700;font-size:16px;line-height:1.2;
  min-width:110px;min-height:44px;padding:10px 12px;text-align:center;border:1px solid #ccc;
  border-radius:6px;color:#000;
  transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
  background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
  background-position:-150%;background-size:400%;background-color:#000;border-color:#262626;color:#fff;
  cursor:default;pointer-events:none;
}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
  color:#fff;border-color:var(--deceti-color-focus);background-color:var(--deceti-color-primary);
  box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
}

.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:24px;
  row-gap:4px;
}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-2 .size-row{
  display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;min-width:0;width:auto;
}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
.deceti-page-pricingcalculator-stickers #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

.deceti-page-pricingcalculator-stickers .dimension-label{ font-size: 16px; font-weight: 600; }

.deceti-page-pricingcalculator-stickers #product-options-calc button.btn{ margin-bottom: 12px; }
.deceti-page-pricingcalculator-stickers #product-options-calc button.btn:last-of-type{ margin-bottom: 0; }

.deceti-page-pricingcalculator-stickers /* Totals: "each" line */
#Total_Price_Each .total-each-row{
  display:flex;
  gap:8px;
  align-items:baseline;
  justify-content:flex-end;
}
.deceti-page-pricingcalculator-stickers #Total_Price_Each .total-each-price{
  margin:5px 0 0;
  font-weight:500;
  font-size:16px;
}
.deceti-page-pricingcalculator-stickers #Total_Price_Each .total-each-text{
  opacity:.75;
  font-size:12px;
  line-height:1;
}
@media (max-width:500px){
  .deceti-page-pricingcalculator-stickers #Total_Price_Each .total-each-text{ font-size:11px; }
  .deceti-page-pricingcalculator-stickers #Total_Price_Each .total-each-price{ font-size:14px; }
}
.deceti-page-pricingcalculator-stickers.container.total label{
    font-size: 15px !important;
}

.deceti-page-pricingcalculator-stickers /* ==========================================================
   BOX OPTIONS + PRODUCTION TIME
   ========================================================== */

.deceti-option-selector-block{
  width: 100%;
  margin: 15px 0 0;
  padding: 0;
  text-align: left;
}

.deceti-page-pricingcalculator-stickers .deceti-option-selector-main-label{
  display: block;
  margin: 0 0 7px 4px;
  color: #111827;
  font-size: 17px;
  font-weight: 700;
}

.deceti-page-pricingcalculator-stickers .deceti-option-selector-wrap{
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: transparent;
}

.deceti-page-pricingcalculator-stickers .deceti-option-select-row{
  width: 100%;
  padding: 0;
}

.deceti-page-pricingcalculator-stickers .deceti-option-select-label{
  display: block;
  margin: 0 0 6px 4px;
  color: #34384a;
  font-size: 15px;
  font-weight: 700;
}

.deceti-page-pricingcalculator-stickers .deceti-option-select{
  display: block;
  width: 100%;
  max-width: none;
  min-height: 52px;
  padding: 10px 44px 10px 18px;
  border: 2px solid #d4dce8;
  border-radius: 24px;
  outline: none;
  background-color: #fff;
  color: #111827;
  font-size: 17px;
  line-height: 1.25;
  cursor: pointer;
  box-shadow: none;
}

.deceti-page-pricingcalculator-stickers .deceti-option-select:focus{
  border-color: var(--deceti-color-primary);
  box-shadow: 0 0 0 3px var(--calc-accent-soft);
}

.deceti-page-pricingcalculator-stickers .deceti-option-information-wrap{
  width: 100%;
  margin-top: 8px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-radius: 12px;
  background: #fff;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information{
  padding: 14px 18px;
  background: #f6f6f7;
  color: #34384a;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information[hidden]{
  display: none !important;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information:empty{
  display: none;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information-title{
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information-list{
  padding-left: 20px;
  margin: 0;
}

.deceti-page-pricingcalculator-stickers .deceti-option-information-list li{
  margin: 3px 0;
  font-size: 14px;
  line-height: 1.45;
}

@media (max-width: 576px){
  .deceti-page-pricingcalculator-stickers .deceti-option-select{
    min-height: 48px;
    font-size: 16px;
  }
}
/* END DECETI PAGE pricingcalculator-stickers */

/* DECETI PAGE pricingcalculator-options-stickers */
.deceti-page-pricingcalculator-options-stickers .deceti-finishing dl{margin:0;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing dt{margin:0 0 10px 0;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing dd{margin:10px 0 0 0;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing .finishing-header{
  border-radius:15px;
  background-color:var(--calc-accent, var(--calc-accent));
  padding:0 30px;
  height:40px;
  display:flex;
  align-items:center;
  color:var(--calc-accent-text, var(--calc-accent-text));
}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing .finishing-card{
  margin:10px 20px 0 20px;
  border-radius:15px;
  background-color:var(--calc-accent-soft, var(--calc-accent-soft));
  padding:10px 20px;
  text-align:left;
}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing .finishing-title{font-size:18px;font-weight:700;margin:0 0 6px 0;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing .finishingnotice{
  display:inline-block;
  margin:6px 0 8px 0;
  padding:4px 10px;
  border-radius:999px;
  font-size:13px;
  font-weight:600;
  background:rgba(0,0,0,.08);
}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing label{font-size:18px;font-weight:600;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing select{width:100%;max-width:420px;border-radius:10px;padding:8px 10px;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing input[type="checkbox"]{transform:scale(1.2);margin:4px 6px 0 0;}
.deceti-page-pricingcalculator-options-stickers .deceti-finishing input[type="checkbox"],

.deceti-page-pricingcalculator-options-stickers .deceti-finishing input[type="radio"]{-webkit-appearance:auto !important;appearance:auto !important;}

.deceti-page-pricingcalculator-options-stickers ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list>label{display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list>label>.table-cell{flex:1 1 0;padding:6px 6px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list .table-cell.save{float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list .selected{background-color:var(--calc-accent-soft) !important;color:var(--calc-accent-text) !important;}
.deceti-page-pricingcalculator-options-stickers ul.quantity-list .selected .table-cell,

.deceti-page-pricingcalculator-options-stickers ul.quantity-list .selected .table-cell.save{color:var(--calc-accent-text) !important;}

.deceti-page-pricingcalculator-options-stickers .tooltipquantity{
  font-weight:500;font-size:100%;color:#fff;top:-12px;min-width:30px;
  background:rgb(255,66,66);border-radius:4px;padding:5px 10px;text-align:center;
}

.deceti-page-pricingcalculator-options-stickers #Total_Price_Each .total-each-row{display:flex;gap:8px;align-items:baseline;justify-content:flex-end;}
.deceti-page-pricingcalculator-options-stickers #Total_Price_Each .total-each-price{margin:5px 0 0;font-weight:500;font-size:16px;}
.deceti-page-pricingcalculator-options-stickers #Total_Price_Each .total-each-text{opacity:.75;font-size:12px;line-height:1;}

.deceti-page-pricingcalculator-options-stickers .my-big-input{height:40px;}

.deceti-page-pricingcalculator-options-stickers.container.total label{
    font-size: 15px !important;
}

.deceti-page-pricingcalculator-options-stickers /* ==========================================================
   BOX OPTIONS + PRODUCTION TIME
   ========================================================== */

.deceti-option-selector-block{
  width: 100%;
  margin: 15px 0 0;
  padding: 0;
  text-align: left;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-selector-main-label{
  display: block;
  margin: 0 0 7px 4px;
  color: #111827;
  font-size: 17px;
  font-weight: 700;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-selector-wrap{
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: transparent;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-select-row{
  width: 100%;
  margin: 0;
  padding: 0;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-select-label{
  display: block;
  margin: 0 0 6px 4px;
  color: #34384a;
  font-size: 15px;
  font-weight: 700;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-select{
  display: block;
  width: 100%;
  max-width: none;
  min-height: 52px;
  padding: 10px 44px 10px 18px;
  border: 2px solid #d4dce8;
  border-radius: 24px;
  outline: none;
  background-color: #fff;
  color: #111827;
  font-size: 17px;
  line-height: 1.25;
  cursor: pointer;
  box-shadow: none;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-select:focus{
  border-color: var(--deceti-color-primary);
  box-shadow: 0 0 0 3px var(--calc-accent-soft);
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information-wrap{
  width: 100%;
  margin-top: 8px;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-radius: 12px;
  background: #fff;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information{
  padding: 14px 18px;
  background: #f6f6f7;
  color: #34384a;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information[hidden]{
  display: none !important;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information:empty{
  display: none;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information-title{
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information-list{
  padding-left: 20px;
  margin: 0;
}

.deceti-page-pricingcalculator-options-stickers .deceti-option-information-list li{
  margin: 3px 0;
  font-size: 14px;
  line-height: 1.45;
}

@media (max-width: 576px){
  .deceti-page-pricingcalculator-options-stickers .deceti-option-select{
    min-height: 48px;
    font-size: 16px;
  }
}
/* END DECETI PAGE pricingcalculator-options-stickers */

/* Sticker-only inline migration utilities. */
.deceti-page-pricingcalculator-stickers .deceti-sticker-weight-700,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-weight-700{font-weight:700}.deceti-page-pricingcalculator-stickers .deceti-sticker-font-13,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-font-13{font-size:13px}.deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel{height:auto;padding:15px 20px;border-radius:15px;background:var(--deceti-color-panel-soft);text-align:left}.deceti-page-pricingcalculator-stickers .deceti-sticker-section-full,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-section-full{width:100%;padding-top:0}.deceti-page-pricingcalculator-stickers .deceti-sticker-column,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-column{margin-top:10px;padding-left:0;text-align:center}.deceti-page-pricingcalculator-stickers .deceti-sticker-width-80,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-width-80{width:80px}.deceti-page-pricingcalculator-stickers .deceti-sticker-margin-0,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-margin-0{margin:0}.deceti-page-pricingcalculator-stickers .deceti-sticker-overflow-visible,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-overflow-visible{overflow:visible}.deceti-page-pricingcalculator-stickers .deceti-sticker-flex-right,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-flex-right{flex:1;text-align:right}.deceti-page-pricingcalculator-stickers .deceti-sticker-flex-left,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-flex-left{flex:1;text-align:left}.deceti-page-pricingcalculator-stickers .deceti-sticker-flex-center,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-flex-center{flex:1;text-align:center}.deceti-page-pricingcalculator-stickers .deceti-sticker-size-input,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-size-input{width:80px;height:30px}.deceti-page-pricingcalculator-stickers .deceti-sticker-float-left,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-float-left{float:left}.deceti-page-pricingcalculator-stickers .deceti-sticker-pb-center,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-pb-center{padding-bottom:20px;text-align:center}.deceti-page-pricingcalculator-stickers .deceti-sticker-pl0-mt10,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-pl0-mt10{margin-top:10px;padding-left:0}.deceti-page-pricingcalculator-stickers .deceti-sticker-pl-0,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-pl-0{padding-left:0}.deceti-page-pricingcalculator-stickers .deceti-sticker-gallery-image,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-gallery-image{max-width:100%;height:auto;border-radius:30px}.deceti-page-pricingcalculator-stickers .deceti-sticker-padding-main,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-padding-main{padding:20px 20px 0}.deceti-page-pricingcalculator-stickers .deceti-sticker-padding-0,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-padding-0{padding:0!important}.deceti-page-pricingcalculator-stickers .deceti-sticker-option-row,.deceti-page-pricingcalculator-options-stickers .deceti-sticker-option-row{margin-top:10px;text-align:left}
/* END sticker-only inline migration utilities. */

/* DECETI PAGE pricingcalculator-frame */
.deceti-page-pricingcalculator-frame [id^="pc_mainimage_wrap_"]:focus,
.deceti-page-pricingcalculator-frame [id^="pc_mainimage_"]:focus,
.deceti-page-pricingcalculator-frame [id^="pc_calculator_panel_"]:focus {
  outline: none !important;
  box-shadow: none !important;
}
/* END DECETI PAGE pricingcalculator-frame */

/* DECETI PAGE pricingcalculator-frame layout */
.deceti-page-pricingcalculator-frame .deceti-frame-layout{min-height:370px}
.deceti-page-pricingcalculator-frame .deceti-frame-column{padding-left:0;text-align:center;margin-top:10px}
.deceti-page-pricingcalculator-frame .deceti-frame-gallery-panel{padding:15px 0 5px;border-radius:25px;background:var(--deceti-color-panel-gray)}
.deceti-page-pricingcalculator-frame .deceti-frame-main-spacing{margin-bottom:20px}
.deceti-page-pricingcalculator-frame .deceti-frame-mainimage-wrap{display:inline-block;padding:10px;border:3px solid var(--calc-frame-outline);border-radius:25px;background:var(--deceti-color-surface);outline:none!important;box-shadow:none!important}
.deceti-page-pricingcalculator-frame .deceti-frame-mainimage{display:block;border-radius:20px;border:0!important;outline:0!important;box-shadow:none!important}
.deceti-page-pricingcalculator-frame .deceti-frame-card-list{display:flex;flex-wrap:wrap;justify-content:center;max-width:620px;margin:0 auto}
.deceti-page-pricingcalculator-frame .deceti-frame-empty{width:90%;margin:10px}
.deceti-page-pricingcalculator-frame .deceti-frame-card{width:135px;margin:10px;padding:10px;border:3px solid var(--deceti-color-surface);border-radius:15px;background:var(--deceti-color-surface);box-sizing:border-box;cursor:pointer;user-select:none}
.deceti-page-pricingcalculator-frame .deceti-frame-card-image-wrap,.deceti-page-pricingcalculator-frame .deceti-frame-card-name,.deceti-page-pricingcalculator-frame .deceti-frame-card-radio{text-align:center}
.deceti-page-pricingcalculator-frame .deceti-frame-card-image{display:block;max-width:120px;height:auto;margin:0 auto}
.deceti-page-pricingcalculator-frame .deceti-frame-card-placeholder{display:flex;align-items:center;justify-content:center;width:120px;height:70px;margin:0 auto;border:1px solid var(--deceti-color-border-muted);border-radius:10px}
.deceti-page-pricingcalculator-frame .deceti-frame-card-name,.deceti-page-pricingcalculator-frame .deceti-frame-card-radio{margin-top:10px}
.deceti-page-pricingcalculator-frame .deceti-frame-form-panel{min-height:351px;padding:15px 20px;border-radius:25px;background:var(--deceti-color-panel);outline:0!important;box-shadow:none!important}
.deceti-page-pricingcalculator-frame .deceti-frame-main-name{font-weight:600}.deceti-page-pricingcalculator-frame .deceti-frame-pricebox{margin-bottom:8px}
.deceti-page-pricingcalculator-frame .deceti-frame-quantity-control{margin:12px 0;text-align:center}.deceti-page-pricingcalculator-frame .deceti-frame-quantity-select{width:260px;padding:8px 10px;border-radius:10px;font-size:18px}
.deceti-page-pricingcalculator-frame .deceti-frame-custom-quantity-wrap{margin-top:10px;text-align:center}.deceti-page-pricingcalculator-frame .deceti-frame-custom-quantity{width:200px;margin:0 auto}
.deceti-page-pricingcalculator-frame .deceti-frame-contact-row{font-size:18px}.deceti-page-pricingcalculator-frame .deceti-frame-contact-input{width:90%}.deceti-page-pricingcalculator-frame .deceti-frame-comment{margin-top:10px}
.deceti-page-pricingcalculator-frame .deceti-frame-total{width:90%!important;margin-top:15px;padding:8px 10px;border-radius:15px;background:var(--deceti-color-surface);text-align:center}.deceti-page-pricingcalculator-frame .deceti-frame-total-primary{height:40px;border:3px solid var(--calc-accent)}.deceti-page-pricingcalculator-frame .deceti-frame-total-danger{height:70px;border:3px solid var(--deceti-color-danger)}
.deceti-page-pricingcalculator-frame .deceti-frame-captcha{width:fit-content;margin:15px auto 0}.deceti-page-pricingcalculator-frame .deceti-frame-captcha-error{margin-top:6px}.deceti-page-pricingcalculator-frame .deceti-frame-upload-warning{margin-top:12px}
.deceti-page-pricingcalculator-frame .deceti-frame-submit-row{margin-top:18px}.deceti-page-pricingcalculator-frame .deceti-frame-submit-column{padding:0}.deceti-page-pricingcalculator-frame .deceti-frame-submit{width:94%;margin:0 10px}
/* END DECETI PAGE pricingcalculator-frame layout */

/* DECETI PAGE pricingcalculator-base */
.deceti-page-pricingcalculator-base /* ===== Finishing outer white box ===== */
  .deceti-finishing .finishing-module{
    margin: 10px 20px 0 20px;
    background:#fff;
    border-radius:15px;
    padding:14px 0 18px 0;  /* inner spacing, header + cards */
  }
  
  .deceti-page-pricingcalculator-base /* Keep your title aligned inside the white box */
  .deceti-finishing .finishing-module-title{
    margin: 0 20px; /* was 0 20px already, keep it */
  }
  
  .deceti-page-pricingcalculator-base /* Cards sit inside white box */
  .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px; /* keep consistent padding */
  }
  
  
  .deceti-page-pricingcalculator-base .deceti-finishing .finishing-module-title{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent)) !important;
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text)) !important;
    font-weight:700;
    font-size:18px;
    margin:0 20px;
  }
  
  .deceti-page-pricingcalculator-base /* optional: tighten cards under header */
  .deceti-finishing .finishing-card{ margin-top:10px; }
  
  .deceti-page-pricingcalculator-base /* ===== Shared finishing theme (both calculators) ===== */
  .deceti-finishing dl{margin:0;}
  .deceti-page-pricingcalculator-base .deceti-finishing dt{margin:0 0 10px 0;}
  .deceti-page-pricingcalculator-base .deceti-finishing dd{margin:10px 0 0 0;}
  
  .deceti-page-pricingcalculator-base .deceti-finishing .finishing-header{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent));
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text) );
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
    border-radius:15px;
    background-color: var(--calc-accent-soft, var(--calc-accent-soft) );
    padding:10px 20px;
    text-align:left;
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing .finishing-title{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px 0;
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing .finishingnotice{
    display:inline-block;
    margin:6px 0 8px 0;
    padding:4px 10px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    background: rgba(0,0,0,0.08);
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing label{
    font-size:18px;
    font-weight:600;
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing select{
    width:100%;
    max-width:420px;
    border-radius:10px;
    padding:8px 10px;
  }
  
  .deceti-page-pricingcalculator-base .deceti-finishing input[type="checkbox"]{
    transform: scale(1.2);
    margin: 4px 6px 0 0;
  }

  .deceti-page-pricingcalculator-base .blue-top-line{
    background-color:#1ad4fd;border-top-left-radius:10px;border-top-right-radius:10px;
    color:var(--calc-accent-text);font-weight:bold;font-size:25px;text-align:center;
    display:flex;justify-content:center;align-items:center;height:50px;
  }
  .deceti-page-pricingcalculator-base .blue-top-text{display:block;}

  .deceti-page-pricingcalculator-base /* Gallery */
  .native-gallery-thumb{padding:0;border:0;background:transparent;}
  .deceti-page-pricingcalculator-base .native-gallery-thumb img{
    width:120px;height:120px;object-fit:cover;border-radius:14px;border:3px solid transparent;
    transition:border-color .2s ease,transform .2s ease;
  }
  .deceti-page-pricingcalculator-base .native-gallery-thumb.is-active img{border-color:var(--thumb-active-color);transform:scale(1.05);}

  .deceti-page-pricingcalculator-base /* Shapes */
  .icon{max-width:100px;max-height:100px;}
  .deceti-page-pricingcalculator-base .icon:hover{fill:var(--deceti-color-primary);}
  .deceti-page-pricingcalculator-base .col-md-3.shape-div.shapezero{
    background:var(--deceti-color-primary);border-radius:20px;color:#fff;text-align:center;
    width:100px;height:100px;margin-left:auto;margin-right:auto;padding:6px;
    display:flex;align-items:center;justify-content:center;line-height:1.2;
    word-break:break-word;overflow:hidden;
  }

  .deceti-page-pricingcalculator-base .icon-scrollbar{
    overflow-x:hidden;
    overflow-y:scroll;
    height:200px;
    width:100%;
    scrollbar-width: thin;
    scrollbar-color: #888 var(--deceti-color-primary);
  }
  
  .deceti-page-pricingcalculator-base /* Quantity list */
  ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list>label{
    display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
  }
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list>label>.table-cell{
    flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
  }
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
  .deceti-page-pricingcalculator-base ul.quantity-list .table-cell.save{
    float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
  }
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
  .deceti-page-pricingcalculator-base ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

  .deceti-page-pricingcalculator-base ul.quantity-list .selected{
    background-color: var(--calc-accent-soft) !important;
    color: var(--calc-accent-text) !important;
  }
  .deceti-page-pricingcalculator-base ul.quantity-list .selected .table-cell,

  .deceti-page-pricingcalculator-base ul.quantity-list .selected .table-cell.save{
    color: var(--calc-accent-text) !important;
  }

  .deceti-page-pricingcalculator-base ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

  .deceti-page-pricingcalculator-base .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
.deceti-page-pricingcalculator-base .total h4{font-size:16px;font-weight:500;}

  @media (max-width:900px){
    .deceti-page-pricingcalculator-base .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-base .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
    .deceti-page-pricingcalculator-base .responsive .container .total h4{font-size:13px;font-weight:500;}
    .deceti-page-pricingcalculator-base .responsive .quantity-list{font-size:14px;}
  }
  @media (max-width:500px){
    .deceti-page-pricingcalculator-base .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-base .responsive .quantity-list{font-size:14px;}
    .deceti-page-pricingcalculator-base .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
    .deceti-page-pricingcalculator-base .responsive .container .total h4{font-size:14px;font-weight:500;}
  }

  .deceti-page-pricingcalculator-base .tooltipquantity{
    font-weight:500;font-size:100%;color:#fff;top:-12px;min-width:30px;
    background:rgb(255,66,66);border-radius:4px;padding:5px 10px;text-align:center;
  }

  .deceti-page-pricingcalculator-base #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
  .deceti-page-pricingcalculator-base #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

  .deceti-page-pricingcalculator-base /* Size selector UI */
  #sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-1{
    display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
  }
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-1 input[type="radio"]+label{
    display:inline-block;cursor:pointer;font-weight:700;font-size:16px;line-height:1.2;
    min-width:110px;min-height:44px;padding:10px 12px;text-align:center;border:1px solid #ccc;
    border-radius:6px;color:#000;
    transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
  }
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
    background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
    background-position:-150%;background-size:400%;background-color:#000;border-color:#262626;color:#fff;
    cursor:default;pointer-events:none;
  }
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
    color:#fff;border-color:var(--deceti-color-focus);background-color:var(--deceti-color-primary);
    box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-2{display:block;}
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-2 .size-row{
    display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;width:100%;
  }
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
  .deceti-page-pricingcalculator-base #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

  .deceti-page-pricingcalculator-base .dimension-label{ font-size: 16px; font-weight: 600; }

  .deceti-page-pricingcalculator-base #product-options-calc button.btn{
    margin-bottom: 12px;
  }
  
  .deceti-page-pricingcalculator-base #product-options-calc button.btn:last-of-type{
   margin-bottom: 0;
  }

  .deceti-page-pricingcalculator-base /* ==========================================================
     PACKAGING OPTION SELECTOR
     ========================================================== */

  .deceti-packaging-choice{
    position: relative;
    overflow: visible !important;
    z-index: 1000;
  }

  .deceti-page-pricingcalculator-base #shipping_packaging_option_choice_wrap,


  .deceti-page-pricingcalculator-base #shipping_packaging_option_choice_wrap .deceti-packaging-choice-inner,


  .deceti-page-pricingcalculator-base #packaging_combined_field_wrap{
    overflow: visible !important;
  }

  .deceti-page-pricingcalculator-base #packaging_combined_field_wrap{
    position: relative;
    z-index: 1001;
  }

  .deceti-page-pricingcalculator-base #deceti_packaging_dropdown{
    position: relative;
    z-index: 1002;
  }

  .deceti-page-pricingcalculator-base #deceti_packaging_dropdown_menu{
    z-index: 10000 !important;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-select-row{
    padding: 4px;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-select-label{
    display: block;
    margin: 0 0 6px 4px;
    color: #34384a;
    font-size: 16px;
    font-weight: 700;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-select{
    width: 100%;
    height: 48px;
    padding: 8px 14px;
    border: 2px solid #d8dde5;
    border-radius: 18px;
    background-color: #fff;
    font-size: 18px;
    line-height: 1.2;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-select:focus{
    border-color: var(--deceti-color-primary);
    box-shadow:
      0 0 0 4px
      var(--calc-accent-soft);
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information-wrap{
    margin-top: 8px;
    overflow: hidden;
    border: 1px solid #d9dde3;
    border-radius: 4px;
    background: #fff;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information{
    padding: 14px 18px;
    background: #f6f6f7;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information[hidden]{
    display: none !important;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information:empty{
    display: none;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information-title{
    margin-bottom: 6px;
    color: #34384a;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information-list{
    padding-left: 20px;
    margin: 0;
    color: #34384a;
  }

  .deceti-page-pricingcalculator-base .deceti-packaging-information-list li{
    margin: 2px 0;
    padding-left: 1px;
    font-size: 14px;
    line-height: 1.45;
  }
/* END DECETI PAGE pricingcalculator-base */

/* DECETI PAGE pricingcalculator-legacy */
.deceti-page-pricingcalculator-legacy /* ===== Finishing outer white box ===== */
  .deceti-finishing .finishing-module{
    margin: 10px 20px 0 20px;
    background:#fff;
    border-radius:15px;
    padding:14px 0 18px 0;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-module-title{
    margin: 0 20px;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-module-title{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent)) !important;
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text)) !important;
    font-weight:700;
    font-size:18px;
    margin:0 20px;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-card{ margin-top:10px; }

  .deceti-page-pricingcalculator-legacy .deceti-finishing dl{margin:0;}
  .deceti-page-pricingcalculator-legacy .deceti-finishing dt{margin:0 0 10px 0;}
  .deceti-page-pricingcalculator-legacy .deceti-finishing dd{margin:10px 0 0 0;}

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-header{
    border-radius:15px;
    background-color: var(--calc-accent, var(--calc-accent));
    padding:0 30px;
    height:40px;
    display:flex;
    align-items:center;
    color: var(--calc-accent-text, var(--calc-accent-text) );
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-card{
    margin:10px 20px 0 30px;
    border-radius:15px;
    background-color: var(--calc-accent-soft, var(--calc-accent-soft) );
    padding:10px 20px;
    text-align:left;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishing-title{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px 0;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing .finishingnotice{
    display:inline-block;
    margin:6px 0 8px 0;
    padding:4px 10px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    background: rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing label{
    font-size:18px;
    font-weight:600;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing select{
    width:100%;
    max-width:420px;
    border-radius:10px;
    padding:8px 10px;
  }

  .deceti-page-pricingcalculator-legacy .deceti-finishing input[type="checkbox"]{
    transform: scale(1.2);
    margin: 4px 6px 0 0;
  }

  .deceti-page-pricingcalculator-legacy .blue-top-line{
    background-color:#1ad4fd;
    border-top-left-radius:10px;
    border-top-right-radius:10px;
    color:var(--calc-accent-text);
    font-weight:bold;
    font-size:25px;
    text-align:center;
    display:flex;
    justify-content:center;
    align-items:center;
    height:50px;
  }

  .deceti-page-pricingcalculator-legacy .blue-top-text{display:block;}

  .deceti-page-pricingcalculator-legacy /* Gallery */
  .native-gallery-thumb{padding:0;border:0;background:transparent;}
  .deceti-page-pricingcalculator-legacy .native-gallery-thumb img{
    width:120px;
    height:120px;
    object-fit:cover;
    border-radius:14px;
    border:3px solid transparent;
    transition:border-color .2s ease,transform .2s ease;
  }
  .deceti-page-pricingcalculator-legacy .native-gallery-thumb.is-active img{
    border-color:var(--thumb-active-color);
    transform:scale(1.05);
  }

  .deceti-page-pricingcalculator-legacy /* Shapes */
  .icon{max-width:100px;max-height:100px;}
  .deceti-page-pricingcalculator-legacy .icon:hover{fill:var(--deceti-color-primary);}
  .deceti-page-pricingcalculator-legacy .col-md-3.shape-div.shapezero{
    background:var(--deceti-color-primary);
    border-radius:20px;
    color:#fff;
    text-align:center;
    width:100px;
    height:100px;
    margin-left:auto;
    margin-right:auto;
    padding:6px;
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:1.2;
    word-break:break-word;
    overflow:hidden;
  }

  .deceti-page-pricingcalculator-legacy .icon-scrollbar{
    overflow-x:hidden;
    overflow-y:scroll;
    height:200px;
    width:100%;
    scrollbar-width: thin;
    scrollbar-color: #888 var(--deceti-color-primary);
  }

  .deceti-page-pricingcalculator-legacy /* Quantity list */
  ul.quantity-list{width:100%;margin:0;padding-left:0;list-style:none;}
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list{display:block;width:100%;margin:0;padding:0;border-radius:5px;}
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list>label{
    display:flex;align-items:center;flex-wrap:nowrap;width:100%;margin:0;padding:0;
  }
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list>label>.table-cell{
    flex:1 1 0;padding:2px;white-space:nowrap;min-width:0;font-size:16px;text-align:center;
  }
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list>label>.table-cell:first-child{text-align:left;}
  .deceti-page-pricingcalculator-legacy ul.quantity-list .table-cell.save{
    float:none!important;display:block!important;color:var(--selected-color-save,#1a7f37);font-size:16px;
  }
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list:hover>label{background-color:var(--selected-color,#0b5ed7);color:#fff;}
  .deceti-page-pricingcalculator-legacy ul.quantity-list>li.quantity-list:hover .table-cell.save{color:#fff;}

  .deceti-page-pricingcalculator-legacy ul.quantity-list .selected{
    background-color: var(--calc-accent-soft) !important;
    color: var(--calc-accent-text) !important;
  }
  .deceti-page-pricingcalculator-legacy ul.quantity-list .selected .table-cell,

  .deceti-page-pricingcalculator-legacy ul.quantity-list .selected .table-cell.save{
    color: var(--calc-accent-text) !important;
  }

  .deceti-page-pricingcalculator-legacy ul.quantity-list .table-cell input:hover{color:rgb(128,128,128);background-color:#fff;}

  .deceti-page-pricingcalculator-legacy .total h1{font-size:var(--deceti-total-h1-desktop-size);font-weight:700;}
.deceti-page-pricingcalculator-legacy .total h4{font-size:16px;font-weight:500;}

  @media (max-width:900px){
    .deceti-page-pricingcalculator-legacy .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-legacy .responsive .container .total h1{font-size:var(--deceti-total-h1-tablet-size);font-weight:var(--deceti-total-h1-tablet-weight);}
    .deceti-page-pricingcalculator-legacy .responsive .container .total h4{font-size:13px;font-weight:500;}
    .deceti-page-pricingcalculator-legacy .responsive .quantity-list{font-size:14px;}
  }

  @media (max-width:500px){
    .deceti-page-pricingcalculator-legacy .col-md-3.shape-div.shapezero{width:70px;height:70px;padding-top:6px;font-size:12px;}
    .deceti-page-pricingcalculator-legacy .responsive .quantity-list{font-size:14px;}
    .deceti-page-pricingcalculator-legacy .responsive .container .total h1{font-size:var(--deceti-total-h1-mobile-size);font-weight:700;}
    .deceti-page-pricingcalculator-legacy .responsive .container .total h4{font-size:14px;font-weight:500;}
  }

  .deceti-page-pricingcalculator-legacy .tooltipquantity{
    font-weight:500;
    font-size:100%;
    color:#fff;
    top:-12px;
    min-width:30px;
    background:rgb(255,66,66);
    border-radius:4px;
    padding:5px 10px;
    text-align:center;
  }

  .deceti-page-pricingcalculator-legacy #product-options.standard #quantities .save{color:var(--deceti-color-success);font-size:90%;}
  .deceti-page-pricingcalculator-legacy #finishing_dynamic_wrapper label{font-size:18px;font-weight:600;}

  .deceti-page-pricingcalculator-legacy /* Size selector UI */
  #sizebox-wrapper{text-align:left!important;margin:0!important;padding:0!important;width:100%;}
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-1{
    display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;align-items:flex-start;
  }
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-1 input[type="radio"]{position:absolute;left:-9999px;}
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-1 input[type="radio"]+label{
    display:inline-block;
    cursor:pointer;
    font-weight:700;
    font-size:16px;
    line-height:1.2;
    min-width:110px;
    min-height:44px;
    padding:10px 12px;
    text-align:center;
    border:1px solid #ccc;
    border-radius:6px;
    color:#000;
    transition:background-color .12s ease-out,color .12s ease-out,border-color .12s ease-out,box-shadow .12s ease-out;
  }
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-1 input[type="radio"]:checked+label{
    background-image:linear-gradient(135deg,var(--deceti-color-primary) 30%,rgba(255,255,255,0.1) 70%,var(--deceti-color-primary) 50%);
    background-position:-150%;
    background-size:400%;
    background-color:#000;
    border-color:#262626;
    color:#fff;
    cursor:default;
    pointer-events:none;
  }
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-1 input[type="radio"]+label:hover{
    color:#fff;
    border-color:var(--deceti-color-focus);
    background-color:var(--deceti-color-primary);
    box-shadow:0 3px 3px -2px rgba(0,0,0,0.13),0 6px 8px 1px rgba(0,0,0,0.1),0 2px 11px 2px rgba(0,0,0,0.08);
  }

  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-2{display:block;}
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-2 .size-row{
    display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:0;width:100%;
  }
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-2 input[type="radio"]{position:static;left:auto;margin:0;transform:scale(1.1);}
  .deceti-page-pricingcalculator-legacy #sizebox-wrapper.mode-2 label{display:inline-block;margin:0;padding:0;font-size:16px;font-weight:600;text-align:left;}

  .deceti-page-pricingcalculator-legacy .dimension-label{ font-size: 16px; font-weight: 600; }

  .deceti-page-pricingcalculator-legacy #product-options-calc button.btn{
    margin-bottom: 12px;
  }

  .deceti-page-pricingcalculator-legacy #product-options-calc button.btn:last-of-type{
    margin-bottom: 0;
  }

  .deceti-page-pricingcalculator-legacy /* ===== New calculator layout ===== */
  .calculator .calc-right-top .summary-row{
    display:flex;
    flex-wrap:nowrap;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-top .summary-card{
    padding-left:5px;
    padding-right:5px;
    text-align:center;
    margin-bottom:5px;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-top .summary-card-inner{
    min-height:100%;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-top .summary-value{
    font-size:25px;
    padding-top:10px;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-top .summary-note{
    font-size:12px;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-actions .action-buttons-row{
    display:flex;
    flex-wrap:nowrap;
    margin-left:-5px;
    margin-right:-5px;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-actions .blockbutton{
    padding-left:5px;
    padding-right:5px;
    margin-top:0 !important;
  }

  .calculator.deceti-page-pricingcalculator-legacy .calc-right-actions .blockbutton input{
    width:100% !important;
    margin:0 0 5px 0 !important;
  }

  @media (max-width: 991px){
    .calculator.deceti-page-pricingcalculator-legacy .calc-right-top .summary-row{
      flex-wrap:wrap;
    }
    .calculator.deceti-page-pricingcalculator-legacy .calc-right-actions .action-buttons-row{
      flex-wrap:wrap;
    }
  }
/* END DECETI PAGE pricingcalculator-legacy */

/* Explicit calculator utility classes used after inline-style migration. */
.deceti-theme .deceti-ui-width-90{width:90%}.deceti-theme .deceti-ui-width-full{width:100%}.deceti-theme .deceti-ui-text-center{text-align:center}.deceti-theme .deceti-ui-price-value{padding-top:10px;font-size:25px}.deceti-theme .deceti-ui-help-text{font-size:12px}.deceti-theme .deceti-ui-font-16{font-size:16px}.deceti-theme .deceti-ui-mt-10{margin-top:10px}.deceti-theme .deceti-ui-mt-15{margin-top:15px}.deceti-theme .deceti-ui-clear-both{clear:both}.deceti-theme .deceti-ui-flex-2{flex:2}.deceti-theme .deceti-ui-flex-1{flex:1}.deceti-theme .deceti-ui-flex-40{flex:0 0 40px}.deceti-theme .deceti-ui-total-inner{padding-bottom:10px;border-radius:10px}
.deceti-theme .deceti-ui-summary-layout{margin-top:10px;margin-bottom:10px;padding:15px 25px;border-radius:15px;background:var(--deceti-color-surface)}.deceti-theme .deceti-ui-contact-panel{margin-top:20px;margin-bottom:10px;padding:20px;border-radius:15px;background:var(--deceti-color-panel-soft)}.deceti-theme .deceti-ui-contact-title{margin-bottom:10px;font-size:18px;font-weight:700}.deceti-theme .deceti-ui-contact-textarea{width:100%;border-radius:15px!important}.deceti-theme .deceti-ui-submit-full{width:100%;margin-top:10px}.deceti-theme .deceti-ui-submit-wide{width:94%;margin:10px}.deceti-theme .deceti-ui-shipping-row{display:flex;align-items:center;gap:8px}.deceti-theme .deceti-ui-shipping-zone{width:100%;height:40px;padding:6px 10px;font-size:15px;line-height:1.2}.deceti-theme .deceti-ui-shipping-postcode{width:100%;height:40px;padding:6px 12px;font-size:15px}.deceti-theme .deceti-ui-shipping-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0}.deceti-theme .deceti-ui-total-card-fill{height:100%;padding:0 10px 10px;border-radius:10px}.deceti-theme .deceti-ui-price-summary{align-items:stretch;margin-top:15px}.deceti-theme .deceti-ui-alert-full{display:block;box-sizing:border-box;width:100%;max-width:none;margin:0}
/* END explicit calculator utility classes. */
.deceti-theme .deceti-ui-pl-20{padding-left:20px}.deceti-theme .deceti-ui-half-float{float:left;width:50%}.deceti-theme .deceti-ui-font-18{font-size:18px}.deceti-theme .deceti-ui-label-small{font-size:14px;font-weight:600}.deceti-theme .deceti-ui-price-column{margin-bottom:5px;padding-left:10px;text-align:center}.deceti-theme .deceti-ui-field-row{width:100%;margin:0 0 5px}.deceti-theme .deceti-ui-width-full-important{width:100%!important}.deceti-theme .deceti-ui-rounded-top{padding-top:5px;border-radius:15px}.deceti-theme .deceti-ui-clear-mt-10{clear:both;margin-top:10px}.deceti-theme .deceti-ui-px-0{padding-right:0;padding-left:0}.deceti-theme .deceti-ui-calculator-padding{padding:30px 40px 60px}.deceti-theme .deceti-ui-calculator-padding-vertical{padding:20px 12px 30px}.deceti-theme .deceti-ui-calculator-shell-hidden{margin-top:40px;padding-right:0;padding-left:0;overflow:hidden;border-radius:15px}.deceti-theme .deceti-ui-calculator-shell-visible{margin-top:40px;padding-right:0;padding-left:0;overflow:visible;border-radius:15px}.deceti-theme .deceti-ui-total-box{justify-content:center;border-radius:10px}.deceti-theme .deceti-ui-pl-0{padding-left:0}.deceti-theme .deceti-ui-text-center-mb-5{margin-bottom:5px;text-align:center}.deceti-theme .deceti-ui-text-center-mt-10{margin-top:10px;text-align:center}
.deceti-theme .deceti-ui-calc-panel{padding-top:15px;border-radius:15px;background:var(--deceti-color-surface)}.deceti-theme .deceti-ui-calculated-choice-wrap{margin-top:10px;padding:6px;border-radius:15px;background:var(--deceti-color-surface)}.deceti-theme .deceti-ui-shipping-message-short,.deceti-theme .deceti-ui-shipping-message-long{margin-top:10px;padding-top:0;padding-left:30px;padding-bottom:36px;border:3px solid var(--calc-accent);border-radius:15px;background:var(--deceti-color-surface);text-align:center}.deceti-theme .deceti-ui-shipping-message-short{height:40px}.deceti-theme .deceti-ui-shipping-message-long{height:66px}

/* Sticker calculator presentation: theme-owned, never supplied by Twig. */
.deceti-page-pricingcalculator-stickers .deceti-sticker-gallery{--thumb-active-color:var(--deceti-color-primary)}
.deceti-page-pricingcalculator-stickers .deceti-sticker-custom-dimensions{height:auto;padding:15px 20px 0;border-radius:15px;background:var(--calc-accent)}
.deceti-page-pricingcalculator-stickers .deceti-sticker-total-header,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-total-header{display:flex;align-items:center;padding:15px 20px;border-radius:15px;background:var(--calc-accent);color:var(--calc-accent-text)}
.deceti-page-pricingcalculator-stickers .deceti-sticker-total-header{height:60px}
.deceti-page-pricingcalculator-stickers .deceti-sticker-free-shipping{height:40px;padding:8px 0 36px 30px;border:3px solid var(--calc-accent);border-radius:15px;background:var(--deceti-color-surface);text-align:center}
.deceti-page-pricingcalculator-options-stickers.deceti-sticker-summary-shell{--selected-color:var(--deceti-color-primary);--selected-color-save:var(--deceti-color-success);margin-top:10px;margin-bottom:10px;padding:15px 25px;border:3px solid var(--calc-accent);border-radius:15px;background:var(--deceti-color-surface)}
.deceti-page-pricingcalculator-stickers .deceti-sticker-upload-frame{border:0}
.deceti-page-pricingcalculator-stickers .deceti-sticker-error,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-error{padding:10px 12px;border:1px solid var(--calc-error-border);border-radius:10px;background:var(--calc-error-background);color:var(--calc-error-text);font-weight:600;text-align:left}
.deceti-page-pricingcalculator-stickers .deceti-sticker-error-main{margin:12px 20px 0}
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-error-options{margin:10px 0 0}
.deceti-page-pricingcalculator-stickers .deceti-sticker-total-each,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-total-each{flex:1;text-align:right}
.deceti-page-pricingcalculator-stickers #submit_form{width:100%}
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-contact-block{margin-top:15px}

/* Remaining shared main-calculator geometry; visibility stays in Twig/JS. */
.calculator.calculator-vertical.deceti-page-pricingcalculator-v{width:100%!important;max-width:560px!important;margin-right:auto!important;margin-left:auto!important}
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group>.blocksize,
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group>#frame_block_option1 .blocksize,
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group>#frame_block_pricing .blocksize{width:100%!important;max-width:100%!important;box-sizing:border-box}
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group select,
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group label,
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group label>span,
.calculator.calculator-vertical.deceti-page-pricingcalculator-v .vertical-group input.form-control{display:block;width:100%!important;max-width:100%!important;box-sizing:border-box}
.calculator.deceti-page-pricingcalculator-h .vertical-group>.blocksize,
.calculator.deceti-page-pricingcalculator-h .vertical-group>#frame_block_option1 .blocksize,
.calculator.deceti-page-pricingcalculator-h .vertical-group>#frame_block_pricing .blocksize,
.calculator.deceti-page-pricingcalculator-js .vertical-group>.blocksize,
.calculator.deceti-page-pricingcalculator-js .vertical-group>#frame_block_option1 .blocksize,
.calculator.deceti-page-pricingcalculator-js .vertical-group>#frame_block_pricing .blocksize{width:100%!important;max-width:100%!important;box-sizing:border-box}
.calculator.deceti-page-pricingcalculator-h .vertical-group select,
.calculator.deceti-page-pricingcalculator-h .vertical-group label,
.calculator.deceti-page-pricingcalculator-h .vertical-group label>span,
.calculator.deceti-page-pricingcalculator-h .vertical-group input.form-control,
.calculator.deceti-page-pricingcalculator-js .vertical-group select,
.calculator.deceti-page-pricingcalculator-js .vertical-group label,
.calculator.deceti-page-pricingcalculator-js .vertical-group label>span,
.calculator.deceti-page-pricingcalculator-js .vertical-group input.form-control{display:block;width:100%!important;max-width:100%!important;box-sizing:border-box}
.deceti-theme .deceti-main-clear-gap{clear:both;margin-top:10px}
.deceti-theme .deceti-main-contact-gap{margin-top:15px}
.deceti-theme .deceti-main-dimension-control{display:flex;align-items:center;gap:6px;max-width:180px;margin-top:.5rem}
.deceti-theme .deceti-main-runtime-message{margin-bottom:10px}
.deceti-theme .deceti-main-width-full{width:100%}
.deceti-theme .deceti-main-runtime-panel{margin-top:10px;padding:6px;border-radius:15px;background:var(--deceti-color-surface)}
.deceti-theme .deceti-main-action-full{width:100%;margin:0 0 5px}
.deceti-theme .deceti-main-scroll-panel{width:100%;overflow-x:auto}

/* Critical finishing-image fallback. Keep this in the primary calculator
 * stylesheet so a missing/cached optional component can never expose an
 * uploaded image at its original dimensions. */
.deceti-finishing .finishing-card {
  min-width: 0;
}

.deceti-finishing .finishing-card img {
  display: block !important;
  width: 68px !important;
  height: 54px !important;
  max-width: 68px !important;
  max-height: 54px !important;
  margin: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
}



/* source: catalog/view/stylesheet/deceti/components/calculators/finishing-preview.css */
/* Finishing option image preview. Scoped to DECETI-0 while the component is
 * validated there; markup is enhanced by finishing_preview.js. */
.deceti-finishing .finishing-card {
  position: relative;
  display: block !important;
  box-sizing: border-box;
  min-height: 86px;
  padding-right: 110px !important;
  min-width: 0;
  overflow: visible;
}

.deceti-finishing .finishing-card > :not(.deceti-finishing-preview) {
  min-width: 0;
  max-width: 100%;
}

.deceti-finishing .finishing-card > label {
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
}

.deceti-finishing .finishing-card > select,
.deceti-finishing .finishing-card > .form-control {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
}

/* DECETI-0 removes the browser arrow globally and draws its own. Some
 * finishing variants later replace the select background shorthand, which
 * also erases that arrow. Restore it at the component boundary. */
.deceti-theme.deceti-0 .deceti-finishing .finishing-card > select,
.deceti-theme.deceti-0 .deceti-finishing select.form-select,
.deceti-theme.deceti-0 #finishing_options_wrapper select,
.deceti-theme.deceti-0 #finishing_dynamic_wrapper select {
  padding-right: 2.65rem !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7.5l5 5 5-5' stroke='%23063b52' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1rem center !important;
  background-size: 14px 14px !important;
}

.deceti-finishing-preview {
  position: absolute;
  display: inline-grid;
  place-items: center;
  flex: 0 0 76px;
  width: 76px;
  height: 62px;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  margin: 0 !important;
  padding: 3px;
  border: 1px solid var(--object-card-border, #9bc8da);
  border-radius: 9px;
  background: var(--object-card-background, #fff);
  cursor: zoom-in;
  overflow: visible;
  vertical-align: middle;
}

.deceti-finishing-preview > img,
.deceti-finishing .finishing-card .deceti-finishing-preview > img {
  display: block !important;
  width: 68px !important;
  height: 54px !important;
  max-width: 68px !important;
  max-height: 54px !important;
  margin: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
}

.deceti-finishing-preview__plus {
  position: absolute;
  top: auto;
  right: -8px;
  bottom: -8px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 2px solid #fff;
  border-radius: 50%;
  color: var(--deceti-color-primary-dark, #003b55);
  background: var(--object-total-border, var(--calc-accent, #67dff5));
  box-shadow: 0 2px 7px rgb(0 42 64 / 24%);
  font-size: 19px;
  font-weight: 800;
  line-height: 1;
  pointer-events: none;
}

.deceti-finishing-preview:focus-visible {
  outline: 3px solid var(--deceti-color-primary, #02b5ff);
  outline-offset: 3px;
}

.deceti-finishing-lightbox[hidden] { display: none !important; }

.deceti-finishing-lightbox {
  position: fixed;
  z-index: 100000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgb(0 27 43 / 82%);
}

.deceti-finishing-lightbox__panel {
  position: relative;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  width: min(920px, 94vw);
  max-height: 90vh;
  padding: 22px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 24px 80px rgb(0 0 0 / 42%);
}

.deceti-finishing-lightbox__image {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: calc(90vh - 44px);
  object-fit: contain;
}

.deceti-finishing-lightbox__close {
  position: absolute;
  top: -14px;
  right: -14px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  background: #003b55;
  box-shadow: 0 4px 14px rgb(0 0 0 / 30%);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

@media (max-width: 576px) {
  .deceti-finishing .finishing-card {
    min-height: 80px;
    padding-right: 94px !important;
  }

  .deceti-finishing-preview {
    right: 12px;
    flex-basis: 66px;
    width: 66px;
    height: 56px;
  }
  .deceti-finishing-preview > img,
  .deceti-finishing .finishing-card .deceti-finishing-preview > img {
    width: 58px !important;
    height: 48px !important;
    max-width: 58px !important;
    max-height: 48px !important;
  }
}



/* source: catalog/view/stylesheet/deceti/deceti-0/blocks.css */
/*========================================= DECETI BLOCKS  ===============================*/



.title {
    padding-top:45px;
    color: var(--deceti-color-shadow-blue);
    font-weight:800;
} 

.phone {
    color: var(--deceti-color-danger-red);
    font-weight:800;
} 

/*.blueshadow {
    padding-top:25px;
    color: var(--deceti-color-surface);
    text-shadow: -1px -1px 0px var(--deceti-color-shadow-blue),0px 0px 2px var(--deceti-color-shadow-blue),1px 1px 1px var(--deceti-color-shadow-blue),2px 2px 1px var(--deceti-color-shadow-blue),3px 3px 0px var(--deceti-color-shadow-blue);
} */

/*.redshadow {
    color: var(--deceti-color-surface);
    text-shadow: -1px -1px 0px var(--deceti-color-danger-red),0px 0px 2px var(--deceti-color-danger-red),1px 1px 1px var(--deceti-color-danger-red),2px 2px 1px var(--deceti-color-danger-red),3px 3px 0px var(--deceti-color-danger-red);
} */

/* start design block*/
.product-image {    border-radius: 10px ;padding:20px 20px 10px; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:55%; position: relative;float:left; text-align:center;}

                                                                                                        

.product-proof {  font-size:20px;border-radius: 10px ;padding:20px 20px 10px; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:55%; position: relative;float:left;}
.product-cart {  font-size:20px;border-radius: 10px ;padding:20px 20px 10px; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:55%;  position: relative;float:left;}
.product-decal {  font-size:20px;border-radius: 10px ;padding:20px 20px 10px; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:55%; min-height:100%;position: relative;float:left;}

.product-calc {  font-size:20px;border-radius: 10px ;padding:20px 20px 10px; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark);  position: relative;float:left;width:100%;}


#product_desc{padding-top:30px;}

.product-image-span { padding:25px 15px 0px;}

.product-options-cart { font-size:22px; border-radius: 10px ;padding:20px 20px 0px;   background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:42%;height:auto; float: right; position: relative; }
.product-options-cart dt { padding:0px 0 0; font-weight:normal; font-size:20px;}
.product-options-cart dt label { font-weight:bold;width:100%; }
.product-options-cart dt span.required { color:var(--deceti-color-danger-text); }
.product-options-cart dt .qty-holder { float:right; margin-right:15px; }
.product-options-cart dt .qty-holder label { vertical-align:middle; }
.product-options-cart dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-options-cart dd { margin:0 0 0px;  font-size:20px;}
.product-options-cart dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0; }
.product-options-cart dd input.input-text { width:98%; font-size:20px; }
.product-options-cart dd input.datetime-picker { width:150px; }
.product-options-cart dd .time-picker { display:-moz-inline-box; display:inline-block; padding:2px 0; vertical-align:middle; }
.product-options-cart dd textarea { width:98%; height:8em; }
.product-options-cart dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-options-cart dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-options-cart ul.options-list { margin-right:5px; }
.product-options-cart ul.options-list li { padding:2px 0; }
.product-options-cart ul.options-list input.radio { float:left; margin-top:3px; }
.product-options-cart ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-options-cart ul.options-list .label { display:block; margin-left:18px; }
.product-options-cart ul.options-list label { font-weight:normal; }
.product-options-cart ul.validation-failed { padding:0 7px; }
.product-options-cart p.required { margin-bottom:0; padding:15px 0 0; }





.product-options-calc { font-size:20px; border-radius: 10px ;padding:20px 20px 0px;   background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:92%;height:auto; float: right; position: relative;}
.product-options-calc dt { padding:0px 0 0; font-weight:normal; font-size:20px;}
.product-options-calc dt label { font-weight:bold;width:100%;font-size:18px; }
.product-options-calc dt span.required { color:var(--deceti-color-danger-text); }
.product-options-calc dt .qty-holder { float:right; margin-right:15px; }
.product-options-calc dt .qty-holder label { vertical-align:middle; }
.product-options-calc dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-options-calc dd { margin:0 0 0px;  font-size:20px;}
.product-options-calc dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0; }
.product-options-calc dd input.input-text { width:98%; font-size:20px; }
.product-options-calc dd input.datetime-picker { width:150px; }
.product-options-calc dd .time-picker { display:-moz-inline-box; display:inline-block; padding:2px 0; vertical-align:middle; }
.product-options-calc dd textarea { width:98%; height:8em; }
.product-options-calc dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-options-calc dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-options-calc ul { text-align:left;font-size:16px; }

.product-options-calc ul.options-list { margin-right:5px; }
.product-options-calc ul.options-list li { padding:2px 0; }
.product-options-calc ul.options-list input.radio { float:left; margin-top:3px; }
.product-options-calc ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-options-calc ul.options-list .label { display:block; margin-left:18px; }
.product-options-calc ul.options-list label { font-weight:normal; }
.product-options-calc ul.validation-failed { padding:0 7px; }
.product-options-calc p.required { margin-bottom:0; padding:15px 0 0; }

/* Force all dt labels in the calculator to left-align */
#product-options-calc dl dt,
#product-options-calc dl dt label {
  text-align: left !important;
}

/* If any dt is being centered by flex, force left alignment */
#product-options-calc dl dt {
  justify-content: flex-start !important;
  align-items: flex-start;
}

                
.product-options { font-size:20px;border-radius: 10px ;margin-left:3%;padding:20px 20px 0px;   background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:42%; float: left; position: relative;}
.product-options dt { padding:0px 0 0; font-weight:normal; }
.product-options dt label { font-weight:bold;width:100%; }
.product-options dt span.required { color:var(--deceti-color-danger-text); }
.product-options dt .qty-holder { float:right; margin-right:15px; }
.product-options dt .qty-holder label { vertical-align:middle; }
.product-options dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-options dd { padding:0px 0px 0px; margin:0 0 5px; }
.product-options dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0;  }
.product-options dd input.input-text { width:98%; font-size:20px;}
.product-options dd input.datetime-picker { width:150px; }
.product-options dd .time-picker { display:-moz-inline-box; display:inline-block;2 padding:2px 0; vertical-align:middle; }
.product-options dd textarea { width:98%; height:8em; font-size:20px;}
.product-options dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-options dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-options ul.options-list { margin-right:5px; }
.product-options ul.options-list li { padding:2px 0; }
.product-options ul.options-list input.radio { float:left; margin-top:3px; }
.product-options ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-options ul.options-list .label { display:block; margin-left:18px; }
.product-options ul.options-list label { font-weight:normal; }
.product-options ul.validation-failed { padding:0 7px; }
.product-options p.required { margin-bottom:0; padding:15px 0 0; }


.product-options-shipping-product { font-size:20px;border-radius: 10px ;margin-left:3%;padding:20px 20px 0px;   background-color:var(--deceti-color-surface); border:1px solid var(--deceti-color-border-shipping); width:42%; float: left; position: relative;}
.product-options-shipping-product dt { padding:10px 0 0; font-weight:normal; }
.product-options-shipping-product dt label { font-weight:bold;width:100%; }
.product-options-shipping-product dt span.required { color:var(--deceti-color-danger-text); }
.product-options-shipping-product dt .qty-holder { float:right; margin-right:15px; }
.product-options-shipping-product dt .qty-holder label { vertical-align:middle; }
.product-options-shipping-product dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-options-shipping-product dd { padding:0px 0px 0px; margin:0 0 5px;  }
.product-options-shipping-product dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0; }
.product-options-shipping-product dd input.input-text { width:98%; font-size:20px;}      
.product-options-shipping-product dd input.datetime-picker { width:150px; }
.product-options-shipping-product dd .time-picker { display:-moz-inline-box; display:inline-block; padding:2px 0; vertical-align:middle; }
.product-options-shipping-product dd textarea { width:98%; height:8em; font-size:20px;}
.product-options-shipping-product dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-options-shipping-product dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-options-shipping-product ul.options-list { margin-right:5px; }
.product-options-shipping-product ul.options-list li { padding:2px 0; }
.product-options-shipping-product ul.options-list input.radio { float:left; margin-top:3px; }
.product-options-shipping-product ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-options-shipping-product ul.options-list .label { display:block; margin-left:18px; }
.product-options-shipping-product ul.options-list label { font-weight:normal; }
.product-options-shipping-product ul.validation-failed { padding:0 7px; }
.product-options-shipping-product p.required { margin-bottom:0; padding:15px 0 0; }


.product-options-shipping { font-size:20px;border-radius: 10px ;margin-left:3%;padding:20px 20px 0px;   background-color:var(--deceti-color-surface); border:1px solid var(--deceti-color-border-shipping); width:42%; float: left; position: relative;}
.product-options-shipping dt { padding:10px 0 0; font-weight:normal; }
.product-options-shipping dt label { font-weight:bold;width:100%; }
.product-options-shipping dt span.required { color:var(--deceti-color-danger-text); }
.product-options-shipping dt .qty-holder { float:right; margin-right:15px; }
.product-options-shipping dt .qty-holder label { vertical-align:middle; }
.product-options-shipping dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-options-shipping dd { padding:0px 0px 0px; margin:0 0 5px;  }
.product-options-shipping dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0; }
.product-options-shipping dd input.input-text { width:98%; font-size:20px;}
.product-options-shipping dd input.datetime-picker { width:150px; }
.product-options-shipping dd .time-picker { display:-moz-inline-box; display:inline-block; padding:2px 0; vertical-align:middle; }
.product-options-shipping dd textarea { width:98%; height:8em; font-size:20px;}
.product-options-shipping dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-options-shipping dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-options-shipping ul.options-list { margin-right:5px; }
.product-options-shipping ul.options-list li { padding:2px 0; }
.product-options-shipping ul.options-list input.radio { float:left; margin-top:3px; }
.product-options-shipping ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-options-shipping ul.options-list .label { display:block; margin-left:18px; }
.product-options-shipping ul.options-list label { font-weight:normal; }
.product-options-shipping ul.validation-failed { padding:0 7px; }
.product-options-shipping p.required { margin-bottom:0; padding:15px 0 0; }

.product-options-shipping-padding  { padding-bottom:550px;}



.product-calculator { font-size:20px; border-radius:10px; margin:0 auto; padding:20px 20px 0; background-color:var(--deceti-color-panel); border:1px solid var(--deceti-color-primary-dark); width:90%; position:relative; }
.product-calculator dt { padding:10px 0 0; font-weight:normal; }
.product-calculator dt label { font-weight:bold;width:100%; }
.product-calculator dt span.required { color:var(--deceti-color-danger-text); }
.product-calculator dt .qty-holder { float:right; margin-right:15px; }
.product-calculator dt .qty-holder label { vertical-align:middle; }
.product-calculator dt .qty-disabled { background:none; border:0; padding:3px; color:var(--deceti-color-text-neutral); }
.product-calculator dd { padding:0px 0px 0px; margin:0 0 5px;  }
.product-calculator dl.last dd.last { border-bottom:0; padding-bottom:5px; margin-bottom:0; }
.product-calculator dd input.input-text { width:98%; font-size:20px;}
.product-calculator dd input.datetime-picker { width:150px; }
.product-calculator dd .time-picker { display:-moz-inline-box; display:inline-block; padding:2px 0; vertical-align:middle; }
.product-calculator dd textarea { width:98%; height:8em; font-size:20px;}
.product-calculator dd select { width:99%; font-size:20px;color:var(--deceti-color-text-dark);}
.product-calculator dd .multiselect option { border-bottom:1px dotted var(--deceti-color-border-dotted); padding:2px 4px; }
.product-calculator ul.options-list { margin-right:5px; }
.product-calculator ul.options-list li { padding:2px 0; }
.product-calculator ul.options-list input.radio { float:left; margin-top:3px; }
.product-calculator ul.options-list input.checkbox { float:left; margin-top:2px; }
.product-calculator ul.options-list .label { display:block; margin-left:18px; }
.product-calculator ul.options-list label { font-weight:normal; }
.product-calculator ul.validation-failed { padding:0 7px; }
.product-calculator p.required { margin-bottom:0; padding:15px 0 0; }

@media screen and (max-width: 1024px) {
   .product-options-shipping-product {
        width: 100%;
    }
   .product-options-shipping-product {
        width: 42%;
    }

   .product-options-shipping {
        width: 42%;
    }


    .product-options {
        width: 42%;
    }
    .product-image {
        width: 55%;
    }
}
@media screen and (max-width: 736px) {



   .product-options-shipping-product {
        width: 100%;
    }

   .product-options-shipping {
        width: 100%;
	margin-top:30px;
    }

   .product-calculator {
        width: 100%;
    }

    .product-image {
        width: 100%;
    }
    .product-options {
        margin-left: 0px;
        margin-top: 20px;
        width: 100%;
    }
}

@media screen and (max-width: 1024px) {
   .product-options-shipping-padding  
    { 
     padding-bottom:550px;
    }

    .product-options-cart {
        width: 42%;
    }



    .product-cart {
        width: 50%;
    }
}
@media screen and (max-width: 736px) {
   .product-options-shipping-padding  
    { 
     padding-bottom:850px;
    }

   .product-options-shipping-product {
        width: 100%;
    }

   .product-options-shipping {
        width: 100%;
	margin-top:30px;
    }

   .product-calculator {
        width: 100%;
    }

    .product-cart {
        width: 100%;
    }
    .product-options-cart {
        margin-left: 0px;
        margin-top: 20px;
        width: 100%;
    }

}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
    .product-image {
        width: 100%;
    }
   .product-options-shipping-padding  
    { 
     padding-bottom:850px;
    }

   .product-options-shipping-product {
        width: 100%;
        
    }

   .product-options-shipping {
        width: 100%;
	margin-top:30px;
    }

   .product-calculator {
        width: 100%;
    }

    .product-options {
        margin-left: 0px;
        margin-top: 20px;
        width: 100%;
    }
}


/* testimonials*/
/*-------------------------------*/
/*      Code snippet by          */
/*      @maridlcrmn              */
/*-------------------------------*/


section {
    padding-top: 100px;
    padding-bottom: 100px;
}

.quote {
    text-align: center;
    margin-bottom: 30px;
}

/*-------------------------------*/
/*    Carousel Fade Transition   */
/*-------------------------------*/

#fade-quote-carousel.carousel {
  padding-bottom: 60px;
}
#fade-quote-carousel.carousel .carousel-inner .item {
  opacity: 0;
  -webkit-transition-property: opacity;
      -ms-transition-property: opacity;
          transition-property: opacity;
}
#fade-quote-carousel.carousel .carousel-inner .active {
  opacity: 1;
  -webkit-transition-property: opacity;
      -ms-transition-property: opacity;
          transition-property: opacity;
}
#fade-quote-carousel.carousel .carousel-indicators {
  bottom: 10px;
}
#fade-quote-carousel.carousel .carousel-indicators > li {
  background-color: var(--deceti-color-carousel-accent);
  border: none;
}
#fade-quote-carousel blockquote {
    text-align: center;
    border: none;
}
#fade-quote-carousel .profile-circle {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    border-radius: 100px;
}

.rightmenu {
  min-height: 440px;
  padding: 0;
  margin-bottom: 20px;
  background-color: var(--deceti-color-off-white);
  border: 1px solid var(--deceti-color-border-dark);
  border-radius: 1px;
  box-shadow: inset 10px 10px 60px rgba(0, 0, 0, 0.11),
              inset -25px -10px 65px rgba(0, 0, 0, 0.145);
}

.rightmenu blockquote { border-color: rgba(0, 0, 0, 0.15); }
.rightmenu p:first-child { margin-top: 0; }
.rightmenu h2 {
  margin: 4px 0;
  color: var(--deceti-color-off-white);
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
}
.rightmenu a { color: var(--deceti-color-primary); font-weight: 700; }
.rightmenu img {
  border-radius: 1px 1px 0 0;
  border-bottom: 1px solid var(--deceti-color-border-muted);
}

.rightmenu-lg { padding: 24px; border-radius: var(--deceti-radius-block); }
.rightmenu-sm { padding: 6px; border-radius: 4px; }

.rightmenu-primary {
  padding-top: 0;
  color: var(--deceti-color-light-text);
  background-color: var(--deceti-color-primary);
  box-shadow: none;
}
.rightmenu-primary h1,
.rightmenu-primary h2,
.rightmenu-primary h3,
.rightmenu-primary h4,
.rightmenu-primary h5,
.rightmenu-primary h6 { color: var(--deceti-color-light-text); }
.rightmenu-primary ol { padding-left: 20px; line-height: 1.4; }
.rightmenu-primary ol li { margin-bottom: 0.375rem; }

.message-alert {
  position: relative;
  top: -12px;
  display: none;
  min-width: 30px;
  max-width: 100%;
  margin-bottom: 15px;
  padding: 5px 10px;
  border-radius: 4px;
  color: var(--deceti-color-surface);
  background: var(--deceti-color-danger);
  font-size: 100%;
  font-weight: 500;
  text-align: center;
}



.calculator {
border: 1px solid var(--deceti-color-primary-dark);
border-radius: 15px;
background-color: var(--deceti-color-panel-gray);
background-position: top center;
background-repeat: no-repeat;
background-attachment: scroll;
font-size:18px;
    user-select: none; /* Prevent text selection */
    -webkit-user-select: none; /* For Safari */
    -moz-user-select: none; /* For Firefox */
    -ms-user-select: none; /* For IE/Edge */

}

.calculator  .col-md-6 {
    width: 50%;
    padding-left:10px;
    padding-right:10px;
}



@media (max-width: 960px) {
.calculator {
border-radius: 15px;
background-color: var(--deceti-color-panel-gray);
background-position: top center;
background-repeat: no-repeat;
background-attachment: scroll;
font-size:15px;
}

.calculator  .col-md-6 {
    width: 100%;
    padding-left:0px;
    padding-right:0px;
    margin-top:10px;
}

.calculator  .col-md-6 .col-md-4 {
    width: 50%;
  float:left;
}

.calculator .col-md-6 .col-md-4.blocksize {
  width: 50% !important;
  float:left;
}            

.calculator .col-md-6 .col-md-2.blocksize {
  width: 50% !important;
  float:left;
}            
.calculator .col-md-6 .col-md-3.blocksize {
  width: 50% !important;
  float:left;
}            
.calculator .col-md-6 .col-md-5.blocksize {
  width: 50% !important;
  float:left;
}            


.calculator .row .col-md-4.blockbutton {
  width: 100% !important;
}            




}



/* source: catalog/view/stylesheet/deceti/deceti-0/templates.css */
/*========================================= DECETI TEMPLATES ===============================*/
:root{--deceti-template-primary:var(--deceti-color-primary-dark);--deceti-template-primary-text:var(--deceti-color-surface);--deceti-template-accent:var(--deceti-color-primary);--deceti-template-accent-text:var(--deceti-color-primary-dark);--deceti-template-nav-bg:var(--deceti-color-panel-gray);--deceti-template-panel-bg:var(--deceti-color-panel-soft);--deceti-template-panel-hover-bg:var(--calc-accent-soft);--deceti-template-border:var(--deceti-color-border-soft);--deceti-template-input-border:var(--deceti-color-border-muted);--deceti-template-text-muted:var(--deceti-color-text-neutral);--deceti-template-text-sub:var(--deceti-color-text-brand);--deceti-template-menu-hover-bg:var(--deceti-color-primary-hover)}


/* =============== DECETI Templates =============== */

/* Search bar */
.deceti-templates-search {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 20px 0;
}

.deceti-templates-search-input {
  flex: 1 1 auto;
  min-width: 260px;
  max-width: 900px;
  padding: 10px 12px;
  font-size: 18px;
  border: 2px solid var(--deceti-color-border-muted);
  border-radius: 6px;
  outline: none;
  box-sizing: border-box;
}

.deceti-templates-search-input:focus {
  border-color: var(--deceti-color-accent-strong);
}

.deceti-templates-search-btn,
.deceti-templates-clear-btn {
  background: var(--deceti-color-primary-dark);
  color: var(--deceti-color-surface);
  font-size: 18px;
  border: none;
  width: 50px;
  height: 50px;
  border-radius: 6px;
  cursor: pointer;
  user-select: none;
}

.deceti-templates-search-btn:hover,
.deceti-templates-clear-btn:hover {
  background: var(--deceti-color-accent-strong);
}

/* Optional message box (search status / nothing found) */
.deceti-templates-msg {
  margin: 10px 0 0;
  padding: 10px 12px;
  border: 1px solid var(--deceti-color-border-soft);
  border-radius: 8px;
  background: var(--deceti-color-panel-soft);
  box-sizing: border-box;
}

/* Product grid list */
.deceti-productlist {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px;
  padding: 0;
  margin: 15px 0;
  list-style: none;
}

.deceti-productlist-item {
  flex: 0 1 270px;
  max-width: 290px;
  background: var(--deceti-color-panel-soft);
  padding: 15px;
  border-radius: 10px;
  border: 2px solid var(--deceti-color-border-soft);
  text-align: center;
  box-sizing: border-box;
  transition: transform 0.25s ease, outline 0.25s ease, background-color 0.25s ease;
}

.deceti-productlist-item:hover {
  transform: scale(1.03);
  outline: 4px solid var(--deceti-color-accent-strong);
  background-color: var(--deceti-color-accent-pale);
}

.deceti-productlist-link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.deceti-page-customproduct-templates .deceti-productlist-link {
  font-family: Arial, Helvetica, sans-serif !important;
}

.deceti-productlist-title {
  font-size: 18px;
  margin: 0 0 10px;
  font-weight: 600;
}

/* Match product-card typography on the DECETI-0 Home page. */
.deceti-page-customproduct-templates .deceti-productlist-title {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(22px, 1.55vw, 28px) !important;
  font-weight: 700 !important;
  line-height: 1.12;
}

.deceti-productlist-img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  object-fit: cover;
  display: block;
}

/* Buttons under templates */
.deceti-productlist-actions {
  margin-top: 10px;
}

/* Pagination */
.deceti-templates-pages {
  margin-top: 15px;
  text-align: center;
}

.deceti-templates-pages .btn {
  margin: 0 4px 6px;
}

/* Mobile */
@media (max-width: 768px) {
  .deceti-productlist {
    gap: 15px;
  }

  .deceti-productlist-item {
    flex: 1 1 100%;
    max-width: 100%;
  }

  .deceti-templates-search {
    margin: 15px 0;
  }

  .deceti-templates-search-input {
    min-width: 0;
    max-width: 100%;
  }
}

/* DECETI TEMPLATE CATALOG — migrated from deceti_cp_b_templates.twig */
.c-container{
  display:flex;
  align-items:flex-start;
  max-width:100%;
  margin:0 auto;
}

.navmenu{
  width: var(--deceti-template-nav-width);
  min-width: var(--deceti-template-nav-width);
  flex:0 0 var(--deceti-template-nav-width);
  background-color: var(--deceti-template-nav-bg);
  padding: var(--deceti-template-content-padding);
  margin-top: var(--deceti-template-content-pad-top);
  border:2px solid var(--deceti-template-border);
  box-sizing:border-box;
  border-radius: var(--deceti-template-radius);
}

.s-content{
  flex:1 1 auto;
  min-width:0;
  padding: var(--deceti-template-content-padding);
  padding-top: var(--deceti-template-content-pad-top);
}

.template-item{
  font-size:18px;
  font-weight:bold;
  margin:10px 0;
  cursor:pointer;
  user-select:none;
}

.subtemplate-item{
  font-size:18px;
  margin:5px 0;
  color: var(--deceti-template-text-sub);
  transition:color .3s,font-size .3s,font-weight .3s,background .3s;
  border-radius: var(--deceti-template-radius);
  user-select:none;
}

.subtemplate-item.active{
  background-color: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text) !important;
  font-weight:bold;
}

.subtemplate-item:hover{
  color: var(--deceti-template-text-muted) !important;
}

.navmenu .template-item{
  padding:15px 20px;
  cursor:pointer;
  color:#000;
  background: var(--deceti-template-panel-bg);
  font-size:21px;
  font-weight:bold;
  text-align:left;
  transition:background .3s,color .3s;
  border-radius: var(--deceti-template-radius);
}

.navmenu .template-item:hover{
  background: var(--deceti-template-menu-hover-bg);
}

.navmenu .template-item.active{
  background: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text);
}

.navmenu .submenu{
  display:none;
  background: var(--deceti-template-panel-bg);
  text-align:left;
}

.navmenu .template-item.active + .submenu{
  display:block;
}

.navmenu .subtemplate-item{
  margin-left:20px;
  padding:12px 20px;
  font-size:18px;
  color: var(--deceti-template-text-muted);
  transition:font-weight .3s;
}

.navmenu .subtemplate-item:hover{
  background: var(--deceti-template-menu-hover-bg);
  font-weight:bold;
}

.search-bar{
  display:flex;
  justify-content:center;
  align-items:center;
  margin-bottom:5px;
}

.search-bar input{
  padding:10px;
  width:80%;
  font-size:16px;
  border:1px solid var(--deceti-template-input-border);
  border-radius: var(--deceti-template-input-radius);
  padding-right:20px;
  margin-left:10px;
}

.search-bar input:focus{
  outline:none;
  border:3px solid var(--deceti-template-accent);
}

.search-bar button{
  background-color: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text);
  font-size:20px;
  border:none;
  width:50px;
  margin-top:10px;
  height:50px;
  border-radius: var(--deceti-template-input-radius);
  cursor:pointer;
  transition:background-color .3s ease;
  margin-left:10px;
  user-select:none;
}

.search-bar button:hover{
  background-color: var(--deceti-template-accent);
  color: var(--deceti-template-accent-text);
}

.c-grid.s-c-grid{
  display:flex;
  flex-wrap:wrap;
  gap: var(--deceti-template-gap);
  width:100%;
}

.i-grid{
  flex:0 0 calc(25% - var(--deceti-template-gap));
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  max-width:310px;
}

.item-box{
  width:100%;
  text-align:center;
  background-color: var(--deceti-template-panel-bg);
  padding:15px;
  border-radius: var(--deceti-template-radius);
  border:2px solid var(--deceti-template-border);
  box-sizing:border-box;
  transition:transform .3s ease, outline .3s ease, background-color .3s ease;
  user-select:none;
}

.item-box:hover{
  transform:scale(1.05);
  outline: var(--deceti-template-outline-width) solid var(--deceti-template-accent);
  background-color: var(--deceti-template-panel-hover-bg);
}

.item-box img{
  width:100%;
  height:auto;
  pointer-events:none;
  -webkit-user-drag:none;
}

.new-category-name{
  font-size:16px;
  font-weight:bold;
  margin-top:10px;
}

a.btn.btn-customize,
a.btn-customize,
.btn.btn-customize,
.btn-customize{
  display:inline-block !important;
  background: var(--deceti-template-primary) !important;
  color: var(--deceti-template-primary-text) !important;
  border:none !important;
  border-radius: var(--deceti-template-btn-radius) !important;
  padding:10px 12px !important;
  margin-top:12px !important;
  font-weight:bold !important;
  text-decoration:none !important;
}

a.btn.btn-customize:hover,
a.btn-customize:hover,
.btn.btn-customize:hover,
.btn-customize:hover{
  background: var(--deceti-template-accent) !important;
  color: var(--deceti-template-accent-text) !important;
}

.button-container{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(20px,1fr));
  margin-top:5px;
}

.color-button{
  width:25px;
  height:25px;
  border-radius:50%;
  border:none;
  cursor:pointer;
  margin-top:5px;
}

.color-button.active{
  border:3px solid var(--deceti-template-accent);
}

.shape-accordion{
  margin-top:10px;
}

.shape-accordion.is-hidden{
  display:none;
}

.shape-accordion-toggle{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 20px;
  cursor:pointer;
  color:#000;
  background: var(--deceti-template-panel-bg);
  font-size:21px;
  font-weight:bold;
  text-align:left;
  border:none;
  border-radius: var(--deceti-template-radius);
  transition:background .3s,color .3s;
  box-sizing:border-box;
}

.shape-accordion-toggle:hover{
  background: var(--deceti-template-menu-hover-bg);
}

.shape-accordion-toggle.active{
  background: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text);
}

.shape-accordion-icon{
  font-size:24px;
  line-height:1;
  font-weight:bold;
}

.shape-accordion-panel{
  display:none;
  margin-top:8px;
}

.shape-accordion-panel.open{
  display:block;
}

.shape-container{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}

.shape-button{
  border:1px solid var(--deceti-template-border);
  background: var(--deceti-template-panel-bg);
  border-radius: var(--deceti-template-btn-radius);
  padding:8px 12px;
  cursor:pointer;
  font-size:14px;
  line-height:1.2;
}

.shape-button:hover{
  background: var(--deceti-template-menu-hover-bg);
}

.shape-button.active{
  background: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text);
  border-color: var(--deceti-template-primary);
}

.size-container{
  margin-top:10px;
}

.size-select{
  width:100%;
  font-size:18px;
  padding:10px;
  border:1px solid var(--deceti-template-input-border);
  border-radius: var(--deceti-template-input-radius);
  box-sizing:border-box;
  background:#fff;
}

.template-card-link,
.template-image-link{
  display:block;
  text-decoration:none;
  color:inherit;
}

.btn-show-more{
  background: var(--deceti-template-primary);
  color: var(--deceti-template-primary-text);
  border:none;
  border-radius: var(--deceti-template-btn-radius);
  padding:12px 24px;
  font-size:16px;
  cursor:pointer;
}

.btn-show-more:hover{
  background: var(--deceti-template-accent);
  color: var(--deceti-template-accent-text);
}

@media (max-width: 768px){
  .c-container{
    flex-direction:column;
  }

  .navmenu{
    width:100%;
    min-width:0;
    flex:1 1 auto;
  }

  .s-content{
    width:100%;
  }

  .i-grid{
    flex:0 0 100%;
    max-width:100%;
  }
}

@media (max-width: 1100px){
  .i-grid{
    flex:0 0 calc(33.333% - var(--deceti-template-gap));
  }
}

@media (max-width: 900px){
  .i-grid{
    flex:0 0 calc(50% - var(--deceti-template-gap));
  }
}
/* END DECETI TEMPLATE CATALOG */
.color-button.is-red{background-color:red}.color-button.is-orange{background-color:orange}.color-button.is-yellow{background-color:#ff0}.color-button.is-green{background-color:green}.color-button.is-blue{background-color:#0060ff}.color-button.is-navy{background-color:#0d0d81}.color-button.is-violet{background-color:#7a19cc}.color-button.is-magenta{background-color:#de06cc}.color-button.is-black{background-color:#000}
.deceti-template-image-placeholder{display:flex;align-items:center;justify-content:center;width:180px;height:180px;margin:0 auto;background:var(--deceti-color-panel-muted)}



/* source: catalog/view/stylesheet/deceti/deceti-0/site-components.css */
/*========================================= DECETI CART ADMIN BLOCK ===============================*/


/*========================================= DECETI COLORS BLOCK ===============================*/

.item-Show-colors .item-Swatch-small {
  height: 28px;
  width: 28px;
  margin-top: 2px;
  margin-right: 4px;
  margin-bottom: 4px;
  cursor: pointer;
  display:inline-block; 
}

.item-Swatch-small {
  position: relative;
  display: block;
  width: 2rem;
  height: 2rem;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0.15);
  border-radius: 3px;
  box-sizing: border-box;
}



.item-Swatch-trim-small {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 33%;
}

 .item-Swatch-small:hover {
  border-color: var(--deceti-color-focus-alt);
  border-width: 4px;
} 







.item-Show-colors .item-Swatch {
  height: 32px;
  width: 32px;
  margin-top: 2px;
  margin-right: 4px;
  margin-bottom: 4px;
  cursor: pointer;
  display:inline-block; 
}

.item-Swatch {
  position: relative;
  display: block;
  width: 2rem;
  height: 2rem;
  border-width: 1px;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0.15);
  border-radius: 3px;
  box-sizing: border-box;
}

.item-Swatch-trim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 33%;
}

 .item-Swatch:hover {
  border-color: var(--deceti-color-focus-alt);
  border-width: 4px;
} 
.itemActive {
  border-color: var(--deceti-color-focus-alt);
  border-width: 4px; 
}



.color-pallete .item-color {
  display:block
  float: left;
  height: 55px;
  width: 55px;
  margin-top: 2px;
  margin-right: 4px;
  margin-bottom: 4px;
  border-radius: 10px;

}

.item-color {
  position: relative;
  display: block;
  width: 2rem;
  height: 2rem;
  border-width: 1px;
  border-style: solid;
 border-color: var(--deceti-color-text-black);
  border-radius: 6px;
  box-sizing: border-box;
}

.item-color-trim {
  display:block
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 33%;
}

.item-color:hover {
  display:block
  border-color: var(--deceti-color-text-black);
  border-width: 1px;
} 

.item-name {
  display:block;
  font-weight:bold;
  margin-bottom: 1px;
} 


.item-pms {
  display:block
  margin-bottom: 0;
  font-size:11px;
} 



.color-block
{
    width:120px;
    margin-top:15px;
    position: relative;
    display: inline-block;
}

#content, #column-left, #column-right {
  padding-bottom: 0px !important;
}
@media (min-width: 576px) {
  #content, #column-left, #column-right {
    padding-bottom: 0px !important;
  }
}

.deceti-content-block  {
    margin-bottom:20px !important;
}

.calculator  {
    margin-bottom:20px !important;
}

.deceti-block-templates  {
    margin-bottom:20px !important;
}




.deceti-content-block ul li {
    font-size: 20px !important;
    line-height: 1.5;
}

.deceti-content-block p {
  font-size: 20px !important;
    line-height: 1.5;
}

.image-right-block p.text-block {
  font-size: 17px !important;
  line-height: 1.1;
}


.deceti-content-block .content-block p {
  font-size: 20px !important;
  line-height: 1.6;
  margin-bottom: 12px; /* optional, for nicer spacing */
}

.deceti-content-block h1,
.deceti-content-block h2,
.deceti-content-block h3,
.deceti-content-block h4,
.deceti-content-block h5,
.deceti-content-block h6 {
    color: var(--deceti-color-text-black);
}


h1, h2, h3, h4, h5, h6 {
    color: var(--deceti-color-text-black) !important;
}

.deceti-finishing {
margin-top:20px;
}


.breadcrumb {
    margin-top: 20px !important;
    padding-left: 20px !important;
}



.form-control-sm {
    font-size: 1.1109375rem !important;

}


@media (min-width: 1400px) {
    .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
      max-width: 1360px !important;
    }
}

/* DECETI PAGE requestquote */
.deceti-page-requestquote.deceti-wrap{ padding: var(--deceti-requestquote-deceti-padding-wrap-y) 0; }

  .deceti-page-requestquote .deceti-card{
    border: 1px solid var(--deceti-color-border);
    border-radius: var(--deceti-requestquote-deceti-radius-card);
    background: var(--deceti-color-surface);
    box-shadow: 0 2px 10px rgba(0,0,0,.04);
  }
  .deceti-page-requestquote .deceti-card-header{
    padding: 14px 16px;
    border-bottom: 1px solid var(--deceti-color-border-soft);
    font-weight: 700;
  }
  .deceti-page-requestquote .deceti-card-body{ padding: 14px 16px; }

  .deceti-page-requestquote .deceti-iframe{
    width: 100%;
    height: var(--deceti-requestquote-deceti-iframe-h-desktop);
    border: 0;
    border-radius: var(--deceti-requestquote-deceti-radius-iframe);
    background: var(--deceti-color-panel);
  }

  .deceti-page-requestquote .deceti-form-card{ background: var(--deceti-color-panel-soft); }
  .deceti-page-requestquote .deceti-form-card .deceti-card-header{ background: transparent; }
  .deceti-page-requestquote .deceti-form-card .form-control{ border-radius: var(--deceti-requestquote-deceti-radius-iframe); }
  .deceti-page-requestquote #submit_1{ width: 100%; }

  @media (max-width: 991px){
    .deceti-page-requestquote .deceti-iframe{ height: var(--deceti-requestquote-deceti-iframe-h-mobile); }
  }
/* END DECETI PAGE requestquote */

/* DECETI PAGE pricingtable */
.deceti-page-pricingtable{
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.deceti-page-pricingtable .pricing-table{
  width: 100%;
  max-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: var(--deceti-pricingtable-pt-radius);
  overflow: hidden;
  box-shadow: var(--deceti-pricingtable-pt-shadow);
  color: var(--deceti-color-text);
}

.deceti-page-pricingtable .pricing-table tr:first-child td,


.deceti-page-pricingtable .pricing-table tr:nth-child(2) td{
  background-color: var(--deceti-color-primary);
  color: var(--deceti-color-surface);
  font-weight: 700;
}

.deceti-page-pricingtable .pricing-table td{
  padding: var(--deceti-pricingtable-pt-pad-cell);
  text-align: center;
  border-bottom: 1px solid var(--deceti-color-border);
  white-space: nowrap;
  vertical-align: middle;
}

.deceti-page-pricingtable .pricing-table tr{ transition: var(--deceti-pricingtable-pt-transition); }
.deceti-page-pricingtable .pricing-table tr:hover{ background-color: var(--calc-accent-soft); }

.deceti-page-pricingtable .pricing-table tr:first-child td:first-child{ border-top-left-radius: var(--deceti-pricingtable-pt-radius); }
.deceti-page-pricingtable .pricing-table tr:first-child td:last-child{  border-top-right-radius: var(--deceti-pricingtable-pt-radius); }
.deceti-page-pricingtable .pricing-table tr:last-child td:first-child{  border-bottom-left-radius: var(--deceti-pricingtable-pt-radius); }
.deceti-page-pricingtable .pricing-table tr:last-child td:last-child{   border-bottom-right-radius: var(--deceti-pricingtable-pt-radius); }

.deceti-page-pricingtable.deceti-pt-error{ padding: var(--deceti-pricingtable-pt-pad-cell); color: var(--deceti-color-danger-text); }

.deceti-page-pricingtable /* Controls */
.deceti-page-pricingtable .pricing-table .pt-controls-col{
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  justify-content: center;
}

.deceti-page-pricingtable .pricing-table .pt-control{
  display: inline-flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
  justify-content: center;
}

.deceti-page-pricingtable .pricing-table .pt-control label{
  font-weight: 700;
}

.deceti-page-pricingtable .pricing-table .pt-control select,


.deceti-page-pricingtable .pricing-table .pt-control input[type="number"]{
  padding: 6px 8px;
  border: 1px solid rgba(255,255,255,0.55);
  border-radius: 8px;
  background: rgba(255,255,255,0.98);
  color: #111;
  max-width: 100%;
  box-sizing: border-box;
}

.deceti-page-pricingtable /* single small width for Size/Material/Color (to reduce everything) */
.deceti-page-pricingtable .pricing-table select.pt-w-small{ width: var(--deceti-pricingtable-pt-ctrl-w-small); }
.deceti-page-pricingtable .pricing-table select.pt-w-side{  width: var(--deceti-pricingtable-pt-ctrl-w-side); }
.deceti-page-pricingtable .pricing-table input.pt-w-qty{    width: var(--deceti-pricingtable-pt-ctrl-w-qty); }

.deceti-page-pricingtable /* numeric columns shrink first */
.deceti-page-pricingtable .pricing-table td.pt-qcol,


.deceti-page-pricingtable .pricing-table td.pt-ccol{ width: 1%; }

@media (max-width: 768px){
  .deceti-page-pricingtable .pricing-table td{
    font-size: var(--deceti-pricingtable-pt-phone-font);
    padding: var(--deceti-pricingtable-pt-phone-pad-cell);
  }

  .deceti-page-pricingtable .pricing-table select.pt-w-small,


  .deceti-page-pricingtable .pricing-table select.pt-w-side,


  .deceti-page-pricingtable .pricing-table input.pt-w-qty{
    width: var(--deceti-pricingtable-pt-phone-ctrl-w);
    font-size: var(--deceti-pricingtable-pt-phone-font);
  }
}
/* END DECETI PAGE pricingtable */

/* DECETI PAGE imagelist */
.deceti-page-imagelist.imagelist{
    display: flex;
    flex-wrap: wrap;
    gap: var(--deceti-imagelist-s-imagelist-gap);
    padding-left: 0;
    margin: 0;
    list-style: none;
    justify-content: center;
  }
  .deceti-page-imagelist.imagelist li{ width: var(--deceti-imagelist-s-imagelist-item-w); }
  .deceti-page-imagelist.imagelist .card{ border: 0; }
  .deceti-page-imagelist.imagelist img{
    width: 100%;
    height: var(--deceti-imagelist-s-img-h);
    object-fit: contain;
    background: var(--deceti-color-panel);
    border-radius: var(--deceti-imagelist-s-img-radius);
  }
  .deceti-page-imagelist.imagelist .caption{
    margin-top: var(--deceti-imagelist-s-caption-mt);
    font-size: var(--deceti-imagelist-s-caption-fs);
    color: var(--deceti-color-text-muted);
    text-align: center;
  }
  .deceti-imagelist-modal .modal-img{ width: 100%; height: auto; }
  /* Compatibility for an older published Twig: never let a hidden Bootstrap
     image modal participate in the product layout as a normal entity. */
  .modal.deceti-page-imagelist:not(.show){ display: none !important; }
/* END DECETI PAGE imagelist */

/* DECETI PAGE product-customproduct-options-stickers */
.deceti-page-product-customproduct-options-stickers .total h1{font-size:var(--deceti-cp-total-h1-desktop-size);font-weight:var(--deceti-cp-total-h1-desktop-weight)}
.deceti-page-product-customproduct-options-stickers .total h4{font-size:var(--deceti-cp-total-h4-desktop-size);font-weight:var(--deceti-cp-total-h4-desktop-weight)}
@media(max-width:900px){.deceti-page-product-customproduct-options-stickers .container .total h1{font-size:var(--deceti-cp-total-h1-tablet-size);font-weight:var(--deceti-cp-total-h1-tablet-weight)}.deceti-page-product-customproduct-options-stickers .container .total h4{font-size:var(--deceti-cp-total-h4-tablet-size);font-weight:var(--deceti-cp-total-h4-tablet-weight)}.deceti-page-product-customproduct-options-stickers .quantity-list{font-size:var(--deceti-cp-quantity-tablet-size)}}
@media(max-width:500px){.deceti-page-product-customproduct-options-stickers .quantity-list{font-size:var(--deceti-cp-quantity-mobile-size)}.deceti-page-product-customproduct-options-stickers .container .total h1{font-size:var(--deceti-cp-total-h1-mobile-size);font-weight:var(--deceti-cp-total-h1-mobile-weight)}.deceti-page-product-customproduct-options-stickers .container .total h4{font-size:var(--deceti-cp-total-h4-mobile-size);font-weight:var(--deceti-cp-total-h4-mobile-weight)}}
/* END DECETI PAGE product-customproduct-options-stickers */

/* DECETI PAGE customproduct-options-stickers */
.deceti-page-customproduct-options-stickers .total h1{font-size:var(--deceti-cp-total-h1-desktop-size);font-weight:var(--deceti-cp-total-h1-desktop-weight)}
.deceti-page-customproduct-options-stickers .total h4{font-size:var(--deceti-cp-total-h4-desktop-size);font-weight:var(--deceti-cp-total-h4-desktop-weight)}
@media(max-width:900px){.deceti-page-customproduct-options-stickers .container .total h1{font-size:var(--deceti-cp-total-h1-tablet-size);font-weight:var(--deceti-cp-total-h1-tablet-weight)}.deceti-page-customproduct-options-stickers .container .total h4{font-size:var(--deceti-cp-total-h4-tablet-size);font-weight:var(--deceti-cp-total-h4-tablet-weight)}.deceti-page-customproduct-options-stickers .quantity-list{font-size:var(--deceti-cp-quantity-tablet-size)}}
@media(max-width:500px){.deceti-page-customproduct-options-stickers .quantity-list{font-size:var(--deceti-cp-quantity-mobile-size)}.deceti-page-customproduct-options-stickers .container .total h1{font-size:var(--deceti-cp-total-h1-mobile-size);font-weight:var(--deceti-cp-total-h1-mobile-weight)}.deceti-page-customproduct-options-stickers .container .total h4{font-size:var(--deceti-cp-total-h4-mobile-size);font-weight:var(--deceti-cp-total-h4-mobile-weight)}}
/* END DECETI PAGE customproduct-options-stickers */

/* DECETI PAGE customproduct-options */
.deceti-page-customproduct-options .total h1{font-size:var(--deceti-cp-total-h1-desktop-size);font-weight:var(--deceti-cp-total-h1-desktop-weight)}
.deceti-page-customproduct-options .total h4{font-size:var(--deceti-cp-total-h4-desktop-size);font-weight:var(--deceti-cp-total-h4-desktop-weight)}
@media(max-width:900px){.deceti-page-customproduct-options .container .total h1{font-size:var(--deceti-cp-total-h1-tablet-size);font-weight:var(--deceti-cp-total-h1-tablet-weight)}.deceti-page-customproduct-options .container .total h4{font-size:var(--deceti-cp-total-h4-tablet-size);font-weight:var(--deceti-cp-total-h4-tablet-weight)}.deceti-page-customproduct-options .quantity-list{font-size:var(--deceti-cp-quantity-tablet-size)}}
@media(max-width:500px){.deceti-page-customproduct-options .quantity-list{font-size:var(--deceti-cp-quantity-mobile-size)}.deceti-page-customproduct-options .container .total h1{font-size:var(--deceti-cp-total-h1-mobile-size);font-weight:var(--deceti-cp-total-h1-mobile-weight)}.deceti-page-customproduct-options .container .total h4{font-size:var(--deceti-cp-total-h4-mobile-size);font-weight:var(--deceti-cp-total-h4-mobile-weight)}}
/* END DECETI PAGE customproduct-options */

/* DECETI PAGE customproduct-uploadartwork */
.deceti-page-customproduct-uploadartwork .total h1{font-size:var(--deceti-cp-total-h1-desktop-size);font-weight:var(--deceti-cp-total-h1-desktop-weight)}
.deceti-page-customproduct-uploadartwork .total h4{font-size:var(--deceti-cp-total-h4-desktop-size);font-weight:var(--deceti-cp-total-h4-desktop-weight)}
@media(max-width:900px){.deceti-page-customproduct-uploadartwork .container .total h1{font-size:var(--deceti-cp-total-h1-tablet-size);font-weight:var(--deceti-cp-total-h1-tablet-weight)}.deceti-page-customproduct-uploadartwork .container .total h4{font-size:var(--deceti-cp-total-h4-tablet-size);font-weight:var(--deceti-cp-total-h4-tablet-weight)}.deceti-page-customproduct-uploadartwork .quantity-list{font-size:var(--deceti-cp-quantity-tablet-size)}}
@media(max-width:500px){.deceti-page-customproduct-uploadartwork .quantity-list{font-size:var(--deceti-cp-quantity-mobile-size)}.deceti-page-customproduct-uploadartwork .container .total h1{font-size:var(--deceti-cp-total-h1-mobile-size);font-weight:var(--deceti-cp-total-h1-mobile-weight)}.deceti-page-customproduct-uploadartwork .container .total h4{font-size:var(--deceti-cp-total-h4-mobile-size);font-weight:var(--deceti-cp-total-h4-mobile-weight)}}
/* END DECETI PAGE customproduct-uploadartwork */

/* DECETI PAGE customproduct-artworkapproval */
.deceti-page-customproduct-artworkapproval .proof-img{ max-height:90%; max-width:90%; object-fit:contain; border-radius:10px; }
.deceti-page-customproduct-artworkapproval .status-banner{
    border-radius:15px; padding:12px 14px; margin:0 0 12px 0;
    text-align:center; font-weight:700;
  }
.deceti-page-customproduct-artworkapproval .status-approved{background:color-mix(in srgb,var(--deceti-color-success) 20%,transparent);border:2px solid var(--deceti-color-success)}
.deceti-page-customproduct-artworkapproval .status-rejected{background:color-mix(in srgb,var(--deceti-color-danger) 18%,transparent);border:2px solid var(--deceti-color-danger)}
.deceti-page-customproduct-artworkapproval .status-pending{background:var(--calc-accent-soft);border:2px solid var(--calc-accent)}
.deceti-page-customproduct-artworkapproval .finishing-pill{
    display:inline-block; padding:6px 10px; border-radius:999px;
    margin:4px 6px 0 0; font-size:13px;
    background:var(--calc-accent-soft);border:1px solid var(--calc-accent);
  }
.deceti-page-customproduct-artworkapproval /* === FIX: prevent a long frame label from affecting layout below === */
  #product_desc{ display:block !important; width:100% !important; }
.deceti-page-customproduct-artworkapproval #product_desc .row{ width:100%; max-width:100%; }
.deceti-page-customproduct-artworkapproval #product_desc [class*="col-"]{ min-width:0; }
.deceti-page-customproduct-artworkapproval /* allows wrapping instead of forcing width */
  #js_frame_label{ display:inline-block; max-width:100%; word-break:break-word; overflow-wrap:anywhere; }
/* END DECETI PAGE customproduct-artworkapproval */
.deceti-page-customproduct-artworkapproval .deceti-approval-product-description{width:100%;text-align:center}
.deceti-page-customproduct-artworkapproval .deceti-approval-centered{text-align:center}
.deceti-page-customproduct-artworkapproval .deceti-approval-link-warning{display:inline-block;max-width:820px}
.deceti-page-customproduct-artworkapproval .deceti-approval-disclaimer{margin-top:10px}
.deceti-page-customproduct-artworkapproval .deceti-approval-summary{margin-top:10px;margin-bottom:10px;padding:15px 25px;border:3px solid var(--calc-accent);border-radius:15px;background:var(--deceti-color-surface)}
.deceti-page-customproduct-artworkapproval .deceti-approval-row-gap{margin-top:10px}
.deceti-page-customproduct-artworkapproval .deceti-approval-text-left{text-align:left}
.deceti-page-customproduct-artworkapproval .deceti-approval-prices{margin-top:15px}
.deceti-page-customproduct-artworkapproval .deceti-approval-price-column{text-align:center}
.deceti-page-customproduct-artworkapproval .deceti-approval-price-value{padding-top:10px;font-size:25px}
.deceti-page-customproduct-artworkapproval .deceti-approval-each{font-size:12px}
.deceti-page-customproduct-artworkapproval .deceti-approval-total-card{justify-content:center;border-radius:10px;background:var(--calc-accent-soft)}
.deceti-page-customproduct-artworkapproval .deceti-approval-form{margin-top:15px;text-align:left}
.deceti-page-customproduct-artworkapproval .deceti-approval-comment{width:100%;margin-top:6px}
.deceti-page-customproduct-artworkapproval .deceti-approval-action{width:100%}
.deceti-page-customproduct-artworkapproval .deceti-approval-heading{margin:0}

/* DECETI PAGE customproduct-newdesign */
.deceti-page-customproduct-newdesign .deceti-newdesign-image{width:auto;height:90%;max-width:90%;object-fit:contain}
.deceti-page-customproduct-newdesign .deceti-newdesign-field-block,
.deceti-page-customproduct-newdesign .deceti-newdesign-control{width:100%}
.deceti-page-customproduct-newdesign .deceti-newdesign-field-label{padding-left:20px}
.deceti-page-customproduct-newdesign .deceti-newdesign-dimensions{display:flex;flex-wrap:wrap;gap:16px;width:100%}
.deceti-page-customproduct-newdesign .deceti-newdesign-dimension{flex:1 1 260px;min-width:240px}
.deceti-page-customproduct-newdesign .deceti-newdesign-dimension-control{display:flex;align-items:center;gap:6px;margin-top:.5rem}
.deceti-page-customproduct-newdesign .deceti-newdesign-dimension-input{width:100%;max-width:260px;font-size:18px}
.deceti-page-customproduct-newdesign .deceti-newdesign-limit{margin-top:6px;font-size:14px;font-weight:600}
.deceti-page-customproduct-newdesign .deceti-newdesign-submit{width:94%;margin:10px}
/* END DECETI PAGE customproduct-newdesign */

/* Shared create/edit design form geometry. */
.deceti-customproduct-design-form .deceti-newdesign-image{width:auto;height:90%;max-width:90%;object-fit:contain}
.deceti-customproduct-design-form .deceti-newdesign-field-block,
.deceti-customproduct-design-form .deceti-newdesign-control{width:100%}
.deceti-customproduct-design-form .deceti-newdesign-field-label{padding-left:20px}
.deceti-customproduct-design-form .deceti-newdesign-dimensions{display:flex;flex-wrap:wrap;gap:16px;width:100%}
.deceti-customproduct-design-form .deceti-newdesign-dimension{flex:1 1 260px;min-width:240px}
.deceti-customproduct-design-form .deceti-newdesign-dimension-control{display:flex;align-items:center;gap:6px;margin-top:.5rem}
.deceti-customproduct-design-form .deceti-newdesign-dimension-input{width:100%;max-width:260px;font-size:18px}
.deceti-customproduct-design-form .deceti-newdesign-limit{margin-top:6px;font-size:14px;font-weight:600}
.deceti-customproduct-design-form .deceti-newdesign-submit{width:94%;margin:10px}

/* Artwork confirmation and upload wrappers. */
.deceti-page-artworkapproval-confirmation{margin-top:20px;margin-bottom:20px}
.deceti-page-artworkapproval-confirmation .deceti-confirmation-alert{border-radius:var(--deceti-confirmation-alert-radius,var(--deceti-radius-md,10px))}
.deceti-upload-description.is-clean{display:inline-block;width:100%;text-align:center}
.deceti-upload-cart{text-align:center}

/* Custom-product option/save panel shared by product and sticker pages. */
.deceti-customproduct-options-page .deceti-options-description.is-clean{display:inline-block;width:100%;text-align:center}
.deceti-customproduct-options-page .deceti-options-cart{text-align:center}
.deceti-customproduct-options-page .deceti-options-proof-image{max-width:var(--deceti-cp-save-image-max-width,90%);max-height:var(--deceti-cp-save-image-max-height,90%);object-fit:contain}
.deceti-customproduct-options-page .deceti-options-save-message{max-width:var(--deceti-cp-save-max-width,380px);padding-top:20px;border-radius:var(--deceti-cp-save-radius,10px);font-size:var(--deceti-cp-save-message-size,13px)}
.deceti-customproduct-options-page .deceti-options-save-message.has-top-gap{margin-top:20px}
.deceti-customproduct-options-page .deceti-options-save-form{max-width:var(--deceti-cp-save-max-width,380px);border-radius:var(--deceti-cp-save-radius,10px);background:var(--deceti-color-panel-soft)}
.deceti-customproduct-options-page .deceti-options-save-control{border-radius:var(--deceti-cp-save-radius,10px)}

/* Calculator-state diagnostic page. */
.deceti-page-customproduct-pricing-debug .deceti-debug-pre{padding:var(--deceti-debug-pre-padding,10px);border:1px solid var(--deceti-color-border);background:var(--deceti-color-panel-soft);font-size:var(--deceti-debug-pre-font-size,11px);white-space:var(--deceti-debug-pre-white-space,pre)}
.deceti-page-customproduct-pricing-debug .deceti-debug-pre.is-post{border-color:var(--deceti-color-primary);background:var(--calc-accent-soft)}
.deceti-page-customproduct-pricing-debug .deceti-debug-pre.is-get{background:var(--deceti-color-panel)}
.deceti-page-customproduct-pricing-debug .deceti-debug-pre.is-base{background:var(--deceti-color-panel-muted)}
.deceti-page-customproduct-pricing-debug .deceti-debug-pre.is-snapshot{border-color:var(--deceti-color-border-dark);background:var(--deceti-color-primary-deep);color:var(--deceti-color-success)}



/* source: catalog/view/stylesheet/deceti/deceti-0/calculator-components.css */
/* ==========================================================
   CALCULATED OPTIONS: BOX OPTIONS / ARROW SPECIAL CHARGE
   ========================================================== */
.deceti-total-price-card {
  background-color: var(--calc-accent-soft) !important;
  color: var(--deceti-color-primary-dark) !important;
}
.deceti-calculator-summary {
  border: 3px solid var(--calc-accent);
  background: var(--deceti-color-surface);
}
#shipping_promo_wrap {
  border-color: var(--calc-accent) !important;
  color: var(--deceti-color-primary-dark);
}
.deceti-calculated-option-module {
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 0;
  padding: 14px 0 18px;
  border-radius: 15px;
  background: var(--deceti-color-surface);
}

.deceti-calculated-option-module .deceti-calculated-option-title {
  display: flex;
  align-items: center;
  min-height: 40px;
  margin: 0 20px;
  padding: 0 30px;
  border-radius: 15px;
  background: var(--calc-accent, var(--deceti-color-accent)) !important;
  color: var(--calc-accent-text, var(--deceti-color-primary-dark)) !important;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.25;
}

.deceti-calculated-option-module .deceti-calculated-option-body {
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 0;
  padding: 12px 10px;
  border-radius: 15px;
  background: var(--deceti-color-surface) !important;
}

.deceti-calculated-option-module .deceti-calculated-option-body > :last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .deceti-calculated-option-module {
    margin-right: 0;
    margin-left: 0;
  }

  .deceti-calculated-option-module .deceti-calculated-option-title {
    margin-right: 10px;
    margin-left: 10px;
  }
}

/* Compact pricing-options layout. The global .deceti-content-block .row
   rule otherwise adds large vertical margins around both calculated rows. */
#arrow_special_charge_block,
#box_options_selector_block {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#arrow_special_charge_block > .col-md-12,
#box_options_selector_block > .col-md-12 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

#arrow_special_charge_block .deceti-calculated-option-module,
#box_options_selector_block .deceti-calculated-option-module {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

#arrow_special_charge_block .deceti-calculated-option-body {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 2px 50px !important;
}

#box_options_selector_block .deceti-calculated-option-body {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

#arrow_special_charge_block .deceti-arrow-charge-value {
  text-align: left;
  white-space: nowrap;
}

#deceti_color_pricing_alert_row,
#deceti_color_pricing_alert {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

/* Quick quantity savings for product pricing calculators. */
.deceti-quantity-savings {
  width: 100%;
  margin: 12px 0 10px;
  padding: 12px 4px 14px;
  overflow: hidden;
  border: 2px solid var(--deceti-color-accent);
  border-radius: 15px;
  background: var(--deceti-color-surface);
  color: var(--deceti-color-primary-dark);
  text-align: left;
  box-sizing: border-box;
}

.deceti-quantity-savings-title {
  margin-bottom: 12px;
  font-size: 17px;
  font-weight: 700;
  text-align: center;
}

.deceti-quantity-savings-carousel {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 30px;
  gap: 2px;
  align-items: center;
  margin-right: 0;
  margin-left: 0;
}

.deceti-quantity-savings-arrow.is-left { justify-self: start; }
.deceti-quantity-savings-arrow.is-right { justify-self: end; }

.deceti-quantity-savings-viewport {
  min-width: 0;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.deceti-quantity-savings-viewport::-webkit-scrollbar {
  display: none;
}

.deceti-quantity-savings-track {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  padding: 12px 0 4px;
  width: max-content;
}

.deceti-quantity-savings-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 2px solid var(--deceti-color-accent);
  border-radius: 50%;
  background: var(--deceti-color-accent) !important;
  color: var(--deceti-color-primary-dark) !important;
  cursor: pointer;
  font-size: 12px;
}

.deceti-quantity-savings-arrow:disabled {
  opacity: .65;
  cursor: default;
}

.deceti-quantity-savings-arrow:hover,
.deceti-quantity-savings-arrow:focus {
  border-color: var(--deceti-color-accent);
  outline: none;
  background: var(--deceti-color-accent-hover);
}

.deceti-quantity-savings-arrow:focus-visible,
.deceti-quantity-saving-card:focus-visible {
  outline: 3px solid var(--deceti-color-primary-dark) !important;
  outline-offset: 2px;
}

.deceti-quantity-saving-card {
  position: relative;
  flex: 0 0 94px;
  min-height: 78px;
  padding: 17px 8px 7px;
  border: 1px solid var(--deceti-color-border);
  border-radius: 4px;
  background: var(--deceti-color-surface);
  color: var(--deceti-color-text);
  text-align: left;
  cursor: pointer;
  box-sizing: border-box;
}

.deceti-quantity-saving-card:hover,
.deceti-quantity-saving-card:focus {
  border-color: var(--deceti-color-accent);
  outline: none;
  box-shadow: 0 0 0 2px var(--deceti-color-accent-soft);
}

.deceti-quantity-saving-card.is-selected {
  min-height: 88px;
  border: 4px solid var(--deceti-color-accent) !important;
  padding: 18px 5px 7px;
  background: var(--deceti-color-accent-soft) !important;
  background-color: var(--deceti-color-accent-soft) !important;
  color: var(--deceti-color-text) !important;
  box-shadow: none !important;
  transform: none !important;
}

.deceti-quantity-saving-card.is-selected .deceti-quantity-saving-badge {
  background: var(--deceti-color-accent) !important;
  color: var(--deceti-color-primary-dark) !important;
  font-weight: 700;
}

.deceti-quantity-saving-badge {
  position: absolute;
  top: -10px;
  left: 50%;
  min-width: 82px;
  padding: 2px 5px;
  border-radius: 4px;
  background: var(--deceti-color-accent) !important;
  color: var(--deceti-color-primary-dark) !important;
  font-size: 13px;
  line-height: 1.2;
  text-align: center;
  white-space: nowrap;
  transform: translateX(-50%);
}

.deceti-quantity-saving-quantity,
.deceti-quantity-saving-price {
  display: block;
  white-space: nowrap;
}

.deceti-quantity-saving-quantity {
  margin-bottom: 8px;
  font-size: 14px;
}

.deceti-quantity-saving-price {
  font-size: 18px;
  font-weight: 700;
}

.deceti-quantity-saving-price small {
  color: var(--deceti-color-text-muted);
  font-size: 12px;
  font-weight: 400;
}

@media (max-width: 767px) {
  #arrow_special_charge_block .deceti-calculated-option-body {
    padding-right: 40px !important;
    padding-left: 40px !important;
  }
}



/* source: catalog/view/stylesheet/deceti/deceti-0/components.css */
/* DECETI-0 theme polish. Core component colors come from tokens.css. */
body.deceti-0 {
  background: var(--deceti-color-page);
  color: var(--deceti-color-text);
}

.deceti-0 select,
.deceti-0 input,
.deceti-0 textarea {
  box-shadow: 0 1px 2px rgba(0, 51, 77, 0.04);
}



/* source: catalog/view/stylesheet/deceti/deceti-0/footer.css */
/* DECETI-0 storefront footer. footer.twig contains structure and content only. */
[data-deceti-footer], .deceti-footer-body {
  background-color: var(--deceti-color-footer-background) !important;
  font-family: var(--font-body-family, Arial, sans-serif) !important;
}
[data-deceti-footer] :is(p, a, li, address, span, strong, b, div) {
  font-family: var(--font-body-family, Arial, sans-serif) !important;
}
.deceti-footer-body { margin-top: 40px; color: var(--deceti-color-footer-text); font-size: 20px; }
.deceti-footer-intro { margin-top: 30px; font-size: 20px; }
.deceti-footer-intro-content, .deceti-footer-links { margin-left: 20px; }
.deceti-footer-links, .deceti-footer-bottom { margin-top: 20px; }
.deceti-footer-social { text-align: center; }
.deceti-footer-trust-image { width: 100%; height: auto; border-radius: 10px; }
@media (max-width: 767px) {
  .deceti-footer-body { font-size: 16px; }
  .deceti-footer-intro-content, .deceti-footer-links { margin-left: 0; }
}



/* source: catalog/view/stylesheet/deceti/deceti-0/theme-overrides.css */
/* DECETI-0 component identity: preserve the established cyan calculator. */
:root {
  --object-calculator-title-background: var(--theme-brand-accent);
  --object-calculator-title-text: var(--theme-brand-accent-text);
  --object-calculated-option-background: rgb(var(--theme-palette-brand-accent) / .35);
  --object-calculated-option-text: var(--theme-text-primary);
  --object-selection-active-background: rgb(var(--theme-palette-brand-accent) / .35);
  --object-selection-active-border: var(--theme-brand-primary);
  --object-shipping-background: var(--theme-surface-default);
  --object-shipping-text: var(--theme-text-primary);
  --object-shipping-border: var(--theme-brand-accent);
}

/* DECETI-0 keeps its original compact header geometry from header.css. */
.deceti-theme.deceti-0 .deceti-container {
  width: auto;
  max-width: 1300px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px;
}

.deceti-theme.deceti-0 .deceti-top-info-wrap .deceti-container {
  width: min(1340px, calc(100% - 30px)) !important;
  max-width: 1340px !important;
  padding-right: 0;
  padding-left: 0;
}

.deceti-theme.deceti-0 .deceti-top-info {
  display: flex;
  min-height: 0;
  align-items: center;
  justify-content: space-between;
  column-gap: clamp(18px, 2.2vw, 36px);
  row-gap: 12px;
  padding: 10px 0;
  flex-wrap: nowrap;
}

.deceti-theme.deceti-0 .deceti-info-item h3 {
  margin: 0;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.2;
}

.deceti-theme.deceti-0 .deceti-info-icon {
  width: 34px;
  min-width: 34px;
}

.deceti-theme.deceti-0 .deceti-info-icon i {
  font-size: 31px;
  line-height: 1;
}

@media (min-width: 992px) and (max-width: 1399px) {
  .deceti-theme.deceti-0 .deceti-top-info {
    column-gap: 16px;
  }

  .deceti-theme.deceti-0 .deceti-info-item h3 {
    font-size: 18px;
  }

  .deceti-theme.deceti-0 .deceti-info-icon {
    width: 32px;
    min-width: 32px;
  }

  .deceti-theme.deceti-0 .deceti-info-icon i {
    font-size: 29px;
  }
}

@media (max-width: 991px) {
  .deceti-theme.deceti-0 .deceti-top-info {
    justify-content: center;
    flex-wrap: wrap;
  }

  .deceti-theme.deceti-0 .deceti-header-inner {
    min-height: 0;
    padding: 16px 0;
  }
}

.deceti-theme.deceti-0 .deceti-header-inner {
  display: flex;
  min-height: 134px;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  padding-top: 0;
}

.deceti-theme.deceti-0 .deceti-logo img {
  width: auto;
  max-width: 323px;
  height: auto;
}

.deceti-theme.deceti-0 .deceti-top-message-box {
  max-width: 680px;
  padding: 10px 18px;
  background-color: rgb(var(--theme-palette-brand-accent));
  color: var(--deceti-color-primary-dark);
}

/* Sticker quantity table: calm cyan states instead of the legacy saturated
   blue row. Keep selected stronger than hover while retaining dark text. */
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:hover > label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:hover > label {
  color: var(--deceti-color-primary-dark) !important;
  background-color: var(--deceti-color-accent-pale) !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:has(input:checked) > label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:has(input:checked) > label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list.selected > label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list.selected > label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list label.selected,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list label.selected {
  color: var(--deceti-color-primary-dark) !important;
  background-color: var(--calc-accent-soft) !important;
  box-shadow: none;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell.save,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell.save {
  color: var(--deceti-color-primary-dark) !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list .table-cell.save,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list .table-cell.save,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell.save,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:has(input:checked) .table-cell.save {
  color: var(--deceti-color-accent-strong) !important;
}

/* Quantity savings carousel uses the same cyan family as calculator titles. */
.deceti-theme.deceti-0 .deceti-quantity-savings {
  border-color: rgb(var(--theme-palette-brand-accent)) !important;
}

.deceti-theme.deceti-0 .deceti-quantity-savings-arrow,
.deceti-theme.deceti-0 .deceti-quantity-saving-badge,
.deceti-theme.deceti-0 .deceti-quantity-saving-card.is-selected .deceti-quantity-saving-badge {
  border-color: rgb(var(--theme-palette-brand-accent)) !important;
  background-color: rgb(var(--theme-palette-brand-accent)) !important;
  color: var(--calc-accent-text, #00334d) !important;
}

.deceti-theme.deceti-0 .deceti-quantity-saving-card.is-selected,
.deceti-theme.deceti-0 .deceti-quantity-saving-card[aria-current="true"] {
  border-color: rgb(var(--theme-palette-brand-accent)) !important;
  background-color: var(--calc-accent-soft) !important;
}

/* Select Options and Upload Artwork summary shells keep the DECETI-0 cyan
   outline after the shared surface layer applies its neutral panel border. */
.deceti-theme.deceti-0 .deceti-calculator-summary.deceti-page-pricingcalculator-options,
.deceti-theme.deceti-0 .deceti-calculator-summary.deceti-page-uploadartwork {
  border-color: rgb(var(--theme-palette-brand-accent)) !important;
}

/* One geometry for Price, Frame, Shipping and Total. Total differs only by
   its commerce colors supplied by the shared object contract. */
.deceti-theme.deceti-0 .summary-row .summary-card {
  display: flex;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: stretch;
}

.deceti-theme.deceti-0 .summary-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  margin-right: auto !important;
  margin-left: auto !important;
}

.deceti-theme.deceti-0 .summary-row .summary-card-inner {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  min-height: var(--object-total-min-height);
  padding: 20px 10px 12px;
  flex-direction: column;
  align-items: center;
  justify-content: center !important;
  border: var(--object-total-border-width) solid var(--theme-border-soft);
  border-radius: var(--object-total-radius);
  background-color: var(--object-price-background);
  text-align: center;
  transform: none;
}

.deceti-theme.deceti-0 .summary-row .summary-card-inner.deceti-total-price-card {
  border-color: var(--object-total-border) !important;
  background-color: var(--object-total-background) !important;
}

.deceti-theme.deceti-0 .summary-row .summary-card-inner .summary-value {
  padding-top: 10px;
}

/* Stable calculator summary. The pricing renderer still updates Bootstrap
   width classes for legacy layouts; this grid remains authoritative so a
   quantity recalculation cannot move or squeeze the cards. */
.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .deceti-ui-calc-panel {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .deceti-ui-calc-panel > .summary-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: 128px;
  gap: 10px;
  width: 100%;
  height: auto !important;
  margin: 0 !important;
  align-items: stretch;
  justify-content: center;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .deceti-ui-calc-panel > .summary-row > .summary-card {
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* calculator_renderer.js may hide the legacy frame column for a combined
   pricing mode. Horizontal DECETI-0 deliberately keeps its four-card grid. */
.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row > [data-deceti-price-block="frame"] {
  display: flex !important;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .summary-card-inner {
  min-width: 0;
  min-height: 136px;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .summary-card-inner :is(#result_price, #result_frame, #result_shipping, #result_total) {
  display: block !important;
  max-width: 100%;
  white-space: nowrap;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js) .summary-row .summary-card-inner {
  display: flex !important;
  flex-direction: column;
  align-items: center !important;
  justify-content: center !important;
  aspect-ratio: auto;
  width: 100%;
  height: 100%;
  min-height: 0 !important;
  padding: 10px 8px !important;
  text-align: center;
  box-sizing: border-box;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row .summary-card-inner .summary-value {
  width: 100%;
  padding-top: 6px;
  text-align: center;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row > [data-deceti-price-block="item"] .summary-card-inner,
.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row > [data-deceti-price-block="frame"] .summary-card-inner,
.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row > [data-deceti-price-block="shipping"] .summary-card-inner {
  border: 0 !important;
  box-shadow: none !important;
}

.deceti-theme.deceti-0 :is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
.summary-row .summary-note {
  font-size: 12px !important;
  line-height: 1.1 !important;
  margin-top: 2px;
  margin-bottom: 0;
}

/* Compact DECETI-0 vertical summary. Keep Total highlighted; ordinary price
   cards sit directly on the white summary surface without grey outlines. */
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .deceti-ui-calc-panel {
  height: auto !important;
  min-height: 0 !important;
  padding: 10px !important;
  overflow: visible !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .deceti-ui-calc-panel > .summary-row {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: 112px;
  gap: 8px;
  width: min(100%, 350px) !important;
  max-width: 350px !important;
  margin: 0 auto !important;
  justify-content: center !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .summary-row .summary-card-inner {
  width: 100%;
  height: 100%;
  min-height: 0 !important;
  padding: 8px 6px !important;
}

.deceti-theme.deceti-0 .calculator.deceti-page-pricingcalculator-v
.calc-right-top .summary-row > .summary-card {
  height: 112px !important;
  min-height: 112px !important;
  aspect-ratio: auto !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .calc-right-top > .deceti-ui-calc-panel + * {
  margin-top: 10px !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v
.summary-row > .summary-card:not(:last-child) .summary-card-inner {
  border: 0 !important;
  box-shadow: none !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .summary-row .summary-value {
  padding-top: 5px;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-v .summary-row .summary-note {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  margin: 2px 0 0;
  color: var(--object-body-text, #001a33) !important;
}

@media (max-width: 767px) {
  .deceti-theme.deceti-0 .summary-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Sticker calculators: shared deceti-0 panel contract. */
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers {
  margin-top: 16px;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers > .row {
  row-gap: 16px;
  align-items: flex-start;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers :is(
  #product-calc,
  #product-options-calc
),
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers {
  box-sizing: border-box;
  border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
  border-radius: 15px !important;
  background: var(--deceti-color-surface, #ffffff);
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers #product-options-calc {
  overflow: hidden;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .blue-top-line {
  box-sizing: border-box;
  margin: 0;
  border: 0 !important;
  border-radius: 14px 14px 0 0 !important;
  background: var(--calc-accent, var(--deceti-color-primary, #02b5ff));
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers {
  margin-top: 0 !important;
  overflow: hidden;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) :is(
  .finishing-header,
  .finishing-module-title
) {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 18px;
  border-radius: 12px !important;
  background: var(--deceti-color-primary-dark, #00334d) !important;
  color: var(--object-button-primary-text, #ffffff) !important;
  font-weight: 700;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) :is(
  .finishing-card,
  .deceti-option-selector-block,
  .deceti-sticker-info-panel,
  .deceti-sticker-total-header
) {
  border: 1px solid var(--deceti-color-primary-dark, #00334d);
}

.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) ul.quantity-list > li.quantity-list:first-child .table-cell.save:empty {
  display: block !important;
  visibility: hidden !important;
}

/* Horizontal calculator: keep three equal columns and obtain the extra room
   from the unused Bootstrap container margins, not from side columns. */
@media (min-width: 768px) {
  .deceti-theme.deceti-0 .calculator:is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
  #form_upload > .container {
    width: 100% !important;
    max-width: none !important;
    padding-right: 8px !important;
    padding-left: 8px !important;
  }

  .deceti-theme.deceti-0 .calculator:is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
  #form_upload > .container > .row > .calc {
    flex: 0 0 33.333333% !important;
    width: 33.333333% !important;
    max-width: 33.333333% !important;
  }
}

/* Keep the bordered shell inside its product container. The extra room comes
   from reducing padding inside the border, never from viewport overflow. */
@media (min-width: 768px) {
  .deceti-theme.deceti-0 .calculator:is(
    .deceti-page-pricingcalculator-h,
    .deceti-page-pricingcalculator-js
  ) {
    position: static;
    left: auto;
    width: 100% !important;
    max-width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
    transform: none;
  }

  .deceti-theme.deceti-0 .calculator:is(
    .deceti-page-pricingcalculator-h,
    .deceti-page-pricingcalculator-js
  ) > .container > .deceti-ui-calculator-padding {
    padding-right: 10px !important;
    padding-left: 10px !important;
  }
}

/* Shipping controls and promo/message panels use the same quiet light-blue
   border contract as the Total Price card instead of the saturated accent. */
.deceti-theme.deceti-0 .calculator:is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
:is(
  #shipping_calc_wrap.deceti-ui-shipping-wrap,
  #shipping_promo_wrap.deceti-ui-shipping-message-short,
  .deceti-ui-shipping-message-long
) {
  border-color: var(--object-total-border, #67dff5) !important;
}

.deceti-theme.deceti-0 .calculator:is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
:is(
  #shipping_promo_wrap.deceti-ui-shipping-message-short,
  .deceti-ui-shipping-message-long
),
.deceti-theme.deceti-0 .calculator:is(.deceti-page-pricingcalculator-h, .deceti-page-pricingcalculator-js)
:is(
  #shipping_promo_wrap.deceti-ui-shipping-message-short,
  .deceti-ui-shipping-message-long
) * {
  color: var(--deceti-color-primary-dark, #00334d) !important;
}

@media (min-width: 768px) {
  .deceti-theme.deceti-0 .deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="none"] > .summary-card:first-child,
  .deceti-theme.deceti-0 .deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="combined"] > .summary-card:first-child {
    grid-column-start: 2 !important;
  }
}

.deceti-theme.deceti-0 .calculator.deceti-page-pricingcalculator-h .summary-card-inner .summary-value > p.summary-note {
  margin: 4px 0 0 !important;
  font-size: var(--object-price-help-font-size, 12px) !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

/* Options Page uses Bootstrap columns instead of summary-card markup. Turn
   each direct price column into the same visual commerce card. */
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px;
  width: min(100%, 354px);
  max-width: 354px;
  margin-right: auto !important;
  margin-left: auto !important;
  align-items: stretch;
  justify-content: center !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center {
  display: flex;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
  height: 145px !important;
  min-height: 145px !important;
  margin: 0 !important;
  padding: 12px !important;
  flex-direction: column;
  align-items: center;
  justify-content: center !important;
  border: var(--object-total-border-width) solid var(--theme-border-soft);
  border-radius: var(--object-total-radius);
  background-color: var(--object-price-background);
  text-align: center;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center:has(> .deceti-total-price-card) {
  border-color: var(--object-total-border) !important;
  color: var(--object-total-text) !important;
  background-color: var(--object-total-background) !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center > .deceti-total-price-card {
  display: contents;
  min-height: 0;
  padding: 0;
  border: 0 !important;
  color: inherit !important;
  background: transparent !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center > .deceti-ui-price-value,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center > .deceti-total-price-card > .deceti-ui-price-value {
  padding-top: 10px;
}

.deceti-theme.deceti-0 #calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]) #result_total {
  font-size: var(--object-price-value-font-size, 28px) !important;
  font-weight: var(--object-price-value-font-weight, 500) !important;
  line-height: 1.25 !important;
}

/* Readable contact form typography on both sticker pages. */
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel > b,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel > b {
  display: block;
  font-size: 22px;
  line-height: 1.3;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel label,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel label {
  font-size: 16px !important;
  line-height: 1.35;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel input,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel select,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel textarea,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel input,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel select,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel textarea {
  font-size: 18px !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .deceti-sticker-info-panel .deceti-sticker-font-13,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers .deceti-sticker-info-panel .deceti-sticker-font-13 {
  font-size: 15px !important;
  line-height: 1.4;
}

.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel > b {
  display: block;
  font-size: 24px !important;
  line-height: 1.3;
}

.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel label {
  font-size: 17px !important;
  line-height: 1.4;
}

.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel input,
.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel select,
.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel textarea {
  font-size: 18px !important;
  line-height: 1.4;
}

.deceti-theme.deceti-0 #contact_block .deceti-sticker-info-panel .deceti-sticker-font-13 {
  font-size: 16px !important;
}

/* Design preview panel on both Select Options pages. */
.deceti-theme.deceti-0 .deceti-customproduct-options-page #product-options-cart {
  padding: 40px 24px 24px !important;
}

/* The calculator root also carries deceti-ui-summary-layout, whose shared
   10px top margin made the right inner outline sit lower than the preview. */
.deceti-theme.deceti-0 .deceti-customproduct-options-page
#product-options-cart > .deceti-page-pricingcalculator-options {
  margin-top: 0 !important;
}

.deceti-theme.deceti-0 .deceti-page-customproduct-options .deceti-options-cart,
.deceti-theme.deceti-0 .deceti-page-customproduct-options-stickers .deceti-options-cart {
  box-sizing: border-box;
  margin: 0;
  padding: 40px 24px 24px !important;
  border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
  border-radius: 15px;
  box-shadow: none;
  background-color: #fff !important;
}

.deceti-theme.deceti-0 .deceti-page-customproduct-options .product-image-span,
.deceti-theme.deceti-0 .deceti-page-customproduct-options-stickers .product-image-span {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 14px;
  border: var(--object-preview-inner-border-width) solid rgb(var(--theme-palette-brand-accent)) !important;
  border-radius: 15px;
  background-color: var(--object-preview-background) !important;
}

.deceti-theme.deceti-0 .deceti-page-customproduct-options #image_1,
.deceti-theme.deceti-0 .deceti-page-customproduct-options-stickers #image_1 {
  display: block;
  background-color: transparent !important;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-proof-image {
  display: block;
  width: auto !important;
  max-width: min(85%, 680px) !important;
  height: auto !important;
  margin: 24px auto 0;
  background-color: #fff !important;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-save-form {
  width: min(100%, 390px);
  max-width: 390px;
  border: 0;
  box-shadow: none;
  background: transparent;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-save-form form > .mb-1 {
  display: grid;
  grid-template-columns: 90px minmax(0, 220px);
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 10px !important;
  text-align: right;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-save-form small {
  font-size: 17px;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-save-control {
  width: 100%;
  min-height: 46px;
  margin-top: 0 !important;
  font-size: 17px;
}

.deceti-theme.deceti-0 .deceti-customproduct-options-page #btnSaveDesignSubmit {
  border-color: rgb(var(--theme-palette-brand-primary)) !important;
  background: rgb(var(--theme-palette-brand-primary)) !important;
  color: #fff !important;
}

@media (max-width: 500px) {
  .deceti-theme.deceti-0 .deceti-customproduct-options-page .deceti-options-save-form form > .mb-1 {
    grid-template-columns: 1fr;
    gap: 4px;
    text-align: left;
  }
}

/* DECETI-0 owns a horizontal desktop menu. The shared site shell intentionally
   provides generic grid geometry, so restore this theme's concrete layout
   after the shared package has loaded. */
@media (min-width: 992px) {
  .deceti-theme.deceti-0 .deceti-megamenu {
    display: flex;
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 28px;
  }

  .deceti-theme.deceti-0 .deceti-megamenu > li {
    flex: 0 0 auto;
  }
}

@media (max-width: 991px) {
  .deceti-theme.deceti-0 .deceti-mobile-toggle {
    display: block;
  }

  .deceti-theme.deceti-0 .deceti-megamenu {
    display: none;
    width: 100%;
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }

  .deceti-theme.deceti-0 .deceti-megamenu.open {
    display: flex;
  }
}

.deceti-theme.deceti-0 .deceti-page-uploadartwork .deceti-ui-price-summary {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 10px;
  width: 100%;
  margin-right: 0 !important;
  margin-left: 0 !important;
  align-items: stretch;
}

.deceti-theme.deceti-0 .deceti-page-uploadartwork .deceti-ui-price-summary > .deceti-ui-text-center {
  display: flex !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
  min-height: var(--object-total-min-height);
  margin: 0 !important;
  padding: var(--object-total-padding-block) 10px !important;
  flex-direction: column;
  align-items: center;
  justify-content: center !important;
  border: var(--object-total-border-width) solid var(--theme-border-soft);
  border-radius: var(--object-total-radius);
  background-color: var(--object-price-background);
  text-align: center;
}

.deceti-theme.deceti-0 .deceti-page-uploadartwork .deceti-ui-price-summary > .deceti-ui-text-center:has(> .deceti-total-price-card) {
  border-color: var(--object-total-border) !important;
  color: var(--object-total-text) !important;
  background-color: var(--object-total-background) !important;
}

.deceti-theme.deceti-0 .deceti-page-uploadartwork .deceti-ui-price-summary > .deceti-ui-text-center > .deceti-total-price-card {
  display: contents;
  min-height: 0;
  padding: 0;
  border: 0 !important;
  color: inherit !important;
  background: transparent !important;
}

/* Upload Artwork and Select Options use the number of rendered price cards as
   the layout contract: three cards stay on one row; four cards form 2 x 2.
   This deliberately overrides the shared odd-last-card full-width rule. */
.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 540px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  justify-content: center !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]):has(> .deceti-price-card:nth-of-type(4)) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 354px !important;
}

/* Hidden result hooks are direct children in the no-separate-frame branch.
   Count rendered price cards, not every DOM child. */
.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]):not(:has(> .deceti-price-card:nth-of-type(3))) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 354px !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
> .deceti-price-card {
  grid-column: auto !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
  padding-top: 20px !important;
  overflow: hidden;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
> .deceti-price-card > :first-child,
.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
> .deceti-price-card > .deceti-total-price-card > :first-child {
  display: flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
.deceti-price-card :is(#result_price, #result_frame, #result_shipping, #result_total) {
  display: block !important;
  max-width: 100%;
  font-size: 26px !important;
  line-height: 1.2 !important;
  white-space: nowrap;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
.deceti-ui-price-value {
  width: 100%;
  padding-top: 6px !important;
  text-align: center;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
.deceti-ui-help-text {
  margin: 2px 0 0;
  font-size: 11px !important;
  line-height: 1.1 !important;
}

/* Workflow forms: keep the main Finishing Options heading readable on the accent bar. */
.deceti-theme.deceti-0 .deceti-page-uploadartwork #finishing_options_wrapper .finishing-module-title,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #finishing_options_wrapper .finishing-module-title {
  color: #ffffff !important;
}

/* All deceti-0 calculators share one Free Shipping message treatment. */
.deceti-theme.deceti-0 :is(
  #shipping_promo_wrap.deceti-ui-shipping-message-short,
  #shipping_promo_wrap.deceti-ui-shipping-promo,
  .deceti-ui-shipping-message-long,
  .deceti-sticker-free-shipping
) {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  border-color: var(--object-total-border, #67dff5) !important;
  color: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
  background: var(--deceti-color-surface, #ffffff) !important;
}

.deceti-theme.deceti-0 :is(
  #shipping_promo_wrap.deceti-ui-shipping-message-short,
  #shipping_promo_wrap.deceti-ui-shipping-promo,
  .deceti-ui-shipping-message-long,
  .deceti-sticker-free-shipping
) * {
  color: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
}

/* Main calculator workspace: separate the working surface from white cards. */
.deceti-theme.deceti-0 .calculator:is(
  .deceti-page-pricingcalculator-h,
  .deceti-page-pricingcalculator-v,
  .deceti-page-pricingcalculator-js,
  .deceti-page-pricingcalculator-base
) {
  background-color: #e1e5e8 !important;
}

@media (max-width: 767px) {
  .deceti-theme.deceti-0 .summary-row {
    gap: 8px;
  }

  .deceti-theme.deceti-0 .summary-row .summary-card-inner,
  .deceti-theme.deceti-0 .deceti-page-uploadartwork .deceti-ui-price-summary > .deceti-ui-text-center {
    min-height: 118px !important;
    padding: 12px 7px 9px !important;
  }

  .deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .deceti-theme.deceti-0 .deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center {
    width: 100% !important;
    max-width: none !important;
    height: 118px !important;
    min-height: 118px !important;
    padding: 10px 6px !important;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/activation.css */
/* Final shared compatibility guard for every DECETI palette. No raw colors. */
.deceti-theme .finishing-module-title,
.deceti-theme .finishing-module-title *,
.deceti-theme .deceti-calculated-option-title,
.deceti-theme .deceti-calculated-option-title *,
.deceti-theme .deceti-calculated-module-title,
.deceti-theme .deceti-calculated-module-title *,
.deceti-theme [data-deceti-module-title],
.deceti-theme [data-deceti-module-title] * {
  color: var(--object-calculator-title-text) !important;
}

.deceti-theme strong,
.deceti-theme b {
  color: inherit;
}

.deceti-theme .deceti-total-price-card,
.deceti-theme .deceti-total-price-card *,
.deceti-theme .deceti-ui-total-card-fill,
.deceti-theme .deceti-ui-total-card-fill *,
.deceti-theme .deceti-sticker-total-header,
.deceti-theme .deceti-sticker-total-header *,
.deceti-theme #result_total,
.deceti-theme #Total_Price,
.deceti-theme #Total_Price_Each {
  color: var(--object-total-text) !important;
}

.deceti-theme .deceti-total-price-card,
.deceti-theme .deceti-ui-total-card-fill,
.deceti-theme .deceti-sticker-total-header {
  border-color: var(--object-total-border) !important;
  background: var(--object-total-background) !important;
  background-image: none !important;
}

.deceti-theme .deceti-ui-total-box:not(.deceti-total-price-card),
.deceti-theme .deceti-ui-total-inner:not(.deceti-total-price-card),
.deceti-theme [data-deceti-price-block="total"],
.deceti-theme #total_price_block {
  color: var(--theme-text-primary) !important;
  background: transparent !important;
  background-image: none !important;
}

.deceti-theme .deceti-ui-total-box:not(.deceti-total-price-card) select,
.deceti-theme .deceti-ui-total-inner:not(.deceti-total-price-card) select,
.deceti-theme [data-deceti-price-block="total"] select,
.deceti-theme #total_price_block select,
.deceti-theme .deceti-quantity-saving-card {
  color: var(--theme-text-primary) !important;
}

.deceti-theme #shipping_promo_wrap,
.deceti-theme .deceti-ui-shipping-message-short,
.deceti-theme .deceti-ui-shipping-message-long,
.deceti-theme #shipping_calc_wrap.deceti-ui-shipping-wrap {
  border-color: var(--object-shipping-border) !important;
}

.deceti-theme #shipping_promo_wrap,
.deceti-theme .deceti-ui-shipping-message-short,
.deceti-theme .deceti-ui-shipping-message-long {
  color: var(--object-shipping-text) !important;
  background: var(--object-shipping-background) !important;
}

.deceti-theme .deceti-shipping-rates {
  width: 100%;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--object-shipping-border);
}

.deceti-theme .deceti-shipping-rates::before,
.deceti-theme .deceti-shipping-rates > .deceti-shipping-rates-title,
.deceti-theme .deceti-shipping-rates > [data-deceti-shipping-rates-title],
.deceti-theme .deceti-shipping-rates > legend,
.deceti-theme .deceti-shipping-rates > label {
  display: none !important;
  content: none !important;
}

.deceti-theme .deceti-ui-shipping-zone,
.deceti-theme .deceti-ui-shipping-postcode,
.deceti-theme .deceti-shipping-rate-select {
  font-family: inherit;
  font-size: var(--theme-control-font-size, 20px) !important;
  font-weight: 400;
  line-height: 1.2;
}

.deceti-theme .deceti-shipping-rate-select {
  width: 100%;
  min-height: 46px;
  color: var(--object-selection-text);
  border: 2px solid var(--object-shipping-border);
  border-radius: 12px;
  background: var(--object-selection-background);
}

.deceti-theme .deceti-ui-shipping-button.is-loading {
  cursor: wait;
  opacity: 0.8;
}

.deceti-theme .deceti-quantity-savings {
  border-color: var(--theme-brand-primary) !important;
  color: var(--theme-text-primary) !important;
  background: var(--theme-surface-default) !important;
}

.deceti-theme .deceti-quantity-savings-arrow {
  border-color: var(--theme-brand-primary) !important;
  color: var(--theme-text-inverse) !important;
  background: var(--theme-brand-primary) !important;
}

.deceti-theme .deceti-quantity-saving-badge,
.deceti-theme .deceti-quantity-saving-card.is-selected .deceti-quantity-saving-badge {
  color: var(--theme-text-inverse) !important;
  background: var(--theme-brand-primary) !important;
}

.deceti-theme .deceti-quantity-saving-card.is-selected,
.deceti-theme .deceti-quantity-saving-card[aria-current="true"] {
  border-color: var(--theme-brand-primary) !important;
  color: var(--theme-text-primary) !important;
  background: var(--theme-brand-soft-25) !important;
}

.deceti-theme .deceti-quantity-saving-card.is-selected .deceti-quantity-saving-quantity,
.deceti-theme .deceti-quantity-saving-card.is-selected .deceti-quantity-saving-price {
  color: var(--theme-text-primary) !important;
}

/* Sticker quantity states. */
.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected),
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected) {
  color: var(--theme-text-primary) !important;
  background: var(--theme-brand-soft-15) !important;
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected) .table-cell,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected) .table-cell {
  color: var(--theme-text-primary) !important;
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list .table-cell.save,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list .table-cell.save,
.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected) .table-cell.save,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list:hover > label:not(.selected) .table-cell.save {
  color: var(--theme-brand-primary) !important;
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list > label.selected,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list > label.selected {
  color: var(--theme-text-inverse) !important;
  background: var(--theme-brand-primary) !important;
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list > label.selected .table-cell,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list > label.selected .table-cell,
.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list > label.selected .table-cell.save,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list > label.selected .table-cell.save {
  color: var(--theme-text-inverse) !important;
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list > label > .table-cell + .table-cell,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list > label > .table-cell + .table-cell {
  border-inline-start: 1px solid var(--theme-brand-soft-15);
}

.deceti-theme .deceti-page-pricingcalculator-stickers ul.quantity-list > li.quantity-list > label.selected > .table-cell + .table-cell,
.deceti-theme .deceti-page-pricingcalculator-options-stickers ul.quantity-list > li.quantity-list > label.selected > .table-cell + .table-cell {
  border-inline-start-color: rgb(var(--theme-palette-text-inverse) / .30);
}



/* source: catalog/view/stylesheet/deceti/components/content/top-block.css */
/* Shared Top Block geometry. This component belongs to product content, not to
 * a DECETI storefront theme, and therefore works with every theme family. */
.deceti-product-top-block,
.deceti-dynamic-block[data-deceti-block="topblock"] {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}



/* source: catalog/view/stylesheet/deceti/deceti-0/content-entities.css */
/*
 * DECETI-0 content entities.
 *
 * This layer is deliberately scoped to CMS content wrappers. It normalizes
 * legacy product-page HTML and provides stable classes for future CMS cards.
 */

/* Per-block placement selected in OpenCart Admin. */
.deceti-dynamic-block {
  width: 100%;
  min-width: 0;
  border-radius: var(--deceti-block-radius, 0);
  background: var(--deceti-block-background, transparent);
  overflow: hidden;
}

/* Make admin-selected background and rounding visible around embedded widgets. */
.deceti-dynamic-block.deceti-block-customized {
  padding: var(--deceti-block-padding, clamp(16px, 2vw, 28px));
}

.deceti-dynamic-block.deceti-block-customized > :first-child {
  max-width: 100%;
  border-radius: max(0px, calc(var(--deceti-block-radius, 0px) - 6px));
}

.deceti-dynamic-block.deceti-layout-structured {
  max-width: var(--content-max-width, 1600px);
  margin-inline: auto;
}

.deceti-dynamic-block.deceti-layout-full {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: none;
  margin-inline: -50vw;
}

/* Bootstrap rows remain responsible for columns; cards stretch equally per row. */
.deceti-content-block .row {
  align-items: stretch;
  /* Restore the Bootstrap gutter geometry overridden by legacy product-page.css.
   * Without the negative inline gutter every row after the introductory card
   * becomes narrower by one column gutter on both sides. */
  margin-block: var(--content-gap, 20px);
  margin-inline: calc(var(--bs-gutter-x, 1.5rem) * -0.5);
}

.deceti-content-block .row > [class*="col-"] {
  display: flex;
  min-width: 0;
}

.deceti-content-block .row > [class*="col-"] > .content-block {
  flex: 1 1 auto;
}

:is(
  .deceti-block-contentblock2,
  .deceti-block-contentblock3,
  .deceti-content-entity
) {
  --content-canvas-background: transparent;
  --content-card-background: var(--deceti-color-surface, #fff);
  --content-card-border: var(--deceti-color-primary-dark, #00334d);
  --content-card-shadow: 0 5px 18px rgb(0 51 77 / 8%);
  --content-heading-color: var(--deceti-color-text-black, #07152d);
  --content-text-color: var(--deceti-color-text, #172033);
  --content-muted-color: color-mix(in srgb, var(--content-text-color) 68%, transparent);
  --content-link-color: var(--deceti-color-primary-dark, #007fae);
  --content-accent-color: var(--deceti-color-primary, #02b5ff);
  --content-radius: 16px;
  --content-gap: clamp(14px, 1.5vw, 24px);
  --content-padding: clamp(18px, 2.25vw, 34px);
  --content-body-size: clamp(16px, 0.96rem + 0.16vw, 19px);
  --content-heading-size: clamp(22px, 1.15rem + 0.52vw, 28px);
  --content-font-body: var(--font-content-body-family, var(--font-body-family, inherit));
  --content-font-heading: var(--font-content-heading-family, var(--font-heading-family, inherit));
  color: var(--content-text-color);
  font-family: var(--content-font-body);
}

/* Canvas: compatible with the existing numeric content-block wrappers. */
:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) > .deceti-content-block,
.deceti-content-entity {
  width: 100%;
  margin: 0 0 var(--content-gap);
  color: var(--content-text-color);
  /* The entity canvas only groups cards; it must not paint its own panel. */
  background: transparent;
}

/* Base section/card entity. Existing .content-block markup maps to this. */
:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .content-block,
.deceti-content-entity__card {
  width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0 0 var(--content-gap);
  padding: var(--content-padding);
  border: 1px solid var(--content-card-border);
  border-radius: var(--content-radius);
  color: var(--content-text-color);
  background: var(--content-card-background);
  box-shadow: var(--content-card-shadow);
  font-size: var(--content-body-size);
  line-height: 1.6;
}

/* Intro is intentionally quieter than a card grid. */
.deceti-content-entity--intro,
.deceti-content-entity__intro {
  text-align: center;
}

.deceti-content-entity--intro > .deceti-content-block,
.deceti-content-entity__intro {
  padding: var(--content-padding);
  border-inline: 4px solid var(--content-accent-color);
  border-radius: var(--content-radius);
  background: color-mix(in srgb, var(--content-accent-color) 7%, var(--content-card-background));
}

/* Typography contract, including legacy inline font-size declarations. */
:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) :is(h1, h2, h3, h4, h5, h6),
.deceti-content-entity__title {
  margin: 0 0 0.7em;
  color: var(--content-heading-color) !important;
  font-size: var(--content-heading-size) !important;
  font-family: var(--content-font-heading) !important;
  font-weight: 700 !important;
  line-height: 1.25;
}

/*
 * Dynamic top banner entity (deceti-block-topblock-v0).
 * The markup is stored as CMS HTML rather than Twig, so this compatibility
 * selector is also its production entity selector.
 */
.deceti-block-topblock,
.deceti-content-entity--topblock-v0 {
  --topblock-surface: var(--color-topblock-background, var(--deceti-color-primary-dark, #00334d));
  --topblock-content-background: var(--color-topblock-content-background, var(--deceti-color-primary, #02b5ff));
  --topblock-text: var(--object-body-text, var(--deceti-color-text, #172033));
  --topblock-heading: var(--object-heading-text, var(--deceti-color-text-black, #07152d));
  --topblock-accent: var(--deceti-color-accent, #ffc32b);
  --topblock-banner-background: var(--deceti-color-button-upload, #d70b76);
  --topblock-banner-text: var(--deceti-color-white, #fff);
  /* The Top Block is a full-width hero: all of its edges stay square. */
  --topblock-radius: 0px;
  --topblock-gap: clamp(14px, 1.7vw, 28px);
  --topblock-padding: clamp(16px, 2vw, 30px);
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border-radius: var(--topblock-radius);
  color: var(--topblock-text);
  font-family: var(--font-banner-body-family, var(--font-body-family, inherit));
}

.deceti-block-topblock .deceti-content-block,
.deceti-content-entity--topblock-v0 .deceti-content-block {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
}

.deceti-block-topblock .image-wrapper,
.deceti-content-entity--topblock-v0 .image-wrapper {
  display: block;
  align-items: stretch;
  overflow: hidden;
  border-radius: 0 !important;
  background: var(--topblock-surface);
}

.deceti-block-topblock .image-container,
.deceti-content-entity--topblock-v0 .image-container {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  min-width: 0;
  border-radius: 0 !important;
}

.deceti-block-topblock .image-left,
.deceti-content-entity--topblock-v0 .image-left {
  display: block;
  width: 70%;
  /* Do not consume the dark Top Block remainder on narrower desktops. */
  flex: 0 1 70%;
  height: 100%;
  min-height: 320px;
  object-fit: cover;
  border-radius: 0 !important;
}

.deceti-block-topblock .image-right-block,
.deceti-content-entity--topblock-v0 .image-right-block {
  display: flex;
  width: 35%;
  min-width: 280px;
  max-width: 592px;
  margin-left: -85px;
  padding: var(--topblock-padding);
  align-items: center;
  background: var(--topblock-content-background);
  border-radius: 0 !important;
}

.deceti-block-topblock .message-overlay,
.deceti-content-entity--topblock-v0 .message-overlay {
  width: 100%;
}

.deceti-block-topblock .message-overlay > div:first-child,
.deceti-content-entity--topblock-v0 .message-overlay > div:first-child {
  padding: 12px 16px;
  border-radius: calc(var(--topblock-radius) * 0.7);
  background: var(--topblock-accent) !important;
}

.deceti-block-topblock .message-overlay h1.text-block,
.deceti-content-entity--topblock-v0 .message-overlay h1.text-block {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0;
  color: var(--topblock-heading) !important;
  font-family: var(--font-banner-display-family, var(--font-display-family, inherit)) !important;
  font-size: var(--font-banner-display-size, clamp(20px, 1.1rem + 0.45vw, 28px)) !important;
  font-weight: var(--font-banner-display-weight, 700) !important;
  line-height: var(--font-banner-display-line-height, 1.25);
}

.deceti-block-topblock .message-overlay p.text-block,
.deceti-content-entity--topblock-v0 .message-overlay p.text-block {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 12px 0 0;
  color: var(--topblock-text);
  font-family: var(--font-banner-body-family, var(--font-body-family, inherit));
  font-size: var(--font-banner-body-size, clamp(16px, 0.95rem + 0.16vw, 19px)) !important;
  font-weight: var(--font-banner-body-weight, 500);
  line-height: var(--font-banner-body-line-height, 1.45);
}

.deceti-block-topblock .message-overlay .text-block img,
.deceti-content-entity--topblock-v0 .message-overlay .text-block img {
  flex: 0 0 auto;
  width: auto;
  max-width: 68px;
  height: auto;
  max-height: 70px;
  margin: 0;
  object-fit: contain;
}

.deceti-block-topblock .message-overlay > div:not(:first-child),
.deceti-content-entity--topblock-v0 .message-overlay > div:not(:first-child) {
  font-family: var(--font-banner-promo-family, var(--font-heading-family, inherit));
  font-size: var(--font-banner-promo-size, 18px) !important;
  font-weight: var(--font-banner-promo-weight, 600) !important;
}

.deceti-block-topblock [class*="elfsight-app-"],
.deceti-content-entity--topblock-v0 [class*="elfsight-app-"] {
  width: 100%;
  max-width: 100%;
  margin-top: 10px;
  overflow: clip;
}

.deceti-block-topblock .magenta-banner,
.deceti-content-entity--topblock-v0 .magenta-banner {
  display: grid;
  width: 100%;
  min-height: 52px;
  padding: 10px var(--topblock-padding);
  place-items: center;
  border-radius: 0 !important;
  color: var(--topblock-banner-text);
  background: var(--topblock-banner-background);
  font-family: var(--font-banner-promo-family, var(--font-heading-family, inherit));
  font-size: var(--font-banner-strip-size, clamp(18px, 1rem + 0.45vw, 24px));
  font-weight: var(--font-banner-strip-weight, 700);
  line-height: 1.2;
  text-align: center;
}

/*
 * Home top blocks can also be pasted directly into the CMS without the
 * canonical Top Block wrapper. Keep that legacy/live markup square as well.
 */
body:has(#common-home) :is(.image-wrapper, .image-container, .image-left, .image-right-block, .magenta-banner),
body:has(#common-home) .deceti-dynamic-block:has(.image-container > .image-left + .image-right-block),
body:has(#common-home) .deceti-dynamic-block:has(.image-container > .image-left + .image-right-block) > .deceti-content-block {
  border-radius: 0 !important;
}

/* Standalone Home Top HTML (without a generated Top Block wrapper). */
#common-home.deceti-home-page > section.deceti-dynamic-block:has(.image-wrapper .benefits-list) {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: none;
  margin: 0 -50vw;
  padding: 0 !important;
  overflow: hidden;
  background: var(--color-topblock-background, #00334d);
}

#common-home.deceti-home-page > section.deceti-dynamic-block:has(.image-wrapper .benefits-list) > .deceti-content-block {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 !important;
}

body:has(#common-home) .image-wrapper:has(.benefits-list) {
  --topblock-surface: var(--color-topblock-background, #00334d);
  --topblock-content-background: var(--color-topblock-content-background, #02b5ff);
  --topblock-heading: var(--color-heading, #000000);
  --topblock-banner-background: var(--color-action-upload, #d40b78);
  --topblock-banner-text: var(--color-text-inverse, #ffffff);
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  background: var(--topblock-surface);
}

body:has(#common-home) .image-wrapper:has(.benefits-list) .image-container {
  display: flex;
  min-width: 0;
  align-items: stretch;
  justify-content: flex-start;
}

body:has(#common-home) .image-wrapper:has(.benefits-list) .image-left {
  display: block;
  object-fit: cover;
}

body:has(#common-home) .image-wrapper:has(.benefits-list) + .magenta-banner {
  display: grid;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 10px clamp(16px, 2vw, 30px);
  box-sizing: border-box;
  place-items: center;
  color: var(--color-text-inverse, #ffffff);
  background: var(--color-action-upload, #d40b78);
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: var(--font-banner-strip-size, clamp(18px, 1rem + 0.45vw, 24px));
  font-weight: var(--font-banner-strip-weight, 700);
  line-height: 1.2;
  text-align: center;
}

/* Home content block following the product grid. Its legacy Bootstrap rows
   use negative gutters, so contain them inside the same centered page canvas. */
#common-home.deceti-home-page .deceti-dynamic-block:has(.justyardsigns-container) {
  box-sizing: border-box;
  position: static !important;
  left: auto !important;
  width: min(var(--content-max-width, 1600px), calc(100% - 30px)) !important;
  max-width: var(--content-max-width, 1600px) !important;
  margin: clamp(12px, 1.25vw, 20px) auto 0 !important;
  padding: 0 !important;
  overflow: visible;
  border: 0;
  background: transparent;
}

#common-home.deceti-home-page .deceti-dynamic-block:has(.justyardsigns-container) > .deceti-content-block {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}

#common-home.deceti-home-page .justyardsigns-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  overflow: visible;
  font-family: Arial, Helvetica, sans-serif !important;
}

#common-home.deceti-home-page .justyardsigns-container,
#common-home.deceti-home-page .justyardsigns-container * {
  font-family: Arial, Helvetica, sans-serif !important;
}

/* Final width guard for every possible Home renderer wrapper. */
#common-home.deceti-home-page :is(
  .deceti-block-contentblock2,
  .deceti-block-contentblock3,
  [data-deceti-block="contentblock2"],
  [data-deceti-block="contentblock3"]
):has(.justyardsigns-container) {
  position: static !important;
  left: auto !important;
  width: min(var(--content-max-width, 1600px), calc(100% - 30px)) !important;
  max-width: var(--content-max-width, 1600px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-top: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
}

/* Approved Home desktop width: keep the content block aligned with the
   visual canvas used by the surrounding product-page content. */
@media (min-width: 992px) {
  #common-home.deceti-home-page .deceti-dynamic-block:has(.justyardsigns-container),
  #common-home.deceti-home-page :is(
    .deceti-block-contentblock2,
    .deceti-block-contentblock3,
    [data-deceti-block="contentblock2"],
    [data-deceti-block="contentblock3"]
  ):has(.justyardsigns-container) {
    width: min(var(--content-max-width, 1600px), calc(100% - 330px)) !important;
  }
}

#common-home.deceti-home-page .justyardsigns-container > .row,
#common-home.deceti-home-page .justyardsigns-container > .content-block > .row {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

#common-home.deceti-home-page .justyardsigns-container [class*="elfsight-app-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden;
}

/* Home benefits variant. It remains part of the existing DECETI-0 Top Block
   entity and reuses its palette, typography and magenta promo strip. The
   body fallback supports the current home.twig markup even when it was pasted
   without the CMS Top Block wrapper. */
:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0
):has(.benefits-list),
body:has(#common-home) .image-wrapper:has(.benefits-list) {
  border-radius: 0;
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0,
  body:has(#common-home) .image-wrapper
):has(.benefits-list) :is(.image-wrapper, .image-container, .image-left, .image-right-block) {
  border-radius: 0;
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0
):has(.benefits-list) .magenta-banner,
body:has(#common-home) .image-wrapper:has(.benefits-list) + .magenta-banner {
  border-radius: 0;
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0,
  body:has(#common-home) .image-wrapper
):has(.benefits-list) .image-container {
  width: 100%;
  height: 430px;
  margin: 0;
  padding: 0 clamp(6px, 0.5vw, 10px) 0 0;
  box-sizing: border-box;
  background: var(--topblock-surface, var(--color-topblock-background, #00334d));
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0,
  body:has(#common-home) .image-wrapper
):has(.benefits-list) .image-left {
  width: 70%;
  max-width: none;
  height: 430px;
  min-height: 0;
  margin: 0;
  padding: 0;
  flex: 0 1 70%;
  object-position: center;
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0,
  body:has(#common-home) .image-wrapper
):has(.benefits-list) .image-right-block {
  display: block;
  width: 35%;
  max-width: 592px;
  height: 430px;
  min-width: 280px;
  margin: 0 0 0 -85px;
  padding: 0;
  flex: 0 1 35%;
  overflow: hidden;
  box-shadow: none;
  background: var(--topblock-content-background);
}

:is(
  .deceti-block-topblock,
  .deceti-content-entity--topblock-v0,
  body:has(#common-home) .image-wrapper
):has(.benefits-list) .message-overlay {
  display: flex;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 18px 20px;
  box-sizing: border-box;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: var(--topblock-heading);
  text-align: center;
}

.deceti-block-topblock .benefits-flag,
.deceti-content-entity--topblock-v0 .benefits-flag,
body:has(#common-home) .image-wrapper .benefits-flag {
  display: block;
  width: 78px;
  max-width: 78px;
  height: auto;
  margin: 0 0 14px;
  padding: 0;
  flex: 0 0 auto;
}

.deceti-block-topblock .benefits-list,
.deceti-content-entity--topblock-v0 .benefits-list,
body:has(#common-home) .image-wrapper .benefits-list {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0 !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border-radius: 0;
  color: var(--topblock-heading);
  background: transparent !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.16;
  text-align: center;
}

.deceti-block-topblock .benefits-list span,
.deceti-content-entity--topblock-v0 .benefits-list span,
body:has(#common-home) .image-wrapper .benefits-list span {
  display: block;
  margin: 0;
  padding: 0;
}

.deceti-block-topblock .benefits-reviews,
.deceti-content-entity--topblock-v0 .benefits-reviews,
body:has(#common-home) .image-wrapper .benefits-reviews {
  display: flex;
  width: 100%;
  margin: 24px 0 0;
  padding: 0;
  align-items: center;
  justify-content: center;
  gap: 15px;
  background: transparent !important;
}

.deceti-block-topblock .benefits-google-review,
.deceti-content-entity--topblock-v0 .benefits-google-review,
body:has(#common-home) .image-wrapper .benefits-google-review {
  display: flex;
  min-width: 110px;
  min-height: 40px;
  margin: 0;
  padding: 0;
  flex: 0 1 auto;
  align-items: center;
  justify-content: center;
}

.deceti-block-topblock .benefits-bbb-link,
.deceti-content-entity--topblock-v0 .benefits-bbb-link,
body:has(#common-home) .image-wrapper .benefits-bbb-link {
  display: inline-flex;
  margin: 0;
  padding: 8px 12px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 12px !important;
  background: var(--color-topblock-background, #00334d) !important;
  line-height: 0;
  text-decoration: none;
}

.deceti-block-topblock .deceti-bbb-image,
.deceti-content-entity--topblock-v0 .deceti-bbb-image,
body:has(#common-home) .image-wrapper .deceti-bbb-image {
  display: block;
  width: 190px;
  max-width: 190px;
  height: auto;
  margin: 0;
  padding: 0;
  object-fit: contain;
}

@media (max-width: 1300px) {
  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-container {
    height: 400px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-left {
    width: 68%;
    max-width: 68%;
    height: 400px;
    flex-basis: 68%;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-right-block {
    width: 32%;
    max-width: 32%;
    height: 400px;
    flex-basis: 32%;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .message-overlay {
    padding: 16px 18px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-flag {
    width: 68px;
    max-width: 68px;
    margin-bottom: 12px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-list {
    gap: 4px;
    font-size: 28px !important;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-reviews {
    gap: 12px;
    margin-top: 20px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .deceti-bbb-image {
    width: 170px;
    max-width: 170px;
  }
}

@media (max-width: 800px) {
  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-container {
    height: auto;
    padding-right: 0;
    flex-direction: column;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-left {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 0;
    flex: none;
    aspect-ratio: 1360 / 512;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-right-block {
    width: 100%;
    max-width: 100%;
    height: 300px;
    flex: none;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .message-overlay {
    height: 300px;
    padding: 22px 15px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-list {
    font-size: 22px !important;
  }
}

@media (max-width: 480px) {
  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-left {
    height: 220px;
    aspect-ratio: auto;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .image-right-block,
  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper):has(.benefits-list) .message-overlay {
    height: 285px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-flag {
    width: 48px;
    max-width: 48px;
    margin-bottom: 10px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-list {
    gap: 3px;
    font-size: 19px !important;
    line-height: 1.15;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .benefits-reviews {
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 17px;
  }

  :is(.deceti-block-topblock, .deceti-content-entity--topblock-v0, body:has(#common-home) .image-wrapper) .deceti-bbb-image {
    width: 120px;
    max-width: 120px;
  }
}

@media (max-width: 767.98px) {
  .deceti-block-topblock .image-wrapper,
  .deceti-content-entity--topblock-v0 .image-wrapper {
    display: block;
  }

  .deceti-block-topblock .image-left,
  .deceti-content-entity--topblock-v0 .image-left {
    min-height: 220px;
    max-height: 420px;
    width: 100%;
    flex-basis: 100%;
  }

  .deceti-block-topblock .image-container,
  .deceti-content-entity--topblock-v0 .image-container {
    flex-direction: column;
  }

  .deceti-block-topblock .image-right-block,
  .deceti-content-entity--topblock-v0 .image-right-block {
    width: 100%;
    min-width: 0;
    max-width: none;
    margin-left: 0;
  }
}

/* Final Home Top geometry guard: keep the dark remainder visible after all
   legacy and responsive Top Block declarations on desktop and tablet. */
@media (min-width: 801px) {
  #common-home.deceti-home-page .image-wrapper:has(.benefits-list) .image-left {
    flex-grow: 0 !important;
  }

  #common-home.deceti-home-page .image-wrapper:has(.benefits-list) .image-container {
    background: var(--color-topblock-background, #00334d) !important;
  }
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) :is(p, li),
.deceti-content-entity__text {
  color: var(--content-text-color);
  font-size: var(--content-body-size) !important;
  line-height: 1.6;
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) p {
  margin: 0 0 0.8em;
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) p:last-child {
  margin-bottom: 0;
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) a {
  color: var(--content-link-color);
  font-weight: 600;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.14em;
}

/* Grid/list entities. Bootstrap columns remain supported. */
:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .row,
.deceti-content-entity__grid {
  row-gap: var(--content-gap);
  margin-top: 0;
  margin-bottom: var(--content-gap);
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) ul,
.deceti-content-entity__list {
  margin: 0;
  padding-left: 1.2em;
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) li + li {
  margin-top: 0.45em;
}

.deceti-content-entity__list--check,
:is(.deceti-block-contentblock2, .deceti-block-contentblock3) ul[style*="list-style-type: none"] {
  padding-left: 0;
  list-style: none;
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .note,
.deceti-content-entity__note {
  color: var(--content-muted-color);
  font-size: 0.9em !important;
  font-style: italic;
}

/* Feature entity: icon/image + heading + supporting copy. */
:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .feature-box,
.deceti-content-entity__feature {
  height: 100%;
  padding: var(--content-padding);
  border: 1px solid var(--content-card-border);
  border-radius: var(--content-radius);
  text-align: center;
  background: var(--content-card-background);
  box-shadow: var(--content-card-shadow);
  font-size: var(--content-body-size);
}

:is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) :is(.feature-box, .deceti-content-entity__feature) img {
  display: block;
  max-width: min(100%, 200px);
  height: auto;
  max-height: 115px;
  margin: 0 auto 14px;
  object-fit: contain;
}

/* Contact and full-width callout entity. */
.deceti-content-entity__contact,
:is(.deceti-block-contentblock2, .deceti-block-contentblock3) .row > .col > .content-block:last-child {
  text-align: center;
  background: color-mix(in srgb, var(--content-accent-color) 9%, var(--content-card-background));
}

/* Third-party widgets stay isolated from the card typography contract. */
.deceti-content-entity__embed,
:is(.deceti-block-contentblock2, .deceti-block-contentblock3) [class*="elfsight-app-"] {
  width: 100%;
  margin: var(--content-gap) 0;
  overflow: clip;
}

@media (max-width: 767.98px) {
  :is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) {
    --content-radius: 12px;
    --content-gap: 12px;
    --content-padding: 16px;
    --content-body-size: 16px;
    --content-heading-size: 22px;
  }

  :is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .content-block,
  .deceti-content-entity__card,
  :is(.deceti-block-contentblock2, .deceti-block-contentblock3, .deceti-content-entity) .feature-box,
  .deceti-content-entity__feature {
    box-shadow: none;
  }
}



/* source: catalog/view/stylesheet/deceti/deceti-0/product-entities.css */
/*
 * DECETI-0 product Twig entity registry.
 * Mirrors catalog/view/template/common/deceti/product/*.twig.
 * Canonical entity classes allow a future CMS renderer to select Twig and CSS
 * independently. Existing Twig root classes are retained as compatibility aliases.
 */

/* Shared contract for every rendered product entity. */
:is(
  [class*="deceti-product-entity--"],
  .deceti-buttons-scope,
  .deceti-page-imagelist,
  .deceti-page-pricingcalculator-frame,
  .deceti-page-pricingcalculator-js,
  .deceti-page-pricingcalculator-h,
  .deceti-page-pricingcalculator-v,
  .deceti-page-pricingcalculator-options,
  .deceti-page-pricingcalculator-options-stickers,
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingtable,
  .deceti-productblock,
  .deceti-page-requestquote,
  .deceti-page-uploadartwork,
  .deceti-page-product-customproduct-options-stickers
) {
  --product-entity-surface: var(--object-panel-background, var(--deceti-color-surface, #fff));
  --product-entity-border: var(--object-panel-border, var(--deceti-color-border, #d5dce5));
  --product-entity-text: var(--object-body-text, var(--deceti-color-text, #172033));
  --product-entity-heading: var(--object-heading-text, var(--deceti-color-text-black, #07152d));
  --product-entity-accent: var(--deceti-color-primary, #02b5ff);
  --product-entity-radius: var(--object-panel-radius, 16px);
  --product-entity-gap: clamp(10px, 1.2vw, 20px);
  min-width: 0;
  box-sizing: border-box;
  color: var(--product-entity-text);
}

/* deceti_cp_b_buttons-v0.twig */
.deceti-product-entity--buttons-v0,
.deceti-buttons-scope {
  width: 100%;
}

.deceti-product-entity--buttons-v0 .deceti-btns,
.deceti-buttons-scope .deceti-btns {
  display: flex;
  flex-wrap: wrap;
  gap: var(--product-entity-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

/* deceti_cp_b_imagelist-v0.twig */
.deceti-product-entity--imagelist-v0,
.deceti-page-imagelist {
  width: 100%;
}

.deceti-product-entity--imagelist-v0 .card,
.deceti-page-imagelist .card {
  height: 100%;
  overflow: hidden;
  border-color: var(--product-entity-border);
  border-radius: var(--product-entity-radius);
  background: var(--product-entity-surface);
}

/* Calculator layout entities. Geometry remains owned by calculator components. */
.deceti-product-entity--pricingcalculator-frame-v0,
.deceti-page-pricingcalculator-frame,
.deceti-product-entity--pricingcalculator-h-v0,
.deceti-page-pricingcalculator-js,
.deceti-product-entity--pricingcalculator-h-v1,
.deceti-page-pricingcalculator-h,
.deceti-product-entity--pricingcalculator-v-v0,
.deceti-product-entity--pricingcalculator-v-v1,
.deceti-page-pricingcalculator-v,
.deceti-product-entity--pricingcalculator-options-v0,
.deceti-page-pricingcalculator-options,
.deceti-product-entity--pricingcalculator-options-stickers-v0,
.deceti-page-pricingcalculator-options-stickers,
.deceti-product-entity--pricingcalculator-stickers-v0,
.deceti-page-pricingcalculator-stickers,
.deceti-product-entity--uploadartwork-v0,
.deceti-page-uploadartwork {
  width: 100%;
  min-width: 0;
}

/* deceti_cp_b_pricingtable-v0.twig */
.deceti-product-entity--pricingtable-v0,
.deceti-page-pricingtable {
  width: 100%;
  overflow-x: auto;
  border-radius: var(--product-entity-radius);
  color: var(--product-entity-text);
  background: var(--product-entity-surface);
}

.deceti-product-entity--pricingtable-v0 .pricing-table,
.deceti-page-pricingtable .pricing-table {
  width: 100%;
  border-collapse: collapse;
}

/* deceti_cp_b_printingcolors-v0.twig */
.deceti-product-entity--printingcolors-v0,
.color-pallete {
  width: 100%;
}

.deceti-product-entity--printingcolors-v0 .color-block,
.color-pallete .color-block {
  min-width: 0;
  border-color: var(--product-entity-border);
  color: var(--product-entity-text);
  background: var(--product-entity-surface);
}

/* deceti_cp_b_productblock-v0.twig */
.deceti-product-entity--productblock-v0,
.deceti-productblock {
  /* The Twig root also carries Bootstrap's .row class. Neutralize its
     negative gutters and keep this block on the same canvas as the menu. */
  width: min(1300px, calc(100% - 30px));
  max-width: 1300px;
  min-width: 0;
  margin: clamp(22px, 2vw, 32px) auto 0 !important;
  padding: 0 15px;
  box-sizing: border-box;
  --bs-gutter-x: 0;
}

/* Home system blocks use a centered page canvas. Product Block remains
   responsive inside that canvas instead of touching both viewport edges. */
.deceti-home-page > .deceti-block-productblock {
  box-sizing: border-box;
  width: min(1500px, calc(100% - 30px));
  max-width: 1500px;
  margin-top: clamp(12px, 1.25vw, 20px) !important;
  margin-right: auto;
  margin-left: auto;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Home blocks are rendered as <section>; neutralize the legacy global
   section padding and keep the product grid close to the hero. */
#common-home.deceti-home-page > section.deceti-block-productblock {
  margin-top: clamp(12px, 1.25vw, 20px) !important;
  padding: 0 !important;
  overflow: visible !important;
}

#common-home.deceti-home-page > section.deceti-block-productblock .deceti-productblock {
  width: 100%;
  max-width: 1500px;
  margin-top: 0 !important;
  padding-top: 0;
}

#common-home.deceti-home-page .deceti-block-productblock .productlist {
  grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 280px));
  gap: clamp(18px, 1.5vw, 24px);
  padding: 10px !important;
}

.deceti-product-entity--productblock-v0 .productlist,
.deceti-productblock .productlist {
  display: grid;
  /* Fixed normal-width tracks keep a short product list compact and allow
     justify-content to center the group as a whole. */
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 220px));
  justify-content: center;
  gap: var(--product-entity-gap);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  list-style: none;
}

.deceti-product-entity--productblock-v0 .productlist > li,
.deceti-productblock .productlist > li {
  min-width: 0;
  max-width: 100%;
}

/* Compact, proportional Home product cards. */
#common-home.deceti-home-page .deceti-block-productblock .productlist > li {
  height: auto;
  min-height: 0;
  padding: 14px;
}

#common-home.deceti-home-page .deceti-block-productblock .productlist > li:hover,
#common-home.deceti-home-page .deceti-block-productblock .productlist > li:has(> a:focus-visible) {
  position: relative;
  z-index: 2;
  transform: scale(1.05);
  outline: 0;
  box-shadow: inset 0 0 0 4px var(--deceti-color-accent-strong, #02b5ff);
}

#common-home.deceti-home-page .deceti-block-productblock .productlist > li > a {
  display: grid;
  grid-template-rows: minmax(3.15em, auto) 190px;
  gap: 16px;
  height: auto;
  align-items: center;
  font-family: Arial, Helvetica, sans-serif !important;
}

#common-home.deceti-home-page .deceti-block-productblock .productlist h2 {
  align-self: start;
  margin: 0;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(22px, 1.55vw, 28px) !important;
  line-height: 1.12;
}

#common-home.deceti-home-page .deceti-block-productblock .productlist picture {
  display: grid;
  width: 100%;
  height: 190px;
  place-items: center;
}

#common-home.deceti-home-page .deceti-block-productblock .productlist img {
  display: block;
  width: 100%;
  height: 190px;
  margin: 0;
  object-fit: contain;
}

@media (max-width: 767.98px) {
  .deceti-product-entity--productblock-v0,
  .deceti-productblock {
    width: calc(100% - 20px);
    margin-top: 18px !important;
    padding-right: 0;
    padding-left: 0;
  }

  #common-home.deceti-home-page .deceti-block-productblock .productlist > li > a {
    grid-template-rows: auto minmax(140px, 48vw);
  }

  #common-home.deceti-home-page .deceti-block-productblock .productlist picture,
  #common-home.deceti-home-page .deceti-block-productblock .productlist img {
    height: min(48vw, 220px);
  }
}

/* deceti_cp_b_requestquote-v0.twig */
.deceti-product-entity--requestquote-v0,
.deceti-page-requestquote {
  width: 100%;
  color: var(--product-entity-text);
}

.deceti-product-entity--requestquote-v0 .deceti-card,
.deceti-page-requestquote .deceti-card {
  height: 100%;
  border: 1px solid var(--product-entity-border);
  border-radius: var(--product-entity-radius);
  background: var(--product-entity-surface);
}

/* deceti_cp_b_templates-v0.twig and deceti_cp_b_templates-v1.twig */
.deceti-product-entity--templates-v0,
.deceti-product-entity--templates-v1,
.c-container {
  width: 100%;
  min-width: 0;
  color: var(--product-entity-text);
}

/* deceti_customproduct_options_stickers-v0.twig */
.deceti-product-entity--customproduct-options-stickers-v0,
.deceti-page-product-customproduct-options-stickers {
  width: 100%;
  min-width: 0;
  color: var(--product-entity-text);
}

/* deceti_customproduct_content-v0.twig delegates to content-entities.css. */
.deceti-product-entity--customproduct-content-v0,
.deceti-content-block {
  min-width: 0;
}

/*
 * Reserved empty entities. Their Twig files are intentionally untouched.
 * These selectors are registration points for future non-empty versions.
 */
.deceti-product-entity--dailyspecials-v0 {}
.deceti-product-entity--frameoptions-v0 {}
.deceti-product-entity--promoitems-v0 {}
.deceti-product-entity--shapes-v0 {}
.deceti-product-entity--shippingcalculator-v0 {}
.deceti-product-entity--stockproducts-v0 {}
.deceti-product-entity--testimonials-v0 {}

@media (max-width: 767.98px) {
  :is(
    [class*="deceti-product-entity--"],
    .deceti-buttons-scope,
    .deceti-page-imagelist,
    .deceti-page-pricingcalculator-frame,
    .deceti-page-pricingcalculator-js,
    .deceti-page-pricingcalculator-h,
    .deceti-page-pricingcalculator-v,
    .deceti-page-pricingcalculator-options,
    .deceti-page-pricingcalculator-options-stickers,
    .deceti-page-pricingcalculator-stickers,
    .deceti-page-pricingtable,
    .deceti-productblock,
    .deceti-page-requestquote,
    .deceti-page-uploadartwork,
    .deceti-page-product-customproduct-options-stickers
  ) {
    --product-entity-radius: 12px;
    --product-entity-gap: 10px;
  }
}



/* source: catalog/view/stylesheet/deceti/deceti-0/page-entities.css */
/*
 * DECETI-0 page Twig entity registry.
 * Mirrors catalog/view/template/common/deceti/*.twig (product/ has its own registry).
 *
 * Static layout lives here. Controller values are injected only as scoped CSS
 * custom properties by the Twig server-style block.
 */

:is(
  [class*="deceti-page-entity--"],
  .deceti-page-customproduct-artworkapproval,
  .deceti-page-artworkapproval-confirmation,
  .deceti-page-customproduct-edittemplate,
  .deceti-page-customproduct-newdesign,
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers,
  .deceti-page-customproduct-pricing-debug,
  .deceti-page-customproduct-uploadartwork,
  .deceti-regular-page
) {
  --page-entity-surface: var(--object-panel-background, var(--deceti-color-surface, #fff));
  --page-entity-surface-muted: var(--object-page-background, var(--deceti-color-panel, #eef1f4));
  --page-entity-border: var(--object-panel-border, var(--deceti-color-border, #d5dce5));
  --page-entity-text: var(--object-body-text, var(--deceti-color-text, #172033));
  --page-entity-heading: var(--object-heading-text, var(--deceti-color-text-black, #07152d));
  --page-entity-accent: var(--deceti-color-primary, #02b5ff);
  --page-entity-radius: var(--object-panel-radius, 16px);
  --page-entity-gap: clamp(12px, 1.5vw, 24px);
  --page-entity-padding: clamp(16px, 2vw, 30px);
  min-width: 0;
  box-sizing: border-box;
  color: var(--page-entity-text);
}

/* Thin calculator-style outline belongs to each functional card, not to the
   common page wrapper. */
.deceti-page-customproduct-options .product-options-cart,
.deceti-page-customproduct-uploadartwork :is(.product-cart, .product-options-cart),
.deceti-customproduct-design-form :is(.product-image, .product-options),
.deceti-page-customproduct-artworkapproval :is(
  .product-cart,
  .product-options-cart,
  .attention,
  .deceti-approval-summary
),
.deceti-page-artworkapproval-confirmation .deceti-confirmation-alert {
  border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
  border-radius: 15px;
}

/* artworkapproval-v0 */
.deceti-page-entity--artworkapproval-v0,
.deceti-page-customproduct-artworkapproval {
  width: 100%;
}

.deceti-page-customproduct-artworkapproval :is(.product-cart, .attention),
.deceti-page-entity--artworkapproval-v0 :is(.product-cart, .attention) {
  border-color: var(--page-entity-border);
  border-radius: var(--page-entity-radius);
  background: var(--page-entity-surface);
}

/* artworkapprovalconfirmation-v0 */
.deceti-page-entity--artworkapproval-confirmation-v0,
.deceti-page-artworkapproval-confirmation {
  width: 100%;
}

.deceti-page-artworkapproval-confirmation .deceti-confirmation-alert,
.deceti-page-entity--artworkapproval-confirmation-v0 .deceti-confirmation-alert {
  border-radius: var(--deceti-confirmation-alert-radius, var(--page-entity-radius));
}

/* Artwork approval states use DECETI palette tokens, never Bootstrap colors. */
:is(
  .deceti-page-customproduct-artworkapproval,
  .deceti-page-artworkapproval-confirmation,
  .deceti-page-entity--artworkapproval-v0,
  .deceti-page-entity--artworkapproval-confirmation-v0
) {
  --deceti-approval-success: var(--deceti-color-action-template, var(--deceti-color-success, #2f8000));
  --deceti-approval-success-hover: var(--deceti-color-action-template-hover, #45c603);
  --deceti-approval-success-soft: color-mix(in srgb, var(--deceti-approval-success) 14%, #ffffff);
  --deceti-approval-danger: var(--deceti-color-danger, #dc3545);
  --deceti-approval-danger-soft: color-mix(in srgb, var(--deceti-approval-danger) 12%, #ffffff);
  --deceti-approval-pending: var(--calc-accent, var(--object-total-border, #7fe8ff));
  --deceti-approval-pending-soft: var(--calc-accent-soft, var(--object-total-background, #b7eff8));
}

.deceti-page-customproduct-artworkapproval .status-approved {
  border-color: var(--deceti-approval-success) !important;
  color: var(--deceti-approval-success) !important;
  background: var(--deceti-approval-success-soft) !important;
}

.deceti-page-customproduct-artworkapproval .status-rejected {
  border-color: var(--deceti-approval-danger) !important;
  color: var(--deceti-approval-danger) !important;
  background: var(--deceti-approval-danger-soft) !important;
}

.deceti-page-customproduct-artworkapproval .status-pending {
  border-color: var(--deceti-approval-pending) !important;
  color: var(--deceti-color-primary-dark, #00334d) !important;
  background: var(--deceti-approval-pending-soft) !important;
}

.deceti-page-customproduct-artworkapproval .btn-success.deceti-approval-action {
  border-color: var(--deceti-approval-success) !important;
  color: #ffffff !important;
  background: var(--deceti-approval-success) !important;
}

.deceti-page-customproduct-artworkapproval .btn-success.deceti-approval-action:hover,
.deceti-page-customproduct-artworkapproval .btn-success.deceti-approval-action:focus {
  border-color: var(--deceti-approval-success-hover) !important;
  background: var(--deceti-approval-success-hover) !important;
}

.deceti-page-customproduct-artworkapproval .btn-danger.deceti-approval-action {
  border-color: var(--deceti-approval-danger) !important;
  color: #ffffff !important;
  background: var(--deceti-approval-danger) !important;
}

.deceti-page-artworkapproval-confirmation .alert-success.deceti-confirmation-alert {
  border-color: var(--deceti-approval-success) !important;
  color: var(--deceti-approval-success) !important;
  background: var(--deceti-approval-success-soft) !important;
}

.deceti-page-artworkapproval-confirmation .alert-info.deceti-confirmation-alert {
  border-color: var(--deceti-approval-pending) !important;
  color: var(--deceti-color-primary-dark, #00334d) !important;
  background: var(--deceti-approval-pending-soft) !important;
}

/* edittemplate-v0 and newdesign-v0 share the design-form entity. */
.deceti-page-entity--edittemplate-v0,
.deceti-page-entity--newdesign-v0,
.deceti-page-customproduct-edittemplate,
.deceti-page-customproduct-newdesign {
  width: 100%;
  color: var(--page-entity-text);
}

.deceti-customproduct-design-form .deceti-newdesign-field-block {
  min-width: 0;
  margin-bottom: var(--page-entity-gap);
}

/* options-v0 and options-stickers-v0 */
.deceti-page-entity--customproduct-options-v0,
.deceti-page-entity--customproduct-options-stickers-v0,
.deceti-page-customproduct-options,
.deceti-page-customproduct-options-stickers {
  width: 100%;
  min-width: 0;
}

.deceti-customproduct-options-page .deceti-options-description {
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.deceti-customproduct-options-page .deceti-options-cart {
  min-width: 0;
  padding: clamp(12px, 1.4vw, 20px);
  border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
  border-radius: 15px;
  color: var(--page-entity-text);
  background: var(--page-entity-surface) !important;
  background-image: none !important;
  box-sizing: border-box;
}

/* Children belong to the single left product card and must not receive a
   second outline of their own. */
.deceti-page-customproduct-options .deceti-options-cart > * {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.deceti-page-customproduct-options .deceti-options-cart > * + * {
  margin-top: var(--page-entity-gap) !important;
}

.deceti-page-customproduct-options .deceti-options-cart .product-image-span > #image_1 {
  display: block;
  width: 100%;
}

/* pricingcalculator debug-v0 */
.deceti-page-entity--customproduct-pricing-debug-v0,
.deceti-page-customproduct-pricing-debug {
  width: 100%;
}

.deceti-page-customproduct-pricing-debug .deceti-debug-pre {
  overflow: auto;
  padding: var(--deceti-debug-pre-padding, 16px);
  border: 1px solid var(--page-entity-border);
  border-radius: var(--page-entity-radius);
  background: var(--page-entity-surface-muted);
  font-size: var(--deceti-debug-pre-font-size, 14px);
  white-space: var(--deceti-debug-pre-white-space, pre-wrap);
}

/* Confirmation entities. */
:is(
  .deceti-page-requestquote-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact,
  .deceti-page-upload-confirmation
) #product_desc {
  display: grid;
  align-content: center;
  width: 100%;
  min-height: var(--deceti-confirmation-min-height, 200px);
  height: auto !important;
  padding: var(--page-entity-padding);
  border: 1px solid var(--page-entity-border);
  border-radius: var(--page-entity-radius);
  text-align: center;
  background: var(--page-entity-surface);
}

/* customproduct_templates-v0 */
.deceti-page-entity--customproduct-templates-v0,
.deceti-page-customproduct-templates {
  width: 100%;
  min-width: 0;
}

.deceti-page-customproduct-templates .deceti-templates-search {
  display: flex;
  gap: 8px;
  align-items: stretch;
  width: 100%;
}

/* Standard OpenCart information routes (About Us, Privacy Policy, Terms,
   delivery pages, and other entries managed as Information Pages). */
#information-information,
#information-information :is(
  h1, h2, h3, h4, h5, h6,
  p, li, a, span, strong, em,
  blockquote, table, th, td, label
) {
  font-family: Arial, Helvetica, sans-serif !important;
}

/* customproduct_uploadartwork-v0 */
.deceti-page-entity--customproduct-uploadartwork-v0,
.deceti-page-customproduct-uploadartwork {
  width: 100%;
  min-width: 0;
}

.deceti-page-customproduct-uploadartwork .deceti-upload-description {
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.deceti-page-customproduct-uploadartwork .deceti-upload-cart {
  border-color: var(--page-entity-border);
  border-radius: var(--page-entity-radius);
  background: var(--page-entity-surface);
  /* The iframe owns its light-blue inner card. Removing only the legacy top
     padding aligns that card with the calculator card in the right column. */
  padding-top: 0 !important;
}

.deceti-page-customproduct-uploadartwork iframe {
  display: block;
  max-width: 100%;
  margin: 0;
  border: var(--deceti-upload-iframe-border, 0);
}

/* home-v0 and showsubproducts-v0 */
.deceti-page-showsubproducts {
  padding-top: clamp(22px, 2vw, 32px);
}

:is(.deceti-page-home, .deceti-page-showsubproducts) .productlist {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: var(--page-entity-gap);
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

:is(.deceti-page-home, .deceti-page-showsubproducts) .productlist > li {
  min-width: 0;
  border: 1px solid var(--page-entity-border);
  border-radius: var(--page-entity-radius);
  background: var(--page-entity-surface);
}

/* regular_page-v0 */
.deceti-page-entity--regular-page-v0,
.deceti-regular-page {
  width: 100%;
  color: var(--page-entity-text);
}

/* Dynamic block renderers: customproduct-v0 and customproducts-v0. */
.deceti-page-entity--customproduct-v0,
.deceti-page-entity--customproducts-v0,
[class^="deceti-block-"],
[class*=" deceti-block-"] {
  min-width: 0;
}

/* Empty version placeholder: deceti_home_default-v0.twig. */
.deceti-page-entity--home-default-v0 {}

@media (max-width: 767.98px) {
  .deceti-page-showsubproducts {
    padding-top: 18px;
  }

  :is([class*="deceti-page-entity--"], .deceti-regular-page) {
    --page-entity-radius: 12px;
    --page-entity-gap: 12px;
    --page-entity-padding: 16px;
  }

  .deceti-page-customproduct-templates .deceti-templates-search {
    flex-wrap: wrap;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/index.css */
/* A theme palette-contract.css must load before this shared system. */

/* source: catalog/view/stylesheet/deceti/theme-system/foundation/semantics.css */
/* Shared DECETI semantic color contract. No concrete theme colors. */
:root {
  /* Surfaces */
  --theme-surface-page: rgb(var(--theme-palette-page));
  --theme-surface-default: rgb(var(--theme-palette-surface));
  --theme-surface-alt: rgb(var(--theme-palette-surface-alt));
  --theme-surface-elevated: rgb(var(--theme-palette-surface-elevated));

  /* Text */
  --theme-text-primary: rgb(var(--theme-palette-text));
  --theme-text-muted: rgb(var(--theme-palette-text-muted));
  --theme-text-inverse: rgb(var(--theme-palette-text-inverse));
  --theme-text-disabled: rgb(var(--theme-palette-text-disabled));

  /* Structure */
  --theme-border-default: rgb(var(--theme-palette-border));
  --theme-border-soft: rgb(var(--theme-palette-border) / .55);
  --theme-border-strong: rgb(var(--theme-palette-border-strong));
  --theme-border-focus: rgb(var(--theme-palette-border-focus));

  /* Brand */
  --theme-brand-primary: rgb(var(--theme-palette-brand-primary));
  --theme-brand-primary-hover: rgb(var(--theme-palette-brand-primary-hover));
  --theme-brand-dark: rgb(var(--theme-palette-brand-dark));
  --theme-brand-accent: rgb(var(--theme-palette-brand-accent));
  --theme-brand-accent-text: rgb(var(--theme-palette-brand-accent-text));
  --theme-brand-soft-05: rgb(var(--theme-palette-brand-primary) / .05);
  --theme-brand-soft-10: rgb(var(--theme-palette-brand-primary) / .10);
  --theme-brand-soft-15: rgb(var(--theme-palette-brand-primary) / .15);
  --theme-brand-soft-25: rgb(var(--theme-palette-brand-primary) / .25);
  --theme-brand-soft-50: rgb(var(--theme-palette-brand-primary) / .50);

  /* Actions */
  --theme-action-primary: rgb(var(--theme-palette-action-primary));
  --theme-action-primary-hover: rgb(var(--theme-palette-action-primary-hover));
  --theme-action-design: rgb(var(--theme-palette-action-design));
  --theme-action-design-hover: rgb(var(--theme-palette-action-design-hover));
  --theme-action-upload: rgb(var(--theme-palette-action-upload));
  --theme-action-upload-hover: rgb(var(--theme-palette-action-upload-hover));
  --theme-action-template: rgb(var(--theme-palette-action-template));
  --theme-action-template-hover: rgb(var(--theme-palette-action-template-hover));
  --theme-action-neutral: rgb(var(--theme-palette-action-neutral));
  --theme-action-neutral-hover: rgb(var(--theme-palette-action-neutral-hover));
  --theme-action-danger: rgb(var(--theme-palette-action-danger));
  --theme-action-danger-hover: rgb(var(--theme-palette-action-danger-hover));

  /* Feedback */
  --theme-feedback-info: rgb(var(--theme-palette-info));
  --theme-feedback-info-soft: rgb(var(--theme-palette-info) / .10);
  --theme-feedback-success: rgb(var(--theme-palette-success));
  --theme-feedback-success-soft: rgb(var(--theme-palette-success) / .10);
  --theme-feedback-warning: rgb(var(--theme-palette-warning));
  --theme-feedback-warning-soft: rgb(var(--theme-palette-warning) / .12);
  --theme-feedback-danger: rgb(var(--theme-palette-danger));
  --theme-feedback-danger-soft: rgb(var(--theme-palette-danger) / .10);

  /* Commerce total card */
  --theme-commerce-total-background: rgb(var(--theme-palette-total-background));
  --theme-commerce-total-text: rgb(var(--theme-palette-total-text));
  --theme-commerce-total-border: rgb(var(--theme-palette-total-border));
}



/* source: catalog/view/stylesheet/deceti/theme-system/foundation/object-contract.css */
/* Shared DECETI object roles. Aliases only; no selectors and no raw colors. */
:root {
  /* Chrome */
  --object-page-background: var(--theme-surface-page);
  --object-header-background: var(--theme-surface-default);
  --object-header-text: var(--theme-text-primary);
  --object-header-muted-text: var(--theme-text-muted);
  --object-footer-background: var(--theme-brand-dark);
  --object-footer-text: var(--theme-text-inverse);

  /* Navigation */
  --object-navigation-background: var(--theme-brand-dark);
  --object-navigation-text: var(--theme-text-inverse);
  --object-navigation-hover-background: var(--theme-brand-primary);
  --object-navigation-hover-text: var(--theme-text-inverse);
  --object-submenu-background: var(--theme-surface-elevated);
  --object-submenu-text: var(--theme-text-primary);
  --object-submenu-hover-background: var(--theme-brand-soft-10);
  --object-submenu-hover-text: var(--theme-brand-primary);

  /* Surfaces */
  --object-panel-background: var(--theme-surface-default);
  --object-panel-alt-background: var(--theme-surface-alt);
  --object-panel-border: var(--theme-border-default);
  --object-preview-background: rgb(var(--theme-palette-preview, 224 228 232));
  --object-elevated-background: var(--theme-surface-elevated);
  --object-elevated-border: var(--theme-border-soft);

  /* Typography */
  --object-heading-text: var(--theme-text-primary);
  --object-body-text: var(--theme-text-primary);
  --object-muted-text: var(--theme-text-muted);
  --object-inverse-text: var(--theme-text-inverse);
  --object-link-text: var(--theme-brand-primary);
  --object-link-hover-text: var(--theme-brand-primary-hover);

  /* Controls */
  --object-control-background: var(--theme-surface-default);
  --object-control-text: var(--theme-text-primary);
  --object-control-border: var(--theme-border-default);
  --object-control-hover-border: var(--theme-border-strong);
  --object-control-focus-border: var(--theme-border-focus);
  --object-control-focus-ring: var(--theme-brand-soft-15);
  --object-control-disabled-background: var(--theme-surface-alt);
  --object-control-disabled-text: var(--theme-text-disabled);

  /* Selections */
  --object-selection-background: var(--theme-surface-default);
  --object-selection-text: var(--theme-text-primary);
  --object-selection-border: var(--theme-border-default);
  --object-selection-hover-background: var(--theme-brand-soft-05);
  --object-selection-hover-border: var(--theme-brand-soft-25);
  --object-selection-active-background: var(--theme-brand-soft-25);
  --object-selection-active-border: var(--theme-brand-primary);
  --object-selection-active-text: var(--theme-text-primary);

  /* Calculator and calculated options */
  --object-calculator-background: var(--theme-surface-default);
  --object-calculator-border: var(--theme-border-default);
  --object-calculator-title-background: var(--theme-brand-primary);
  --object-calculator-title-text: var(--theme-text-inverse);
  --object-calculated-option-background: var(--theme-brand-soft-10);
  --object-calculated-option-text: var(--theme-text-primary);
  --object-calculated-option-border: var(--theme-border-default);

  /* Commerce */
  --object-price-background: var(--theme-surface-default);
  --object-price-text: var(--theme-text-primary);
  --object-total-background: var(--theme-commerce-total-background);
  --object-total-heading-text: var(--theme-commerce-total-text);
  --object-total-value-text: var(--theme-commerce-total-text);
  --object-total-text: var(--theme-commerce-total-text);
  --object-total-border: var(--theme-commerce-total-border);
  --object-shipping-background: var(--theme-surface-default);
  --object-shipping-text: var(--theme-brand-primary);
  --object-shipping-border: var(--theme-brand-primary);
  --object-savings-background: var(--theme-surface-default);
  --object-savings-text: var(--theme-text-primary);
  --object-savings-value-text: var(--theme-brand-primary);
  --object-savings-border: var(--theme-brand-soft-25);

  /* Actions */
  --object-action-primary-background: var(--theme-action-primary);
  --object-action-primary-hover-background: var(--theme-action-primary-hover);
  --object-action-primary-text: var(--theme-text-inverse);
  --object-action-design-background: var(--theme-action-design);
  --object-action-design-hover-background: var(--theme-action-design-hover);
  --object-action-design-text: var(--theme-text-inverse);
  --object-action-upload-background: var(--theme-action-upload);
  --object-action-upload-hover-background: var(--theme-action-upload-hover);
  --object-action-upload-text: var(--theme-text-inverse);
  --object-action-template-background: var(--theme-action-template);
  --object-action-template-hover-background: var(--theme-action-template-hover);
  --object-action-template-text: var(--theme-text-inverse);
  --object-action-neutral-background: var(--theme-action-neutral);
  --object-action-neutral-hover-background: var(--theme-action-neutral-hover);
  --object-action-neutral-text: var(--theme-text-inverse);
  --object-action-danger-background: var(--theme-action-danger);
  --object-action-danger-hover-background: var(--theme-action-danger-hover);
  --object-action-danger-text: var(--theme-text-inverse);

  /* Feedback */
  --object-info-background: var(--theme-feedback-info-soft);
  --object-info-text: var(--theme-feedback-info);
  --object-info-border: var(--theme-feedback-info);
  --object-success-background: var(--theme-feedback-success-soft);
  --object-success-text: var(--theme-feedback-success);
  --object-success-border: var(--theme-feedback-success);
  --object-warning-background: var(--theme-feedback-warning-soft);
  --object-warning-text: var(--theme-text-primary);
  --object-warning-border: var(--theme-feedback-warning);
  --object-danger-background: var(--theme-feedback-danger-soft);
  --object-danger-text: var(--theme-feedback-danger);
  --object-danger-border: var(--theme-feedback-danger);
}



/* source: catalog/view/stylesheet/deceti/theme-system/foundation/metrics.css */
/* Shared DECETI geometry contract. Themes may override values, not selectors. */
:root {
  /* Total card appearance; width and grid placement belong to page layout. */
  --object-total-border-width: 2px;
  --object-total-radius: 14px;
  --object-total-padding-block: 12px;
  --object-total-padding-inline: 16px;
  --object-total-min-height: 112px;
  --object-price-heading-font-size: 18px;
  --object-price-heading-font-weight: 650;
  --object-price-value-font-size: 28px;
  --object-price-value-font-weight: 500;
  --object-price-help-font-size: 12px;

  --object-preview-frame-gap: 20px;
  --object-preview-outer-border-width: 1px;
  --object-preview-inner-border-width: 3px;
  --theme-site-max-width: 1600px;
  --theme-content-max-width: 1420px;
  --theme-reading-max-width: 760px;
  --theme-page-gutter: 20px;
  --theme-page-gutter-mobile: 12px;

  --theme-space-1: 4px;
  --theme-space-2: 8px;
  --theme-space-3: 12px;
  --theme-space-4: 16px;
  --theme-space-5: 20px;
  --theme-space-6: 24px;
  --theme-space-8: 32px;
  --theme-space-10: 40px;
  --theme-space-12: 48px;

  --theme-radius-small: 8px;
  --theme-radius-control: 14px;
  --theme-radius-card: 15px;
  --theme-radius-panel: 20px;
  --theme-radius-round: 999px;

  --theme-control-height: 48px;
  --theme-control-height-large: 58px;
  --theme-control-font-size: 20px;
  --theme-action-height: 56px;

  --theme-breakpoint-mobile: 575px;
  --theme-breakpoint-tablet: 767px;
  --theme-breakpoint-navigation: 991px;
  --theme-breakpoint-desktop: 1199px;
}



/* source: catalog/view/stylesheet/deceti/theme-system/foundation/compatibility.css */
/* Temporary bridge from legacy DECETI variables to the shared contract. */
:root {
  --color-page: var(--theme-surface-page);
  --color-surface: var(--theme-surface-default);
  --color-surface-alt: var(--theme-surface-alt);
  --color-text: var(--theme-text-primary);
  --color-text-muted: var(--theme-text-muted);
  --color-text-inverse: var(--theme-text-inverse);
  --color-border: var(--theme-border-default);
  --color-border-soft: var(--theme-border-soft);
  --color-border-strong: var(--theme-border-strong);
  --color-primary: var(--theme-brand-primary);
  --color-primary-05: var(--theme-brand-soft-05);
  --color-primary-10: var(--theme-brand-soft-10);
  --color-primary-15: var(--theme-brand-soft-15);
  --color-primary-25: var(--theme-brand-soft-25);
  --color-primary-50: var(--theme-brand-soft-50);
  --color-primary-dark: var(--theme-brand-dark);
  --color-accent: var(--theme-brand-accent);
  --color-accent-10: rgb(var(--theme-palette-brand-accent) / .10);
  --color-accent-20: rgb(var(--theme-palette-brand-accent) / .20);
  --color-accent-text: var(--theme-brand-accent-text);
  --color-button-primary: var(--theme-action-primary);
  --color-button-primary-hover: var(--theme-action-primary-hover);
  --color-button-design: var(--theme-action-design);
  --color-button-design-hover: var(--theme-action-design-hover);
  --color-button-upload: var(--theme-action-upload);
  --color-button-upload-hover: var(--theme-action-upload-hover);
  --color-button-template: var(--theme-action-template);
  --color-button-template-hover: var(--theme-action-template-hover);
  --color-button-neutral: var(--theme-action-neutral);
  --color-button-neutral-hover: var(--theme-action-neutral-hover);
  --color-success: var(--theme-feedback-success);
  --color-success-soft: var(--theme-feedback-success-soft);
  --color-warning: var(--theme-feedback-warning);
  --color-warning-soft: var(--theme-feedback-warning-soft);
  --color-danger: var(--theme-feedback-danger);
  --color-danger-soft: var(--theme-feedback-danger-soft);

  --calc-accent: var(--object-calculator-title-background);
  --calc-accent-soft: var(--object-calculated-option-background);
  --calc-accent-text: var(--object-calculator-title-text);
  --calc-focus: var(--object-control-focus-border);
  --calc-focus-ring: var(--object-control-focus-ring);
  --calc-frame-outline: var(--object-selection-active-border);
  --selected-color: var(--object-selection-active-border);
  --selected-color-save: var(--theme-feedback-success);
  --calculator-accent: var(--object-calculator-title-background);
  --calculator-accent-soft: var(--object-calculated-option-background);
  --calculator-accent-text: var(--object-calculator-title-text);
  --calculator-selected: var(--object-selection-active-border);
  --calculator-selected-soft: var(--object-selection-active-background);

  --deceti-color-page: var(--theme-surface-page);
  --deceti-color-surface: var(--theme-surface-default);
  --deceti-color-panel: var(--theme-surface-alt);
  --deceti-color-panel-soft: var(--theme-surface-alt);
  --deceti-color-panel-muted: var(--theme-surface-alt);
  --deceti-color-panel-gray: var(--theme-surface-alt);
  --deceti-color-text: var(--theme-text-primary);
  --deceti-color-text-black: var(--theme-text-primary);
  --deceti-color-text-strong: var(--theme-text-primary);
  --deceti-color-text-dark: var(--theme-text-primary);
  --deceti-color-text-neutral: var(--theme-text-muted);
  --deceti-color-text-brand: var(--theme-brand-dark);
  --deceti-color-text-muted: var(--theme-text-muted);
  --deceti-color-light-text: var(--theme-text-inverse);
  --deceti-color-border: var(--theme-border-default);
  --deceti-color-border-control: var(--theme-border-default);
  --deceti-color-border-soft: var(--theme-border-soft);
  --deceti-color-border-dotted: var(--theme-border-soft);
  --deceti-color-border-muted: var(--theme-border-default);
  --deceti-color-border-dark: var(--theme-border-strong);
  --deceti-color-border-shipping: var(--object-shipping-border);
  --deceti-color-focus: var(--theme-border-focus);
  --deceti-color-focus-alt: var(--theme-border-focus);
  --deceti-color-primary: var(--theme-brand-primary);
  --deceti-color-primary-hover: var(--theme-brand-primary-hover);
  --deceti-color-primary-dark: var(--theme-brand-dark);
  --deceti-color-primary-deep: var(--theme-brand-dark);
  --deceti-color-accent: var(--theme-brand-primary);
  --deceti-color-accent-header: var(--theme-brand-primary);
  --deceti-color-accent-soft: var(--theme-brand-soft-15);
  --deceti-color-accent-strong: var(--theme-brand-primary);
  --deceti-color-accent-pale: var(--theme-brand-soft-10);
  --deceti-color-accent-hover: var(--theme-brand-soft-05);
  --deceti-color-action-primary: var(--theme-action-primary);
  --deceti-color-action-primary-border: var(--theme-action-primary);
  --deceti-color-action-primary-hover: var(--theme-action-primary-hover);
  --deceti-color-action-primary-hover-border: var(--theme-action-primary-hover);
  --deceti-color-action-design: var(--theme-action-design);
  --deceti-color-action-upload: var(--theme-action-upload);
  --deceti-color-action-upload-dark: var(--theme-action-upload);
  --deceti-color-action-upload-hover: var(--theme-action-upload-hover);
  --deceti-color-action-template: var(--theme-action-template);
  --deceti-color-action-template-hover: var(--theme-action-template-hover);
  --deceti-color-success: var(--theme-feedback-success);
  --deceti-color-warning: var(--theme-feedback-warning);
  --deceti-color-danger: var(--theme-feedback-danger);
  --deceti-color-danger-text: var(--theme-feedback-danger);
  --deceti-color-info-background: var(--theme-feedback-info-soft);
  --deceti-color-info-text: var(--theme-feedback-info);
  --deceti-color-heading: var(--theme-text-primary);
  --deceti-color-footer-background: var(--object-footer-background);
  --deceti-color-footer-text: var(--object-footer-text);
}



/* source: catalog/view/stylesheet/deceti/theme-system/layout/index.css */
/* Shared layout registry. Not imported by a theme until migration. */

/* source: catalog/view/stylesheet/deceti/theme-system/layout/site.css */
/* Owner: site shell, header/footer geometry and navigation geometry. */
.deceti-theme *,
.deceti-theme *::before,
.deceti-theme *::after {
  box-sizing: border-box;
}

.deceti-theme .deceti-container {
  width: min(var(--theme-content-max-width), calc(100% - (var(--theme-page-gutter) * 2)));
  margin-right: auto;
  margin-left: auto;
}

.deceti-theme .deceti-top-info {
  display: flex;
  min-height: 46px;
  align-items: center;
  gap: var(--theme-space-6);
}

.deceti-theme .deceti-header-inner {
  display: grid;
  min-height: 132px;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--theme-space-10);
}

.deceti-theme .deceti-wordmark,
.deceti-theme .deceti-info-item {
  display: inline-flex;
  align-items: center;
}

.deceti-theme .deceti-wordmark-copy,
.deceti-theme .deceti-platform-brand {
  display: flex;
  flex-direction: column;
}

.deceti-theme .deceti-menu-wrap {
  width: min(var(--theme-site-max-width), calc(100% - (var(--theme-page-gutter) * 2)));
  margin-right: auto;
  margin-left: auto;
}

.deceti-theme .deceti-megamenu {
  display: grid;
  width: 100%;
  margin: 0;
  padding: var(--theme-space-2);
  list-style: none;
}

.deceti-theme .deceti-megamenu > li {
  position: relative;
  min-width: 0;
}

.deceti-theme .deceti-megamenu > li > a {
  display: flex;
  min-height: var(--theme-control-height-large);
  align-items: center;
  justify-content: center;
}

.deceti-theme .deceti-submenu {
  position: absolute;
  z-index: 9999;
  top: calc(100% + var(--theme-space-2));
  left: 0;
  min-width: 280px;
}

.deceti-theme .deceti-footer-body {
  padding-top: 64px;
  padding-bottom: 28px;
}

.deceti-theme .deceti-platform-footer {
  display: grid;
  grid-template-columns: minmax(300px, 1.15fr) minmax(520px, 1.85fr);
  gap: 70px;
}

@media (max-width: 991px) {
  .deceti-theme .deceti-container,
  .deceti-theme .deceti-menu-wrap {
    width: min(var(--theme-reading-max-width), calc(100% - (var(--theme-page-gutter-mobile) * 2)));
  }

  .deceti-theme .deceti-top-info {
    justify-content: center;
    flex-wrap: wrap;
  }

  .deceti-theme .deceti-header-inner,
  .deceti-theme .deceti-platform-footer {
    grid-template-columns: 1fr;
  }

  .deceti-theme .deceti-submenu {
    position: static;
    width: 100%;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/layout/product.css */
/* Owner: product page columns, panels and media geometry. */
.deceti-theme .product-image,
.deceti-theme .product-proof,
.deceti-theme .product-cart,
.deceti-theme .product-decal {
  position: relative;
  width: 55%;
  padding: var(--theme-space-5) var(--theme-space-5) var(--theme-space-3);
  float: left;
}

.deceti-theme .product-options,
.deceti-theme .product-options-cart,
.deceti-theme .product-options-shipping,
.deceti-theme .product-options-shipping-product {
  position: relative;
  width: 42%;
}

.deceti-theme .product-options,
.deceti-theme .product-options-shipping,
.deceti-theme .product-options-shipping-product {
  margin-left: 3%;
  float: left;
}

.deceti-theme .product-options-cart {
  float: right;
}

.deceti-theme .product-calc {
  position: relative;
  width: 100%;
  float: left;
}

.deceti-theme .product-calculator {
  position: relative;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

.deceti-theme .product-image-span,
.deceti-theme .native-gallery,
.deceti-theme .native-gallery-main {
  width: 100%;
}

.deceti-theme .native-gallery-main img,
.deceti-theme .deceti-preview img,
.deceti-theme .product-image img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}

@media (max-width: 991px) {
  .deceti-theme .product-image,
  .deceti-theme .product-proof,
  .deceti-theme .product-cart,
  .deceti-theme .product-decal,
  .deceti-theme .product-options,
  .deceti-theme .product-options-cart,
  .deceti-theme .product-options-shipping,
  .deceti-theme .product-options-shipping-product,
  .deceti-theme .product-calculator {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    float: none;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/layout/calculator.css */
/* Owner: shared calculator geometry. No colors. */
.deceti-theme .calculator {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.deceti-theme .vertical-group {
  width: 50%;
  float: left;
}

.deceti-theme .vertical-group > div {
  clear: both;
}

.deceti-theme .blue-top-line,
.deceti-theme .finishing-module-title,
.deceti-theme .deceti-calculated-option-title {
  display: flex;
  min-height: 40px;
  align-items: center;
}

.deceti-theme .deceti-calculated-option-module,
.deceti-theme .deceti-calculated-option-body,
.deceti-theme .deceti-quantity-savings,
.deceti-theme .deceti-ui-price-summary,
.deceti-theme .deceti-calculator-summary {
  width: 100%;
}

.deceti-theme .deceti-ui-price-summary,
.deceti-theme .action-buttons-row {
  display: flex;
  flex-wrap: wrap;
}

.deceti-theme .deceti-ui-total-box,
.deceti-theme .deceti-total-price-card {
  min-height: 100%;
}

.deceti-theme .deceti-quantity-savings-carousel {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 30px;
  align-items: center;
}

.deceti-theme .deceti-quantity-savings-viewport {
  min-width: 0;
  overflow-x: auto;
  overflow-y: visible;
}

.deceti-theme .deceti-quantity-savings-track {
  display: flex;
  width: max-content;
  align-items: flex-end;
}

.deceti-theme .deceti-quantity-saving-card {
  position: relative;
  flex: 0 0 94px;
}

.deceti-theme .action-buttons-row > .blockbutton {
  flex: 1 1 0;
}

/* Shared informational message below calculator controls. */
.deceti-theme .custom-contact-message {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  min-height: 54px;
  height: auto;
  margin: var(--theme-space-3, 10px) 0 0;
  padding: 10px 16px;
  float: none;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: var(--theme-radius-card, 15px);
  background: var(--theme-surface-card, #fff);
  text-align: center;
}

.deceti-theme .custom-contact-message > .row {
  display: flex;
  width: 100%;
  margin: 0 !important;
  align-items: center;
  justify-content: center;
}

.deceti-theme .custom-contact-message-text {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1.35;
}

/* Long configured message: center its content on both axes. */
.deceti-theme .deceti-ui-shipping-message-long {
  display: flex;
  box-sizing: border-box;
  min-height: 66px;
  height: auto;
  padding: 10px 20px !important;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.deceti-theme .deceti-ui-shipping-message-long > b {
  display: block;
  margin: 0;
  line-height: 1.35;
}

/* Action area contains two independent surfaces: buttons and Message 3. */
.deceti-theme .calc-right-actions > .container.deceti-ui-rounded-top {
  box-sizing: border-box;
  width: 100%;
  padding: 0;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
}

.deceti-theme .calc-right-actions > .container.deceti-ui-rounded-top > .action-buttons-row {
  box-sizing: border-box;
  width: 100%;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 10px 12px;
  border: 0 !important;
  border-radius: var(--theme-radius-card, 15px);
  background: var(--theme-surface-card, #fff) !important;
}

.deceti-theme .calc-right-actions > .container.deceti-ui-rounded-top > .deceti-ui-mt-10 {
  display: flex;
  box-sizing: border-box;
  width: 100%;
  min-height: 48px;
  margin: var(--theme-space-3, 10px) 0 0 !important;
  padding: 10px 12px;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: var(--theme-radius-card, 15px);
  background: var(--theme-surface-card, #fff) !important;
  text-align: center;
}

@media (max-width: 767px) {
  .deceti-theme .vertical-group {
    width: 100%;
    float: none;
  }

  .deceti-theme .action-buttons-row {
    flex-direction: column;
  }

  .deceti-theme .action-buttons-row > .blockbutton {
    width: 100%;
  }
}





/* source: catalog/view/stylesheet/deceti/theme-system/objects/index.css */
/* Shared object registry. Not imported by a theme until migration. */

/* source: catalog/view/stylesheet/deceti/theme-system/objects/chrome.css */
/* Owner: site header/footer chrome. Color only. */
.deceti-theme .deceti-top-info-wrap,
.deceti-theme .deceti-header {
  border-color: var(--object-panel-border);
  color: var(--object-header-text);
  background-color: var(--object-header-background);
  background-image: none;
}

.deceti-theme .deceti-network-label,
.deceti-theme .deceti-platform-kicker {
  color: var(--theme-brand-primary);
}

.deceti-theme .deceti-info-item,
.deceti-theme .deceti-info-item h3,
.deceti-theme .deceti-wordmark,
.deceti-theme .deceti-platform-brand,
.deceti-theme .deceti-platform-brand strong,
.deceti-theme .deceti-message-secondary {
  color: var(--object-header-text);
}

.deceti-theme .deceti-wordmark-copy small,
.deceti-theme .deceti-platform-brand > span:last-child {
  color: var(--object-header-muted-text);
}

.deceti-theme .deceti-wordmark-symbol {
  border-color: var(--theme-brand-primary);
  color: var(--theme-text-inverse);
  background-color: var(--theme-brand-primary);
  background-image: none;
}

.deceti-theme .deceti-top-message-box {
  border-color: var(--theme-brand-soft-25);
  color: var(--object-header-text);
  background-color: var(--theme-brand-soft-10);
  background-image: none;
}

.deceti-theme .deceti-footer {
  border-color: var(--theme-border-strong);
  color: var(--object-footer-text);
  background-color: var(--object-footer-background);
  background-image: none;
}

/* Footer owns the foreground of all of its textual descendants. Generic body
   typography assigns explicit colors to p/li/headings, so inheritance alone
   is not sufficient on a dark footer surface. */
.deceti-theme .deceti-footer p,
.deceti-theme .deceti-footer li,
.deceti-theme .deceti-footer span,
.deceti-theme .deceti-footer address,
.deceti-theme .deceti-footer h1,
.deceti-theme .deceti-footer h2,
.deceti-theme .deceti-footer h3,
.deceti-theme .deceti-footer h4,
.deceti-theme .deceti-footer h5,
.deceti-theme .deceti-footer h6,
.deceti-theme .deceti-footer strong,
.deceti-theme .deceti-footer b {
  color: var(--object-footer-text);
}

.deceti-theme .deceti-footer a {
  color: var(--object-footer-text);
}

.deceti-theme .deceti-footer a:hover,
.deceti-theme .deceti-footer a:focus {
  color: var(--theme-brand-accent);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/navigation.css */
/* Owner: navigation and submenu interaction colors. */
.deceti-theme .deceti-menu-wrap,
.deceti-theme .deceti-mobile-toggle {
  border-color: var(--theme-brand-soft-25);
  color: var(--object-navigation-text);
  background-color: var(--object-navigation-background);
  background-image: none;
}

.deceti-theme .deceti-megamenu > li > a,
.deceti-theme .deceti-megamenu > li > a:visited {
  border-color: transparent;
  color: var(--object-navigation-text);
  background-color: transparent;
}

.deceti-theme .deceti-megamenu > li > a:hover,
.deceti-theme .deceti-megamenu > li > a:focus-visible,
.deceti-theme .deceti-megamenu > li:focus-within > a {
  border-color: var(--object-navigation-hover-background);
  color: var(--object-navigation-hover-text);
  background-color: var(--object-navigation-hover-background);
}

.deceti-theme .deceti-megamenu > li.has-submenu > a::after {
  color: currentColor;
}

.deceti-theme .deceti-submenu {
  border-color: var(--object-elevated-border);
  color: var(--object-submenu-text);
  background-color: var(--object-submenu-background);
  background-image: none;
}

.deceti-theme .deceti-submenu li a,
.deceti-theme .deceti-submenu li a:visited {
  border-color: transparent;
  color: var(--object-submenu-text);
  background-color: transparent;
}

.deceti-theme .deceti-submenu li a:hover,
.deceti-theme .deceti-submenu li a:focus-visible {
  border-color: var(--theme-brand-soft-25);
  color: var(--object-submenu-hover-text);
  background-color: var(--object-submenu-hover-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/surfaces.css */
/* Owner: shared panels, cards and shells. Color only. */
.deceti-theme main {
  color: var(--object-body-text);
  background-color: var(--object-page-background);
}

.deceti-theme .card,
.deceti-theme .panel,
.deceti-theme .product-image,
.deceti-theme .product-proof,
.deceti-theme .product-cart,
.deceti-theme .product-decal,
.deceti-theme .product-calc,
.deceti-theme .product-options,
.deceti-theme .product-options-cart,
.deceti-theme .product-options-calc,
.deceti-theme .product-options-shipping,
.deceti-theme .product-options-shipping-product,
.deceti-theme .product-calculator,
.deceti-theme .deceti-calculator-summary {
  border-color: var(--object-panel-border);
  color: var(--object-body-text);
  background-color: var(--object-panel-background);
}

.deceti-theme .card-muted,
.deceti-theme .panel-muted,
.deceti-theme .deceti-surface-alt {
  border-color: var(--object-panel-border);
  color: var(--object-body-text);
  background-color: var(--object-panel-alt-background);
}

.deceti-theme .dropdown-menu,
.deceti-theme .modal-content,
.deceti-theme .deceti-elevated-surface {
  border-color: var(--object-elevated-border);
  color: var(--object-body-text);
  background-color: var(--object-elevated-background);
}

/* The calculator shell is an independent design object. Its background must
   not inherit the generic page or panel surface because the admin builder
   exposes a dedicated Calculator inner background token. */
.deceti-theme .calculator,
.deceti-theme .deceti-ui-calculator-shell-visible,
.deceti-theme .deceti-ui-calculator-shell-hidden {
  border-color: var(--object-calculator-border);
  color: var(--object-body-text);
  background-color: var(--object-calculator-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/typography.css */
/* Owner: shared text and link colors. */
.deceti-theme,
.deceti-theme p,
.deceti-theme li,
.deceti-theme label {
  color: var(--object-body-text);
}

.deceti-theme h1,
.deceti-theme h2,
.deceti-theme h3,
.deceti-theme h4,
.deceti-theme h5,
.deceti-theme h6 {
  color: var(--object-heading-text);
}

.deceti-theme .text-muted,
.deceti-theme small,
.deceti-theme .deceti-muted {
  color: var(--object-muted-text);
}

.deceti-theme a {
  color: var(--object-link-text);
}

.deceti-theme a:hover,
.deceti-theme a:focus {
  color: var(--object-link-hover-text);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/controls.css */
/* Owner: form controls and their interaction states. Color only. */
.deceti-theme input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.deceti-theme select,
.deceti-theme textarea,
.deceti-theme .form-control,
.deceti-theme .form-select {
  border-color: var(--object-control-border);
  color: var(--object-control-text);
  background-color: var(--object-control-background);
}

.deceti-theme input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]):hover,
.deceti-theme select:hover,
.deceti-theme textarea:hover,
.deceti-theme .form-control:hover,
.deceti-theme .form-select:hover {
  border-color: var(--object-control-hover-border);
}

.deceti-theme input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]):focus,
.deceti-theme select:focus,
.deceti-theme textarea:focus,
.deceti-theme .form-control:focus,
.deceti-theme .form-select:focus {
  border-color: var(--object-control-focus-border);
  box-shadow: 0 0 0 3px var(--object-control-focus-ring);
  outline: 0;
}

.deceti-theme input:disabled,
.deceti-theme select:disabled,
.deceti-theme textarea:disabled,
.deceti-theme .form-control:disabled,
.deceti-theme .form-select:disabled {
  border-color: var(--object-control-border);
  color: var(--object-control-disabled-text);
  background-color: var(--object-control-disabled-background);
}

.deceti-theme input[type="checkbox"],
.deceti-theme input[type="radio"] {
  accent-color: var(--theme-brand-primary);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/selections.css */
/* Owner: selectable calculator values. Color only. */
.deceti-theme .quantity-list label,
.deceti-theme .size-row label,
.deceti-theme .shape-div label,
.deceti-theme .deceti-selection-card,
.deceti-theme .deceti-quantity-saving-card {
  border-color: var(--object-selection-border);
  color: var(--object-selection-text);
  background-color: var(--object-selection-background);
}

.deceti-theme .quantity-list label:hover,
.deceti-theme .size-row label:hover,
.deceti-theme .shape-div label:hover,
.deceti-theme .deceti-selection-card:hover,
.deceti-theme .deceti-quantity-saving-card:hover {
  border-color: var(--object-selection-hover-border);
  color: var(--object-selection-text);
  background-color: var(--object-selection-hover-background);
}

.deceti-theme .quantity-list input:checked + label,
.deceti-theme .size-row input:checked + label,
.deceti-theme .shape-div input:checked + label,
.deceti-theme .deceti-selection-card.is-selected,
.deceti-theme .deceti-quantity-saving-card.is-selected,
.deceti-theme .deceti-quantity-saving-card[aria-current="true"] {
  border-color: var(--object-selection-active-border);
  color: var(--object-selection-active-text);
  background-color: var(--object-selection-active-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/calculated-options-v2.css */
/* Owner: finishing, packaging, arrow charge and future production time. */
.deceti-theme .finishing-module-title,
.deceti-theme .deceti-finishing .finishing-module-title,
.deceti-theme .deceti-calculated-option-title,
.deceti-theme .deceti-calculated-module-title,
.deceti-theme [data-deceti-module-title] {
  border-color: var(--object-calculator-title-background) !important;
  color: var(--object-calculator-title-text) !important;
  background-color: var(--object-calculator-title-background) !important;
  background-image: none !important;
}

.deceti-theme .finishing-module-title *,
.deceti-theme .deceti-calculated-option-title *,
.deceti-theme .deceti-calculated-module-title * {
  color: var(--object-calculator-title-text) !important;
}

.deceti-theme .finishing-option-block,
.deceti-theme .finishing-option-group,
.deceti-theme .deceti-finishing-option,
.deceti-theme .deceti-calculated-option,
.deceti-theme .deceti-calculated-option-body,
.deceti-theme .deceti-packaging-option,
.deceti-theme #arrow_special_charge_block .deceti-calculated-option-body,
.deceti-theme #box_options_selector_block .deceti-calculated-option-body {
  border-color: var(--object-calculated-option-border);
  color: var(--object-calculated-option-text);
  background-color: var(--object-calculated-option-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/commerce-v3.css */
/* Owner: prices, leaf total cards, shipping messages and savings. */
.deceti-theme .deceti-ui-price-column,
.deceti-theme [data-deceti-price-block="item"],
.deceti-theme [data-deceti-price-block="frame"],
.deceti-theme [data-deceti-price-block="shipping"] {
  color: var(--object-price-text);
  background-color: var(--object-price-background);
}

/* One typography contract for every price-summary entity. */
.deceti-theme .deceti-ui-price-column > :first-child,
.deceti-theme [data-deceti-price-block="item"] > :first-child,
.deceti-theme [data-deceti-price-block="frame"] > :first-child,
.deceti-theme [data-deceti-price-block="shipping"] > :first-child,
.deceti-theme .deceti-total-price-card > :first-child,
.deceti-theme .deceti-ui-total-card-fill > :first-child,
.deceti-theme .deceti-sticker-total-header > :first-child,
.deceti-theme .summary-card-inner > :first-child,
.deceti-theme #calculator_price_summary > div > :first-child {
  font-size: var(--object-price-heading-font-size) !important;
  font-weight: var(--object-price-heading-font-weight);
  line-height: 1.25;
  white-space: nowrap;
}

.deceti-theme .deceti-ui-price-column > :first-child *,
.deceti-theme [data-deceti-price-block="item"] > :first-child *,
.deceti-theme [data-deceti-price-block="frame"] > :first-child *,
.deceti-theme [data-deceti-price-block="shipping"] > :first-child *,
.deceti-theme .deceti-total-price-card > :first-child *,
.deceti-theme .deceti-ui-total-card-fill > :first-child *,
.deceti-theme .deceti-sticker-total-header > :first-child *,
.deceti-theme .summary-card-inner > :first-child *,
.deceti-theme #calculator_price_summary > div > :first-child * {
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  white-space: nowrap !important;
}

.deceti-theme .deceti-ui-price-value,
.deceti-theme .summary-card-inner .summary-value,
.deceti-theme #result_price,
.deceti-theme #result_frame,
.deceti-theme #result_shipping,
.deceti-theme #result_total {
  font-size: var(--object-price-value-font-size) !important;
  font-weight: var(--object-price-value-font-weight) !important;
  line-height: 1.25;
}

.deceti-theme .deceti-ui-help-text,
.deceti-theme .summary-note {
  font-size: var(--object-price-help-font-size) !important;
}

/* Only visual leaf cards receive the total surface. Structural wrappers do not. */
.deceti-theme .deceti-total-price-card,
.deceti-theme .deceti-ui-total-card-fill,
.deceti-theme .deceti-sticker-total-header {
  min-height: var(--object-total-min-height);
  padding: var(--object-total-padding-block) var(--object-total-padding-inline);
  border-width: var(--object-total-border-width) !important;
  border-style: solid;
  border-radius: var(--object-total-radius);
  border-color: var(--object-total-border) !important;
  color: var(--object-total-text) !important;
  background-color: var(--object-total-background) !important;
  background-image: none !important;
}

.deceti-theme .deceti-total-price-card,
.deceti-theme .deceti-ui-total-card-fill {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start !important;
  padding-top: 4px;
  padding-right: min(var(--object-total-padding-inline), 10px);
  padding-left: min(var(--object-total-padding-inline), 10px);
}

.deceti-theme .deceti-total-price-card > :first-child,
.deceti-theme .deceti-ui-total-card-fill > :first-child,
.deceti-theme .deceti-sticker-total-header > :first-child {
  color: var(--object-total-heading-text) !important;
}

.deceti-theme .deceti-total-price-card .deceti-ui-price-value,
.deceti-theme .deceti-ui-total-card-fill .deceti-ui-price-value,
.deceti-theme .deceti-sticker-total-header .deceti-ui-price-value,
.deceti-theme .deceti-total-price-card #result_total,
.deceti-theme .deceti-ui-total-card-fill #result_total,
.deceti-theme .deceti-sticker-total-header #result_total {
  color: var(--object-total-value-text) !important;
}

.deceti-theme .deceti-total-price-card *,
.deceti-theme .deceti-ui-total-card-fill *,
.deceti-theme .deceti-sticker-total-header *,
.deceti-theme #result_total,
.deceti-theme #Total_Price,
.deceti-theme #Total_Price_Each {
  color: var(--object-total-text) !important;
}

.deceti-theme #shipping_promo_wrap,
.deceti-theme .deceti-ui-shipping-message-short,
.deceti-theme .deceti-ui-shipping-message-long {
  border-color: var(--object-shipping-border);
  color: var(--object-shipping-text);
  background-color: var(--object-shipping-background);
  background-image: none;
}

.deceti-theme #shipping_promo_wrap *,
.deceti-theme .deceti-ui-shipping-message-short *,
.deceti-theme .deceti-ui-shipping-message-long * {
  color: var(--object-shipping-text);
}

.deceti-theme .deceti-quantity-savings {
  border-color: var(--object-savings-border);
  color: var(--object-savings-text);
  background-color: var(--object-savings-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/actions.css */
/* Owner: action identity and action states. Color only. */
.deceti-theme #get_quote,
.deceti-theme .btn-primary:not(#upload_artwork):not(#start_design):not(#choose_template) {
  border-color: var(--object-action-primary-background);
  color: var(--object-action-primary-text);
  background-color: var(--object-action-primary-background);
  background-image: none;
}

.deceti-theme #get_quote:hover,
.deceti-theme #get_quote:focus,
.deceti-theme .btn-primary:not(#upload_artwork):not(#start_design):not(#choose_template):hover,
.deceti-theme .btn-primary:not(#upload_artwork):not(#start_design):not(#choose_template):focus {
  border-color: var(--object-action-primary-hover-background);
  color: var(--object-action-primary-text);
  background-color: var(--object-action-primary-hover-background);
}

.deceti-theme #start_fromscratch,
.deceti-theme #start_design,
.deceti-theme .btn-startfromscratch,
.deceti-theme .btn-designonline,
.deceti-theme .btn-custom-color-startdesign,
.deceti-theme .btn-custom-color-designonline {
  border-color: var(--object-action-design-background);
  color: var(--object-action-design-text);
  background-color: var(--object-action-design-background);
  background-image: none;
}

.deceti-theme #start_fromscratch:hover,
.deceti-theme #start_fromscratch:focus,
.deceti-theme #start_design:hover,
.deceti-theme #start_design:focus,
.deceti-theme .btn-startfromscratch:hover,
.deceti-theme .btn-designonline:hover,
.deceti-theme .btn-custom-color-startdesign:hover,
.deceti-theme .btn-custom-color-designonline:hover {
  border-color: var(--object-action-design-hover-background);
  color: var(--object-action-design-text);
  background-color: var(--object-action-design-hover-background);
}

.deceti-theme #upload_artwork,
.deceti-theme .btn-uploadartwork,
.deceti-theme .btn-custom-color-uploadartwork {
  border-color: var(--object-action-upload-background);
  color: var(--object-action-upload-text);
  background-color: var(--object-action-upload-background);
  background-image: none;
}

.deceti-theme #upload_artwork:hover,
.deceti-theme #upload_artwork:focus,
.deceti-theme .btn-uploadartwork:hover,
.deceti-theme .btn-custom-color-uploadartwork:hover {
  border-color: var(--object-action-upload-hover-background);
  color: var(--object-action-upload-text);
  background-color: var(--object-action-upload-hover-background);
}

.deceti-theme #choose_template,
.deceti-theme .btn-template,
.deceti-theme .btn-custom-color-templates {
  border-color: var(--object-action-template-background);
  color: var(--object-action-template-text);
  background-color: var(--object-action-template-background);
  background-image: none;
}

.deceti-theme #choose_template:hover,
.deceti-theme #choose_template:focus,
.deceti-theme .btn-template:hover,
.deceti-theme .btn-custom-color-templates:hover {
  border-color: var(--object-action-template-hover-background);
  color: var(--object-action-template-text);
  background-color: var(--object-action-template-hover-background);
}

.deceti-theme .btn-secondary {
  border-color: var(--object-action-neutral-background);
  color: var(--object-action-neutral-text);
  background-color: var(--object-action-neutral-background);
}

.deceti-theme .btn-secondary:hover,
.deceti-theme .btn-secondary:focus {
  border-color: var(--object-action-neutral-hover-background);
  color: var(--object-action-neutral-text);
  background-color: var(--object-action-neutral-hover-background);
}

.deceti-theme .btn-danger {
  border-color: var(--object-action-danger-background);
  color: var(--object-action-danger-text);
  background-color: var(--object-action-danger-background);
}

.deceti-theme .btn-danger:hover,
.deceti-theme .btn-danger:focus {
  border-color: var(--object-action-danger-hover-background);
  color: var(--object-action-danger-text);
  background-color: var(--object-action-danger-hover-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/feedback.css */
/* Owner: information, success, warning, error and validation. Color only. */
.deceti-theme .alert-info,
.deceti-theme .deceti-info,
.deceti-theme .notice-info {
  border-color: var(--object-info-border);
  color: var(--object-info-text);
  background-color: var(--object-info-background);
}

.deceti-theme .alert-success,
.deceti-theme .deceti-success {
  border-color: var(--object-success-border);
  color: var(--object-success-text);
  background-color: var(--object-success-background);
}

.deceti-theme .alert-warning,
.deceti-theme .deceti-warning,
.deceti-theme #deceti_color_pricing_alert {
  border-color: var(--object-warning-border);
  color: var(--object-warning-text);
  background-color: var(--object-warning-background);
}

.deceti-theme .alert-danger,
.deceti-theme .deceti-error,
.deceti-theme .deceti-ui-runtime-notice,
.deceti-theme #calc_error,
.deceti-theme #deceti_calc_error_box {
  border-color: var(--object-danger-border);
  color: var(--object-danger-text);
  background-color: var(--object-danger-background);
}



/* source: catalog/view/stylesheet/deceti/theme-system/objects/media.css */
/* Owner: image, preview, gallery and embedded-media surfaces. Color only. */
.deceti-theme .product-image-span,
.deceti-theme #preview,
.deceti-theme .native-gallery,
.deceti-theme .native-gallery-main,
.deceti-theme .deceti-preview,
.deceti-theme .deceti-media-panel {
  border-color: var(--object-panel-border);
  color: var(--object-body-text);
  background-color: var(--object-panel-background);
}

.deceti-theme .native-gallery-thumb,
.deceti-theme .thumbnail,
.deceti-theme .deceti-thumbnail {
  border-color: var(--object-selection-border);
  background-color: var(--object-selection-background);
}

.deceti-theme .native-gallery-thumb:hover,
.deceti-theme .native-gallery-thumb:focus,
.deceti-theme .thumbnail:hover,
.deceti-theme .thumbnail:focus,
.deceti-theme .deceti-thumbnail:hover,
.deceti-theme .deceti-thumbnail:focus {
  border-color: var(--object-selection-hover-border);
  background-color: var(--object-selection-hover-background);
}

.deceti-theme .native-gallery-thumb.is-active,
.deceti-theme .thumbnail.active,
.deceti-theme .deceti-thumbnail.is-selected {
  border-color: var(--object-selection-active-border);
  background-color: var(--object-selection-active-background);
}





/* source: catalog/view/stylesheet/deceti/theme-system/pages/index.css */
/* Shared page-specific registry. Not imported by a theme until migration. */

/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-horizontal.css */
/* Page owner: horizontal pricing calculator exceptions. No colors. */
.deceti-page-pricingcalculator-h {
  width: 100%;
}

.deceti-page-pricingcalculator-h .deceti-ui-calculator-padding {
  padding: var(--theme-space-5);
}

.deceti-page-pricingcalculator-h .deceti-ui-half-float {
  width: 50%;
  float: left;
}

.deceti-page-pricingcalculator-h .calc-right-top,
.deceti-page-pricingcalculator-h .calc-right-actions {
  width: 100%;
}

/* Give the horizontal price cards equal breathing room on every side. */
.deceti-page-pricingcalculator-h .calc-right-top > .deceti-ui-calc-panel {
  display: flex !important;
  box-sizing: border-box;
  min-height: calc(var(--object-total-min-height) + 36px);
  padding: 18px 14px !important;
  align-items: center;
}

.deceti-page-pricingcalculator-h .calc-right-top > .deceti-ui-calc-panel > .summary-row {
  width: 100%;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Keep a reduced price summary anchored to the right when Frame is unavailable. */
.deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="none"],
.deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="combined"] {
  justify-content: flex-end;
}

.deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="none"] > .summary-card:first-child,
.deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="combined"] > .summary-card:first-child {
  grid-column-start: 2 !important;
  margin-left: auto !important;
}

.deceti-page-pricingcalculator-h .summary-card-inner > :first-child,
.deceti-page-pricingcalculator-h .summary-card-inner > :first-child * {
  font-size: var(--object-price-heading-font-size) !important;
  font-weight: var(--object-price-heading-font-weight) !important;
  line-height: 1.25 !important;
  white-space: nowrap;
}

.deceti-page-pricingcalculator-h .summary-card-inner .summary-value,
.deceti-page-pricingcalculator-h .summary-card-inner .summary-value > span {
  font-size: var(--object-price-value-font-size) !important;
  font-weight: var(--object-price-value-font-weight) !important;
  line-height: 1.25 !important;
}

.deceti-page-pricingcalculator-h .summary-card-inner .summary-note {
  display: block;
  margin: 4px 0 0;
  font-size: var(--object-price-help-font-size) !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

.deceti-page-pricingcalculator-h .action-buttons-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--theme-space-3);
}

@media (max-width: 767px) {
  .deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="none"] > .summary-card:first-child,
  .deceti-page-pricingcalculator-h .summary-row[data-deceti-frame-price-mode="combined"] > .summary-card:first-child {
    grid-column-start: auto !important;
  }

  .deceti-page-pricingcalculator-h .deceti-ui-half-float {
    width: 100%;
    float: none;
  }

  .deceti-page-pricingcalculator-h .action-buttons-row {
    grid-template-columns: 1fr;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-vertical.css */
/* Page owner: vertical pricing calculator exceptions. No colors. */
.deceti-page-pricingcalculator-v {
  width: min(100%, var(--theme-reading-max-width));
  margin-right: auto;
  margin-left: auto;
}

.deceti-page-pricingcalculator-v .deceti-ui-calculator-padding-vertical {
  padding: var(--theme-space-5);
}

.deceti-page-pricingcalculator-v .deceti-ui-half-float {
  width: 50%;
  float: left;
}

.deceti-page-pricingcalculator-v .calc-right-top,
.deceti-page-pricingcalculator-v .calc-right-actions,
.deceti-page-pricingcalculator-v .deceti-main-scroll-panel {
  width: 100%;
}

/* Vertical calculator price summary uses the same compact square-card
   geometry on desktop and mobile. */
html body .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 170px)) !important;
  gap: 10px;
  width: min(100%, 350px) !important;
  max-width: 350px !important;
  margin: 0 auto !important;
  justify-content: center;
}

html body .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-row > .summary-card {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: 1 / 1;
}

html body .calculator.deceti-page-pricingcalculator-v .calc-right-top .summary-row .summary-card-inner {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 16px 8px 12px !important;
}

.deceti-page-pricingcalculator-v .calc-right-top > .deceti-ui-calc-panel {
  box-sizing: border-box;
  padding-top: 16px !important;
  padding-bottom: 18px !important;
}

.deceti-page-pricingcalculator-v .action-buttons-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--theme-space-3);
}

@media (max-width: 575px) {
  .deceti-page-pricingcalculator-v .deceti-ui-half-float {
    width: 100%;
    float: none;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-base.css */
/* Page owner: base, JS and legacy calculator exceptions. No colors. */
.deceti-page-pricingcalculator-base,
.deceti-page-pricingcalculator-js,
.deceti-page-pricingcalculator-legacy {
  width: 100%;
}

.deceti-page-pricingcalculator-base .deceti-ui-half-float,
.deceti-page-pricingcalculator-js .deceti-ui-half-float,
.deceti-page-pricingcalculator-legacy .deceti-ui-half-float {
  width: 50%;
  float: left;
}

.deceti-page-pricingcalculator-base .action-buttons-row,
.deceti-page-pricingcalculator-js .action-buttons-row,
.deceti-page-pricingcalculator-legacy .action-buttons-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--theme-space-3);
}

@media (max-width: 767px) {
  .deceti-page-pricingcalculator-base .deceti-ui-half-float,
  .deceti-page-pricingcalculator-js .deceti-ui-half-float,
  .deceti-page-pricingcalculator-legacy .deceti-ui-half-float {
    width: 100%;
    float: none;
  }

  .deceti-page-pricingcalculator-base .action-buttons-row,
  .deceti-page-pricingcalculator-js .action-buttons-row,
  .deceti-page-pricingcalculator-legacy .action-buttons-row {
    grid-template-columns: 1fr;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-options.css */
/* Page owner: select-options and upload-artwork exceptions. No colors. */
.deceti-page-pricingcalculator-options,
.deceti-page-uploadartwork {
  width: 100%;
}

.deceti-page-pricingcalculator-options .deceti-ui-summary-layout,
.deceti-page-uploadartwork.deceti-ui-summary-layout {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

/* Compact the shared Product/Material/Size and calculator-selection rows.
   Older Twig markup uses BR elements while product-page.css gives every row
   a 20px vertical margin; together they create excessive empty space. */
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > .row,
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > form > .row.deceti-ui-mt-10 {
  margin-top: 0 !important;
  margin-bottom: 6px !important;
}

:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > .row > [class*="col-"],
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > form > .row.deceti-ui-mt-10 > [class*="col-"] {
  margin-bottom: 4px !important;
}

:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > .row > [class*="col-"] > strong,
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > form > .row.deceti-ui-mt-10 > [class*="col-"] > strong {
  display: block;
  margin-bottom: 3px;
  line-height: 1.2;
}

:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > .row > [class*="col-"] > strong + br,
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) > form > .row.deceti-ui-mt-10 > [class*="col-"] > strong + br {
  display: none;
}

/* Canonical summary field: semantic label/value structure without BR. */
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) .deceti-summary-field {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 3px;
  line-height: 1.2;
}

:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) .deceti-summary-label,
:is(
  .deceti-calculator-summary.deceti-page-pricingcalculator-options,
  .deceti-calculator-summary.deceti-page-uploadartwork
) .deceti-summary-value {
  display: block;
  margin: 0;
}

.deceti-page-pricingcalculator-options .deceti-ui-price-summary,
.deceti-page-uploadartwork .deceti-ui-price-summary,
.deceti-page-pricingcalculator-options .deceti-ui-shipping-row,
.deceti-page-uploadartwork .deceti-ui-shipping-row {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr) 40px;
  gap: 8px;
  align-items: center;
  width: 100%;
}

.deceti-page-pricingcalculator-options .deceti-ui-shipping-row > *,
.deceti-page-uploadartwork .deceti-ui-shipping-row > * {
  display: block;
  min-width: 0;
}

/* A disabled Production Time mount must not leave an empty vertical row. */
:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork)
  .deceti-ui-option-row:has(> #production_time_wrapper[style*="display:none"], > #production_time_wrapper[style*="display: none"]) {
  display: none !important;
  margin: 0 !important;
}

/* Compact transition from calculated options to the Upload Artwork price cards. */
:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork)
  #calculator_price_summary[data-deceti-upload-price-summary="1"] {
  margin-top: 12px !important;
}

.deceti-page-pricingcalculator-options .deceti-ui-flex-2,
.deceti-page-uploadartwork .deceti-ui-flex-2 {
  flex: 2 1 0;
}

.deceti-page-pricingcalculator-options .deceti-ui-flex-1,
.deceti-page-uploadartwork .deceti-ui-flex-1 {
  flex: 1 1 0;
}

.deceti-page-pricingcalculator-options .deceti-ui-flex-40,
.deceti-page-uploadartwork .deceti-ui-flex-40 {
  flex: 0 0 40px;
}

/* Options Page order: totals -> shipping calculator -> Calculate. */
.deceti-page-pricingcalculator-options .deceti-options-shipping-after-total {
  margin-top: 16px !important;
  margin-bottom: 10px !important;
}

/* Price cards share one geometry on Select Options and Upload Artwork. */
.deceti-page-pricingcalculator-options #calculator_price_summary,
:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork) .deceti-ui-price-summary {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: var(--theme-space-3, 10px);
  width: 100%;
  margin-right: auto !important;
  margin-left: auto !important;
  align-items: stretch;
}

.deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center,
:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork) .deceti-ui-price-summary > .deceti-ui-text-center {
  display: flex;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
  min-height: var(--object-total-min-height);
  margin: 0 !important;
  padding: var(--object-total-padding-block) 10px !important;
  flex-direction: column;
  align-items: center;
  justify-content: center !important;
  border: var(--object-total-border-width) solid var(--theme-border-soft);
  border-radius: var(--object-total-radius);
  background-color: var(--object-price-background);
  text-align: center;
}

.deceti-page-pricingcalculator-options #calculator_price_summary > .deceti-ui-text-center:has(> .deceti-total-price-card),
:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork) .deceti-ui-price-summary > .deceti-ui-text-center:has(> .deceti-total-price-card) {
  border-color: var(--object-total-border) !important;
  color: var(--object-total-text) !important;
  background-color: var(--object-total-background) !important;
}

:is(.deceti-page-uploadartwork, .deceti-page-customproduct-uploadartwork) .deceti-ui-price-summary > .deceti-ui-text-center > .deceti-total-price-card {
  display: contents !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: inherit !important;
  background: transparent !important;
}

/* Stable markup contract emitted directly by Upload Artwork Twig. */
:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: min(100%, 354px);
  max-width: 354px;
  margin-right: auto !important;
  margin-left: auto !important;
  align-items: stretch;
  justify-content: center !important;
}

html body .deceti-theme #calculator_price_summary[data-deceti-upload-price-summary="1"],
html body .deceti-theme #calculator_price_summary[data-deceti-options-price-summary="1"] {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  justify-content: center !important;
}

html body .deceti-theme #calculator_price_summary[data-deceti-upload-price-summary="1"] > .deceti-price-card,
html body .deceti-theme #calculator_price_summary[data-deceti-options-price-summary="1"] > .deceti-price-card {
  width: 100% !important;
  max-width: none !important;
  height: 145px !important;
  min-height: 145px !important;
  padding: 12px !important;
  aspect-ratio: auto;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card {
  display: flex !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
  height: 145px !important;
  min-height: 145px;
  aspect-ratio: auto;
  margin: 0 !important;
  padding: var(--object-total-padding-block) 10px !important;
  flex-direction: column;
  align-items: center;
  justify-content: center !important;
  border: var(--object-total-border-width) solid var(--theme-border-soft);
  border-radius: var(--object-total-radius);
  background-color: var(--object-price-background);
  text-align: center;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card:last-child:nth-child(odd) {
  grid-column: 1 / -1;
  width: 100% !important;
  justify-self: center;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > :first-child,
:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > .deceti-total-price-card > :first-child {
  display: flex;
  min-height: calc(var(--object-price-heading-font-size) * 1.5);
  align-items: center;
  justify-content: center;
  line-height: 1.25;
  white-space: nowrap;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > .deceti-ui-price-value,
:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > .deceti-total-price-card > .deceti-ui-price-value,
:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > .deceti-ui-total-card-fill > .deceti-ui-price-value {
  padding-top: 10px;
}

/* Total uses the same value typography as every other price card. */
html body .deceti-theme :is(
  #calculator_price_summary[data-deceti-upload-price-summary="1"],
  #calculator_price_summary[data-deceti-options-price-summary="1"]
) > .deceti-price-card :is(.deceti-total-price-card, .deceti-ui-total-card-fill) .deceti-ui-price-value,
html body .deceti-theme :is(
  #calculator_price_summary[data-deceti-upload-price-summary="1"],
  #calculator_price_summary[data-deceti-options-price-summary="1"]
) > .deceti-price-card #result_total {
  font-size: var(--object-price-value-font-size) !important;
  font-weight: var(--object-price-value-font-weight) !important;
  line-height: 1.25 !important;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card:has(> :is(.deceti-total-price-card, .deceti-ui-total-card-fill)) {
  border-color: var(--object-total-border) !important;
  color: var(--object-total-text) !important;
  background-color: var(--object-total-background) !important;
}

:is(#calculator_price_summary[data-deceti-upload-price-summary="1"], #calculator_price_summary[data-deceti-options-price-summary="1"]) > .deceti-price-card > :is(.deceti-total-price-card, .deceti-ui-total-card-fill) {
  display: contents !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: inherit !important;
  background: transparent !important;
}

@media (max-width: 575px) {
  html body .deceti-theme :is(
    #calculator_price_summary[data-deceti-upload-price-summary="1"],
    #calculator_price_summary[data-deceti-options-price-summary="1"]
  ) {
    box-sizing: border-box;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    max-width: 100%;
  }

  html body .deceti-theme :is(
    #calculator_price_summary[data-deceti-upload-price-summary="1"],
    #calculator_price_summary[data-deceti-options-price-summary="1"]
  ) > .deceti-price-card,
  html body .deceti-theme :is(
    #calculator_price_summary[data-deceti-upload-price-summary="1"],
    #calculator_price_summary[data-deceti-options-price-summary="1"]
  ) > .deceti-price-card:last-child:nth-child(odd) {
    grid-column: auto;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    justify-self: stretch;
  }
}

@media (max-width: 767px) {
  .deceti-page-uploadartwork #get_quote {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 767px) {
  .deceti-page-pricingcalculator-options .deceti-ui-flex-2,
  .deceti-page-uploadartwork .deceti-ui-flex-2,
  .deceti-page-pricingcalculator-options .deceti-ui-flex-1,
  .deceti-page-uploadartwork .deceti-ui-flex-1 {
    flex: 1 1 100%;
  }
}

/* Phone geometry shared by Select Options and Upload Artwork. */
@media (max-width: 767px) {
  html body .deceti-theme :is(
    #calculator_price_summary[data-deceti-upload-price-summary="1"],
    #calculator_price_summary[data-deceti-options-price-summary="1"]
  ) {
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding: 0 !important;
    overflow: hidden;
  }

  html body .deceti-theme :is(
    #calculator_price_summary[data-deceti-upload-price-summary="1"],
    #calculator_price_summary[data-deceti-options-price-summary="1"]
  ) > .deceti-price-card {
    width: 100% !important;
    max-width: none !important;
    height: 118px !important;
    min-height: 118px !important;
    padding: 10px 6px !important;
  }

  /* This row also carries deceti-ui-option-row, whose desktop contract has
     three columns. Finishing is one full-width module on phone layouts. */
  html body #finishing_options_row {
    display: flex !important;
    grid-template-columns: none !important;
    width: auto !important;
    max-width: none !important;
  }

  html body #finishing_options_wrapper,
  html body #finishing_options_wrapper > *,
  html body #finishing_options_wrapper .deceti-finishing,
  html body #finishing_options_wrapper .finishing-module {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  html body #finishing_options_wrapper :is(.finishing-module-title, .finishing-card) {
    box-sizing: border-box;
    width: calc(100% - 16px) !important;
    max-width: none !important;
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-stickers.css */
/* Page owner: sticker calculator and sticker-options exceptions. No colors. */
.deceti-page-pricingcalculator-stickers,
.deceti-page-pricingcalculator-options-stickers {
  width: 100%;
}

.deceti-page-pricingcalculator-stickers .deceti-sticker-column {
  min-width: 0;
}

.deceti-page-pricingcalculator-stickers .deceti-sticker-gallery,
.deceti-page-pricingcalculator-stickers .deceti-sticker-gallery-image,
.deceti-page-pricingcalculator-stickers .deceti-sticker-section-full,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-section-full,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-summary-shell {
  width: 100%;
}

.deceti-page-pricingcalculator-stickers .deceti-sticker-total-header,
.deceti-page-pricingcalculator-options-stickers .deceti-sticker-total-header {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
}

@media (max-width: 767px) {
  .deceti-page-pricingcalculator-stickers .deceti-sticker-column {
    width: 100%;
  }

  .deceti-page-pricingcalculator-stickers .deceti-sticker-total-header,
  .deceti-page-pricingcalculator-options-stickers .deceti-sticker-total-header {
    grid-template-columns: 1fr;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/calculator-frame.css */
/* Page owner: frame calculator exceptions. No colors. */
.deceti-page-pricingcalculator-frame {
  margin-bottom: clamp(28px, 4vw, 52px);
}

.deceti-page-pricingcalculator-frame .deceti-frame-layout {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

.deceti-page-pricingcalculator-frame .deceti-frame-column {
  min-width: 0;
}

/* The frame gallery needs more horizontal room than the request form. */
@media (min-width: 992px) {
  .deceti-page-pricingcalculator-frame {
    position: static;
    left: auto;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    transform: none;
  }

  .deceti-page-pricingcalculator-frame .deceti-frame-layout > .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 560px);
    gap: clamp(16px, 2vw, 28px);
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .deceti-page-pricingcalculator-frame .deceti-frame-column:first-child,
  .deceti-page-pricingcalculator-frame .deceti-frame-column:last-child {
    width: 100%;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
  }
}

.deceti-page-pricingcalculator-frame .deceti-frame-gallery-panel,
.deceti-page-pricingcalculator-frame .deceti-frame-form-panel,
.deceti-page-pricingcalculator-frame .deceti-frame-card-list,
.deceti-page-pricingcalculator-frame .deceti-frame-pricebox,
.deceti-page-pricingcalculator-frame .deceti-frame-total {
  width: 100%;
}

.deceti-page-pricingcalculator-frame .deceti-frame-mainimage-wrap {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.deceti-page-pricingcalculator-frame .deceti-frame-main-spacing {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.deceti-page-pricingcalculator-frame .deceti-frame-mainimage {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.deceti-page-pricingcalculator-frame .deceti-frame-card-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: var(--theme-space-3);
  width: calc(100% - clamp(24px, 3vw, 48px));
  max-width: none;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0;
  padding-left: 0;
}

.deceti-page-pricingcalculator-frame .deceti-frame-card {
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 16px 14px !important;
  background-color: #fff !important;
  box-sizing: border-box;
}

.deceti-page-pricingcalculator-frame .deceti-frame-card-image-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 140px;
}

.deceti-page-pricingcalculator-frame .deceti-frame-card-image {
  width: 100%;
  max-width: 140px;
  max-height: 140px;
  object-fit: contain;
}

@media (min-width: 992px) {
  .deceti-page-pricingcalculator-frame .deceti-frame-card-list {
    grid-template-columns: repeat(4, minmax(120px, 1fr));
  }
}

@media (max-width: 991px) {
  .deceti-page-pricingcalculator-frame .deceti-frame-column {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
  }

  .deceti-page-pricingcalculator-frame .deceti-frame-card-list {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }
}

@media (max-width: 575px) {
  .deceti-page-pricingcalculator-frame .deceti-frame-card-list {
    grid-template-columns: 1fr;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/support-pages.css */
/* Page owner: non-calculator product workflow exceptions. No colors. */
.deceti-page-requestquote,
.deceti-page-imagelist,
.deceti-page-pricingtable,
.deceti-page-customproduct-options,
.deceti-page-product-customproduct-options-stickers,
.deceti-page-customproduct-options-stickers {
  width: 100%;
}

.deceti-page-requestquote .deceti-iframe,
.deceti-page-imagelist img,
.deceti-page-customproduct-options .deceti-options-proof-image {
  display: block;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

/* Request Quote uses the same two-panel canvas as Upload Artwork. */
.deceti-page-requestquote .deceti-requestquote-layout {
  display: grid;
  grid-template-columns: minmax(0, 55fr) minmax(340px, 42fr);
  gap: var(--page-entity-gap, clamp(12px, 1.5vw, 24px));
  align-items: stretch;
  width: 100%;
  min-width: 0;
  padding: var(--page-entity-padding, clamp(16px, 2vw, 30px));
  border: 1px solid var(--page-entity-border, var(--object-panel-border));
  border-radius: var(--page-entity-radius, var(--object-panel-radius, 16px));
  background: var(--page-entity-surface-muted, var(--object-page-background));
}

.deceti-page-requestquote :is(.deceti-requestquote-upload, .deceti-requestquote-form-panel) {
  float: none;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--page-entity-border, var(--object-panel-border));
  border-radius: var(--page-entity-radius, var(--object-panel-radius, 16px));
  background: var(--page-entity-surface, var(--object-panel-background));
}

.deceti-page-requestquote .deceti-requestquote-form-panel > form {
  width: 100%;
  min-height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.deceti-page-requestquote .deceti-iframe {
  width: 100%;
  height: var(--deceti-requestquote-deceti-iframe-h-desktop, 620px);
  border: 0;
  border-radius: var(--deceti-requestquote-deceti-radius-iframe, 12px);
}

.deceti-page-requestquote .deceti-requestquote-panel-title {
  margin: 0;
  padding: var(--theme-space-3, 12px) var(--theme-space-4, 16px);
  color: var(--object-calculator-title-text, var(--object-heading-text));
  background: var(--object-calculator-title-background, var(--object-panel-background));
  font-size: var(--object-section-title-size, 22px);
  font-weight: 700;
  text-align: center;
}

.deceti-page-requestquote :is(.deceti-requestquote-upload-body, .deceti-requestquote-form-body) {
  padding: var(--page-entity-padding, clamp(14px, 1.5vw, 24px));
}

@media (max-width: 736px) {
  .deceti-page-requestquote .deceti-requestquote-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .deceti-page-requestquote .deceti-iframe {
    height: var(--deceti-requestquote-deceti-iframe-h-mobile, 520px);
  }
}

.deceti-page-pricingtable .pricing-table {
  width: 100%;
  overflow-x: auto;
}

/* Shared success state for upload, request and contact confirmations. */
:is(
  .deceti-page-upload-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact
) #product_desc.deceti-confirmation-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: clamp(16px, 2vw, 28px);
  align-items: center;
  width: min(100%, 920px);
  min-height: clamp(220px, 32vw, 360px);
  margin: clamp(24px, 5vw, 70px) auto;
  padding: clamp(24px, 4vw, 56px) !important;
  border: 1px solid var(--page-entity-border, var(--object-panel-border));
  border-radius: var(--page-entity-radius, var(--object-panel-radius, 16px));
  color: var(--page-entity-text, var(--object-body-text));
  text-align: left !important;
  background: var(--page-entity-surface, var(--object-panel-background));
  box-shadow: var(--object-panel-shadow, 0 14px 36px rgb(15 23 42 / 8%));
}

:is(
  .deceti-page-upload-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact
) .deceti-confirmation-icon {
  display: grid;
  place-items: center;
  width: clamp(64px, 8vw, 92px);
  aspect-ratio: 1;
  border: 2px solid var(--page-entity-accent, var(--object-focus-border));
  border-radius: 50%;
  color: var(--object-button-primary-text, #fff);
  background: var(--page-entity-accent, var(--object-button-primary-background));
  font-size: clamp(30px, 4vw, 46px);
  font-weight: 800;
  line-height: 1;
}

:is(
  .deceti-page-upload-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact
) :is(.deceti-confirmation-title, .deceti-confirmation-message) {
  margin: 0;
}

:is(
  .deceti-page-upload-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact
) .deceti-confirmation-title {
  color: var(--page-entity-heading, var(--object-heading-text));
  font-family: var(--site-font-family, inherit);
  font-size: clamp(26px, 3vw, 42px);
  font-weight: 750;
  line-height: 1.15;
}

:is(
  .deceti-page-upload-confirmation,
  .deceti-page-submit-confirmation,
  .deceti-page-submit-confirmation-contact
) .deceti-confirmation-message {
  margin-top: 12px;
  color: var(--page-entity-text, var(--object-body-text));
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.6;
}

@media (max-width: 600px) {
  :is(
    .deceti-page-upload-confirmation,
    .deceti-page-submit-confirmation,
    .deceti-page-submit-confirmation-contact
  ) #product_desc.deceti-confirmation-card {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    text-align: center !important;
  }
}



/* source: catalog/view/stylesheet/deceti/theme-system/pages/checkout-shipping.css */
#modal-shipping .deceti-shipping-dialog {
  width: min(720px, calc(100% - 24px));
  max-width: 720px;
}

#modal-shipping .modal-content {
  overflow: hidden;
  border: 1px solid var(--object-control-border, #d4dbe4);
  border-radius: 18px;
  box-shadow: 0 18px 55px rgba(15, 31, 52, 0.18);
}

#modal-shipping .modal-header {
  padding: 18px 22px;
  border-bottom-color: var(--object-control-border, #d4dbe4);
}

#modal-shipping .modal-title {
  display: flex;
  gap: 10px;
  align-items: center;
  font-size: 20px;
  font-weight: 700;
}

#modal-shipping .modal-body {
  padding: 20px 22px 22px;
  min-height: 0 !important;
}

#modal-shipping .deceti-shipping-intro {
  margin: 0 0 18px;
  color: var(--object-body-text, #273142);
  font-size: 16px;
  line-height: 1.45;
}

#modal-shipping .deceti-shipping-carrier {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
}

#modal-shipping .deceti-shipping-carrier-heading {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

#modal-shipping .deceti-shipping-carrier-name {
  font-size: 19px;
  font-weight: 750;
}

#modal-shipping .deceti-shipping-package-count {
  padding: 5px 11px;
  border-radius: 999px;
  color: var(--object-action-primary-text, #fff);
  background: var(--object-action-primary-background, #15355f);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

#modal-shipping .deceti-shipping-notice {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 11px 13px;
  border: 1px solid #efd08b;
  border-radius: 10px;
  color: #624914;
  background: #fff8e8;
  font-size: 13px;
  line-height: 1.45;
}

#modal-shipping .deceti-shipping-carrier-heading + .deceti-shipping-notice,
#modal-shipping .deceti-shipping-notice + .deceti-shipping-rates {
  margin-top: 0;
}

#modal-shipping .deceti-shipping-notice .alert {
  display: contents;
}

#modal-shipping .deceti-shipping-rates {
  display: grid;
  gap: 9px;
}

#modal-shipping .deceti-shipping-rate {
  position: relative;
  min-height: 66px;
  margin: 0;
  padding: 0;
}

#modal-shipping .deceti-shipping-rate-input {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 16px;
  width: 18px;
  height: 18px;
  margin: 0;
  transform: translateY(-50%);
  cursor: pointer;
}

#modal-shipping .deceti-shipping-rate-card {
  display: grid;
  grid-template-columns: minmax(100px, auto) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  width: 100%;
  min-height: 66px;
  padding: 11px 16px 11px 48px;
  border: 1px solid var(--object-control-border, #d4dbe4);
  border-radius: 12px;
  color: var(--object-body-text, #18243a);
  background: var(--object-surface-card, #fff);
  cursor: pointer;
  transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

#modal-shipping .deceti-shipping-rate-card:hover {
  border-color: var(--object-selection-border, #49cfea);
  background: var(--object-selection-hover-background, rgba(73, 207, 234, 0.08));
}

#modal-shipping .deceti-shipping-rate-input:checked + .deceti-shipping-rate-card {
  border-color: var(--object-selection-selected-border, #18bde2);
  background: var(--object-selection-selected-background, rgba(73, 207, 234, 0.14));
  box-shadow: 0 0 0 2px var(--object-selection-selected-border, #18bde2);
}

#modal-shipping .deceti-shipping-rate-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

#modal-shipping .deceti-shipping-rate-name {
  color: inherit;
  font-size: 17px;
  font-weight: 750;
  line-height: 1.25;
}

#modal-shipping .deceti-shipping-rate-delivery {
  color: var(--object-muted-text, #667085);
  font-size: 13px;
  line-height: 1.35;
}

#modal-shipping .deceti-shipping-rate-price {
  color: var(--object-price-text, #0b2945);
  font-size: 21px;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
}

#modal-shipping .deceti-shipping-actions {
  margin-top: 18px;
}

#modal-shipping #button-shipping-method {
  min-width: 140px;
  min-height: 44px;
  border-radius: 999px;
}

@media (max-width: 575.98px) {
  #modal-shipping .modal-header,
  #modal-shipping .modal-body {
    padding-right: 16px;
    padding-left: 16px;
  }

  #modal-shipping .deceti-shipping-rate-card {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 12px;
  }

  #modal-shipping .deceti-shipping-rate-price {
    padding-top: 2px;
  }
}





/* source: catalog/view/stylesheet/deceti/theme-system/objects/dynamic-topblock.css */
/*
 * Shared structural owner for the CMS top content block.
 *
 * Product-page.css still contains the legacy unscoped banner implementation.
 * These selectors intentionally load after it and keep the same CMS markup
 * stable on home, product, regular and preview pages. Theme palettes continue
 * to own colors through the semantic variables below.
 */
.deceti-block-topblock,
.deceti-content-entity--topblock-v0 {
  --topblock-surface: var(--color-topblock-background, var(--color-primary-dark, #00334d));
  --topblock-content-background: var(--color-topblock-content-background, var(--color-primary, #02b5ff));
  --topblock-text: var(--object-body-text, var(--color-text, #172033));
  --topblock-heading: var(--object-heading-text, var(--color-heading, #07152d));
  --topblock-accent: var(--color-accent, #ffc32b);
  --topblock-banner-background: var(--color-action-upload, var(--color-primary, #d70b76));
  --topblock-banner-text: var(--color-text-inverse, #fff);
  --topblock-radius: var(--radius-banner, var(--object-panel-radius, 16px));
  --topblock-gap: var(--spacing-grid-gap, clamp(14px, 1.7vw, 28px));
  --topblock-padding: var(--spacing-panel, clamp(16px, 2vw, 30px));
  width: 100%;
  max-width: var(--content-max-width, 1600px);
  min-width: 0;
  margin: 0 auto;
  overflow: hidden;
  border-radius: var(--topblock-radius);
  color: var(--topblock-text);
  font-family: var(--font-banner-body-family, var(--font-body-family, inherit));
}

.deceti-block-topblock > .deceti-content-block,
.deceti-content-entity--topblock-v0 > .deceti-content-block {
  width: 100%;
  max-width: inherit;
  min-width: 0;
  margin: 0 auto !important;
}

.deceti-block-topblock .image-wrapper,
.deceti-content-entity--topblock-v0 .image-wrapper {
  display: block;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  align-items: stretch;
  overflow: hidden;
  border-radius: var(--topblock-radius);
  background: var(--topblock-surface);
}

.deceti-block-topblock .image-container,
.deceti-content-entity--topblock-v0 .image-container {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  min-width: 0;
  margin: 0;
}

.deceti-block-topblock .image-left,
.deceti-content-entity--topblock-v0 .image-left {
  display: block;
  width: 70%;
  flex: 1 1 70%;
  max-width: none;
  height: 100%;
  min-height: 320px;
  margin: 0;
  object-fit: cover;
}

.deceti-block-topblock .image-right-block,
.deceti-content-entity--topblock-v0 .image-right-block {
  display: flex;
  width: 35%;
  min-width: 280px;
  max-width: 592px;
  height: auto !important;
  margin: 0 0 0 -85px;
  padding: var(--topblock-padding);
  align-items: center;
  border-radius: 0;
  box-shadow: none;
  background: var(--topblock-content-background);
}

.deceti-block-topblock .message-overlay,
.deceti-content-entity--topblock-v0 .message-overlay {
  width: 100%;
  margin: 0;
}

.deceti-block-topblock .message-overlay .text-block,
.deceti-content-entity--topblock-v0 .message-overlay .text-block {
  padding-right: 0;
  padding-left: 0;
}

.deceti-block-topblock .message-overlay > div:first-child,
.deceti-content-entity--topblock-v0 .message-overlay > div:first-child {
  padding: 12px 16px;
  border-radius: calc(var(--topblock-radius) * .7);
  background: var(--topblock-accent) !important;
}

.deceti-block-topblock .message-overlay h1.text-block,
.deceti-content-entity--topblock-v0 .message-overlay h1.text-block {
  display: flex;
  gap: 12px;
  margin: 0;
  align-items: center;
  color: var(--topblock-heading) !important;
  font-size: var(--font-banner-display-size, clamp(20px, 1.1rem + .45vw, 28px)) !important;
  line-height: var(--font-banner-display-line-height, 1.25);
}

.deceti-block-topblock .message-overlay p.text-block,
.deceti-content-entity--topblock-v0 .message-overlay p.text-block {
  display: flex;
  gap: 10px;
  margin: 12px 0 0;
  align-items: center;
  color: var(--topblock-text);
  font-size: var(--font-banner-body-size, clamp(16px, .95rem + .16vw, 19px)) !important;
  line-height: var(--font-banner-body-line-height, 1.45);
}

.deceti-block-topblock .message-overlay .text-block img,
.deceti-content-entity--topblock-v0 .message-overlay .text-block img {
  flex: 0 0 auto;
  width: auto;
  max-width: 68px;
  height: auto;
  max-height: 70px;
  margin: 0;
  object-fit: contain;
}

.deceti-block-topblock .magenta-banner,
.deceti-content-entity--topblock-v0 .magenta-banner {
  display: grid;
  width: 100%;
  min-height: 52px;
  margin: 0;
  padding: 10px var(--topblock-padding);
  place-items: center;
  border-radius: 0 0 var(--topblock-radius) var(--topblock-radius);
  color: var(--topblock-banner-text);
  background: var(--topblock-banner-background);
  text-align: center;
}

@media (max-width: 915px) {
  .deceti-block-topblock .image-wrapper,
  .deceti-content-entity--topblock-v0 .image-wrapper {
    display: block;
  }

  .deceti-block-topblock .image-left,
  .deceti-content-entity--topblock-v0 .image-left {
    min-height: 220px;
    max-height: 420px;
    width: 100%;
    flex-basis: 100%;
  }

  .deceti-block-topblock .image-right-block,
  .deceti-content-entity--topblock-v0 .image-right-block {
    width: 100%;
    min-width: 0;
    max-width: none;
    height: auto !important;
    margin-left: 0;
  }

  .deceti-block-topblock .image-container,
  .deceti-content-entity--topblock-v0 .image-container {
    flex-direction: column;
  }
}





/* source: catalog/view/stylesheet/deceti/deceti-0/typography-contract.css */
/* DECETI-0 typography slots compiled by the future production builder. */
:root {
  --font-body-family: inherit;
  --font-heading-family: var(--font-body-family);
  --font-display-family: var(--font-heading-family);
  --font-navigation-family: var(--font-heading-family);
  --font-button-family: var(--font-body-family);
  --font-form-family: var(--font-body-family);
  --font-price-family: var(--font-heading-family);
  --font-content-body-family: var(--font-body-family);
  --font-content-heading-family: var(--font-heading-family);
  --font-banner-body-family: var(--font-body-family);
  --font-banner-display-family: var(--font-display-family);
  --font-banner-promo-family: var(--font-heading-family);

  --font-body-weight: 400;
  --font-heading-weight: 700;
  --font-button-weight: 500;
  --font-price-weight: 500;
  --font-body-line-height: 1.5;
  --font-heading-line-height: 1.2;
  --font-heading-1-size: 40px;
  --font-heading-2-size: 32px;
  --font-heading-3-size: 26px;
  --font-heading-4-size: 22px;
  --font-heading-5-size: 18px;
  --font-heading-6-size: 16px;
}

.deceti-theme {
  font-family: var(--font-body-family);
  font-weight: var(--font-body-weight);
  line-height: var(--font-body-line-height);
}

.deceti-theme :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-heading-family);
  font-weight: var(--font-heading-weight);
  line-height: var(--font-heading-line-height);
}

.deceti-theme h1 { font-size: var(--font-heading-1-size); }
.deceti-theme h2 { font-size: var(--font-heading-2-size); }
.deceti-theme h3 { font-size: var(--font-heading-3-size); }
.deceti-theme h4 { font-size: var(--font-heading-4-size); }
.deceti-theme h5 { font-size: var(--font-heading-5-size); }
.deceti-theme h6 { font-size: var(--font-heading-6-size); }

.deceti-theme :is(button, .btn, [type="button"], [type="submit"]) {
  font-family: var(--font-button-family);
  font-weight: var(--font-button-weight);
}

.deceti-theme :is(input, select, textarea) {
  font-family: var(--font-form-family);
}

.deceti-theme :is(#result_price, #result_frame, #result_shipping, #result_total, [data-deceti-price-value]) {
  font-family: var(--font-price-family);
  font-weight: var(--font-price-weight);
}



/* source: catalog/view/stylesheet/deceti/deceti-0/commerce-pages.css */
/* DECETI-0 commerce pages: templates, mini cart, cart and checkout. */
.deceti-commerce-page{width:min(100%,1440px);margin-inline:auto;padding:clamp(18px,3vw,44px);color:var(--object-body-text,var(--color-text,#08233b));font-family:var(--site-font-family,Arial,sans-serif)}
.deceti-commerce-page__title{margin:0 0 22px;color:var(--object-heading-text,var(--color-heading,#003b59))!important;font-family:var(--font-heading-family,inherit);font-size:clamp(28px,3vw,44px);font-weight:700;line-height:1.1}
.deceti-commerce-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;width:100%;margin:0 0 22px;padding:12px 16px;border:1px solid rgb(var(--theme-palette-brand-primary,2 181 255)/.28);border-radius:var(--object-card-radius,14px);background:var(--object-panel-background,#fff);box-shadow:0 5px 18px rgb(0 58 84/.06)}
.deceti-page-customproduct-templates{padding-top:24px}
.deceti-templates-preview>.deceti-commerce-breadcrumb{margin-top:24px}
.deceti-checkout-page{padding-top:24px}
.deceti-checkout-page>.deceti-commerce-breadcrumb{margin-top:0}
.deceti-commerce-breadcrumb a{color:var(--object-link-text,var(--color-primary-dark,#003b59));font-weight:700;text-decoration:none}.deceti-commerce-breadcrumb a[aria-current=page]{color:var(--object-body-text,#08233b)}
.deceti-commerce-breadcrumb__home{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff!important;background:var(--object-button-primary-background,var(--color-primary,#02b5ff))}.deceti-commerce-breadcrumb__separator{color:var(--object-muted-text,#718096);font-size:11px}
.deceti-template-preview-search{display:flex;align-items:center;gap:12px;min-height:52px;margin-bottom:22px;padding:0 18px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,999px);color:var(--object-muted-text,#64748b);background:#fff}
.deceti-template-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.deceti-template-preview-grid article{display:grid;gap:10px;padding:13px;border:1px solid var(--object-card-border,#d8e1e8);border-radius:var(--object-card-radius,14px);background:#fff}.deceti-template-preview-grid article>div{display:grid;place-items:center;aspect-ratio:4/3;border-radius:calc(var(--object-card-radius,14px) - 4px);color:var(--color-primary,#02b5ff);background:var(--object-muted-background,#edf4f7);font-size:38px}.deceti-template-preview-grid button{min-height:40px;border:0;border-radius:var(--object-button-radius,999px);color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59));font-weight:700}
#cart .dropdown-menu,.deceti-mini-cart-preview .dropdown-menu{width:min(440px,calc(100vw - 24px));padding:12px;border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,14px);background:#fff;box-shadow:0 18px 50px rgb(0 42 64/.18)}
#cart .dropdown-menu .table{margin:0;border-collapse:separate;border-spacing:0 8px}#cart .dropdown-menu .table td{padding:9px;border:0;vertical-align:middle;background:var(--object-muted-background,#f3f6f8)}#cart .dropdown-menu .table td:first-child{border-radius:10px 0 0 10px}#cart .dropdown-menu .table td:last-child{border-radius:0 10px 10px 0}#cart .dropdown-menu img{border:1px solid var(--object-card-border,#d7e0e7);border-radius:8px;background:#fff}#cart .dropdown-menu .btn-danger{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:var(--object-danger-background,#e52b32)}#cart .dropdown-menu .list-unstyled{margin:10px 0;padding:9px 12px;border-top:1px solid var(--object-card-border,#d7e0e7);border-bottom:1px solid var(--object-card-border,#d7e0e7)}
.deceti-mini-cart-preview{display:grid;place-items:center;min-height:560px;padding:30px;background:var(--object-page-background,#eef2f4)}.deceti-mini-cart-preview .dropdown-menu{position:static!important;display:block!important}
.deceti-mini-cart-item{display:grid;grid-template-columns:72px minmax(0,1fr) 38px;gap:12px;align-items:center;padding:12px;border-radius:12px;background:var(--object-muted-background,#f3f6f8)}.deceti-mini-cart-item__image{display:grid;place-items:center;aspect-ratio:1;border:1px solid var(--object-card-border,#d7e0e7);border-radius:9px;background:#fff;color:var(--color-primary,#02b5ff);font-size:23px}.deceti-mini-cart-item>div:nth-child(2){display:grid;gap:4px}.deceti-mini-cart-item small{color:var(--object-muted-text,#64748b)}.deceti-mini-cart-item>button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;color:#fff;background:var(--object-danger-background,#e52b32)}
.deceti-mini-cart-totals{margin:12px 0}.deceti-mini-cart-totals>div{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--object-card-border,#d7e0e7)}.deceti-mini-cart-totals dt{font-weight:700}.deceti-mini-cart-totals dd{margin:0}
.deceti-mini-cart-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.deceti-mini-cart-actions a,#cart .dropdown-menu .text-end a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:var(--object-button-radius,999px);color:#fff!important;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59));font-weight:700;text-decoration:none}.deceti-mini-cart-actions a:last-child,#cart .dropdown-menu .text-end a:last-child{background:var(--object-button-accent-background,var(--color-primary,#02b5ff))}
.deceti-cart-surface,.deceti-checkout-page #content>div,.deceti-checkout-preview article,.deceti-checkout-preview aside{border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-panel-radius,16px);background:var(--object-panel-background,#fff);box-shadow:0 8px 28px rgb(0 48 71/.07)}
.deceti-cart-surface{overflow:hidden;padding:clamp(12px,2vw,24px)}.deceti-cart-preview-item{display:grid;grid-template-columns:96px minmax(0,1fr) 100px auto 40px;gap:18px;align-items:center;padding:16px;border-bottom:1px solid var(--object-card-border,#d7e0e7)}.deceti-cart-preview-item>div{display:grid;place-items:center;aspect-ratio:1;border-radius:10px;background:var(--object-muted-background,#eef3f5);font-size:28px}.deceti-cart-preview-item h2{margin:0 0 6px;font-size:21px}.deceti-cart-preview-item p{margin:0;color:var(--object-muted-text,#64748b)}.deceti-cart-preview-item input{width:76px;min-height:42px;margin-top:5px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:10px;text-align:center}.deceti-cart-preview-item>button{border:0;color:var(--object-danger-background,#d9232e);background:transparent}.deceti-cart-preview-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-left:auto;padding:20px 0 0;max-width:520px}.deceti-cart-preview-summary span{display:flex;justify-content:space-between;grid-column:1/-1}.deceti-cart-preview-summary a,.deceti-cart-preview-summary button{display:flex;align-items:center;justify-content:center;min-height:46px;border:0;border-radius:var(--object-button-radius,999px);font-weight:700}.deceti-cart-preview-summary a{border:1px solid var(--object-button-primary-background,#003b59);color:var(--object-button-primary-background,#003b59)}.deceti-cart-preview-summary button{color:#fff;background:var(--object-button-primary-background,#003b59)}
.deceti-checkout-preview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);gap:20px}.deceti-checkout-preview>section{display:grid;gap:14px}.deceti-checkout-preview article,.deceti-checkout-preview aside{padding:20px}.deceti-checkout-preview h2{margin:0 0 16px;font-size:20px}.deceti-checkout-preview h2 span{display:inline-grid;place-items:center;width:31px;height:31px;margin-right:8px;border-radius:50%;color:#fff;background:var(--color-primary,#02b5ff)}.deceti-preview-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.deceti-preview-fields i{min-height:48px;padding:14px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,999px);color:var(--object-muted-text,#64748b);font-style:normal}.deceti-checkout-preview aside p,.deceti-checkout-preview aside>strong{display:flex;justify-content:space-between}.deceti-checkout-preview aside button{width:100%;min-height:48px;margin-top:20px;border:0;border-radius:var(--object-button-radius,999px);color:#fff;background:var(--object-button-primary-background,#003b59);font-weight:700}
.deceti-opencart-checkout-preview>section{display:grid;align-content:start;gap:14px}.deceti-opencart-checkout-preview article,.deceti-opencart-checkout-preview aside{margin:0}.deceti-checkout-login-note{margin:-7px 0 14px;color:var(--object-muted-text,#64748b)}.deceti-checkout-login-note a{color:var(--object-link-text,var(--color-primary,#02b5ff));font-weight:700}.deceti-checkout-method-control{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:54px;padding:7px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,999px);background:var(--object-control-background,#fff)}.deceti-checkout-method-control>i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59))}.deceti-checkout-method-control button{min-height:38px;padding:0 18px;border:0;border-radius:var(--object-button-radius,999px);color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59));font-weight:700}
#checkout-cart .table,#checkout-checkout .card,#checkout-checkout .accordion-item{border-color:var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,14px);background:var(--object-panel-background,#fff)}
#checkout-cart .btn-primary,#checkout-checkout .btn-primary{border-color:transparent;border-radius:var(--object-button-radius,999px);background:var(--object-button-primary-background,var(--color-primary-dark,#003b59));font-weight:700}

/* Real OpenCart shopping cart list returned by checkout/cart.list. */
#checkout-cart,#checkout-cart input,#checkout-cart select,#checkout-cart button{font-family:var(--site-font-family,Arial,sans-serif)}
#checkout-cart .deceti-cart-surface{padding:clamp(14px,2vw,24px);overflow:visible;border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-panel-radius,18px);background:var(--object-page-background,#eef2f4)}
#checkout-cart #shopping-cart>.table-responsive,#checkout-cart #shopping-cart form>.table-responsive{overflow:visible}
#checkout-cart #shopping-cart table.table{width:100%;margin:0;border:0;border-collapse:separate;border-spacing:0 14px;background:transparent}
#checkout-cart #shopping-cart table.table>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#checkout-cart #shopping-cart table.table>tbody>tr{filter:drop-shadow(0 8px 18px rgb(0 48 71/.07))}
#checkout-cart #shopping-cart table.table>tbody>tr>td{padding:18px 14px;border-width:1px 0;border-style:solid;border-color:var(--object-card-border,#d7e0e7);vertical-align:middle;background:var(--object-panel-background,#fff)}
#checkout-cart #shopping-cart table.table>tbody>tr>td:first-child{border-left-width:1px;border-radius:var(--object-card-radius,16px) 0 0 var(--object-card-radius,16px)}
#checkout-cart #shopping-cart table.table>tbody>tr>td:last-child{border-right-width:1px;border-radius:0 var(--object-card-radius,16px) var(--object-card-radius,16px) 0}
#checkout-cart #shopping-cart table.table>tbody>tr>td.text-center:first-child{width:210px;min-width:210px}
#checkout-cart #shopping-cart table.table img,
#checkout-cart #shopping-cart .img-thumbnail{display:block;width:180px!important;max-width:180px!important;height:145px!important;margin:auto;padding:6px;border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,14px);object-fit:contain;background:#fff}
#checkout-cart #shopping-cart table.table td>a{color:var(--object-link-text,var(--color-primary-dark,#003b59));font-size:18px;font-weight:700;text-decoration:none}
#checkout-cart #shopping-cart table.table .list-unstyled{display:grid;gap:4px;margin:8px 0 0!important;color:var(--object-muted-text,#64748b);font-size:14px}
#checkout-cart #shopping-cart table.table .input-group{flex-wrap:nowrap;width:min(190px,100%);padding:4px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,999px);background:#fff}
#checkout-cart #shopping-cart table.table .input-group .form-control{min-width:58px;min-height:40px;border:0;border-radius:999px;text-align:center;box-shadow:none}
#checkout-cart #shopping-cart table.table .input-group .btn{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:0;border-radius:50%}
#checkout-cart #shopping-cart table.table .btn-primary{color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59))}
#checkout-cart #shopping-cart table.table .btn-danger{color:#fff!important;background:#dc3545!important;opacity:1!important;box-shadow:0 5px 12px rgb(220 53 69/.28)}
#checkout-cart #shopping-cart table.table .btn-danger:hover,#checkout-cart #shopping-cart table.table .btn-danger:focus{color:#fff!important;background:#b92332!important;box-shadow:0 6px 15px rgb(185 35 50/.34)}
#checkout-cart #shopping-cart table.table .btn-danger i,#checkout-cart #shopping-cart table.table .btn-danger svg{color:#fff!important;opacity:1!important}
#checkout-cart #shopping-cart table.table .btn-deceti-edit{color:#fff;background:var(--object-button-accent-background,var(--color-primary,#02b5ff))}
#checkout-cart #shopping-cart table.table td.text-end{color:var(--object-heading-text,var(--color-heading,#003b59));font-size:17px;font-weight:700}
#checkout-cart #shopping-cart table.table>tfoot>tr>td{padding:9px 14px;border:0;background:transparent;font-size:16px}
#checkout-cart #shopping-cart table.table>tfoot>tr:last-child>td{padding-top:14px;color:var(--object-heading-text,var(--color-heading,#003b59));font-size:22px;font-weight:800}
#checkout-cart #shopping-cart .d-flex.justify-content-between,#checkout-cart #shopping-cart .text-end{gap:10px}
#checkout-cart #shopping-cart .d-flex.justify-content-between>.btn,#checkout-cart #shopping-cart>.btn,#checkout-cart #shopping-cart .text-end>.btn{min-height:46px;padding-inline:22px;border-radius:var(--object-button-radius,999px);font-weight:700}
#checkout-cart.deceti-cart-page--designs #shopping-cart h1,
#checkout-cart.deceti-cart-page--designs #shopping-cart a[href*="route=checkout/checkout"],
#checkout-cart.deceti-cart-page--designs #shopping-cart a[href*="checkout/checkout"],
#checkout-cart.deceti-cart-page--designs #shopping-cart .d-flex.justify-content-between>.btn-primary:last-child,
#checkout-cart.deceti-cart-page--designs #shopping-cart .text-end>.btn-primary:last-child{display:none!important}
#checkout-cart.deceti-cart-page--designs #shopping-cart [class*="accordion"],
#checkout-cart.deceti-cart-page--designs #shopping-cart .card:has(a[href*="shipping"]),
#checkout-cart.deceti-cart-page--designs #shopping-cart .card:has(a[href*="coupon"]){display:none!important}

/* Real OpenCart checkout fragments. These selectors survive every AJAX refresh. */
#checkout-checkout,#checkout-checkout input,#checkout-checkout select,#checkout-checkout textarea,#checkout-checkout button{font-family:var(--site-font-family,Arial,sans-serif)}
#checkout-checkout #content>.row{align-items:start;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#checkout-checkout #checkout-register,
#checkout-checkout #checkout-payment-address,
#checkout-checkout #checkout-shipping-address,
#checkout-checkout #checkout-shipping-method,
#checkout-checkout #checkout-payment-method,
#checkout-checkout #checkout-confirm{align-self:start;min-height:0;height:auto;margin:0 0 16px;padding:clamp(16px,2vw,22px);border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-panel-radius,16px);background:var(--object-panel-background,#fff);box-shadow:0 8px 28px rgb(0 48 71/.07)}
#checkout-checkout fieldset{min-width:0;margin:0;padding:0;border:0}
#checkout-checkout legend{display:flex;align-items:center;width:100%;margin:0 0 16px;padding:0 0 12px;border-bottom:1px solid var(--object-card-border,#d7e0e7);color:var(--object-heading-text,var(--color-heading,#003b59));font-size:clamp(19px,1.5vw,23px);font-weight:700;line-height:1.2}
#checkout-checkout #checkout-register>form>fieldset>legend::before,
#checkout-checkout #checkout-register #shipping-address>legend::before,
#checkout-checkout #checkout-register fieldset:has(#input-payment-address-1)>legend::before,
#checkout-checkout #checkout-shipping-address>fieldset>legend::before,
#checkout-checkout #checkout-shipping-method legend::before,
#checkout-checkout #checkout-payment-method legend::before{display:inline-grid;place-items:center;flex:0 0 31px;width:31px;height:31px;margin-right:10px;border-radius:50%;color:#fff;background:var(--object-button-accent-background,var(--color-primary,#02b5ff));font-size:16px;font-weight:800}
#checkout-checkout #checkout-register>form>fieldset>legend::before{content:"1"}
#checkout-checkout #checkout-register #shipping-address>legend::before,
#checkout-checkout #checkout-register fieldset:has(#input-payment-address-1)>legend::before,
#checkout-checkout #checkout-shipping-address>fieldset>legend::before{content:"2"}
#checkout-checkout #checkout-shipping-method legend::before{content:"3"}
#checkout-checkout #checkout-payment-method legend::before{content:"4"}
#checkout-checkout .form-label,#checkout-checkout .form-check-label{color:var(--object-body-text,var(--color-text,#08233b));font-weight:600}
#checkout-checkout .form-control,#checkout-checkout .form-select,#checkout-checkout .input-group-text{min-height:48px;border-color:var(--object-control-border,#cbd5e1);color:var(--object-control-text,var(--color-text,#08233b));background-color:var(--object-control-background,#fff)}
#checkout-checkout .form-control,#checkout-checkout .form-select{border-radius:var(--object-control-radius,999px);padding-inline:15px}
#checkout-checkout textarea.form-control{min-height:102px;border-radius:var(--object-card-radius,14px)}
#checkout-checkout .input-group{flex-wrap:nowrap;padding:4px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,999px);background:var(--object-control-background,#fff)}
#checkout-checkout .input-group>.input-group-text,#checkout-checkout .input-group>.form-control,#checkout-checkout .input-group>.btn{border:0}
#checkout-checkout .input-group>.input-group-text{display:grid;place-items:center;flex:0 0 40px;padding:0;border-radius:50%;color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59))}
#checkout-checkout #checkout-shipping-method .input-group>.input-group-text,
#checkout-checkout #checkout-payment-method .input-group>.input-group-text{display:grid!important;place-items:center!important;align-self:center;flex:0 0 46px;width:46px;height:46px;min-height:46px;margin:0;padding:0;border:0;border-radius:50%;color:#fff;background:var(--object-button-primary-background,var(--color-primary-dark,#003b59));font-size:18px;line-height:1}
#checkout-checkout #checkout-shipping-method .input-group>.input-group-text i,
#checkout-checkout #checkout-payment-method .input-group>.input-group-text i{display:grid;place-items:center;width:22px;height:22px;margin:0;color:inherit;font-size:18px;line-height:1}
#checkout-checkout #checkout-shipping-method .input-group>.input-group-text svg,
#checkout-checkout #checkout-payment-method .input-group>.input-group-text svg{display:block;width:20px;height:20px;margin:0;fill:currentColor}
#checkout-checkout .input-group>.form-control{min-width:0;box-shadow:none}
#checkout-checkout .input-group>.btn{align-self:center;min-height:40px;padding-inline:18px;border-radius:var(--object-button-radius,999px)}
#checkout-checkout #checkout-confirm .table-responsive{border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,14px);overflow:hidden}
#checkout-checkout #checkout-confirm .table{margin:0;border:0}
#checkout-checkout #checkout-confirm .table th{color:var(--object-heading-text,var(--color-heading,#003b59));background:var(--object-muted-background,#eef3f5)}
#checkout-checkout #checkout-confirm .table td,#checkout-checkout #checkout-confirm .table th{padding:12px;border-color:var(--object-card-border,#d7e0e7)}
#checkout-checkout #checkout-payment .btn-primary{min-width:180px;min-height:48px}

/* Checkout product summary: the quantity is metadata, never part of the product name. */
#checkout-checkout{font-size:15px;line-height:1.45}
#checkout-checkout .form-label,#checkout-checkout .form-check-label{font-size:14px}
#checkout-checkout .form-check{font-size:14px}
#checkout-checkout .deceti-checkout-order-summary{display:grid;align-content:start;gap:14px;min-height:0;height:auto;margin:0;padding:0}
#checkout-checkout .deceti-checkout-order-summary__title{margin:0;color:var(--object-heading-text,var(--color-heading,#003b59));font-size:22px;font-weight:800}
#checkout-checkout .deceti-checkout-order-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(86px,auto);gap:12px;align-items:center;padding:0 12px 7px 118px;border-bottom:1px solid var(--object-card-border,#d7e0e7);color:var(--object-muted-text,#64748b);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
#checkout-checkout .deceti-checkout-order-columns span:last-child{text-align:right}
#checkout-checkout .deceti-checkout-order-items{display:grid;gap:10px}
#checkout-checkout .deceti-checkout-order-item{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(92px,auto);gap:12px;align-items:center;padding:12px;border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,14px);background:var(--object-panel-background,#fff)}
#checkout-checkout .deceti-checkout-order-item__image{display:grid;place-items:center;width:92px;height:76px;overflow:hidden;border:1px solid var(--object-card-border,#d7e0e7);border-radius:10px;color:var(--object-link-text,var(--color-primary,#02b5ff));background:var(--object-muted-background,#eef3f5);font-size:25px}
#checkout-checkout .deceti-checkout-order-item__image img{display:block;width:100%;height:100%;padding:4px;object-fit:contain;background:#fff}
#checkout-checkout .deceti-checkout-order-item__heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
#checkout-checkout .deceti-checkout-order-item__heading a{color:var(--object-heading-text,var(--color-heading,#003b59));font-size:15px;font-weight:750;line-height:1.25;text-decoration:none}
#checkout-checkout .deceti-checkout-order-item__purchase{display:grid;justify-items:end;gap:7px;align-content:center}
#checkout-checkout .deceti-checkout-order-item__quantity{display:grid;place-items:center;min-width:58px;min-height:34px;padding:4px 9px;border:1px solid var(--object-control-border,#cbd5e1);border-radius:var(--object-control-radius,12px);color:var(--object-heading-text,var(--color-heading,#003b59));background:var(--object-muted-background,#eef3f5);font-size:14px;font-weight:800;white-space:nowrap}
#checkout-checkout .deceti-checkout-order-item__options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px;margin:7px 0 0;padding:0;list-style:none;color:var(--object-muted-text,#64748b);font-size:13px}
#checkout-checkout .deceti-checkout-order-item__options span{color:var(--object-body-text,var(--color-text,#08233b));font-weight:700}
#checkout-checkout .deceti-checkout-order-item__price{color:var(--object-heading-text,var(--color-heading,#003b59));font-size:16px;white-space:nowrap}
#checkout-checkout .deceti-checkout-order-totals{display:grid;margin:0;padding:10px 14px;border-radius:var(--object-card-radius,14px);background:var(--object-muted-background,#eef3f5)}
#checkout-checkout .deceti-checkout-order-totals>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid var(--object-card-border,#d7e0e7)}
#checkout-checkout .deceti-checkout-order-totals>div:last-child{border:0;color:var(--object-heading-text,var(--color-heading,#003b59));font-size:18px}
#checkout-checkout .deceti-checkout-order-totals dt{font-weight:800}
#checkout-checkout .deceti-checkout-order-totals dd{margin:0;font-weight:700}
@media(max-width:900px){.deceti-template-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deceti-checkout-preview{grid-template-columns:1fr}.deceti-cart-preview-item{grid-template-columns:72px minmax(0,1fr) auto}.deceti-cart-preview-item label{grid-column:2}.deceti-cart-preview-item>button{grid-column:3;grid-row:1}}
@media(max-width:700px){#checkout-cart #shopping-cart table.table,#checkout-cart #shopping-cart table.table>tbody,#checkout-cart #shopping-cart table.table>tbody>tr,#checkout-cart #shopping-cart table.table>tbody>tr>td{display:block;width:100%!important}#checkout-cart #shopping-cart table.table>tbody>tr{margin-bottom:16px;border:1px solid var(--object-card-border,#d7e0e7);border-radius:var(--object-card-radius,16px);overflow:hidden;background:#fff}#checkout-cart #shopping-cart table.table>tbody>tr>td{padding:10px 16px;border:0!important;border-radius:0!important;text-align:left!important}#checkout-cart #shopping-cart table.table>tbody>tr>td:first-child{padding-top:16px}#checkout-cart #shopping-cart table.table>tbody>tr>td:last-child{padding-bottom:16px}#checkout-cart #shopping-cart table.table img,#checkout-cart #shopping-cart .img-thumbnail{width:100%!important;max-width:260px!important;height:190px!important}#checkout-cart #shopping-cart table.table .input-group{margin-left:0}}
@media(max-width:700px){#checkout-checkout .deceti-checkout-order-columns{display:none}#checkout-checkout .deceti-checkout-order-item{grid-template-columns:74px minmax(0,1fr) auto;gap:10px}#checkout-checkout .deceti-checkout-order-item__image{width:74px;height:68px}#checkout-checkout .deceti-checkout-order-item__options{grid-template-columns:1fr}#checkout-checkout .deceti-checkout-order-item__purchase{grid-column:3;grid-row:1/3;align-self:center}}
@media(max-width:520px){.deceti-commerce-page{padding:14px 8px}.deceti-template-preview-grid{grid-template-columns:1fr}.deceti-mini-cart-actions,.deceti-cart-preview-summary,.deceti-preview-fields{grid-template-columns:1fr}.deceti-cart-preview-summary a,.deceti-cart-preview-summary button{grid-column:1/-1}}



/* source: catalog/view/stylesheet/deceti/deceti-0/product-faq.css */
.deceti-block-faq.deceti-dynamic-block,
.deceti-block-faq.deceti-dynamic-block.deceti-block-customized {
  width: 100%;
  max-width: none;
  padding: 0;
}

.deceti-product-faq {
  --object-faq-border: rgb(var(--theme-palette-brand-primary, 2 181 255) / .52);
  --object-faq-background: rgb(var(--theme-palette-brand-primary, 2 181 255) / .07);
  --object-faq-card-background: rgb(255 255 255 / .88);
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  padding: var(--theme-space-4, 16px) 0;
}

.deceti-product-faq__inner {
  width: 100%;
  max-width: none;
  margin-inline: auto;
  padding: clamp(18px, 3vw, 32px);
  border: 2px solid var(--object-faq-border);
  border-radius: var(--theme-radius-card, 16px);
  background: var(--object-faq-background);
}

.deceti-product-faq__heading {
  margin: 0 0 20px;
  text-align: center;
  color: var(--object-heading-text, var(--color-heading, #073b55));
}

.deceti-product-faq__items {
  display: grid;
  gap: 10px;
}

.deceti-product-faq__item {
  overflow: hidden;
  border: 1px solid var(--object-faq-border);
  border-radius: var(--theme-radius-control, 12px);
  background: var(--object-faq-card-background);
}

.deceti-product-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  color: var(--object-heading-text, var(--color-heading));
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}

.deceti-product-faq__question::-webkit-details-marker { display: none; }
.deceti-product-faq__item[open] .deceti-product-faq__question i { transform: rotate(45deg); }
.deceti-product-faq__question i { color: var(--theme-brand-primary, var(--color-primary)); transition: transform .18s ease; }

.deceti-product-faq__answer {
  padding: 0 18px 18px;
  color: var(--object-body-text, var(--color-text));
}

.deceti-product-faq__answer > :last-child { margin-bottom: 0; }



/* DECETI-0 keeps its original action identity independently from an editable
   global palette: Design Online = navy, Upload Artwork = magenta,
   Choose a Template = green. Raw family palette slots are intentionally used
   because the generated semantic design CSS is loaded after this package. */
.deceti-theme.deceti-0 :is(#start_design, .btn-designonline, .btn-custom-color-startdesign, .btn-custom-color-designonline) {
  border-color: rgb(var(--theme-palette-action-design, 0 51 77)) !important;
  background-color: rgb(var(--theme-palette-action-design, 0 51 77)) !important;
  background-image: none !important;
  color: #ffffff !important;
}

.deceti-theme.deceti-0 :is(#upload_artwork, .btn-uploadartwork, .btn-custom-color-uploadartwork) {
  border-color: rgb(var(--theme-palette-action-upload, 212 11 120)) !important;
  background-color: rgb(var(--theme-palette-action-upload, 212 11 120)) !important;
  background-image: none !important;
  color: #ffffff !important;
}

.deceti-theme.deceti-0 :is(#choose_template, .btn-template, .btn-custom-color-templates) {
  border-color: rgb(var(--theme-palette-action-template, 47 128 0)) !important;
  background-color: rgb(var(--theme-palette-action-template, 47 128 0)) !important;
  background-image: none !important;
  color: #ffffff !important;
}

.deceti-theme.deceti-0 :is(#start_design, .btn-designonline, .btn-custom-color-startdesign, .btn-custom-color-designonline):is(:hover, :focus) {
  border-color: rgb(var(--theme-palette-action-design-hover, 0 197 240)) !important;
  background-color: rgb(var(--theme-palette-action-design-hover, 0 197 240)) !important;
}

.deceti-theme.deceti-0 :is(#upload_artwork, .btn-uploadartwork, .btn-custom-color-uploadartwork):is(:hover, :focus) {
  border-color: rgb(var(--theme-palette-action-upload-hover, 253 31 154)) !important;
  background-color: rgb(var(--theme-palette-action-upload-hover, 253 31 154)) !important;
}

.deceti-theme.deceti-0 :is(#choose_template, .btn-template, .btn-custom-color-templates):is(:hover, :focus) {
  border-color: rgb(var(--theme-palette-action-template-hover, 69 198 3)) !important;
  background-color: rgb(var(--theme-palette-action-template-hover, 69 198 3)) !important;
}

/* Final deceti-0 shipping message contract. This intentionally follows every
   shared theme import so activation.css cannot restore the old accent color. */
.deceti-theme.deceti-0 #shipping_promo_wrap,
.deceti-theme.deceti-0 .deceti-ui-shipping-message-short,
.deceti-theme.deceti-0 .deceti-ui-shipping-message-long,
.deceti-theme.deceti-0 .deceti-sticker-free-shipping {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  border-color: var(--object-total-border, #67dff5) !important;
  color: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
  background: var(--deceti-color-surface, #ffffff) !important;
}

.deceti-theme.deceti-0 #shipping_promo_wrap *,
.deceti-theme.deceti-0 .deceti-ui-shipping-message-short *,
.deceti-theme.deceti-0 .deceti-ui-shipping-message-long *,
.deceti-theme.deceti-0 .deceti-sticker-free-shipping * {
  color: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
}

/* Calculator section headings use the same dark surface as primary buttons. */
.deceti-theme.deceti-0 .calculator:has(> .blue-top-line),
.deceti-theme.deceti-0 .calculator:has(.blue-top-line:first-child) {
  overflow: hidden;
  border-color: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
}

.deceti-theme.deceti-0 .blue-top-line {
  box-sizing: border-box;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: var(--object-calculator-title-background, var(--deceti-color-accent-strong, #1ad4fd)) !important;
  background-image: none !important;
}

.deceti-theme.deceti-0 .calculator-vertical > .deceti-calculator-top-heading {
  display: flex;
  width: 100%;
  min-height: 50px;
  margin: 0;
  padding: 8px 16px;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  text-align: center;
}

.deceti-theme.deceti-0 #finishing_options_wrapper .finishing-module-title,
.deceti-theme.deceti-0 #box_options_selector_block .finishing-module-title,
.deceti-theme.deceti-0 #box_options_selector_block .deceti-calculated-option-title,
.deceti-theme.deceti-0 #box_options_selector_block .deceti-box-options-heading {
  color: #ffffff !important;
  background: var(--object-button-primary-background, var(--deceti-color-primary-dark, #00334d)) !important;
  background-image: none !important;
}

.deceti-theme.deceti-0 #finishing_options_wrapper .finishing-module-title *,
.deceti-theme.deceti-0 #box_options_selector_block .finishing-module-title *,
.deceti-theme.deceti-0 #box_options_selector_block .deceti-calculated-option-title *,
.deceti-theme.deceti-0 #box_options_selector_block .deceti-box-options-heading * {
  color: #ffffff !important;
}

/* Sticker finishing headings use the real dark-blue palette token. The
   finishing skin is loaded separately, so keep this selector explicit. */
.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) :is(
  #finishing_dynamic_wrapper,
  #finishing_options_wrapper,
  [data-deceti-finishing-skin]
) :is(
  .finishing-module-title,
  .finishing-header
) {
  color: #ffffff !important;
  background-color: var(--deceti-color-primary-dark, #00334d) !important;
  background-image: none !important;
  font-family: var(--font-body-family, inherit) !important;
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) :is(
  #finishing_dynamic_wrapper,
  #finishing_options_wrapper,
  [data-deceti-finishing-skin]
) :is(
  .finishing-module-title,
  .finishing-header
) * {
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-style: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: inherit !important;
}

/* One finishing-card border contract for every deceti-0 calculator and
   workflow page. This targets the inner option cards, not the outer shell. */
.deceti-theme.deceti-0 :is(
  .deceti-page-pricingcalculator-h,
  .deceti-page-pricingcalculator-v,
  .deceti-page-pricingcalculator-js,
  .deceti-page-pricingcalculator-base,
  .deceti-page-pricingcalculator-legacy,
  .deceti-page-pricingcalculator-options,
  .deceti-page-uploadartwork,
  .deceti-page-pricingcalculator-stickers,
  .deceti-page-pricingcalculator-options-stickers
) :is(
  #finishing_options_wrapper,
  #finishing_dynamic_wrapper,
  [data-deceti-finishing-skin]
) .finishing-card {
  box-sizing: border-box;
  border: 1px solid var(--deceti-color-primary-dark, #00334d) !important;
  box-shadow: none !important;
}

/* Artwork Approval: retain the dark outer card and use the standard
   light-blue inner outline for the summary panel. */
.deceti-theme.deceti-0 .deceti-page-customproduct-artworkapproval
.product-options-cart > .deceti-approval-summary {
  border: 1px solid var(--object-total-border, #67dff5) !important;
  border-radius: 15px !important;
  box-shadow: none !important;
}

/* Upload Artwork and Select Options: only Total Price keeps a visible border. */
.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
> .deceti-price-card:not(:has(> .deceti-total-price-card)) {
  border-color: transparent !important;
}

/* Select Options workflow contract. Both the regular and sticker pages follow
   the Upload Artwork geometry: 55/42 columns, dark outer cards and a thicker
   light-blue inner canvas. Keep this after every imported package so older
   page-entities/theme-overrides rules cannot restore the legacy dimensions. */
.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) {
  --deceti-workflow-outer-border: var(--deceti-color-primary-dark, #00334d);
  --deceti-workflow-inner-border: var(--object-total-border, #67dff5);
  --deceti-workflow-radius: 15px;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .deceti-options-description {
  display: grid !important;
  grid-template-columns: minmax(0, 55fr) minmax(0, 42fr);
  column-gap: 3%;
  align-items: start;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .deceti-options-description > :is(.deceti-options-cart, #product-options-cart) {
  box-sizing: border-box;
  float: none !important;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  border: 1px solid var(--deceti-workflow-outer-border) !important;
  border-radius: var(--deceti-workflow-radius) !important;
  background: var(--deceti-color-surface, #ffffff) !important;
  box-shadow: none !important;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .deceti-options-cart {
  padding: 40px 24px 24px !important;
}

/* Both columns use the same canvas inset.  The calculator column previously
   inherited the compact product-options-cart padding, so its blue outline
   started higher than the preview outline on the left. */
.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .deceti-options-description > #product-options-cart {
  padding: 40px 24px 24px !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers {
  margin-top: 0 !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers #product-calc {
  padding: clamp(28px, 3vw, 52px) !important;
}

/* Keep the dark outer card, but use the standard light-blue inner outline. */
.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .product-image-span,
.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) #product-options-cart > :is(
  .deceti-page-pricingcalculator-options,
  .deceti-page-pricingcalculator-options-stickers
),
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers .product-image-span,
.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers {
  box-sizing: border-box;
  border: 3px solid var(--deceti-workflow-inner-border, var(--object-total-border, #67dff5)) !important;
  border-radius: 15px !important;
}

.deceti-theme.deceti-0 :is(
  .deceti-page-customproduct-options,
  .deceti-page-customproduct-options-stickers
) .product-image-span {
  width: 100%;
  min-width: 0;
  padding: 24px !important;
  background: var(--object-preview-background, #ffffff) !important;
}

.deceti-theme.deceti-0 .deceti-page-pricingcalculator-options-stickers {
  margin-top: 0 !important;
}

@media (max-width: 991px) {
  .deceti-theme.deceti-0 :is(
    .deceti-page-customproduct-options,
    .deceti-page-customproduct-options-stickers
  ) .deceti-options-description {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 24px;
  }
}

@media (max-width: 767px) {
  .deceti-theme.deceti-0 :is(
    .deceti-page-customproduct-options,
    .deceti-page-customproduct-options-stickers
  ) .deceti-options-cart,
  .deceti-theme.deceti-0 .deceti-page-pricingcalculator-stickers #product-calc {
    padding: 18px !important;
  }

  .deceti-theme.deceti-0 :is(
    .deceti-page-customproduct-options,
    .deceti-page-customproduct-options-stickers
  ) .product-image-span {
    padding: 16px !important;
  }
}

/* ================================================================
   DECETI-0 final page corrections
   Keep page-specific corrections in the main theme file so uploads do
   not depend on an additional Home or workflow stylesheet.
   ================================================================ */

/* Home content block: approved desktop canvas and safe mobile gutter. */
#common-home.deceti-home-page .deceti-dynamic-block:has(.justyardsigns-container) {
  box-sizing: border-box;
  position: static !important;
  left: auto !important;
  width: min(var(--content-max-width, 1600px), calc(100% - 30px)) !important;
  max-width: var(--content-max-width, 1600px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

@media (min-width: 992px) {
  #common-home.deceti-home-page .deceti-dynamic-block:has(.justyardsigns-container) {
    width: min(var(--content-max-width, 1600px), calc(100% - 330px)) !important;
  }
}

/* Upload Artwork / Select Options: count visual price cards only. Hidden
   result hooks must never create anonymous grid cells. */
.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 540px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]):has(> .deceti-price-card:nth-of-type(4)) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 354px !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"]):not(:has(> .deceti-price-card:nth-of-type(3))) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 354px !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
> :is(#result_frame, #result_shipping) {
  display: none !important;
}

.deceti-theme.deceti-0
#calculator_price_summary:is([data-deceti-upload-price-summary="1"], [data-deceti-options-price-summary="1"])
.deceti-price-card :is(#result_price, #result_frame, #result_shipping, #result_total) {
  display: block !important;
}

/* The Home CMS editor may remove the optional .justyardsigns-container.
   Target the persistent block identity emitted by the renderer. */
#common-home.deceti-home-page :is(
  .deceti-block-contentblock1,
  [data-deceti-block="contentblock1"]
) {
  box-sizing: border-box;
  position: static !important;
  left: auto !important;
  width: min(var(--content-max-width, 1600px), calc(100% - 30px)) !important;
  max-width: var(--content-max-width, 1600px) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

#common-home.deceti-home-page :is(
  .deceti-block-contentblock1,
  [data-deceti-block="contentblock1"]
) .deceti-content-block {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  font-family: Arial, Helvetica, sans-serif !important;
}

#common-home.deceti-home-page :is(
  .deceti-block-contentblock1,
  [data-deceti-block="contentblock1"]
) :is(h1, h2, h3, h4, h5, h6, p, li, a, span, strong, em) {
  font-family: Arial, Helvetica, sans-serif !important;
}

@media (min-width: 992px) {
  #common-home.deceti-home-page :is(
    .deceti-block-contentblock1,
    [data-deceti-block="contentblock1"]
  ) {
    width: min(var(--content-max-width, 1600px), calc(100% - 330px)) !important;
  }
}
