/* The real boutique and its products, in the institute's sage palette. */
.products-section{padding:80px 0;background:#eef0e8}
.products-editorial{display:grid;grid-template-columns:1fr 1.1fr;gap:7%;align-items:center;margin-bottom:64px}
.products-brand{display:block;font-family:var(--serif);font-size:28px;letter-spacing:3px;margin-bottom:24px;color:var(--green)}
.products-editorial h2{font-size:clamp(48px,5vw,70px);line-height:.97;letter-spacing:-1.7px;margin-bottom:25px}
.products-editorial h2 em{color:var(--green)}
.products-editorial-copy>p{font-size:15px;line-height:1.85;max-width:385px;margin-bottom:28px}
.products-editorial .button{display:inline-flex;font-size:13px;padding:14px 23px}
.products-boutique{height:390px;border-radius:180px 180px 8px 8px;overflow:hidden;background:var(--sage)}
.products-boutique img{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.products-collection{border-top:1px solid #cbd3c1;padding-top:34px;margin-bottom:30px}
.products-collection>h3{font-size:36px;letter-spacing:-.6px;margin-bottom:24px}
.products-section .product-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;border:0}
.product-filters button{font-size:13px;font-weight:500;padding:11px 19px;border:1px solid #cad1c2;border-radius:30px;background:#faf9f580;line-height:1.5;transition:background .2s,border-color .2s,color .2s}
.product-filters button:hover{background:#e0e5d8;border-color:#86977b}
.product-filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}
.products-section .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:stretch}
.products-section .product-card{background:var(--paper);border:1px solid #d8ded1;border-radius:9px;overflow:hidden;transition:border-color .25s,box-shadow .25s}
.product-card .product-discover{display:block;width:100%;height:100%;padding:0;text-align:left}
.product-card .product-discover span{margin-left:0}
.product-card .product-photo{display:block;width:100%;height:auto;aspect-ratio:1.04;overflow:hidden;border-radius:0;background:#e3e5da}
.product-card .product-photo img{width:100%;height:100%;object-fit:cover;object-position:center bottom;transition:transform .55s ease}
.product-card .product-card-copy{display:flex;flex-direction:column;padding:23px 25px 26px}
.product-need{display:block;font:500 11px/1.5 var(--sans);letter-spacing:1.1px;text-transform:uppercase;color:#617056;margin:0 0 10px}
.product-card .product-name{font:400 34px/1.05 var(--serif);letter-spacing:-.5px;color:var(--green);margin:0 0 12px}
.product-card .product-description{display:block;font-size:13px;line-height:1.7;color:var(--muted);min-height:44px;margin:0 0 23px}
.product-card .product-discover-label{display:block;align-self:flex-start;font-size:12px;font-weight:600;line-height:1.7;border-bottom:1px solid #a7b09d;padding-bottom:3px;color:var(--green)}
.product-card:hover,.product-card:focus-within{border-color:#9ba88f;box-shadow:0 9px 28px #34432e0c}
.product-card:hover .product-photo img{transform:scale(1.035)}
.product-card:hover .product-discover-label{border-bottom-color:var(--green)}
.product-discover:focus-visible{outline-offset:-5px;outline:2px solid var(--green)}
.products-section .products-more{margin-top:34px}
.products-expand{display:inline-flex;font-size:13px;padding:14px 27px}
.info-dialog.product-dialog{width:900px;max-width:calc(100% - 48px);padding:0;overflow:auto}
.product-dialog #info-content{display:grid;grid-template-columns:.9fr 1fr}
.product-dialog .close-dialog{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:50%;background:var(--paper)}
.product-detail-photo{min-height:550px;background:var(--sage)}
.product-dialog .product-detail-photo img{width:100%;height:100%;max-height:none;margin:0;border-radius:0;object-fit:cover;object-position:center bottom}
.product-detail-copy{padding:54px 35px 36px}
.product-detail-copy h2{margin:0 0 16px;font-size:45px;line-height:1.03}
.product-detail-copy .product-detail-intro{margin:0 0 27px;font-size:15px}
.product-detail-copy h3{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:0;line-height:1.6;margin-bottom:12px}
.product-detail-copy ul{padding:0;margin:0 0 24px;list-style:none}
.product-detail-copy li{padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
.product-detail-copy .button{display:inline-flex;margin-top:23px;font-size:12px;padding:14px 20px}
@media(max-width:1000px){.products-editorial{gap:5%;grid-template-columns:1fr 1fr}.products-boutique{height:365px}.product-card .product-card-copy{padding:21px 19px 24px}.product-card .product-name{font-size:30px}.products-section .product-grid{gap:18px}.product-filters button{padding:10px 16px}}
@media(max-width:800px){.products-editorial h2{font-size:52px}.products-editorial-copy>p{font-size:14px}.products-boutique{height:350px}.products-section .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-dialog #info-content{grid-template-columns:.85fr 1fr}.product-detail-copy{padding:55px 25px 30px}.product-detail-copy h2{font-size:38px}}
@media(max-width:560px){
 .products-section{padding:48px 0}.products-editorial{grid-template-columns:1fr;gap:30px;margin-bottom:38px}.products-brand{font-size:25px;margin-bottom:19px}.products-editorial h2{font-size:52px;line-height:.98;margin-bottom:22px}.products-editorial-copy>p{font-size:14px;margin-bottom:24px;max-width:100%}.products-editorial .button{font-size:12px;padding:14px 21px}.products-boutique{height:270px;border-radius:130px 130px 6px 6px}.products-boutique img{object-position:center 45%}
 .products-collection{padding-top:28px;margin-bottom:24px}.products-collection>h3{font-size:32px;margin-bottom:21px}.products-section .product-filters{flex-wrap:wrap;gap:8px}.product-filters button{font-size:12px;padding:9px 14px}.products-section .product-grid{grid-template-columns:1fr;gap:24px}.product-card .product-photo{aspect-ratio:1.1}.product-card .product-card-copy{padding:22px 24px 26px}.product-card .product-name{font-size:35px}.product-card .product-description{font-size:14px;min-height:0;margin-bottom:20px}.product-card .product-discover-label{font-size:13px}.product-need{font-size:11px}.products-section .products-more{margin-top:28px}
 .info-dialog.product-dialog{max-width:calc(100% - 24px)}.product-dialog #info-content{display:block}.product-detail-photo{height:340px;min-height:0}.product-dialog .product-detail-photo img{height:100%;max-height:none}.product-detail-copy{padding:28px 24px 32px}.product-detail-copy h2{font-size:39px}.product-detail-copy .product-detail-intro{font-size:14px;margin-bottom:23px}.product-detail-copy li{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.product-card,.product-filters button,.product-photo img{transition:none!important}.product-card:hover .product-photo img{transform:none}}
