:root{
 --ink:#292522;--muted:#77716b;--cream:#fbf7f1;--white:#fff;--line:#e9e2da;
 --rose:#e9b3b9;--sage:#a9c4a2;--butter:#f6d66c;--lilac:#c8b2dc;--sky:#a9d3df;--coral:#ed8e7d;
 --serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
 --max:1240px;--shadow:0 18px 50px rgba(42,35,29,.10)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);line-height:1.5}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}
.wrap{width:min(calc(100% - 32px),var(--max));margin:auto}.serif{font-family:var(--serif)}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:.98;margin:0}h1{font-size:clamp(3.2rem,7vw,7rem)}h2{font-size:clamp(2.35rem,4.8vw,4.8rem)}h3{font-size:1.55rem}
p{margin:0;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#857b73}
.btn{border:0;border-radius:999px;padding:13px 20px;background:var(--ink);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;transition:.22s}.btn:hover{transform:translateY(-2px)}.btn.alt{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.butter{background:var(--butter);color:var(--ink)}
/* top */
.notice{height:34px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:10px;letter-spacing:.05em}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{font-family:var(--serif);font-size:20px}.navlinks{display:flex;gap:27px;font-size:12px;font-weight:700}.navlinks a:hover{opacity:.5}.tools{display:flex;justify-content:flex-end;gap:8px}.tool{height:38px;width:38px;border:1px solid var(--line);border-radius:50%;background:#fff}.hamb{display:none}
.catbar{background:#fff;border-bottom:1px solid var(--line)}.cats{display:flex;gap:8px;overflow:auto;padding:11px 0;scrollbar-width:none}.cats::-webkit-scrollbar{display:none}.cat{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:11px}.cat.active,.cat:hover{background:var(--ink);border-color:var(--ink);color:#fff}
/* hero */
.hero{padding:18px 0 50px;background:#fff}.heroGrid{display:grid;grid-template-columns:.76fr 1.24fr;gap:14px;min-height:610px}.heroCopy{border-radius:28px;background:#f4e4d3;padding:58px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.heroCopy:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-130px;bottom:-130px;background:var(--butter)}.heroCopy>*{position:relative;z-index:1}.heroCopy p{font-size:17px;max-width:470px;margin:22px 0 28px}.actions{display:flex;gap:8px;flex-wrap:wrap}
.heroImage{position:relative;border-radius:28px;overflow:hidden;min-height:610px;background:#efe4d8}.heroImage img{width:100%;height:100%;object-fit:cover;object-position:center}.heroTag{position:absolute;left:20px;bottom:20px;background:#fff;border-radius:14px;padding:11px 14px;font-size:11px;box-shadow:var(--shadow)}
/* shortcuts */
.shortcuts{padding:16px 0}.shortcutGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.shortcut{background:#fff;border:1px solid var(--line);border-radius:17px;padding:14px;display:flex;align-items:center;gap:12px}.shortcutIcon{height:48px;width:48px;border-radius:14px;overflow:hidden;flex:none}.shortcutIcon img{width:100%;height:100%;object-fit:cover}.shortcut strong{font-size:12px}.shortcut small{display:block;color:#999;margin-top:2px;font-size:10px}
/* sections */
.section{padding:82px 0}.white{background:#fff}.head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.head p{max-width:440px}
/* products */
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.product{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.25s}.product:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.pic{aspect-ratio:1/1.05;background:#eee;position:relative;overflow:hidden}.pic img{width:100%;height:100%;object-fit:cover;transition:.45s}.product:hover .pic img{transform:scale(1.035)}.heart{position:absolute;right:10px;top:10px;border:0;background:#fff;width:33px;height:33px;border-radius:50%;box-shadow:0 5px 16px #0001}.info{padding:14px 15px 16px}.name{font-family:var(--serif);font-size:18px}.meta{display:flex;justify-content:space-between;margin-top:7px;font-size:12px}.muted{color:#999}
/* mood */
.moods{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.mood{height:150px;border-radius:18px;padding:15px;display:flex;align-items:end;position:relative;overflow:hidden}.mood:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-30px;top:-25px;background:#fff7}.mood span{position:relative;z-index:2;font-family:var(--serif);font-size:19px}.m1{background:#efb8bd}.m2{background:#a9c4a2}.m3{background:#f6d66c}.m4{background:#c8b2dc}.m5{background:#a9d3df}.m6{background:#f0a38e}
/* editorial product category */
.categoryGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:13px}.catFeature{min-height:560px;border-radius:25px;overflow:hidden;position:relative;background:#ddd}.catFeature img{width:100%;height:100%;object-fit:cover}.catFeature .shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.62))}.catText{position:absolute;left:25px;right:25px;bottom:24px;color:#fff}.catText p{color:#eee;max-width:440px;margin:8px 0 17px}.sideStack{display:grid;grid-template-rows:1fr 1fr;gap:13px}.side{min-height:273px;border-radius:25px;overflow:hidden;position:relative;background:#ddd}.side img{width:100%;height:100%;object-fit:cover}.side .shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,.58))}.side .catText{bottom:18px}
/* custom */
.custom{background:var(--ink);color:#fff}.custom p{color:#bcb6b0}.customBox{display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center}.steps{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #57524d;margin-top:32px}.step{padding:21px 17px;border-right:1px solid #57524d;border-bottom:1px solid #57524d}.step:nth-child(2n){border-right:0}.step:nth-last-child(-n+2){border-bottom:0}.num{font-size:10px;color:#aaa}.step h3{margin:18px 0 6px;font-size:23px}.step p{font-size:12px}
/* finder */
.finder{background:#f4e4d3}.finderBox{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.finderForm{background:#fff;border-radius:20px;padding:24px}.finderForm label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#8b8179}.finderForm select{display:block;width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;margin:6px 0 14px}
/* journal */
.journalGrid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:12px}.journal{border-radius:20px;overflow:hidden;background:#fff;border:1px solid var(--line)}.journal img{width:100%;height:250px;object-fit:cover}.journal:first-child img{height:370px}.journalText{padding:17px}.journalText small{color:#999}.journalText h3{font-size:24px;margin:7px 0}
/* social */
.socialGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.social{aspect-ratio:1;border-radius:12px;overflow:hidden}.social img{width:100%;height:100%;object-fit:cover}
/* reviews / footer */
.reviewEmpty{text-align:center;padding:40px;border:1px dashed #d7d0c8;border-radius:18px;color:#888}.final{padding:100px 20px;background:var(--rose);text-align:center}.final p{max-width:560px;margin:18px auto 25px}.footer{background:#fff;padding:55px 0 25px;border-top:1px solid var(--line)}.footgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}.footgrid h4{font-size:10px;text-transform:uppercase;letter-spacing:.15em}.footgrid a,.footgrid p{display:block;font-size:12px;margin-top:8px}.bottom{border-top:1px solid var(--line);margin-top:35px;padding-top:16px;color:#999;font-size:10px;display:flex;justify-content:space-between}
/* cart */
.overlay{position:fixed;inset:0;background:#0006;z-index:80;opacity:0;pointer-events:none;transition:.25s}.overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(430px,100%);background:#fff;z-index:90;transform:translateX(105%);transition:.3s;padding:23px;box-shadow:-20px 0 55px #0002}.drawer.open{transform:none}.drawerHead{display:flex;justify-content:space-between;align-items:center}.close{border:0;width:35px;height:35px;border-radius:50%;background:#f2eee9}.empty{text-align:center;padding:90px 15px}.empty p{margin:8px 0 22px}
/* mobile */
.mobileBottom{display:none}
@media(max-width:1000px){.nav{grid-template-columns:1fr auto}.navlinks{display:none}.hamb{display:inline-block}.heroGrid{grid-template-columns:1fr}.heroCopy{min-height:440px}.heroImage{min-height:520px}.shortcutGrid{grid-template-columns:repeat(2,1fr)}.products{grid-template-columns:repeat(2,1fr)}.moods{grid-template-columns:repeat(3,1fr)}.categoryGrid{grid-template-columns:1fr}.sideStack{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.customBox,.finderBox{grid-template-columns:1fr}.journalGrid{grid-template-columns:1fr 1fr}.journal:first-child{grid-column:span 2}.socialGrid{grid-template-columns:repeat(3,1fr)}.footgrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
 body{padding-bottom:70px}.wrap{width:calc(100% - 24px)}.notice{height:30px;font-size:9px}.nav{height:62px}.brand{font-size:17px}.tool{width:35px;height:35px}
 .hero{padding:10px 0 30px}.heroGrid{gap:9px}.heroCopy{padding:38px 25px;min-height:390px;border-radius:21px}.heroCopy h1{font-size:clamp(3.05rem,14vw,4.4rem)}.heroCopy p{font-size:15px}.heroImage{min-height:430px;border-radius:21px}.heroImage img{object-position:center}
 .shortcutGrid{gap:7px}.shortcut{padding:10px;border-radius:14px;gap:9px}.shortcutIcon{width:43px;height:43px}.shortcut strong{font-size:11px}.shortcut small{font-size:9px}
 .section{padding:62px 0}.head{display:block}.head p{margin-top:11px}.products{gap:8px}.product{border-radius:15px}.info{padding:11px}.name{font-size:16px}.meta{font-size:11px}.heart{width:31px;height:31px}
 .moods{grid-template-columns:repeat(2,1fr)}.mood{height:125px}.mood span{font-size:17px}.catFeature{min-height:470px;border-radius:20px}.sideStack{gap:9px}.side{min-height:225px;border-radius:20px}.catText{left:18px;right:18px;bottom:18px}.catText h3{font-size:25px}
 .customBox{gap:28px}.steps{grid-template-columns:1fr}.step{border-right:0!important;border-bottom:1px solid #57524d!important}.step:last-child{border-bottom:0!important}.finderBox{gap:25px}.journalGrid{grid-template-columns:1fr}.journal:first-child{grid-column:auto}.journal img,.journal:first-child img{height:260px}.socialGrid{grid-template-columns:repeat(2,1fr)}.social:nth-child(n+5){display:none}.footgrid{grid-template-columns:1fr 1fr}.bottom{display:block}.bottom span{display:block;margin-top:6px}
 .mobileBottom{display:grid;position:fixed;left:0;right:0;bottom:0;height:68px;background:#fff;border-top:1px solid var(--line);z-index:60;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom)}.mobileBottom a{display:grid;place-items:center;align-content:center;gap:2px;font-size:9px;color:#777}.mobileBottom b{font-size:19px;font-weight:400;color:var(--ink)}
}
@media(max-width:360px){.products,.shortcutGrid{grid-template-columns:1fr}}

/* Functional additions; original design tokens/layout above are preserved. */
.searchPanel{display:none;position:fixed;inset:0;background:var(--cream);z-index:100;overflow:auto}.searchPanel.open{display:block}.searchBox{padding:24px 0}.searchBox input{width:100%;border:1px solid var(--line);border-radius:999px;padding:15px 20px;background:#fff}.pageHero{padding:70px 0 35px;background:#fff}.pageGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.detail{display:grid;grid-template-columns:1.05fr .95fr;gap:35px;align-items:start}.detailImage{background:#eee;border-radius:25px;overflow:hidden;aspect-ratio:1/1}.detailImage img{width:100%;height:100%;object-fit:cover}.detailInfo{padding:15px 0}.detailInfo h1{font-size:clamp(2.5rem,5vw,5rem)}.priceBig{font-size:22px;margin:18px 0}.detailInfo select,.detailInfo input,.checkoutForm input,.checkoutForm textarea,.checkoutForm select{width:100%;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff;margin:6px 0 14px}.qty{display:flex;gap:8px;align-items:center}.qty input{width:80px}.productLink{display:block}.bagList{display:grid;gap:10px}.bagItem{display:grid;grid-template-columns:85px 1fr auto;gap:12px;padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff}.bagItem img{width:85px;height:85px;object-fit:cover;border-radius:10px}.bagActions{display:flex;gap:7px;align-items:center;margin-top:8px}.checkoutGrid{display:grid;grid-template-columns:1fr .7fr;gap:25px}.checkoutForm{background:#fff;padding:22px;border:1px solid var(--line);border-radius:18px}.summary{background:#fff;padding:22px;border:1px solid var(--line);border-radius:18px;height:max-content}.row{display:flex;justify-content:space-between;gap:15px;margin:9px 0}.success{padding:45px 20px;background:#fff;border-radius:20px;text-align:center}.tag{display:inline-block;padding:5px 9px;border-radius:999px;background:#f4e4d3;font-size:10px;margin:3px}.resultNote{padding:15px 0;color:var(--muted)}@media(max-width:1000px){.pageGrid{grid-template-columns:repeat(2,1fr)}.detail,.checkoutGrid{grid-template-columns:1fr}}@media(max-width:600px){.pageGrid{grid-template-columns:repeat(2,1fr)}.detailImage{border-radius:20px}}
