*{box-sizing:border-box}body{margin:0;background:#faf7f5;color:#3a211b;font:var(--body-size,16px)/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,a,input,select,textarea{touch-action:manipulation}img{max-width:100%}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.2}h1{font-size:42px}h2{font-size:30px}h3{font-size:20px}.stage{text-align:center;background:#38221b;color:#fff8f3;padding:5px;font-size:12px}.stage a{text-decoration:underline}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;gap:24px}header nav{display:flex;gap:22px}.brand{font:30px Georgia,serif}.brand small{display:block;font:11px Arial,sans-serif;letter-spacing:1px;margin-top:6px}.hero{min-height:340px;background-size:cover;background-position:center 60%;color:#fff8f3;display:flex;align-items:center;padding:35px 5%}.hero>div{max-width:510px}.hero h1{font-size:46px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--button-height,44px);padding:9px 18px;border:1px solid var(--accent,#703c2b);color:var(--accent,#703c2b);font-size:14px}.primary{background:var(--accent,#703c2b);color:#fff8f3}.hero .primary{background:#eed0ba;color:#38221b;border-color:#eed0ba}.hero-gift{margin-left:20px;text-decoration:underline}section{padding:var(--gap,24px) 5%}.center{text-align:center}.categories{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.categories a{position:relative;background:#38221b}.categories img{width:100%;height:180px;object-fit:cover;opacity:.7;display:block}.categories span{position:absolute;bottom:15px;left:20px;color:white;font:22px Georgia,serif}.products{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.product img{width:100%;aspect-ratio:1;object-fit:contain;background:#eee}.product p{font-size:14px}.product h3{font-size:18px}.product .button{padding:8px 10px}.review{background:#e9d5ca}.review blockquote{max-width:850px;margin:22px auto;font:26px/1.5 Georgia,serif}.journal{background:#f8f0ea}.articles{display:grid;grid-template-columns:1fr 1fr;gap:24px}.articles img{width:100%;height:250px;object-fit:cover}.family{width:100%;height:auto}.heading{text-align:center;max-width:850px;margin:0 auto 30px}.story{max-width:760px;margin:30px auto;font:18px/1.8 Georgia,serif}.story blockquote{margin:25px 0;color:#703c2b;font-size:25px}.featured{position:relative;display:block}.featured img{width:100%;height:370px;object-fit:cover}.featured h2{position:absolute;bottom:10px;left:25px;color:#fff;background:#38221bdd;padding:20px}footer{padding:35px 5% 90px;background:#38221b;color:#fff8f3;display:flex;justify-content:space-between}footer>div:last-child{display:flex;flex-direction:column;gap:10px}.bottom{display:none}.compact{padding-top:10px;padding-bottom:20px}
@media(max-width:800px){header{flex-wrap:wrap;gap:15px;padding:16px}.brand{font-size:24px}header nav{order:3;width:100%;justify-content:space-between;gap:5px;font-size:13px}h1{font-size:30px}.hero{min-height:265px;padding:22px 16px;background-position:65% center}.hero>div{max-width:70%}.hero h1{font-size:30px}.hero-gift{display:block;margin:14px 0 0}section{padding:var(--mobile-gap,18px) 16px}.categories{gap:8px}.categories img{height:110px}.categories span{left:8px;bottom:10px;font-size:16px}.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.shelf{display:flex;overflow:auto;scroll-snap-type:x mandatory}.shelf .product{flex:0 0 calc((100% - 15px)/2);scroll-snap-align:start}.product h3{font-size:17px}.articles img{height:170px}.review blockquote{font-size:21px}.bottom{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10000;background:#fff8f3;border-top:1px solid #dfcec5;justify-content:space-around;padding:8px 0 max(8px,env(safe-area-inset-bottom))}.bottom a{display:flex;flex-direction:column;align-items:center;font-size:22px;min-width:44px}.bottom span{font-size:11px}footer{display:block}footer>div:last-child{margin-top:25px}.family{max-height:none}.featured img{height:260px}.featured h2{font-size:22px}.story{font-size:17px}}

.shop-search{display:flex;align-items:stretch;flex-wrap:nowrap;max-width:520px;width:100%;margin:20px auto 30px;border:1px solid #c7b5aa;border-radius:4px;background:#fffdfb;overflow:hidden}.shop-search:focus-within{outline:2px solid #703c2b;outline-offset:3px}.shop-search input{flex:1;min-width:0;width:100%;font:16px Arial;padding:12px 14px;border:0;border-radius:0;background:transparent;color:#3a211b;outline:none}.shop-search input::placeholder{color:#806b60;opacity:1}.shop-search-submit{display:grid;place-items:center;flex:0 0 48px;min-height:48px;padding:0;border:0;border-left:1px solid #dfcec5;background:#f1e5dc;color:#703c2b;cursor:pointer}.shop-search-submit:hover{background:#e9d5ca}.shop-search-submit:focus-visible{outline:2px solid #703c2b;outline-offset:-4px}

.bottom a{min-height:44px;gap:2px}.bottom i{width:26px;height:26px;display:grid;place-items:center;line-height:1}

.menu-toggle{display:none}
@media(max-width:800px){
 header{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:12px 16px}
 header .brand{font-size:clamp(18px,5.4vw,24px)}header .brand small{font-size:9px;letter-spacing:.6px}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 3px;border:0;background:transparent;color:inherit;font:14px Arial;cursor:pointer}
 .menu-toggle:focus-visible{outline:2px solid var(--accent,#703c2b);outline-offset:3px}
 .header-bag{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:14px}
 header #main-menu{display:none;position:absolute;top:100%;left:0;right:0;width:100%;padding:8px 16px 12px;background:#faf7f5;border-top:1px solid #dfcec5;box-shadow:0 8px 14px #38221b18;z-index:10001}
 header #main-menu.is-open{display:flex;flex-direction:column;gap:0}
 header #main-menu a{display:flex;align-items:center;min-height:44px;padding:8px;font-size:15px;border-bottom:1px solid #e9ddd6}
 header #main-menu a:last-child{border-bottom:0}
}

@media(max-width:800px){header{grid-template-columns:minmax(0,1fr) auto}.header-bag{display:none}}

.shop-categories{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:20px 0}.shop-categories a{font-size:14px;padding:8px 0;border-bottom:1px solid transparent}.shop-categories a[aria-current=page]{border-color:#703c2b;color:#703c2b}

/* A single editorial category rail, swipeable when space is limited. */
.shop-categories{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:clamp(20px,3vw,38px);width:100%;max-width:850px;margin:18px auto 22px;padding:0 4px;border-bottom:1px solid #e4d9d1;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#cbb9ac transparent}
.shop-categories a{flex:0 0 auto;white-space:nowrap;text-align:center;font-size:13px;font-weight:400;letter-spacing:.035em;line-height:1.4;min-height:44px;display:flex;align-items:center;padding:10px 2px 12px;border-bottom:2px solid transparent;color:#76645b;transition:color .15s,border-color .15s}
.shop-categories a:first-child{margin-left:auto}.shop-categories a:last-child{margin-right:auto}.shop-categories a:hover{color:#703c2b;text-decoration:none}.shop-categories a[aria-current=page]{border-bottom-color:#703c2b;color:#3a211b;font-weight:600}.shop-categories a:focus-visible{outline:2px solid #9a4d2c;outline-offset:-2px}
@media(max-width:600px){.shop-categories{gap:23px;margin:12px 0 18px;padding:0 2px 2px;scrollbar-width:none}.shop-categories::-webkit-scrollbar{display:none}.shop-categories a{font-size:13px;letter-spacing:.02em;padding:9px 0 11px}.shop-categories a:first-child,.shop-categories a:last-child{margin:0}}

/* Persistent swipe indicator; visible even when mobile browsers hide native scrollbars. */
.shop-categories{border-bottom-width:2px}.shop-categories a{border-bottom-width:3px}
.shop-categories.is-scrollable{margin-bottom:7px;scrollbar-width:none;border-bottom:0}
.shop-categories.is-scrollable::-webkit-scrollbar{display:none}
.shop-category-scroll-track{height:6px;max-width:850px;margin:0 auto 18px;background:#e4d9d1;border-radius:3px;overflow:hidden}
.shop-category-scroll-track[hidden]{display:none}
.shop-category-scroll-track span{display:block;height:100%;background:#703c2b;border-radius:3px;will-change:transform}
