@charset "UTF-8";
:root{--forest:#263d31;--cream:#fbf7ef;--ink:#263d31;--muted:#6d736a;--line:#deded2;--purple:#503554;--rose:#a84463;--lime:#d9edb0;--radius:16px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rose);outline-offset:4px}button,input,select,textarea{color:inherit}a.button{text-decoration:none}.skip-link{position:absolute;top:-80px;left:12px;background:white;padding:14px;z-index:99}.skip-link:focus{top:12px}.announcement{background:var(--forest);color:#fff;text-align:center;font-size:12px;padding:11px 20px;letter-spacing:.3px}.announcement span{margin-left:38px;color:#dce7d2}.shop-header{height:100px;padding:0 5%;display:flex;align-items:center;gap:35px;background:var(--cream);border-bottom:1px solid var(--line)}.shop-logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none;flex-shrink:0}.shop-logo img{object-fit:contain;max-width:80px}.shop-logo span{font-size:35px;font-weight:750;letter-spacing:-1.8px}.shop-logo small{display:block;font-size:7px;letter-spacing:2.8px;text-align:center;margin-top:5px}.shop-header nav{display:flex;gap:30px;margin:auto}.shop-header nav a{text-decoration:none;font-size:14px}.shop-header nav a:hover{text-decoration:underline}.account-link{font-size:14px;text-decoration:none;font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu{display:none;border:0;background:none;font-size:24px}.hero{padding:75px 5% 65px;display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;max-width:1600px;margin:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.1px;text-transform:uppercase;margin:0 0 20px;color:#68735f}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,serif;font-size:clamp(40px,4.9vw,76px);letter-spacing:-2.8px;font-weight:400;line-height:1.06;margin-bottom:26px}h2{font-family:Georgia,serif;font-size:clamp(30px,3vw,45px);font-weight:400;letter-spacing:-1.5px;margin-bottom:10px}h3{font-size:18px;font-weight:600;line-height:1.3}.hero-description{font-size:17px;color:#626b5f;line-height:1.8;max-width:490px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 18px}.button{border:1px solid var(--forest);border-radius:7px;padding:15px 19px;display:inline-flex;justify-content:center;align-items:center;gap:20px;font-size:13px;font-weight:600;background:transparent;line-height:1.35;min-height:46px}.primary{background:var(--forest);color:white}.primary:hover{background:#38533f}.secondary{background:transparent}.secondary:hover{background:#eeeee2}.small-copy,.muted{color:var(--muted);font-size:12px;line-height:1.7}.hero-scene{height:480px;border-radius:48% 48% 10px 10px;background:#e5e7db;position:relative;isolation:isolate;overflow:hidden;border-bottom:30px solid #d3d7c7}.hero-poster{position:absolute;background:#e6dced;left:13%;top:12%;width:49%;height:72%;box-shadow:14px 15px 17px #263d3118;transform:rotate(-8deg);padding:14%;color:#503554}.hero-poster span{display:block;font-family:Georgia,serif;font-size:clamp(25px,3.2vw,49px);line-height:.98;letter-spacing:-2px}.hero-poster em{font-size:1.3em}.hero-poster small{display:block;font-size:6px;letter-spacing:1.7px;margin-top:24px;white-space:nowrap}.hero-card{position:absolute;bottom:10%;left:3%;width:40%;height:25%;background:#fffefa;transform:rotate(7deg);padding:18px;font-family:Georgia,serif;font-size:32px;box-shadow:9px 9px 12px #263d3120}.hero-card small{display:block;font:6px Arial;letter-spacing:1.5px;margin-top:20px}.hero-cup{position:absolute;bottom:5%;right:14%;width:25%;height:36%;background:linear-gradient(90deg,#ead8c3,#fff1dd 28%,#eadac4);border-radius:9px 9px 34px 34px;box-shadow:8px 12px 15px #263d3125;display:flex;align-items:center;justify-content:center;font:26px/1.05 Georgia;text-align:center;transform:rotate(5deg)}.hero-cup:after{content:"";position:absolute;right:-32%;top:16%;width:43%;height:52%;border:12px solid #ead8c3;border-left:0;border-radius:0 40px 40px 0;z-index:-1}.scene-seal{position:absolute;right:7%;top:8%;border-radius:50%;background:#d9edb0;padding:22px;font:25px/1.1 Georgia;text-align:center;transform:rotate(13deg)}.scene-caption{position:absolute;bottom:-22px;left:8%;font-size:9px}.section{padding:55px 5%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:30px}.section-heading>a{font-size:13px;white-space:nowrap}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}.product-card{text-decoration:none;display:block}.product-image{aspect-ratio:1.06;background:#e5e7da;border-radius:12px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.product-image svg,.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.product-card:hover .product-image svg,.product-card:hover .product-image img{transform:scale(1.035)}.product-card h3{margin:16px 0 7px;font-size:16px}.product-card p{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:10px}.product-price{font-size:15px;font-weight:600}.price-basis{font-size:11px;color:var(--muted);display:block;font-weight:400;margin-top:5px}.product-tag{position:absolute;top:13px;left:13px;font-size:9px;letter-spacing:.7px;background:var(--cream);border-radius:30px;padding:7px 10px}.ways{background:#e7eadd;border-radius:var(--radius);display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding:40px}.ways b{font:italic 28px Georgia;color:var(--rose);display:block;margin-bottom:18px}.ways h3{font:25px Georgia;margin-bottom:14px}.ways p{font-size:13px;line-height:1.8;color:#69715f}.wide-banner{background:var(--purple);color:var(--cream);padding:42px;border-radius:var(--radius);display:flex;justify-content:space-between;gap:30px;align-items:center}.wide-banner p{line-height:1.7;max-width:550px;font-size:14px}.wide-banner .button{border-color:var(--cream);color:var(--cream);flex-shrink:0}.page-intro{padding:55px 5% 25px;max-width:1600px;margin:auto}.page-intro h1{font-size:54px;max-width:800px}.page-intro p{color:var(--muted);line-height:1.7;max-width:700px}.filters{display:flex;gap:15px;flex-wrap:wrap;align-items:end;margin-bottom:18px}.filters label{flex:1;min-width:180px}.filters input,.filters select{width:100%}.field-label,label{display:block;font-size:12px;font-weight:600;margin-bottom:10px}input,select,textarea{border:1px solid #d5d7cc;background:white;border-radius:6px;padding:12px;width:100%;margin-top:7px;min-width:0}textarea{resize:vertical;min-height:90px}.result-count{font-size:12px;color:var(--muted);margin:20px 0}.category-pills{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 30px}.category-pills a,.tag{font-size:12px;padding:10px 16px;border:1px solid var(--line);border-radius:30px;text-decoration:none}.category-pills a.active{background:var(--forest);color:white;border-color:var(--forest)}.product-detail{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;padding-top:20px}.product-detail .product-image{aspect-ratio:1}.product-detail h1{font-size:45px}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:25px}.product-details-copy>p{line-height:1.8;font-size:14px;color:var(--muted)}.variant-note{padding:16px;border-radius:8px;background:#eeeee5;font-size:12px;line-height:1.8;margin:16px 0}.qty-options{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 22px}.qty-option{min-width:65px;padding:12px;border:1px solid var(--line);border-radius:7px;background:white;font-size:13px}.qty-option small{display:block;font-size:10px;margin-top:7px;font-weight:400}.qty-option.selected{border:2px solid var(--forest);padding:11px;background:#e8eddf}.selected-total{font-size:29px;font-weight:500;margin:18px 0 5px}.product-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.notice{padding:16px 20px;border:1px solid #d2d8c8;border-radius:9px;background:#edf2e5;font-size:13px;line-height:1.8;margin:20px 0}.notice.error{background:#f8e8e8;border-color:#dbb7b7}.notice:empty{display:none}.text-page{max-width:850px;margin:auto;padding:60px 25px 90px}.text-page h1{font-size:49px}.text-page h2{font-size:28px;margin-top:38px}.text-page p,.text-page li{font-size:15px;line-height:1.9;color:#626b5f}.text-page details{border-bottom:1px solid var(--line);padding:20px 0}.text-page summary{font-size:17px;cursor:pointer}.text-page details p{margin-top:18px}.template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.template-card{background:transparent;border:0;text-align:left;padding:0}.template-art{height:280px;background:#eae7e0;padding:30px;display:flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden}.template-art svg{max-width:100%;max-height:100%;height:auto;filter:drop-shadow(5px 7px 5px #0002)}.template-card h3{font-size:14px;margin:15px 0 7px}.template-card p{font-size:12px;color:var(--muted)}.account-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:25px}.panel{background:#fffdf7;border:1px solid var(--line);border-radius:12px;padding:28px}.panel h2{font-size:28px}.panel h3{margin-top:5px}.stack{display:grid;gap:18px}.list-row{padding:20px 0;border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;align-items:center}.list-row:last-child{border-bottom:0}.list-row p{margin:7px 0 0;font-size:12px;line-height:1.7;color:var(--muted)}.list-row h3{font-size:15px;margin:0}.status{display:inline-block;font-size:10px;background:#edf0e4;border-radius:20px;padding:7px 10px}.admin-nav{display:flex;gap:12px;margin:20px 0 30px;flex-wrap:wrap}.admin-nav a{font-size:13px;border-bottom:2px solid transparent;padding:10px 0;margin-right:12px;text-decoration:none}.admin-nav a.active{border-color:var(--forest)}.admin-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.metric{padding:25px;border:1px solid var(--line);border-radius:12px;background:#fffdf7}.metric strong{display:block;font:40px Georgia;margin-bottom:10px}.metric span{font-size:12px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}.check-label{display:flex;align-items:center;gap:10px;line-height:1.6}.check-label input{width:18px;margin:0}.empty{padding:40px 0;text-align:center}.empty h2{font-size:31px}.empty p{color:var(--muted);line-height:1.8}.shop-footer{padding:55px 5% 20px;background:#e9eadd;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;font-size:12px;margin-top:45px}.shop-footer p{font:20px Georgia;margin:20px 0}.shop-footer strong{display:block;margin-bottom:20px}.shop-footer>div>a:not(.shop-logo){display:block;margin:13px 0;text-decoration:none;color:#66705e}.shop-footer a:hover{text-decoration:underline}.footer-bottom{grid-column:1/-1;border-top:1px solid #cfd4c6;padding-top:20px;display:flex;justify-content:space-between;color:#69715f}.shop-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(120px);background:var(--forest);color:white;padding:18px 25px;border-radius:10px;box-shadow:0 8px 30px #0002;z-index:100;max-width:90vw;transition:transform .2s;font-size:13px}.shop-toast.show{transform:translateX(-50%) translateY(0)}.load-more{margin:35px auto;display:block}.loading-note{padding:60px 5%;font-size:15px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1600px){.shop-header,.shop-footer{padding-left:max(5%,calc((100% - 1440px)/2));padding-right:max(5%,calc((100% - 1440px)/2))}}
@media(max-width:1000px){.hero{gap:5%;padding-top:45px}.hero-scene{height:400px}.hero-actions{gap:9px}.hero-actions .button{font-size:12px;padding:13px}.shop-header{gap:20px;height:85px}.shop-header nav{gap:20px}.product-grid,.template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ways{gap:25px;padding:28px}.product-detail{gap:5%}.hero-cup{font-size:22px}.template-art{height:240px}}
@media(max-width:720px){.announcement{font-size:10px}.announcement span{display:none}.shop-header{height:78px;gap:18px;flex-wrap:wrap;position:relative}.shop-logo span{font-size:29px}.shop-logo img{width:29px;height:33px}.shop-header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:25px 5%;background:var(--cream);border-bottom:1px solid var(--line);z-index:20;flex-direction:column;gap:25px}.shop-header nav.open{display:flex}.account-link{margin-left:auto;font-size:12px}.mobile-menu{display:block}.hero{grid-template-columns:1fr;padding-top:40px;gap:30px}.hero h1{font-size:50px;letter-spacing:-2px;max-width:500px}.hero-description{font-size:15px}.hero-scene{height:360px;max-width:480px;width:100%;margin:auto}.hero-poster span{font-size:36px}.hero-cup{font-size:23px}.scene-seal{font-size:22px;padding:17px}.hero-actions .button{padding:14px 16px}.section{padding:35px 5%}.section-heading{align-items:start}.section-heading h2{font-size:31px}.section-heading>a{font-size:11px;padding-top:8px}.product-grid,.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.product-card h3{font-size:14px}.product-card p{font-size:11px}.product-price{font-size:13px}.product-tag{font-size:8px;padding:6px 8px;left:9px;top:9px}.ways{grid-template-columns:1fr;gap:22px}.ways b{float:left;margin-right:18px;margin-top:2px}.ways h3{font-size:22px;margin-bottom:10px}.ways p{margin:0 0 0 45px}.wide-banner{padding:28px;display:block}.wide-banner .button{margin-top:10px}.shop-footer{grid-template-columns:1fr 1fr;gap:35px 25px;padding-top:40px}.shop-footer>div:first-child{grid-column:1/-1}.footer-bottom{display:block;line-height:2}.footer-bottom span{display:block}.page-intro{padding-top:35px}.page-intro h1{font-size:40px;letter-spacing:-1.5px}.product-detail{grid-template-columns:1fr;gap:30px}.product-detail h1{font-size:36px}.product-detail .product-image{max-height:430px}.account-grid{grid-template-columns:1fr}.admin-metrics{gap:10px}.metric{padding:17px 12px}.metric strong{font-size:30px}.metric span{font-size:10px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.panel{padding:20px}.list-row{align-items:start;gap:12px}.list-row .button{font-size:11px;padding:10px}.template-art{height:210px;padding:20px}.template-card h3{font-size:12px}.text-page{padding-top:40px}.text-page h1{font-size:40px}.text-page p,.text-page li{font-size:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
