/* Millerighe veneer only: an editorial spread on the existing paper grid. */
.editorial-product .site-header{background:var(--paper);color:var(--brown)}
.editorial-product .product-content{animation:none;padding-top:calc(66px + var(--pad)*1.5)}
.editorial-spread{--editorial-space:var(--space-group);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--product-gap);row-gap:var(--editorial-space);align-items:start;margin:0 var(--pad);padding-bottom:var(--space-section-end);scroll-margin-top:90px}
.editorial-spread>*{min-width:0}
.editorial-product-title{grid-column:1/5;grid-row:1;margin:0;font-size:clamp(36px,3.4vw,64px);line-height:1.05;font-weight:500;letter-spacing:var(--tracking);overflow-wrap:break-word}
.editorial-spread>.product-introduction{grid-column:5/-1;grid-row:3}
.editorial-product-identity{grid-column:1/4;grid-row:1/5;position:sticky;top:90px;display:flex;flex-direction:column;gap:var(--editorial-space)}
@media(min-width:768px){.editorial-spread{grid-template-rows:calc(var(--type-size-title) * var(--type-leading-display)) auto auto auto}}
.editorial-spread>.editorial-story{grid-column:5/-1;grid-row:3;padding:0}
.editorial-photographs{grid-column:5/-1;grid-row:2;min-width:0;container-type:inline-size;position:relative}
.editorial-gallery-controls{display:none;justify-content:flex-end;gap:var(--space-label);margin-top:var(--space-media)}
.editorial-photographs.is-scrollable .editorial-gallery-controls{display:flex}
.editorial-image-track{--rail-height:calc(100cqw * 2 / 3);display:flex;gap:var(--product-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none}
.editorial-image-track::-webkit-scrollbar{display:none}
.editorial-image-track:focus-visible{outline:2px solid var(--brown);outline-offset:4px}
.editorial-image-track>.product-photo{flex:none;height:var(--rail-height);scroll-snap-align:start}
.editorial-image-track>.photo-portrait{width:calc(var(--rail-height)*.75);aspect-ratio:3/4}
.editorial-image-track>.photo-landscape{width:calc(var(--rail-height)*1.5);aspect-ratio:3/2}
@media(min-width:768px) and (max-width:1151px){
 .editorial-spread{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px}
 .editorial-product-title{grid-column:1}
 .editorial-product-identity{grid-column:1}
 .editorial-spread>.product-introduction,.editorial-spread>.editorial-story,.editorial-photographs{grid-column:2/-1}
 .editorial-spread .product-story-inner{columns:1}
 .editorial-spread .product-specs>div{grid-template-columns:1fr;gap:3px}
}
@media(max-width:767px){
 .editorial-product .product-content{padding-top:calc(66px + var(--pad))}
 .editorial-spread{display:flex;flex-direction:column;gap:var(--editorial-space)}
 .editorial-spread>*{width:100%}
 .editorial-product-title{font-size:40px}
 .editorial-product-identity{display:contents}
 .editorial-product-identity>*{width:100%}
}

/* Phone gallery: one portrait frame per swipe; desktop keeps mixed widths. */
.editorial-gallery-dots{display:none}
@media(max-width:767px){
 .editorial-product-identity>.editorial-product-title{order:-3}
 .editorial-spread>.editorial-photographs{order:-2;width:calc(100% + 2 * var(--pad));margin-inline:calc(-1 * var(--pad))}
 .editorial-product-identity>.product-summary{order:-1}
 .editorial-image-track{--rail-height:calc((100cqw - 2 * var(--pad)) * 8 / 5);gap:0;scroll-snap-type:x mandatory}
 .editorial-image-track>.product-photo{width:100%;aspect-ratio:auto;scroll-snap-stop:always}
 .editorial-image-track .product-photo img{transform:none!important;will-change:auto}
 .editorial-image-track>.product-photo:nth-child(1){--photo-position:96% 50%}
 .editorial-image-track>.product-photo:nth-child(2){--photo-position:100% 50%}
 .editorial-photographs.is-scrollable .editorial-gallery-controls{display:none}
 .editorial-gallery-dots{display:flex;max-width:calc(100% - 16px);overflow-x:auto;scrollbar-width:none}
 .editorial-gallery-dots::-webkit-scrollbar{display:none}
 .editorial-gallery-dots .swiper-pagination-bullet{flex:0 0 24px}
}

/* The complete introduction stays visible; the small body uses the recorded reveal. */
.editorial-story>.product-story{padding-top:0}
.editorial-story.is-enhanced{--intro-collapsed:auto;--intro-expanded:auto}

/* Finish samples continue the reading column beneath the body disclosure. */
.editorial-spread>.product-finishes{grid-column:5/-1;grid-row:4;margin:0}
@media(min-width:768px) and (max-width:1151px){.editorial-spread>.product-finishes{grid-column:2/-1}}

/* Optical gap measured from the supplied reference/local screenshots.
   NHG's descenders leave less visible air than the reference's typeface. */
.editorial-story.is-enhanced{grid-template-rows:auto auto 34px;transition:none}
.editorial-story.is-enhanced .product-readmore{margin-top:7px}
.editorial-story.is-expanded{grid-template-rows:auto auto 0px}
.editorial-story.is-expanded .product-readmore{margin-top:0}

/* A measured height opens first; unclipped text fades in after 200ms.
   Explicit heights avoid the nonlinear intrinsic sizing of a 0fr/1fr reveal. */
.editorial-story.is-enhanced>.product-story{height:0;min-height:0;padding-top:0;opacity:1;overflow:hidden;transition:none}
.editorial-story.is-expanded>.product-story{height:auto;padding-top:34px}

/* Manufacturer portrait film leads; the title and two columns share the reading grid. */
.editorial-product .product-manufacturer{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--product-gap);align-items:start;margin:0 var(--pad);padding-bottom:var(--space-section-end);border-top:1px solid rgb(89 64 55 / 55%);padding-top:var(--space-group);scroll-margin-top:90px}
.manufacturer-film{grid-column:1/4;aspect-ratio:9/16;margin:0;background:var(--brown);overflow:hidden}
.manufacturer-film-link{display:block;width:100%;height:100%}
.manufacturer-film-link:focus-visible{outline:2px solid var(--paper);outline-offset:-6px}
.manufacturer-film video{display:block;width:100%;height:100%;object-fit:cover}
.manufacturer-story{grid-column:5/-1;min-width:0}
.product-manufacturer h2{margin:0 0 var(--space-group);max-width:22ch;font-size:clamp(32px,3.3vw,56px);line-height:1.05;font-weight:500;letter-spacing:inherit;text-wrap:balance}
.manufacturer-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--product-gap);font-size:17px;line-height:1.3;font-weight:400}
.manufacturer-body p{margin:0}
.manufacturer-column{display:flex;flex-direction:column;gap:var(--space-prose);min-width:0}
.manufacturer-link{display:inline-flex;align-items:flex-start;min-height:44px;margin-top:var(--space-group);font-size:17px;line-height:1.3;font-weight:400;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.manufacturer-link:hover{text-decoration-thickness:2px}
@media(min-width:768px) and (max-width:1151px){
 .manufacturer-film{grid-column:1/5}
 .manufacturer-story{grid-column:6/-1}
 .manufacturer-body{grid-template-columns:1fr;gap:var(--space-prose)}
}
@media(max-width:767px){
 .editorial-product .product-manufacturer{display:flex;flex-direction:column;gap:var(--space-group);padding-top:var(--space-group)}
 .manufacturer-story{width:100%}
 .manufacturer-film{width:calc(100% + 2 * var(--pad));margin-inline:calc(-1 * var(--pad))}
 .product-manufacturer h2{font-size:32px;margin-bottom:var(--space-group)}
 .manufacturer-body{grid-template-columns:1fr;gap:var(--space-prose)}
}

/* Desktop gallery controls align with the model title above the photograph rail. */
@media(min-width:768px){
 .editorial-gallery-controls{position:absolute;right:0;bottom:calc(100% + var(--space-group));margin:0}
}

/* Compact image index: the selected photograph keeps its original colour. */
.editorial-gallery-stage{position:relative}
.gallery-colour-filter{position:absolute;pointer-events:none}
.editorial-thumbnails{display:flex;gap:var(--space-label);width:max-content;max-width:100%;margin:var(--space-media) auto 0;padding:3px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;box-sizing:border-box}
.editorial-thumbnails::-webkit-scrollbar{display:none}
.editorial-thumbnail{display:block;flex:0 0 54px;width:54px;height:72px;padding:0;border:0;border-radius:0;background:var(--brown);cursor:pointer}
.editorial-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;filter:url(#gallery-accent-monochrome)}
.editorial-thumbnail[aria-current="true"] img{filter:none}
.editorial-thumbnail:focus-visible{outline:2px solid var(--brown);outline-offset:3px}
@media(max-width:767px){
 .editorial-thumbnails{display:none}
}

/* Match the reference's three-line introduction preview and real ellipsis. */
.editorial-story.is-enhanced:not(.is-expanded)>.product-introduction p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* Match the editorial gap to the enquiry text; keep the extra tap area below it. */
.product-summary>.product-specs{position:static;margin:0}
.product-enquiry{display:inline-flex;align-items:flex-start;min-height:44px;margin-top:var(--editorial-space);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.product-enquiry:hover{text-decoration-thickness:2px}

/* Mobile enquiry follows the finish samples; desktop keeps it with the facts. */
.product-enquiry-mobile{display:none}
@media(max-width:767px){
 .product-summary>.product-enquiry{display:none}
 .product-enquiry-mobile{display:inline-flex;margin-top:0}
}
