/* z.shop site-wide polish v1
   Small, durable consistency/accessibility layer. It deliberately avoids
   redesigning page-specific identities and only normalises shared behaviour. */
:root{
  --zs-polish-green:#073f31;
  --zs-polish-gold:#c99c4a;
  --zs-polish-ink:#17231f;
  --zs-polish-muted:#68736f;
  --zs-polish-bg:#f6f5f1;
  --zs-polish-card:#fffaf3;
  --zs-polish-line:#e7ddce;
  --zs-polish-shadow:0 14px 38px rgba(20,51,40,.065);
}
html{scroll-padding-top:110px}
body{overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
main[id],section[id],[id][tabindex]{scroll-margin-top:115px}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid rgba(201,156,74,.55)!important;outline-offset:3px!important}
:where(button,input,select,textarea){font:inherit}
button,[role="button"],summary{touch-action:manipulation}
button:disabled,[aria-disabled="true"]{cursor:not-allowed}
:where(input,select,textarea){caret-color:var(--zs-polish-green)}
:where(input,select,textarea):focus{border-color:rgba(7,63,49,.45)!important;box-shadow:0 0 0 3px rgba(7,63,49,.08)!important}
img{max-width:100%}
.zs-polish-container{width:min(1180px,calc(100% - 32px));margin-inline:auto}

/* About page: the markup already existed; this supplies the missing visual system. */
.zs-about-page{background:var(--zs-polish-bg);color:var(--zs-polish-ink)}
.zs-about-page .zs-page-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 70px}
.zs-about-page .zs-page-hero{position:relative;overflow:hidden;padding:48px 44px;border-radius:30px;background:linear-gradient(135deg,#073f31,#0d684f);color:#fff;box-shadow:var(--zs-polish-shadow)}
.zs-about-page .zs-page-hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;left:-110px;top:-170px;background:rgba(255,255,255,.045)}
.zs-about-page .zs-page-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#e7bd6e;font-size:11px;font-weight:900}
.zs-about-page .zs-page-hero h1{position:relative;z-index:1;margin:13px 0 8px;font-size:36px;line-height:1.45}
.zs-about-page .zs-page-hero p{position:relative;z-index:1;max-width:720px;margin:0;color:rgba(255,255,255,.78);font-size:13px;line-height:2}
.zs-about-page .zs-page-panel{background:#fff;border:1px solid var(--zs-polish-line);border-radius:24px;box-shadow:0 10px 30px rgba(20,51,40,.04)}
.zs-about-page .zs-about-story{margin-top:18px;padding:28px}
.zs-about-page .zs-about-story h2{margin:0 0 10px;font-size:22px;color:var(--zs-polish-green)}
.zs-about-page .zs-about-story p{margin:0;color:var(--zs-polish-muted);font-size:12px;line-height:2.1}
.zs-about-page .zs-about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.zs-about-page .zs-about-values .zs-page-panel{padding:24px}
.zs-about-page .zs-about-values i{width:46px;height:46px;border-radius:14px;background:#edf4f1;color:var(--zs-polish-green);display:grid;place-items:center;font-size:22px}
.zs-about-page .zs-about-values h3{margin:14px 0 7px;font-size:16px;color:var(--zs-polish-ink)}
.zs-about-page .zs-about-values p{margin:0;color:var(--zs-polish-muted);font-size:10.5px;line-height:1.95}
.zs-about-page .zs-about-contact{margin-top:14px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.zs-about-page .zs-about-contact h2{margin:0 0 6px;font-size:20px}
.zs-about-page .zs-about-contact p{margin:0;color:var(--zs-polish-muted);font-size:11px}
.zs-about-page .zs-about-contact>a{min-height:46px;padding:0 18px;border-radius:14px;background:var(--zs-polish-green);color:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:11px;font-weight:900;white-space:nowrap}

/* FAQ: native details/summary for keyboard and screen-reader friendly disclosure. */
.zs-faq-page{background:var(--zs-polish-bg);color:var(--zs-polish-ink)}
.zs-faq-main{padding-bottom:70px}
.zs-faq-hero{padding:34px 0 22px}
.zs-faq-hero .zs-polish-container{padding:38px 40px;border-radius:28px;background:linear-gradient(135deg,#073f31,#0d684f);color:#fff;box-shadow:var(--zs-polish-shadow)}
.zs-faq-kicker{display:inline-flex;align-items:center;gap:7px;color:#e7bd6e;font-size:10px;font-weight:900}
.zs-faq-hero h1{margin:10px 0 7px;font-size:32px;line-height:1.5}
.zs-faq-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.76);font-size:11.5px;line-height:2}
.zs-faq-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.zs-faq-actions a{min-height:43px;padding:0 14px;border:1px solid rgba(255,255,255,.23);border-radius:13px;color:#fff;display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-size:10px;font-weight:900}
.zs-faq-actions a.is-primary{background:#fff;color:var(--zs-polish-green);border-color:#fff}
.zs-faq-content{padding-top:2px}
.zs-faq-list{display:grid;gap:10px;max-width:900px;margin:0 auto}
.zs-faq-item{background:#fff;border:1px solid var(--zs-polish-line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(20,51,40,.035)}
.zs-faq-item summary{list-style:none;min-height:62px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;font-size:12px;font-weight:900;color:var(--zs-polish-ink)}
.zs-faq-item summary::-webkit-details-marker{display:none}
.zs-faq-item summary i{width:32px;height:32px;border-radius:10px;background:#edf4f1;color:var(--zs-polish-green);display:grid;place-items:center;flex:0 0 auto;transition:transform .18s ease}
.zs-faq-item[open] summary i{transform:rotate(180deg)}
.zs-faq-item>div{border-top:1px solid #f0e9df;padding:15px 18px 18px}
.zs-faq-item p{margin:0;color:var(--zs-polish-muted);font-size:10.5px;line-height:2.05}
.zs-faq-next{max-width:900px;margin:14px auto 0;padding:22px 24px;border-radius:20px;background:#fffaf3;border:1px solid var(--zs-polish-line);display:flex;align-items:center;justify-content:space-between;gap:22px}
.zs-faq-next>div:first-child>span{color:var(--zs-polish-gold);font-size:9px;font-weight:900}
.zs-faq-next h2{font-size:18px;margin:5px 0}
.zs-faq-next p{font-size:9.5px;color:var(--zs-polish-muted);line-height:1.9;margin:0}
.zs-faq-next>div:last-child{display:flex;gap:8px;flex:0 0 auto}
.zs-faq-next a{min-height:42px;padding:0 13px;border-radius:12px;border:1px solid var(--zs-polish-line);background:#fff;color:var(--zs-polish-green);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:900;white-space:nowrap}
.zs-faq-next a:first-child{background:var(--zs-polish-green);color:#fff;border-color:var(--zs-polish-green)}

/* Shared content polish */
.zs-shell-footer a,.zs-shell-desktop-nav a,.zs-shell-drawer a,.zs-shell-bottom-nav a{text-underline-offset:3px}
.zs-shell-smart-back{min-height:44px}
.zs-shell-skip:focus{z-index:2147483647}
.zs-contact-card,.zshop-legal-section,.zshop-page-block{overflow-wrap:anywhere}

@media(max-width:767px){
  .zs-polish-container,.zs-about-page .zs-page-shell{width:min(100% - 20px,1180px)}
  .zs-about-page .zs-page-shell{padding-top:12px;padding-bottom:45px}
  .zs-about-page .zs-page-hero{padding:28px 20px;border-radius:22px}
  .zs-about-page .zs-page-hero h1{font-size:25px;margin-top:10px}
  .zs-about-page .zs-page-hero p{font-size:10px}
  .zs-about-page .zs-about-story{padding:20px;margin-top:10px;border-radius:18px}
  .zs-about-page .zs-about-story h2{font-size:17px}
  .zs-about-page .zs-about-story p{font-size:9.5px}
  .zs-about-page .zs-about-values{grid-template-columns:1fr;gap:9px;margin-top:9px}
  .zs-about-page .zs-about-values .zs-page-panel{padding:18px;border-radius:18px;display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:start}
  .zs-about-page .zs-about-values i{width:42px;height:42px;grid-row:1/3}
  .zs-about-page .zs-about-values h3{margin:1px 0 4px;font-size:13px}
  .zs-about-page .zs-about-values p{font-size:8.8px}
  .zs-about-page .zs-about-contact{margin-top:9px;padding:19px;border-radius:18px;align-items:stretch;flex-direction:column;gap:13px}
  .zs-about-page .zs-about-contact h2{font-size:16px}
  .zs-about-page .zs-about-contact p{font-size:9px;line-height:1.8}
  .zs-about-page .zs-about-contact>a{width:100%;min-height:44px}

  .zs-faq-main{padding-bottom:45px}
  .zs-faq-hero{padding:12px 0 10px}
  .zs-faq-hero .zs-polish-container{padding:25px 18px;border-radius:22px}
  .zs-faq-hero h1{font-size:24px;margin:8px 0 5px}
  .zs-faq-hero p{font-size:9.4px;line-height:1.9}
  .zs-faq-actions{margin-top:15px}
  .zs-faq-actions a{min-height:40px;font-size:8.8px}
  .zs-faq-list{gap:8px}
  .zs-faq-item{border-radius:15px}
  .zs-faq-item summary{min-height:57px;padding:0 14px;font-size:10px;line-height:1.7}
  .zs-faq-item summary i{width:29px;height:29px}
  .zs-faq-item>div{padding:12px 14px 15px}
  .zs-faq-item p{font-size:8.8px;line-height:1.95}
  .zs-faq-next{margin-top:9px;padding:18px;border-radius:16px;flex-direction:column;align-items:stretch;gap:13px}
  .zs-faq-next h2{font-size:15px}
  .zs-faq-next p{font-size:8.5px}
  .zs-faq-next>div:last-child{display:grid;grid-template-columns:1fr 1fr}
  .zs-faq-next a{min-height:40px;font-size:8.2px;padding:0 8px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}
}
