.configurator-wrapper{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1rem,2.5vw,2rem);margin:0 auto;align-items:flex-start}.configurator-wrapper.has-sidebar{grid-template-columns:minmax(19rem,23rem) minmax(0,1fr)}.configurator-sidebar{position:sticky;top:calc(var(--header-height-scrolled) + 1rem);padding:clamp(1.25rem,2.5vw,2rem);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1.5rem;background:var(--color-surface);border:1px solid var(--glass-border)}.sidebar-title{font-family:var(--font-heading);margin:0;font-size:1.45rem;font-weight:400;text-align:left}.sidebar-preview-area{width:100%;aspect-ratio:1/1.16;background:var(--color-bg-soft);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);overflow:hidden;position:relative}.sidebar-image-wrapper{position:absolute;inset:0}.sidebar-image-wrapper .viewer-boundary,.sidebar-image-wrapper .viewer-canvas-wrap,.sidebar-image-wrapper .viewer-shell{width:100%;height:100%;min-height:0;border-radius:0}.sidebar-placeholder{color:var(--color-text-muted);font-size:.9rem;text-align:center;padding:2rem}.sidebar-summary{display:flex;flex-direction:column;gap:1rem}.sidebar-summary-item{display:flex;justify-content:space-between;font-size:.95rem;border-bottom:1px solid var(--glass-border);padding-bottom:.5rem}.sidebar-summary-item .label{color:var(--color-text-muted)}.sidebar-total{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;font-weight:600;padding-top:1rem;border-top:1px solid var(--glass-border)}.mobile-progress-indicator{display:none;font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary)}.config-header-meta{display:flex;justify-content:space-between;align-items:center;min-height:2.75rem;margin-bottom:1.25rem}.saved-progress-note{margin-left:auto;margin-right:.75rem;color:var(--color-text-subtle);font-size:.7rem}.restart-button{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.55rem .7rem;color:var(--color-text-muted);font-size:.7rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;background:transparent;border:1px solid var(--color-control-border);border-radius:var(--radius-sm);cursor:pointer}.restart-button:hover:not(:disabled){color:var(--color-primary);border-color:var(--color-primary)}.restart-button:disabled{opacity:.38;cursor:default}.step-header{max-width:48rem;margin:0 0 clamp(1.75rem,4vw,3rem)}.step-helper{color:var(--color-text-muted);margin:0;font-size:1rem;line-height:1.65}.configurator-container{width:100%;max-width:none;margin:0;padding:clamp(1.25rem,3.5vw,3rem);border-radius:var(--radius-md);min-height:34rem;display:flex;flex-direction:column;color:var(--color-text);font-family:var(--font-body)}.config-header{margin-bottom:clamp(2rem,4vw,3rem)}.progress-bar-container{height:3px;background:var(--color-border);border-radius:0;overflow:hidden;margin-bottom:2rem}.progress-fill{height:100%;background:var(--color-primary);transition:transform .28s cubic-bezier(.4,0,.2,1);transform-origin:left}.steps-nav{display:flex;justify-content:space-between}.step-item{display:flex;flex-direction:column;align-items:center;gap:.65rem;transition:var(--transition-smooth);flex:1;cursor:pointer;background:transparent;border:none;color:inherit;padding:.25rem}.step-item.active{opacity:1}.step-item.completed{opacity:.9;color:var(--color-primary)}.step-dot{display:grid;width:1.75rem;height:1.75rem;place-items:center;color:var(--color-text-muted);font-size:.68rem;font-weight:700;background:transparent;border:1px solid;border-radius:var(--radius-sm)}.step-item.active .step-dot,.step-item.completed .step-dot{color:var(--color-bg);background:var(--color-primary);border-color:var(--color-primary)}.step-label{max-width:8.5rem;font-size:.68rem;line-height:1.35;text-transform:uppercase;letter-spacing:.08em}.step-item:disabled{opacity:.48;cursor:default}.step-item:not(:disabled):hover{opacity:.9}.config-main{flex:1;margin-bottom:clamp(2rem,5vw,3.5rem);scroll-margin-top:calc(var(--header-height-scrolled) + 1.25rem)}.config-main:focus{outline:none}.interactive-3d-wrapper{width:100%;height:clamp(360px,58vh,600px);overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--color-bg-soft)}.preview-action{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.preview-continue,.preview-inscription-link{min-height:48px;padding:.9rem 1.85rem;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;text-decoration:none}.nav-next-btn{display:inline-flex;align-items:center;gap:.5rem}.selection-chips-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--glass-border)}.selection-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;padding:.35rem .75rem;background:var(--color-bg-soft);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:.78rem;cursor:pointer;transition:var(--transition-fast)}.selection-chip:hover{border-color:var(--color-primary);background:var(--color-surface-raised)}.selection-chip.active{border-color:var(--color-primary);background:var(--color-primary-soft)}.selection-chip .chip-label{color:var(--color-text-muted)}.selection-chip .chip-value{font-weight:600;color:var(--color-text)}.step-title{margin:0 0 .8rem;font-family:var(--font-heading);font-size:clamp(1.8rem,3.6vw,2.65rem);font-weight:400;line-height:1.08;text-align:left}.options-grid{display:grid;gap:.9rem}.options-grid,.options-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.option-card{min-height:9.5rem;padding:clamp(1.25rem,2.5vw,1.75rem);background:var(--color-bg-soft);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.75rem;transition:var(--transition-smooth);color:var(--color-text);text-align:left;cursor:pointer}.option-card:hover{background:var(--color-surface-raised);border-color:var(--color-primary);transform:translateY(-.15rem)}.option-card.selected{background:var(--color-primary-soft);border-color:var(--color-primary);outline:2px solid var(--color-primary);outline-offset:-2px;box-shadow:0 4px 16px rgba(0,0,0,.24)}.option-icon{font-size:3.5rem}.option-name{font-family:var(--font-heading);font-size:clamp(1.2rem,2vw,1.5rem);font-weight:500;line-height:1.15}.option-price{font-size:1rem;color:var(--color-primary);font-weight:600}.option-desc{color:var(--color-text-muted);font-size:.85rem;line-height:1.5}.option-card-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;width:100%;margin-top:auto;padding-top:.35rem}.option-meta-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.option-meta-badge{font-size:.72rem;color:var(--color-text-subtle);padding:.2rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:rgba(255,255,255,.02)}.option-dimension-pill{color:var(--color-primary);border-color:rgba(214,169,86,.32);background:rgba(214,169,86,.08);font-weight:600}.model-card{padding:1.25rem;justify-content:flex-start}.model-image{position:relative;width:100%;aspect-ratio:300/340;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:1rem;background:#151b18}.model-image img{width:100%;height:100%;object-fit:contain}.material-category{margin-bottom:3rem}.material-search{max-width:460px;margin:0 0 2.5rem}.material-search label{display:block;margin-bottom:.6rem;color:var(--color-text-muted);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.material-search input{width:100%}.material-search-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.65rem}.material-search-status{margin:0;color:var(--color-text-subtle);font-size:.78rem}.material-search-reset{padding:.4rem .85rem;font-size:.78rem;min-height:36px}.category-name{font-size:.9rem;text-transform:uppercase;letter-spacing:3px;margin-bottom:2rem;color:var(--color-text-subtle);opacity:1;text-align:left}.mat-preview{position:relative;overflow:hidden;width:70px;height:70px;border-radius:50%;border:3px solid rgba(255,255,255,.05);box-shadow:0 5px 15px rgba(0,0,0,.2);background-position:50%;background-size:180px}.mat-preview img{object-fit:cover}.mat-card{align-items:center;text-align:center}.options-list{display:flex;flex-direction:column;gap:12px;max-width:800px;margin:0 auto}.list-option{display:flex;justify-content:space-between;align-items:center;padding:1.35rem 1.5rem;background:var(--color-bg-soft);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);transition:var(--transition-smooth);color:var(--color-text);cursor:pointer}.list-option:hover{background:var(--color-surface-raised);border-color:var(--color-primary);transform:translateX(.15rem)}.list-option.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.partial-cover-variants{padding:1rem 1.25rem;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:rgba(255,255,255,.02);display:flex;flex-direction:column;gap:.75rem}.partial-cover-variants-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.partial-cover-variants-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.partial-cover-variant-card{display:flex;align-items:center;gap:.75rem;padding:.75rem .85rem;border-radius:var(--radius-sm);border:1px solid var(--color-control-border);background:var(--color-bg-soft);color:var(--color-text);text-align:left;cursor:pointer;transition:var(--transition-fast)}.partial-cover-variant-card:hover{border-color:var(--color-primary);background:var(--color-surface-raised)}.partial-cover-variant-card.selected{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.partial-cover-diagram{width:38px;height:50px;flex-shrink:0;color:var(--color-primary)}.partial-cover-variant-text{display:flex;flex-direction:column;gap:.2rem}.partial-cover-variant-text strong{font-size:.84rem;line-height:1.25;color:var(--color-text)}.partial-cover-variant-text small{font-size:.72rem;line-height:1.35;color:var(--color-text-muted)}@media (max-width:767px){.partial-cover-variants-grid{grid-template-columns:1fr}}.material-collection-toggle{display:flex;justify-content:center;min-height:44px;margin:1.25rem auto 0}.summary-box{padding:clamp(1.25rem,3vw,2.25rem);border-radius:var(--radius-md);margin-bottom:clamp(2rem,5vw,3.5rem);border:1px solid var(--color-border);background:var(--color-surface-raised)}.print-hidden-screen{display:none}.summary-line{margin-bottom:1rem;font-size:1.1rem}.summary-line,.summary-total{display:flex;justify-content:space-between}.summary-total{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);align-items:center}.price-tag{font-size:2rem;color:var(--color-primary);font-weight:700}.contact-form{display:flex;flex-direction:column;gap:2rem;max-width:800px;margin:0 auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.form-group{display:flex;flex-direction:column;gap:.75rem}.notes{width:100%;min-height:120px;resize:vertical}.configurator-wrapper .form-group label{color:var(--color-text-muted);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px}.configurator-wrapper input,.configurator-wrapper textarea{background:var(--color-bg-soft);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);padding:1rem;color:var(--color-text);font-family:inherit;transition:var(--transition-fast)}.configurator-wrapper button:focus-visible,.configurator-wrapper input:focus,.configurator-wrapper textarea:focus{outline:2px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.submit-btn{margin-top:1rem;align-self:center;width:100%;max-width:400px}.submit-btn-centered{display:flex;justify-content:center;align-items:center}.spinner-with-gap{margin-right:8px}.form-error{color:#fca5a5;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.22);border-radius:12px;padding:12px 14px;font-size:.9rem;line-height:1.5}.config-footer{border-top:1px solid var(--glass-border);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center}.price-display{display:flex;flex-direction:column}.price-display .label{font-size:.8rem;color:var(--color-text-subtle);opacity:1;text-transform:uppercase;letter-spacing:1px}.price-display .value{max-width:30rem;font-size:clamp(1.15rem,2.2vw,1.65rem);font-weight:700;color:var(--color-primary)}.price-display small{max-width:44ch;margin-top:.2rem;color:var(--color-text-subtle);font-size:.68rem;line-height:1.4}.nav-actions{display:flex;gap:1.5rem}.btn-secondary-outline{background:none;border:1px solid var(--color-control-border);padding:.8rem 1.5rem;border-radius:var(--radius-sm);color:var(--color-text);font-weight:500;cursor:pointer;transition:all .3s ease}.btn-secondary-outline:hover{background:rgba(255,255,255,.05);border-color:var(--color-text)}.action-button{display:inline-flex;align-items:center;gap:8px}.action-button-whatsapp{border-color:var(--color-border-strong);color:var(--color-text)}.action-button-whatsapp:hover{background:var(--color-surface-muted);border-color:var(--color-primary)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fade-in-up .5s ease-out forwards}@media (max-width:1023px){.configurator-wrapper.has-sidebar{grid-template-columns:1fr}.configurator-sidebar{position:static;width:100%;display:grid;grid-template-columns:minmax(16rem,.75fr) minmax(0,1fr)}.configurator-sidebar .sidebar-title{grid-column:1/-1}.configurator-sidebar .sidebar-preview-area{grid-column:1;grid-row:2/5}.configurator-sidebar .sidebar-summary,.configurator-sidebar .sidebar-total{grid-column:2}.options-grid,.options-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.config-header-meta{justify-content:space-between}.mobile-progress-indicator{display:block}.steps-nav{display:none}.configurator-container{padding:1.25rem;margin:0;min-height:0}.form-row{grid-template-columns:1fr;gap:1rem}.step-title{font-size:clamp(1.65rem,8vw,2.15rem)}.options-grid,.options-grid.cols-3{grid-template-columns:1fr}.interactive-3d-wrapper{height:clamp(300px,65dvh,460px);border-radius:16px}.step-label{display:none}.config-footer{position:sticky;z-index:20;bottom:0;align-items:flex-end;gap:1rem;margin:1.5rem -1.25rem -1.25rem;padding:.85rem max(1.25rem,env(safe-area-inset-right)) max(.85rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));border-top:1px solid var(--color-border-strong);background:rgba(11,11,10,.96)}.saved-progress-note{display:none}.price-display .value{font-size:1.05rem}.price-display small{max-width:25ch;font-size:.62rem}}.configurator-view{min-height:100vh;min-height:100dvh;background:var(--color-bg)}.configurator-workspace{padding-block:clamp(3rem,7vw,6rem)}.loading-fallback{padding:clamp(2rem,6vw,4rem);text-align:center;border-radius:var(--radius-md)}.loading-fallback p{margin:1rem 0 0;color:var(--color-text-muted)}.btn-share-icon{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;background:rgba(255,255,255,.03);border:1px solid var(--color-control-border);border-radius:12px;color:var(--color-text);font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.2,1,.3,1);font-size:.9rem}.btn-share-icon:active{transform:translateY(0) scale(.96)}.btn-share-icon:hover{background:rgba(255,255,255,.08);transform:translateY(-2px);border-color:rgba(255,255,255,.3)}.btn-share-icon.wa-btn{border-color:var(--color-border-strong);color:var(--color-text)}.btn-share-icon.wa-btn:hover{background:var(--color-surface-muted);border-color:var(--color-primary)}.btn-share-icon.mail-btn{border-color:var(--color-border-strong);color:var(--color-primary)}.btn-share-icon.mail-btn:hover{background:var(--color-surface-muted);border-color:var(--color-primary)}.copy-btn{border-color:rgba(255,255,255,.1)}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-view{animation:zoomIn .6s cubic-bezier(.16,1,.3,1) forwards}.success-content{padding:40px 20px}.success-icon-wrapper{display:inline-flex;padding:20px;border-radius:50%;background:var(--color-primary-soft);color:var(--color-primary);margin-bottom:24px}.success-title{margin-bottom:16px}.success-description{max-width:600px;margin:0 auto 30px;color:var(--color-text-muted);font-size:1.1rem;line-height:1.6}@keyframes zoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.summary-content-wrapper{display:flex;gap:3rem;align-items:center;margin-top:1.5rem}.summary-preview-graphic{flex:0 1 min(240px,100%);width:min(240px,100%);height:auto;aspect-ratio:1;background:rgba(255,255,255,.02);border:1px solid var(--glass-border);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;position:relative;overflow:hidden}.summary-preview-graphic img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}.preview-label{position:absolute;bottom:8px;font-size:.65rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.summary-details-list{flex:1}.share-actions-grid{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.copy-status{margin:1rem auto 0;max-width:42rem;color:var(--color-text-muted)}.manual-copy-text{display:block;width:min(100%,42rem);min-height:10rem;margin:1rem auto 0;resize:vertical}.share-box{padding:20px;border-radius:16px;display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.share-box-title{font-size:.9rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);margin-bottom:5px}.share-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.configuration-share{width:min(100%,52rem);margin:clamp(1.5rem,3vw,2.5rem) auto 0;padding:clamp(1.25rem,2.5vw,1.75rem)}.configuration-share .btn-share-icon{min-height:48px;justify-content:flex-start}.step5-quick-switcher,.summary-card-screen{width:min(100%,52rem);margin:clamp(1.25rem,2.5vw,2rem) auto 0;padding:clamp(1.25rem,2.5vw,1.75rem);border-radius:var(--radius-md)}.quick-switcher-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--color-primary);margin-bottom:1.1rem}.step5-quick-switcher.is-collapsed .quick-switcher-header{margin-bottom:0}.quick-switcher-heading-wrap{display:inline-flex;align-items:center;gap:.55rem}.quick-switcher-toggle{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.3rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--color-control-border);background:var(--color-bg-soft);color:var(--color-text-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:var(--transition-fast)}.quick-switcher-toggle:hover{border-color:var(--color-primary);color:var(--color-primary)}.summary-dimension-badge{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:var(--radius-sm);border:1px solid rgba(214,169,86,.32);background:rgba(214,169,86,.09);color:var(--color-primary);font-size:.76rem;font-weight:600}.quick-switcher-title,.summary-card-heading{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.summary-card-heading{margin-bottom:1.25rem}.quick-switcher-groups{display:flex;flex-direction:column;gap:1.15rem}.quick-switcher-group{display:flex;flex-direction:column;gap:.55rem}.quick-group-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.quick-group-label{font-size:.78rem;font-weight:600;color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.06em}.quick-group-more{background:none;border:none;padding:.2rem .4rem;font-size:.78rem;color:var(--color-primary);text-decoration:underline;cursor:pointer}.quick-pills{display:flex;flex-wrap:wrap;gap:.45rem}.quick-pill{min-height:36px;padding:.35rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--color-control-border);background:var(--color-bg-soft);color:var(--color-text);font-size:.82rem;cursor:pointer;transition:var(--transition-fast)}.quick-pill:hover{border-color:var(--color-primary);background:var(--color-surface-raised)}.quick-pill.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.summary-screen-grid{margin:0;display:flex;flex-direction:column;gap:.75rem}.summary-screen-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--glass-border)}.summary-screen-info{display:flex;flex-direction:column;gap:.2rem}.summary-screen-info dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle)}.summary-screen-info dd{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem;font-size:.98rem}.summary-screen-price{font-size:.82rem;color:var(--color-text-muted)}.summary-edit-btn{min-height:36px;padding:.35rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--color-control-border);background:transparent;color:var(--color-text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:var(--transition-fast)}.summary-edit-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.summary-screen-total{margin-top:1.25rem;padding-top:1rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.summary-total-label{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.summary-total-note{margin:.25rem 0 0;font-size:.74rem;color:var(--color-text-subtle);max-width:46ch}.summary-total-value{font-size:clamp(1.3rem,2.4vw,1.75rem);color:var(--color-primary)}.print-summary-only,.visually-hidden{display:none}.checkbox-group{flex-direction:row;align-items:flex-start;gap:10px;margin-top:10px;margin-bottom:20px}.checkbox-input{width:auto;margin:4px 0 0;cursor:pointer}.checkbox-label{font-size:.8rem;color:var(--color-text-muted);line-height:1.4;cursor:pointer}.privacy-link{display:inline;color:var(--color-primary);text-decoration:underline}.clipboard-fallback-input{position:fixed;top:0;left:-9999px;opacity:0;pointer-events:none}@media (max-width:767px){.summary-content-wrapper{flex-direction:column;align-items:stretch;gap:2rem}.summary-preview-graphic{align-self:center}}@media (hover:none){.mat-card:active,.model-card:active,.option-card:active{border-color:var(--color-primary);background:var(--color-primary-soft);transform:scale(.98)}}@media (max-width:640px){.share-buttons{grid-template-columns:1fr}.configurator-container{padding:1rem}.config-footer{margin-inline:-1rem;margin-bottom:-1rem;padding-inline:max(1rem,env(safe-area-inset-left))}.success-content{padding:1.5rem 0}.summary-box{padding:1rem}.configurator-sidebar{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;padding:1rem}.configurator-sidebar .sidebar-preview-area,.configurator-sidebar .sidebar-title,.configurator-sidebar .sidebar-total{grid-column:1;grid-row:auto}.configurator-sidebar .sidebar-preview-area{aspect-ratio:4/3}.configurator-sidebar .viewer-boundary,.configurator-sidebar .viewer-canvas-wrap{min-height:0}.configurator-sidebar .sidebar-summary{display:none}.configurator-workspace{padding-block:2rem 3.5rem}.option-card{min-height:7.5rem}.mat-card,.model-card{min-height:0}.summary-line,.summary-total{align-items:flex-start;gap:.75rem}.price-tag{font-size:1.25rem;text-align:right}}@media print{@page{size:A4 portrait;margin:10mm}body,html{background:#ffffff!important;color:#000000!important;height:260mm!important;max-height:260mm!important;min-height:0!important;overflow:hidden!important}body *{visibility:hidden!important}.printable-summary,.printable-summary *{visibility:visible!important}.breadcrumbs,.config-footer,.config-header,.contact-form,.footer,.header,.print-hide,.print-hide-btn,.share-box,.view-header,button,nav{display:none!important}.configurator-container,.configurator-view,.container,.section-padding{padding:0!important;margin:0!important;max-width:100%!important;background:transparent!important}.configurator-container{border:none!important;box-shadow:none!important}.printable-summary{position:absolute!important;top:0!important;left:0!important;border:2px solid #000000!important;color:#000000!important;background:#ffffff!important;box-sizing:border-box!important;padding:24px!important;border-radius:0!important;font-family:Times New Roman,Times,serif!important;width:100%!important;height:auto!important;max-height:250mm!important;margin:0!important;overflow:hidden!important;break-inside:avoid-page!important;page-break-inside:avoid!important}.print-only-title,.print-summary-only,.printable-summary{display:block!important}.print-only-title{text-align:center;font-size:1.6rem;font-weight:700;border-bottom:2px solid #000000;padding-bottom:15px;margin-bottom:20px;color:#000000!important;letter-spacing:2px}.summary-content-wrapper{display:flex!important;flex-direction:row!important;gap:28px!important;align-items:flex-start!important;margin-bottom:24px!important}.summary-preview-graphic{display:flex!important;flex:0 0 190px!important;width:190px!important;height:190px!important;border:1px solid #000000!important;padding:10px!important;background:#ffffff!important;align-items:center!important;justify-content:center!important;border-radius:0!important}.summary-preview-graphic img{width:170px!important;height:170px!important;object-fit:contain!important}.summary-details-list{flex:1!important}.summary-line{border-bottom:1px dashed #666666!important;padding:8px 0!important;font-size:1.15rem!important}.summary-line,.summary-line strong,.summary-total{color:#000000!important}.summary-total{border-top:2px solid #000000!important;margin-top:20px!important;padding-top:12px!important;font-size:1.4rem!important}.price-tag{font-weight:700!important;color:#000000!important;font-size:1.8rem!important}.print-only-footer{display:block!important;margin-top:24px!important;border-top:1px solid #000000!important;padding-top:20px!important}.print-terms{font-size:.85rem!important;color:#333333!important;line-height:1.5!important;margin-bottom:24px!important}.signature-section{display:flex!important;justify-content:space-between!important;gap:80px!important;margin-top:36px!important}.signature-line{flex:1!important;border-top:1px solid #000000!important;text-align:center!important;padding-top:8px!important;font-size:.9rem!important;font-weight:700!important}}.configurator-wrapper .form-group label:has(+input[required]):after,.configurator-wrapper .form-group label:has(+textarea[required]):after{content:" *";color:var(--color-danger)}.viewer-boundary,.viewer-canvas-wrap{position:relative;width:100%;height:100%;min-height:260px;overflow:hidden;border-radius:inherit;background:var(--color-bg-soft)}.gravestone-preview{position:relative;width:100%;height:100%;isolation:isolate}.gravestone-lighting-overlay,.gravestone-material-overlay{position:absolute;inset:0;pointer-events:none;border-radius:inherit}.gravestone-material-overlay{background-color:var(--stone-base);background-image:var(--stone-texture);background-size:var(--stone-scale);background-repeat:repeat;mix-blend-mode:color;opacity:.58;filter:brightness(var(--stone-brightness)) contrast(var(--stone-contrast)) saturate(var(--stone-saturation))}.gravestone-lighting-overlay{background:linear-gradient(135deg,rgba(255,255,255,var(--stone-highlight,.1)),transparent 42%),linear-gradient(315deg,rgba(0,0,0,var(--stone-shadow,.18)),transparent 52%);mix-blend-mode:soft-light}.viewer-fallback,.viewer-webgl{position:absolute;inset:0}.viewer-webgl{opacity:0;pointer-events:none;transition:opacity .26s ease}.viewer-webgl-ready{opacity:1;pointer-events:auto}.viewer-canvas-wrap canvas{display:block;touch-action:pan-y pinch-zoom}.viewer-accuracy,.viewer-notice,.viewer-status{position:absolute;z-index:3;left:12px;right:12px;color:#e6eee9;font-size:.72rem;line-height:1.35;text-align:center;text-shadow:0 1px 4px #000}.viewer-notice,.viewer-status{top:12px}.viewer-accuracy{bottom:8px;margin:0;color:#bdcbc4}.viewer-controls button,.viewer-controls-toggle,.viewer-notice button,.viewer-preset-btn{display:inline-flex;align-items:center;justify-content:center;gap:.38rem;border:1px solid rgba(227,239,232,.32);color:#f2f7f4;background:rgba(10,18,14,.82);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .18s ease,background-color .18s ease}.viewer-notice button{margin-left:.6rem;padding:.35rem .65rem}.viewer-top-overlay{position:absolute;z-index:2;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;pointer-events:none}.viewer-dimensions-badge{display:inline-flex;align-items:center;min-height:36px;padding:.3rem .7rem;border-radius:var(--radius-sm);background:rgba(10,18,14,.8);border:1px solid rgba(200,183,155,.32);color:#e8e2d5;font-size:.74rem;font-weight:500;letter-spacing:.03em;line-height:1.25;pointer-events:none}.viewer-controls-drawer{display:flex;flex-direction:column;align-items:flex-end;gap:.45rem;pointer-events:auto;margin-left:auto}.viewer-controls-toggle{min-height:38px;padding:0 .75rem;font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.viewer-controls-panel{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;padding:.45rem;border-radius:var(--radius-sm);background:rgba(8,15,12,.86);border:1px solid rgba(227,239,232,.2)}.viewer-controls,.viewer-presets{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.3rem}.viewer-controls button{width:40px;height:40px;padding:0}.viewer-preset-btn{min-height:36px;padding:0 .68rem;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.viewer-controls-drawer.is-open .viewer-controls-toggle,.viewer-preset-btn.active{border-color:var(--color-primary)}.viewer-preset-btn.active{background:rgba(23,36,31,.95);color:var(--color-primary)}.viewer-controls button:hover,.viewer-controls-toggle:hover,.viewer-notice button:hover,.viewer-preset-btn:hover{border-color:var(--color-primary)}@media (prefers-reduced-motion:reduce){.viewer-controls button,.viewer-controls-toggle,.viewer-notice button,.viewer-preset-btn,.viewer-webgl{transition:none}}@media (max-width:767px){.viewer-boundary,.viewer-canvas-wrap{min-height:300px}.viewer-top-overlay{top:10px;left:10px;right:10px}.viewer-dimensions-badge{min-height:34px;padding:.25rem .55rem;font-size:.68rem}.viewer-controls-toggle{min-height:36px;padding:0 .65rem;font-size:.68rem}.viewer-controls-panel{padding:.38rem;gap:.35rem}.viewer-controls button{width:38px;height:38px}.viewer-preset-btn{min-height:34px;padding:0 .55rem;font-size:.66rem}.viewer-accuracy{bottom:6px;font-size:.64rem;padding-inline:.25rem}}@media print{.viewer-boundary{display:none!important}}