/* Brand-led category discovery; grid geometry follows the approved editorial layout. */
.product-categories{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:32px;background:#F3F2EB;color:#133a31;padding:72px var(--page-gutter) 80px;scroll-margin-top:100px;font-family:var(--body)}
.products-intro{grid-column:1;grid-row:1;min-width:0}
.products-eyebrow{font-size:var(--type-eyebrow);letter-spacing:2.6px;text-transform:uppercase;color:#53685d;margin:0 0 15px;font-family:var(--font-accent);font-weight:var(--weight-accent);letter-spacing:var(--tracking-accent)}
.products-intro h2{font-family:var(--font-display);font-size:var(--type-section);font-weight:var(--weight-display);line-height:1;letter-spacing:-1px;text-transform:uppercase;margin:0 0 18px}
.products-description{font-size:15px;line-height:1.5;max-width:425px;color:#627166;margin:0}
.products-view-all{grid-column:2;grid-row:1;align-self:start;display:flex;align-items:center;justify-content:space-between;gap:26px;text-decoration:none;background:transparent;padding:8px 0 11px;margin-top:30px;border-bottom:1px solid #183f3577;min-height:44px;font-size:13px}
.products-view-all>span{font-size:28px;line-height:1;transition:transform 250ms}.products-view-all:hover>span{transform:translateX(4px)}
.products-mosaic{grid-column:1/-1;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));grid-template-rows:350px 310px;gap:14px;margin-top:30px}
.product-family{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;min-width:0;min-height:0;isolation:isolate;padding:25px 24px 18px;text-align:left;text-decoration:none;border:1px solid #183f3514;border-radius:14px;overflow:hidden;color:#133a31;transition:background 250ms,border-color 250ms,box-shadow 250ms}
.family-cups{grid-column:1/6;grid-row:1/3}.family-containers{grid-column:6/11;grid-row:1}.family-tableware{grid-column:11/15;grid-row:1}.family-cutlery{grid-column:6/9;grid-row:2}.family-bags{grid-column:9/12;grid-row:2}.family-specialty{grid-column:12/15;grid-row:2}
.family-dark{background:#133a31;color:#fff;border-color:#133a31}.family-neutral{background:#eeeee5}.family-sage{background:#e0e7da}.family-white{background:#fff}
.family-content{position:relative;z-index:2;min-width:0}
.family-index{display:flex;gap:14px;align-items:center;font-size:var(--type-caption);color:#55735b;margin-bottom:13px}.family-index i{width:39px;height:1px;background:#86A126}
.family-dark .family-index{color:#b8d68b}
.family-title{font-family:var(--font-display);font-size:clamp(29px,2.55vw,44px);font-weight:var(--weight-display);line-height:1;text-transform:uppercase;letter-spacing:-.3px;margin:0 0 12px;overflow-wrap:normal}
.family-cups .family-title{font-size:clamp(42px,3.6vw,64px);max-width:290px}
.family-items{display:block;font-size:var(--type-caption);line-height:1.6;color:#5b7164}.family-items>span{display:block}.family-dark .family-items{color:#d0dcd0}
.family-explore{position:relative;display:inline-flex;align-items:center;gap:14px;font-size:var(--type-caption);letter-spacing:.6px;font-weight:var(--weight-bold);margin-top:14px;padding-bottom:6px}
.family-explore:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#86A126;transform:scaleX(.2);transform-origin:left;transition:transform 250ms ease}
.family-explore>span{display:inline-block;color:#86A126;font-size:19px;line-height:1;transition:transform 250ms ease}
.family-imagery{position:relative;display:block;min-height:0;min-width:0;pointer-events:none}
.family-imagery img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:transform 280ms ease;transform-origin:center}
.family-cups .family-imagery{margin:0 -8px -5px}.family-containers .family-imagery{margin:-8px -10px -6px}.family-tableware .family-imagery{margin:0 -4px -6px}
.family-cutlery .family-imagery{min-height:75px}
.family-text-led{grid-template-rows:minmax(0,1fr)}.family-text-led .family-content{display:flex;flex-direction:column;align-items:flex-start}.family-text-led .family-explore{margin-top:auto;padding-top:20px}
.product-family:hover,.product-family:focus-visible{border-color:#86A126;box-shadow:inset 0 0 0 1px #77b80033}
.product-family:hover .family-explore:after,.product-family:focus-visible .family-explore:after{transform:scaleX(1)}
.product-family:hover .family-explore>span,.product-family:focus-visible .family-explore>span{transform:translate(2px,-2px)}
@media(hover:hover) and (pointer:fine){.product-family:hover .family-imagery img{transform:scale(1.025)}}
@media(min-width:1600px){.products-mosaic{grid-template-rows:410px 350px}.product-family{padding:30px 28px 22px}.family-title{font-size:46px}.family-cups .family-title{font-size:66px}.family-items{font-size:14px}.family-explore{font-size:var(--type-caption)}}
@media(max-width:1100px){.products-mosaic{grid-template-rows:360px 320px;gap:12px;margin-top:26px}.product-family{padding:22px 17px 16px}.family-title{font-size:31px}.family-cups .family-title{font-size:46px}.family-items{font-size:var(--type-caption)}.family-explore{font-size:var(--type-caption);gap:9px}.products-description{font-size:14px}.family-specialty .family-title{font-size:29px}}
@media(max-width:800px){.product-categories{display:block;padding-top:65px;padding-bottom:80px}.products-intro h2{font-size:var(--type-section)}.products-view-all{margin:20px 0 24px;width:max-content}.products-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:12px;margin:0}.product-family{grid-column:auto;grid-row:auto;min-height:370px;padding:24px 20px 18px;grid-template-rows:auto minmax(120px,1fr)}.family-cups,.family-containers{min-height:410px}.family-title{font-size:34px}.family-cups .family-title{font-size:42px}.family-items{font-size:var(--type-caption)}.family-explore{font-size:var(--type-caption)}.family-text-led{grid-template-rows:1fr;min-height:280px}.family-specialty .family-title{font-size:34px}}
@media(max-width:480px){.products-intro h2{font-size:38px}.products-eyebrow{font-size:var(--type-eyebrow);font-family:var(--font-accent);font-weight:var(--weight-accent);letter-spacing:var(--tracking-accent)}.products-description{font-size:14px}.product-family{padding:20px 14px 15px;min-height:355px;gap:14px;grid-template-rows:auto minmax(105px,1fr)}.family-title{font-size:30px}.family-cups .family-title{font-size:36px}.family-specialty .family-title{font-size:30px}.family-items{font-size:var(--type-caption)}.family-explore{font-size:var(--type-caption);gap:7px}.family-text-led{grid-template-rows:1fr;min-height:260px}}
@media(max-width:360px){.products-mosaic{grid-template-columns:minmax(0,1fr)}.product-family{min-height:380px}.family-text-led{min-height:260px}.family-title,.family-specialty .family-title{font-size:36px}}
@media(prefers-reduced-motion:reduce){.product-family,.family-imagery img,.family-explore:after,.family-explore>span,.products-view-all>span{transition:none}.product-family:hover .family-imagery img,.product-family:hover .family-explore>span,.product-family:focus-visible .family-explore>span,.products-view-all:hover>span{transform:none}}
.products-final-cta{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:44px;gap:14px}.products-final-cta p{margin:0;color:#627166;font-size:14px;line-height:1.5}.products-catalogue-button{max-width:100%;min-height:54px;padding:17px 28px;border-radius:999px;background:#133a31;color:#fff}.products-catalogue-button:hover{background:#245548}.products-catalogue-button:focus-visible{outline-offset:5px}
