.product-extras{position:fixed;z-index:15;top:119px;left:3.6vw;pointer-events:auto}.site-loading .product-extras{display:none}.product-extras[hidden],.product-extras [hidden]{display:none!important}.extras-opener,.extras-action{background:transparent;border:0;color:#c2ced1;text-align:left;font-size:9px;letter-spacing:1.1px}.extras-opener{padding:10px 0;font-size:8px;text-transform:uppercase;color:#e7edee;border-bottom:1px solid #c5d2d54a;min-width:85px}.extras-menu{display:grid;gap:5px;margin-top:10px}.extras-action{padding:9px 0;transition:color .25s,transform .25s}.extras-action::before{content:'+';color:#b95750;margin-right:10px}.extras-action:hover{color:#fff;transform:translateX(3px)}.extras-opener{display:none}.extras-dialog{width:min(860px,94vw);max-width:94vw;max-height:88dvh;padding:38px 40px;overflow:auto;background:linear-gradient(145deg,#111b21f5,#070b0ff5);border:1px solid #a7bec239;color:#eef3f4;box-shadow:0 30px 100px #000a;overscroll-behavior:contain}.extras-dialog::backdrop{background:#020609d9;backdrop-filter:blur(12px)}.extras-dialog .extras-close{position:absolute;top:10px;right:15px;background:none;border:0;font-size:27px;color:#b4c4cb;padding:8px}.extras-dialog h2{font-size:clamp(22px,4vw,33px);letter-spacing:-.5px;line-height:1.2;font-weight:400;margin:13px 40px 15px 0}.extras-dialog .extras-eyebrow{font-size:8px;letter-spacing:2.5px;color:#849aa5;margin:0}.extras-dialog .extras-lead{font-size:11px;line-height:1.7;color:#96acb6;max-width:600px;margin:0 0 24px}.extras-dialog .extras-selection{display:flex;align-items:center;gap:16px;margin:0 0 24px;padding-bottom:17px;border-bottom:1px solid #879aa32b}.extras-selection strong{font-size:18px;font-weight:400;letter-spacing:1px}.extras-selection span{font-size:10px;color:#a6b7bf;letter-spacing:1px}.extras-specs{display:grid;grid-template-columns:1fr 1fr;margin:0;column-gap:40px}.extras-specs>div{border-bottom:1px solid #8298a327;padding:15px 0;display:flex;justify-content:space-between;gap:16px;align-items:baseline}.extras-specs dt{color:#8fa6b1;font-size:10px}.extras-specs dd{font-size:12px;line-height:1.5;text-align:right;margin:0;max-width:62%;overflow-wrap:anywhere}.extras-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 22px}.extras-form label,.extras-select-label{display:grid;gap:8px;color:#acbdc6;font-size:10px;letter-spacing:.3px}.extras-form input,.extras-form textarea,.extras-select-label select{width:100%;border:1px solid #8ca5b13d;border-radius:0;background:#060c1180;color:#f4f6f6;padding:12px;font:13px Arial;outline-offset:3px;min-height:42px}.extras-form textarea{min-height:85px;resize:vertical}.extras-form .extras-field-wide{grid-column:1/-1}.extras-form .extras-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);opacity:0;pointer-events:none}.extras-primary{margin-top:10px;padding:12px 20px;border:1px solid #d9e5e77d;background:#b13f371f;color:#fff;font-size:10px;letter-spacing:.7px;transition:background .25s;min-height:42px}.extras-primary:hover{background:#b13f374a}.extras-primary:disabled{opacity:.6;cursor:wait}.extras-result{min-height:18px;color:#efb7ad!important;font-size:11px!important}.extras-form h3{font-size:18px;font-weight:400;line-height:1.5}.extras-success-mark{font-size:30px;color:#c4d7ce;margin-top:35px}.extras-reference{font-size:10px!important;overflow-wrap:anywhere;color:#8fa6b1!important}.extras-select-label{max-width:300px}.extras-comparison-figures{display:flex;justify-content:center;align-items:end;gap:35px;margin:35px 0 25px;min-height:230px;padding:20px 10px;border-bottom:1px solid #a3b3bc33;background:radial-gradient(ellipse at 50% 100%,#a9c4cf0c,transparent 65%)}.extras-comparison-figures figure{margin:0;display:flex;flex-direction:column;align-items:center;justify-content:end;min-width:0}.extras-size-frame{position:relative;border:1px solid #b3c6ce48;max-width:100%;background:linear-gradient(145deg,#7a8a9122,#060b1022);display:flex;align-items:center;justify-content:center}.extras-size-frame canvas{display:block;max-width:100%;max-height:100%;object-fit:contain}.extras-comparison-figures figcaption{font-size:10px;letter-spacing:1px;color:#c9d5da;margin-top:14px;text-align:center}.extras-table-wrap{overflow:auto}.extras-table-wrap table{border-collapse:collapse;width:100%;font-size:11px;min-width:400px}.extras-table-wrap th,.extras-table-wrap td{padding:14px 12px;border-bottom:1px solid #8096a22b;vertical-align:top;text-align:left;line-height:1.5;overflow-wrap:anywhere}.extras-table-wrap th{font-weight:400;color:#8fa5b0;width:30%}.extras-table-wrap thead th{color:#e2e8eb;font-size:12px}.extras-filter{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px}.extras-chip{border:1px solid #8fa5b13d;background:none;padding:9px 12px;color:#8da3ae;font-size:10px}.extras-chip[aria-pressed=true]{border-color:#d6e3e77d;background:#d4e2e60c;color:#fff}.extras-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.extras-gallery figure{margin:0;min-width:0}.extras-gallery img,.extras-gallery video{display:block;width:100%;max-height:350px;object-fit:contain;background:#020609}.extras-gallery img{aspect-ratio:4/3;object-fit:cover}.extras-gallery figcaption{padding:12px 0}.extras-gallery strong{display:block;font-size:13px;font-weight:400;line-height:1.5}.extras-gallery span{display:block;color:#8fa5b0;font-size:10px;line-height:1.7;margin-top:5px}.extras-dialog button:focus-visible,.extras-dialog input:focus-visible,.extras-dialog textarea:focus-visible,.extras-dialog select:focus-visible{outline:1px solid #e1f1f5;outline-offset:3px}body[data-product-dialog=true]{overflow:hidden}
@media(max-width:1050px) and (min-width:701px){.product-extras{top:103px}.extras-action{font-size:8px}}
@media(max-width:700px){.product-extras{top:auto;left:auto;right:6vw;bottom:calc(89px + env(safe-area-inset-bottom,0px))}.extras-opener{display:block;background:#071017b3;border:1px solid #c5d2d54a;padding:9px 11px;min-width:0;font-size:8px;backdrop-filter:blur(10px)}.extras-menu{display:none;position:absolute;bottom:42px;right:0;width:175px;background:#091117f5;border:1px solid #8c9faa45;padding:9px 15px;box-shadow:0 15px 35px #0008}.product-extras.is-expanded .extras-menu{display:grid}.extras-action{font-size:9px;padding:11px 0}.extras-dialog{width:94vw;max-height:88dvh;padding:30px 20px 24px}.extras-dialog h2{font-size:25px}.extras-specs{grid-template-columns:1fr;column-gap:0}.extras-form-grid{grid-template-columns:1fr;gap:15px}.extras-form .extras-field-wide{grid-column:auto}.extras-gallery{grid-template-columns:1fr}.extras-comparison-figures{gap:24px;padding:15px 0;min-height:200px}.extras-table-wrap table{min-width:340px;font-size:10px}.extras-table-wrap th,.extras-table-wrap td{padding:12px 6px}.extras-dialog .extras-lead{font-size:10px;margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.extras-action{transition:none}}
/* Keep model tools away from the detail back button and moving callouts. */
@media(min-width:701px){
 .product-extras{top:auto;left:auto;right:3.6vw;bottom:85px}
 .product-extras .extras-opener{display:block;padding:11px 15px;border:1px solid #c5d2d54a;background:#071017c9;backdrop-filter:blur(10px)}
 .product-extras .extras-menu{display:none;position:absolute;right:0;bottom:44px;width:195px;background:#091117f5;border:1px solid #8c9faa45;padding:12px 17px;box-shadow:0 15px 35px #0008}
 .product-extras.is-expanded .extras-menu{display:grid}
}

/* Free-standing cabinets: no picture cards or rectangular size outlines. */
.extras-comparison-figures{position:relative;border-bottom:0;background:none;perspective:1100px;padding-top:28px}
.extras-size-frame{border:0;background:none;overflow:visible}
.extras-size-frame canvas{filter:drop-shadow(0 12px 12px #0005);transform-origin:50% 75%;animation:comparisonDrift 14s ease-in-out infinite}
.extras-comparison-figures figure:nth-child(2) .extras-size-frame canvas{animation-delay:-5s;animation-duration:16s}
@keyframes comparisonDrift{0%,100%{transform:translateY(0) rotateY(-2deg) rotateZ(-.25deg)}50%{transform:translateY(-3px) rotateY(2deg) rotateZ(.25deg)}}
.comparison-webgl>canvas{position:absolute;inset:0;width:100%;height:calc(100% - 35px);pointer-events:none}
.comparison-webgl .extras-size-frame{visibility:hidden}
.motion-paused .extras-size-frame canvas{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.extras-size-frame canvas{animation:none}}
