/* A single image-led product catalog and a separate editorial stories page. */
.gallery-nav-quote{display:inline-flex;align-items:center;gap:12px;color:#fff!important;white-space:nowrap}
.site-nav a[aria-current="page"]{color:var(--red)}
.products-page-hero{background:var(--navy-deep);color:#fff}
.products-page-hero-grid{display:grid;grid-template-columns:1fr auto;align-items:end;gap:50px;padding:70px 0 66px}
.products-page-hero h1{font-size:clamp(3.5rem,5vw,5.4rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 20px}
.products-page-hero h1 em{color:#f04c69}
.products-page-hero p:not(.eyebrow){font-size:16px;line-height:1.7;color:#c5d1da;max-width:580px;margin:0}
.products-page-hero-aside{display:flex;flex-direction:column;align-items:flex-end;gap:11px;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:760;color:#aebfcc;text-align:right}
.products-page-hero-aside span:first-child{color:#fff;font-size:13px}
.products-page-hero-aside a{margin-top:15px;color:#fff;border-bottom:1px solid #aebfcc;padding-bottom:8px}
.products-page .catalogue{padding-top:56px}
.products-page .catalogue-heading{margin-bottom:22px}
.products-page .catalogue-heading h2{font-size:clamp(2rem,2.5vw,2.8rem)}
.featured{background:#f5f5f2;padding:74px 0 77px}
.featured-intro{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:30px}
.featured-intro h2{font-size:clamp(2.5rem,3.3vw,3.7rem);line-height:1.07;margin:0}
.featured-intro h2 em{color:var(--red)}
.featured-intro>p{color:var(--muted);font-size:14px;line-height:1.7;max-width:370px;margin:0 0 5px}
.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.featured-card{display:block;min-width:0;background:#fff;border:1px solid #e2e7e5;color:var(--navy);transition:border-color .2s,transform .2s}
.featured-card:hover{border-color:#bac8cf;transform:translateY(-3px)}
.featured-image{display:block;aspect-ratio:1.34/1;overflow:hidden;background:#fafaf8}
.featured-image img{width:100%;height:100%;object-fit:contain;transform:scale(.92);transition:transform .35s}
.featured-card:hover .featured-image img{transform:scale(.98)}
.featured-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:16px 18px 19px;border-top:1px solid #edf0ee}
.featured-meta small{grid-column:1/-1;color:var(--red);font-size:9px;font-weight:800;letter-spacing:.14em}
.featured-meta strong{grid-column:1;font-size:17px;line-height:1.25}
.featured-meta>span{grid-column:1;color:var(--muted);font-size:12px}
.featured-meta b{grid-column:2;grid-row:2/4;font-size:19px;align-self:center;font-weight:400}
.featured-all{display:inline-flex;align-items:center;gap:28px;margin-top:24px;padding-bottom:8px;border-bottom:1px solid var(--navy);color:var(--navy);font-size:13px;font-weight:750}
.featured-all:hover{color:var(--red);border-color:var(--red)}
.product-card{scroll-margin-top:115px}
.catalogue{padding:76px 0 80px;background:#f5f5f2}
.catalogue-heading h2{font-size:clamp(2.6rem,3.2vw,3.5rem)}
.catalogue-group-number{display:none}
.catalogue-group-heading{grid-template-columns:minmax(0,1fr) auto;gap:0 24px;margin-bottom:24px}
.catalogue-group-heading h3{font-size:clamp(1.55rem,2.1vw,2.1rem)}
.catalogue-group-heading p{grid-column:1;grid-row:2;font-size:13px}
.catalogue-group-count{grid-column:2;grid-row:1}
.catalogue-group{padding:38px 0 45px}
.catalogue-group-items{gap:26px 20px}
@media(min-width:761px){
  .catalogue-group:first-child .catalogue-group-items{grid-template-columns:repeat(6,minmax(0,1fr))}
  .catalogue-group:first-child .product-card{grid-column:span 2}
  .catalogue-group:first-child .product-card:nth-last-child(-n+2){grid-column:span 3}
  .catalogue-group:nth-child(2) .catalogue-group-items{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalogue-group:first-child .product-card:nth-last-child(-n+2) .product-visual,
  .catalogue-group:nth-child(2) .product-visual{aspect-ratio:1.7/1}
}
.product-card{display:flex;flex-direction:column;border:1px solid #e1e5e4;background:#fff;transition:box-shadow .2s,border-color .2s}
.product-card:hover{background:#fff;border-color:#b9c5ca;box-shadow:0 10px 28px rgba(14,39,56,.07)}
.product-visual{width:100%;height:auto;aspect-ratio:1.28/1;border:0;border-bottom:1px solid #eef0ed;background:#fafaf8;padding:0;cursor:zoom-in;overflow:hidden}
.product-visual img{object-fit:contain;transform:scale(.91);transition:transform .35s}
.product-visual:hover img,.product-visual:focus-visible img{transform:scale(.97)}
.product-info{display:flex;flex-direction:column;align-items:stretch;min-height:142px;padding:16px 18px 17px}
.product-family{display:block;margin-bottom:8px;font-size:9px}
.product-info h3{margin:0 0 5px;font-size:17px;line-height:1.28}
.product-info p{margin:0 0 16px;font-size:12px}
.add-button{width:100%;margin:auto 0 0;padding-top:12px;border-top:1px solid #e7e9e8;display:flex;justify-content:space-between;font-size:11px}
.add-button span{width:25px;height:25px}
.catalogue-gallery-link{font-size:12px}
.quote-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}
.quote-item>span{line-height:1.35}
.quantity-label{display:flex!important;align-items:center;gap:6px;margin:0!important;font-size:10px!important;white-space:nowrap}
.quantity-label input{width:58px!important;padding:7px!important;text-align:center;font-size:13px!important}
.quote-item>button{align-self:center}
.product-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(870px,calc(100vw - 30px));height:auto;max-height:92dvh;overflow:auto;border:0;padding:0;margin:0;background:#fff;box-shadow:0 25px 80px rgba(0,0,0,.25)}
.product-dialog::backdrop{background:rgba(5,22,35,.82)}
.product-dialog-head,.product-dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 23px}
.product-dialog-head{border-bottom:1px solid var(--line)}
.product-dialog-head strong{display:block;color:var(--navy);font-size:19px}
.product-dialog-head span,.product-dialog-foot span{display:block;color:var(--muted);font-size:12px;margin-top:3px}
.product-dialog-head button{border:0;background:transparent;color:var(--navy);font-size:31px;line-height:1}
.product-dialog>img{display:block;width:100%;height:min(64dvh,600px);object-fit:contain;background:#fafaf8}
.product-dialog-foot{border-top:1px solid var(--line)}
.product-dialog-foot .button{min-height:42px;padding:10px 17px;font-size:12px;white-space:nowrap}
/* The stories page uses real product compositions, not a second item index. */
.story-hero{background:var(--navy-deep);color:#fff}
.story-hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:7%;align-items:center;padding:68px 0}
.story-hero h1{font-size:clamp(3.8rem,5.4vw,6rem);line-height:1.02;margin:0 0 22px}
.story-hero h1 em{color:#f04c69}
.story-hero p:not(.eyebrow){font-size:16px;line-height:1.7;color:#c3d0d9;max-width:440px;margin-bottom:28px}
.story-hero img{width:100%;height:490px;object-fit:cover}
.story-feature{padding:76px 0;background:#fff}
.story-feature-reverse{background:#f5f5f2}
.story-feature-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:center}
.story-feature-reverse .story-feature-grid{grid-template-columns:.85fr 1.15fr}
.story-feature-reverse img{order:2}
.story-feature img{display:block;width:100%;height:440px;object-fit:cover}
.story-feature h2{font-size:clamp(2.2rem,3.1vw,3.8rem);line-height:1.08;margin:0 0 20px;max-width:550px}
.story-feature p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.7;max-width:460px}
.story-feature .inline-link{color:var(--navy);border-color:var(--navy)}
.story-end{background:var(--navy);color:#fff;padding:60px 0}
.story-end .shell{display:flex;align-items:end;justify-content:space-between;gap:30px}
.story-end h2{font-size:clamp(2.4rem,3.3vw,3.8rem);margin:0 0 10px}
.story-end p:not(.eyebrow){color:#c3d0d9;line-height:1.6;max-width:510px;margin:0}
@media(max-width:1000px){.add-button{font-size:11px}.story-hero-grid{grid-template-columns:1fr 1fr;gap:30px}.story-feature-grid,.story-feature-reverse .story-feature-grid{gap:35px}.story-feature img{height:360px}}
@media(max-width:760px){.catalogue-group-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.product-info{min-height:150px}.story-hero-grid,.story-feature-grid,.story-feature-reverse .story-feature-grid{grid-template-columns:1fr}.story-hero img{height:340px}.story-feature-reverse img{order:0}.story-feature{padding:55px 0}.story-feature img{height:370px}.story-end .shell{display:block}.story-end .button{margin-top:25px}}
@media(max-width:760px){.products-page-hero-grid{grid-template-columns:1fr;padding:55px 0;gap:30px}.products-page-hero-aside{align-items:flex-start;text-align:left}.featured-intro{display:block}.featured-intro>p{margin-top:18px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.catalogue{padding:56px 0 64px}.catalogue-group{padding:30px 0}.catalogue-group-items{grid-template-columns:1fr;gap:14px}.catalogue-group-heading{display:block;margin-bottom:17px}.catalogue-group-heading h3{font-size:1.65rem}.catalogue-group-count{display:none}.catalogue-group-heading p{margin-top:7px}.product-card{display:grid;grid-template-columns:118px minmax(0,1fr)}.product-visual{height:100%;min-height:142px;aspect-ratio:auto;border-bottom:0;border-right:1px solid #eef0ed}.product-visual img{transform:scale(.92)}.product-info{min-height:142px;padding:13px 12px}.product-family{font-size:8px;margin-bottom:5px}.product-info h3{font-size:14px}.product-info p{font-size:10px;margin-bottom:8px}.add-button{font-size:10px;padding-top:7px}.add-button span{width:23px;height:23px;font-size:12px}.product-dialog-foot{display:block}.product-dialog-foot .button{margin-top:12px}.product-dialog>img{height:min(55dvh,480px)}.quote-item{grid-template-columns:minmax(0,1fr) auto}.quote-item>span{grid-column:1}.quantity-label{grid-column:1;grid-row:2}.quote-item>button{grid-column:2;grid-row:1/3}.story-hero-grid{padding:52px 0}.story-hero h1{font-size:3.6rem}.story-hero img{height:250px}.story-feature img{height:270px}.story-end{padding:55px 0}}
@media(max-width:520px){.products-page-hero-grid{padding:43px 0;gap:23px}.products-page-hero h1{font-size:2.85rem}.products-page-hero p:not(.eyebrow){font-size:14px}.products-page-hero-aside span:nth-child(2){display:none}.products-page-hero-aside a{margin-top:3px}.products-page .catalogue{padding-top:43px}.products-page .catalogue-heading h2{font-size:2rem}.featured{padding:55px 0}.featured-intro h2{font-size:2.65rem}.featured-grid{grid-template-columns:1fr;gap:12px}.featured-card{display:grid;grid-template-columns:118px minmax(0,1fr)}.featured-image{height:100%;min-height:145px;aspect-ratio:auto}.featured-meta{border-top:0;border-left:1px solid #edf0ee;padding:15px 12px}.featured-meta strong{font-size:14px}.featured-meta>span{font-size:10px}}
@media(max-width:520px){.filter-row{gap:5px;width:100%}.filter{padding:10px 11px;font-size:10px}.catalogue-toolbar{align-items:flex-start}}

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
