:root { --navy:#102c62; --navy-deep:#091d43; --cream:#fffaf0; --sand:#f1e8d9; --orange:#e86e35; --ink:#16233d; --muted:#6e7480; --line:#e7dfd2; --white:#fff; }
* { box-sizing:border-box; }
html { background:#e5e7eb; }
body { margin:0; background:var(--cream); color:var(--ink); font-family:"DM Sans",Arial,sans-serif; min-width:320px; }
button,input,textarea { font:inherit; }
button { cursor:pointer; }
.app-shell { background:var(--cream); max-width:620px; min-height:100dvh; margin:0 auto; padding-bottom:88px; box-shadow:0 0 32px #17255418; }
.topbar { height:68px; padding:12px 20px; display:flex; justify-content:space-between; align-items:center; background:var(--cream); position:sticky; top:0; z-index:5; border-bottom:1px solid #eee7dc; }
.brand { display:inline-flex; gap:8px; align-items:center; color:var(--navy); text-decoration:none; font-family:Fraunces,serif; font-size:1.28rem; letter-spacing:-.03em; }.brand b{font-weight:600}.brand-mark{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--navy);color:#ffd076;font-size:1.05rem;font-family:Fraunces,serif}.cart-trigger{position:relative;border:0;background:var(--sand);width:42px;height:42px;border-radius:50%;font-size:1.05rem}.cart-count{position:absolute;right:-4px;top:-4px;background:var(--orange);color:#fff;width:19px;height:19px;border-radius:50%;font-size:.71rem;display:grid;place-items:center;font-weight:700}
.view{display:none;padding:0 20px 24px}.view.is-active{display:block}.hero{margin:0 -20px;padding:56px 26px 44px;color:var(--white);background:radial-gradient(circle at 85% 8%,#39629d 0,transparent 33%),linear-gradient(140deg,var(--navy) 0%,var(--navy-deep) 100%);overflow:hidden;position:relative}.hero:after{content:"✦";font-size:15rem;color:#ffffff0f;position:absolute;right:-32px;bottom:-100px;font-family:serif}.hero>*{position:relative;z-index:1}.eyebrow{color:var(--orange);font-size:.68rem;font-weight:700;letter-spacing:.14em;margin:0 0 9px}.hero .eyebrow{color:#ffc364}.hero h1,.page-heading h1,h2{font-family:Fraunces,Georgia,serif;line-height:1.01;letter-spacing:-.045em}.hero h1{font-size:clamp(2.35rem,10vw,3.75rem);margin:0 0 17px;max-width:450px}.hero h1 em,h2 em,.page-heading em{font-weight:500;color:#ffc364}.hero p:not(.eyebrow){max-width:440px;line-height:1.55;margin:0 0 24px;color:#e3eafa;font-size:.98rem}.button{border:0;border-radius:10px;padding:14px 16px;font-weight:700;min-height:48px;display:inline-flex;gap:10px;align-items:center;justify-content:center}.button-light{background:#fff;color:var(--navy)}.button-primary{width:100%;background:var(--navy);color:#fff;margin-top:4px}.quick-section{padding:27px 0 20px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}.section-title h2{font-size:1.65rem;margin:0}.text-button{color:var(--navy);background:none;border:0;font-weight:700;padding:8px 0}.quick-products{display:flex;gap:12px;overflow:auto;margin-right:-20px;padding-right:20px;scrollbar-width:none}.quick-products::-webkit-scrollbar{display:none}.quick-card{background:var(--white);min-width:168px;width:168px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.quick-card img{width:100%;height:112px;object-fit:cover;display:block}.quick-card div{padding:11px}.quick-card strong{font-size:.86rem;display:block;line-height:1.15}.quick-card span{font-size:.79rem;color:var(--orange);font-weight:700;display:block;margin-top:4px}.info-card{display:flex;align-items:center;gap:12px;border:1px solid #f0dec2;background:#fff3e3;padding:16px;border-radius:14px}.info-icon{color:var(--orange);font-size:1.6rem}.info-card strong{font-size:.92rem}.info-card p{font-size:.8rem;color:var(--muted);margin:2px 0 0}.page-heading{padding:29px 0 17px}.page-heading h1{font-size:2.3rem;margin:0 0 8px}.page-heading>p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.45}.category-tabs{display:flex;gap:8px;overflow:auto;padding:3px 0 18px;scrollbar-width:none}.tab{background:#fff;border:1px solid var(--line);padding:9px 14px;border-radius:99px;color:var(--ink);font-size:.85rem;white-space:nowrap}.tab.is-selected{background:var(--navy);color:#fff;border-color:var(--navy)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column}.product-card img{width:100%;height:137px;object-fit:cover;background:var(--sand)}.product-copy{padding:11px;display:flex;flex:1;flex-direction:column}.product-category{color:var(--orange);font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin:0 0 5px}.product-card h3{font-size:.92rem;line-height:1.15;margin:0 0 6px}.price{font-weight:700;font-size:.91rem;margin:0}.bulk{color:var(--muted);font-size:.68rem;margin:4px 0 10px;line-height:1.35}.add-button{width:100%;margin-top:auto;border:1px solid var(--navy);color:var(--navy);background:transparent;border-radius:8px;padding:9px 6px;font-size:.78rem;font-weight:700}.add-button:hover,.add-button:focus-visible{color:#fff;background:var(--navy)}.empty-state{text-align:center;border:1px dashed #d7cdbd;background:#fffdf8;padding:34px 20px;border-radius:16px}.empty-state span{display:block;font-size:2.4rem;margin-bottom:8px}.empty-state h2{font-size:1.5rem;margin:0 0 8px}.empty-state p{color:var(--muted);font-size:.9rem;margin:0 0 18px}.cart-list{background:#fff;border:1px solid var(--line);border-radius:14px;padding:4px 14px}.cart-line{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-line:last-child{border-bottom:0}.cart-line img{width:52px;height:52px;border-radius:9px;object-fit:cover;background:var(--sand)}.cart-line h3{font-size:.89rem;margin:0 0 3px;line-height:1.1}.cart-line p{font-size:.78rem;font-weight:700;color:var(--orange);margin:0}.qty-control{display:flex;align-items:center;gap:7px;justify-content:end;margin-top:6px}.qty-control button{border:1px solid var(--line);background:#fff;width:25px;height:25px;border-radius:50%;font-weight:700;color:var(--navy)}.qty-control span{font-weight:700;min-width:12px;text-align:center;font-size:.85rem}.cart-summary{padding:19px 0 0}.cart-total{display:flex;justify-content:space-between;align-items:flex-end;padding:15px;background:#eef3fa;border-radius:12px;margin-bottom:18px}.cart-total span{font-size:.85rem}.cart-total strong{font-family:Fraunces,serif;font-size:1.55rem;color:var(--navy)}.cart-total small{display:block;color:var(--muted);font-size:.68rem;margin-top:2px}.checkout{margin-top:26px;border-top:2px solid var(--navy);padding-top:24px}.checkout-title{display:flex;justify-content:space-between;align-items:start}.checkout-title h2{font-size:1.72rem;margin:0}.checkout-title>span{color:var(--orange);font-size:1.5rem}.checkout form{margin-top:17px}.checkout label,.checkout legend{display:block;font-weight:700;font-size:.84rem;margin:0 0 14px}.checkout input,.checkout textarea{width:100%;border:1px solid #d8d3ca;border-radius:9px;background:#fff;padding:12px;margin-top:6px;color:var(--ink);outline-color:var(--navy);resize:vertical}.optional{font-weight:400;color:var(--muted)}fieldset{border:0;padding:0;margin:0 0 14px}.choice-row{display:flex;gap:9px;margin-top:6px}.choice{margin:0!important;position:relative;flex:1}.choice input{position:absolute;opacity:0}.choice span{display:block;border:1px solid #d8d3ca;border-radius:9px;padding:12px 8px;text-align:center;font-size:.78rem}.choice input:checked+span{border-color:var(--navy);background:#eef3fa;color:var(--navy)}.checkout-note{font-size:.76rem;line-height:1.4;color:var(--muted);margin:0 0 13px}.form-error{min-height:1em;color:#b3261e;font-size:.8rem;margin:9px 0 0}.order-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.order-status{background:#edf5eb;color:#377143;padding:10px 14px;font-size:.78rem;font-weight:700}.order-body{padding:17px}.order-body h2{font-size:1.45rem;margin:0 0 7px}.order-body p{font-size:.87rem;color:var(--muted);line-height:1.45}.order-details{background:#faf7f0;border-radius:10px;padding:12px;margin:15px 0}.order-details div{display:flex;justify-content:space-between;font-size:.8rem;margin:6px 0}.order-details strong{color:var(--ink)}.helper{font-size:.8rem;color:var(--muted);line-height:1.45}.bottom-nav{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);max-width:620px;width:100%;background:#fff;border-top:1px solid var(--line);height:72px;display:flex;justify-content:space-around;padding:7px 7px max(7px,env(safe-area-inset-bottom))}.nav-item{flex:1;background:transparent;border:0;color:#777d8a;font-size:.67rem;display:flex;align-items:center;justify-content:center;gap:3px;flex-direction:column}.nav-item span{font-size:1.16rem;line-height:1}.nav-item.is-current{color:var(--navy);font-weight:700}.nav-item.is-current span{color:var(--orange)}
@media (min-width:540px){.view{padding-left:28px;padding-right:28px}.hero{margin-left:-28px;margin-right:-28px;padding-left:42px}.quick-products{margin-right:-28px;padding-right:28px}.product-card img{height:190px}.product-grid{gap:18px}.topbar{padding-left:28px;padding-right:28px}}
.privacy-link{text-align:center;margin:22px 0 0;font-size:.78rem}.privacy-link a{color:var(--navy);text-underline-offset:3px}
