:root{--motion-ease:cubic-bezier(.22,1,.36,1);--motion-ink:#373a36}
.collection-gallery{background:#faf9f6;padding-bottom:65px}
.collection-modules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 4%;border-top:1px solid #dedbd4;border-bottom:1px solid #dedbd4}
.collection-module{position:relative;isolation:isolate;padding:30px 30px 25px;min-height:240px;overflow:hidden;display:flex;flex-direction:column}
.collection-module+.collection-module{border-left:1px solid #dedbd4}
.collection-module:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),#e8e3d8, #f0ede6 75%);opacity:0;transition:opacity .55s var(--motion-ease)}
.collection-module:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:#7a7061;transform:scaleX(0);transform-origin:left;transition:transform .65s var(--motion-ease)}
.module-index{font-size:9px;letter-spacing:.13em;color:#8b857a;margin-bottom:27px}
.collection-module h3{font:25px/1.5 var(--serif);letter-spacing:.08em;transition:transform .55s var(--motion-ease)}
.collection-module p{font-size:11px;line-height:1.8;color:#777168;margin-top:10px;transition:transform .55s var(--motion-ease)}
.module-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:35px;font-size:10px;letter-spacing:.08em}
.module-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d0ccc3;border-radius:50%;font-size:17px;transition:transform .55s var(--motion-ease),background .4s,color .4s,border-color .4s}
a,button{touch-action:manipulation}
button{transition:background-color .35s var(--motion-ease),color .35s,border-color .35s,transform .2s}
.header nav a,.quiet-contact,.brand-strip a,footer>a,.collection-heading>a{position:relative;transition:color .3s,opacity .3s}
.header nav a:after,.quiet-contact:after,.brand-strip a:after,footer>a:after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--motion-ease)}
.campaign-link,.text-link,.outline-link,.copy-phone{position:relative;transition:background-color .4s,background-size .45s var(--motion-ease),color .35s,border-color .35s,box-shadow .4s}
.campaign-link,.text-link{background-image:linear-gradient(currentColor,currentColor);background-size:0 1px;background-repeat:no-repeat;background-position:left bottom}
.campaign-link>span,.text-link>span,.phone>span,.product-title>span,.tab-arrow{display:inline-block;transition:transform .45s var(--motion-ease)}
.feature-action{position:relative;padding-bottom:5px}
.feature-action:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--motion-ease)}
@media(hover:hover) and (pointer:fine){
 .collection-module:hover:before{opacity:1}
 .collection-module:hover:after{transform:scaleX(1)}
 .collection-module:hover h3,.collection-module:hover p{transform:translateY(-3px)}
 .collection-module:hover .module-arrow{background:var(--motion-ink);border-color:var(--motion-ink);color:#fff;transform:translate(2px,-2px)}
 .header nav a:hover:after,.quiet-contact:hover:after,.brand-strip a:hover:after,footer>a:hover:after{transform:scaleX(1);transform-origin:left}
 .campaign-link:hover,.text-link:hover{background-size:100% 1px;color:#72614b}
 .campaign-link:hover>span,.text-link:hover>span,.phone:hover>span,.product:hover .product-title>span{transform:translate(3px,-3px)}
 button:not(:disabled):hover{background-color:#e6e1d7;border-color:#8c8377}
 .copy-phone:hover,.outline-link:hover{background:#303b3e;color:#fff}
 .feature-story:hover .feature-action:after{transform:scaleX(1)}
 .tabs button:hover .tab-arrow{transform:translateX(4px)}
 .logo:hover{opacity:.75}
}
.collection-module:focus-visible:before{opacity:1}
.collection-module:focus-visible:after{transform:scaleX(1)}
.collection-module:focus-visible .module-arrow{background:var(--motion-ink);color:white}
a:focus-visible,button:focus-visible{outline:2px solid #8d7758;outline-offset:5px}
.collection-module:focus-visible,.feature-story:focus-visible{outline-offset:-5px}
.collection-module:active:before{opacity:1}
.collection-module:active .module-arrow{transform:scale(.92);background:var(--motion-ink);color:white}
button:not(:disabled):active{transform:translateY(1px);transition-duration:.1s}
.campaign-link:active,.text-link:active,.feature-story:active,.product:active{opacity:.8}
@media(max-width:1000px){.collection-module{padding:25px 22px}.collection-module h3{font-size:23px}}
@media(max-width:760px){.collection-gallery{padding-bottom:40px}.collection-modules{grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:20px}.collection-module{padding:23px 16px 18px;min-height:217px}.collection-module:nth-child(3){border-left:0}.collection-module:nth-child(n+3){border-top:1px solid #dedbd4}.collection-module h3{font-size:21px;letter-spacing:.04em}.collection-module p{font-size:10px}.module-index{margin-bottom:20px}.module-bottom{padding-top:25px}.module-arrow{width:30px;height:30px}.collection-heading>a{padding-block:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.collection-module:hover h3,.collection-module:hover p,.collection-module:hover .module-arrow{transform:none}}
