.configurator-container{width:100%;max-width:1400px;margin:0 auto;padding:0 1rem}@media(min-width:768px){.configurator-container{padding:0 2rem}}@media(min-width:1024px){.configurator-container{padding:0 3rem}}.configurator-transition{transition:all .5s ease-out}.configurator-transition-fast{transition:all .3s ease-out}.configurator-transition-opacity{transition:opacity .5s ease-out}.configurator-transition-transform{transition:transform .5s ease-out}.configurator-focus{outline:2px solid var(--color-walnut);outline-offset:2px;transition:outline-offset .2s ease-out}.configurator-focus:focus-visible{outline-offset:4px}.configurator-card-focus:focus-visible{outline:3px solid var(--color-walnut);outline-offset:3px;box-shadow:0 0 0 6px #8b6f4726}.configurator-hover{transition:transform .5s ease-out,box-shadow .5s ease-out}.configurator-hover:hover{transform:translateY(-2px);box-shadow:0 20px 50px #1c1c1e1f}.configurator-hover:active{transform:translateY(0);transition-duration:.15s}.configurator-selected{border-color:var(--color-walnut);box-shadow:0 20px 50px #8b6f4740;position:relative}.configurator-selected:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:linear-gradient(135deg,#8b6f471a,#8b6f470d);pointer-events:none;z-index:-1}@keyframes configurator-pulse{0%,to{opacity:1}50%{opacity:.5}}.configurator-loading{animation:configurator-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes configurator-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.configurator-spinner{animation:configurator-spin 1s linear infinite}.configurator-skeleton{background:linear-gradient(90deg,#d4c5a933,#d4c5a94d,#d4c5a933);background-size:200% 100%;animation:configurator-skeleton-wave 1.5s ease-in-out infinite}@keyframes configurator-skeleton-wave{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes configurator-price-update{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.configurator-price-animate{animation:configurator-price-update .5s ease-out}.configurator-image-container{position:relative;overflow:hidden}.configurator-image-fade-enter{opacity:0;transform:scale(1.02)}.configurator-image-fade-enter-active{opacity:1;transform:scale(1);transition:opacity .3s ease-out,transform .3s ease-out}.configurator-image-fade-exit{opacity:1;transform:scale(1)}.configurator-image-fade-exit-active{opacity:0;transform:scale(.98);transition:opacity .3s ease-out,transform .3s ease-out}.configurator-disabled{opacity:.5;cursor:not-allowed;pointer-events:none;filter:grayscale(.3)}.configurator-disabled-interactive{opacity:.6;cursor:not-allowed;position:relative}.configurator-disabled-interactive:after{content:"";position:absolute;inset:0;background:#faf8f580;backdrop-filter:blur(1px);border-radius:inherit;pointer-events:none}.configurator-grid-mobile{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.configurator-grid-tablet{grid-template-columns:repeat(2,1fr);gap:2.5rem}}@media(min-width:1024px){.configurator-grid-desktop{grid-template-columns:1fr 1fr;gap:3rem}}.configurator-section-spacing{padding-top:5rem;padding-bottom:5rem}@media(min-width:768px){.configurator-section-spacing{padding-top:6rem;padding-bottom:6rem}}@media(min-width:1024px){.configurator-section-spacing{padding-top:var(--spacing-section, 80px);padding-bottom:var(--spacing-section, 80px)}}.configurator-element-spacing{margin-bottom:2rem}@media(min-width:768px){.configurator-element-spacing{margin-bottom:2.5rem}}@media(min-width:1024px){.configurator-element-spacing{margin-bottom:3rem}}@media(min-width:768px){.configurator-sticky{position:sticky;top:2rem;align-self:start}}.configurator-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.configurator-skip-link{position:absolute;top:-40px;left:0;background:var(--color-walnut);color:var(--color-warm-white);padding:.5rem 1rem;text-decoration:none;border-radius:0 0 .5rem;z-index:100;transition:top .3s ease-out}.configurator-skip-link:focus{top:0}@media(prefers-reduced-motion:reduce){.configurator-transition,.configurator-transition-fast,.configurator-transition-opacity,.configurator-transition-transform,.configurator-hover,.configurator-image-fade-enter-active,.configurator-image-fade-exit-active{transition:none;animation:none}.configurator-loading,.configurator-spinner,.configurator-skeleton,.configurator-price-animate{animation:none}}@media print{.configurator-container{max-width:100%;padding:0}.configurator-hover:hover{transform:none;box-shadow:none}.configurator-selected:before{display:none}}
