/* Product26: product.tpl static styles followed by the original seven overrides, in source order. */
body.product-product main { margin-top:0!important; }
/* Keep the secondary bar below the navigation's stacking context. */
body.product-product .Header_contact-bar { display:grid!important; grid-template-columns:minmax(0,max-content) max-content minmax(0,1fr); column-gap:20px; row-gap:8px; position:relative; z-index:0!important; }
body.product-product .Header_contact-bar>div:last-child { justify-self:end; }
body.product-product .Header_contact-bar>div:first-of-type>a { font-size:12px!important; line-height:1.5; font-weight:400; }
body.product-product .pui-header-heading { display:flex; flex-wrap:wrap; align-items:baseline; gap:3px 6px; min-width:0; }
body.product-product .pui-header-project-title { margin:0; padding:0; font-size:14px!important; line-height:1.35; font-weight:700; color:#333; }
body.product-product .pui-header-project-id { font-size:12px; color:#526074; white-space:nowrap; }
body.product-product .Header_contact-bar nav { min-width:0; }
body.product-product .Header_contact-bar .breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:3px; margin:0; }
body.product-product .Header_contact-bar .breadcrumbs li,
body.product-product .Header_contact-bar .breadcrumbs a { font-size:12px!important; line-height:1.5; font-weight:400; }
body.product-product .Header_contact-bar .breadcrumbs li:not(:last-child)::after { margin:0 5px; }
body.product-product .pui-product-title-row>.container>.grid-x { height:auto!important; min-height:32px; }
body.product-product .pui-product-title-row .pui-header-project-title { font-size:14px!important; font-weight:700; color:#475569; }
body.product-product .pui-top-google-rating { display:grid; grid-template-columns:36px auto; column-gap:12px; row-gap:5px; align-items:center; padding-left:24px; border-left:1px solid #d5dbe3; text-align:left; color:#526074; font-size:15px; line-height:1.3; }
body.product-product .pui-top-google-logo { width:36px; height:36px; grid-row:1/3; }
body.product-product .pui-top-google-label { white-space:nowrap; }
body.product-product .pui-top-google-score { display:flex; align-items:center; gap:8px; }
body.product-product .pui-top-google-score strong { color:#1e293b; }
body.product-product .pui-top-google-score a { color:#526074!important; }
body.product-product .pui-top-google-score .pui-star-yellow { font-size:18px; }
@media(min-width:1024px) {
 body.product-product .Header_contact-bar { padding-top:4px; padding-bottom:4px; }
 body.product-product .Header_contact-bar .breadcrumbs li,
 body.product-product .Header_contact-bar .breadcrumbs a,
 body.product-product .Header_contact-bar>div:first-of-type>a { font-size:14px!important; }
 body.product-product .Header_contact-bar .breadcrumbs a { color:#64748b!important; }
 body.product-product .pui-product-title-row { margin-top:0!important; padding:2px 0 6px; }
 body.product-product .pui-product-title-row>.container>.grid-x { min-height:38px; flex-wrap:nowrap; gap:20px; }
 body.product-product .pui-product-title-row .large-shrink { flex:1 1 0; min-width:0; }
 body.product-product .pui-product-title-row .large-auto { flex:0 0 auto; width:auto; }
 body.product-product .pui-product-title-row .sbuttons { gap:24px; }
 body.product-product .pui-product-title-row .js-product-pdf-menu-trigger { min-height:34px; padding:7px 12px!important; border-radius:6px!important; font-size:13px!important; }
 body.product-product .pui-top-google-rating { font-size:13px; row-gap:1px; column-gap:8px; }
 body.product-product .pui-top-google-logo { width:30px; height:30px; }
 body.product-product .pui-product-title-row .js-product-pdf-menu-trigger span { font-weight:400; }
}
@media(max-width:1023px) {
 body.product-product .Header_contact-bar .breadcrumbs li,
 body.product-product .Header_contact-bar .breadcrumbs a { font-size:12px!important; }
 body.product-product .Header_contact-bar,
 body.product-product .pui-product-title-row { box-sizing:border-box; width:100%; min-height:30px; padding:6px 12px; margin:0!important; }
 body.product-product .pui-product-title-row { display:block!important; }
 body.product-product .pui-product-title-row>.container { width:100%; max-width:none; margin:0; padding:0; }
 body.product-product .pui-product-title-row>.container>.grid-x { min-height:0; }
 body.product-product .pui-header-heading { align-items:baseline; gap:2px 5px; }
 body.product-product .pui-product-title-row .pui-header-project-title { line-height:1.5; }
 body.product-product .pui-header-project-id { font-size:10px; line-height:1.5; }
 body.product-product .pui-product-title-row .large-auto { display:none; }
 body.product-product .pui-product-title-row .pui-header-project-title { font-size:12px!important; }
}
@media(max-width:1023px) {
 body.product-product .Header_contact-bar { grid-template-columns:minmax(0,1fr); }
 body.product-product .pui-header-project-title { font-size:14px!important; }
 body.product-product .Header_contact-bar>div:last-child { display:none!important; }
 body.product-product .Header_contact-bar>div:last-child>div { flex-wrap:wrap; gap:6px; }
}

/* Original product.tpl, line 609 */
.planz-contact-strip.pui-contact-strip-light {
  background:#f8fafc !important;
  border:1px solid #e2e7ed !important;
  border-radius:5px !important;
  padding:10px 12px !important;
  color:#15233b !important;
}
.pui-contact-strip-light .planz-contact-strip__text,
.pui-contact-strip-light .planz-contact-strip__text:hover {
  color:#15233b !important;
  font-size:12px;
  line-height:1.5;
}
.pui-contact-strip-light .planz-contact-strip__text strong {
  color:#e03838 !important;
}
.pui-contact-strip-light .planz-contact-strip__phone {
  background:#e03838 !important;
  border-color:#e03838 !important;
  color:#fff !important;
}
.pui-contact-strip-light .planz-contact-strip__cta {
  background:#fff !important;
  color:#e03838 !important;
  border-color:#e03838 !important;
}
.pui-product-favorite-mobile {
  display: flex;
  position: absolute;
  top: 16px;
  right: 8px;
  z-index: 50;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--primary);
  border-radius: 6px;
  background: #fff;
  color: var(--primary);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

.pui-product-favorite-desktop {
  display: none !important;
}

@media (min-width: 1024px) {
  .pui-product-favorite-mobile {
    display: none !important;
  }

  .pui-product-favorite-desktop {
    display: flex !important;
    top: 18px !important;
    right: 12px !important;
  }

  .pui-product-favorite-desktop.pui-favorite-hidden {
    display: none !important;
  }
}

@media (min-width: 1024px) {
  /* The purchase panel must not define the height of the gallery column. */
  .ProductContainer .product-header {
    position: relative;
    align-items: flex-start;
  }

  .ProductContainer .product-header > #gallery {
    flex: 0 0 calc(100% - 480px) !important;
    width: calc(100% - 480px) !important;
    max-width: calc(100% - 480px) !important;
  }

  .ProductContainer .product-header > #ProductHeader:not(.is-fixed):not(.is-absolute) {
    position: absolute !important;
    top: 0;
    right: 0;
    left: auto !important;
    width: 480px !important;
    max-width: 480px !important;
    z-index: 2;
  }

  .ProductPage_slides {
    contain: layout paint;
    min-height: 550px;
  }

  .ProductPage_slides picture,
  .ProductPage_thumbs picture {
    display: block;
    width: 100%;
    height: 100%;
  }

  #ProductHeader.is-fixed,
  #ProductHeader.is-absolute {
    width: 480px;
    max-width: 480px;
    box-sizing: border-box;
  }

  #ProductHeaderPlaceholder {
    flex: 0 0 480px;
    max-width: 480px;
  }
}

.pui-header-budget-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fffdf8;
  box-shadow: 0 1px 3px rgba(17, 24, 39, 0.06);
}

.pui-header-budget-link:hover {
  border-color: #e03838;
  background: #fffafa;
}

.pui-header-budget-label-row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.pui-header-budget-amount {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  font-size: 28px;
  line-height: 1.15;
  white-space: nowrap;
}

.pui-header-budget-amount i {
  font-size: 26px;
}

@media (max-width: 640px) {
  .pui-header-budget-amount { gap: 6px; font-size: 22px; }
  .pui-header-budget-amount i { font-size: 21px; }
}

.pui-price-side-wrap > .inline-flex {
  border-radius: 6px !important;
}

#ProductHeader .top1-price-row {
  display: grid !important;
  justify-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  text-align: center;
}

#ProductHeader .top1-special-price,
#ProductHeader .pui-price-side-wrap {
  justify-content: center !important;
  align-items: center !important;
  text-align: center;
}

@media (min-width: 1024px) {
  #ProductHeader.is-fixed .pui-hide-when-sticky,
  #ProductHeader.is-absolute .pui-hide-when-sticky {
    display: none !important;
  }
}

.pui-price-guarantee-button {
  display: inline-flex;
  flex: 0 1 auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  max-width: 240px;
  min-height: 46px;
  box-sizing: border-box;
  padding: 9px 16px;
  border: 1px solid #e03838;
  border-radius: 6px;
  background: #fff;
  color: #e03838 !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: normal;
}

.pui-price-guarantee-button:hover,
.pui-price-guarantee-button:focus-visible {
  border-color: #e03838;
  background: #fff;
  color: #e03838 !important;
}

.pui-price-guarantee-button i {
  flex: 0 0 auto;
  color: inherit;
}
.pui-price-guarantee-button .pui-price-guarantee-icon {
  color:#e03838 !important;
  font-size:16px;
  animation:pui-price-guarantee-pulse 1.8s ease-in-out infinite;
}
@keyframes pui-price-guarantee-pulse {
  0%,100% { transform:scale(1); }
  50% { transform:scale(1.15); }
}
@media(prefers-reduced-motion:reduce) {
  .pui-price-guarantee-button .pui-price-guarantee-icon { animation:none; }
}

.pui-price-guarantee-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 12px;
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}

.pui-price-negotiation-link,
.pui-price-negotiation-link:hover,
.pui-price-negotiation-link:focus-visible {
  color: #000 !important;
  text-decoration: underline;
  cursor: pointer;
}

.ProductPage_attrs.pui-spec-strip {
  display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;
  gap:0;margin-top:16px;padding:18px 8px;border:1px solid #e2e5e9;border-radius:18px;
  background:#fff;box-shadow:0 8px 24px #17203305;text-align:left;
}
.pui-spec-strip .ProductPage_attr { width:auto;min-width:0;flex:1;padding:0 14px; }
.pui-spec-strip .ProductPage_attr>div { justify-content:center;gap:12px;font-size:14px;line-height:1.4;color:#171717; }
.pui-spec-strip .pui-spec-area { order:1; }
.pui-spec-strip .pui-spec-floors { order:2;flex:1.5; }
.pui-spec-strip .pui-spec-garage { order:3; }
.pui-spec-strip .pui-spec-tech { order:4; }
.pui-spec-strip .ProductPage_attr:not(.pui-spec-area) { border-left:1px solid #e0e3e7; }
.pui-spec-strip .pui-spec-icon { width:32px;height:32px;flex:0 0 32px;object-fit:contain; }
.pui-spec-strip a.ProductPage_attr { order:5;flex:0 0 auto;align-self:stretch;justify-content:center;gap:10px;color:#e03838;font-size:14px;font-weight:600; }
.pui-spec-strip a.ProductPage_attr span { text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px; }
.pui-spec-strip a.ProductPage_attr:hover { color:#e03838;background:#fff5f5; }
.pui-spec-strip a.ProductPage_attr:focus-visible { outline:2px solid #e03838;outline-offset:3px; }
@media (max-width: 767px) {
  .ProductPage_attrs.pui-spec-strip { display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding:12px 3px;margin-top:12px;border-radius:14px;scrollbar-width:thin; }
  .pui-spec-strip .ProductPage_attr { flex:1 0 auto;min-width:max-content;padding:0 5px; }
  .pui-spec-strip .ProductPage_attr>div { justify-content:center;gap:4px;font-size:10px;line-height:1.4;white-space:nowrap; }
  .pui-spec-strip .pui-spec-icon { width:16px;height:16px;flex-basis:16px; }
  .pui-spec-strip a.ProductPage_attr { font-size:10px;gap:5px;padding:0 6px; }
}
@media (max-width: 640px) {

  .pui-header-summary-text {
    border-top: 1px solid #e5e7eb;
    margin-top: 6px;
    padding-top: 10px !important;
  }

  .pui-header-budget-link {
    gap: 8px;
    padding: 8px 10px !important;
  }

  .pui-header-budget-label-row {
    gap: 8px;
  }

  .top1-price-row {
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
  }

  .pui-price-guarantee-button {
    max-width: min(52vw, 210px);
    min-height: 42px;
    gap: 6px;
    padding: 7px 9px;
    font-size: 11px;
    line-height: 1.15;
  }

  .top1-special-price-wrap {
    width: auto !important;
    flex: 0 0 auto !important;
    min-width: 74px;
    margin-top: 12px !important;
  }

  .top1-special-price {
    width: auto !important;
    line-height: 0.95 !important;
  }

  .top1-special-price strong {
    white-space: nowrap !important;
  }

  .pui-price-side-wrap {
    width: auto !important;
    flex: 0 0 auto !important;
    align-items: flex-start !important;
    min-width: 0;
    transform: translateX(-6px);
  }

  .pui-price-side-wrap > .inline-flex {
    display: inline-flex !important;
    flex-direction: column !important;
    width: 154px !important;
    max-width: 154px !important;
  }

  .pui-price-side-wrap > .inline-flex > span {
    padding-left: 1px !important;
    padding-right: 1px !important;
  }

  .pui-price-side-wrap > .inline-flex > span:first-child {
    padding-top: 3px !important;
    padding-bottom: 3px !important;
  }

  .pui-price-side-wrap .pui-promo-savings-line {
    display: block !important;
    white-space: nowrap !important;
    padding: 5px 3px 6px !important;
    font-size: 9px !important;
    line-height: 12px !important;
    text-align: center !important;
  }

  .pui-price-side-wrap .pui-promo-savings-line strong {
    display: inline !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    line-height: 12px !important;
    vertical-align: baseline !important;
  }

  .pui-lowest-price-note {
    max-width: 154px;
    font-size: 9px !important;
    line-height: 1.15 !important;
    text-align: left;
  }
}
.drawings-offer { padding:36px 20px !important; background:linear-gradient(135deg,#fff,#f7fafc); color:#101d35; border-radius:16px; }
.drawings-offer__eyebrow { display:flex; align-items:center; justify-content:center; gap:20px; margin:0 0 16px; color:#74819a; font-size:12px; font-weight:600; letter-spacing:3px; text-transform:uppercase; }
.drawings-offer__eyebrow:before,.drawings-offer__eyebrow:after { content:''; width:70px; height:1px; background:#d4dce7; }
#reviews .drawings-offer__title { margin:0 0 12px !important; font-size:clamp(23px,2.2vw,34px) !important; line-height:1.25; font-weight:800; text-align:center; color:#101d35; text-transform:none; }
#reviews .drawings-offer__title:before,#reviews .drawings-offer__title:after { display:none; }
.drawings-offer__intro { max-width:1080px; margin:0 auto 26px; text-align:center; color:#6a7790; font-size:17px; line-height:1.55; }
#reviews .drawings-offer__grid { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(0,1fr); gap:20px; margin:0; }
#reviews .review-send { width:auto; min-width:0; padding:26px; background:#fff; border:1px solid #e7edf3; border-radius:16px; box-shadow:0 5px 22px rgba(27,48,73,.05); container-type:inline-size; }
#reviews #review-form { padding:0 !important; margin:0; }
#reviews .form-group { margin:0 0 16px; }
#reviews label { color:#17243d; font-size:14px; line-height:1.45; margin-bottom:5px; }
#reviews .form-control { height:46px; padding:10px 13px; margin:0; background:#fff; border:1px solid #d7dfeb !important; border-radius:8px !important; box-shadow:0 2px 5px rgba(27,48,73,.06) !important; color:#17243d; font-size:14px; }
#reviews .form-control::placeholder { color:#97a3b9; opacity:1; }
#reviews .form-control:focus { border-color:#e03838; outline:2px solid rgba(224,56,56,.12); }
#reviews textarea.form-control { height:92px; resize:vertical; }
.drawings-offer__contact-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; align-items:end; }
@container(max-width:480px) { .drawings-offer__contact-row { grid-template-columns:1fr; gap:0; } }
#reviews .drawings-offer__contact-row > .form-group { width:auto; min-width:0; }
#reviews .drawings-offer__contact-row > .form-group:last-child { padding:12px; background:#fdf1f1; border-radius:12px; }
.drawings-offer__phone-heading { display:flex; align-items:center; gap:9px; margin-bottom:9px; }
.drawings-offer__phone-heading > i { display:flex; align-items:center; justify-content:center; width:34px; height:34px; flex:0 0 34px; border-radius:50%; background:#fff; color:#e03838; }
.drawings-offer__phone-heading strong { font-size:13px; line-height:1.3; display:block; }
#reviews .drawings-offer__phone-heading label { font-size:11px; color:#697991; margin:3px 0 0; }
#reviews .pui-phone-prefix-select { width:76px; flex:0 0 76px; padding-left:9px; }
#reviews .form-check { gap:8px; align-items:flex-start; }
#reviews .form-check-input { width:19px; height:19px; flex:0 0 19px; margin:2px 0 0; top:0; accent-color:#e03838; }
#reviews .form-check-label { font-size:13px; color:#5e6b82; font-weight:400; }
#reviews .form-check-label a { color:#e03838; }
#reviews #submit { display:flex; align-items:center; justify-content:center; gap:12px; min-height:50px; padding:12px !important; border:1px solid #e03838 !important; border-radius:8px; background:#e03838 !important; color:#fff !important; font-size:17px; font-weight:700; text-transform:none; }
#reviews .drawings-offer__delivery-note { margin:16px 0 0 !important; text-align:center; color:#718097; font-size:13px; font-weight:400; }
.drawings-offer__delivery-note i { margin-right:7px; }
.drawings-offer__preview { display:flex; flex-direction:column; min-width:0; padding:24px 20px; border-radius:16px; background:#f1f5f9; }
.drawings-offer__description { display:flex; align-items:flex-start; gap:18px; margin-bottom:22px; }
.drawings-offer__pdf { display:flex; align-items:center; justify-content:center; width:76px; height:76px; flex:0 0 76px; background:#e4ebf3; border-radius:50%; color:#12243e; font-size:36px; }
#reviews .drawings-offer__description h3 { font-size:20px; font-weight:700; margin:3px 0 7px; color:#12243e; }
.drawings-offer__description p { margin:0; font-size:15px; line-height:1.55; color:#69758a; }
.drawings-offer__image { flex:1; min-height:240px; overflow:hidden; border-radius:14px; }
.drawings-offer__image img { display:block; width:100%; height:100%; min-height:240px; max-height:390px; object-fit:cover; }
.drawings-offer__benefits { display:flex; justify-content:space-between; gap:10px; margin-top:18px; }
.drawings-offer__benefits > span { display:flex; align-items:center; gap:9px; color:#65738b; font-size:12px; line-height:1.5; }
.drawings-offer__benefits i { display:flex; align-items:center; justify-content:center; width:43px; height:43px; flex:0 0 43px; background:#e4ebf3; color:#12243e; border-radius:50%; font-size:23px; }
@media(max-width:1100px) { #reviews .drawings-offer__grid { grid-template-columns:1fr; } .drawings-offer__image img { height:330px; } }
@media(max-width:640px) { .drawings-offer { padding:24px 10px !important; } .drawings-offer__eyebrow { font-size:10px; letter-spacing:2px; gap:10px; } .drawings-offer__eyebrow:before,.drawings-offer__eyebrow:after { width:24px; } .drawings-offer__intro { font-size:14px; margin-bottom:18px; } #reviews .review-send { padding:18px 14px; } .drawings-offer__contact-row { grid-template-columns:1fr; gap:0; } .drawings-offer__phone-heading strong { font-size:14px; } #reviews .drawings-offer__phone-heading label { font-size:12px; } .drawings-offer__preview { padding:20px 14px; } .drawings-offer__description { gap:12px; } .drawings-offer__pdf { width:52px; height:52px; flex-basis:52px; font-size:26px; } .drawings-offer__description p { font-size:14px; } .drawings-offer__image img { height:230px; min-height:0; } .drawings-offer__image { min-height:0; } .drawings-offer__benefits { gap:8px; } .drawings-offer__benefits > span { flex:1; flex-direction:column; text-align:center; font-size:11px; } }

/* Original product.tpl, line 1520 */
@media (min-width:0px) {
          #ProductHeader { padding:16px 14px !important; border:1px solid #e2e7ed !important; border-radius:8px; color:#101827; box-shadow:0 2px 12px rgba(15,23,42,.035); }
          #ProductHeader .pui-panel-title { font-size:24px; line-height:1.2; margin-bottom:12px !important; letter-spacing:-.6px; }
          #ProductHeader .pui-availability { width:100%; gap:8px; }
          #ProductHeader .pui-availability > img { width:18px; height:18px; }
          #ProductHeader .pui-availability-link { display:flex; flex:1; justify-content:space-between; align-items:center; gap:6px; font-size:11px !important; white-space:normal !important; text-align:left; }
          #ProductHeader .pui-availability-detail { font-size:11px !important; font-style:normal !important; text-decoration:underline; white-space:nowrap; }
          #ProductHeader .top1-price-row { margin:12px 0 8px !important; }
          #ProductHeader .top1-price-row strong { font-size:36px !important; line-height:1.1; color:#e03838; }
          #ProductHeader #order { display:flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:10px 8px !important; margin-top:4px !important; font-size:16px !important; line-height:1.2; background:#e03838 !important; border-color:#e03838 !important; border-radius:4px !important; }
          #ProductHeader #order > i { font-size:23px; }
          #ProductHeader .pui-price-guarantee-row { gap:7px; margin-top:9px; font-size:12px; }
          #ProductHeader .pui-price-guarantee-button { min-height:34px; width:fit-content; max-width:100%; padding:7px 24px; font-size:14px; border-color:#e03838; border-radius:4px; color:#e03838 !important; }
          #ProductHeader .pui-price-guarantee-row > span { width:100%; }
          #ProductHeader .pui-project-docs { margin-top:10px !important; padding:10px 0 !important; font-size:12px; line-height:1.4; }
          #ProductHeader .pui-project-docs > a { display:flex; align-items:center; gap:10px; }
          #ProductHeader .pui-project-docs i { flex-shrink:0; font-size:23px; color:#e03838; }
          #ProductHeader .pui-project-docs strong { font-size:13px; color:#e03838; }
          #ProductHeader .ProductPage_gratis { margin-top:10px !important; gap:8px !important; }
          #ProductHeader .pui-package-heading { margin-bottom:4px !important; }
          #ProductHeader .pui-package-heading > span { font-size:18px; line-height:1.2; }
          #ProductHeader .pui-product-favorite-desktop { border:0 !important; box-shadow:none !important; height:30px; width:30px; }
          #ProductHeader .pui-package-list { margin:0 !important; font-size:12px; line-height:1.5; }
          #ProductHeader .pui-package-list > li { display:flex; align-items:baseline; gap:6px; margin:2px 0; }
          #ProductHeader .pui-package-list > li::before { flex-shrink:0; margin:0 3px !important; font-size:18px; color:#e03838; }
          #ProductHeader .pui-service-strip { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:4px !important; padding:10px 4px; border-radius:5px; background:#f3f4f6; }
          #ProductHeader .pui-service-item { display:flex; align-items:center; justify-content:center; gap:7px; min-width:0; font-size:10px; line-height:1.4; }
          #ProductHeader .pui-service-item + .pui-service-item { border-left:1px solid #d8dee6; }
          #ProductHeader .pui-service-item svg { width:23px; height:23px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
          #ProductHeader .pui-service-item b { display:block; font-size:11px; white-space:nowrap; }
          #ProductHeader .pui-panel-contact { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:10px; margin-top:0 !important; padding-top:0 !important; }
          #ProductHeader .pui-panel-contact .pui-phone-cta { width:100%; min-height:34px; gap:6px; padding:7px 6px; font-size:13px; border-radius:4px; background:#e03838; white-space:nowrap; }
          #ProductHeader .pui-panel-contact .pui-contact-hours-white { font-size:9px; }
          #ProductHeader #openProductContactModalButton { width:100%; margin:0 !important; min-height:34px; padding:6px !important; border-radius:4px; font-size:12px; }
          #ProductHeader .pui-panel-note { margin:0 !important; padding:9px 11px !important; border:1px solid #e2e7ed; border-radius:5px; background:#f8fafc !important; color:#15233b !important; font-size:11px; line-height:1.45; }
          #ProductHeader .pui-panel-note a { color:#15233b !important; }
          #ProductHeader .pui-panel-note a strong { color:#e03838 !important; }
          #ProductHeader.is-fixed .ProductPage_gratis, #ProductHeader.is-absolute .ProductPage_gratis { padding-top:12px; border-top:1px solid #e2e7ed; }
          #ProductHeader.is-fixed .pui-hide-when-sticky, #ProductHeader.is-absolute .pui-hide-when-sticky { display:none !important; }
        }

/* Original product.tpl, line 1562 */
#ProductHeader .top1-price-row strong,
        #ProductHeader .pui-price-guarantee-button,
        #ProductHeader .pui-price-guarantee-button:hover,
        #ProductHeader .pui-price-guarantee-button:focus-visible,
        #ProductHeader .pui-project-docs i,
        #ProductHeader .pui-project-docs strong,
        #ProductHeader .pui-package-list > li::before,
        #ProductHeader .pui-product-favorite-desktop,
        #ProductHeader .pui-product-favorite-desktop i,
        #ProductHeader #openProductContactModalButton,
        #ProductHeader .pui-panel-note a strong,
        #ProductHeader .pui-text-red { color:#e03838 !important; }
        #ProductHeader #order,
        #ProductHeader #order:hover,
        #ProductHeader .pui-panel-contact .pui-phone-cta,
        #ProductHeader .pui-panel-contact .pui-phone-cta:hover { background:#e03838 !important; border-color:#e03838 !important; color:#fff !important; }
        #ProductHeader .pui-price-guarantee-button,
        #ProductHeader .pui-price-guarantee-button:hover,
        #ProductHeader .pui-price-guarantee-button:focus-visible,
        #ProductHeader #openProductContactModalButton { border-color:#e03838 !important; background:#fff !important; }

/* Original product.tpl, line 1584 */
@media (max-width:1023px) {
          #ProductHeader { padding:12px !important; border:0 !important; box-shadow:none; }
          #ProductHeader .pui-legacy-mobile-services { display:none !important; }
          #ProductHeader .pui-package-heading { flex-direction:row !important; }
          #ProductHeader .pui-package-heading > span { width:auto !important; }
          #ProductHeader .pui-product-favorite-desktop { display:inline-flex !important; flex-shrink:0; }
          #ProductHeader .top1-special-price-wrap { margin-top:0 !important; }
          #ProductHeader .pui-price-side-wrap { transform:none; }
          #ProductHeader .pui-service-item { gap:5px; font-size:9px; }
          #ProductHeader .pui-service-item b { font-size:10px; }
          #ProductHeader .pui-service-item svg { width:21px; height:21px; }
          #ProductHeader .pui-panel-contact { grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:8px; }
          #ProductHeader .pui-panel-contact .pui-phone-cta { flex-wrap:wrap; justify-content:center; gap:3px 5px; font-size:11px; }
          #ProductHeader .pui-panel-contact .pui-contact-hours-white { font-size:8px; }
          #ProductHeader #openProductContactModalButton { font-size:11px; }
        }
        @media (max-width:359px) {
          #ProductHeader #order { font-size:14px !important; gap:8px; }
          #ProductHeader .pui-service-item { gap:3px; }
          #ProductHeader .pui-service-item svg { width:17px; height:17px; }
        }

/* Original product.tpl, line 1977 */
.pui-negotiation-banner {
                      margin: 16px 0;
                      padding: 10px;
                      border-radius: 16px;
                      border: 1px solid rgba(0,0,0,0.04);
                      background: linear-gradient(135deg, #f7b100 0%, #ffc21a 52%, #f7b100 100%);
                      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
                      cursor: pointer;
                      box-shadow: 0 8px 18px rgba(0,0,0,0.06);
                    }
                    .pui-negotiation-banner__inner {
                      display: block;
                    }
                    .pui-negotiation-banner__top {
                      display: flex;
                      align-items: center;
                      gap: 10px;
                      width: 100%;
                      margin-bottom: 14px;
                    }
                    .pui-negotiation-banner__body {
                      display: flex;
                      align-items: center;
                      gap: 16px;
                      margin-bottom: 14px;
                    }
                    .pui-negotiation-banner__icon {
                      width: 28px;
                      height: 28px;
                      object-fit: contain;
                      flex: 0 0 28px;
                    }
                    .pui-negotiation-banner__eyebrow {
                      margin: 0;
                      color: #111;
                      font-size: 22px;
                      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
                      font-weight: 900;
                      line-height: 1.15;
                      letter-spacing: 0;
                    }
                    .pui-negotiation-banner__content {
                      flex: 1 1 54%;
                      min-width: 0;
                    }
                    .pui-negotiation-banner__title {
                      margin: 0 0 8px;
                      color: #000;
                      font-size: 27px;
                      font-weight: 800;
                      line-height: .94;
                      letter-spacing: -.04em;
                    }
                    .pui-negotiation-banner__subtitle {
                      margin: 0 0 8px;
                      color: #111;
                      font-size: 15px;
                      line-height: 1.15;
                    }
                    .pui-negotiation-banner__details {
                      margin: 0 0 12px;
                      color: #111;
                      font-size: 15px;
                      font-weight: 700;
                      line-height: 1.15;
                    }
                    .pui-negotiation-banner__highlight {
                      font-weight: 800;
                    }
                    .pui-negotiation-banner__list {
                      margin: 0 0 12px;
                      padding-left: 18px;
                      color: #111;
                      font-size: 15px;
                      font-weight: 700;
                      line-height: 1.2;
                    }
                    .pui-negotiation-banner__list li + li {
                      margin-top: 2px;
                    }
                    .pui-negotiation-banner__cta {
                      display: inline-flex;
                      align-items: center;
                      justify-content: center;
                      width: 100%;
                      height: 42px;
                      padding: 0 16px;
                      border: 0;
                      border-radius: 4px;
                      background: #000;
                      color: #fff;
                      font-size: 15px;
                      font-weight: 900;
                      line-height: 1;
                      text-transform: uppercase;
                      letter-spacing: .01em;
                      cursor: pointer;
                      text-decoration: none;
                    }
                    .pui-negotiation-banner__note {
                      margin: 8px 0 0;
                      color: #111;
                      font-size: 6px;
                      line-height: 1.05;
                      text-align: center;
                    }
                    .pui-negotiation-banner__footer {
                      width: 100%;
                    }
                    .pui-negotiation-banner__media {
                      flex: 0 0 45%;
                      max-width: 45%;
                    }
                    .pui-negotiation-banner__card {
                      padding: 8px;
                      border-radius: 12px;
                      background: #fff;
                    }
                    .pui-negotiation-banner__image {
                      display: block;
                      width: 100%;
                      height: auto;
                    }
                    .pui-negotiation-banner--profile2 {
                      padding: 8px 10px 10px;
                      border: 0;
                      background: linear-gradient(135deg, #f7ab00 0%, #ffc31b 52%, #f3b100 100%);
                      box-shadow: 0 10px 24px rgba(0,0,0,0.08);
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__inner {
                      display: flex;
                      flex-direction: column;
                      gap: 8px;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__top {
                      gap: 8px;
                      margin-bottom: 0;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__body {
                      display: grid;
                      grid-template-columns: minmax(0, 1.15fr) minmax(140px, 0.75fr);
                      align-items: center;
                      gap: 8px;
                      margin-bottom: 0;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__icon {
                      width: 36px;
                      height: 36px;
                      flex-basis: 36px;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__eyebrow {
                      font-size: 16px;
                      font-weight: 500;
                      line-height: 1.05;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__content {
                      flex: initial;
                    }
                    .pui-negotiation-banner__hero {
                      margin: 0 0 6px;
                      color: #000;
                      font-size: 32px;
                      font-weight: 900;
                      line-height: .92;
                      text-transform: uppercase;
                      letter-spacing: -.04em;
                    }
                    .pui-negotiation-banner__price-row {
                      display: inline-block;
                      margin: 0 0 6px;
                      padding: 6px 10px 7px;
                      border-radius: 12px;
                      background: #000;
                      color: #ffc31b;
                      font-size: 18px;
                      font-weight: 900;
                      line-height: 1;
                      text-transform: uppercase;
                      letter-spacing: -.03em;
                    }
                    .pui-negotiation-banner__subline {
                      margin: 0 0 10px;
                      color: #111;
                      font-size: 14px;
                      font-weight: 700;
                      line-height: 1.12;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__subtitle {
                      margin: 0 0 4px;
                      font-size: 14px;
                      font-weight: 500;
                      line-height: 1.15;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__list {
                      margin: 0;
                      padding-left: 18px;
                      font-size: 13px;
                      line-height: 1.15;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__media {
                      display: flex;
                      flex-direction: column;
                      align-items: center;
                      justify-content: flex-end;
                      min-width: 0;
                      flex: initial;
                      max-width: none;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__card {
                      width: 100%;
                      max-width: 190px;
                      padding: 0;
                      border-radius: 0;
                      background: transparent;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__note {
                      margin: 4px 0 0;
                      font-size: 9px;
                      line-height: 1.15;
                    }
                    .pui-negotiation-banner--profile2 .pui-negotiation-banner__cta {
                      min-height: 40px;
                      height: 40px;
                      padding: 0 12px;
                      border-radius: 6px;
                      font-size: 13px;
                    }
                    @media (max-width: 900px) {
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__body {
                        grid-template-columns: minmax(0, 1.15fr) minmax(120px, 0.75fr);
                        align-items: center;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__media {
                        justify-content: flex-start;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__card {
                        max-width: 160px;
                      }
                    }
                    @media (max-width: 640px) {
                      .pui-negotiation-banner__body {
                        gap: 12px;
                      }
                      .pui-negotiation-banner__title {
                        font-size: 22px;
                      }
                      .pui-negotiation-banner__subtitle,
                      .pui-negotiation-banner__details {
                        font-size: 13px;
                      }
                      .pui-negotiation-banner__list {
                        font-size: 13px;
                      }
                      .pui-negotiation-banner__eyebrow {
                        font-size: 20px;
                      }
                      .pui-negotiation-banner__cta {
                        width: 100%;
                        height: 38px;
                        font-size: 13px;
                      }
                      .pui-negotiation-banner__note {
                        font-size: 6px;
                      }
                      .pui-negotiation-banner--profile2 {
                        padding: 6px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__inner {
                        gap: 6px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__top {
                        gap: 6px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__icon {
                        width: 26px;
                        height: 26px;
                        flex-basis: 26px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__eyebrow {
                        font-size: 14px;
                      }
                      .pui-negotiation-banner__hero {
                        margin-bottom: 4px;
                        font-size: 26px;
                      }
                      .pui-negotiation-banner__price-row {
                        margin-bottom: 4px;
                        padding: 5px 8px 6px;
                        border-radius: 10px;
                        font-size: 17px;
                      }
                      .pui-negotiation-banner__subline {
                        margin-bottom: 8px;
                        font-size: 13px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__subtitle {
                        margin-bottom: 4px;
                        font-size: 13px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__list {
                        padding-left: 18px;
                        font-size: 12px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__card {
                        max-width: 150px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__note {
                        margin-top: 4px;
                        font-size: 9px;
                      }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__cta {
                        min-height: 34px;
                        height: 34px;
                        padding: 0 10px;
                        font-size: 12px;
                      }
                    }
                    @media (max-width: 640px) {
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__hero { font-size: 18px; line-height: 1 !important; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__price-row { display: inline-block; margin-bottom: 3px; padding: 4px 7px 5px; font-size: 14px; line-height: 1 !important; white-space: nowrap; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__subline { margin-bottom: 5px; font-size: 12px; line-height: 1.1 !important; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__subtitle { margin-bottom: 2px; font-size: 12px; line-height: 1.1 !important; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__list { font-size: 11px; line-height: 1.1 !important; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__card { max-width: 112px; }
                      .pui-negotiation-banner--profile2 .pui-negotiation-banner__note { font-size: 8px; line-height: 1.1; }
                    }

/* Original product.tpl, line 3751 */
#project-description-text,
                      #project-description-text :is(p, li, span, strong, b, em) { color:#526074 !important; }
                      #project-description-toggle[hidden] { display:none !important; }
                      #project-description-text.is-collapsed { display:-webkit-box !important; -webkit-box-orient:vertical; -webkit-line-clamp:5; line-clamp:5; overflow:hidden; }
                      #project-description-toggle { display:block; margin:12px 0 20px; padding:8px 0; border:0; background:none; color:#526074; font:inherit; font-size:13px; text-decoration:underline; cursor:pointer; }
                      #project-description-toggle:focus-visible { outline:2px solid #e03838; outline-offset:3px; }

/* Original product.tpl, line 5747 */
/* Dedicated styles for the product-page favorites prompt only. */
    .pui-favorites-chatbox .pui-favorites-chatbox__header {
      min-height: 76px !important;
      padding: 14px 16px !important;
      background: #292a2d !important;
      border: 0 !important;
      border-radius: 6px !important;
      box-shadow: 0 5px 18px rgba(0, 0, 0, .25) !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__label,
    .pui-favorites-chatbox .pui-favorites-chatbox__cta {
      color: #fff !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__label {
      font-size: 14px !important;
      line-height: 1.2 !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__cta {
      display: inline-block !important;
      width: auto !important;
      height: auto !important;
      min-width: 0 !important;
      padding: 0 !important;
      border: 0 !important;
      background: transparent !important;
      font-size: 12px !important;
      font-weight: 700 !important;
      line-height: 1.05 !important;
      text-decoration: underline !important;
      white-space: nowrap !important;
      text-align: left !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__heart {
      width: 30px !important;
      height: 30px !important;
      margin-right: 0 !important;
      border: 0 !important;
      border-radius: 6px !important;
      background: transparent !important;
      color: #e03838 !important;
      box-shadow: none !important;
      filter: none !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__heart span,
    .pui-favorites-chatbox .pui-favorites-chatbox__heart i {
      background: transparent !important;
      box-shadow: none !important;
      filter: none !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__heart i {
      width: auto !important;
      height: auto !important;
      color: #e03838 !important;
      font-size: 18px !important;
      line-height: 1 !important;
    }

    .pui-favorites-chatbox .pui-favorites-chatbox__heart-count {
      position: absolute !important;
      right: -5px !important;
      bottom: -5px !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      min-width: 15px !important;
      height: 15px !important;
      padding: 0 4px !important;
      border-radius: 999px !important;
      background: #111 !important;
      color: #fff !important;
      font-size: 9px !important;
      font-weight: 700 !important;
      line-height: 15px !important;
    }

/* Original product.tpl, line 10116 */
#review-form-popup { width:1120px !important; max-width:calc(100vw - 32px) !important; max-height:calc(100dvh - 32px) !important; padding:0 !important; border-radius:16px !important; flex-direction:row !important; align-items:stretch; overflow:auto !important; background:#fff; color:#152138; }
#review-form-close { position:absolute; top:12px !important; right:15px !important; width:32px; height:32px; z-index:3; font-size:30px; color:#26313d; background:#fff; border:0; border-radius:50%; line-height:1; }
.drawings-popup-side { width:36%; flex:0 0 36%; background:#f5f7f8; border-radius:16px 0 0 16px; overflow:hidden; }
#review-form-popup-header-img { display:block !important; width:100% !important; height:260px !important; max-width:none !important; object-fit:cover !important; margin:0 !important; border-radius:0 !important; }
.drawings-popup-side-copy { position:relative; margin-top:-32px; padding:24px 30px; background:#f5f7f8; border-radius:50% 50% 0 0 / 24px 24px 0 0; }
.drawings-popup-side-copy h2 { color:#152138; font-size:30px; line-height:1.13; font-weight:800; margin:0 0 12px; }
.drawings-popup-project-name { font-size:20px; line-height:1.3; color:#748091; margin:0 0 25px; }
.drawings-popup-benefits { padding:0; margin:0; list-style:none; }
.drawings-popup-benefits li { display:flex; align-items:center; gap:14px; margin:0 0 23px; font-size:15px; line-height:1.4; }
.drawings-popup-benefits i { width:52px; height:52px; flex:0 0 52px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:#e5eee9; font-size:26px; }
.drawings-popup-benefits strong { font-weight:600; }
.drawings-popup-benefits small { display:block; color:#798493; font-size:12px; margin-top:3px; }
.drawings-popup-signature { margin:28px 0 0; color:#8994a3; font-family:Georgia,serif; font-size:25px; font-style:italic; line-height:1.1; transform:rotate(-7deg); }
.drawings-popup-main { flex:1; min-width:0; padding:32px 32px 24px; }
#review-form-popup-header { display:block !important; padding:0 !important; margin:0 0 22px !important; border:0 !important; background:none !important; }
#review-form-popup #review-form-popup-header, #review-form-popup #review-form-popup-header-text { width:100%; height:auto !important; max-height:none !important; overflow:visible !important; flex-shrink:0; }
#review-form-popup #review-form-popup-title { font-size:29px !important; font-weight:800; line-height:1.2; margin:0 22px 12px 0 !important; color:#152138; }
#review-form-popup-header-desc { font-size:15px !important; color:#6c7788; line-height:1.55; margin:0 !important; }
#review-form-popup-inner { padding:0 !important; overflow:visible !important; }
#review-form-popup .js-review-form { margin:0; padding:0 !important; }
#review-form-popup .form-group { margin:0 0 16px; }
#review-form-popup label { font-size:14px; line-height:1.4; color:#17243b; margin-bottom:5px; }
#review-form-popup .form-control { height:44px; margin:0; padding:10px 12px; font-size:14px; border:1px solid #d6dde6 !important; border-radius:7px !important; background:#fff; color:#152138; box-shadow:0 2px 4px rgba(30,45,65,.06) !important; }
#review-form-popup .form-control::placeholder { color:#98a2b1; }
#review-form-popup textarea.form-control { height:86px; resize:vertical; }
#review-form-popup .drawings-offer__contact-row { gap:10px; }
#review-form-popup .drawings-offer__contact-row > .form-group { min-width:0; width:auto; }
#review-form-popup .drawings-offer__contact-row > .form-group:last-child { padding:10px; background:#fdf0f0; border-radius:10px; }
#review-form-popup .drawings-offer__phone-heading { gap:7px; }
#review-form-popup .drawings-offer__phone-heading strong { font-size:12px; }
#review-form-popup .drawings-offer__phone-heading label { font-size:10px; margin:3px 0 0; color:#6c7788; }
#review-form-popup .pui-phone-prefix-select { width:74px; flex:0 0 74px; padding-left:8px; }
#review-form-popup .form-check { align-items:flex-start; gap:8px; }
#review-form-popup .form-check-input { width:18px; height:18px; flex:0 0 18px; margin:2px 0 0; top:0; accent-color:#e03838; }
#review-form-popup .form-check-label { color:#526074; font-size:12px; font-weight:400; }
#review-form-popup a { color:#e03838; }
#review-form-popup .js-review-submit { display:flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:10px !important; border:1px solid #e03838 !important; border-radius:7px; background:#e03838 !important; color:#fff !important; font-size:16px; font-weight:600; text-transform:none; }
#review-form-popup .drawings-offer__delivery-note { margin:16px 0 0 !important; font-size:13px; text-align:center; color:#778393; }
:is(#reviews, #review-form-popup) .drawings-offer__contact-row { grid-template-columns:minmax(0,1fr); }
:is(#reviews, #review-form-popup) .drawings-offer__contact-row > .form-group { width:100% !important; }
:is(#reviews, #review-form-popup) .drawings-offer__contact-row > .form-group:last-child { padding:12px !important; border:1px solid #d6dde6; border-radius:10px; background:#fff !important; }
:is(#reviews, #review-form-popup) .drawings-phone-row { display:flex; align-items:center; gap:10px; min-width:0; }
:is(#reviews, #review-form-popup) .drawings-phone-icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; flex:0 0 38px; border-radius:50%; background:#f3f5f7; color:#526074; font-size:17px; }
:is(#reviews, #review-form-popup) .drawings-phone-input { display:flex; align-items:center; flex:1; min-width:0; border:1px solid #d6dde6; border-radius:7px; background:#fff; box-shadow:0 2px 4px rgba(30,45,65,.06); }
:is(#reviews, #review-form-popup) .drawings-phone-input .form-control { min-width:0; border:0 !important; box-shadow:none !important; background:transparent; margin:0; }
:is(#reviews, #review-form-popup) .drawings-phone-input .pui-phone-prefix-select { width:64px; flex:0 0 64px; padding-left:7px; padding-right:3px; border-right:1px solid #d6dde6 !important; border-radius:0 !important; }
:is(#reviews, #review-form-popup) .drawings-phone-note { margin:10px 0 0; font-size:12px; line-height:1.5; color:#526074; }
@media(max-width:400px) {
    :is(#reviews, #review-form-popup) .drawings-phone-row { gap:6px; }
    :is(#reviews, #review-form-popup) .drawings-phone-icon { width:28px; height:28px; flex-basis:28px; font-size:14px; }
    :is(#reviews, #review-form-popup) .drawings-phone-input input { padding-left:6px; }
}
@media(max-width:800px) { #review-form-popup { max-width:calc(100vw - 20px) !important; max-height:calc(100dvh - 20px) !important; } .drawings-popup-side { display:none; } .drawings-popup-main { padding:30px 18px 22px; } #review-form-popup-title { font-size:24px !important; } }
@media(max-width:520px) { #review-form-popup .drawings-offer__contact-row { grid-template-columns:1fr; gap:0; } #review-form-popup .drawings-offer__phone-heading strong { font-size:14px; } #review-form-popup .drawings-offer__phone-heading label { font-size:12px; } }
@media(max-width:1200px), (max-height:850px) {
    #review-form-popup {
        top:calc(var(--drawings-viewport-top, 0px) + 8px) !important;
        left:50% !important;
        transform:translateX(-50%) !important;
        width:min(1120px, calc(100vw - 16px)) !important;
        max-width:calc(100vw - 16px) !important;
        height:calc(var(--drawings-viewport-height, 100dvh) - 16px) !important;
        max-height:calc(var(--drawings-viewport-height, 100dvh) - 16px) !important;
        overflow:hidden !important;
    }
    #review-form-popup .drawings-popup-main { display:flex; flex-direction:column; min-height:0; padding:18px 14px 0; }
    #review-form-popup #review-form-popup-header { margin-bottom:10px !important; }
    #review-form-popup #review-form-popup-title { font-size:22px !important; margin:0 30px 6px 0 !important; }
    #review-form-popup #review-form-popup-header-desc { font-size:13px !important; line-height:1.4; }
    #review-form-popup #review-form-close { top:8px !important; right:8px !important; }
    #review-form-popup #review-form-popup-inner,
    #review-form-popup #review-form-popup-content,
    #review-form-popup .js-review-form-shell,
    #review-form-popup .js-review-form { display:flex; flex-direction:column; flex:1; min-height:0; overflow:hidden !important; }
    #review-form-popup .js-review-title:empty { display:none; }
    #review-form-popup .drawings-popup-fields { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 2px 8px; scroll-padding-block:8px; }
    #review-form-popup .form-group { margin-bottom:9px !important; }
    #review-form-popup label { margin-bottom:3px; font-size:13px; }
    #review-form-popup .form-control { height:42px; padding:8px 10px; font-size:16px; }
    #review-form-popup textarea.form-control { height:60px; min-height:60px; }
    #review-form-popup .drawings-offer__contact-row > .form-group:last-child { padding:8px; }
    #review-form-popup .drawings-offer__phone-heading { margin-bottom:6px; }
    #review-form-popup .form-check-label { font-size:12px; }
    #review-form-popup .drawings-popup-actions { flex:none; padding:10px 0 max(10px, env(safe-area-inset-bottom, 0px)); border-top:1px solid #e3e8ef; background:#fff; }
    #review-form-popup .drawings-popup-actions .js-review-submit { width:100% !important; margin:0 !important; min-height:44px; }
    #review-form-popup .drawings-offer__delivery-note { margin:5px 0 0 !important; font-size:12px; line-height:1.3; }
}
@media(min-width:801px) and (max-width:1200px), (min-width:801px) and (max-height:850px) {
    #review-form-popup .drawings-popup-side { width:30%; flex-basis:30%; min-height:0; overflow-y:auto; overscroll-behavior:contain; }
    #review-form-popup #review-form-popup-header-img { height:170px !important; }
    #review-form-popup .drawings-popup-side-copy { padding:18px 20px; }
    #review-form-popup .drawings-popup-side-copy h2 { font-size:24px; }
    #review-form-popup .drawings-popup-project-name { font-size:17px; margin-bottom:16px; }
    #review-form-popup .drawings-popup-benefits li { gap:10px; margin-bottom:14px; font-size:13px; }
    #review-form-popup .drawings-popup-benefits i { width:36px; height:36px; flex-basis:36px; font-size:20px; }
    #review-form-popup .drawings-popup-signature { margin-top:18px; font-size:21px; }
    #review-form-popup .drawings-popup-main { padding:22px 22px 0; }
    #review-form-popup #review-form-popup-title { font-size:24px !important; }
    #review-form-popup .form-control { font-size:14px; }
}
h2.pui-section-heading { display:flex !important; align-items:center; justify-content:center; gap:20px; width:100%; margin:18px auto 22px !important; padding:0; color:#101827 !important; font-size:14px !important; font-weight:600 !important; line-height:1.65 !important; letter-spacing:2.5px !important; text-align:center !important; text-transform:uppercase !important; overflow-wrap:anywhere; }
h2.pui-section-heading::before,h2.pui-section-heading::after { content:'' !important; display:block !important; position:static !important; flex:0 0 60px; width:60px !important; height:1px !important; margin:0 !important; background:currentColor !important; border:0 !important; transform:none !important; }
@media(max-width:640px) { h2.pui-section-heading { gap:10px; font-size:12px !important; letter-spacing:1.5px !important; margin:16px auto 20px !important; } h2.pui-section-heading::before,h2.pui-section-heading::after { width:22px !important; flex-basis:22px; } }

/* Original product.tpl, line 10221 */
h3.pui-section-heading, #changes > h2, .planz-selected-reviews h2.psr-title { display:flex !important; align-items:center; justify-content:center; gap:20px; width:100% !important; margin:18px auto 22px !important; padding:0; color:#101827 !important; font-size:14px !important; font-weight:600 !important; line-height:1.65 !important; letter-spacing:2.5px !important; text-align:center !important; text-transform:uppercase !important; overflow-wrap:anywhere; }
h3.pui-section-heading::before,h3.pui-section-heading::after,#changes > h2::before,#changes > h2::after,.planz-selected-reviews h2.psr-title::before,.planz-selected-reviews h2.psr-title::after { content:'' !important; display:block !important; position:static !important; flex:0 0 60px; width:60px !important; height:1px !important; margin:0 !important; background:currentColor !important; border:0 !important; transform:none !important; }
#budget .pui-budget-section { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:0; padding:0; border:1px solid #e6ecf3; border-radius:14px; overflow:hidden; background:linear-gradient(120deg,#f8fafc,#fff); color:#101827; }
#budget .pui-budget-main { padding:24px 20px; background:transparent; border:0; min-width:0; }
#budget .pui-budget-eyebrow { display:inline-flex; align-items:center; gap:10px; padding:9px 12px; background:#fff; border:1px solid #e3eaf3; border-radius:8px; color:#e03838; font-size:13px; font-weight:700; text-transform:uppercase; }
#budget .pui-budget-eyebrow-dot { width:12px; height:12px; background:#25ce52; border-radius:3px; }
#budget .pui-budget-heading { color:#101827; font-size:clamp(23px,1.8vw,32px); line-height:1.2; font-weight:800; margin:20px 0 16px; }
#budget .pui-budget-lead,#budget .pui-budget-footnote { color:#6c7d99; font-size:14px; line-height:1.55; margin:0 0 20px; }
#budget .pui-budget-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:22px 0; }
#budget .pui-budget-card { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:16px 12px; border:1px solid #e3eaf3; border-radius:8px; background:#fff; min-width:0; box-shadow:none; }
#budget .pui-budget-card-label { margin:0 0 7px; color:#60718e; font-size:13px; line-height:1.4; }
#budget .pui-budget-card-price { margin:0; font-size:clamp(19px,1.6vw,27px); font-weight:800; line-height:1.25; color:#101827; white-space:nowrap; }
#budget .pui-budget-card-icon { width:48px; height:48px; object-fit:contain; flex:0 0 48px; }
#budget .pui-budget-detail-block { padding:0; background:transparent; border:0; }
#budget .pui-budget-detail-heading { color:#101827; font-size:16px; font-weight:700; line-height:1.4; margin:0 0 16px; }
#budget .pui-budget-detail-grid { display:grid; grid-template-columns:1fr; gap:18px; }
#budget .pui-budget-detail-row { display:flex; align-items:flex-start; gap:12px; color:#6c7d99; font-size:14px; line-height:1.5; }
#budget .pui-budget-detail-row strong { color:#101827; }
#budget .pui-budget-check-icon { display:flex; align-items:center; justify-content:center; width:28px; height:28px; flex:0 0 28px; border-radius:6px; color:#fff; background:#e03838; font-size:22px; font-weight:700; }
#budget .pui-budget-footnote { margin:20px 0 14px; }
#budget .pui-budget-price-date { margin:0; color:#e03838; font-size:14px; }
#budget .pui-budget-side-panel { display:flex !important; flex-direction:column; align-items:center; justify-content:center; padding:32px 24px; border:0; border-left:1px solid #e5ebf3; background:transparent; text-align:center; }
#budget .pui-budget-side-icon-box { display:flex; align-items:center; justify-content:center; width:82px; height:82px; margin:0 0 24px; border-radius:14px; background:#fde8eb; }
#budget .pui-budget-side-icon-box i { color:#e03838 !important; font-size:38px; }
#budget .pui-budget-side-title { color:#101827; font-size:clamp(24px,2vw,34px); line-height:1.2; font-weight:800; margin:0 0 22px; }
#budget .pui-budget-side-text { color:#6c7d99; font-size:18px; line-height:1.55; margin:0 0 28px; }
#budget .pui-cost-side-btn { display:flex !important; align-items:center; justify-content:center; gap:14px; width:100%; min-height:60px; margin:0; padding:15px 12px; background:#e03838 !important; color:#fff !important; border:0; border-radius:8px; font-size:21px; font-weight:600; }
#budget .pui-cost-side-btn i { color:#fff; font-size:26px; }
#budget .pui-budget-side-note { width:100%; padding:24px 0 0; margin:26px 0 0; border-top:1px solid #e5ebf3; color:#6c7d99; font-size:16px; line-height:1.6; }
@media(min-width:1024px) and (max-width:1450px) { #budget .pui-budget-card-grid { grid-template-columns:1fr; } }
@media(max-width:1023px) { #budget .pui-budget-section { grid-template-columns:1fr; } #budget .pui-budget-side-panel { border-left:0; border-top:1px solid #e5ebf3; } }
@media(max-width:640px) { h3.pui-section-heading,#changes > h2,.planz-selected-reviews h2.psr-title { gap:10px; font-size:12px !important; letter-spacing:1.5px !important; margin:16px auto 20px !important; } h3.pui-section-heading::before,h3.pui-section-heading::after,#changes > h2::before,#changes > h2::after,.planz-selected-reviews h2.psr-title::before,.planz-selected-reviews h2.psr-title::after { width:22px !important; flex-basis:22px; } #budget .pui-budget-main { padding:20px 14px; } #budget .pui-budget-card-grid { grid-template-columns:1fr; } #budget .pui-budget-card-price { font-size:25px; } #budget .pui-budget-side-panel { padding:26px 18px; } #budget .pui-budget-side-text { font-size:16px; } }

/* Original product.tpl, line 10255 */
#budget .pui-budget-heading { color:#101827 !important; font-size:clamp(23px,1.8vw,32px) !important; line-height:1.2 !important; font-weight:800 !important; margin:20px 0 16px !important; }
#budget .pui-budget-card-price { font-size:clamp(19px,1.6vw,27px) !important; font-weight:800 !important; color:#101827 !important; }
#budget .pui-budget-card-label { color:#60718e !important; font-size:13px !important; }
#budget .pui-budget-detail-heading { color:#101827 !important; font-size:16px !important; font-weight:700 !important; }
#budget .pui-budget-detail-row strong { color:#101827 !important; }
#budget .pui-budget-lead,#budget .pui-budget-footnote,#budget .pui-budget-detail-row { color:#6c7d99 !important; font-size:14px !important; line-height:1.55 !important; }
#budget .pui-budget-side-title { color:#101827 !important; font-size:clamp(24px,2vw,34px) !important; line-height:1.2 !important; font-weight:800 !important; }
#budget .pui-budget-side-text { color:#6c7d99 !important; font-size:18px !important; line-height:1.55 !important; }
#budget .pui-budget-side-note { color:#6c7d99 !important; font-size:16px !important; line-height:1.6 !important; }
#budget .pui-budget-price-date { color:#e03838 !important; }
#budget .pui-cost-side-btn { font-size:21px !important; font-weight:600 !important; }

/* Original product.tpl, line 10268 */
:is(#parcel-fit, .product-project-changes) { margin:26px 0; padding:0 !important; background:linear-gradient(115deg,#f9fbfd,#fff) !important; border:1px solid #e5ebf3; border-radius:14px; overflow:hidden; color:#101827; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__inner { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:0; padding:0; background:transparent; border:0; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__content { min-width:0; padding:28px 24px; background:transparent; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__eyebrow { display:inline-flex; width:auto; padding:8px 12px; margin:0 0 22px; border:0; border-radius:10px; background:#fdeef0 !important; color:#e03838 !important; font-size:14px !important; font-weight:700; text-transform:uppercase; }
:is(#parcel-fit, .product-project-changes) :is(#product-parcel-fit-title, #product-project-changes-title) { margin:0 0 24px !important; padding:0; color:#101827 !important; font-size:clamp(25px,2vw,34px) !important; font-weight:800 !important; line-height:1.2 !important; text-align:left; }
:is(#parcel-fit, .product-project-changes) :is(#product-parcel-fit-title, #product-project-changes-title)::before,:is(#parcel-fit, .product-project-changes) :is(#product-parcel-fit-title, #product-project-changes-title)::after { display:none !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__lead { color:#536681 !important; font-size:17px !important; line-height:1.5 !important; margin:0 0 28px; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__lead strong { display:block; color:#101827 !important; font-weight:700; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list-title { color:#536681 !important; font-size:17px !important; margin:0 0 18px; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list { display:grid; gap:24px; list-style:none; padding:0; margin:0; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list li { position:relative; padding:0 0 0 60px; margin:0; color:#637590 !important; font-size:16px !important; line-height:1.55 !important; background:transparent; border:0; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list li::before { content:'✓' !important; position:absolute; left:0; top:0; display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:10px; background:#fdeef0 !important; color:#e03838 !important; font-size:28px; font-weight:800; border:0; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list strong { display:block; color:#101827 !important; font-weight:700; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__list li::after,:is(#parcel-fit, .product-project-changes) .product-parcel-fit__side-title::before,:is(#parcel-fit, .product-project-changes) .product-parcel-fit__eyebrow::before { content:none !important; display:none !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__side { display:flex !important; flex-direction:column; align-items:center; justify-content:center; padding:32px 28px; background:transparent !important; border:0; border-left:1px solid #e5ebf3; border-radius:0; box-shadow:none; text-align:center; }
:is(#parcel-fit, .product-project-changes) .parcel-fit-location-icon { display:flex; align-items:center; justify-content:center; width:102px; height:102px; margin:0 0 26px; border-radius:16px; background:#fdeef0; }
:is(#parcel-fit, .product-project-changes) .parcel-fit-location-icon i { display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:13px; background:#e03838; color:#fff; font-size:34px; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__side-title { margin:0 0 20px; color:#101827 !important; font-size:clamp(25px,2vw,34px) !important; line-height:1.2 !important; font-weight:800 !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__side-text { margin:0 0 28px; color:#637590 !important; font-size:18px !important; line-height:1.5 !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__cta { display:flex !important; align-items:center; justify-content:center; gap:22px; width:100%; min-height:58px; margin:0 0 12px; padding:14px 12px; border-radius:8px; font-size:19px !important; font-weight:700; line-height:1.3; text-decoration:none; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__cta--primary { background:#e03838 !important; color:#fff !important; border:1px solid #e03838 !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__cta--secondary { background:#fff !important; color:#101827 !important; border:1px solid #cfd9e7 !important; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__cta:focus-visible { outline:2px solid #101827; outline-offset:3px; }
:is(#parcel-fit, .product-project-changes) .product-parcel-fit__note { width:100%; margin:20px 0 0; padding:24px 0 0; border-top:1px solid #e5ebf3; color:#637590 !important; font-size:16px !important; line-height:1.6 !important; }
@media(max-width:1023px) { :is(#parcel-fit, .product-project-changes) .product-parcel-fit__inner { grid-template-columns:1fr; } :is(#parcel-fit, .product-project-changes) .product-parcel-fit__side { border-left:0; border-top:1px solid #e5ebf3; } }
@media(max-width:640px) { :is(#parcel-fit, .product-project-changes) .product-parcel-fit__content { padding:22px 16px; } :is(#parcel-fit, .product-project-changes) .product-parcel-fit__side { padding:26px 18px; } :is(#parcel-fit, .product-project-changes) .product-parcel-fit__list li { padding-left:48px; font-size:15px !important; } :is(#parcel-fit, .product-project-changes) .product-parcel-fit__list li::before { width:34px; height:34px; font-size:24px; } :is(#parcel-fit, .product-project-changes) .product-parcel-fit__lead,:is(#parcel-fit, .product-project-changes) .product-parcel-fit__side-text { font-size:16px !important; } }

/* Original product.tpl, line 10296 */
#changes.product-project-changes .product-parcel-fit__inner { grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); }
.product-project-changes .changes-design-icon i { background:transparent !important; color:#e03838 !important; font-size:44px !important; }
.product-project-changes .product-parcel-fit__list-title { font-weight:700; }
@media(max-width:1023px) { #changes.product-project-changes .product-parcel-fit__inner { grid-template-columns:1fr; } }

/* Original product.tpl, line 10302 */
.ProductPage_plans-table { min-width:0; max-width:100%; }
.ProductPage_plans-table table.pui-room-schedule { width:100%; margin:0; border:0 !important; border-collapse:collapse; background:#fff; color:#101827; table-layout:auto; }
.ProductPage_plans-table .pui-room-schedule caption { caption-side:top; padding:0 0 22px; text-align:left; color:#101827; font-size:14px; font-weight:600; line-height:1.5; letter-spacing:2.5px; text-transform:uppercase; }
.ProductPage_plans-table .pui-room-schedule caption::before { content:''; display:inline-block; width:32px; height:1px; margin:0 14px 4px 0; background:currentColor; }
.ProductPage_plans-table .pui-room-schedule tbody,.ProductPage_plans-table .pui-room-schedule tr { background:#fff !important; border:0 !important; }
.ProductPage_plans-table .pui-room-schedule td,.ProductPage_plans-table .pui-room-schedule th { padding:15px 8px !important; border:0 !important; border-bottom:1px solid #dfe5ed !important; background:transparent !important; color:#101827 !important; font-size:16px !important; line-height:1.5; vertical-align:top; }
.ProductPage_plans-table .pui-room-schedule .pui-room-number { width:32px; padding-left:0 !important; color:#69768a !important; font-weight:400; white-space:nowrap; }
.ProductPage_plans-table .pui-room-schedule .pui-room-name { text-align:left; font-weight:700 !important; overflow-wrap:anywhere; }
.ProductPage_plans-table .pui-room-schedule .pui-room-area { text-align:right; padding-right:0 !important; font-weight:400; white-space:nowrap; }
@media(min-width:1024px) and (max-width:1500px) { .ProductPage_plans-table:has(.pui-room-schedule) { width:100% !important; flex-basis:100%; } }
@media(max-width:640px) { .ProductPage_plans-table .pui-room-schedule caption { font-size:12px; letter-spacing:1.6px; padding:18px 0; } .ProductPage_plans-table .pui-room-schedule td,.ProductPage_plans-table .pui-room-schedule th { font-size:14px !important; padding:12px 5px !important; } .ProductPage_plans-table .pui-room-schedule .pui-room-number { width:25px; } .ProductPage_plans-table .pui-room-schedule .pui-room-area { max-width:46vw; white-space:normal; overflow-wrap:normal; } }
@media(max-width:360px) { .ProductPage_plans-table .pui-room-schedule td,.ProductPage_plans-table .pui-room-schedule th { font-size:13px !important; } }

/* Original product.tpl, line 10316 */
.pui-project-versions { display:grid !important; grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr); align-items:stretch; gap:18px; max-width:1096px; margin:32px auto 0; }
.pui-project-version-card { display:flex; min-width:0; padding:16px; border:1px solid #dfe5ed; border-radius:12px; background:#fff; box-shadow:0 2px 8px rgba(16,24,39,.03); }
.pui-project-version-card__preview { flex:0 0 42%; align-self:center; overflow:hidden; border-radius:8px; background:#f3f5f7; aspect-ratio:1.43; }
.pui-project-version-card__preview img { display:block; width:100%; height:100%; object-fit:cover; }
.pui-project-version-card__preview--mirror img { transform:scaleX(-1); }
.pui-project-version-card__content { display:flex; flex:1; min-width:0; flex-direction:column; padding:4px 0 0 18px; }
.pui-project-version-card__content h3 { margin:0; color:#101827; font-size:19px; font-weight:700; line-height:1.25; }
.pui-project-version-card__content p { margin:8px 0 16px; color:#69768a; font-size:15px; line-height:1.35; }
.pui-project-version-card__button { display:flex !important; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; margin-top:auto !important; padding:9px 14px !important; border:0 !important; border-radius:7px !important; background:#fff0f0 !important; color:#e03838 !important; font-size:15px !important; font-weight:700 !important; line-height:1.2; text-align:left; box-shadow:none !important; }
.pui-project-version-card__button:hover:not(:disabled) { background:#e03838 !important; color:#fff !important; }
.pui-project-version-card__button:disabled { cursor:default; background:#f1f3f5 !important; color:#98a1ad !important; opacity:1 !important; }
.pui-project-version-card.is-selected { border-color:#e5e9ef; }
.pui-project-versions__switch { position:relative; display:flex; align-items:center; justify-content:center; color:#e03838; }
.pui-project-versions__switch::before { content:''; position:absolute; width:1px; height:76px; background:#e2e7ee; }
.pui-project-versions__switch i { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:50%; background:#fff0f0; font-size:19px; }
.pui-project-versions .plan_download_button { grid-column:1 / -1; margin-top:8px; }
@media(max-width:767px) { .pui-project-versions { grid-template-columns:1fr; gap:12px; margin-top:22px; } .pui-project-versions__switch { height:28px; order:1; } .pui-project-versions__switch::before { width:78px; height:1px; } .pui-project-version-card { padding:12px; } .pui-project-version-card__content { padding-left:13px; } .pui-project-version-card__content h3 { font-size:16px; } .pui-project-version-card__content p { margin:5px 0 10px; font-size:13px; } .pui-project-version-card__button { min-height:38px; padding:7px 10px !important; font-size:13px !important; } }

/* Original product.tpl, line 10335 */
.ProductPage_plans-table .pui-room-schedule td,.ProductPage_plans-table .pui-room-schedule th { font-size:13px !important; padding:8px 6px !important; line-height:1.4; }
.ProductPage_plans-table .pui-room-schedule caption { font-size:12px; letter-spacing:1.8px; padding:0 0 12px; }
.ProductPage_plans-container { align-items:flex-start; column-gap:24px; }
.ProductPage_plans-container > .ProductPage_plans-img-container { width:calc(50% - 12px); }
.ProductPage_plans-container:not(:has(> .pui-plan-details)) > .ProductPage_plans-img-container { width:100%; }
.ProductPage_plans-container > .pui-plan-details { width:calc(50% - 12px) !important; flex-basis:auto !important; min-width:0; container-type:inline-size; }
.pui-plan-changes { display:flex; align-items:center; gap:12px; margin-top:20px; padding:14px; background:#faf8f8; border-radius:9px; }
.pui-plan-changes > i { display:grid; place-items:center; flex:0 0 36px; height:40px; color:#e03838; background:#ffeded; border-radius:7px; font-size:22px; }
.pui-plan-changes > div { flex:1; min-width:0; }
.pui-plan-changes strong { display:block; font-size:12px; line-height:1.3; color:#101827; }
.pui-plan-changes p { margin:5px 0 0; font-size:10px; line-height:1.4; color:#647089; }
.pui-plan-changes__arrow { display:block; flex:0 0 18px; color:#e03838; font-size:24px; line-height:1; animation:pui-plan-cta-arrow 1.4s ease-in-out infinite; }
@keyframes pui-plan-cta-arrow { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@media(prefers-reduced-motion:reduce) { .pui-plan-changes__arrow { animation:none; } }
.pui-plan-changes button { flex-shrink:0; display:flex; gap:12px; align-items:center; padding:12px; border:0; border-radius:6px; color:#fff; background:#e03838; font-size:11px; cursor:pointer; }
.pui-project-versions { grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr); gap:12px 10px; width:100%; max-width:100%; margin:14px 0 0; padding:16px 10px 10px; border-radius:10px; background:#fff; box-shadow:0 3px 16px #10182708; box-sizing:border-box; }
.pui-project-versions__heading { grid-column:1 / -1; display:flex; align-items:center; gap:12px; margin:0 0 3px !important; color:#101827; font-size:14px !important; font-weight:500; line-height:1.4; text-transform:uppercase; }
.pui-project-versions__heading::before { content:''; flex:0 0 30px; height:2px; background:#e03838; }
.pui-project-version-card { padding:8px; gap:0; border-radius:7px; box-shadow:none; }
.pui-project-version-card__preview { flex-basis:20%; border-radius:4px; }
.pui-project-version-card__content { padding:0 0 0 9px; }
.pui-project-version-card__content h3 { margin:0 !important; font-size:11px !important; line-height:1.25; }
.pui-project-version-card__content p { margin:4px 0 7px !important; font-size:10px !important; line-height:1.3; }
.pui-project-version-card__button { min-height:27px; padding:6px 8px !important; font-size:10px !important; gap:5px; border-radius:4px !important; }
.pui-project-version-card.is-selected .pui-project-version-card__preview img { filter:grayscale(1); opacity:.65; }
.pui-project-versions__switch { height:auto; order:0; }
.pui-project-versions__switch::before { width:1px; height:100%; }
.pui-project-versions__switch i { width:28px; height:28px; font-size:14px; }
.pui-project-versions .plan_download_button { margin-top:2px; }
.pui-version-mobile-copy { display:none; }
@media(max-width:360px) {
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card .pui-project-version-card__content h3 { white-space:normal; min-height:30px; }
}
@media(max-width:767px) {
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) { grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr); gap:6px; padding:8px 6px; margin-top:10px; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card { display:block; padding:7px 6px; min-width:0; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__preview,
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-version-desktop-copy,
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__button-label { display:none !important; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-version-mobile-copy { display:inline; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__content { width:100%; padding:0; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__content h3 { font-size:12px !important; line-height:1.25; white-space:nowrap; letter-spacing:-.25px; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__content p { margin:3px 0 5px !important; font-size:11px !important; line-height:1.3; white-space:nowrap; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-version-card__button { width:100%; min-height:36px; margin:0; justify-content:space-between; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-versions__switch i { width:22px; height:22px; font-size:12px; }
    body.product-product .pui-project-versions:not(.pui-versions-lightbox) .pui-project-versions__heading { margin:0 0 2px !important; font-size:12px !important; }
}
.pui-project-versions .pui-plan-download { display:flex; align-items:center; justify-content:center; gap:20px; width:70%; max-width:330px; min-height:38px; padding:7px 12px; border:1px solid #182033; border-radius:5px; color:#101827; background:#fff; font-size:12px; font-weight:700; text-decoration:none; }
.pui-project-versions .pui-plan-download img { width:19px; }
.pui-project-versions .plan_download_button p { margin:5px 0 0 !important; font-size:9px; font-weight:400; }
.pui-project-versions.pui-versions-lightbox { position:fixed; z-index:10000000000; bottom:12px; left:50%; transform:translateX(-50%); width:520px; max-width:calc(100vw - 24px); margin:0; padding:8px; grid-template-columns:1fr 1fr; gap:8px; box-shadow:0 3px 24px #0003; }
.pui-versions-lightbox .pui-project-versions__heading,.pui-versions-lightbox .pui-project-versions__switch,.pui-versions-lightbox .pui-project-version-card__preview,.pui-versions-lightbox .pui-project-version-card__content p,.pui-versions-lightbox .plan_download_button { display:none !important; }
.pui-versions-lightbox .pui-project-version-card { padding:0; border:0; background:transparent; }
.pui-versions-lightbox .pui-project-version-card__content { padding:0; }
.pui-versions-lightbox .pui-project-version-card__content h3 { display:none; }
.pui-versions-lightbox .pui-project-version-card__button { height:36px; min-height:36px; margin:0 !important; justify-content:center; font-size:12px !important; }
.pui-versions-lightbox .pui-project-version-card__button-label { display:none; }
.pui-versions-lightbox [data-mirror-state="0"]::before { content:'Wersja podstawowa'; }
.pui-versions-lightbox [data-mirror-state="1"]::before { content:'Lustro'; }
@media(max-width:1023px) { .ProductPage_plans-container > .ProductPage_plans-img-container,.ProductPage_plans-container > .pui-plan-details { width:100% !important; } }
@container(max-width:390px) { .pui-plan-changes { flex-wrap:wrap; } .pui-plan-changes button { margin-left:auto; } .pui-project-versions { gap:10px 6px; grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr); padding:12px 5px 8px; } .pui-project-version-card { flex-direction:column; padding:7px; } .pui-project-version-card__preview { width:45%; flex-basis:auto; } .pui-project-version-card__content { padding:8px 0 0; flex:1; } .pui-project-versions__heading { font-size:12px !important; } }
.pui-rooms-expand { display:flex; align-items:center; justify-content:flex-end; gap:7px; margin:0 0 12px auto; padding:5px 0; border:0; background:none; color:#e03838; font-size:12px; font-weight:600; cursor:pointer; }
.pui-rooms-dialog { width:900px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 32px); padding:0; border:1px solid #e2e7ee; border-radius:14px; background:#fff; color:#101827; box-shadow:0 15px 70px #0004; overflow:auto; }
.pui-rooms-dialog::backdrop { background:rgba(16,24,39,.6); }
.pui-rooms-dialog-header { position:sticky; top:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 24px; background:#fff; border-bottom:1px solid #e2e7ee; }
.pui-rooms-dialog-header h2 { margin:0 !important; font-size:20px !important; color:#101827 !important; }
.pui-rooms-dialog-header h2::before,.pui-rooms-dialog-header h2::after { display:none !important; }
.pui-rooms-dialog-close { border:0; background:#f3f5f8; color:#101827; border-radius:50%; width:36px; height:36px; flex:0 0 36px; cursor:pointer; font-size:26px; }
.pui-rooms-dialog-content { padding:22px 24px; }
.pui-rooms-dialog .pui-room-schedule { margin:0 0 28px; }
.pui-rooms-dialog .pui-room-schedule caption { font-size:14px; padding:0 0 16px; }
.pui-rooms-dialog .pui-room-schedule td,.pui-rooms-dialog .pui-room-schedule th { font-size:18px !important; padding:14px 10px !important; }
@media(max-width:640px) { .ProductPage_plans-table .pui-room-schedule td,.ProductPage_plans-table .pui-room-schedule th { font-size:12px !important; padding:7px 4px !important; } .pui-rooms-dialog-header { padding:12px 14px; } .pui-rooms-dialog-header h2 { font-size:16px !important; } .pui-rooms-dialog-content { padding:18px 12px; } .pui-rooms-dialog .pui-room-schedule td,.pui-rooms-dialog .pui-room-schedule th { font-size:15px !important; padding:11px 5px !important; } }

/* Original product.tpl, line 10433 */
#tech-spec { background:#fff; color:#101827; padding:20px 16px; }
#tech-spec .pui-section-heading::before,#tech-spec .pui-section-heading::after { background:#e03838 !important; }
#tech-spec .pui-tech-table { width:100%; border:0 !important; background:#fff !important; margin:26px 0 14px; border-collapse:collapse; }
#tech-spec .pui-tech-table--desktop { gap:0; }
#tech-spec .pui-tech-table--desktop > tbody { width:50%; min-width:0; padding:0 18px 0 0; }
#tech-spec .pui-tech-table.pui-tech-table--desktop > tbody + tbody { padding:0 0 0 18px; border-left:1px solid #e1e6ee !important; }
#tech-spec .pui-tech-table tbody,#tech-spec .pui-tech-table tr { background:#fff !important; border:0 !important; }
#tech-spec .pui-tech-table tr { height:auto !important; min-height:46px; }
#tech-spec .pui-tech-table td { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; position:relative; width:100%; padding:12px 7px 12px 28px !important; background:#fff !important; border:0 !important; border-bottom:1px solid #dfe5ed !important; color:#101827 !important; font-size:14px !important; line-height:1.5; }
#tech-spec .pui-tech-table td > span:first-child { flex:1 1 48%; min-width:0; font-weight:700 !important; }
#tech-spec .pui-tech-table td > span:last-child { flex:0 1 50%; float:none !important; text-align:right; font-weight:400 !important; overflow-wrap:anywhere; }
#tech-spec .pui-tech-table tr:nth-child(odd) td::before { content:''; position:absolute; left:7px; top:19px; width:7px; height:7px; border-radius:50%; background:#e03838; }
#tech-spec #moreSpecButton { margin-top:2px; padding:10px 20px; border-radius:7px; background:#e03838 !important; border-color:#e03838 !important; color:#fff !important; font-size:14px; }
@media(max-width:1023px) { #tech-spec .pui-tech-table--desktop { display:none !important; } #tech-spec .pui-tech-table--mobile { display:table !important; } }
@media(min-width:1024px) { #tech-spec .pui-tech-table--mobile { display:none !important; } #tech-spec .pui-tech-table--desktop { display:flex !important; } }
@media(max-width:640px) { #tech-spec { padding:16px 10px; } #tech-spec .pui-tech-table td { font-size:13px !important; padding:10px 4px 10px 20px !important; gap:10px; } #tech-spec .pui-tech-table tr:nth-child(odd) td::before { left:4px; top:17px; width:6px; height:6px; } }

/* Original product.tpl, line 10451 */
.pui-mobile-section-nav { display:none; }
@media(max-width:1023px) {
 #product-tabs { display:none !important; }
 .pui-mobile-section-nav.is-visible { display:block; }
 .pui-mobile-section-nav { position:fixed; top:auto; bottom:calc(var(--pui-mobile-menu-height, 0px) + 3px); left:4px; right:4px; z-index:900; border-radius:9px; background:#e03838; box-shadow:0 2px 7px #10182720; }
 .pui-mobile-section-nav__links { display:flex; align-items:center; gap:2px; padding:5px 32px 5px 7px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; }
 .pui-mobile-section-nav__links::-webkit-scrollbar { display:none; }
 .pui-mobile-section-nav a { display:flex; align-items:center; justify-content:center; flex:0 0 auto; min-height:32px; padding:7px 10px; border-radius:22px; color:#fff !important; font-size:10px !important; font-weight:600; line-height:1.2; white-space:nowrap; text-decoration:none; text-transform:uppercase; }
 .pui-mobile-section-nav a[aria-current="location"] { background:#fff; color:#e03838 !important; border-radius:22px !important; }
 .pui-mobile-section-nav__next { position:absolute; right:0; top:0; bottom:0; display:flex; align-items:center; justify-content:center; width:28px; padding:0; border:0; border-radius:0 9px 9px 0; color:#fff; background:linear-gradient(90deg,#e0383800,#e03838 25%); font-size:25px; cursor:pointer; }
 .pui-mobile-section-nav a:focus-visible,.pui-mobile-section-nav__next:focus-visible { outline:2px solid #101827; outline-offset:-2px; }
}

/* Original product.tpl, line 10516 */
#product-purchase-info { margin:0 0 32px; color:#101827; font-size:15px; line-height:1.5; }
#product-purchase-info p { margin:0; }
#product-purchase-info h2,#product-purchase-info h3 { margin:0 0 8px; color:#101827; font-size:21px; line-height:1.3; font-weight:700; text-transform:none; letter-spacing:normal; }
.purchase-design-hero { position:relative; overflow:hidden; border:1px solid #f7dede; border-radius:12px; background:#fdf8f8; min-height:215px; }
.purchase-design-visual { position:absolute; right:0; top:0; width:42%; height:100%; object-fit:cover; mask-image:linear-gradient(to right,transparent,#000 25%); }
.purchase-design-copy { position:relative; display:flex; gap:20px; padding:28px 24px; width:72%; }
.purchase-design-icon { display:flex; align-items:center; justify-content:center; flex:0 0 56px; width:56px; height:56px; border-radius:12px; background:#e038380d; color:#e03838; font-size:28px; }
.purchase-design-copy > div { min-width:0; }
.purchase-design-price-row { display:flex; align-items:center; gap:22px; margin-top:24px; }
.purchase-design-price { flex-shrink:0; }
.purchase-design-price strong { display:block; color:#e03838; font-size:40px; line-height:1.2; margin-top:3px; }
.purchase-design-gift { display:flex; align-items:center; gap:14px; padding:12px 16px; border-left:1px solid #d5dce6; background:#fff4f4e8; border-radius:8px; }
.purchase-design-gift > i { font-size:30px; color:#e03838; }
.purchase-design-gift strong { display:block; color:#e03838; }
.purchase-design-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:16px; margin:18px 0; }
.purchase-design-card { min-width:0; padding:20px; border:1px solid #e8ecf2; border-radius:12px; background:#fff; box-shadow:0 6px 22px #10182704; }
.purchase-design-card-heading { display:flex; align-items:center; gap:16px; margin-bottom:14px; }
.purchase-design-card-heading .purchase-design-icon { width:48px; height:48px; flex-basis:48px; font-size:25px; }
.purchase-design-contents { display:flex; align-items:center; gap:12px; }
#product-purchase-info .product-ai-package-list { flex:1; list-style:none; padding:0; margin:0; }
#product-purchase-info .product-ai-package-list li { position:relative; padding:7px 0 7px 36px; line-height:1.35; }
#product-purchase-info .product-ai-package-list li:before { content:"✓"; position:absolute; left:0; top:5px; width:26px; height:26px; border-radius:50%; background:#e038380d; color:#e03838; text-align:center; font-weight:700; line-height:26px; }
.purchase-design-package { width:46%; max-height:230px; object-fit:contain; }
.purchase-design-bundle { display:flex; align-items:center; gap:7px; margin-top:25px; }
.purchase-design-bundle figure { flex:1; min-width:0; margin:0; text-align:center; align-self:flex-start; }
.purchase-design-bundle img { width:100%; height:88px; object-fit:contain; border-radius:3px; }
.purchase-design-bundle figure:first-child img { object-fit:cover; }
.purchase-design-bundle figcaption { font-size:13px; line-height:1.25; margin-top:6px; }
.purchase-design-bundle > span { color:#e03838; font-size:24px; font-weight:700; padding-bottom:28px; }
.purchase-design-standard-image { width:100%; height:155px; object-fit:cover; border-radius:8px; }
#product-purchase-info .product-ai-cart-button { display:flex; align-items:center; justify-content:center; gap:24px; width:100%; padding:15px 20px; border:0; border-radius:6px; color:#fff; background:#e03838; font-size:18px; font-weight:700; cursor:pointer; }
#product-purchase-info .product-ai-cart-button:hover { background:#e03838; }
.purchase-design-grid { grid-template-columns:1fr 1fr; align-items:stretch; }
.purchase-design-promotion,.purchase-design-documentation { position:relative; overflow:hidden; padding:24px; }
#product-purchase-info .purchase-design-package-intro h3 { font-size:14px; margin:0 0 4px; }
.purchase-design-package-intro { margin-bottom:12px; }
.purchase-design-package-intro p { font-size:12px; color:#647089; }
.purchase-design-promotion .purchase-design-contents { gap:8px; }
.purchase-design-promotion .purchase-design-package { width:48%; max-height:260px; }
.purchase-design-documentation { background:linear-gradient(120deg,#fff8f8,#fff); }
.purchase-design-documentation .purchase-design-card-heading { position:relative; z-index:1; }
.purchase-design-document-list { position:relative; z-index:1; list-style:none; padding:0; margin:18px 12% 12px 0; }
.purchase-design-document-list li { display:flex; align-items:center; gap:12px; padding:12px 10px; margin-bottom:8px; border:1px solid #fbe5e5; border-radius:10px; background:#ffffffed; font-size:13px; line-height:1.4; }
.purchase-design-document-list li > i { display:grid; place-items:center; flex:0 0 34px; height:38px; border-radius:8px; color:#e03838; background:#fff0f0; font-size:22px; }
.purchase-design-document-list li > span { flex:1; }
.purchase-design-document-list small { display:block; font-size:11px; color:#707070; }
.purchase-design-document-list a { color:#e03838; text-decoration:underline; white-space:nowrap; cursor:pointer; font-size:12px; }
.purchase-design-document-list a > span { padding-left:7px; }
.purchase-design-papers { position:absolute; right:-20%; top:100px; width:45%; height:100%; pointer-events:none; }
.purchase-design-paper { position:absolute; width:100%; height:85%; background:#fff; padding:12px; box-shadow:0 0 22px #10182726; }
.purchase-design-paper--plan { top:-25px; right:10px; transform:rotate(-16deg); }
.purchase-design-paper--plan img { width:100%; height:80%; object-fit:contain; }
.purchase-design-paper--cover { top:60px; right:0; transform:rotate(15deg); }
.purchase-design-paper--cover > span { display:block; margin:6px 0 14px; font-size:12px; color:#334155; }
.purchase-design-paper--cover img { width:100%; height:100px; object-fit:cover; }
.purchase-design-paper--cover > div { height:70px; background:repeating-linear-gradient(#cdd1d7 0 1px,transparent 1px 7px); opacity:.6; }
.purchase-design-extra-gifts { position:relative; z-index:1; font-size:11px; color:#647089; padding-right:12%; }
@media(max-width:640px) { .purchase-design-document-list { margin-right:0; } .purchase-design-document-list li { gap:8px; font-size:12px; } .purchase-design-document-list a { font-size:11px; } .purchase-design-promotion .purchase-design-contents { flex-direction:row; align-items:center; } .purchase-design-promotion .purchase-design-package { height:auto; } }
@media(max-width:1100px) {
 .purchase-design-copy { width:82%; padding:20px; gap:14px; }
 .purchase-design-price-row { gap:12px; }
 .purchase-design-price strong { font-size:32px; }
 .purchase-design-grid { grid-template-columns:1fr; }
 .purchase-design-bundle img { height:115px; }
}
@media(max-width:640px) {
 #product-purchase-info { font-size:13px; }
 #product-purchase-info h2,#product-purchase-info h3 { font-size:18px; }
 .purchase-design-visual { position:static; width:100%; height:175px; mask-image:none; display:block; }
 .purchase-design-copy { width:100%; padding:16px; gap:10px; }
 .purchase-design-copy > .purchase-design-icon { flex-basis:34px; width:34px; height:38px; font-size:21px; }
 .purchase-design-price-row { flex-direction:column; align-items:flex-start; margin-top:14px; }
 .purchase-design-gift { padding:10px; border-left:0; }
 .purchase-design-card { padding:16px 12px; }
 .purchase-design-card-heading { gap:10px; }
 .purchase-design-contents { flex-direction:column; align-items:stretch; }
 .purchase-design-package { width:100%; height:170px; }
 .purchase-design-bundle { gap:4px; }
 .purchase-design-bundle img { height:68px; }
 .purchase-design-bundle figcaption { font-size:11px; }
 .purchase-design-bundle > span { font-size:18px; }
 #product-purchase-info .product-ai-cart-button { font-size:15px; gap:12px; }
}

/* Original product.tpl, line 10601 */
#product-purchase-info .purchase-design-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
#product-purchase-info .purchase-design-promotion,#product-purchase-info .purchase-design-documentation { padding:20px 16px; }
#product-purchase-info .purchase-design-card-heading { align-items:flex-start; gap:12px; margin-bottom:20px; }
#product-purchase-info .purchase-design-card-heading h3 { font-size:18px; line-height:1.25; margin:3px 0 10px; }
#product-purchase-info .purchase-design-card-heading .purchase-design-icon { width:36px; height:40px; flex-basis:36px; font-size:23px; }
#product-purchase-info .purchase-design-card-heading p { font-size:13px; line-height:1.5; }
#product-purchase-info .purchase-design-contents { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:4px; }
#product-purchase-info .product-ai-package-list li { font-size:12px; padding:9px 0 9px 26px; }
#product-purchase-info .product-ai-package-list li:before { top:8px; width:20px; height:20px; line-height:20px; font-size:14px; color:#e03838; background:#fff0f0; }
#product-purchase-info .purchase-design-package { width:100%; height:auto; max-height:260px; }
#product-purchase-info .purchase-design-document-list { margin-top:10px; margin-right:12%; }
#product-purchase-info .purchase-design-document-list li { gap:8px; padding:10px 8px; min-height:58px; font-size:12px; }
#product-purchase-info .purchase-design-document-list li > i { flex-basis:28px; height:32px; font-size:19px; }
#product-purchase-info .purchase-design-document-list a { font-size:11px; }
#product-purchase-info .purchase-design-package-intro { padding:0 4px 12px; }
#product-purchase-info .purchase-design-extra-gifts { font-size:10px; }
@media(min-width:1600px) { #product-purchase-info .purchase-design-card-heading h3 { font-size:24px; } #product-purchase-info .product-ai-package-list li,#product-purchase-info .purchase-design-document-list li { font-size:15px; } #product-purchase-info .purchase-design-card-heading p { font-size:15px; } }
@media(max-width:1199px) and (min-width:1024px), (max-width:639px) { #product-purchase-info .purchase-design-grid { grid-template-columns:1fr; } }

/* Original product.tpl, line 10621 */
.purchase-standard-benefits { padding:24px 20px; border:1px solid #fbe6e6; border-radius:18px; background:linear-gradient(125deg,#fffafa,#fff); }
.purchase-standard-benefits__badge { display:inline-flex; align-items:center; gap:10px; border-radius:30px; padding:9px 14px; background:#ffeded; color:#e03838; font-size:13px; font-weight:700; }
.purchase-standard-benefits__badge i { font-size:22px; }
#product-purchase-info .purchase-standard-benefits h3 { margin:18px 0 12px; font-size:27px; line-height:1.2; }
#product-purchase-info .purchase-standard-benefits__lead { color:#586174; font-size:14px; line-height:1.6; margin:0 0 18px; }
.purchase-standard-benefits ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.purchase-standard-benefits li { display:flex; align-items:center; gap:14px; padding:16px 12px; background:#fff; border:1px solid #ffe6e6; border-radius:14px; }
.purchase-standard-benefits__icon { display:grid; place-items:center; flex:0 0 46px; height:50px; border-radius:12px; background:#fff3f3; color:#e03838; font-size:26px; }
#product-purchase-info .purchase-standard-benefits h4 { color:#101827; font-size:15px; line-height:1.35; font-weight:700; margin:0 0 5px; text-transform:none; }
#product-purchase-info .purchase-standard-benefits li p { font-size:12px; line-height:1.5; color:#586174; }
@media(max-width:639px) { .purchase-standard-benefits { padding:20px 14px; } #product-purchase-info .purchase-standard-benefits h3 { font-size:24px; } .purchase-standard-benefits li { gap:12px; } }

/* Original product.tpl, line 10688 */
#cf-popup { position:fixed !important; top:calc(var(--cf-viewport-top, 0px) + 8px) !important; left:50% !important; transform:translateX(-50%) !important; width:min(1120px, calc(100vw - 16px)) !important; max-width:calc(100vw - 16px) !important; height:calc(var(--cf-viewport-height, 100dvh) - 16px) !important; max-height:calc(var(--cf-viewport-height, 100dvh) - 16px) !important; box-sizing:border-box; padding:44px 0 0 !important; overflow:hidden !important; flex-direction:column; background:#fff; }
#cf-popup #cf-iframe { display:block; flex:1; width:100% !important; height:100% !important; min-height:0 !important; max-height:none !important; margin:0; border:0; }
#cf-popup #cf-close { position:absolute; top:6px !important; right:10px !important; width:32px; height:32px; z-index:2; background:#fff; border:0; font-size:28px; line-height:1; }
#cf-popup { width:min(640px, calc(100vw - 16px)) !important; height:min(var(--cf-preferred-height, 620px), calc(var(--cf-viewport-height, 100dvh) - 16px)) !important; top:calc(var(--cf-viewport-top, 0px) + var(--cf-viewport-height, 100dvh) / 2) !important; transform:translate(-50%, -50%) !important; }
@media(max-width:640px) { #cf-popup { height:calc(var(--cf-viewport-height, 100dvh) - 16px) !important; } }

/* Original product.tpl, line 11262 */
/* Energy presentation: original project data and icons, two visual variants. */
#heating .pui-energy-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:24px;align-items:stretch;margin-top:28px;padding:20px;background:linear-gradient(120deg,#fafbfc,#fff);border-radius:20px; }
#heating .pui-energy-content { display:flex;flex-direction:column;justify-content:center;gap:18px;min-width:0;width:100%;padding:26px;background:#fff;border-radius:18px;box-shadow:0 8px 32px #17263d06;color:#172033;font-size:15px;line-height:1.55; }
#heating { container-type:inline-size; }
#heating .pui-energy-content .heating_param { margin:0;background:transparent; }
#heating .pui-energy-content img { flex-shrink:0;box-sizing:content-box;width:30px;height:30px;object-fit:contain;padding:15px;background:#fff0f2;border-radius:13px; }
#heating .pui-energy-source-inner { display:grid;grid-template-columns:60px minmax(0,1fr);column-gap:18px;align-items:center; }
#heating .pui-energy-label { grid-column:2;color:#69717f;font-size:15px; }
#heating .pui-energy-value { display:contents; }
#heating .pui-energy-value img { grid-column:1;grid-row:span 2;margin-top:-22px; }
#heating .pui-energy-value span { grid-column:2;font-size:20px;font-weight:700;line-height:1.35; }
#heating .pui-energy-source-inner>i { grid-column:2;margin:8px 0 0;font-size:13px; }
#heating .pui-energy-ventilation { display:flex;align-items:center;gap:18px; }
#heating .pui-energy-ventilation b { display:block;font-size:17px;line-height:1.4;color:#172033; }
#heating .pui-energy-ventilation>div { color:#69717f;min-width:0; }
#heating .pui-energy-content .pui-energy-bonus { padding:18px;background:#fff3f4;border-left:4px solid #e03838;border-radius:12px; }
#heating .pui-energy-bonus>div>div:first-child { color:#e03838;font-size:13px;letter-spacing:1px; }
#heating .pui-energy-bonus img { padding:10px; }
#heating .pui-energy-metrics { display:flex;align-items:flex-start;gap:15px;padding-top:18px;border-top:1px solid #e7eaf0; }
#heating .pui-energy-addon-label { color:#596375;margin:3px 0 9px; }
#heating .pui-energy-addon-row { display:flex;align-items:center;gap:18px;padding:14px;background:#fff5f6;border:1px solid #ffdae0;border-radius:14px;font-weight:700;font-size:17px; }
#heating .pui-energy-addon-row span { min-width:0; }
#heating .pui-energy-addon-note { display:block;margin:6px 0 0 8px;color:#69717f;font-size:13px; }
#heating .pui-energy-visual { min-width:0;min-height:350px;position:relative; }
#heating .pui-energy-visual-inner { height:100%;overflow:hidden;border-radius:20px; }
#heating .pui-energy-visual img { display:block;width:100%;height:100%;min-height:350px;max-height:700px;object-fit:cover; }
#heating .pui-energy-layout--simple { grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:30px; }
#heating .pui-energy-layout--simple .pui-energy-content { background:transparent;padding:0;box-shadow:none;gap:20px; }
#heating .pui-energy-layout--simple .pui-energy-source { padding:24px;background:#fff;border-radius:15px;box-shadow:0 6px 24px #17263d0a; }
#heating .pui-energy-layout--simple .pui-energy-value span { font-size:25px; }
#heating .pui-energy-layout--simple .pui-energy-content img { border-radius:50%; }
#heating .pui-energy-layout--no-image { grid-template-columns:1fr; }
#heating .pui-energy-content img { border-radius:13px!important; }
#heating .pui-energy-layout--simple .pui-energy-content img { border-radius:50%!important; }
@container(max-width:800px) { #heating .pui-energy-layout { padding:12px;gap:18px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); } #heating .pui-energy-content { padding:16px;gap:14px;font-size:13px; } #heating .pui-energy-content img { width:26px;height:26px;padding:10px; } #heating .pui-energy-source-inner { grid-template-columns:46px minmax(0,1fr);column-gap:12px; } #heating .pui-energy-label { font-size:13px; } #heating .pui-energy-value span { font-size:18px; } #heating .pui-energy-ventilation { gap:12px; } #heating .pui-energy-ventilation b { font-size:14px; } #heating .pui-energy-content .pui-energy-bonus { padding:12px; } #heating .pui-energy-bonus img { padding:7px; } #heating .pui-energy-bonus .items-center { align-items:flex-start; } #heating .pui-energy-visual,#heating .pui-energy-visual img { min-height:300px; } #heating .pui-energy-addon-row { font-size:15px;gap:12px; } }
@media(max-width:1100px) { #heating .pui-energy-layout { gap:18px;padding:12px; } #heating .pui-energy-content { padding:18px; } #heating .pui-energy-content img { width:26px;height:26px;padding:10px; } #heating .pui-energy-source-inner { grid-template-columns:46px minmax(0,1fr);column-gap:12px; } #heating .pui-energy-value span { font-size:18px; } #heating .pui-energy-addon-row { font-size:15px;gap:12px; } }
@media(max-width:767px) { #heating .pui-energy-layout { grid-template-columns:1fr;padding:0;background:transparent;gap:20px; } #heating .pui-energy-content { padding:18px; } #heating .pui-energy-layout--simple .pui-energy-source { padding:18px; } #heating .pui-energy-visual { min-height:0; } #heating .pui-energy-visual img { min-height:0;max-height:420px;aspect-ratio:4/3; } #heating .pui-energy-bonus { padding:14px; } }
/* Stretch the existing button hit area; retain its handler, keyboard semantics and disabled state. */
.pui-clickable-card { position:relative; isolation:isolate; }
.pui-clickable-card .pui-project-version-card__content { position:static; }
.pui-clickable-card :is(.pui-project-version-card__button,.pui-cost-side-btn,.open-change-popup) { position:static !important; transform:none !important; }
.pui-clickable-card :is(.pui-project-version-card__button,.pui-cost-side-btn,.open-change-popup):not(:disabled)::after { content:""; display:block; position:absolute; inset:0; z-index:2; width:auto; height:auto; border:0; border-radius:inherit; background:transparent; cursor:pointer; }
.pui-clickable-card:has(button:focus-visible) { outline:2px solid #e03838; outline-offset:3px; }

/* Original product-a11y.css */
/* Product-only palette and type scale. Brand red is not an AA small-text color. */
body.product-product { --pui-brand:#e03838; --pui-ink:#101827; --pui-muted:#4b5563; }
body.product-product main h1 { font-size:15px!important; line-height:1.25!important; }
body.product-product #ProductHeader .pui-panel-title { font-size:12px!important; letter-spacing:normal; }
body.product-product main :is(h2.pui-section-heading,h3.pui-section-heading,#changes>h2,.psr-title) { font-size:18px!important; }
body.product-product main :is(.pui-budget-heading,.drawings-offer__title,.pui-budget-side-title,#product-project-changes-title,#product-parcel-fit-title,#product-build-fit-title,.purchase-standard-benefits h2) { font-size:22px!important; line-height:1.3!important; }
body.product-product main :is(.pui-project-version-card__content h3,.pui-project-version-card__content p,.pui-project-version-card__button) { font-size:12px!important; }
body.product-product :is(.pui-service-item,.pui-service-item b,.pui-availability-link,.pui-availability-detail,.pui-contact-hours-white) { font-size:12px!important; }
body.product-product .pui-mobile-section-nav a { font-size:12px!important; }
body.product-product .purchase-design-document-list a { font-size:13px!important; }
body.product-product main :is(#order,.pui-cost-side-btn,.product-parcel-fit__cta,.js-review-submit) { font-size:16px!important; font-weight:700!important; }
body.product-product main :is(.planz-contact-strip__cta,#openProductContactModalButton,.pui-price-guarantee-button,.pui-phone-cta,.planz-contact-strip__phone,.plan_download_button button) { font-size:13px!important; }
body.product-product main :is(.pui-budget-side-text,.pui-budget-side-note,.product-parcel-fit__lead,.product-parcel-fit__list-title) { font-size:15px!important; }
/* Same red for accents; neutral text supplies the required 4.5:1 contrast. */
body.product-product main :is(.text-primary,.\!text-primary,.pui-text-red,.pui-red-block-text,.pui-product-accordion-title,.pui-budget-price-date,.pui-budget-eyebrow,.product-parcel-fit__eyebrow,.purchase-standard-benefits__badge),
body.product-product #ProductHeader :is(.pui-text-red,.pui-project-docs strong,.pui-panel-note a strong),
body.product-product #heating .pui-energy-bonus>div>div:first-child { color:#101827!important; }
body.product-product main a:where(:not(.pui-phone-cta):not(.planz-contact-strip__phone):not(.bg-primary)),
body.product-product main :is(.pui-rooms-expand,.pui-project-version-card__button,.pui-price-guarantee-button,#openProductContactModalButton,.planz-contact-strip__cta),
body.product-product .pui-mobile-section-nav a { color:#101827!important; text-decoration-color:#e03838!important; }
body.product-product main :is(.purchase-design-document-list a,.pui-rooms-expand,.pui-price-guarantee-button,.pui-spec-strip .ProductPage_attr--link) { text-decoration-line:underline; text-underline-offset:3px; }
body.product-product main :is(.pui-addon-price,.pui-budget-lead,.pui-budget-footnote,.pui-budget-detail-row,.pui-budget-side-text,.pui-budget-side-note,.pui-budget-card-label,.drawings-offer__eyebrow,.drawings-offer__intro,.drawings-offer__delivery-note,.drawings-offer__description p,.drawings-offer__benefits span,.pui-room-number,.pui-project-version-card__content p,.pui-center-small-note,label,small) { color:#4b5563!important; }
body.product-product main .pui-project-version-card__button:disabled { color:#4b5563!important; }
/* Requested white CTA labels. White on #e03838 is 4.38:1, below AA for small text. */
body.product-product main :is(#order,.pui-cost-side-btn,.product-parcel-fit__cta--primary,.js-review-submit,#moreSpecButton,.pui-phone-cta,.planz-contact-strip__phone,.pui-plan-changes .open-change-popup),
body.product-product main :is(#order,.pui-cost-side-btn,.product-parcel-fit__cta--primary,.js-review-submit,#moreSpecButton,.pui-phone-cta,.planz-contact-strip__phone,.pui-plan-changes .open-change-popup):hover { color:#fff!important; background-color:#e03838!important; border-color:#e03838!important; }
body.product-product main :is(#order,.pui-cost-side-btn,.product-parcel-fit__cta--primary,.js-review-submit,#moreSpecButton,.pui-phone-cta,.planz-contact-strip__phone,.pui-plan-changes .open-change-popup) :is(span,i,strong),
body.product-product #product-tabs a,
body.product-product .pui-mobile-section-nav a:not([aria-current="location"]) { color:#fff!important; }
body.product-product main .pui-project-version-card__button:not(:disabled):hover { background:#e03838!important; color:#fff!important; }
body.product-product main :is(.pui-project-version-card__button-label,.pui-spec-strip .ProductPage_attr--link span) { color:inherit!important; }
body.product-product main :is(.bg-primary,.\!bg-buttonBg) { background-color:#e03838!important; }
body.product-product main .top1-price-row strong { color:#e03838!important; }
body.product-product main :is(input,textarea)::placeholder { color:#4b5563!important; opacity:1; }
body.product-product #mirror-toggle { background-color:#101827!important; }
@media(max-width:767px) {
 body.product-product main h1 { font-size:13px!important; }
 body.product-product main :is(h2.pui-section-heading,h3.pui-section-heading,#changes>h2,.psr-title) { font-size:16px!important; }
 body.product-product main :is(.pui-budget-heading,.drawings-offer__title,.pui-budget-side-title,#product-project-changes-title,#product-parcel-fit-title,#product-build-fit-title,.purchase-standard-benefits h2) { font-size:20px!important; }
}
/* Explicit overrides for legacy ID selectors and shared partials, product pages only. */
body.product-product #ProductHeader #openProductContactModalButton { color:#101827!important; }
body.product-product #ProductHeader #order { font-size:16px!important; }
body.product-product #budget :is(.pui-budget-lead,.pui-budget-footnote,.pui-budget-detail-row,.pui-budget-side-text,.pui-budget-side-note,.pui-budget-card-label) { color:#4b5563!important; }
body.product-product #budget :is(.pui-budget-heading,.pui-budget-side-title) { font-size:22px!important; }
body.product-product #budget :is(.pui-budget-side-text,.pui-budget-side-note) { font-size:15px!important; }
body.product-product #budget .pui-budget-price-date,
body.product-product :is(#parcel-fit,.product-project-changes) .product-parcel-fit__eyebrow { color:#101827!important; }
body.product-product :is(#parcel-fit,.product-project-changes) :is(#product-project-changes-title,#product-parcel-fit-title) { font-size:22px!important; }
body.product-product #reviews #submit,
body.product-product #tech-spec #moreSpecButton,
body.product-product main :is(.product-ai-cart-button,.psr-write,.bg-primary,.bg-buttonBg,.\!bg-buttonBg),
body.product-product main :is(.product-ai-cart-button,.psr-write,.bg-primary,.bg-buttonBg,.\!bg-buttonBg):hover { color:#fff!important; background-color:#e03838!important; }
body.product-product main :is(.bg-primary,.bg-buttonBg,.\!bg-buttonBg) :is(span,i) { color:inherit!important; }
body.product-product main .product-ai-cart-button { font-size:16px!important; }
body.product-product main :is(.psr-google-count,.psr-generated-note,.psr-published-google,.psr-card span:not(.psr-initial),.autor-info) { color:#4b5563!important; }
body.product-product main :is(.pui-star-yellow,.psr-google-stars,.psr-stars) { color:#f4b400!important; }
body.product-product #addons .pui-addon-plus { color:#e03838!important; }
body.product-product #addons .pui-addon-toggle:focus-visible { outline-color:#e03838!important; }
body.product-product #review-form-popup :is(a,label,.drawings-offer__delivery-note) { color:#4b5563!important; }
body.product-product #review-form-popup .js-review-submit { color:#fff!important; background:#e03838!important; }
body.product-product main a.psr-write { color:#fff!important; background:#e03838!important; }
body.product-product main .psr-more { color:#101827!important; text-decoration:underline; text-decoration-color:#e03838; }
body.product-product main :is(.fa-heart,.pui-favorite-toggle,.pui-force-red,.pui-product-accordion-icon),
body.product-product main .pui-product-accordion-icon::after { color:#e03838!important; }
body.product-product main .purchase-design-gift strong { color:#101827!important; }
body.product-product .productbox #order-productbox { color:#fff!important; background:#e03838!important; font-size:13px!important; }
body.product-product .productbox #order-productbox :is(span,i) { color:#fff!important; }
@media screen and (max-width:1023px) {
 body.product-product { padding-bottom:calc(110px + env(safe-area-inset-bottom,0px)); }
 body.product-product .productbox { display:grid!important; position:fixed!important; left:0; right:0; bottom:0; top:auto; width:100%; z-index:900; visibility:visible!important; opacity:1!important; transform:none!important; animation:none!important; }
 body.product-product .productbox>.productbox_wrapper:only-of-type { grid-column:1/-1; }
}
@media screen and (min-width:1024px) {
 body.product-product .productbox { display:none!important; }
}
body.product-product .pui-modal-primary-btn { background:#e03838!important; color:#fff!important; font-size:16px!important; }
body.product-product .pui-modal-primary-btn i { color:inherit!important; }
body.product-product .pui-modal-call-link { font-size:16px!important; }
body.product-product .pui-contact-note-dark .pui-text-red { color:#fff!important; }
body.product-product :is(#m1,#m2,#m3) a { color:#101827!important; text-decoration:underline; text-decoration-color:#e03838; }
@media(max-width:767px) {
 body.product-product #budget :is(.pui-budget-heading,.pui-budget-side-title),
 body.product-product :is(#parcel-fit,.product-project-changes) :is(#product-project-changes-title,#product-parcel-fit-title) { font-size:20px!important; }
}

/* Original product-plan-layout.css */
/* The overview and all floor plans span the product container, not the sidebar column. */
@media screen and (min-width:1024px) {
 .ProductContainer .product-header { min-height:var(--pui-purchase-panel-height,0px); }
 .ProductContainer .product-header + .pui-product-overview { width:100%; padding:0 16px 16px; box-sizing:border-box; background:#fff; }
 .pui-product-detail-column #rzuty_t { width:calc(100% + 480px); max-width:none; box-sizing:border-box; background:#fff; }
 #rzuty_t .ProductPage_plans-container { width:100%; max-width:100%; gap:24px; align-items:flex-start; box-sizing:border-box; }
 #rzuty_t .ProductPage_plans-container.pui-plan-has-rooms { display:grid!important; grid-template-columns:minmax(0,2fr) minmax(0,1fr); }
 #rzuty_t .ProductPage_plans-container > .ProductPage_plans-img-container,
 #rzuty_t .ProductPage_plans-container > .pui-plan-details { width:100%!important; min-width:0; max-width:100%; }
 #rzuty_t .pui-plan-has-rooms .plans-image { width:100%!important; }
 /* A site plan without a room schedule remains one centered image, without an empty column. */
 #rzuty_t .pui-plan-without-rooms { display:flex!important; justify-content:center; }
}
/* Fit every floor/site plan into one viewport, without cropping or distortion.
   The 2:1 desktop columns remain unchanged; a tall drawing is centered within its column. */
@media screen {
 #rzuty_t .plans-image picture { display:block; }
 #rzuty_t .ProductPage_plan-img {
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:calc(100vh - 96px)!important;
  max-height:calc(100svh - 96px)!important;
  margin-inline:auto;
  object-fit:contain;
 }
}
@media screen and (max-width:1023px) {
 #rzuty_t .ProductPage_plan-img {
  max-height:calc(100vh - 120px)!important;
  max-height:calc(100svh - 120px)!important;
 }
}

/* Original product-reviews-strip.css */
/* Product-only compact reviews. Existing review text, avatars and source links are retained. */
#product-reviews-strip { background:#fff; padding:10px 0 20px; box-sizing:border-box; }
#product-reviews-strip .planz-selected-reviews { max-width:none; margin:0; padding:0 30px; }
body.product-product #product-reviews-strip .psr-title { margin:12px auto!important; }
#product-reviews-strip .psr-intro { max-width:none; margin:0 auto 12px; font-size:12px; line-height:1.5; }
#product-reviews-strip .psr-google-head { margin:0 auto 16px; gap:12px; }
#product-reviews-strip .psr-write { padding:10px 20px; border-radius:6px!important; }
#product-reviews-strip .psr-grid { --psr-visible:1; --psr-rows:1; grid-template-rows:none; grid-auto-columns:100%; gap:14px; }
#product-reviews-strip .psr-grid>.psr-card { display:flex; flex-direction:column; gap:8px; padding:14px; border:1px solid #e2e7ed; border-radius:8px!important; background:#fff; }
#product-reviews-strip .psr-grid .psr-panel { display:flex; flex:1; flex-direction:column; gap:8px; padding:0; border:0; }
#product-reviews-strip .psr-grid .psr-excerpt { -webkit-line-clamp:3; max-height:63px; font-size:14px; line-height:21px; }
#product-reviews-strip .psr-grid .psr-more { font-size:13px; line-height:18px; }
#product-reviews-strip .psr-grid .psr-verified { margin-top:auto; padding-top:8px; font-size:11px; line-height:16px; }
#product-reviews-strip .psr-grid .psr-author { padding-top:10px; border-top:1px solid #eef0f2; gap:8px; }
#product-reviews-strip .psr-grid .psr-name { font-size:12px; line-height:1.35; }
#product-reviews-strip .psr-grid .psr-reviewer-summary { font-size:10px; }
#product-reviews-strip .psr-grid .psr-published { margin:0 0 0 auto; padding:0 0 0 8px; border-left:1px solid #e2e7ed; gap:5px; font-size:10px; flex-shrink:0; }
#product-reviews-strip .psr-grid .psr-published-google { font-size:11px; }
#product-reviews-strip .psr-grid .psr-review-date { font-size:11px; }
#product-reviews-strip .psr-controls { inset:0 -23px; }
#product-reviews-strip .psr-nav { width:34px; height:34px; flex-basis:34px; border-radius:50%!important; font-size:16px; }
#product-reviews-strip>.planz-selected-reviews>.psr-ai-card { position:relative; display:block; width:fit-content; max-width:100%; margin:14px 0 0; padding:8px 14px; border:1px solid #e2e7ed; border-radius:8px!important; background:#fff; }
#product-reviews-strip>.planz-selected-reviews>.psr-ai-card>.psr-panel { display:none; }
#product-reviews-strip .psr-ai-card>.psr-author { min-height:32px; padding-right:24px; }
#product-reviews-strip .psr-ai-card .psr-generated-title { margin:0; }
#product-reviews-strip .psr-ai-card .psr-author>div { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
#product-reviews-strip .psr-ai-open { position:absolute; inset:0; width:100%; height:100%; border:0; background:transparent; cursor:pointer; border-radius:8px; }
#product-reviews-strip .psr-ai-open::after { content:'›'; position:absolute; right:12px; top:50%; transform:translateY(-50%); color:#4b5563; font-size:24px; }
#product-reviews-strip .psr-ai-open:focus-visible { outline:2px solid #e03838; outline-offset:2px; }
#product-reviews-strip .psr-dialog-close { background:#e03838; color:#fff; }
@media(min-width:640px) { #product-reviews-strip .psr-grid { --psr-visible:2; grid-auto-columns:calc((100% - 14px)/2); } }
@media(min-width:1024px) {
 .pui-product-detail-column #product-reviews-strip { width:calc(100% + 480px); }
 #product-reviews-strip .psr-grid { --psr-visible:4; grid-auto-columns:calc((100% - 42px)/4); }
}
@media(max-width:639px) {
 #product-reviews-strip .planz-selected-reviews { padding:0 24px; }
 #product-reviews-strip .psr-google-head { gap:8px; }
 #product-reviews-strip .psr-google-word { font-size:23px; }
 #product-reviews-strip .psr-google-stars { font-size:20px; }
 #product-reviews-strip .psr-write { padding:8px 14px; font-size:13px; }
 #product-reviews-strip .psr-ai-card .psr-author>div { gap:2px; flex-direction:column; align-items:flex-start; }
}

/* Original product-overview.css */
/* Compact, data-driven specification strip below the gallery. */
#ProductHeader .pui-package-favorite-row { display:flex; justify-content:flex-end; width:100%; min-height:40px; flex-shrink:0; }
#ProductHeader .pui-package-heading { margin-bottom:8px !important; }
#ProductHeader .pui-package-heading > span { font-size:14px !important; }
#ProductHeader .pui-package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 12px; border:0; }
#ProductHeader .pui-package-grid > li { display:block; margin:0; min-width:0; border:0; }
#ProductHeader .pui-package-grid > li::before { display:none; }
#ProductHeader .pui-package-grid > li:nth-last-child(-n+2) { border-bottom:0; }
#ProductHeader .pui-package-grid :is(a,button) { display:flex; align-items:center; gap:9px; width:100%; height:100%; min-height:37px; padding:6px 4px; border:0; background:none; color:#152138; font-family:inherit; font-size:12px; line-height:1.2; text-align:left; cursor:pointer; }
#ProductHeader .pui-package-grid small { display:block; margin-top:2px; font-size:10px; line-height:1.2; color:#526074; }
#ProductHeader .pui-package-guaranteed { display:table; margin-bottom:3px; padding:2px 5px; border:1px solid #e03838; border-radius:3px; background:#fff2f2; color:#152138; font-size:10px; line-height:1.2; font-weight:700; }
#ProductHeader .pui-package-icon { position:relative; display:grid; place-items:center; flex:0 0 25px; width:25px; height:25px; background:#fff2f2; border-radius:7px; font-size:17px; }
#ProductHeader .pui-package-icon svg { width:21px; height:21px; }
#ProductHeader .pui-package-icon::after { content:'✓'; position:absolute; top:-3px; right:-3px; display:grid; place-items:center; width:11px; height:11px; border-radius:50%; color:#fff; background:#e03838; font-size:8px; }
/* Shared type scale and equal-height overview columns. */
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded { align-items:stretch !important; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded > * { box-sizing:border-box; height:100%; margin-block:0 !important; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded > .pui-header-summary-text { display:flex; align-items:center; }
:is(#product-overview,#product-summary-container) .pui-header-summary-text,
:is(#product-overview,#product-summary-container) .pui-header-budget-label-wrap,
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .pui-builder-copy p,
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .pui-builder-benefits { font-family:inherit !important; font-size:13px !important; line-height:1.5 !important; color:#526074 !important; }
:is(#product-overview,#product-summary-container) .pui-header-budget-label-wrap > :first-child,
:is(#product-overview,#product-summary-container) .pui-builder-copy > strong { font-size:14px !important; line-height:1.4 !important; font-weight:700; color:#152138 !important; }
:is(#product-overview,#product-summary-container) .pui-header-budget-label-wrap > strong { font-weight:400; color:#526074 !important; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta { position:relative; cursor:pointer; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup { position:static !important; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::before { content:''; position:absolute; inset:0; z-index:1; cursor:pointer; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta:focus-within { outline:2px solid #152138; outline-offset:3px; }
:is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr { border-left:0 !important; border-right:0 !important; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded > .pui-header-summary-text,
:is(#product-overview,#product-summary-container) .pui-header-builder-cta { border-left:0 !important; border-right:0 !important; }
:is(#product-overview,#product-summary-container) .pui-spec-strip,
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded,
:is(#product-overview,#product-summary-container) .pui-header-budget-link,
#ProductHeader,
#ProductHeader .pui-service-strip,
#ProductHeader .pui-panel-note { border-radius:0 !important; }
#ProductHeader .pui-service-item + .pui-service-item { border-left:0 !important; }
:is(#product-overview,#product-summary-container) .pui-spec-strip { padding:16px 8px; border-radius:16px; }
:is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr { padding:0 10px; }
:is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr>div { font-size:13px; gap:9px; }
:is(#product-overview,#product-summary-container) .pui-spec-strip .pui-spec-icon { width:28px; height:28px; flex-basis:28px; }
:is(#product-overview,#product-summary-container) .pui-spec-line-icon { color:#e03838; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-31 { order:5; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-32 { order:6; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-58 { order:7; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-44 { order:8; }
:is(#product-overview,#product-summary-container) .pui-spec-strip a.ProductPage_attr { order:9; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-copy { display:flex; flex-direction:column; line-height:1.35; }
:is(#product-overview,#product-summary-container) .pui-spec-extra-copy>span { color:#4b5563; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:18px; margin-top:0!important; padding:18px; border:1px solid #e2e5e9; border-radius:16px; background:#fff; box-sizing:border-box; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded>.pui-header-summary-text { padding:0 16px 0 0!important; border:0; border-right:1px solid #e2e5e9; font-size:13px; line-height:1.5; }
:is(#product-overview,#product-summary-container) .pui-header-budget-link { width:100%; min-width:0; margin:0; padding:12px!important; }
:is(#product-overview,#product-summary-container) .pui-header-budget-label-row { flex:1; min-width:0; }
:is(#product-overview,#product-summary-container) .pui-header-budget-amount { font-size:26px; white-space:nowrap; gap:8px; }
:is(#product-overview,#product-summary-container) .pui-header-budget-amount i { font-size:25px; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:10px 12px; border-left:1px solid #e2e5e9; padding-left:16px; min-width:0; }
:is(#product-overview,#product-summary-container) .pui-builder-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; color:#152138; background:#f2f4f6; font-size:22px; }
:is(#product-overview,#product-summary-container) .pui-builder-copy > strong { display:block; margin-bottom:4px; font-size:16px; line-height:1.3; color:#152138; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .pui-builder-copy p { font-size:12px; line-height:1.5; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup { grid-column:2; justify-self:start; position:relative; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::after { content:''; position:absolute; inset:-1px; border-radius:inherit; pointer-events:none; animation:pui-builder-green-glow 2s ease-in-out infinite; }
:is(#product-overview,#product-summary-container) .pui-builder-benefits { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:5px 14px; list-style:none; margin:2px 0 0; padding:0; font-size:11px; line-height:1.5; color:#526074; }
:is(#product-overview,#product-summary-container) .pui-builder-benefits li::before { content:'✓'; color:#548064; font-weight:700; margin-right:6px; }
@keyframes pui-builder-green-glow { 0%,100% { box-shadow:0 1px 4px rgba(49,154,85,.10); } 50% { box-shadow:0 0 12px 3px rgba(49,154,85,.22); } }
@media(prefers-reduced-motion:reduce) { :is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::after { animation:none; box-shadow:0 1px 5px rgba(49,154,85,.15); } }
@media(min-width:1600px) { :is(#product-overview,#product-summary-container) .pui-header-builder-cta { grid-template-columns:40px minmax(0,1fr) auto; } :is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup { grid-column:3; grid-row:1; } }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta p { flex:1; min-width:0; margin:0; font-size:13px; line-height:1.45; color:#101827; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta button { flex-shrink:0; padding:12px 14px; border:1px solid #e03838; border-radius:6px; background:#fff; color:#e03838; font-size:13px; font-weight:700; cursor:pointer; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta button:hover { background:#e03838; color:#fff; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta button:focus-visible { outline:2px solid #101827; outline-offset:3px; }
@media(min-width:1024px) and (max-width:1350px) {
 :is(#product-overview,#product-summary-container) .pui-header-builder-cta { flex-direction:column; align-items:stretch; gap:8px; }
 :is(#product-overview,#product-summary-container) .pui-header-budget-link { flex-wrap:wrap; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr { padding:0 7px; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr>div { font-size:12px; gap:6px; }
}
@media(max-width:1023px) {
 :is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded { grid-template-columns:1fr; gap:12px; padding:14px; }
 :is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded>.pui-header-summary-text { border:0; padding:0!important; }
 :is(#product-overview,#product-summary-container) .pui-header-builder-cta { border-left:0; border-top:1px solid #e2e5e9; padding:12px 0 0; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip { overflow-x:auto; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr { flex:0 0 auto; }
}
@media(max-width:767px) {
 :is(#product-overview,#product-summary-container) .pui-spec-strip { padding:12px 3px; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr { padding:0 7px; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .ProductPage_attr>div { font-size:11px; gap:5px; }
 :is(#product-overview,#product-summary-container) .pui-spec-strip .pui-spec-icon { width:20px; height:20px; flex-basis:20px; }
 :is(#product-overview,#product-summary-container) .pui-header-builder-cta button { padding:10px; font-size:12px; }
}

/* Original product-cta-outline.css */
/* Product actions: white/red outline. Purchase and disabled controls retain their states. */
body.product-product :is(
  .open-cost-popup, .open-change-popup, .open-review-popup,
  .pui-phone-cta, .planz-contact-strip__phone, .planz-contact-strip__cta,
  .js-product-pdf-menu-trigger, .pui-price-guarantee-button,
  .pui-project-version-card__button, .pui-plan-download, .plan_download_button button,
  .psr-write, .product-parcel-fit__cta, .js-review-submit, .product-ai-cart-button,
  .pui-modal-primary-btn, .pui-modal-call-link, .pui-inline-button-compact,
  button.order, button.bg-primary, button.bg-buttonBg, button.\!bg-buttonBg,
  #openProductContactModalButton, #moreSpecButton, #loadInteriorsButton
):not(#order):not(#order-nav):not(#order-productbox):not(.pui-price-negotiation-link):not(:disabled):not([aria-disabled="true"]):not(#ProductHeader *) {
  background:#fff!important;
  color:#e03838!important;
  border:1px solid #e03838!important;
  border-radius:4px!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.3!important;
  padding:10px 14px!important;
  text-decoration:none!important;
  text-transform:none!important;
}
body.product-product :is(
  .open-cost-popup, .open-change-popup, .open-review-popup,
  .pui-phone-cta, .planz-contact-strip__phone, .planz-contact-strip__cta,
  .js-product-pdf-menu-trigger, .pui-price-guarantee-button,
  .pui-project-version-card__button, .pui-plan-download, .plan_download_button button,
  .psr-write, .product-parcel-fit__cta, .js-review-submit, .product-ai-cart-button,
  .pui-modal-primary-btn, .pui-modal-call-link, .pui-inline-button-compact,
  button.order, button.bg-primary, button.bg-buttonBg, button.\!bg-buttonBg,
  #openProductContactModalButton, #moreSpecButton, #loadInteriorsButton
):not(#order):not(#order-nav):not(#order-productbox):not(.pui-price-negotiation-link):not(:disabled):not([aria-disabled="true"]):not(#ProductHeader *) :is(span,i,strong,b) {
  color:inherit!important;
}
body.product-product :is(
  .open-cost-popup, .open-change-popup, .open-review-popup,
  .pui-phone-cta, .planz-contact-strip__phone, .planz-contact-strip__cta,
  .js-product-pdf-menu-trigger, .pui-price-guarantee-button,
  .pui-project-version-card__button, .pui-plan-download, .plan_download_button button,
  .psr-write, .product-parcel-fit__cta, .js-review-submit, .product-ai-cart-button,
  .pui-modal-primary-btn, .pui-modal-call-link, .pui-inline-button-compact,
  button.order, button.bg-primary, button.bg-buttonBg, button.\!bg-buttonBg,
  #openProductContactModalButton, #moreSpecButton, #loadInteriorsButton
):not(#order):not(#order-nav):not(#order-productbox):focus-visible {
  outline:2px solid #101827!important;
  outline-offset:3px;
}

/* Original product-build-quote.css */
/* Building quotation card, immediately before project categories. */
#delivery.pui-build-quote { container-type:inline-size; margin:24px 0; border:1px solid #e2e5e9; border-radius:8px; overflow:hidden; background:#fff; color:#101827; }
.pui-build-quote__grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
.pui-build-quote__content { padding:24px; min-width:0; }
.pui-build-quote__eyebrow { display:inline-flex; align-items:center; gap:9px; padding:8px 10px; background:#f5f6f7; font-size:12px; font-weight:700; text-transform:uppercase; }
.pui-build-quote__eyebrow span { width:10px; height:10px; background:#22a65b; box-shadow:0 0 0 5px #e5f5ec; }
#delivery #product-build-fit-title { margin:18px 0; font-size:22px; line-height:1.3; font-weight:700; }
.pui-build-quote__content p { margin:0 0 20px; font-size:15px; line-height:1.55; }
.pui-build-quote__content .pui-build-quote__list-title { margin-top:24px; margin-bottom:10px; }
.pui-build-quote__content ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-flow:column; grid-template-rows:repeat(3,auto); gap:10px; padding:0; margin:0; list-style:none; }
.pui-build-quote__content li { display:flex; align-items:center; gap:10px; padding:10px; background:#f5f6f7; border-radius:6px; font-size:13px; line-height:1.45; }
.pui-build-quote__content li::before { content:'✓'; flex:0 0 22px; text-align:center; line-height:24px; color:#fff; background:#e03838; border-radius:4px; font-weight:700; }
.pui-build-quote__side { min-width:0; background:#fff8f8; }
.pui-build-quote__visual { position:relative; aspect-ratio:1.8; background:#f5f6f7; }
.pui-build-quote__visual>img { display:block; width:100%; height:100%; object-fit:cover; }
.pui-build-quote__badge { position:absolute; top:16px; right:16px; display:flex; flex-direction:column; justify-content:center; align-items:center; width:100px; height:100px; border-radius:50%; text-align:center; color:#fff; background:#e03838; font-size:12px; font-weight:700; line-height:1.3; }
.pui-build-quote__badge i { font-size:24px; margin-bottom:6px; }
.pui-build-quote__offer { padding:20px; }
.pui-build-quote__intro,.pui-build-quote__note { display:flex; align-items:center; gap:14px; margin:0 0 18px; color:#4b5563; font-size:14px; line-height:1.5; }
.pui-build-quote__intro>i { color:#e03838; font-size:30px; }
.pui-build-quote__button { width:100%; display:flex; justify-content:center; align-items:center; gap:14px; cursor:pointer; }
.pui-build-quote__note { margin:18px 0 0; padding:14px; background:#f5f6f7; border-radius:6px; font-size:12px; }
.pui-build-quote__note>i { font-size:24px; }
@container (max-width:650px) {
 .pui-build-quote__grid { grid-template-columns:1fr; }
 .pui-build-quote__content { padding:20px; }
}
@media(max-width:767px) {
 .pui-build-quote__grid { grid-template-columns:1fr; }
 #delivery #product-build-fit-title { font-size:20px!important; }
 .pui-build-quote__content { padding:18px; }
 .pui-build-quote__content ul { grid-template-columns:1fr; grid-template-rows:none; grid-auto-flow:row; }
 .pui-build-quote__offer { padding:18px; }
}

/* Original product-faq.css */
/* Native disclosures: all answers are present in the server HTML. */
#product-faq { margin:24px 16px; padding:24px; border:1px solid #e2e5e9; border-radius:12px; background:#fff; color:#101827; }
#product-faq .pui-faq__subtitle { margin:8px 0 24px; text-align:center; color:#4b5563; font-size:14px; }
#product-faq .pui-faq__intro { display:flex; align-items:center; gap:16px; margin:24px 0 18px; }
#product-faq .pui-faq__intro>i { color:#e03838; font-size:30px; }
#product-faq .pui-faq__intro p { margin:0; font-size:14px; line-height:1.5; color:#4b5563; }
#product-faq .pui-faq__intro .pui-faq__group-title { font-size:17px; font-weight:700; color:#101827; margin-bottom:4px; }
#product-faq .pui-faq__item { margin:10px 0 0; border:1px solid #dce1e8; border-radius:6px; background:#fff; }
#product-faq .pui-faq__item[open] { background:#f7f8fa; }
#product-faq summary { display:flex; align-items:center; gap:14px; padding:16px; cursor:pointer; list-style:none; }
#product-faq summary::-webkit-details-marker { display:none; }
#product-faq summary::after { content:''; width:10px; height:10px; border-right:3px solid #e03838; border-bottom:3px solid #e03838; transform:rotate(45deg); flex:0 0 10px; margin-left:auto; align-self:center; }
#product-faq details[open]>summary::after { transform:rotate(225deg); }
#product-faq summary h3 { margin:0; font-size:16px; line-height:1.4; font-weight:700; color:#101827; text-transform:none; }
#product-faq summary:focus-visible { outline:2px solid #101827; outline-offset:2px; border-radius:5px; }
#product-faq .pui-faq__answer { padding:0 20px 18px; font-size:14px; line-height:1.65; color:#4b5563; }
#product-faq .pui-faq__answer p { margin:0 0 12px; }
#product-faq .pui-faq__answer strong { color:#101827; }
#product-faq .pui-faq__project { margin-top:24px; border-top:1px solid #dce1e8; padding-top:20px; }
#product-faq .pui-faq__project>summary { background:#fff6f7; border-radius:6px; }
#product-faq .pui-faq__project>summary>i { font-size:30px; color:#e03838; }
#product-faq .pui-faq__project strong { font-size:16px; line-height:1.4; }
#product-faq .pui-faq__project-count { display:block; margin-top:4px; font-size:14px; color:#4b5563; }
.pui-faq-expert-advice { margin:20px 16px; color:#4b5563; font-size:14px; line-height:1.5; }
.pui-faq-expert-advice>a { font-size:16px; font-weight:700; text-decoration:underline; text-decoration-color:#e03838; }
@media(max-width:767px) {
 #product-faq { margin:20px 0; padding:16px; }
 #product-faq summary { padding:14px 12px; gap:12px; }
 #product-faq summary h3,#product-faq .pui-faq__project strong { font-size:15px; }
 #product-faq .pui-faq__answer { padding:0 12px 16px; }
}

/* Right purchase panel, September 2026. Preserve existing actions and price rules. */
body.product-product #ProductHeader { padding:18px 16px!important; border:0!important; border-radius:18px!important; background:#fff!important; color:#101827; box-shadow:0 5px 26px rgba(21,33,56,.035); }
body.product-product #ProductHeader .pui-panel-title { display:flex!important; align-items:flex-start; justify-content:space-between; gap:12px; font-size:24px!important; line-height:1.2; letter-spacing:-.4px; text-align:left!important; margin:0 0 16px!important; }
#ProductHeader .pui-panel-title>span { min-width:0; }
#ProductHeader .pui-panel-title .pui-product-favorite-desktop { position:static!important; flex:0 0 32px; width:32px!important; min-width:32px!important; height:32px!important; padding:0!important; background:none!important; border:0!important; box-shadow:none!important; }
#ProductHeader .pui-panel-title .pui-product-favorite-desktop i { color:#e03838!important; font-size:28px!important; }
#ProductHeader .pui-availability { gap:8px!important; }
#ProductHeader .pui-availability>img { width:22px; height:22px; }
body.product-product #ProductHeader .pui-availability-link { gap:10px; font-size:12px!important; line-height:1.4; text-decoration:none; }
body.product-product #ProductHeader .pui-availability-detail { font-size:12px!important; font-style:normal!important; text-decoration:underline; }
#ProductHeader .top1-price-row { justify-content:flex-start!important; align-items:center!important; gap:0!important; margin:18px 0 12px!important; }
#ProductHeader .top1-special-price-wrap:empty { display:none; }
#ProductHeader .top1-price-row .top1-special-price { justify-content:flex-start!important; }
#ProductHeader .top1-price-row strong { font-size:46px!important; line-height:1.05; color:#e03838!important; }
body.product-product #ProductHeader #order { min-height:52px; margin-top:0!important; border-radius:10px!important; font-size:17px!important; gap:14px; background:#e03838!important; color:#fff!important; }
#ProductHeader #order>i { font-size:28px; }
#ProductHeader .pui-price-guarantee-row { display:flex!important; flex-wrap:nowrap!important; align-items:center; gap:10px; padding:13px 12px; margin-top:10px; background:#f3f5f8; border-radius:10px; }
body.product-product #ProductHeader .pui-price-guarantee-button { display:flex; align-items:center; flex:1; gap:9px; min-height:0; padding:0!important; border:0!important; background:transparent!important; color:#152138!important; font-size:12px!important; line-height:1.4; text-decoration:none; }
#ProductHeader .pui-price-guarantee-icon { font-size:23px!important; color:#e03838!important; flex-shrink:0; }
#ProductHeader .pui-price-guarantee-row>span { width:auto!important; flex:0 0 auto; border-left:1px solid #cbd2dc; padding-left:12px; font-size:12px; }
body.product-product #ProductHeader .pui-price-negotiation-link { color:#152138!important; text-decoration:underline; white-space:nowrap; }
#ProductHeader .pui-price-negotiation-link>span { display:inline-block; margin-left:5px; font-size:20px; text-decoration:none; }
#ProductHeader .pui-project-docs { background:#f3f5f8; border:0!important; border-radius:10px; padding:13px 12px!important; margin:10px 0 0!important; text-align:left; }
#ProductHeader .pui-project-docs>a { gap:14px; font-size:12px; line-height:1.5; }
#ProductHeader .pui-project-docs i { font-size:29px; }
#ProductHeader .pui-project-docs strong { display:block; font-size:14px; color:#101827!important; }
#ProductHeader .ProductPage_gratis { gap:10px!important; margin-top:10px!important; }
#ProductHeader .pui-package-card { border:1px solid #e4e9f0; border-radius:12px; padding:14px 10px; }
#ProductHeader .pui-package-heading { margin-bottom:12px!important; }
#ProductHeader .pui-package-heading>span { font-size:20px!important; line-height:1.25; }
#ProductHeader .pui-package-heading i { font-size:24px; margin-right:8px!important; }
#ProductHeader .pui-package-grid { gap:12px 10px; }
#ProductHeader .pui-package-grid :is(a,button) { gap:10px; min-height:42px; padding:3px 0; font-size:13px; line-height:1.3; }
#ProductHeader .pui-package-grid small { font-size:11px; line-height:1.3; color:#64748b; }
#ProductHeader .pui-package-icon { flex-basis:36px; width:36px; height:38px; border-radius:9px; font-size:24px; }
#ProductHeader .pui-package-icon svg { width:27px; height:27px; }
#ProductHeader .pui-package-icon::after { width:14px; height:14px; font-size:10px; }
#ProductHeader .pui-package-guaranteed { background:#fff; margin-bottom:3px; font-size:10px; padding:1px 5px; }
#ProductHeader #wysylka { grid-template-columns:repeat(3,minmax(0,1fr)); padding:14px 8px; border-radius:10px!important; background:#f3f5f8; margin:0!important; }
body.product-product #ProductHeader .pui-service-item { gap:8px; font-size:12px!important; }
#ProductHeader .pui-service-item+.pui-service-item { border-left:1px solid #bac3ce!important; }
#ProductHeader .pui-service-item svg { width:27px; height:27px; }
body.product-product #ProductHeader .pui-service-item b { font-size:14px!important; color:#101827; }
#ProductHeader .pui-panel-contact { grid-template-columns:1.1fr 1fr!important; gap:8px; }
body.product-product #ProductHeader .pui-panel-contact .pui-phone-cta,
body.product-product #ProductHeader #openProductContactModalButton { display:flex; align-items:center; justify-content:center; min-height:52px; gap:10px; padding:8px!important; border:1px solid #e03838!important; border-radius:6px!important; background:#fff!important; font-size:13px!important; line-height:1.35; }
#ProductHeader .pui-panel-contact .pui-phone-cta { flex-wrap:nowrap!important; }
#ProductHeader .pui-phone-copy { display:block; }
body.product-product #ProductHeader .pui-panel-contact .pui-phone-copy strong { display:block; color:#e03838!important; font-size:14px; }
body.product-product #ProductHeader .pui-phone-copy .pui-contact-hours-white { display:block; color:#64748b!important; font-size:10px!important; }
body.product-product #ProductHeader .pui-phone-cta>i { font-size:23px; color:#e03838!important; }
body.product-product #ProductHeader #openProductContactModalButton { color:#152138!important; }
#ProductHeader #openProductContactModalButton i { font-size:23px; color:#152138!important; }
#ProductHeader .pui-panel-note { display:flex; align-items:center; gap:13px; padding:14px 12px!important; border:0!important; border-radius:10px!important; background:#f3f5f8!important; font-size:12px!important; line-height:1.55; }
#ProductHeader .pui-panel-note>i { flex:0 0 27px; color:#7b8aa1; font-size:25px; }
#ProductHeader .pui-panel-note a { color:#152138!important; text-decoration:none; }
#ProductHeader .pui-panel-note a strong { color:#152138!important; }
@media(max-width:1023px) {
 body.product-product #ProductHeader { padding:16px 12px!important; }
 body.product-product #ProductHeader .pui-panel-title { font-size:22px!important; }
}
@media(max-width:399px) {
 #ProductHeader .pui-price-guarantee-row { gap:7px; padding:10px 8px; }
 body.product-product #ProductHeader .pui-price-guarantee-button { font-size:11px!important; gap:6px; }
 #ProductHeader .pui-price-guarantee-row>span { padding-left:7px; font-size:11px; }
 #ProductHeader .pui-package-card { padding:12px 8px; }
 #ProductHeader .pui-package-grid { gap:10px 8px; }
 #ProductHeader .pui-package-grid :is(a,button) { font-size:12px; gap:7px; }
 #ProductHeader .pui-package-icon { flex-basis:29px; width:29px; height:33px; font-size:21px; }
 #ProductHeader .pui-service-item svg { width:22px; height:22px; }
 body.product-product #ProductHeader .pui-service-item { gap:4px; font-size:11px!important; }
 body.product-product #ProductHeader .pui-service-item b { font-size:12px!important; }
 #ProductHeader .pui-phone-copy strong { font-size:12px; }
 #ProductHeader .pui-panel-contact .pui-phone-cta>i { font-size:18px; }
 body.product-product #ProductHeader #openProductContactModalButton { font-size:12px!important; gap:6px; }
}

/* Equal-height summary cards under the gallery; mobile stays below specifications. */
#product-summary-container:empty { display:none; }
#product-summary-container { padding:12px 8px; box-sizing:border-box; width:100%; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded { align-items:stretch!important; gap:12px; padding:0; border:0; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded>* { height:auto!important; min-width:0; padding:16px!important; box-sizing:border-box; }
:is(#product-overview,#product-summary-container) .pui-header-summary-row--expanded>.pui-header-summary-text { padding:16px!important; line-height:1.5!important; }
:is(#product-overview,#product-summary-container) .pui-header-budget-link { display:flex; flex-wrap:wrap; align-content:center; gap:10px; }
:is(#product-overview,#product-summary-container) .pui-header-budget-amount { font-size:22px; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta { grid-template-columns:30px minmax(0,1fr); gap:10px; border:1px solid #edf0f3!important; box-shadow:none!important; }
:is(#product-overview,#product-summary-container) .pui-builder-icon { width:30px; height:30px; font-size:21px; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup { position:relative!important; grid-column:1/-1; grid-row:auto; justify-self:start; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::before { display:none; }
:is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::after { inset:-2px; animation:pui-quote-button-glow 1.8s ease-in-out infinite; }
:is(#product-overview,#product-summary-container) .pui-builder-benefits { font-size:11px!important; gap:4px 8px; }
@keyframes pui-quote-button-glow { 0%,100% { box-shadow:0 0 5px 1px rgba(40,170,80,.25); } 50% { box-shadow:0 0 14px 4px rgba(40,170,80,.48); } }
@media(prefers-reduced-motion:reduce) { :is(#product-overview,#product-summary-container) .pui-header-builder-cta .open-cost-popup::after { animation:none; box-shadow:0 0 7px 2px rgba(40,170,80,.3); } }
#product-secondary-plans { width:100%; padding:16px; box-sizing:border-box; background:#fff; }
#product-summary-container .pui-header-budget-link { display:grid; grid-template-columns:minmax(0,1fr); align-content:center; }
#product-summary-container .pui-header-budget-label-row { width:100%; min-width:0; }
#product-summary-container .pui-header-budget-amount { justify-content:flex-start; }
#product-summary-container .pui-header-builder-cta { gap:8px; }
body.product-product main :is(#product-summary-container,#product-overview) .pui-builder-benefits { display:flex; flex-wrap:nowrap; gap:8px; align-items:center; }
body.product-product main :is(#product-summary-container,#product-overview) .pui-builder-benefits li { font-size:11px!important; line-height:1.5!important; white-space:nowrap; }
body.product-product main :is(#product-summary-container,#product-overview) .pui-builder-benefits li::before { margin-right:4px; }
@media(min-width:1024px) {
 #product-summary-container .pui-header-summary-row--expanded { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(248px,1fr); }
}
@media(min-width:1024px) and (max-width:1199px) {
 #product-summary-container .pui-header-summary-row--expanded { grid-template-columns:repeat(2,minmax(0,1fr)); }
 #product-summary-container .pui-header-builder-cta { grid-column:1/-1; grid-template-columns:30px minmax(0,1fr) auto; }
 #product-summary-container .pui-header-builder-cta .open-cost-popup { grid-column:3; grid-row:1; }
 #product-summary-container .pui-header-builder-cta .pui-builder-benefits { grid-column:2/-1; }
}
@media(min-width:1024px) {
 #gallery .ProductPage_slides { height:var(--pui-gallery-slide-height,550px)!important; min-height:var(--pui-gallery-slide-height,550px)!important; }
}
#product-secondary-plans .ProductPage_plans-container { display:flex; justify-content:center; width:100%; max-width:100%; }
#product-secondary-plans .plans-image picture { display:block; }
#product-secondary-plans .ProductPage_plan-img { display:block; width:auto!important; height:auto!important; max-width:100%!important; max-height:calc(100svh - 96px)!important; margin-inline:auto; object-fit:contain; }
@media(max-width:1023px) {
 #product-summary-container { display:none; }
 #product-overview .pui-header-summary-row--expanded { padding:12px; }
 #product-secondary-plans .ProductPage_plan-img { max-height:calc(100svh - 120px)!important; }
}
