*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:#FFFFFF;font-family:'Plus Jakarta Sans',sans-serif;color:#3D5060}
::placeholder{color:#A7B2B9}
input,textarea,button,select{font-family:inherit}

@keyframes marqueeL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marqueeR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){
  [style*="marqueeL"],[style*="marqueeR"]{animation:none !important}
}
@keyframes pesPop{0%{transform:translate(-50%,18px);opacity:0}100%{transform:translate(-50%,0);opacity:1}}

/* ---- interaction states (were style-hover / style-focus in the prototype) ---- */
.nav-link:hover{background:#F2F5F6}
.btn-outline:hover{border-color:#1A727C}
.btn-teal:hover{background:#155C64}
.btn-dark:hover{background:#0E2731}
.btn-white-cta:hover{background:#EAF2F3}
.cat-card:hover{border-color:#1A727C;box-shadow:0 16px 34px rgba(20,51,65,0.08);transform:translateY(-4px)}
.prod-card:hover{border-color:#1A727C;box-shadow:0 14px 30px rgba(20,51,65,0.08);transform:translateY(-3px)}
.prod-card-cta:hover{background:#DCEBEC}
.side-cat:hover{background:#F2F5F6}
.footer-link:hover{color:#1A727C}
.qty-btn:hover{background:#E9EDEF}
.rm-btn:hover{background:#E9EDEF}
.add-more:hover{border-color:#1A727C}
.field:focus{border-color:#1A727C}

/* ---- responsive utilities (ported verbatim from the design) ---- */
.hamburger{display:none}
@media (max-width:900px){
  .r-stack{grid-template-columns:minmax(0,1fr) !important}
  .r-stack>*{min-width:0}
  .r-aside{position:static !important;top:auto !important;margin-bottom:18px;min-width:0}
  .r-catlist{flex-direction:row !important;overflow-x:auto !important;gap:8px !important;padding-bottom:6px;min-width:0}
  .r-catlist>button{flex:0 0 auto;white-space:nowrap}
  .desktop-nav{display:none !important}
  .hamburger{display:flex !important}
}
@media (max-width:600px){
  .r-stack-sm{grid-template-columns:1fr !important}
  .r-hidexs{display:none !important}
  .cta-band{padding:32px 24px !important}
  .cta-visual{display:none !important}
}
