/* shared polish + new pages */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
.to-top{position:fixed;left:22px;bottom:24px;width:44px;height:44px;border-radius:50%;border:0;background:var(--deep);color:var(--lime);font-size:18px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(14px);transition:.3s;z-index:90}.to-top.show{opacity:1;pointer-events:auto;transform:none}.to-top:hover{background:var(--green)}
.hero h1 strong{background:linear-gradient(90deg,#dfff68,#9dffc9);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-art img{animation:kb 18s ease-in-out infinite alternate}@keyframes kb{to{transform:scale(1.07)}}
.trust-row div{transition:.3s}.trust-row div:hover{transform:translateY(-3px)}
.button,.outline-button,.header-actions a{transition:.25s}.header-actions a:hover{background:var(--green);color:#fff}
.catalog-card,.related-card{transition:.35s}.catalog-card:hover{transform:translateY(-6px)}.catalog-card{position:relative}
.soldout{position:absolute;top:14px;left:14px;background:#b3261e;color:#fff;font-style:normal;font-size:11px;padding:2px 12px;border-radius:99px}
.guide-grid article{padding:10px;border-radius:24px;transition:.3s}.guide-grid article:hover{background:var(--cream);transform:translateY(-4px)}
.footer{background:var(--cream);margin-top:60px;border-radius:36px 36px 0 0}.footer-grid{grid-template-columns:1.7fr repeat(3,1fr)}
.footer .social{display:flex;gap:8px;margin-top:14px}.footer .social a{width:34px;height:34px;display:grid!important;place-items:center;border-radius:50%;background:var(--white);margin:0!important;font-size:12px!important;font-weight:800}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
/* inner pages */
.xhero{background:linear-gradient(135deg,#102f23,#071f17);color:#fff;border-radius:28px;margin:18px;padding:64px 0 54px}.xhero h1{font-size:clamp(30px,4vw,46px);margin:8px 0}.xhero p{color:#b9cbc2;max-width:560px;font-size:14px}
.xwrap{max-width:1000px;margin:46px auto 0;padding-inline:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--shadow);margin-bottom:22px}.card h2{font-size:19px;margin-bottom:10px}.card p,.card li{font-size:13.5px;color:#41534b;line-height:2}.card ul{padding-right:20px}
.faq details{border:1px solid var(--line);border-radius:16px;padding:14px 18px;margin-bottom:10px;background:#fff;transition:.2s}.faq details[open]{background:var(--cream);border-color:var(--green)}.faq summary{cursor:pointer;font-weight:800;font-size:14px}.faq details p{margin-top:8px;font-size:13px;color:#41534b}
.form{display:grid;gap:12px}.form label{font-size:12.5px;font-weight:700;display:grid;gap:5px}.form input,.form textarea,.form select{border:1px solid var(--line);border-radius:14px;padding:11px 14px;background:var(--cream);font:inherit;font-size:13px;width:100%}.form input:focus,.form textarea:focus,.form select:focus{outline:0;border-color:var(--green);background:#fff;box-shadow:0 0 0 4px rgba(8,122,85,.1)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:700px){.row2{grid-template-columns:1fr}}
.cart-item{display:grid;grid-template-columns:90px 1fr auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.cart-item img{width:90px;height:76px;object-fit:cover;border-radius:14px;background:var(--cream)}.cart-item b{display:block;font-size:14px}.cart-item small{color:var(--muted)}
.qty{display:inline-flex;align-items:center;gap:8px;margin-top:6px}.qty button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:15px}.qty button:hover{background:var(--green);color:#fff}
.rm{border:0;background:none;color:#b3261e;font-size:12px;font-weight:700}
.total{display:flex;justify-content:space-between;font-weight:900;font-size:17px;padding-top:16px}
.empty{text-align:center;padding:40px 10px;color:var(--muted)}
.badge{display:inline-block;padding:2px 12px;border-radius:99px;font-size:11px;font-weight:800;background:var(--cream)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.steps div{background:var(--cream);border-radius:16px;padding:14px;font-size:12.5px;text-align:center}.steps b{display:block;color:var(--green);font-size:20px}@media(max-width:700px){.steps{grid-template-columns:1fr 1fr}}
/* account modal */
.am-overlay{position:fixed;inset:0;z-index:200;background:rgba(7,31,23,.55);backdrop-filter:blur(4px);display:grid;place-items:center;padding:16px;animation:amf .2s}
.am-overlay[hidden]{display:none}
@keyframes amf{from{opacity:0}}
.am-box{position:relative;background:#fff;border-radius:24px;padding:30px 26px 24px;width:min(420px,100%);max-height:92vh;overflow:auto;box-shadow:0 30px 80px rgba(7,31,23,.35);animation:amu .25s}
@keyframes amu{from{transform:translateY(18px);opacity:0}}
.am-box h2{font-size:20px;margin-bottom:6px}
.am-sub{font-size:12.5px;color:var(--muted);margin-bottom:16px;line-height:1.9}
.am-close{position:absolute;top:12px;left:14px;width:34px;height:34px;border-radius:50%;border:0;background:var(--cream);font-size:22px;line-height:1;cursor:pointer}
.am-close:hover{background:var(--green);color:#fff}
.am-box .form input[type=tel]{direction:ltr;text-align:right}
.am-box .form input[type=password]{direction:ltr;text-align:right}
.am-err{color:#b3261e;font-size:12px;font-weight:700;min-height:0}
.am-err:empty{display:none}
.am-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:#41534b}
.am-links a{color:var(--green);font-weight:800}
body.am-lock{overflow:hidden}
@media(max-width:1000px){.header-actions a[href="account.html"]{display:inline-block!important}}


.old-price{color:var(--muted);font-weight:500;font-size:.85em;margin-left:4px}.disc{font-style:normal;background:#b3261e;color:#fff;font-size:10.5px;font-weight:800;padding:2px 9px;border-radius:99px;margin-right:4px;white-space:nowrap}

.am-box:has(.ord-card){width:min(520px,100%)}
.ord-card{border:1px solid var(--line);border-radius:18px;padding:14px;margin-bottom:12px;background:var(--cream)}
.ord-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.ord-card small{display:block;color:var(--muted);font-size:12px;line-height:1.9}
.badge.bad{background:#fde7e5;color:#b3261e}
.trk{display:grid;grid-template-columns:repeat(4,1fr);margin-top:14px;position:relative}
.trk-s{text-align:center;position:relative;font-size:10.5px;color:var(--muted)}
.trk-s i{display:grid;place-items:center;width:26px;height:26px;margin:0 auto 6px;border-radius:50%;background:#fff;border:2px solid var(--line);font-style:normal;font-weight:800;font-size:12px;position:relative;z-index:1}
.trk-s:not(:last-child)::after{content:"";position:absolute;top:12px;right:50%;width:100%;height:2px;background:var(--line)}
.trk-s.done::after{background:var(--green)}
.trk-s.done i{background:var(--green);border-color:var(--green);color:#fff}
.trk-s.now i{background:#fff;border-color:var(--green);color:var(--green);box-shadow:0 0 0 4px rgba(8,122,85,.15)}
.trk-s.now,.trk-s.done{color:var(--ink);font-weight:700}
.trk-cancel{margin-top:10px;color:#b3261e;font-size:12.5px;font-weight:700}
.fest-code{color:var(--green)!important;font-weight:700}

.pg{height:10px;background:#e7e5dc;border-radius:99px;overflow:hidden;margin:8px 0 4px}.pg i{display:block;height:100%;background:linear-gradient(90deg,#087a55,#7be0b0);border-radius:99px}
.fest-box{background:linear-gradient(135deg,#f0faf5,#e6f5ed);border:1px solid #bfe3cf;border-radius:18px;padding:14px;margin-bottom:14px}.fest-box small{display:block;color:#41534b;font-size:12px;line-height:1.9}
.fest-h{display:flex;justify-content:space-between;align-items:center;font-size:13.5px}.fest-h a{color:var(--green);font-weight:800;font-size:12px}
.fest-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.fest-chips span{background:#fff;border:1px dashed var(--green);color:var(--green);font-weight:800;font-size:12px;padding:3px 10px;border-radius:99px}
.fest-win{background:#fff6d6;border:1px solid #f0d36b;border-radius:16px;padding:12px 14px;margin-bottom:12px;font-size:13px;font-weight:700;line-height:1.9}

/* Hero: promo image keeps subject on the left, text stays on the clean right side */
.hero-art img{object-position:left center}
.hero-art:after{background:linear-gradient(270deg,rgba(5,24,17,.92) 0%,rgba(5,24,17,.62) 30%,rgba(5,24,17,0) 55%)}
@media(max-width:680px){
.hero-art img{object-position:center top}
.hero-art:after{background:linear-gradient(0deg,rgba(5,24,17,.96) 0%,rgba(5,24,17,.82) 38%,rgba(5,24,17,0) 62%)}
}

/* bigger hamburger menu */
.mobile-drawer{width:min(90vw,400px)}
.mobile-drawer nav a{font-size:20px;font-weight:800;padding:20px 6px}
.mobile-drawer nav span{font-size:22px}
.drawer-cta{font-size:17px!important;padding:16px 20px!important}
.drawer-head button{font-size:38px!important}

/* remove click/focus outlines on links, cards and buttons */
a,a:focus,a:active,a:focus-visible,
.catalog-card,.catalog-card:focus,.catalog-card:active,.catalog-card:focus-visible,
.product-card,.product-card:focus,.product-card:active,.product-card:focus-visible,
button,button:focus,button:active,button:focus-visible,
.button:focus,.button:focus-visible,.outline-button:focus,.outline-button:focus-visible{
  outline:none!important;-webkit-tap-highlight-color:transparent}
a img,a:focus img{outline:none!important}
:focus-visible{outline:none!important}
