/* Product photography replaces the old eight-family screenshot crop. */
:is(.product-art,.catalog-photo).standalone-photo{position:relative;aspect-ratio:4/3;background:#f5f5ef;height:auto}
:is(.product-art,.catalog-photo).standalone-photo img{position:static;width:100%!important;max-width:100%!important;height:100%!important;object-fit:contain;display:block;left:auto;top:auto}
.standalone-photo .product-crop{position:absolute;inset:0}
.ingredient-intro{padding:32px 0 65px;background:var(--soft);border-bottom:1px solid var(--line)}
.ingredient-intro .breadcrumb{margin-bottom:45px}
.ingredient-intro-row{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:end}
.ingredient-intro h1{font:500 clamp(40px,3.5vw,60px)/1.12 var(--type-main);letter-spacing:-1.7px;margin:0;max-width:700px}
.ingredient-intro p{font-size:17px;line-height:1.8;color:var(--muted);margin:0;max-width:610px}
.ingredient-collection{padding:65px 0 85px}
.ingredient-collection .catalogue-layout{grid-template-columns:245px minmax(0,1fr);gap:65px}
.ingredient-filters h2{font-size:19px;line-height:1.4;font-weight:600;margin:0 0 18px}
.ingredient-filter-options{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.ingredient-filter-options button{display:flex;align-items:center;gap:12px;width:100%;min-height:61px;text-align:left;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);padding:13px 12px;font-size:14px;line-height:1.45;cursor:pointer;transition:background-color .45s ease,color .4s ease,box-shadow .45s ease}
.ingredient-filter-options button span{flex:1}.ingredient-filter-options button small{font-size:12px;opacity:.7;font-variant-numeric:tabular-nums}
.ingredient-filter-options button[aria-pressed=true]{background:var(--green);color:white;box-shadow:inset 3px 0 var(--deep)}
.ingredient-icon{width:23px;height:23px;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;fill:none;flex-shrink:0;transition:transform .5s var(--ease-soft)}
.catalogue-note{font-size:12px;line-height:1.8;color:var(--muted);margin:28px 0 0;max-width:760px}
.catalogue-results{min-width:0}.catalogue-toolbar{margin-bottom:32px}.catalogue-toolbar h2{font-size:30px}
.selected-family-link{display:table;margin:-10px 0 26px;font-size:13px}
.product-photo{display:block;position:relative;overflow:hidden;aspect-ratio:4/3;background:#f3f4ef}
.product-photo>img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .95s var(--ease-soft),filter .8s ease}
.product-card-link{display:flex;flex-direction:column;height:100%;position:relative;color:inherit}
.product-tile h3{font-size:21px;font-weight:500;line-height:1.32;margin:10px 0 12px;letter-spacing:-.2px}
.product-tile .format{font-size:12px;margin:18px 0 0;color:var(--green)}
.product-tile p{font-size:14px;line-height:1.7;margin:0;max-width:40ch}
.product-card-arrow{display:grid;place-items:center;width:30px;height:30px;border:1px solid #bbd0bc;border-radius:50%;margin-top:17px;color:var(--green);transition:background .4s,color .4s,transform .65s var(--ease-soft)}
.product-card-arrow svg,.product-view svg,.photo-enlarge svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.product-view{position:absolute;bottom:14px;right:14px;display:flex;align-items:center;gap:12px;padding:10px 13px;background:white;color:var(--deep);font-size:12px;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .65s var(--ease-soft)}
.product-grid-list{row-gap:44px}.product-grid-list>.product-tile{height:100%}
.no-results h3{font-size:25px;margin:0 0 12px}.no-results button{border:0;background-color:transparent;color:var(--green);padding:8px 0;cursor:pointer}
.product-figure{margin:0;min-width:0}.product-detail .detail-lead{gap:75px;grid-template-columns:1.13fr 1fr;align-items:center;padding:60px 0 72px}
.product-main-photo{border:1px solid #e3e8df;cursor:zoom-in}.photo-enlarge{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;background:#fffffff2;color:var(--ink);padding:10px 13px;font-size:12px;transition:background .4s ease}
.product-family-label{display:inline-flex;gap:10px;align-items:center;font-size:14px;line-height:1.5;color:var(--green)}
.product-detail h1{font-size:52px;line-height:1.12;letter-spacing:-1.6px;font-weight:500;margin:22px 0}
.product-detail .product-summary{font-size:18px;line-height:1.75;max-width:530px}.product-detail .detail-meta{grid-template-columns:110px 1fr;margin:25px 0 30px}
.product-detail .detail-actions{gap:20px}.product-detail .detail-actions .button{padding:16px 22px;font-size:14px}
.product-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:start}
.product-information h2{font-size:36px;line-height:1.23;letter-spacing:-.8px;font-weight:500;margin:0 0 24px}
.product-story>p{font-size:17px;line-height:1.9;color:var(--muted);margin:0 0 32px;max-width:620px}
.product-uses{padding-top:22px;border-top:1px solid #cadacb}.product-uses h3{font-size:17px;font-weight:600;margin:0 0 17px}.product-uses ul{list-style:none;padding:0;margin:0;display:grid;gap:15px}.product-uses li{display:flex;align-items:center;gap:13px;font-size:15px;line-height:1.55}.product-uses svg{width:20px;height:20px;stroke:var(--green);stroke-width:1.4;fill:none;flex-shrink:0}
.product-specification>p{font-size:15px;color:var(--muted);margin:0 0 12px}.product-specification dl{margin:0 0 25px}.product-specification dl>div{padding:20px 0;border-bottom:1px solid #cadacb}.product-specification dt{font-size:16px;font-weight:600;margin-bottom:8px}.product-specification dd{font-size:15px;color:var(--muted);line-height:1.7;margin:0;max-width:580px}
.product-information-pack .product-info-grid{grid-template-columns:1fr;gap:36px}.product-information-pack .product-story{display:grid;grid-template-columns:1fr 1fr;gap:22px 80px}.product-information-pack .product-story h2{margin:0}.product-information-pack .product-story>p{grid-column:1;grid-row:2;margin:0}.product-information-pack .product-uses{grid-column:2;grid-row:1/3;align-self:start}.product-information-pack .product-specification dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.product-information-pack .product-specification h2{font-size:29px;margin:8px 0 13px}
.product-information-whole{background:#f8faf6}.product-information-whole .product-specification{border-left:1px solid var(--line);padding-left:45px}
.product-reference-row{display:grid;grid-template-columns:.8fr 1fr;gap:90px;align-items:center}.product-reference-row h2{font-size:37px;font-weight:500;margin:0 0 22px}.product-reference-row p{font-size:17px;line-height:1.8;color:var(--muted)}.product-reference-row .product-video{margin:0}
.product-related{grid-template-columns:repeat(3,minmax(0,1fr))}.product-related .product-photo{aspect-ratio:4/3}
.product-image-dialog{border:1px solid var(--line);padding:25px;background:#fff;color:var(--ink);width:min(1100px,92vw);max-height:94dvh;overflow:auto}.product-image-dialog::backdrop{background:#123a2bd4;backdrop-filter:blur(5px)}.product-image-dialog>button{position:absolute;right:12px;top:12px;background:#fff;z-index:2}.product-image-dialog img{display:block;width:100%;height:auto;max-height:78dvh;object-fit:contain}.product-image-dialog p{font-size:14px;line-height:1.7;margin:15px 0 0}.product-image-dialog[open]{animation:dialog-in .4s var(--ease-enter)}
.ingredient-collection [hidden]{display:none!important}
@media(hover:hover) and (pointer:fine){.ingredient-filter-options button:hover{background:#e5efe2}.ingredient-filter-options button[aria-pressed=true]:hover{background:var(--deep)}.ingredient-filter-options button:hover .ingredient-icon{transform:translateY(-2px)}.product-card-link:hover .product-photo>img,.product-main-photo:hover>img{transform:scale(1.045)}.product-card-link:hover .product-view,.product-card-link:focus-visible .product-view{opacity:1;transform:translateY(0)}.product-card-link:hover .product-card-arrow{background:var(--green);color:white;transform:translateX(5px)}.product-family-label:hover{color:var(--deep)}.product-family-label:hover svg{transform:rotate(-5deg)}}
@media(max-width:1250px){.ingredient-collection .catalogue-layout{grid-template-columns:205px minmax(0,1fr);gap:36px}.ingredient-filter-options button{padding:12px 9px;gap:8px;font-size:13px}.ingredient-intro-row{gap:50px}.product-detail .detail-lead{gap:42px}.product-detail h1{font-size:44px}.product-detail .product-summary{font-size:16px}.product-info-grid{gap:60px}.product-information h2{font-size:32px}.product-card-link h3{font-size:20px}}
@media(max-width:1000px){.ingredient-collection .catalogue-layout{grid-template-columns:1fr;gap:35px}.ingredient-filter-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:0}.ingredient-filter-options button{min-height:54px;border:1px solid var(--line);font-size:13px}.ingredient-filters>.catalogue-note{margin-top:17px}.ingredient-intro-row{grid-template-columns:1fr;gap:23px}.ingredient-intro p{max-width:760px}.product-detail .detail-lead{gap:32px}.product-detail h1{font-size:37px}.product-detail .detail-meta{font-size:13px;grid-template-columns:90px 1fr}.product-information h2{font-size:29px}.product-info-grid{gap:35px}.product-story>p{font-size:15px}.product-information-whole .product-specification{padding-left:28px}.product-reference-row{gap:40px}}
@media(max-width:700px){.ingredient-intro{padding:24px 0 36px}.ingredient-intro .breadcrumb{margin-bottom:28px}.ingredient-intro h1{font-size:37px;letter-spacing:-1px}.ingredient-intro p{font-size:15px;line-height:1.8}.ingredient-intro-row{gap:18px}.ingredient-collection{padding:36px 0 48px}.ingredient-filter-options{grid-template-columns:1fr 1fr;gap:7px}.ingredient-filter-options button{min-height:58px;font-size:11px;gap:7px;padding:10px 8px}.ingredient-filter-options .ingredient-icon{width:18px;height:18px}.ingredient-filter-options small{font-size:10px}.ingredient-filters h2{font-size:18px}.catalogue-toolbar h2{font-size:27px}.catalogue-note{font-size:11px}.product-tile h3,.product-card-link h3{font-size:18px;line-height:1.3}.product-tile .format{font-size:10px;margin-top:12px}.product-tile p{font-size:12px;line-height:1.65}.product-card-arrow{width:26px;height:26px;margin-top:12px}.product-grid-list{gap:28px 16px}.product-view{display:none}.product-detail .detail-lead{grid-template-columns:1fr;gap:28px;padding:28px 0 44px}.product-detail h1{font-size:36px;letter-spacing:-1px;margin:17px 0}.product-detail .product-summary{font-size:16px}.product-family-label{font-size:12px}.product-detail .detail-meta{font-size:13px}.product-info-grid{grid-template-columns:1fr;gap:38px}.product-information h2{font-size:29px}.product-specification dd{font-size:14px}.product-specification dt{font-size:15px}.product-information-whole .product-specification{border-left:0;padding-left:0}.product-information-pack .product-story{display:block}.product-information-pack .product-story>p{margin:20px 0 26px}.product-information-pack .product-specification dl{grid-template-columns:1fr;gap:0}.product-information-pack .product-specification h2{font-size:29px}.product-reference-row{grid-template-columns:1fr;gap:25px}.product-reference-row h2{font-size:30px}.product-reference-row p{font-size:15px}.product-related{grid-template-columns:1fr 1fr;gap:30px 16px}.product-image-dialog{padding:12px}.product-image-dialog p{font-size:12px;padding:0 8px}.photo-enlarge{right:10px;bottom:10px;padding:8px;font-size:11px}}
@media(max-width:380px){.product-grid-list,.product-related{grid-template-columns:1fr}.product-tile h3,.product-card-link h3{font-size:22px}.product-tile p{font-size:14px}.product-tile .format{font-size:12px}.ingredient-filter-options button{font-size:10px}.ingredient-filter-options .ingredient-icon{width:16px;height:16px}.ingredient-intro h1{font-size:33px}}
