/* A quiet editorial rhythm for the three storefront sections. */
.home-editorial-section{padding-block:clamp(62px,6vw,94px)}
.home-editorial-section .container{position:relative;z-index:11}
.home-editorial-section .editorial-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:0 0 32px;padding-top:23px;border-top:1px solid #decbb6}
.home-editorial-section .editorial-heading-copy{max-width:760px;min-width:0}
.home-editorial-section .editorial-heading .eyebrow{display:inline-flex;align-items:center;gap:11px;margin:0 0 16px;color:#a45d2d;font-size:11px;font-weight:800;letter-spacing:.18em;line-height:1.3;text-transform:uppercase}
.home-editorial-section .editorial-heading .eyebrow::before{content:"";width:24px;height:2px;flex:none;border-radius:2px;background:#cf8b43}
.home-editorial-section .editorial-heading h2{max-width:750px;margin:0;color:var(--pufy-cocoa,#3a241b);font-size:clamp(34px,3.7vw,54px);font-weight:800;letter-spacing:-.052em;line-height:1.12;text-wrap:balance}
.home-editorial-section .editorial-summary{max-width:620px;margin:14px 0 0;color:#746458;font-size:clamp(14px,1.12vw,16px);font-weight:500;line-height:1.7;text-wrap:pretty}
.home-editorial-section .editorial-link{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:47px;flex:none;margin-bottom:3px;padding:10px 12px 10px 19px;border:1px solid #c9ad90;border-radius:999px;background:#fffdf9;color:var(--pufy-cocoa,#3a241b);font-size:12px;font-weight:800;line-height:1.2;text-decoration:none;box-shadow:0 5px 15px #51311f0a;transition:background .24s ease,color .24s ease,border-color .24s ease,transform .24s ease,box-shadow .24s ease}
.home-editorial-section .editorial-link span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f5e7d4;color:#8c522b;font-size:16px;line-height:1;transition:transform .24s ease,background .24s ease}
.home-editorial-section .editorial-link:hover{transform:translateY(-2px);border-color:var(--pufy-cocoa,#3a241b);background:var(--pufy-cocoa,#3a241b);color:#fffaf2;box-shadow:0 12px 23px #51311f20}
.home-editorial-section .editorial-link:hover span{transform:translate(2px,-2px);background:#f0b975;color:#3a241b}
.home-editorial-section .editorial-link:focus-visible{outline:3px solid #d9964a;outline-offset:3px}

.home-editorial-section.blog-section{position:relative;background:radial-gradient(circle at 100% 0,#f8ead5 0,transparent 36%),#fffaf3}
.home-editorial-section.blog-section .blog-grid{gap:22px}
.home-editorial-section.blog-section .blog-card{overflow:hidden;border:1px solid #e4d5c3;border-radius:18px;background:#fffdf9;box-shadow:0 13px 35px #4f2d180e;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.home-editorial-section.blog-section .blog-image{height:230px;margin:12px 12px 0;padding:0;overflow:hidden;border:1px solid #e8d8c5;border-radius:12px;background:#f6eddf}
.home-editorial-section.blog-section .blog-image img{width:100%;height:100%;object-fit:contain;transition:transform .45s ease}
.home-editorial-section.blog-section .blog-card-copy{display:flex;flex:1;flex-direction:column;padding:23px 24px 22px}
.home-editorial-section.blog-section .blog-card-kicker{display:flex;align-items:center;gap:8px;color:#a66632;font-size:10px;font-weight:800;letter-spacing:.16em}
.home-editorial-section.blog-section .blog-card-kicker::before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#d6944c}
.home-editorial-section.blog-section .blog-card h3{margin:11px 0 11px;color:var(--pufy-cocoa,#3a241b);font-size:clamp(19px,1.5vw,22px);font-weight:800;letter-spacing:-.035em;line-height:1.31;text-wrap:balance}
.home-editorial-section.blog-section .blog-card h3 a{color:inherit;text-decoration:none}
.home-editorial-section.blog-section .blog-card h3 a:hover{text-decoration:underline;text-decoration-color:#c88642;text-decoration-thickness:2px;text-underline-offset:4px}
.home-editorial-section.blog-section .blog-card p{min-height:0;margin:0 0 26px;color:#75675e;font-size:14px;line-height:1.65;flex:1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.home-editorial-section.blog-section .blog-card-footer{padding-top:16px;border-color:#e9dbca}
.home-editorial-section.blog-section .blog-card-footer>span{color:#8b7667;font-size:11px}
.home-editorial-section.blog-section .blog-card-footer .read-more{display:inline-flex;align-items:center;gap:7px;color:#714529;font-size:12px;font-weight:800}
.home-editorial-section.blog-section .blog-card-footer .read-more span{font-size:17px;line-height:1;transition:transform .22s ease}
.home-editorial-section.blog-section .blog-card-footer .read-more:hover span{transform:translate(2px,-2px)}
@media(hover:hover){.home-editorial-section.blog-section .blog-card:hover{transform:translateY(-5px);border-color:#cfa676;box-shadow:0 21px 45px #4f2d181c}.home-editorial-section.blog-section .blog-card:hover .blog-image img{transform:scale(1.025)}}

@keyframes pufy-editorial-enter{from{opacity:.45;transform:translate3d(0,17px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
.home-editorial-section.is-visible .editorial-heading-copy{animation:pufy-editorial-enter .62s cubic-bezier(.2,.7,.2,1) both}
.home-editorial-section.is-visible .editorial-link{animation:pufy-editorial-enter .62s .09s cubic-bezier(.2,.7,.2,1) both}
.home-editorial-section.blog-section.is-visible .blog-card{animation:pufy-editorial-enter .66s cubic-bezier(.2,.7,.2,1) both}
.home-editorial-section.blog-section.is-visible .blog-card:nth-child(2){animation-delay:.07s}
.home-editorial-section.blog-section.is-visible .blog-card:nth-child(3){animation-delay:.14s}
.home-editorial-section.blog-section.is-visible .blog-card:nth-child(n+4){animation-delay:.18s}
@media(max-width:760px){.home-editorial-section .editorial-heading{align-items:flex-start;flex-direction:column;gap:18px}.home-editorial-section .editorial-heading h2{font-size:clamp(32px,7vw,43px)}.home-editorial-section .editorial-link{margin-bottom:0}.home-editorial-section.blog-section .blog-image{height:240px}}
@media(max-width:570px){.home-editorial-section{padding-block:58px}.home-editorial-section .editorial-heading{margin-bottom:24px;padding-top:19px}.home-editorial-section .editorial-heading .eyebrow{margin-bottom:13px;font-size:10px}.home-editorial-section .editorial-summary{margin-top:12px;font-size:14px}.home-editorial-section .editorial-link{min-height:43px;font-size:11px}.home-editorial-section.blog-section .blog-grid{gap:16px}.home-editorial-section.blog-section .blog-image{height:220px}.home-editorial-section.blog-section .blog-card-copy{padding:20px}.home-editorial-section.blog-section .blog-card p{margin-bottom:22px}}
@media(prefers-reduced-motion:reduce){.home-editorial-section.is-visible .editorial-heading-copy,.home-editorial-section.is-visible .editorial-link,.home-editorial-section.blog-section.is-visible .blog-card{animation:none}.home-editorial-section .editorial-link,.home-editorial-section .editorial-link span,.home-editorial-section.blog-section .blog-card,.home-editorial-section.blog-section .blog-image img,.home-editorial-section.blog-section .read-more span{transition:none}.home-editorial-section .editorial-link:hover,.home-editorial-section.blog-section .blog-card:hover,.home-editorial-section.blog-section .blog-card:hover .blog-image img{transform:none}}

.home-search-intro{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(200px,1fr);gap:40px;padding-top:48px;padding-bottom:36px}.home-search-intro :is(h1,h2){font-size:clamp(25px,3vw,40px);line-height:1.18;letter-spacing:-1.2px;margin:12px 0 18px;color:var(--ink)}.home-search-intro p{font-size:15px;line-height:1.8;max-width:720px;margin:0;color:#776457}.home-search-intro nav{display:flex;flex-wrap:wrap;gap:10px;align-content:center}.home-search-intro nav a{border:1px solid #e7d7c6;background:#fffaf4;border-radius:24px;padding:12px 16px;font-size:12px;font-weight:700;transition:background .2s,color .2s}.home-search-intro nav a:hover{background:#e61e29;color:#fff}@media(max-width:700px){.home-search-intro{grid-template-columns:1fr;gap:20px;padding-top:30px;padding-bottom:24px}}
