*{box-sizing:border-box}body{margin:0;background:#fff;color:#17132b;font-family:'Amazon Ember','Segoe UI','Helvetica Neue',Arial,sans-serif;font-weight:400}.wrap{width:1500px;max-width:calc(100vw - 86px);margin:0 auto}a{text-decoration:none;color:inherit}button{font-family:inherit}.topbar{height:34px;border-bottom:1px solid #edf0f5;background:linear-gradient(90deg,#fff,#fbf8ff,#fff);color:#24106b;font-size:13px;font-weight:600}.topbar-inner{height:34px;display:flex;align-items:center;gap:52px}.topbar nav{margin-left:auto;display:flex;gap:23px}.header{height:86px;background:linear-gradient(180deg,#fff,#fbfaff);box-shadow:0 8px 24px rgba(48,38,111,.05)}.header-inner{height:86px;display:grid;grid-template-columns:320px 1fr 190px 168px;gap:28px;align-items:center}.logo img{height:72px;max-width:282px}.search{height:58px;border:1.8px solid #5a20a8;border-radius:9px;display:grid;grid-template-columns:1fr 70px;overflow:hidden;background:linear-gradient(135deg,#fff,#fbf8ff);box-shadow:0 8px 22px rgba(90,32,168,.08)}.search input{border:0;outline:0;padding:0 22px;font-size:16px;color:#555;font-weight:400}.search button{border:0;background:linear-gradient(135deg,#6b2bd9,#4f1fb5);color:#fff;font-size:36px;cursor:pointer}.account{border:0;background:#fff;display:flex;gap:12px;align-items:center;text-align:left;cursor:pointer}.account>span{font-size:38px;color:#25136e}.account b,.cart b{display:block;font-size:14px;font-weight:700}.account small,.cart small{font-size:13px;font-weight:600}.cart{height:62px;border:0;border-radius:18px;background:linear-gradient(135deg,#fff,#f5f0ff);display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;box-shadow:0 8px 20px rgba(91,32,168,.08)}.cart>span{font-size:30px}.cart em{font-style:normal;background:#08a63a;color:#fff;border-radius:50%;padding:2px 7px;font-weight:700}.mainnav{height:54px;background:linear-gradient(90deg,#4f1fb5,#6c2bd9,#3f1695);color:#fff;box-shadow:0 10px 28px rgba(79,31,181,.22)}.nav-inner{height:54px;display:flex}.nav-inner a{height:54px;display:flex;align-items:center;padding:0 30px;font-size:15px;font-weight:700}.nav-inner .all{background:linear-gradient(135deg,#6c2bd9,#51209e);padding-right:60px}.nav-inner .week{margin-left:auto;background:linear-gradient(135deg,#11bf4a,#078017);padding-left:38px;padding-right:38px}.page{padding-top:20px}.hero{display:grid;grid-template-columns:2.35fr .75fr;gap:18px}.hero-main img{display:block;width:100%;height:310px;border-radius:14px;object-fit:cover;box-shadow:0 20px 45px rgba(48,38,111,.10)}.hero-side{display:grid;grid-template-rows:1fr 1fr;gap:18px}.side-card{min-height:146px;border-radius:14px;padding:28px;display:flex;justify-content:space-between;align-items:center;transition:.25s ease;box-shadow:0 14px 34px rgba(48,38,111,.08)}.side-card:hover{transform:translateY(-5px)}.side-card h3{font-size:18px;line-height:1.15;margin:0 0 10px;font-weight:500}.side-card p{font-size:15px;margin:0 0 15px;font-weight:400}.side-card button{border:0;border-radius:8px;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}.offer{background:linear-gradient(135deg,#fff,#f1e9ff);color:#5a20a8}.offer button{background:linear-gradient(135deg,#6b2bd9,#4f1fb5)}.offer strong{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#16c74a,#079536);color:#fff;font-size:58px;display:grid;place-items:center;font-weight:600}.delivery{background:linear-gradient(135deg,#fff,#ddffe8);color:#0b8f2f}.delivery button{background:linear-gradient(135deg,#15c94d,#08a43b)}.delivery img{width:112px;height:90px;object-fit:contain}.categories{display:grid;grid-template-columns:repeat(9,1fr);gap:18px;padding:20px 0 24px}.categories button{border:0;background:#fff;display:grid;place-items:center;gap:8px;cursor:pointer;border-radius:16px;padding:8px 4px;transition:.25s}.categories button:hover{transform:translateY(-5px);background:linear-gradient(180deg,#fff,#fbf8ff);box-shadow:0 16px 34px rgba(91,32,168,.10)}.categories img,.categories i{width:82px;height:82px;border-radius:50%;background:linear-gradient(135deg,#fff,#f3f0ff);object-fit:cover;padding:8px;display:grid;place-items:center;box-shadow:0 10px 24px rgba(91,32,168,.10)}.categories i{font-style:normal;font-size:32px;color:#5a20a8;padding:0}.categories span{font-size:13px;font-weight:500}.product-row{display:grid;grid-template-columns:.95fr 1.15fr;gap:30px}.panel{margin-bottom:18px}.title{height:42px;display:flex;align-items:center;justify-content:space-between}.title h2{font-size:22px;margin:0;color:#25116f;font-weight:500}.title a{font-size:13px;color:#666;font-weight:400}.baby-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.product-card{min-height:270px;border:1px solid #eceef5;border-radius:9px;background:linear-gradient(180deg,#fff,#fbfbff);padding:14px;position:relative;box-shadow:0 10px 25px rgba(20,18,45,.045);transition:.25s}.product-card:hover{transform:translateY(-6px);box-shadow:0 22px 42px rgba(20,18,45,.13)}.product-card img{width:100%;height:155px;object-fit:contain}.baby-grid .product-card img,.feature-grid .product-card img{height:190px}.badge{display:inline-block;border-radius:999px;background:linear-gradient(135deg,#7b2cff,#5420b0);color:#fff;font-size:11px;font-weight:700;padding:5px 10px}.badge.red{background:linear-gradient(135deg,#ff5a5a,#e21c1c)}.product-card h3{font-size:14px;line-height:1.35;min-height:38px;margin:8px 0;color:#15132b;font-weight:400}.price{font-size:18px;font-weight:500;color:#3f1aa0}.price small{text-decoration:line-through;color:#999;font-size:12px;margin-left:6px;font-weight:400}.cart-add{position:absolute;right:12px;bottom:12px;width:34px;height:34px;border:0;border-radius:6px;background:linear-gradient(135deg,#16c74a,#079536);color:#fff;font-size:18px;cursor:pointer}.selling-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.selling-card{min-height:118px;border:1px solid #eceef5;border-radius:9px;padding:12px;display:grid;grid-template-columns:82px 1fr;gap:12px;position:relative;background:linear-gradient(180deg,#fff,#fbfbff);box-shadow:0 8px 22px rgba(20,18,45,.04)}.selling-card img{width:82px;height:82px;object-fit:contain}.rank{position:absolute;top:8px;left:8px;background:linear-gradient(135deg,#6b2bd9,#4e20a0);color:#fff;border-radius:4px;padding:4px 8px;font-weight:700}.selling-card h3{font-size:12px;line-height:1.3;margin:0;font-weight:400}.selling-card b{display:block;color:#3f1aa0;font-size:14px;margin-top:5px;font-weight:500}.selling-card p{margin:5px 0 0;color:#ffb400;font-size:12px;font-weight:400}.bottom-info{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-bottom:28px}.bottom-info button{background:linear-gradient(135deg,#fff,#f8f7ff);border:1px solid #e8ebf2;border-radius:12px;text-align:left;padding:18px;cursor:pointer;box-shadow:0 10px 24px rgba(20,18,45,.045)}.bottom-info strong{display:block;color:#251272;font-weight:500}.bottom-info span{display:block;color:#555;margin:5px 0;font-weight:400}.bottom-info a{color:#4e20a0;font-weight:500;font-size:13px}.cart-drawer{position:fixed;right:-480px;top:0;width:460px;max-width:96vw;height:100vh;background:#fff;z-index:50;box-shadow:-20px 0 60px rgba(0,0,0,.18);transition:.25s;overflow:auto;padding:22px}.cart-drawer.open{right:0}.drawer-head{display:flex;justify-content:space-between;align-items:center}.drawer-head h2{font-weight:500;color:#25116f}.drawer-head button{border:0;background:none;font-size:34px;cursor:pointer}.cart-row{display:flex;justify-content:space-between;border-bottom:1px solid #eee;padding:12px 0}.cart-row b{font-weight:500}.cart-row button{border:0;background:#f0eef8;border-radius:7px;padding:6px 9px}.checkout h3{font-weight:500;color:#25116f}.checkout label{display:block;margin-top:12px;font-weight:500}.checkout input,.checkout textarea,.checkout select{width:100%;border:1px solid #dce0e8;border-radius:9px;padding:12px;margin-top:6px}.delivery-note{background:#f4fff6;border:1px solid #c6f0d1;color:#15672c;border-radius:10px;padding:12px;margin-top:10px;font-size:13px}.line,.total{display:flex;justify-content:space-between;margin:12px 0}.total{border-top:1px solid #eee;padding-top:12px;font-size:20px;color:#25116f}.pay-btn,.whatsapp-btn,.modal-card button{width:100%;border:0;border-radius:12px;padding:14px;font-weight:700;cursor:pointer}.pay-btn{background:linear-gradient(135deg,#16c74a,#079536);color:#fff}.whatsapp-btn{margin-top:8px;background:#f1f2f7;color:#25116f}.modal{display:none;position:fixed;inset:0;background:#0008;place-items:center;z-index:70}.modal.open{display:grid}.modal-card{background:#fff;border-radius:18px;padding:26px;width:430px;max-width:92vw}.modal-card h2{font-weight:500;color:#25116f}@media(max-width:1100px){.wrap{max-width:calc(100vw - 28px)}.topbar{display:none}.header-inner{grid-template-columns:1fr}.account,.cart{display:none}.mainnav{display:none}.hero,.product-row{grid-template-columns:1fr}.categories{grid-template-columns:repeat(4,1fr)}.feature-grid,.baby-grid{grid-template-columns:repeat(2,1fr)}.selling-grid{grid-template-columns:repeat(2,1fr)}.bottom-info{grid-template-columns:repeat(2,1fr)}}

/* === Temu-like typography system === */
:root{
  --temu-font: Arial, 'Helvetica Neue', Helvetica, 'Segoe UI', Roboto, sans-serif;
}

html{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: geometricPrecision;
}

body,
input,
button,
select,
textarea{
  font-family:var(--temu-font);
  letter-spacing:-0.01em;
}

body{
  font-size:14px;
  line-height:1.35;
  font-weight:400;
}

.topbar{
  font-size:12.5px;
  font-weight:500;
  letter-spacing:-0.005em;
}

.search input{
  font-size:15px;
  font-weight:400;
}

.nav-inner a{
  font-size:14px;
  font-weight:600;
  letter-spacing:-0.01em;
}

.account b,
.cart b{
  font-size:13.5px;
  font-weight:600;
}

.account small,
.cart small{
  font-size:12.5px;
  font-weight:400;
}

.side-card h3{
  font-size:17px;
  font-weight:500;
  letter-spacing:-0.015em;
}

.side-card p{
  font-size:14px;
  font-weight:400;
}

.side-card button,
.pay-btn,
.whatsapp-btn{
  font-size:14px;
  font-weight:600;
  letter-spacing:-0.01em;
}

.categories span{
  font-size:12.5px;
  font-weight:400;
  letter-spacing:-0.01em;
}

.title h2{
  font-size:21px;
  font-weight:500;
  letter-spacing:-0.02em;
}

.title a{
  font-size:12.5px;
  font-weight:400;
}

.product-card h3{
  font-size:13.5px;
  line-height:1.34;
  font-weight:400;
  letter-spacing:-0.01em;
}

.price{
  font-size:18px;
  font-weight:600;
  letter-spacing:-0.02em;
}

.price small{
  font-size:12px;
  font-weight:400;
}

.badge{
  font-size:10.5px;
  font-weight:600;
  letter-spacing:.01em;
}

.selling-card h3{
  font-size:12.2px;
  line-height:1.32;
  font-weight:400;
}

.selling-card b{
  font-size:13.5px;
  font-weight:600;
}

.bottom-info strong{
  font-size:14.5px;
  font-weight:500;
}

.bottom-info span,
.bottom-info a{
  font-size:13px;
  font-weight:400;
}

.drawer-head h2,
.checkout h3,
.modal-card h2{
  font-weight:500;
  letter-spacing:-0.02em;
}

.checkout label{
  font-size:13px;
  font-weight:500;
}

.checkout input,
.checkout textarea,
.checkout select{
  font-size:14px;
  font-weight:400;
}

.line,
.total{
  letter-spacing:-0.015em;
}


/* === V11 Amazon-like typography + footer restored === */
:root{
  --font-main:'Amazon Ember','Segoe UI','Helvetica Neue',Arial,sans-serif;
}

html{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

body,
input,
button,
select,
textarea{
  font-family:var(--font-main);
}

body{
  font-size:14px;
  line-height:1.35;
  font-weight:400;
}

.nav-inner a,
.search button,
.side-card button,
.pay-btn,
.whatsapp-btn{
  font-weight:600;
}

.product-card h3,
.selling-card h3,
.bottom-info span,
.footer p,
.footer a{
  font-weight:400;
}

.price,
.selling-card b{
  font-weight:600;
}

.footer{
  margin-top:18px;
  background:linear-gradient(135deg,#131020 0%,#24165a 48%,#381e85 100%);
  color:#ffffff;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 1fr 1.05fr;
  gap:34px;
  padding:38px 0 30px;
}

.footer-brand img{
  height:64px;
  background:#fff;
  border-radius:12px;
  padding:7px 10px;
  margin-bottom:14px;
}

.footer p{
  margin:0 0 9px;
  color:#d9d7e8;
  font-size:14px;
  line-height:1.55;
}

.footer h3{
  margin:4px 0 14px;
  color:#ffffff;
  font-size:16px;
  font-weight:600;
}

.footer a{
  display:block;
  color:#d9d7e8;
  font-size:14px;
  line-height:1.9;
}

.footer a:hover{
  color:#a9d414;
}

.footer-socials{
  display:flex;
  gap:10px;
  margin-top:14px;
}

.footer-socials a{
  width:34px;
  height:34px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  display:grid;
  place-items:center;
  color:#fff;
  line-height:1;
  font-size:13px;
  transition:.25s ease;
}

.footer-socials a:hover{
  background:linear-gradient(135deg,#a9d414,#7fa300);
  color:#17122d;
  transform:translateY(-2px);
}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  background:linear-gradient(90deg,#0e0b1c,#171035);
}

.footer-bottom-inner{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:#cbc8dc;
  font-size:13px;
}

@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr;}
  .footer-bottom-inner{
    flex-direction:column;
    align-items:flex-start;
    padding:14px 0;
  }
}

@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr;}
}

/* Header functional modals */
.modal-close{
  position:absolute;
  right:14px;
  top:10px;
  border:0;
  background:transparent;
  font-size:28px;
  cursor:pointer;
  color:#25116f;
}
.modal-card{
  position:relative;
}
.modal-card label{
  display:block;
  margin-top:10px;
  font-size:13px;
  font-weight:500;
  color:#25116f;
}
.modal-card input{
  width:100%;
  margin-top:6px;
}
.modal-result{
  display:none;
  margin-top:12px;
  padding:12px;
  background:#f7f8fb;
  border:1px solid #e8ebf2;
  border-radius:10px;
  line-height:1.45;
}
.modal-categories{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}
.modal-categories button{
  border:1px solid #e8ebf2;
  background:linear-gradient(135deg,#fff,#f8f7ff);
  border-radius:10px;
  padding:12px;
  text-align:left;
  cursor:pointer;
}
.modal-categories button:hover{
  border-color:#6b2bd9;
}
.search-match{
  outline:2px solid #a9d414;
  outline-offset:2px;
}


/* === V13 professional popup/form spacing === */
.modal{
  padding:24px;
  backdrop-filter:blur(5px);
}

.modal-card{
  width:460px;
  max-width:94vw;
  padding:30px 30px 28px;
  border-radius:22px;
  box-shadow:0 28px 90px rgba(15,12,35,.34);
  border:1px solid rgba(255,255,255,.35);
}

.modal-card h2{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.18;
}

.modal-card p{
  margin:0 0 18px;
  color:#5f5c70;
  font-size:14px;
  line-height:1.55;
}

.modal-card label{
  margin-top:14px;
  margin-bottom:6px;
  color:#25116f;
  font-size:13px;
}

.modal-card input,
.modal-card select,
.modal-card textarea{
  width:100%;
  min-height:46px;
  border:1px solid #dde1ec;
  border-radius:12px;
  padding:12px 14px;
  background:linear-gradient(180deg,#fff,#fbfbff);
  outline:none;
  transition:.22s ease;
}

.modal-card input:focus,
.modal-card select:focus,
.modal-card textarea:focus{
  border-color:#6b2bd9;
  box-shadow:0 0 0 4px rgba(107,43,217,.10);
}

.modal-card .pay-btn,
.modal-card .whatsapp-btn{
  margin-top:14px;
  min-height:46px;
}

.modal-close{
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  top:14px;
  right:14px;
  transition:.2s ease;
}

.modal-close:hover{
  background:#f2effa;
}

.modal-result{
  margin-top:16px;
  padding:14px;
  line-height:1.55;
  border-radius:14px;
}

.modal-categories{
  gap:12px;
  margin-top:18px;
}

.modal-categories button{
  min-height:46px;
  padding:13px 14px;
  border-radius:12px;
  transition:.22s ease;
}

.modal-categories button:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(20,18,45,.09);
}

/* Cart drawer form polish */
.cart-drawer{
  padding:26px;
}

.drawer-head{
  margin-bottom:12px;
}

.cart-items{
  display:grid;
  gap:4px;
  margin-bottom:18px;
}

.cart-row{
  border:1px solid #eef0f5;
  border-radius:14px;
  padding:13px;
  background:linear-gradient(180deg,#fff,#fbfbff);
  margin-bottom:8px;
}

.checkout{
  border-top:1px solid #edf0f5;
  padding-top:18px;
}

.checkout h3{
  margin:0 0 14px;
  font-size:20px;
}

.checkout label{
  margin-top:13px;
  margin-bottom:6px;
}

.checkout input,
.checkout textarea,
.checkout select{
  min-height:46px;
  border-radius:12px;
  padding:12px 14px;
  transition:.22s ease;
}

.checkout textarea{
  min-height:92px;
  resize:vertical;
}

.checkout input:focus,
.checkout textarea:focus,
.checkout select:focus{
  outline:none;
  border-color:#6b2bd9;
  box-shadow:0 0 0 4px rgba(107,43,217,.10);
}

.delivery-note{
  margin:14px 0 16px;
  line-height:1.45;
}

.line{
  background:#fafbff;
  border:1px solid #edf0f5;
  border-radius:12px;
  padding:11px 13px;
}

.total{
  background:linear-gradient(135deg,#f7f2ff,#ffffff);
  border:1px solid #e7defa;
  border-radius:14px;
  padding:14px;
}

.pay-btn,
.whatsapp-btn{
  min-height:48px;
  margin-top:10px;
}

/* === V14 improved close button + create account form === */
.modal-close{
  width:38px;
  height:38px;
  border-radius:50%;
  background:linear-gradient(135deg,#ffffff,#f3f0fb) !important;
  border:1px solid #e5e0f4 !important;
  color:#30206f !important;
  font-size:25px !important;
  line-height:1;
  display:grid;
  place-items:center;
  box-shadow:0 8px 18px rgba(48,32,111,.10);
  transition:.22s ease;
  z-index:3;
}

.modal-close:hover{
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5) !important;
  color:#fff !important;
  transform:rotate(90deg) scale(1.04);
  box-shadow:0 14px 26px rgba(79,31,181,.24);
}

.account-modal-card{
  width:520px;
}

.account-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  background:#f4f2fa;
  border-radius:14px;
  padding:6px;
  margin:18px 0 16px;
}

.account-tabs button{
  border:0;
  border-radius:11px;
  padding:12px;
  background:transparent;
  color:#30206f;
  cursor:pointer;
  font-weight:600;
}

.account-tabs button.active{
  background:linear-gradient(135deg,#ffffff,#fbfaff);
  box-shadow:0 8px 18px rgba(48,32,111,.10);
}

.account-form{
  display:block;
}

.account-form.hidden{
  display:none;
}

.account-form textarea{
  min-height:86px;
  resize:vertical;
}

.account-form .pay-btn{
  margin-top:18px;
}

/* === V15 static popup close X === */
.popup-close,
.modal-close.popup-close{
  position:absolute !important;
  top:15px !important;
  right:15px !important;
  width:36px !important;
  height:36px !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:400 !important;
  color:#666 !important;
  cursor:pointer !important;
  transition:color .18s ease, transform .12s ease !important;
  z-index:10 !important;
}

.popup-close:hover,
.modal-close.popup-close:hover{
  color:#ff2d2d !important;
  background:transparent !important;
  transform:none !important;
  box-shadow:none !important;
}

.popup-close:active,
.modal-close.popup-close:active{
  transform:scale(.94) !important;
}

/* === V16 category pages === */
.category-page-hero{
  margin:24px 0 18px;
  background:linear-gradient(135deg,#ffffff,#fbf7ff);
  border:1px solid #eceef5;
  border-radius:18px;
  padding:28px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  box-shadow:0 18px 42px rgba(48,38,111,.08);
}
.category-page-hero h1{
  margin:0 0 8px;
  font-size:32px;
  font-weight:500;
  color:#25116f;
}
.category-page-hero p{
  margin:0;
  color:#5d5b6e;
}
.category-page-hero a{
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  border-radius:12px;
  padding:13px 18px;
  font-weight:600;
}
.category-products-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
  margin-bottom:28px;
}
.empty-category{
  border:1px solid #eceef5;
  background:linear-gradient(135deg,#fff,#fbfbff);
  border-radius:16px;
  padding:26px;
  margin-bottom:28px;
  color:#5d5b6e;
}
@media(max-width:1100px){
  .category-products-grid{grid-template-columns:repeat(2,1fr);}
  .category-page-hero{display:block;}
  .category-page-hero a{display:inline-block;margin-top:16px;}
}

/* === V17 weekly deals page === */
.weekly-page-hero{
  background:linear-gradient(135deg,#ffffff,#fff5f5,#fbf7ff);
}
.weekly-banner{
  margin:0 0 18px;
  border-radius:18px;
  padding:28px;
  background:linear-gradient(135deg,#fff8f8,#f4ecff);
  border:1px solid #eceef5;
  box-shadow:0 18px 42px rgba(48,38,111,.08);
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.weekly-banner span{
  color:#e21c1c;
  font-weight:600;
  font-size:13px;
}
.weekly-banner h2{
  margin:8px 0 6px;
  color:#25116f;
  font-weight:500;
}
.weekly-banner p{
  margin:0;
  color:#5d5b6e;
}
.weekly-banner strong{
  width:92px;
  height:92px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff5a5a,#e21c1c);
  color:#fff;
  font-size:56px;
  font-weight:600;
}
@media(max-width:700px){
  .weekly-banner{
    display:block;
  }
  .weekly-banner strong{
    margin-top:18px;
  }
}

/* === V18 Home logo + all categories page === */
.home-logo{
  display:grid;
  gap:2px;
  align-items:center;
  justify-items:start;
  cursor:pointer;
  transition:.2s ease;
}

.home-logo:hover{
  opacity:.92;
  transform:translateY(-1px);
}

.home-logo small{
  margin-left:6px;
  margin-top:-8px;
  font-size:11px;
  color:#5d5b6e;
  font-weight:500;
  letter-spacing:-.01em;
}

.all-categories-hero{
  background:linear-gradient(135deg,#ffffff,#fbf7ff,#f2fff6);
}

.breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  margin:-4px 0 18px;
  font-size:13px;
  color:#6b6878;
}

.breadcrumb a{
  color:#4e20a0;
}

.breadcrumb strong{
  color:#25116f;
  font-weight:500;
}

.all-categories-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-bottom:30px;
}

.category-page-card{
  min-height:104px;
  background:linear-gradient(135deg,#ffffff,#fbfbff);
  border:1px solid #eceef5;
  border-radius:16px;
  padding:14px;
  display:grid;
  grid-template-columns:76px 1fr 22px;
  gap:14px;
  align-items:center;
  box-shadow:0 10px 25px rgba(20,18,45,.045);
  transition:.24s ease;
}

.category-page-card:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 42px rgba(20,18,45,.12);
  border-color:#ded6f7;
}

.category-page-card img{
  width:76px;
  height:76px;
  border-radius:50%;
  background:linear-gradient(135deg,#fff,#f3f0ff);
  object-fit:cover;
  padding:7px;
}

.category-page-card h3{
  margin:0 0 5px;
  color:#25116f;
  font-size:16px;
  font-weight:500;
}

.category-page-card p{
  margin:0;
  color:#666274;
  font-size:13px;
}

.category-page-card span{
  font-size:26px;
  color:#6b2bd9;
}

@media(max-width:900px){
  .all-categories-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:560px){
  .all-categories-grid{
    grid-template-columns:1fr;
  }
}

/* === V19 unified BragaLink icon style === */
.categories img,
.category-page-card img,
.product-card img,
.selling-card img,
.delivery img{
  background:#ffffff !important;
}

.categories img{
  padding:4px;
}

.product-card img{
  padding:8px;
}

.selling-card img{
  padding:5px;
}

.category-page-card img{
  padding:4px;
}

.category-page-card:hover img,
.categories button:hover img,
.product-card:hover img{
  filter:saturate(1.05);
}

/* === V20 fixed header + clean logo === */
.topbar{
  position:sticky;
  top:0;
  z-index:1000;
}

.header{
  position:sticky;
  top:34px;
  z-index:999;
}

.mainnav{
  position:sticky;
  top:120px;
  z-index:998;
}

.home-logo{
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  gap:0;
}

.home-logo small{
  display:none !important;
}

.logo{
  cursor:pointer;
}

.logo:hover{
  opacity:.94;
}

@media(max-width:1100px){
  .header{
    top:0;
  }
  .mainnav{
    top:86px;
  }
}

/* === V21 Hero Banner Principal Slider === */
.hero-banner-v21{
  align-items:stretch;
}

.hero-slider{
  position:relative;
  height:310px;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#ffffff 0%,#fbf6ff 58%,#f2fff6 100%);
  box-shadow:0 20px 45px rgba(48,38,111,.10);
}

.hero-slide{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  opacity:0;
  pointer-events:none;
  transition:opacity .55s ease;
}

.hero-slide.active{
  opacity:1;
  pointer-events:auto;
}

.hero-copy{
  padding:42px 0 0 38px;
}

.hero-copy h1{
  margin:0;
  max-width:470px;
  font-size:42px;
  line-height:1.14;
  font-weight:500;
  letter-spacing:-.025em;
  color:#2a1a72;
}

.hero-copy h1 span{
  color:#0baa42;
}

.hero-benefits{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:36px;
  max-width:560px;
}

.hero-benefits div{
  height:72px;
  border:1px solid #ece8f8;
  border-radius:16px;
  background:rgba(255,255,255,.82);
  display:grid;
  grid-template-columns:44px 1fr;
  align-items:center;
  padding:0 14px;
  box-shadow:0 10px 24px rgba(48,38,111,.04);
}

.hero-benefits i{
  width:32px;
  height:32px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f4efff;
  font-style:normal;
}

.hero-benefits strong{
  color:#30206f;
  font-size:14px;
  font-weight:500;
  display:block;
  margin-bottom:2px;
}

.hero-benefits small{
  color:#5b5b68;
  font-size:12px;
  grid-column:2;
  margin-top:-18px;
}

.hero-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:34px;
  min-width:155px;
  height:50px;
  border-radius:9px;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  font-weight:600;
  box-shadow:0 12px 26px rgba(7,149,54,.22);
}

.hero-products{
  position:relative;
}

.hero-products:after{
  content:"";
  position:absolute;
  left:5%;
  right:-10%;
  bottom:38px;
  height:48px;
  border-radius:50%;
  background:#dfe1eb;
  filter:blur(.2px);
}

.hero-products img{
  position:absolute;
  width:150px;
  height:150px;
  object-fit:contain;
  border-radius:24px;
  box-shadow:0 18px 40px rgba(48,38,111,.12);
  background:#fff;
  z-index:2;
  animation:floatProduct 4s ease-in-out infinite;
}

.hero-products .p1{left:8%;top:52px;width:170px;height:190px;}
.hero-products .p2{left:35%;top:76px;width:175px;height:170px;animation-delay:.2s;}
.hero-products .p3{left:64%;top:66px;width:170px;height:178px;animation-delay:.4s;}
.hero-products .p4{left:85%;top:118px;width:130px;height:124px;animation-delay:.6s;}

.hero-dots{
  position:absolute;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  display:flex;
  gap:10px;
  z-index:5;
}

.hero-dots button{
  width:10px;
  height:10px;
  border:0;
  border-radius:50%;
  background:#c4c5cc;
  cursor:pointer;
  padding:0;
}

.hero-dots button.active{
  background:#5b27b3;
}

@keyframes floatProduct{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}

@media(max-width:1100px){
  .hero-slider{
    height:auto;
    min-height:460px;
  }

  .hero-slide{
    position:relative;
    display:none;
    grid-template-columns:1fr;
    min-height:460px;
  }

  .hero-slide.active{
    display:grid;
  }

  .hero-copy{
    padding:30px 24px 0;
  }

  .hero-copy h1{
    font-size:34px;
  }

  .hero-benefits{
    grid-template-columns:1fr;
    margin-top:22px;
  }

  .hero-benefits small{
    margin-top:-12px;
  }

  .hero-products{
    min-height:200px;
  }

  .hero-products .p1{left:4%;top:22px;width:120px;height:130px;}
  .hero-products .p2{left:29%;top:28px;width:125px;height:125px;}
  .hero-products .p3{left:55%;top:24px;width:125px;height:130px;}
  .hero-products .p4{left:78%;top:54px;width:90px;height:90px;}
}

/* === V22 Hero Banner spacing and actions === */
.hero-slider{
  height:322px;
}

.hero-slide{
  grid-template-columns:0.92fr 1.08fr;
}

.hero-copy{
  padding:40px 0 0 38px;
}

.hero-copy h1{
  max-width:430px;
  font-size:40px;
}

.hero-benefits{
  grid-template-columns:repeat(3, minmax(142px, 1fr));
  gap:12px;
  margin-top:34px;
  max-width:525px;
}

.hero-benefits div{
  height:70px;
  padding:0 12px;
}

.hero-benefits i{
  width:30px;
  height:30px;
}

.hero-benefits strong{
  font-size:13.5px;
}

.hero-benefits small{
  font-size:11.5px;
}

.hero-cta{
  margin-top:30px;
  min-width:168px;
  padding:0 18px;
  white-space:nowrap;
}

.hero-products{
  overflow:hidden;
}

.hero-products:after{
  left:2%;
  right:0;
  bottom:32px;
  height:46px;
}

.hero-products img{
  box-shadow:0 16px 34px rgba(48,38,111,.11);
}

.hero-products .p1{
  left:4%;
  top:56px;
  width:156px;
  height:176px;
}

.hero-products .p2{
  left:30%;
  top:72px;
  width:162px;
  height:162px;
}

.hero-products .p3{
  left:56%;
  top:62px;
  width:162px;
  height:172px;
}

.hero-products .p4{
  left:80%;
  top:114px;
  width:118px;
  height:118px;
}

.side-card{
  padding:26px;
}

.side-card h3{
  margin-bottom:9px;
}

.side-card p{
  margin-bottom:16px;
}

.side-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:8px;
  color:#fff;
  padding:12px 18px;
  font-weight:600;
  cursor:pointer;
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  box-shadow:0 10px 24px rgba(91,32,168,.22);
  transition:.25s ease;
}

.delivery .side-btn{
  background:linear-gradient(135deg,#15c94d,#08a43b);
  box-shadow:0 10px 24px rgba(8,164,59,.20);
}

.side-btn:hover{
  transform:translateY(-2px);
}

@media(max-width:1100px){
  .hero-slider{
    min-height:500px;
  }
  .hero-slide{
    grid-template-columns:1fr;
    min-height:500px;
  }
  .hero-copy{
    padding:30px 24px 0;
  }
  .hero-benefits{
    grid-template-columns:1fr;
    max-width:none;
  }
  .hero-products .p1{left:3%;top:28px;width:112px;height:122px;}
  .hero-products .p2{left:28%;top:30px;width:118px;height:118px;}
  .hero-products .p3{left:53%;top:28px;width:118px;height:124px;}
  .hero-products .p4{left:76%;top:58px;width:88px;height:88px;}
}


/* V22.1 ajustes */
.hero-cta{
    margin-top:18px !important;
}

/* === V22.2 Hero side cards and help page === */
.side-card{
  gap:18px;
}

.side-card > div{
  min-width:0;
  max-width:72%;
}

.side-card h3{
  font-size:16px !important;
  line-height:1.25 !important;
  margin-bottom:8px !important;
  overflow-wrap:break-word;
}

.side-card p{
  font-size:14px !important;
  line-height:1.35 !important;
  margin-bottom:14px !important;
}

.offer strong{
  flex:0 0 78px;
  width:78px !important;
  height:78px !important;
  font-size:46px !important;
}

.delivery img{
  flex:0 0 96px;
  width:96px !important;
  height:86px !important;
}

.help-hero{
  background:linear-gradient(135deg,#ffffff,#fbf7ff,#f2fff6);
}

.help-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-bottom:30px;
}

.help-grid article{
  background:linear-gradient(135deg,#ffffff,#fbfbff);
  border:1px solid #eceef5;
  border-radius:16px;
  padding:22px;
  box-shadow:0 10px 25px rgba(20,18,45,.045);
}

.help-grid span{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  color:#fff;
  font-weight:600;
  margin-bottom:14px;
}

.help-grid h3{
  margin:0 0 8px;
  color:#25116f;
  font-weight:500;
  font-size:17px;
}

.help-grid p{
  margin:0;
  color:#5d5b6e;
  line-height:1.5;
  font-size:14px;
}

@media(max-width:1100px){
  .help-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:560px){
  .side-card > div{
    max-width:100%;
  }
  .help-grid{
    grid-template-columns:1fr;
  }
}


/* ===== V22.3 HERO COM ALTURA UNIFORME ===== */
.hero{
  align-items:stretch !important;
}

.hero-main,
.hero-slider{
  height:330px !important;
  min-height:330px !important;
}

.hero-side{
  height:330px !important;
  display:grid !important;
  grid-template-rows:1fr 1fr !important;
  gap:16px !important;
}

.hero-side .side-card{
  height:auto !important;
  min-height:0 !important;
  display:flex !important;
  align-items:center !important;
}

@media(max-width:1100px){
  .hero-main,
  .hero-slider,
  .hero-side{
    height:auto !important;
  }
}

/* === V22.4 Barra de categorias funcional === */
.categories .cat-link{
  border:0;
  background:#fff;
  display:grid;
  place-items:center;
  gap:8px;
  cursor:pointer;
  border-radius:16px;
  padding:8px 4px;
  transition:.25s;
  text-align:center;
}

.categories .cat-link:hover{
  transform:translateY(-5px);
  background:linear-gradient(180deg,#fff,#fbf8ff);
  box-shadow:0 16px 34px rgba(91,32,168,.10);
}

.categories .cat-link img,
.categories .cat-link i{
  width:82px;
  height:82px;
  border-radius:50%;
  background:linear-gradient(135deg,#fff,#f3f0ff);
  object-fit:cover;
  padding:8px;
  display:grid;
  place-items:center;
  box-shadow:0 10px 24px rgba(91,32,168,.10);
}

.categories .cat-link i{
  font-style:normal;
  font-size:32px;
  color:#5a20a8;
  padding:0;
}

.categories .cat-link span{
  font-size:13px;
  font-weight:500;
  color:#17132b;
}

/* === V23 Product Showcase improvements === */

/* Botão Ver Mais nas secções de produtos */
.title .see-more-btn,
.section-title .see-more-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:7px 13px;
  border-radius:999px;
  background:linear-gradient(135deg,#ff5a5a,#e21c1c);
  color:#fff !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1;
  box-shadow:0 8px 18px rgba(226,28,28,.18);
  transition:.22s ease;
}

.title .see-more-btn:hover,
.section-title .see-more-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(226,28,28,.24);
}

/* Botão Adicionar ao carrinho nos cards */
.product-card .cart-add{
  width:auto !important;
  min-width:132px;
  height:38px !important;
  right:12px !important;
  bottom:12px !important;
  padding:0 11px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  border-radius:8px !important;
  font-size:13px !important;
  white-space:nowrap;
}

.product-card .cart-add span{
  font-size:16px;
  line-height:1;
}

.product-card .cart-add small{
  font-size:11.5px;
  font-weight:500;
  color:#fff;
  line-height:1;
}

/* Dar espaço ao texto do botão sem alterar a estrutura geral */
.product-card .price{
  padding-right:138px;
}

@media(max-width:700px){
  .product-card .cart-add{
    min-width:42px;
    width:42px !important;
    padding:0 !important;
  }

  .product-card .cart-add small{
    display:none;
  }

  .product-card .price{
    padding-right:48px;
  }
}

/* === V23.1 PT-PT + cards/product price/cart drawer fixes === */

/* Reorganizar informação dos cards para evitar sobreposição */
.product-card{
  padding-bottom:68px !important;
}

.product-card h3{
  min-height:42px;
  margin-bottom:10px !important;
}

.product-card .price{
  padding-right:0 !important;
  display:flex;
  align-items:baseline;
  gap:8px;
  flex-wrap:wrap;
  line-height:1.25;
  max-width:calc(100% - 8px);
}

.product-card .price small{
  display:inline-block;
  margin-left:0 !important;
  white-space:nowrap;
}

.product-card .cart-add{
  left:14px !important;
  right:14px !important;
  bottom:14px !important;
  width:auto !important;
  min-width:0 !important;
  height:40px !important;
  justify-content:center !important;
}

/* Carrinho lateral: X fixo e profissional */
.drawer-head{
  position:sticky;
  top:0;
  background:#fff;
  z-index:3;
  padding-bottom:12px;
}

.cart-close-x{
  width:36px;
  height:36px;
  border:none !important;
  background:transparent !important;
  color:#666;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:color .18s ease, transform .12s ease;
}

.cart-close-x:hover{
  color:#ff2d2d;
}

.cart-close-x:active{
  transform:scale(.94);
}

@media(max-width:700px){
  .product-card{
    padding-bottom:62px !important;
  }
  .product-card .cart-add{
    width:auto !important;
    min-width:0 !important;
  }
  .product-card .cart-add small{
    display:inline !important;
  }
}

/* === V23.2 Mais Vendidos page === */
.best-tabs{
  display:flex;
  gap:10px;
  margin:0 0 18px;
}

.best-tabs button{
  border:1px solid #e8ebf2;
  background:linear-gradient(135deg,#ffffff,#f8f7ff);
  color:#25116f;
  border-radius:999px;
  padding:11px 18px;
  cursor:pointer;
  font-weight:600;
  transition:.22s ease;
}

.best-tabs button.active,
.best-tabs button:hover{
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  color:#fff;
  border-color:#6b2bd9;
}

.best-list{
  display:none;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-bottom:30px;
}

.best-list.active{
  display:grid;
}

.best-product-card{
  position:relative;
  display:grid;
  grid-template-columns:110px 1fr;
  gap:14px;
  align-items:center;
  min-height:150px;
  background:linear-gradient(135deg,#ffffff,#fbfbff);
  border:1px solid #eceef5;
  border-radius:16px;
  padding:16px;
  box-shadow:0 10px 25px rgba(20,18,45,.045);
}

.best-product-card img{
  width:100px;
  height:100px;
  object-fit:contain;
}

.best-product-card h3{
  margin:0 0 8px;
  font-size:14px;
  font-weight:400;
  line-height:1.35;
}

.best-product-card strong{
  color:#3f1aa0;
  font-weight:600;
}

.best-product-card p{
  color:#ffb400;
  margin:6px 0 12px;
  font-size:12px;
}

.best-product-card .cart-add{
  position:static !important;
  width:auto !important;
  height:36px !important;
  min-width:140px !important;
}

@media(max-width:900px){
  .best-list{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:560px){
  .best-list{
    grid-template-columns:1fr;
  }
}

/* === V23.3 Footer functional pages === */
.footer a{
  cursor:pointer;
}

.footer a:hover{
  text-decoration:none;
}

.footer-info-grid article{
  min-height:170px;
}

/* === V23.4 Correção espaçamento dos cards de benefícios no Hero === */
.hero-benefits{
  grid-template-columns:repeat(3, 1fr) !important;
  gap:14px !important;
  max-width:600px !important;
}

.hero-benefits div{
  height:74px !important;
  padding:12px 16px !important;
  display:grid !important;
  grid-template-columns:38px 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:12px !important;
  row-gap:2px !important;
  align-items:center !important;
}

.hero-benefits i{
  grid-row:1 / 3 !important;
  grid-column:1 !important;
  width:32px !important;
  height:32px !important;
  margin:0 !important;
  align-self:center !important;
}

.hero-benefits strong{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}

.hero-benefits small{
  grid-column:2 !important;
  grid-row:2 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:1.25 !important;
  color:#5b5b68 !important;
  white-space:normal !important;
  word-break:normal !important;
}

@media(max-width:1100px){
  .hero-benefits{
    grid-template-columns:1fr !important;
    max-width:none !important;
  }

  .hero-benefits div{
    height:72px !important;
  }
}

/* === V23.5 Hero typography hierarchy and spacing === */

/* Título do primeiro slide com hierarquia mais forte e espaçamento correcto */
.hero-copy h1{
  font-size:48px !important;
  line-height:1.05 !important;
  letter-spacing:.02em !important;
  font-weight:800 !important;
  text-transform:uppercase;
  max-width:720px !important;
  margin-bottom:0 !important;
}

/* Se o título tiver span verde, manter contraste BragaLink */
.hero-copy h1 span{
  color:#00a93f !important;
}

/* Benefícios da Hero com espaço interno mais equilibrado */
.hero-benefits{
  margin-top:46px !important;
  max-width:680px !important;
  grid-template-columns:repeat(3, 1fr) !important;
  gap:22px !important;
}

/* Cada quadrado/card de benefício */
.hero-benefits div{
  height:92px !important;
  min-height:92px !important;
  padding:20px 22px !important;
  display:grid !important;
  grid-template-columns:46px 1fr !important;
  grid-template-rows:auto auto !important;
  column-gap:16px !important;
  row-gap:4px !important;
  align-items:center !important;
  border-radius:18px !important;
}

/* Ícone centralizado verticalmente */
.hero-benefits i{
  grid-column:1 !important;
  grid-row:1 / 3 !important;
  width:40px !important;
  height:40px !important;
  align-self:center !important;
  justify-self:center !important;
  margin:0 !important;
  font-size:18px !important;
}

/* Título dentro do card */
.hero-benefits strong{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:18px !important;
  line-height:1.08 !important;
  font-weight:600 !important;
  letter-spacing:-.02em !important;
  color:#25116f !important;
}

/* Subtexto dentro do card */
.hero-benefits small{
  grid-column:2 !important;
  grid-row:2 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:1.18 !important;
  font-weight:400 !important;
  color:#5f5b70 !important;
}

/* Botão Comprar Agora mais alinhado com a nova altura */
.hero-cta{
  margin-top:34px !important;
  min-width:200px !important;
  height:58px !important;
  font-size:18px !important;
  border-radius:12px !important;
}

/* Ajuste fino no slider para dar espaço ao título e aos cards */
.hero-slider{
  height:360px !important;
  min-height:360px !important;
}

.hero-side{
  height:360px !important;
}

.hero-copy{
  padding-top:38px !important;
}

/* Responsivo */
@media(max-width:1100px){
  .hero-copy h1{
    font-size:36px !important;
    line-height:1.12 !important;
  }

  .hero-benefits{
    margin-top:24px !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    max-width:none !important;
  }

  .hero-benefits div{
    height:82px !important;
    min-height:82px !important;
  }

  .hero-slider,
  .hero-main,
  .hero-main img,
  .hero-side{
    height:auto !important;
    min-height:auto !important;
  }
}

@media(max-width:560px){
  .hero-copy h1{
    font-size:30px !important;
  }

  .hero-benefits strong{
    font-size:16px !important;
  }

  .hero-benefits small{
    font-size:13px !important;
  }
}

/* === V23.6 New Hero based on reference structure === */
.hero-v236{
  position:relative;
  height:330px;
  margin:20px 0 22px;
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(135deg,#ffffff 0%,#f8f5ff 55%,#eefdf3 100%);
  border:1px solid #eceef5;
  box-shadow:0 20px 45px rgba(48,38,111,.10);
}

.hero-v236-slide{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:1fr 1.25fr .72fr;
  gap:18px;
  align-items:center;
  padding:28px 34px;
  opacity:0;
  pointer-events:none;
  transition:opacity .45s ease;
}

.hero-v236-slide.active{
  opacity:1;
  pointer-events:auto;
}

.hero-v236-product{
  height:235px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,#ffffff,#fbfbff);
}

.hero-v236-product img{
  width:245px;
  height:220px;
  object-fit:contain;
  filter:drop-shadow(0 16px 24px rgba(48,38,111,.12));
}

.hero-v236-copy{
  padding-left:4px;
}

.hero-v236-kicker{
  display:block;
  margin-bottom:12px;
  color:#30266f;
  font-size:13px;
  letter-spacing:.18em;
  font-weight:600;
}

.hero-v236-copy h1{
  margin:0;
  max-width:560px;
  color:#30266f;
  font-size:42px;
  line-height:1.12;
  font-weight:700;
  letter-spacing:-.03em;
}

.hero-v236-copy h1 strong{
  color:#0baa42;
  font-weight:700;
}

.hero-v236-copy p{
  max-width:520px;
  margin:16px 0 22px;
  color:#5e5a6d;
  font-size:15px;
  line-height:1.55;
}

.hero-v236-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:44px;
  min-width:150px;
  padding:0 22px;
  border-radius:999px;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  font-weight:600;
  box-shadow:0 12px 26px rgba(7,149,54,.22);
}

.hero-v236-offer{
  height:274px;
  border-radius:18px;
  padding:18px;
  background:linear-gradient(135deg,#5a20a8,#6d35d8);
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-shadow:0 20px 42px rgba(48,38,111,.20);
}

.hero-v236-offer span{
  align-self:flex-start;
  background:#a9d414;
  color:#30266f;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:600;
  margin-bottom:8px;
}

.hero-v236-offer img{
  width:112px;
  height:98px;
  object-fit:contain;
  background:#fff;
  border-radius:14px;
  padding:8px;
  margin-bottom:9px;
}

.hero-v236-offer small{
  font-size:13px;
  line-height:1.3;
  color:#f3efff;
}

.hero-v236-offer h3{
  margin:7px 0 0;
  font-size:22px;
  font-weight:700;
}

.hero-v236-offer p{
  margin:2px 0 12px;
  color:#d7cdf5;
  font-size:13px;
}

.hero-v236-offer button{
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  padding:10px 14px;
  font-weight:600;
  cursor:pointer;
}

.hero-v236-arrow{
  position:absolute;
  bottom:28px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  color:#fff;
  font-size:24px;
  display:grid;
  place-items:center;
  cursor:pointer;
  z-index:5;
  box-shadow:0 10px 22px rgba(79,31,181,.22);
}

.hero-v236-arrow:hover{
  background:linear-gradient(135deg,#16c74a,#079536);
}

.hero-v236-arrow.prev{
  left:48%;
}

.hero-v236-arrow.next{
  left:52%;
}

.hero-v236-dots{
  position:absolute;
  left:34px;
  bottom:22px;
  display:flex;
  gap:8px;
  z-index:5;
}

.hero-v236-dots button{
  width:9px;
  height:9px;
  border:0;
  border-radius:50%;
  background:#c4c5cc;
  cursor:pointer;
}

.hero-v236-dots button.active{
  width:22px;
  border-radius:999px;
  background:#0baa42;
}

@media(max-width:1100px){
  .hero-v236{
    height:auto;
    min-height:640px;
  }

  .hero-v236-slide{
    position:relative;
    display:none;
    grid-template-columns:1fr;
    padding:24px;
  }

  .hero-v236-slide.active{
    display:grid;
  }

  .hero-v236-copy h1{
    font-size:34px;
  }

  .hero-v236-offer{
    height:auto;
    min-height:230px;
  }

  .hero-v236-arrow{
    bottom:16px;
  }

  .hero-v236-arrow.prev{
    left:auto;
    right:70px;
  }

  .hero-v236-arrow.next{
    left:auto;
    right:24px;
  }
}

/* === V23.7 Carrinho header totalmente clicável + X no carrinho === */
.cart{
  cursor:pointer !important;
  user-select:none;
  transition:transform .18s ease, box-shadow .18s ease;
}

.cart:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(91,32,168,.13);
}

.cart:active{
  transform:scale(.98);
}

.drawer-head{
  position:sticky;
  top:0;
  background:#fff;
  z-index:10;
  padding:4px 0 14px;
  border-bottom:1px solid #edf0f5;
  margin-bottom:14px;
}

.cart-close-x{
  width:38px;
  height:38px;
  border:none !important;
  background:transparent !important;
  color:#666;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:color .18s ease, transform .12s ease;
}

.cart-close-x:hover{
  color:#ff2d2d;
}

.cart-close-x:active{
  transform:scale(.94);
}

/* === V23.8 Cart click fix === */
#cartHeaderBtn,
.cart{
  cursor:pointer !important;
  pointer-events:auto !important;
}

#cartHeaderBtn *{
  pointer-events:none;
}

/* === V23.9 Popup de Ajuda profissional === */
.help-modal-card{
  width:540px !important;
  max-width:94vw;
}

.help-modal-card h2{
  margin-bottom:8px !important;
}

.help-intro{
  margin-bottom:18px !important;
  color:#5f5b70;
}

.help-modal-list{
  display:grid;
  gap:12px;
  margin:16px 0 20px;
}

.help-modal-item{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:13px;
  align-items:flex-start;
  padding:14px;
  border:1px solid #eceef5;
  border-radius:14px;
  background:linear-gradient(135deg,#ffffff,#fbfbff);
}

.help-modal-item i{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f4efff;
  font-style:normal;
}

.help-modal-item strong{
  display:block;
  color:#25116f;
  font-size:14.5px;
  font-weight:600;
  margin-bottom:4px;
}

.help-modal-item span{
  display:block;
  color:#5f5b70;
  font-size:13.2px;
  line-height:1.45;
}

.help-whatsapp-btn{
  width:100%;
  min-height:46px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  font-weight:600;
  cursor:pointer;
  box-shadow:0 12px 26px rgba(7,149,54,.20);
}

.help-page-btn{
  margin-top:10px;
  width:100%;
  min-height:44px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f3f1f8;
  color:#25116f;
  font-weight:600;
}

.help-page-btn:hover{
  background:#ebe6f8;
}

/* === V24 Popup abaixo do header + X fixo visível === */

/* O popup deixa de colar ao header fixo */
.modal{
  align-items:flex-start !important;
  justify-content:center !important;
  padding-top:125px !important;
  padding-left:24px !important;
  padding-right:24px !important;
  padding-bottom:40px !important;
  overflow:auto !important;
}

/* Card do popup mais estável */
.modal-card,
.help-modal-card{
  position:relative !important;
  margin-top:0 !important;
  border-radius:22px !important;
  box-shadow:0 30px 90px rgba(15,12,35,.34) !important;
}

/* X estático no canto superior direito */
.popup-close,
.modal-close.popup-close{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  width:36px !important;
  height:36px !important;
  border:none !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  font-size:24px !important;
  line-height:1 !important;
  font-weight:400 !important;
  color:#666 !important;
  cursor:pointer !important;
  transition:color .18s ease, transform .12s ease !important;
  z-index:99 !important;
}

/* Hover vermelho como pedido */
.popup-close:hover,
.modal-close.popup-close:hover{
  color:#ff2d2d !important;
  background:transparent !important;
  transform:none !important;
  box-shadow:none !important;
}

.popup-close:active,
.modal-close.popup-close:active{
  transform:scale(.94) !important;
}

/* Dar espaço ao título para não tocar no X */
.help-modal-card h2,
.modal-card h2{
  padding-right:46px !important;
}

/* Texto extra útil na área de entrega */
.help-modal-item:first-child span::after{
  content:" Tempo médio estimado: 30 a 90 minutos, dependendo da localização e disponibilidade.";
}

/* Em ecrãs pequenos reduz o afastamento, mas mantém distância do header */
@media(max-width:700px){
  .modal{
    padding-top:90px !important;
  }
}

/* === V24.1 CORRECÇÃO DEFINITIVA DOS POP-UPS === */

/* O overlay ocupa a tela, mas o card nunca cola ao header */
.modal.open{
  display:block !important;
}

.modal{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  background:rgba(0,0,0,.55) !important;
  backdrop-filter:blur(5px) !important;
  overflow-y:auto !important;
  padding:0 !important;
}

/* O card fica posicionado com margem real abaixo do header */
.modal .modal-card,
.modal .help-modal-card{
  position:relative !important;
  width:540px !important;
  max-width:calc(100vw - 40px) !important;
  margin:150px auto 60px auto !important;
  padding:30px 30px 28px !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 30px 90px rgba(15,12,35,.34) !important;
  transform:none !important;
}

/* X sempre visível no canto superior direito do card */
.popup-close{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  width:36px !important;
  height:36px !important;
  border:none !important;
  background:transparent !important;
  color:#666 !important;
  font-size:26px !important;
  line-height:1 !important;
  font-weight:400 !important;
  cursor:pointer !important;
  display:grid !important;
  place-items:center !important;
  z-index:100000 !important;
  padding:0 !important;
  box-shadow:none !important;
  transition:color .18s ease, transform .12s ease !important;
}

.popup-close:hover{
  color:#ff2d2d !important;
}

.popup-close:active{
  transform:scale(.94) !important;
}

/* Evita que o título fique por baixo do X */
.modal-card h2,
.help-modal-card h2{
  padding-right:48px !important;
}

/* Remover regras antigas que possam estar a empurrar o modal para cima */
.modal-card{
  top:auto !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
}

@media(max-width:700px){
  .modal .modal-card,
  .modal .help-modal-card{
    margin-top:105px !important;
    max-width:calc(100vw - 24px) !important;
    padding:26px 22px 24px !important;
  }
}

/* === V24.2 Página Ajuda moderna === */
.help-page-hero{
  margin:24px 0 18px;
  background:
    radial-gradient(circle at top right, rgba(18,170,69,.16), transparent 35%),
    linear-gradient(135deg,#ffffff,#fbf7ff);
  border:1px solid #eceef5;
  border-radius:22px;
  padding:34px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  box-shadow:0 18px 42px rgba(48,38,111,.08);
}

.help-page-hero span{
  display:inline-flex;
  margin-bottom:12px;
  padding:7px 12px;
  border-radius:999px;
  background:#f0eaff;
  color:#5a20a8;
  font-weight:600;
  font-size:13px;
}

.help-page-hero h1{
  margin:0 0 10px;
  color:#25116f;
  font-size:34px;
  line-height:1.15;
  font-weight:600;
}

.help-page-hero p{
  margin:0;
  color:#5f5b70;
  font-size:15px;
  line-height:1.55;
  max-width:620px;
}

.help-page-hero a{
  flex:0 0 auto;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  border-radius:12px;
  padding:13px 18px;
  font-weight:600;
  box-shadow:0 12px 26px rgba(7,149,54,.18);
}

.help-page-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
  margin-bottom:28px;
}

.help-page-grid article{
  display:grid;
  grid-template-columns:52px 1fr;
  gap:16px;
  align-items:flex-start;
  background:linear-gradient(135deg,#ffffff,#fbfbff);
  border:1px solid #eceef5;
  border-radius:18px;
  padding:22px;
  box-shadow:0 10px 25px rgba(20,18,45,.045);
  transition:.22s ease;
}

.help-page-grid article:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 38px rgba(20,18,45,.10);
}

.help-page-grid i{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f4efff;
  font-style:normal;
  font-size:20px;
}

.help-page-grid h3{
  margin:0 0 7px;
  color:#25116f;
  font-size:18px;
  font-weight:600;
}

.help-page-grid p{
  margin:0;
  color:#5f5b70;
  font-size:14px;
  line-height:1.6;
}

.help-steps{
  margin-bottom:28px;
}

.help-steps-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.help-steps-grid div{
  background:linear-gradient(135deg,#ffffff,#f8f7ff);
  border:1px solid #eceef5;
  border-radius:18px;
  padding:20px;
  box-shadow:0 10px 25px rgba(20,18,45,.045);
}

.help-steps-grid span{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  color:#fff;
  font-weight:600;
  margin-bottom:14px;
}

.help-steps-grid strong{
  display:block;
  color:#25116f;
  font-size:15px;
  margin-bottom:6px;
}

.help-steps-grid p{
  margin:0;
  color:#5f5b70;
  font-size:13.5px;
  line-height:1.5;
}

.help-contact-box{
  margin-bottom:34px;
  border-radius:22px;
  padding:26px;
  background:linear-gradient(135deg,#25116f,#5a20a8);
  color:#fff;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  box-shadow:0 20px 42px rgba(48,38,111,.16);
}

.help-contact-box h2{
  margin:0 0 8px;
  font-weight:600;
}

.help-contact-box p{
  margin:0;
  color:#eee9ff;
}

.help-contact-box a{
  flex:0 0 auto;
  background:linear-gradient(135deg,#16c74a,#079536);
  color:#fff;
  border-radius:12px;
  padding:13px 20px;
  font-weight:600;
}

@media(max-width:900px){
  .help-page-hero,
  .help-contact-box{
    display:block;
  }

  .help-page-hero a,
  .help-contact-box a{
    display:inline-flex;
    margin-top:18px;
  }

  .help-page-grid,
  .help-steps-grid{
    grid-template-columns:1fr;
  }
}

/* === V24.4 Melhorias nos cards de produto e carrinho === */

/* Cards de produto com aparência mais e-commerce */
.product-card{
  overflow:hidden;
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.product-card:hover{
  transform:translateY(-5px);
  border-color:#ded6f7 !important;
}

.product-card::after{
  content:"Entrega grátis em Maputo";
  position:absolute;
  top:12px;
  right:12px;
  background:linear-gradient(135deg,#f2fff6,#ffffff);
  color:#078735;
  border:1px solid #c9f0d5;
  border-radius:999px;
  padding:5px 9px;
  font-size:10.5px;
  font-weight:600;
  pointer-events:none;
}

.product-card h3{
  line-height:1.38 !important;
}

.product-card .price{
  color:#3f1aa0;
  font-size:18px;
  font-weight:700;
}

.product-card .price small{
  color:#999;
  font-weight:400;
}

.product-card .cart-add{
  left:14px !important;
  right:14px !important;
  bottom:14px !important;
  width:auto !important;
  min-width:0 !important;
  height:40px !important;
  border-radius:11px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
}

.product-card .cart-add small{
  display:inline !important;
  color:#fff;
  font-size:11.8px;
  font-weight:600;
}

.product-card{
  padding-bottom:68px !important;
}

/* Carrinho mais claro e profissional */
.cart-drawer{
  background:linear-gradient(180deg,#ffffff,#fbfbff) !important;
}

.cart-row{
  border:1px solid #edf0f5 !important;
  border-radius:14px !important;
  padding:13px !important;
  background:#fff !important;
  margin-bottom:8px !important;
}

.cart-row button{
  background:#f1eefb !important;
  color:#25116f !important;
  border-radius:8px !important;
  font-weight:600;
}

.coupon-box{
  margin:14px 0;
  padding:14px;
  border:1px dashed #d9d2ef;
  border-radius:14px;
  background:#fbf9ff;
}

.coupon-box label{
  margin-top:0 !important;
}

.coupon-box div{
  display:grid;
  grid-template-columns:1fr 92px;
  gap:8px;
  margin-top:8px;
}

.coupon-box input{
  margin-top:0 !important;
}

.coupon-box button{
  border:0;
  border-radius:10px;
  background:linear-gradient(135deg,#6b2bd9,#4f1fb5);
  color:#fff;
  font-weight:600;
  cursor:pointer;
}

.coupon-box small{
  display:block;
  margin-top:8px;
  color:#6a6578;
  font-size:12px;
}

.line{
  background:#fff !important;
  border:1px solid #edf0f5 !important;
  border-radius:12px !important;
  padding:12px 14px !important;
}

.total{
  background:linear-gradient(135deg,#f7f2ff,#ffffff) !important;
  border:1px solid #e5ddf7 !important;
  border-radius:14px !important;
  padding:15px !important;
}

.total b{
  color:#078735;
}

/* === V24.5 funções globais em todas as páginas === */
.categories .cat-link{border:0;background:#fff;display:grid;place-items:center;gap:8px;cursor:pointer;border-radius:16px;padding:8px 4px;transition:.25s;text-align:center}
.categories .cat-link:hover{transform:translateY(-5px);background:linear-gradient(180deg,#fff,#fbf8ff);box-shadow:0 16px 34px rgba(91,32,168,.10)}
.categories .cat-link img,.categories .cat-link i{width:82px;height:82px;border-radius:50%;background:linear-gradient(135deg,#fff,#f3f0ff);object-fit:cover;padding:8px;display:grid;place-items:center;box-shadow:0 10px 24px rgba(91,32,168,.10)}
.categories .cat-link i{font-style:normal;font-size:32px;color:#5a20a8;padding:0}
.categories .cat-link span{font-size:13px;font-weight:500;color:#17132b}
.search-match{outline:2px solid #a9d414;outline-offset:3px}

/* === V24.6 Fix Ajuda e Rastrear Pedido em todas as páginas === */
#helpLink,
#trackLink{
  cursor:pointer;
}

.modal.open{
  display:block !important;
}

.modal{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
}

.modal-result{
  display:none;
  margin-top:14px;
  padding:14px;
  border-radius:12px;
  background:#f7f8fb;
  border:1px solid #e8ebf2;
  line-height:1.5;
}

/* === V24.9 cart definitive visual support === */
#cartHeaderBtn,
.cart{
  cursor:pointer !important;
  pointer-events:auto !important;
}

#cartHeaderBtn *,
.cart *{
  pointer-events:none;
}

.cart-drawer{
  z-index:100000 !important;
}

.cart-drawer.open{
  right:0 !important;
}
