:root{--ink:#243c32;--green:#285343;--cream:#f7f6ef;--line:#e1e5d9;--orange:#eac58a}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.5 system-ui,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:0;border-radius:12px;padding:12px 18px;background:var(--green);color:white}button:hover{filter:brightness(1.08)}button:focus-visible,a:focus-visible{outline:3px solid #c57835;outline-offset:3px}a{color:inherit}header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px max(5%,calc((100vw - 1180px)/2));background:#fff}header .brand{font-size:28px;font-weight:850;letter-spacing:-1px;text-decoration:none}header nav{display:flex;align-items:center;gap:10px}.lang{display:flex;gap:2px}.lang button{padding:7px 10px;background:transparent;color:var(--ink);border-radius:6px}.lang .active{background:#e7eddf}.announcement{text-align:center;background:#dce8cf;font-size:13px;padding:9px 15px}.wrap{max-width:1180px;margin:auto;padding:0 24px}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:40px;padding:65px 0 55px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:2px;font-weight:750}.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.06;letter-spacing:-2px;margin:20px 0}.hero p{max-width:490px;color:#657267}.hero .art{height:330px;border-radius:50% 50% 35% 35%;background:#e8dfcb;display:flex;align-items:center;justify-content:center;position:relative}.pet{font-size:150px;filter:drop-shadow(0 15px 12px #a9976a44)}.bubble{position:absolute;bottom:20px;right:15px;background:white;border-radius:18px;padding:15px;font-weight:700;box-shadow:0 6px 25px #243c3212}.benefits{display:flex;gap:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;font-size:14px;margin-bottom:42px;justify-content:space-between}.catalog-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:22px}h2{font-size:30px;letter-spacing:-.7px;margin:0}.muted{color:#667368;font-size:14px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}input,select,textarea{border:1px solid #cdd5c7;background:white;border-radius:10px;padding:11px;color:var(--ink);min-width:0}input[type=search]{flex:1;min-width:180px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.product-art{height:205px;background:#edf0e5;display:grid;place-items:center;cursor:pointer}.card:nth-child(2n) .product-art{background:#f0e5d5}.pack{background:#f8f8ee;border-radius:10px 10px 18px 18px;border:2px solid #344b37;width:105px;height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:9px 12px 0 #243c3210;transform:rotate(-5deg)}.pack b{font-size:25px}.pack span{font-size:35px}.pack small{font-size:10px;letter-spacing:2px}.card-body{padding:22px}.card h3{font-size:18px;margin:5px 0;min-height:54px}.pill{font-size:11px;font-weight:700;border-radius:20px;padding:4px 9px;background:#edf0e5;display:inline-block}.price-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px}.price-row strong{font-size:22px}.price-row button{padding:9px 16px}.story{background:var(--green);color:white;border-radius:24px;padding:35px;margin:50px 0;display:grid;grid-template-columns:1fr 1fr;gap:30px}.story p{color:#dce6db}footer{padding:30px 0;border-top:1px solid var(--line);margin-top:50px}.footer-links{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}footer button,.link{padding:0;background:none;color:inherit;text-decoration:underline}dialog{border:0;border-radius:22px;max-width:620px;width:calc(100% - 28px);max-height:90vh;padding:28px;color:var(--ink)}dialog::backdrop{background:#14261ecc}.modal-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:20px}.close{background:#edf0e5;color:var(--ink);padding:7px 12px}.cart-line{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.qty{display:flex;align-items:center;gap:9px;flex-shrink:0}.qty button{padding:4px 10px}.total{font-size:22px;font-weight:750;margin:25px 0}.full{width:100%}form{display:grid;gap:14px}label{display:grid;gap:5px;font-size:14px}label.check{display:flex;align-items:start;gap:10px}.check input{margin-top:5px}.notice{padding:14px;background:#fff2da;border-radius:12px;font-size:14px;margin:15px 0}.error{color:#a23124}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;border-radius:12px;padding:12px 24px;display:none;z-index:5}.admin{padding:35px 0}.admin textarea{width:100%;height:300px;font-family:monospace;font-size:12px}.admin-order{background:white;border:1px solid var(--line);border-radius:16px;padding:20px;margin:15px 0;overflow-wrap:anywhere}.admin-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.empty{padding:40px;text-align:center;grid-column:1/-1}.detail-art{height:200px;border-radius:12px}.summary{background:#eef1e6;border-radius:10px;padding:15px}.small{font-size:12px}html{scroll-behavior:smooth}@media(max-width:768px){header{padding:16px 20px}.hero{gap:20px;padding:35px 0}.hero .art{height:250px}.pet{font-size:100px}.benefits{gap:12px;flex-wrap:wrap}.grid{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr}.catalog-head{align-items:start}.wrap{padding:0 20px}}@media(max-width:480px){header{flex-wrap:wrap;gap:8px}header .brand{font-size:24px}header nav{gap:5px}.lang button{padding:6px 7px}.cart-button{padding:8px 12px}.hero{grid-template-columns:1fr;padding-top:30px}.hero h1{font-size:43px}.hero .art{height:210px}.bubble{padding:10px;font-size:13px}.benefits{font-size:12px;margin-bottom:30px}.grid{gap:12px}.card-body{padding:13px}.card h3{font-size:15px;min-height:68px}.product-art{height:160px}.pack{width:85px;height:120px}.price-row{flex-wrap:wrap;gap:7px}.price-row strong{font-size:19px}.price-row button{width:100%;font-size:13px}.catalog-head{display:block}.filters select{flex:1;width:100%}h2{font-size:26px}.story{padding:24px}.cart-line{flex-wrap:wrap}dialog{padding:20px}.hero p{font-size:15px}}

.purchase-controls{display:grid;gap:9px;width:100%}.quantity-label{font-size:12px}.product-quantity{display:flex;align-items:center;gap:5px}.product-quantity input{width:64px;min-width:0;text-align:center;padding:8px 3px}.product-quantity button{width:36px!important;min-height:40px;padding:5px!important;font-size:18px!important}.price-row{flex-wrap:wrap}.purchase-controls>[data-add]{width:100%}.product-quantity input:focus-visible{outline:3px solid #c57835}

.promo-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:#e5eddc;border:1px solid var(--line);border-radius:24px;margin:0 0 35px}.promo-banner h2{margin-top:10px}.promo-chip{display:inline-block;background:#dce8cf;color:var(--ink);border-radius:15px;padding:4px 9px;font-weight:750;font-size:12px}.promo-terms{background:none;color:var(--ink);text-decoration:underline;padding:0}.promo-summary{padding:15px;background:#edf0e5;border-radius:12px;margin-top:15px}.promo-line{color:var(--green);margin-top:6px}@media(max-width:600px){.promo-banner{flex-direction:column;align-items:stretch;padding:22px}.promo-banner h2{font-size:25px}}

.fund-panel{display:flex;align-items:center;gap:28px;border:1px solid var(--line);background:#fff;border-radius:24px;padding:28px;margin:35px 0}.fund-panel>div:first-child{flex:1}.fund-balance{display:grid;gap:10px;min-width:140px;text-align:center}.fund-balance strong{font-size:38px;color:var(--green)}@media(max-width:600px){.fund-panel{flex-direction:column;align-items:stretch;padding:22px}.fund-balance{text-align:left}}

.promo-carousel{margin:0 0 35px;min-width:0}.promo-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:24px;overscroll-behavior-x:contain}.promo-track::-webkit-scrollbar{display:none}.promo-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;background:#e5eddc;border:1px solid var(--line);border-radius:24px}.promo-slide>div:first-child{flex:1;min-width:0}.promo-slide h2{margin-top:12px}.promo-slide-action{display:grid;gap:12px;text-align:center;min-width:210px}.promo-big{font-size:64px;line-height:1.1;letter-spacing:-3px;color:var(--green)}.kindness-slide{background:#f3e5cc}.promo-navigation{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:12px}.promo-navigation>button{padding:7px 14px;min-height:44px}.promo-dots{display:flex;gap:4px}.promo-dots button{display:grid;place-items:center;padding:12px;width:36px;height:44px;background:none}.promo-dots span{width:9px;height:9px;border-radius:50%;background:#a6b6a7}.promo-dots [aria-pressed=true] span{background:var(--green);width:20px;border-radius:6px}.promo-position{font-size:12px;font-weight:700}.promo-track:focus-visible{outline:3px solid #c57835;outline-offset:3px}@media(max-width:600px){.promo-slide{flex-direction:column;align-items:stretch;padding:22px;gap:18px}.promo-slide h2{font-size:25px}.promo-slide-action{min-width:0;text-align:left;grid-template-columns:1fr;gap:8px}.promo-big{font-size:45px}.promo-slide p{font-size:14px}.promo-navigation{gap:10px}}

.kindness-hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:30px;padding:35px 0}.kindness-copy h1{font-size:clamp(38px,4.8vw,64px);letter-spacing:-2px;line-height:1.08;margin:18px 0;color:var(--green)}.kindness-lead{font-size:20px;font-weight:600}.kindness-picture{min-width:0}.kindness-picture img{width:100%;height:auto;display:block;border-radius:28px}.kindness-total{display:flex;align-items:center;gap:16px;padding:12px 17px;border-radius:14px;background:#e5eddc;width:fit-content;margin:20px 0}.kindness-total strong{font-size:27px}.kindness-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.kindness-link{background:none;color:var(--green);text-decoration:underline;padding:8px 0}.kindness-status{font-size:12px;line-height:1.5;color:#667368;max-width:430px}.kindness-copy>p{max-width:490px}@media(max-width:700px){.kindness-hero{grid-template-columns:1fr;gap:18px;padding:26px 0}.kindness-copy h1{font-size:42px;margin:14px 0}.kindness-lead{font-size:18px}.kindness-picture img{max-height:290px;object-fit:cover;object-position:70% center}.kindness-total{margin:14px 0}.kindness-copy .eyebrow{font-size:10px;letter-spacing:1px}}

/* Charity promotion banner: translated live text over the artwork. */
.kindness-hero{position:relative;isolation:isolate;display:block;overflow:hidden;border-radius:30px;margin:24px 0;padding:42px;min-height:530px;background:#f4f1e7;box-shadow:0 8px 30px #274e3b0b}.kindness-picture{position:absolute;inset:0;z-index:-2}.kindness-picture img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:0;max-height:none}.kindness-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f7f5ed 0%,#f7f5edf5 30%,#f7f5edce 43%,#f7f5ed00 68%)}.kindness-copy{max-width:47%}.kindness-copy h1{font-size:clamp(38px,4.5vw,62px);margin:16px 0}.kindness-copy .eyebrow{display:inline-block;background:#fff9;padding:8px 12px;border-radius:30px;font-size:10px;letter-spacing:1px}.kindness-copy>p{max-width:440px}.kindness-lead{font-size:18px}.kindness-total{background:#ffffffbd;backdrop-filter:blur(8px);margin:17px 0}.kindness-status{font-size:11px}.kindness-actions button{font-size:14px}
@media(max-width:900px) and (min-width:701px){.kindness-hero{padding:30px}.kindness-copy{max-width:55%}.kindness-hero:before{background:linear-gradient(90deg,#f7f5ed 0%,#f7f5edf0 43%,#f7f5ed00 85%)}}
@media(max-width:700px){.kindness-hero{padding:24px 20px 270px;margin:16px 0;min-height:0;border-radius:24px}.kindness-copy{max-width:100%}.kindness-copy h1{font-size:39px;letter-spacing:-1.4px}.kindness-lead{font-size:17px}.kindness-picture img{object-fit:cover;object-position:67% bottom;width:100%;height:300px;position:absolute;bottom:0}.kindness-hero:before{background:linear-gradient(180deg,#f7f5ed 0%,#f7f5ed 58%,#f7f5edb3 69%,#f7f5ed00 82%)}.kindness-status{max-width:280px}.kindness-total strong{font-size:25px}}

/* Compact mobile promotion; artwork remains behind the live text. */
@media(max-width:700px){.kindness-hero{padding:18px 16px;margin:12px 0;min-height:390px}.kindness-copy{max-width:100%}.kindness-copy .eyebrow{font-size:8px;letter-spacing:.6px;padding:6px 9px}.kindness-copy h1{font-size:32px;line-height:1.06;margin:12px 0;max-width:240px}.kindness-copy .kindness-lead{font-size:14px;line-height:1.4;margin:10px 0;max-width:255px}.kindness-copy>p:not(.kindness-lead):not(.kindness-status){font-size:12px;line-height:1.45;margin:10px 0;max-width:240px}.kindness-total{gap:10px;padding:9px 12px;margin:12px 0;font-size:12px}.kindness-total strong{font-size:22px}.kindness-actions{gap:12px}.kindness-actions button{font-size:12px;padding:10px 13px}.kindness-actions .kindness-link{padding:8px 0}.kindness-status{font-size:10px;line-height:1.35;margin:10px 0 0;max-width:240px}.kindness-picture img{position:static;width:100%;height:100%;object-fit:cover;object-position:67% center}.kindness-hero:before{background:linear-gradient(90deg,#f7f5edfa 0%,#f7f5ede8 42%,#f7f5ed92 70%,#f7f5ed35 100%)}}

.top-promos{margin:20px 0}.top-promos .kindness-hero{margin:0;flex:0 0 100%;border:0;box-shadow:none}.top-promos .promo-track{align-items:stretch}.top-promos .promo-slide:not(.kindness-hero){background:radial-gradient(circle at 85% 35%,#f6e2b7 0%,#e5eddc 65%);min-height:530px}.top-promos .promo-slide:not(.kindness-hero) h2{font-size:clamp(30px,4vw,52px);line-height:1.12;max-width:600px}.top-promos .promo-big{font-size:90px}@media(max-width:700px){.top-promos{margin:12px 0}.top-promos .promo-slide:not(.kindness-hero){min-height:390px;padding:22px;justify-content:center}.top-promos .promo-slide:not(.kindness-hero) h2{font-size:30px}.top-promos .promo-big{font-size:52px}.top-promos .promo-slide-action{min-width:0}.top-promos .promo-slide:not(.kindness-hero)>div:first-child{flex:0}}

.bult-slide .kindness-copy h2{font-size:clamp(35px,4vw,55px);line-height:1.08;margin:22px 0;letter-spacing:-1.5px}.bult-slide .kindness-lead{font-size:25px;line-height:1.4}.bult-slide .kindness-actions{margin-top:25px}@media(max-width:700px){.bult-slide .kindness-copy h2{font-size:32px;max-width:250px;margin:22px 0}.bult-slide .kindness-lead{font-size:20px;max-width:240px}.bult-slide .kindness-picture img{object-position:74% center}}
