/* Door-first product browsing, inspired by wholesale cabinet catalogs. */
:root{--home-ink:#282828;--home-muted:#666;--home-paper:#fff}
.wholesale-site,.mayfair-home{--paper:#fff;--stone:#f4f4f2;--ink:#282828;--muted:#666;--line:#dedede;background:#fff;color:#282828}
.wholesale-site .mf-shell{width:calc(100% - 96px);max-width:1400px;margin-inline:auto}
.mf-header{border-bottom:1px solid #e3e3e3;background:#fff}.mf-header .mf-nav{font-size:.9375rem}
.mf-footer{border-top:1px solid #ddd}.mf-footer-secondary{color:#777;margin-top:10px;font-size:.8125rem}
.mf-feature-hero{position:relative;min-height:510px;height:min(650px,68vw);color:#fff;isolation:isolate}
.mf-feature-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%;z-index:-2}
.mf-feature-hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.65),rgba(0,0,0,.08) 65%,transparent)}
.mf-feature-hero .mf-shell{height:100%;min-height:inherit;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding-block:48px}
.mf-feature-hero h1{font-size:clamp(2.7rem,4.4vw,4.6rem);font-weight:400;line-height:1.13;letter-spacing:-.025em}
.mf-feature-hero p{margin-top:18px;font-size:1rem}.mf-feature-hero .mf-label{margin:0 0 16px;font-size:.875rem}
.mf-feature-hero a{display:inline-block;margin-top:23px;border-bottom:1px solid white;min-height:44px;padding:9px 0;font-size:1rem}
.mf-home-collections{padding-block:64px 56px}
.mf-collection-heading{text-align:center;margin-bottom:40px}.mf-collection-heading h2{font-size:2.25rem;font-weight:400}.mf-collection-heading p{margin-top:13px;color:#666;font-size:1rem}
.door-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.door-card{min-width:0;scroll-margin-top:30px}.door-card>a{display:block;border:1px solid #e1e1e1;background:#fff;transition:border-color .2s}
.door-card>a:hover{border-color:#666}.door-card-image{padding:18px 18px 14px;background:#fff}
.door-card-image img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.door-card h3{margin:0;background:#333;color:#fff;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:inherit;font-size:1.0625rem;font-weight:400;line-height:1.4;letter-spacing:0}
.door-card h3 span{font-size:1.15rem}
.mf-stone-band{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;background:#f3f3f1;margin-bottom:60px}
.mf-stone-band-copy{padding:40px 54px}.mf-stone-band h2{font-size:2.35rem;font-weight:400}.mf-stone-band p{color:#666;font-size:1rem;margin-top:17px}
.mf-stone-band a{display:inline-block;min-height:44px;padding:10px 0;margin-top:20px;text-decoration:underline;text-underline-offset:5px}
.mf-stone-band img{width:100%;height:auto;aspect-ratio:1.75;object-fit:cover}
.mf-wholesale-contact{background:#f3f3f1}
.finish-directory{padding-block:54px 60px}.finish-directory-title{text-align:center;margin-bottom:40px}
.finish-directory-title h1{font-size:clamp(2.3rem,4vw,3.5rem);font-family:inherit;font-weight:400}
.finish-directory-title .mf-label{margin-bottom:15px}.finish-directory-title>p:last-child{margin-top:18px;color:#666;font-size:1rem}
.finish-note{font-size:.875rem;line-height:1.7;color:#777;margin-top:22px;max-width:780px}
.finish-breadcrumb{display:flex;gap:12px;padding-top:28px;font-size:.875rem;color:#777;flex-wrap:wrap}
.finish-detail{display:grid;grid-template-columns:1fr 1.65fr;gap:80px;align-items:center;padding-block:35px 55px}
.finish-door{border:1px solid #e5e5e5;max-width:390px;padding:24px;justify-self:center;width:100%}
.finish-door img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain}
.finish-summary h1{font-family:inherit;font-size:clamp(2.5rem,4vw,4rem);font-weight:400}.finish-summary>p:not(.mf-label){margin-top:20px}
.finish-summary .mf-label{color:#666;margin-bottom:17px}.finish-summary .finish-note{max-width:470px}
.finish-detail-links{display:flex;align-items:center;flex-wrap:wrap;gap:20px 30px;margin-top:28px}.finish-detail-links .mf-button{margin-top:0}
.finish-kitchens{padding-bottom:55px}.finish-kitchens figure{margin:0}.finish-kitchens img{width:100%;height:auto}
.finish-kitchens figcaption{padding-top:13px;font-size:.9375rem;color:#555}
.finish-extra-kitchens{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}
.finish-extra-kitchens img{aspect-ratio:1.5;object-fit:cover}
@media(max-width:1100px){.door-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.mf-stone-band-copy{padding:30px}.finish-detail{gap:45px}.wholesale-site .mf-shell{width:calc(100% - 56px)}}
@media(max-width:760px){
 .wholesale-site .mf-shell{width:calc(100% - 40px)}
 .mf-feature-hero{height:470px;min-height:470px}.mf-feature-hero>img{object-position:58% 50%}.mf-feature-hero .mf-shell{padding-block:32px}
 .mf-feature-hero h1{font-size:2.7rem}.mf-feature-hero .mf-label{font-size:.8125rem;letter-spacing:.06em}
 .mf-home-collections{padding-block:42px}.mf-collection-heading{margin-bottom:26px}.mf-collection-heading h2{font-size:1.85rem}
 .door-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.door-card-image{padding:12px 8px 9px}
 .door-card h3{font-size:.9375rem;padding:12px 10px;min-height:65px}.door-card h3 span{display:none}
 .mf-stone-band{grid-template-columns:1fr;margin-bottom:42px}.mf-stone-band-copy{padding:28px}.mf-stone-band h2{font-size:1.9rem}
 .mf-stone-band img{aspect-ratio:1.6}.finish-directory{padding-top:35px}.finish-directory-title{margin-bottom:26px}
 .finish-detail{grid-template-columns:1fr;gap:30px;padding-top:26px}.finish-door{max-width:260px;padding:15px}
 .finish-summary h1{font-size:2.4rem}.finish-detail-links{gap:10px 24px}.finish-summary>p:not(.mf-label){margin-top:16px}
 .finish-extra-kitchens{grid-template-columns:1fr;gap:25px}.mf-footer-secondary{font-size:.8125rem}
}
/* Immersive images: original files load only when the viewer opens. */
.mayfair-home{--home-paper:#fff}
.mf-feature-hero{height:calc(100svh - 97px);min-height:540px;max-height:none}
.hero-enlarge{position:absolute;right:32px;bottom:25px;background:rgba(0,0,0,.4);border:1px solid #ffffff80;color:white;padding:11px 16px;min-height:44px;cursor:pointer;font:inherit;font-size:.8rem}
.kitchen-enlarge{display:block;position:relative;padding:0;border:0;background:transparent;width:100%;cursor:zoom-in;color:#fff}
.kitchen-enlarge>span{position:absolute;bottom:18px;right:18px;background:#0009;padding:10px 14px;font-size:.8rem}
.full-photo-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:0;background:#141414;color:white}
.full-photo-dialog::backdrop{background:#141414}.full-photo-bar{height:70px;display:flex;align-items:center;gap:25px;padding:12px 28px;font-size:.875rem}.full-photo-title{margin-right:auto}.full-photo-bar a{text-decoration:underline}.full-photo-bar button{padding:10px 16px;background:transparent;border:1px solid #777;color:white;cursor:pointer;min-height:44px}
.full-photo-stage{height:calc(100% - 70px);display:flex;align-items:center;justify-content:center;padding:0 16px 16px}.full-photo-stage img{width:100%;height:100%;object-fit:contain}
.finish-kitchens.mf-shell{width:100%;max-width:none}.finish-kitchens figcaption,.finish-kitchens>.finish-note,.finish-kitchens>.mf-product-tools{margin-inline:4%;}.finish-extra-kitchens{padding-inline:4%}
@media(max-width:760px){.mf-feature-hero{height:calc(100svh - 81px);min-height:560px}.mf-feature-hero .mf-shell{padding-bottom:105px}.hero-enlarge{right:20px;bottom:25px}.full-photo-bar{height:90px;flex-wrap:wrap;gap:8px 18px;padding:10px 16px}.full-photo-title{width:100%;font-size:.75rem}.full-photo-stage{height:calc(100% - 90px);padding:0}.full-photo-download{margin-right:auto}}
/* Dimension-derived vector line drawings for individual cabinet items. */
.catalog-grid{gap:0;border-top:1px solid #dedede;border-left:1px solid #dedede}.item-card{padding:24px;border-right:1px solid #dedede;border-bottom:1px solid #dedede;background:white}.item-picture{background:white!important}.item-picture img{width:100%;height:auto;aspect-ratio:400/360;object-fit:contain}.item-card h3{font-family:inherit;font-weight:500;line-height:1.45}.item-title strong{font-weight:600}.item-status{color:#444}.item-card a:hover .item-picture img{transform:none}.catalog-intro{padding-block:48px 30px}
@media(max-width:720px){.catalog-grid{gap:0}.item-card{padding:14px 12px}.item-card h3{font-size:.875rem}.item-title strong{font-size:1rem}.item-dimensions{line-height:1.7}.item-picture{margin-bottom:14px}}
/* Three concise trade entry points, sharing the existing Mayfair brand layout. */
.mf-header .mf-nav{gap:clamp(16px,2.2vw,34px)}
.trade-home{background:#f5f5f2;padding:38px 0 42px}.trade-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:22px}.trade-section-heading .mf-label{margin:0;color:#666;font-size:.75rem}.trade-section-heading h2{font-family:inherit;font-weight:400;font-size:1.65rem;line-height:1.25;letter-spacing:-.025em}
.trade-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d5d5d0;border-bottom:1px solid #d5d5d0}
.trade-card{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:26px 28px;min-height:140px}.trade-card+.trade-card{border-left:1px solid #d5d5d0}.trade-card:first-child{padding-left:0}.trade-card:last-child{padding-right:0}.trade-card h3{font-family:inherit;font-size:1.375rem;font-weight:500;margin:0 0 13px;letter-spacing:-.025em}.trade-card p{font-size:.9375rem;color:#666;line-height:1.6;max-width:270px}.trade-card>span{font-size:1.25rem}.trade-card:hover h3{text-decoration:underline;text-underline-offset:6px}.trade-card:focus-visible{outline:2px solid #555;outline-offset:4px}
.trade-directory{padding-block:70px 80px}.trade-directory h1,.trade-copy h1{font-family:inherit;font-weight:400;font-size:clamp(2.5rem,4vw,4rem);line-height:1.1;letter-spacing:-.04em}.trade-directory>.trade-intro{margin-top:22px;margin-bottom:44px}.trade-intro{font-size:1.0625rem;line-height:1.8;color:#666;max-width:580px}
.trade-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:60px;align-items:center;padding-block:36px 58px}.trade-copy .mf-label{color:#666}.trade-copy .trade-intro{margin-top:25px}.trade-actions{display:flex;flex-direction:column;align-items:flex-start;gap:19px;margin-top:27px}.trade-actions .mf-button{margin-top:0}.trade-actions>a:last-child{padding-block:6px;text-decoration:underline;text-underline-offset:4px}.trade-email-note{font-size:.8rem;color:#777;line-height:1.65;margin-top:15px;max-width:400px}.trade-photo{margin:0;min-width:0}.trade-photo img{width:100%;height:auto;aspect-ratio:1.12;object-fit:cover}.trade-photo figcaption{color:#777;font-size:.75rem;margin-top:10px}
.trade-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;padding-block:34px;border-top:1px solid #ddd}.trade-details h2{font-family:inherit;font-size:1.2rem;font-weight:500;margin-bottom:14px}.trade-details p{font-size:.9375rem;line-height:1.8;color:#666}.trade-tools{margin-top:0;margin-bottom:45px}
@media(max-width:1000px){.trade-hero{gap:32px}.trade-card{padding-inline:18px}.trade-card h3{font-size:1.2rem}.trade-section-heading h2{font-size:1.4rem}.trade-details{gap:25px}}
@media(max-width:760px){.trade-home{padding-block:27px}.trade-section-heading{display:block}.trade-section-heading h2{margin-top:10px;font-size:1.5rem}.trade-grid{grid-template-columns:1fr}.trade-card,.trade-card:first-child,.trade-card:last-child{padding:20px 0;min-height:0}.trade-card+.trade-card{border-left:0;border-top:1px solid #ddd}.trade-card h3{font-size:1.25rem;margin-bottom:7px}.trade-card p{max-width:none;font-size:.875rem}.trade-directory{padding-block:42px}.trade-directory>.trade-intro{margin-bottom:28px}.trade-hero{grid-template-columns:1fr;gap:28px;padding-block:30px 38px}.trade-copy h1{font-size:2.7rem}.trade-intro{font-size:1rem}.trade-photo img{aspect-ratio:1.55}.trade-details{grid-template-columns:1fr;gap:28px;padding-block:28px}.trade-tools{margin-bottom:35px}}
/* Finish pages: useful 3D exploration first, expansive photography below. */
.mf-model-entry{margin-top:22px;font-size:.9375rem}
.finish-overview{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(35px,6vw,95px);align-items:center;padding-block:34px 60px}
.collection-sample{display:flex;align-items:center;gap:28px;margin-top:26px}.collection-sample img{width:125px;height:170px;object-fit:contain}.collection-sample p{font-size:1rem;line-height:1.8}.collection-sample span{font-size:.875rem;color:#777}
.collection-model{border:1px solid #deded9;min-width:0;background:#fbfbfa;padding:22px 24px 20px}.collection-model-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.collection-model-heading h2{font-family:inherit;font-size:1.5rem;font-weight:400;letter-spacing:-.025em}.collection-model-heading span{color:#777;font-size:.875rem;white-space:nowrap}
.collection-model-select{display:block;font-size:.875rem;color:#555}.collection-model-select select{display:block;width:100%;max-width:100%;min-width:0;margin-top:8px;background:#fff;border:1px solid #ccc;padding:11px 10px;font:inherit;font-size:1rem;color:#292929;min-height:46px}
.collection-model .model-stage{background:#fbfbfa}.collection-model .model-stage canvas{height:320px;min-height:280px;width:100%;touch-action:none}.collection-model .model-stage canvas:focus-visible{outline:2px solid #5c5c58;outline-offset:2px}.collection-model .model-stage img{width:100%;height:320px;object-fit:contain}
.collection-model-readout{display:flex;align-items:baseline;justify-content:space-between;gap:10px 20px;flex-wrap:wrap;border-top:1px solid #ddd;padding-top:15px;font-size:.875rem}.collection-model-readout a{text-decoration:underline;text-underline-offset:4px}.collection-model-readout p{font-variant-numeric:tabular-nums}
.collection-model-controls{display:flex;align-items:end;gap:24px;margin-top:17px}.collection-model-controls label{font-size:.875rem;flex:1;max-width:270px}.collection-model-controls input[type=range]{display:block;width:100%;margin-top:9px;accent-color:#555;min-height:25px}.collection-model-controls button{margin-left:auto;min-height:44px;white-space:nowrap}.collection-model-note{font-size:.8125rem;color:#777;line-height:1.6;margin-top:10px}
.collection-scenes{padding-bottom:50px}.collection-scenes-heading{padding-block:25px 30px;display:flex;align-items:baseline;justify-content:space-between;gap:25px}.collection-scenes-heading h2{font-family:inherit;font-weight:400;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.035em}.collection-scenes-heading p{font-size:1rem;color:#777}.collection-scenes figure{margin:0;min-width:0}.collection-scenes img{display:block;width:100%;height:auto}.collection-scenes figcaption{font-size:.9375rem;color:#555;padding:14px 0;line-height:1.6}.collection-scene-lead>figcaption{margin-inline:4%}.collection-scenes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;width:92%;margin:25px auto 0;max-width:1600px}.collection-scenes-grid img{aspect-ratio:1.5;object-fit:cover}.collection-scenes .kitchen-enlarge:focus-visible{outline:3px solid #555;outline-offset:4px}
@media(max-width:1050px){.finish-overview{gap:32px}.collection-model{padding:20px}.collection-model-heading{flex-wrap:wrap;gap:7px}.collection-sample{gap:20px}.collection-model-readout{display:block}.collection-model-readout a{display:inline-block;margin-top:7px}}
@media(max-width:760px){.finish-overview{grid-template-columns:1fr;gap:30px;padding-block:26px 20px}.finish-overview .finish-summary h1{font-size:2.3rem}.finish-overview .finish-summary>p:not(.mf-label){margin-top:12px}.collection-sample{margin-top:20px}.collection-sample img{width:82px;height:110px}.finish-overview .finish-detail-links{margin-top:20px}.collection-model{padding:20px 16px}.collection-model-heading{flex-wrap:nowrap}.collection-model-heading h2{font-size:1.4rem}.collection-model-heading span{font-size:.8125rem}.collection-model .model-stage canvas{height:300px}.collection-model-controls{gap:15px}.collection-scenes-heading{display:block;padding-block:28px 22px}.collection-scenes-heading p{margin-top:12px}.collection-scenes-grid{grid-template-columns:1fr;gap:24px;width:100%;margin-top:20px}.collection-scenes-grid figcaption{margin-inline:20px}.collection-scenes-grid img{aspect-ratio:auto}.collection-scene-lead>figcaption{margin-inline:20px}.mf-model-entry{width:auto;display:inline-block}}
.kitchen-gallery-intro{padding-top:60px}.kitchen-gallery-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:28px;font-size:1rem}.kitchen-gallery-nav a{padding-block:8px;text-decoration:underline;text-underline-offset:6px}.gallery-finish{scroll-margin-top:95px;padding-bottom:25px}.gallery-finish .collection-scenes-grid{margin-top:0}.gallery-finish .collection-scenes-grid>figure:first-child{grid-column:1/-1}.gallery-finish .collection-scenes-grid>figure:first-child img{aspect-ratio:auto}

/* Equal visible front dimensions across all seven approved samples. */
.finish-sample{position:relative;display:block;width:100%;aspect-ratio:16/25;overflow:hidden;flex-shrink:0}
.finish-sample-part{position:absolute;display:block;left:7%;width:86%;overflow:hidden}
.finish-sample-drawer{top:0;height:26%}
.finish-sample-door{bottom:0;height:73.7%}
.door-card-image:has(.finish-sample){padding:0;background:transparent;aspect-ratio:16/25}
.collection-sample>.finish-sample{width:125px;flex-basis:125px}
@media(max-width:760px){.collection-sample>.finish-sample{width:82px;flex-basis:82px}}
