/* Local homepage concept, aligned with the catalogue's shared design system. */
.concept-page { background:#fff; color:#111; }
.concept-page main svg,.concept-page dialog svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.6; flex:none; }
.sprite { position:absolute; width:0; height:0; }
.preview-note { display:flex; align-items:center; justify-content:space-between; padding:6px 36px; background:#1d1d1d; color:#bbb; font-size:9px; letter-spacing:.04em; }
.concept-page .site-header { z-index:60; }
.concept-page .site-header .brand-mark { transform:none; }
.concept-page .homepage-content { width:min(100% - 72px,1376px); margin-inline:auto; }
.quick-nav { display:flex; align-items:center; gap:24px; padding:24px 0; }
.quick-nav>span { color:#777; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.quick-nav>div { display:flex; min-width:0; overflow:auto; scrollbar-width:none; gap:8px; }
.quick-nav>div a,.search-suggestions a { flex:none; padding:12px 17px; border:1px solid #ddd; border-radius:25px; color:#555; font-size:11px; font-weight:600; white-space:nowrap; transition:color .2s,border-color .2s,background .2s; }
.quick-nav>div a:hover,.search-suggestions a:hover { background:#111; color:#fff; border-color:#111; }
.quick-all { display:flex; align-items:center; gap:12px; margin-left:auto; flex:none; font-size:11px; font-weight:600; }
.quick-all svg { width:15px!important; }
.campaign { border-bottom:1px solid #ddd; }
.campaign-grid { display:grid; grid-template-columns:45% 55%; min-height:520px; height:clamp(520px,43vw,650px); background:#f4f4f2; overflow:hidden; }
.campaign-copy { min-width:0; padding:42px 15px 42px 42px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; z-index:2; }
.campaign-label,.eyebrow { display:flex; align-items:center; gap:12px; font-size:10px; font-weight:700; letter-spacing:.16em; line-height:1.5; text-transform:uppercase; color:#646464; }
.line { display:block; width:25px; height:1px; background:#bbb; }
.campaign-brand { width:120px; height:28px; object-fit:contain; object-position:left; margin:28px 0 17px; }
.campaign #campaign-title { font-family:var(--sans); font-size:clamp(48px,4.6vw,72px); font-weight:600; line-height:1.02; letter-spacing:-.065em; margin:0 0 19px; }
.concept-page main h1 em,.concept-page main h2 em { font-family:var(--sans); font-weight:inherit; font-style:normal; }
#campaign-description { max-width:340px; margin:0 0 24px; color:#626262; font-size:13px; line-height:1.65; }
.price-block>span { color:#666; font-size:11px; }
.price-block>strong { display:block; font-weight:600; font-size:43px; letter-spacing:-.055em; margin:5px 0 18px; line-height:1; }
.price-block small { font-size:20px; }
.campaign .button,dialog .button { display:inline-flex; justify-content:space-between; align-items:center; min-height:48px; gap:28px; padding:0 19px; border:1px solid #111; border-radius:2px; color:#fff; background:#111; font-size:11px; font-weight:600; transition:background .25s,transform .25s; }
.campaign .button:hover,dialog .button:hover { background:#333; transform:translateY(-2px); }
.campaign .button svg { width:17px; }
.price-note { margin:11px 0 0; color:#777; font-size:9px; line-height:1.5; }
.campaign-stage { position:relative; min-width:0; overflow:hidden; }
.scene { position:absolute; inset:0; background:#f4f4f2; }
.machine { position:absolute; width:35%; filter:drop-shadow(0 13px 8px #00000012); }
.machine img { position:absolute; left:50%; height:100%; width:auto; max-width:none; transform:translateX(-50%); }
.machine.rear { height:48%; bottom:24%; z-index:1; }
.machine.left { left:-1%; }
.machine.right { right:0; }
.machine.front { height:61%; bottom:15%; left:32%; z-index:3; }
.scene-caption { position:absolute; left:0; right:0; bottom:35px; text-align:center; color:#888; font-size:9px; font-weight:500; letter-spacing:.15em; }
.scene-index { position:absolute; right:24px; top:27px; color:#999; font-size:10px; letter-spacing:.1em; }
.wall-light,.console,.cabinet,.scene-spec { display:none; }
.scene-tv>img { position:absolute; width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; padding:0 20px; }
.scene-kitchen>img { position:absolute; width:78%; height:78%; left:11%; top:9%; object-fit:contain; mix-blend-mode:multiply; }
.campaign-bottom { display:flex; align-items:center; min-height:79px; }
.edition { width:25%; color:#888; font-size:9px; font-weight:600; letter-spacing:.15em; }
.campaign-tabs { display:flex; flex:1; align-self:stretch; gap:35px; }
.campaign-tabs button { position:relative; display:flex; align-items:center; gap:15px; padding:0; border:0; background:none; color:#888; font-size:13px; font-weight:600; flex:1; text-align:left; }
.campaign-tabs button>span { font-size:9px; font-weight:400; }
.campaign-tabs button svg { width:17px; margin-left:auto; opacity:0; transition:opacity .25s; }
.campaign-tabs button:after { content:''; position:absolute; bottom:-1px; left:0; right:0; height:2px; background:#111; transform:scaleX(0); transform-origin:left; transition:transform .3s var(--ease); }
.campaign-tabs button[aria-selected=true],.campaign-tabs button:hover { color:#111; }
.campaign-tabs button[aria-selected=true]:after { transform:scaleX(1); }
.campaign-tabs button[aria-selected=true] svg { opacity:1; }
.campaign-copy.is-entering>* { animation:copy-in .5s var(--ease) both; }
.campaign-stage.is-entering .scene:not([hidden]) { animation:scene-in .6s var(--ease) both; }
@keyframes copy-in { from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)} }
@keyframes scene-in { from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)} }
.brands { display:flex; align-items:center; height:102px; border-bottom:1px solid #ddd; }
.brands>p { width:180px; flex:none; margin:0; color:#777; font-size:9px; font-weight:600; letter-spacing:.14em; line-height:1.7; }
.brands-window { min-width:0; overflow:hidden; mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); }
.brands-track { display:flex; width:max-content; animation:brand-flow 130s linear infinite; }
.brands-track a { display:grid; place-items:center; width:195px; height:55px; }
.brands-track img { width:120px; height:30px; object-fit:contain; }
.brands-track .focus img { filter:brightness(0); }
.brands:hover .brands-track,.brands:focus-within .brands-track { animation-play-state:paused; }
@keyframes brand-flow { to{transform:translateX(-50%)} }
.delivery { display:flex; align-items:center; gap:12px; padding:20px 0; font-size:11px; color:#666; }
.delivery strong { font-weight:600; color:#111; }
.delivery>svg { width:24px!important; }
.delivery>a { display:flex; align-items:center; gap:17px; margin-left:auto; font-size:10px; }
.delivery>a svg { width:15px!important; }
.section,.packs { padding:76px 0 82px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:36px; }
.section-heading .eyebrow { margin:0 0 22px; }
.concept-page main h2 { font-family:var(--sans); font-size:clamp(38px,4.1vw,60px); font-weight:600; line-height:1.04; letter-spacing:-.06em; margin:0; }
.text-link { display:inline-flex; align-items:center; gap:35px; padding-bottom:9px; border-bottom:1px solid #aaa; font-size:11px; font-weight:600; }
.text-link svg { width:17px!important; }
.offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.concept-page .offer-grid .product-card { content-visibility:visible; }
.offer-grid .product-media { display:block; aspect-ratio:1.05; background:#f4f4f2; }
.offer-grid .product-media img { position:absolute; inset:0; height:100%; width:100%; object-fit:contain; padding:25px; }
.offer-grid .product-meta { padding-top:17px; }
.offer-grid .product-meta>small { font-size:9px; letter-spacing:.11em; color:#777; font-weight:600; }
.offer-grid .product-meta h3 { margin:7px 0 15px; font-size:clamp(20px,1.9vw,28px); line-height:1.15; font-weight:600; letter-spacing:-.045em; }
.product-label { background:#fff; font-size:9px; padding:8px 10px; }
.offer-grid .product-media-arrow { background:#fff; width:40px; height:40px; bottom:14px; right:14px; }
.product-media-arrow svg { width:18px!important; }
.preview-product-price { display:flex; align-items:center; justify-content:space-between; }
.preview-product-price strong { font-size:23px; font-weight:600; letter-spacing:-.04em; }
.preview-product-price>span { color:#888; font-size:9px; letter-spacing:.1em; }
.detail-link { display:inline-flex; gap:17px; align-items:center; margin-top:21px; padding-bottom:5px; border-bottom:1px solid #111; font-size:11px; font-weight:600; }
.detail-link svg { width:14px!important; }
.packs { border-top:1px solid #ddd; }
.packs-intro { margin:0; max-width:340px; font-size:13px; line-height:1.7; color:#777; }
.pack-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.pack-card { min-width:0; align-self:start; padding:0; border:0; background:transparent; text-align:left; color:#111; -webkit-appearance:none; appearance:none; }
.pack-visual { position:relative; aspect-ratio:1.4; background:#f4f4f2; overflow:hidden; border:1px solid #e5e5e5; }
.pack-number { position:absolute; z-index:2; top:18px; left:18px; background:#fff; padding:8px 10px; font-size:8px; font-weight:700; letter-spacing:.1em; }
.pack-visual img { position:absolute; object-fit:contain; mix-blend-mode:multiply; transition:transform .65s var(--ease); }
.pack-card:hover img { transform:scale(1.025); }
.pack-hood { left:7%; top:13%; width:39%; height:39%; }
.focus-noir-pack .pack-hood {left:5%;top:20%;width:43%;height:25%;object-fit:cover}
.pack-offer-price {display:block;margin-top:15px;font-size:29px;font-weight:600;letter-spacing:-.04em}
.pack-offer-price small {margin-left:8px;font-size:11px;font-weight:400;letter-spacing:0;color:#666}
.pack-component {display:flex;align-items:center;justify-content:space-between;gap:16px}
.pack-component strong {display:block;font-weight:600}
.pack-component small {display:block;margin-top:6px;font-size:11px;color:#777}
.pack-component-action {display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px}
.pack-component-action svg {width:14px;height:14px}
.pack-component:hover .pack-component-action {text-decoration:underline;text-underline-offset:4px}
.quote-note.pack-total strong {font-size:32px;letter-spacing:-.04em}
#pack-dialog {max-height:calc(100svh - 32px);overflow-y:auto;overscroll-behavior:contain}
.concept-page #pack-product-dialog {width:min(1140px,calc(100vw - 40px));height:min(880px,calc(100svh - 40px));max-height:none;padding:0;overflow:hidden}
.pack-product-header {height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #ddd;background:#fff}
.pack-product-back {display:inline-flex;align-items:center;gap:12px;min-height:44px;border:0;padding:0 10px;background:transparent;color:#111;font:inherit;font-size:13px;transition:background .2s ease}
.pack-product-back:hover {background:#f4f4f2}
.pack-product-back svg {width:20px;height:20px}
.pack-product-header>span {font-size:10px;letter-spacing:.12em;color:#777}
#pack-product-dialog iframe {display:block;width:100%;height:calc(100% - 58px);border:0;opacity:0;transition:opacity .2s ease}
#pack-product-dialog.is-ready iframe {opacity:1}
.pack-product-loading {position:absolute;top:50%;left:0;right:0;text-align:center;pointer-events:none}
#pack-product-dialog.is-ready .pack-product-loading {display:none}
@media(max-width:600px){.concept-page #pack-product-dialog {width:100%;height:100svh;max-width:100%;margin:0}.pack-product-header{padding:0 12px}.pack-product-header>span{font-size:8px}}
.pack-hob { left:1%; bottom:5%; width:51%; height:41%; }
.pack-oven { right:4%; width:47%; height:71%; bottom:12%; }
.pack-fridge { right:13%; bottom:9%; height:79%; width:36%; }
.pack-washer { left:-1%; bottom:10%; height:55%; width:auto; max-width:none; mix-blend-mode:normal!important; }
.pack-text { display:flex; align-items:center; justify-content:space-between; padding-top:20px; gap:15px; }
.pack-text h3 { margin:0 0 9px; font-size:27px; font-weight:600; letter-spacing:-.05em; }
.pack-text p { margin:0; color:#777; font-size:11px; line-height:1.6; }
.round-arrow { display:grid; place-items:center; width:40px; height:40px; flex:none; border:1px solid #ddd; border-radius:50%; transition:background .25s,color .25s; }
.round-arrow svg { width:17px!important; }
.pack-card:hover .round-arrow { background:#111; border-color:#111; color:#fff; }
.pack-link { display:inline-block; margin-top:20px; padding-bottom:6px; border-bottom:1px solid #111; font-size:11px; font-weight:600; }
.categories { display:grid; grid-template-columns:1fr 1.5fr; column-gap:90px; border-top:1px solid #ddd; }
.categories>.eyebrow { grid-column:1; margin-top:0; }
.categories>h2 { grid-column:1; }
.category-links { grid-column:2; grid-row:1/3; display:grid; grid-template-columns:1fr 1fr; gap:0 35px; }
.category-links a { display:flex; align-items:center; justify-content:space-between; min-height:67px; border-bottom:1px solid #ddd; font-size:15px; font-weight:600; transition:padding .25s; }
.category-links a:hover { padding-left:6px; }
.category-links svg { width:17px!important; }
.service { padding:65px 52px; margin-bottom:75px; background:#171717; color:#fff; }
.service>.eyebrow { margin:0 0 23px; color:#aaa; }
.concept-page .service h2 { font-size:clamp(40px,5.5vw,76px); }
.service-points { display:flex; gap:35px; margin:36px 0; color:#ccc; font-size:11px; }
.service-points p { margin:0; }
.service-points span { color:#777; margin-right:12px; font-size:9px; }
.service .text-link { border-color:#777; }
.concept-page .site-footer .brand-mark { transform:none; }
.concept-page dialog { color:#111; border:0; background:#fff; border-radius:0; width:min(530px,calc(100vw - 32px)); padding:43px; box-shadow:0 25px 80px #0003; }
.concept-page dialog::backdrop { background:#0005; backdrop-filter:blur(7px); }
.dialog-close,.search-close { position:absolute; right:15px; top:15px; background:transparent; border:0; padding:5px; }
.concept-page dialog h2 { font-size:36px; line-height:1.1; font-weight:600; font-family:var(--sans); letter-spacing:-.05em; margin:22px 0; }
.concept-page dialog p { color:#666; font-size:13px; line-height:1.65; }
.concept-page dialog ul { list-style:none; padding:0; margin:24px 0; }
.concept-page dialog li { padding:13px 0; border-bottom:1px solid #ddd; font-size:13px; }
.quote-note { background:#f4f4f2; padding:17px; margin:24px 0; }
.quote-note strong { font-size:13px; }
.quote-note p { margin:8px 0 0; font-size:11px!important; }
.prototype-detail { display:block; font-size:10px; color:#888; margin-top:20px; }
.concept-page .preview-search { width:min(850px,calc(100vw - 32px)); }
.preview-search label { display:block; font-size:11px; color:#777; margin-bottom:17px; }
.preview-search-field { display:flex; align-items:center; gap:15px; border-bottom:1px solid #111; padding-bottom:12px; }
.preview-search-field input { min-width:0; flex:1; font-size:18px; border:0; outline:0; }
.preview-search-field button { display:flex; align-items:center; gap:15px; padding:10px 15px; border:0; background:#111; color:#fff; font-size:11px; }
.search-suggestions { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }
@media(max-width:1100px){.quick-nav{gap:16px}.quick-nav>span,.quick-all{display:none}.campaign-copy{padding:30px}.campaign #campaign-title{font-size:49px}.campaign-grid{height:540px}.campaign-tabs{gap:24px}.campaign-tabs button{font-size:12px}.categories{column-gap:40px}}
@media(max-width:850px){.campaign-grid{grid-template-columns:46% 54%;min-height:510px}.campaign-copy{padding:25px 0 25px 25px}.campaign #campaign-title{font-size:43px}.campaign-label{font-size:8px}.campaign-brand{margin-top:23px}.price-block>strong{font-size:36px}#campaign-description{font-size:12px}.campaign .button{gap:15px;padding-inline:13px;font-size:10px}.machine.rear{height:43%}.machine.front{height:54%}.scene-caption{font-size:8px}.section,.packs{padding:58px 0}.pack-text h3{font-size:22px}.service{padding:45px 30px}.service-points{gap:15px}.service-points p{max-width:180px}.brands>p{width:140px;font-size:8px}}
@media(max-width:600px){
 .concept-page .homepage-content{width:calc(100% - 36px)}.preview-note{padding:6px 18px;font-size:8px}.preview-note>span:last-child{display:none}.concept-page .site-header{height:67px}.concept-page .site-header .header-inner{width:calc(100% - 36px)}.concept-page .mobile-menu:not([hidden]){top:67px}
 .quick-nav{padding:18px 0;width:calc(100% + 18px)}.quick-nav>div{padding-right:18px}.quick-nav>div a{padding:11px 15px;font-size:10px}
 .campaign-grid{display:flex;flex-direction:column;height:auto;min-height:0}.campaign-copy{position:relative;padding:25px 23px 12px;display:block}.campaign-label{font-size:8px;letter-spacing:.13em;gap:8px}.line{width:16px}.campaign-brand{position:absolute;top:22px;right:20px;width:77px;height:22px;margin:0}.campaign #campaign-title{font-size:clamp(38px,10.2vw,48px);line-height:1.02;letter-spacing:-.065em;margin:31px 0 14px}#campaign-description{font-size:11px;max-width:275px;margin-bottom:20px}.price-block>span{font-size:10px}.price-block>strong{font-size:35px;margin:5px 0 16px}.price-block small{font-size:17px}.campaign .button{font-size:11px;min-height:45px;padding-inline:16px;gap:22px}.price-note{font-size:8px;line-height:1.5;margin-top:10px}
 .campaign-stage{height:260px;flex:none}.machine.rear{height:59%;bottom:24%}.machine.front{height:75%;bottom:13%;left:32%}.machine.left{left:0}.machine.right{right:0}.scene-caption{bottom:14px;font-size:7px;letter-spacing:.15em}.scene-index{display:none}.scene-tv>img{padding:0 12px}.scene-kitchen>img{width:70%;height:90%;left:15%;top:0}
 .campaign-bottom{min-height:62px}.edition{display:none}.campaign-tabs{gap:18px;min-width:0}.campaign-tabs button{display:block;padding:13px 0;font-size:10px;line-height:1.5;white-space:nowrap}.campaign-tabs button>span{display:none}.campaign-tabs button svg{display:none}
 .brands{height:85px}.brands>p{width:95px;font-size:7px;letter-spacing:.12em}.brands-track a{width:145px}.brands-track img{width:100px;height:27px}.delivery{padding:19px 0;font-size:10px;gap:10px}.delivery>a{display:none}.delivery>svg{width:22px!important}
 .section,.packs{padding:48px 0}.section-heading{display:block;margin-bottom:25px}.section-heading .eyebrow{font-size:8px;margin-bottom:17px}.concept-page main h2{font-size:37px;line-height:1.06}.section-heading .text-link{margin-top:24px;font-size:10px;gap:22px}
 .offer-grid{grid-template-columns:1fr;gap:34px}.offer-grid .product-media{aspect-ratio:1.05}.offer-grid .product-media img{padding:22px}.offer-grid .product-meta h3{font-size:24px;margin-bottom:14px}.offer-grid .product-meta>small{font-size:8px}.preview-product-price strong{font-size:24px}.detail-link{margin-top:16px}.product-label{font-size:8px;padding:7px 9px}
 .packs-intro{font-size:12px;margin-top:20px}.pack-grid{grid-template-columns:1fr;gap:35px}.pack-visual{aspect-ratio:1.22}.pack-text h3{font-size:24px}.pack-text p{font-size:10px}.pack-number{top:14px;left:14px;font-size:7px;padding:7px}.pack-link{margin-top:15px;font-size:10px}
 .categories{display:block}.categories>.eyebrow{font-size:8px;margin-bottom:15px}.category-links{margin-top:24px;gap:0 24px}.category-links a{font-size:12px;min-height:61px}.category-links svg{width:16px!important}
 .service{padding:36px 23px;margin-bottom:45px}.service>.eyebrow{font-size:7px;line-height:1.7;letter-spacing:.11em}.concept-page .service h2{font-size:39px}.service-points{display:block;margin:25px 0}.service-points p{max-width:none;padding:13px 0;border-bottom:1px solid #444;font-size:10px}.service .text-link{font-size:10px;gap:12px}
 .concept-page dialog{padding:40px 23px 26px}.concept-page dialog h2{font-size:30px}.preview-search-field{gap:10px;flex-wrap:wrap}.preview-search-field input{font-size:15px;width:calc(100% - 40px)}.preview-search-field button{margin-left:auto}.preview-search .search-suggestions a{font-size:10px;padding:10px 12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.concept-page *, .concept-page *:before,.concept-page *:after{animation:none!important;transition:none!important}.brands-window{overflow-x:auto}}
.concept-page .arrow-icon{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.brands-track{animation-play-state:paused}.brands.is-visible .brands-track{animation-play-state:running}.brands:hover .brands-track,.brands:focus-within .brands-track{animation-play-state:paused}
.offer-grid .product-card:nth-child(2) .product-media img{width:125%;max-width:none;height:125%;inset:-12.5%;padding:25px}
.offer-grid .product-card:nth-child(3) .product-media img{padding:45px}

/* Restore the original full-width welcome above the commercial collection. */
.concept-page .site-header{margin-bottom:-84px;background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.concept-page .site-header.is-scrolled, .concept-page.menu-open .site-header{background:rgba(12,12,12,.98);border-color:rgba(255,255,255,.13)}
.concept-page .hero .eyebrow{color:rgba(255,255,255,.84)}
.concept-page .hero h1{font-family:var(--sans);font-weight:600}
.concept-page .hero-copy{padding-bottom:45px}
.concept-page .hero-price-note{scroll-margin-top:100px}
#collections{scroll-margin-top:100px}
@media(max-width:600px){
 .concept-page .site-header{margin-bottom:-67px}
 .concept-page .hero{height:auto;min-height:calc(100svh - 23px)}
 .concept-page .hero-layout{min-height:calc(100svh - 23px);align-items:flex-end}
 .concept-page .hero-copy{padding-top:130px;padding-bottom:75px}
 .concept-page .hero h1{font-size:clamp(46px,12vw,67px)}
 .concept-page .hero .hero-scroll{bottom:24px}
 .concept-page .hero .hero-price-note{margin-top:25px}
 .concept-page .hero .hero-actions{gap:20px}
}

.pack-enquiry{display:flex;align-items:center;gap:15px;margin-top:22px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.search-empty{font-size:13px;color:#666}.concept-page .assistant-launcher svg,.concept-page .assistant-form svg{fill:none;stroke:currentColor;stroke-width:1.6}.concept-page:has(dialog[open]){overflow:hidden}.concept-page .hero{scroll-margin-top:0}.concept-page .site-header.is-scrolled{height:84px}.concept-page .hero-copy{animation:none}.concept-page .hero::after{display:none}@media(max-width:600px){.concept-page .site-header.is-scrolled{height:67px}.concept-page .hero,.concept-page .hero-layout{min-height:100svh}}

@media(max-width:600px){.concept-page .preview-search h2{font-size:26px;line-height:1.15}}
.home-search-products{margin-top:22px}.home-search-count{margin:0 0 10px!important;font-size:12px!important}.home-search-match{display:block;padding:14px 0;border-top:1px solid #e4e4e4;transition:background .2s ease,padding .2s ease}.home-search-match strong{display:block;font-size:14px;font-weight:600}.home-search-match span{display:block;margin-top:5px;color:#666;font-size:12px}.home-search-match:hover,.home-search-match:focus-visible{background:#f4f4f2;padding-inline:10px}.concept-page .preview-search{max-height:calc(100svh - 40px);overflow-y:auto;overscroll-behavior:contain}
@media(prefers-reduced-motion:reduce){.home-search-match{transition:none}}
/* Approved kitchen pack presentation and product photo cards. */
#pack-dialog.has-product-photos { width: min(940px,calc(100vw - 40px)); max-width: 940px; padding: 44px; }
.has-product-photos #pack-items { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding: 0; margin: 30px 0; list-style: none; }
.has-product-photos #pack-items li { padding: 0; border: 0; min-width: 0; }
.has-product-photos .pack-component { display: flex; flex-direction: column; align-items: stretch; gap: 0; color: #111; text-decoration: none; height: 100%; }
.pack-component-photo { display: grid; place-items: center; aspect-ratio: 1.15; background: #f4f4f2; overflow: hidden; }
.pack-component-photo img { width: 88%; height: 88%; object-fit: contain; mix-blend-mode: multiply; transition: transform 450ms cubic-bezier(.2,.65,.3,1); }
.has-product-photos .pack-component-copy { padding-top: 17px; }
.has-product-photos .pack-component strong { font-size: 13px; line-height: 1.5; }
.has-product-photos .pack-component small { font-size: 10px; line-height: 1.6; margin-top: 6px; }
.has-product-photos .pack-component-action { border-top: 1px solid #deded9; margin-top: 18px; padding: 12px 0; justify-content: space-between; font-size: 11px; }
.has-product-photos .pack-component-action svg { width: 19px; height: 19px; transition: transform 300ms ease; }
.has-product-photos .pack-total { margin-top: 8px; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 .has-product-photos .pack-component:hover img { transform: scale(1.035); }
 .has-product-photos .pack-component:hover .pack-component-action svg { transform: translate(2px,-2px); }
}
@media (max-width:600px) {
 #pack-dialog.has-product-photos { width: calc(100vw - 24px); padding: 44px 22px 24px; }
 .has-product-photos #pack-items { grid-template-columns: 1fr; gap: 16px; margin: 26px 0; }
 .has-product-photos .pack-component { display: grid; grid-template-columns: 100px minmax(0,1fr); grid-template-rows: auto auto; column-gap: 16px; padding-bottom: 16px; border-bottom: 1px solid #deded9; }
 .pack-component-photo { grid-row: 1 / 3; aspect-ratio: 1; align-self: center; }
 .has-product-photos .pack-component-copy { padding-top: 2px; align-self: end; }
 .has-product-photos .pack-component-action { border: 0; padding: 9px 0 0; margin-top: 0; min-height: 32px; }
 .has-product-photos .pack-component strong { font-size: 12px; }
}
@media (prefers-reduced-motion:reduce) {
 .pack-component-photo img, .has-product-photos .pack-component-action svg { transition: none; }
}
#packs { scroll-margin-top: 110px; }
#focus-pack { scroll-margin-top: 95px; }
#packs .pack-grid { grid-template-columns: 1fr; gap: 48px; }
#packs .kitchen-feature { display: grid; grid-template-columns: 1.5fr 1fr; background: #f5f4f0; width: 100%; }
.kitchen-scene { position: relative; overflow: hidden; align-self: stretch; }
.kitchen-pack-badge { position: absolute; z-index: 1; top: 22px; left: 22px; display: flex; flex-direction: column; gap: 6px; padding: 16px 20px; color: #fff; background: #111; text-align: left; pointer-events: none; }
.kitchen-pack-badge strong { font-size: 17px; font-weight: 650; line-height: 1.2; letter-spacing: .055em; }
.kitchen-pack-badge>span { font-size: 11px; font-weight: 400; letter-spacing: .025em; color: #e0e0dc; }
.kitchen-scene img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 800ms cubic-bezier(.2,.65,.3,1); }
.kitchen-copy { padding: clamp(26px,3.4vw,64px); display: flex; align-items: flex-start; flex-direction: column; justify-content: center; }
.kitchen-eyebrow { font-size: 9px; font-weight: 650; letter-spacing: .16em; margin-bottom: 28px; }
.kitchen-copy h3 { font-size: clamp(28px,3vw,50px); font-weight: 500; letter-spacing: -.055em; line-height: 1.05; margin: 0 0 22px; }
.kitchen-description { color: #686760; font-size: 13px; line-height: 1.65; margin: 0 0 26px; }
.kitchen-models { width: 100%; border-top: 1px solid #d9d8d2; padding-top: 23px; font-size: 10px; letter-spacing: .13em; font-weight: 600; }
.kitchen-models span { display: block; margin: 8px 0 21px; color: #6f6e68; font-size: 12px; font-weight: 400; letter-spacing: 0; }
.kitchen-price { font-size: clamp(30px,2.8vw,46px); letter-spacing: -.055em; font-weight: 550; line-height: 1; }
.kitchen-price small { font-size: 16px; font-weight: 400; letter-spacing: 0; }
.kitchen-price-note { font-size: 10px; color: #6f6e68; margin-top: 10px; line-height: 1.5; }
.kitchen-discover { display: flex; align-items: center; justify-content: space-between; gap: 25px; width: 100%; border-top: 1px solid #d9d8d2; padding-top: 20px; margin-top: 28px; font-size: 12px; font-weight: 600; }
.kitchen-discover svg { width: 22px; height: 22px; transition: transform 300ms ease; }
#packs .pack-card[data-pack="maison"] { width: min(560px,100%); }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
 #packs .kitchen-feature:hover .kitchen-scene img { transform: scale(1.015); }
 #packs .kitchen-feature:hover .kitchen-discover svg { transform: translate(3px,-3px); }
}
@media (max-width: 850px) {
 #packs .kitchen-feature { grid-template-columns: 1fr; }
 .kitchen-scene { aspect-ratio: 3/2; }
 .kitchen-copy { padding: 28px; }
 .kitchen-copy h3 { font-size: 37px; }
 .kitchen-eyebrow { margin-bottom: 22px; }
 .kitchen-description { margin-bottom: 22px; }
 .kitchen-discover { min-height: 44px; }
}
@media (max-width: 600px) {
 .kitchen-pack-badge { top: 12px; left: 12px; padding: 11px 13px; gap: 4px; }
 .kitchen-pack-badge strong { font-size: 13px; }
 .kitchen-pack-badge>span { font-size: 10px; }
}
@media (prefers-reduced-motion:reduce) {
 .kitchen-scene img, .kitchen-discover svg { transition: none; }
}

/* A softer, quieter invitation to visit or ask for advice. */
.concept-page .service{border-radius:28px;padding:clamp(32px,5vw,76px);background:linear-gradient(120deg,#252525,#181818);box-shadow:0 18px 45px #1111110c;overflow:hidden}
.service-top{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.service-top .eyebrow{font-size:9px;letter-spacing:.16em;color:#b2b2b2;margin-bottom:27px;line-height:1.6}
.concept-page .service h2{font-size:clamp(40px,4.9vw,70px);font-weight:500;line-height:1.08;letter-spacing:-.055em;margin:0}.concept-page .service h2 em{font-style:normal;color:#c2c2c2}
.service-contact{max-width:360px;justify-self:end}.service-contact>p{font-size:14px;line-height:1.8;color:#c2c2c2;margin:0 0 27px}
.service-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#f4f4f2;color:#222222!important;border-radius:100px;padding:17px 22px;min-height:54px;font-size:12px;font-weight:600;text-decoration:none;transition:background .25s,transform .25s}
.service-cta svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .25s}.service-catalogue{display:block;text-align:center;margin-top:17px;color:#bbbbbb!important;font-size:11px;text-underline-offset:4px}
.concept-page .service .service-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:55px 0 0;padding-top:32px;border-top:1px solid #ffffff1f}
.concept-page .service-points p{display:grid;grid-template-columns:24px 1fr;column-gap:10px;row-gap:8px;max-width:none;margin:0;padding:0;border:0}.service-points p>span{grid-row:1/3;color:#888888;font-size:10px;margin:3px 0 0}.service-points strong{font-size:13px;font-weight:500;color:#eaeaea}.service-points small{font-size:11px;line-height:1.6;color:#a5a5a5}
.service-cta:focus-visible,.service-catalogue:focus-visible{outline:2px solid #dddddd;outline-offset:5px}
@media(hover:hover){.service-cta:hover{background:#e7e7e4;transform:translateY(-2px)}.service-cta:hover svg{transform:translateX(3px)}}
@media(max-width:850px){.service-top{gap:30px;grid-template-columns:1.2fr 1fr}.service-contact>p{font-size:12px}.concept-page .service .service-points{gap:20px}.service-points strong{font-size:12px}.service-points small{font-size:10px}}
@media(max-width:600px){.concept-page .service{border-radius:22px;padding:32px 25px}.service-top{grid-template-columns:1fr;gap:25px}.service-top .eyebrow{font-size:8px;margin-bottom:22px}.concept-page .service h2{font-size:40px}.service-contact{max-width:none;justify-self:stretch}.service-contact>p{font-size:13px;margin-bottom:22px}.concept-page .service .service-points{grid-template-columns:1fr;gap:25px;margin-top:32px;padding-top:28px}.service-points strong{font-size:13px}.service-points small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.service-cta,.service-cta svg{transition:none}.service-cta:hover{transform:none}}
@media(max-width:600px){.concept-page .service h2{font-size:clamp(28px,8.3vw,38px)}}
/* Whirlpool offers: original monochrome palette, generous product photography. */
.whirlpool-promotion{padding:64px 0 24px;scroll-margin-top:100px}.whirlpool-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:34px}.whirlpool-heading .eyebrow{font-size:10px;letter-spacing:.15em;margin:0 0 20px;color:#666}.concept-page .whirlpool-heading h2{font-size:clamp(34px,3.7vw,54px);font-weight:500;line-height:1.08;letter-spacing:-.05em;margin:0}.whirlpool-heading h2 em{font-style:normal;color:#777}.whirlpool-signature{text-align:right;flex-shrink:0;padding-bottom:4px}.whirlpool-signature img{width:146px;height:58px;object-fit:contain}.whirlpool-signature p{font-size:11px;color:#777;margin:14px 0 0}
.whirlpool-offers{display:grid;grid-template-columns:1fr 1fr;gap:24px}.whirlpool-offer{display:grid;grid-template-columns:52% 48%;background:#f4f4f2;border:1px solid #e9e9e6;border-radius:20px;overflow:hidden;min-width:0}.whirlpool-photo{position:relative;display:flex;align-items:center;justify-content:center;padding:55px 20px 30px;min-height:360px;overflow:hidden;color:#111}.whirlpool-photo img{display:block;width:100%;height:280px;object-fit:contain;mix-blend-mode:multiply;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.whirlpool-promo-badge{position:absolute;left:20px;top:20px;background:#181818;color:#fff;padding:9px 13px;border-radius:5px;font-size:10px;font-weight:600;letter-spacing:.13em;z-index:1}.whirlpool-promo-badge[hidden]{display:none}.whirlpool-offer-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:35px 24px 30px 8px}.whirlpool-model{font-size:9px;letter-spacing:.1em;color:#727272}.concept-page .whirlpool-offer h3{font-size:clamp(22px,2vw,29px);font-weight:500;line-height:1.13;letter-spacing:-.04em;margin:17px 0 12px}.whirlpool-offer-copy>p{font-size:10px;line-height:1.7;color:#737373;margin:0}.whirlpool-price{margin-top:26px}.whirlpool-price>span{display:block;font-size:10px;color:#747474;margin-bottom:4px}.whirlpool-price strong{font-size:clamp(32px,3vw,43px);font-weight:500;letter-spacing:-.05em;white-space:nowrap;line-height:1.2}.whirlpool-price small{font-size:13px;font-weight:400;letter-spacing:0}.whirlpool-stock{font-size:10px;margin:7px 0 24px;color:#666}.whirlpool-stock.is-unavailable{color:#9a342b;font-weight:600}.whirlpool-link{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#111!important;font-size:11px;font-weight:600;text-decoration:none;min-height:44px;border-top:1px solid #d5d5d0;padding-top:9px}.whirlpool-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .25s}.whirlpool-footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#777;margin:20px 0 0}.whirlpool-photo:focus-visible,.whirlpool-link:focus-visible{outline:2px solid #777;outline-offset:-4px}
@media(hover:hover){.whirlpool-photo:hover img{transform:scale(1.035)}.whirlpool-link:hover svg{transform:translateX(4px)}}
@media(max-width:1000px){.whirlpool-offers{gap:16px}.whirlpool-offer{grid-template-columns:1fr}.whirlpool-photo{min-height:295px;padding:40px 24px 10px}.whirlpool-photo img{height:250px}.whirlpool-offer-copy{padding:22px 26px}.concept-page .whirlpool-offer h3{font-size:27px}.whirlpool-price{margin-top:20px}.whirlpool-price strong{font-size:39px}.whirlpool-stock{margin-bottom:12px}.whirlpool-signature p{max-width:180px;line-height:1.6}}
@media(max-width:600px){.whirlpool-promotion{padding:44px 0 12px}.whirlpool-heading{display:block;margin-bottom:24px}.concept-page .whirlpool-heading h2{font-size:34px}.whirlpool-heading .eyebrow{font-size:8px;margin-bottom:16px}.whirlpool-signature{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;text-align:right}.whirlpool-signature img{width:112px;height:42px}.whirlpool-signature p{margin:0;font-size:9px;max-width:145px}.whirlpool-offers{grid-template-columns:1fr;gap:16px}.whirlpool-offer{grid-template-columns:47% 53%;border-radius:16px}.whirlpool-photo{min-height:285px;padding:46px 10px 20px}.whirlpool-photo img{height:205px}.whirlpool-promo-badge{top:15px;left:15px;font-size:9px;padding:8px 10px}.whirlpool-offer-copy{padding:25px 16px 20px 7px}.whirlpool-model{font-size:8px;letter-spacing:.04em}.concept-page .whirlpool-offer h3{font-size:22px;margin:14px 0 10px}.whirlpool-offer-copy>p{font-size:9px}.whirlpool-price{margin-top:19px}.whirlpool-price strong{font-size:32px}.whirlpool-stock{font-size:9px}.whirlpool-link{font-size:10px}.whirlpool-footer{font-size:9px;line-height:1.6;gap:12px}.whirlpool-footer span{text-align:right;max-width:170px}}
@media(prefers-reduced-motion:reduce){.whirlpool-photo img,.whirlpool-link svg{transition:none}}

.whirlpool-previous{font-size:12px;color:#777;margin-bottom:9px;line-height:1.5}.whirlpool-previous[hidden]{display:none}.whirlpool-previous del{text-decoration-thickness:1px;white-space:nowrap}

/* Keep the scroll cue in flow so it never crosses the featured offer. */
.concept-page .hero{height:auto;min-height:100svh}
.concept-page .hero-layout{min-height:100svh;padding-top:125px;padding-bottom:35px}
.concept-page .hero-copy{padding-bottom:0}
.concept-page .hero .hero-price-note{margin-top:28px;padding:16px 20px;border-color:rgba(255,255,255,.25);border-radius:12px;background:rgba(20,20,20,.38)}
.concept-page .hero .hero-scroll{position:static;display:flex;width:fit-content;gap:12px;margin-top:24px;font-size:9px;letter-spacing:.12em;text-decoration:none;color:rgba(255,255,255,.62)}
.concept-page .hero-scroll span:last-child{font-size:16px;line-height:1;transition:transform .25s ease}
.concept-page .hero-scroll:hover span:last-child{transform:translateY(3px)}
@media(max-width:600px){.concept-page .hero-layout{padding-top:115px;padding-bottom:32px}.concept-page .hero-copy{padding-top:0;padding-bottom:0}.concept-page .hero .hero-price-note{min-width:0;width:min(100%,345px);margin-top:25px}.concept-page .hero .hero-scroll{margin-top:22px}}

