

@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url('../fonts/material-icons.woff2') format('woff2');
}
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}


.fa-solid,.fas,.fa-regular,.far{
  -moz-osx-font-smoothing:grayscale;
  -webkit-font-smoothing:antialiased;
  display:var(--fa-display,inline-block);
  font-style:normal;
  font-variant:normal;
  line-height:1;
  text-rendering:auto;
}
.fa-solid,.fas{
  font-family:"Font Awesome 6 Free";
  font-weight:900;
}
.fa-regular,.far{
  font-family:"Font Awesome 6 Free";
  font-weight:400;
}

@font-face{
  font-family:"Font Awesome 6 Free";
  font-style:normal;
  font-weight:900;
  font-display:block;
  src:url(fonts/fa-solid-900.woff2) format("woff2");
}
@font-face{
  font-family:"Font Awesome 6 Free";
  font-style:normal;
  font-weight:400;
  font-display:block;
  src:url(fonts/fa-regular-400.woff2) format("woff2");
}

.fa-child:before   { content:"\f1ae"; }
.fa-clock:before   { content:"\f017"; }
.fa-location-dot:before,
.fa-map-marker-alt:before { content:"\f3c5"; }
.fa-shirt:before   { content:"\f553"; }
.fa-stethoscope:before { content:"\f0f1"; }
.fa-store:before   { content:"\f54e"; }
.fa-user-doctor:before,
.fa-user-md:before { content:"\f0f0"; }
.fa-user-nurse:before  { content:"\f82f"; }

html, body {
  margin: 0;
  padding: 0;
}
body {
  font-family: 'Open Sans', system-ui, sans-serif;
  background: linear-gradient(180deg,#f5b8b4 0,#f9cac8 10%,#fde0de 20%,#fef0ef 35%,#fff 50%) top/100% 650px no-repeat,#fff;
}

#ahu__wrap {
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 99999;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  background: #000;
  font-family: 'Open Sans', sans-serif;
}
#ahu__wrap.ahu__done { display: none !important; }

.ahu__sc {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  opacity: 0;
}
.ahu__sc img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform-origin: center;
  display: block;
}

#ahu__noise {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 2; pointer-events: none; opacity: .035;
}
#ahu__vign {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 3; pointer-events: none;
  background: radial-gradient(ellipse at center, transparent 30%, rgba(0,0,0,.82) 100%);
}
#ahu__tint {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 4; pointer-events: none; opacity: 0;
  mix-blend-mode: multiply;
}
#ahu__glc {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 5; pointer-events: none; opacity: 0;
}
#ahu__pts {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 6; pointer-events: none; overflow: hidden;
}
#ahu__blk {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 11; background: #000; opacity: 0; pointer-events: none;
}
#ahu__flash {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 12; background: #fff; opacity: 0; pointer-events: none;
}

#ahu__cL {
  position: absolute;
  top: 0; left: 0;
  width: 50%; height: 100%;
  background: #000; z-index: 10;
}
#ahu__cR {
  position: absolute;
  top: 0; right: 0;
  width: 50%; height: 100%;
  background: #000; z-index: 10;
}

#ahu__tl {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  pointer-events: none;
  -webkit-perspective: 800px;
          perspective: 800px;
}
#ahu__eye {
  font-size: clamp(9px, 1.5vw, 13px);
  letter-spacing: .65em;
  text-transform: uppercase;
  color: #E85C00;
  font-weight: 700;
  opacity: 0;
  margin-bottom: 14px;
  -webkit-transform: translateY(-18px);
      -ms-transform: translateY(-18px);
          transform: translateY(-18px);
}
#ahu__word {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
}
.ahu__l {
  font-family: 'Open Sans', sans-serif;
  font-size: clamp(96px, 26vw, 280px);
  font-weight: 900;
  color: #fff;
  display: inline-block;
  opacity: 0;
  text-shadow: 6px 6px 0 #000;
}
#ahu__lx { color: #E85C00; font-size: clamp(80px, 22vw, 240px); }
#ahu__rule {
  width: 0; height: 3px;
  background: #E85C00;
  margin: 16px auto 0;
  opacity: 0;
  -webkit-box-shadow: 0 0 10px #E85C00;
          box-shadow: 0 0 10px #E85C00;
}
#ahu__sub {
  font-size: clamp(11px, 2.4vw, 19px);
  letter-spacing: .42em;
  text-transform: uppercase;
  color: rgba(255,255,255,.82);
  font-weight: 300;
  opacity: 0;
  margin-top: 18px;
  white-space: nowrap;
  overflow: hidden;
  max-width: 0;
}
#ahu__tag {
  font-family: 'Open Sans', sans-serif;
  font-size: clamp(9px, 1.7vw, 14px);
  letter-spacing: .55em;
  text-transform: uppercase;
  color: #E85C00;
  font-weight: 900;
  opacity: 0;
  margin-top: 14px;
  -webkit-transform: translateY(24px);
      -ms-transform: translateY(24px);
          transform: translateY(24px);
}

#ahu__white {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 20;
  background: #fff;
  opacity: 0;
  pointer-events: none;
}

#ahu__bar {
  position: absolute;
  bottom: 0; left: 0;
  height: 3px; width: 0;
  z-index: 15;
  background: #E85C00;
  -webkit-box-shadow: 0 0 10px #E85C00;
          box-shadow: 0 0 10px #E85C00;
}

#ahu__dots {
  position: absolute;
  bottom: 18px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  z-index: 9;
  opacity: 0;
}
.ahu__dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: rgba(255,255,255,.2);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
      transition: all .3s;
}
.ahu__dot.ahu__on {
  background: #E85C00;
  -webkit-transform: scaleX(3.2);
      -ms-transform: scaleX(3.2);
          transform: scaleX(3.2);
  border-radius: 3px;
}

#ahu__skip {
  position: fixed;
  bottom: 18px; right: 18px;
  z-index: 100000;
  background: rgba(232,92,0,.75);
  color: #fff;
  border: none;
  padding: 8px 18px;
  border-radius: 3px;
  font-size: 11px;
  cursor: pointer;
  letter-spacing: .14em;
  opacity: 0;
  font-family: 'Open Sans', sans-serif;
  -webkit-transition: opacity .4s, background .2s;
  -o-transition: opacity .4s, background .2s;
      transition: opacity .4s, background .2s;
  text-transform: uppercase;
}
#ahu__skip:hover { background: #ff7a20; }

#ahu__site { display: none; }

:root {
  --rosa:#F5B6B0;
  --rosa-e:#e89a93;
  --rosa-c:#fde8e6;
  --rosa-f:#fff5f4;
  --preto:#1a1a1a;
  --cinza:#6b7280;
  --cinza-b:#e5e7eb;
  --cinza-l:#f3f4f6;
  --branco:#fff;
  --r:14px;
  --r-sm:10px;
  --shadow:0 2px 16px rgba(229,147,140,.13)
}
.spb__ {
  --rosa:#F5B6B0;
  --rosa-e:#e89a93;
  --rosa-c:#fde8e6;
  --rosa-f:#fff5f4;
  --preto:#1a1a1a;
  --cinza:#6b7280;
  --cinza-b:#e5e7eb;
  --cinza-l:#f3f4f6;
  --branco:#fff;
  --r:14px;
  --r-sm:10px;
  --shadow:0 2px 16px rgba(229,147,140,.13);
  font-family:'Open Sans',system-ui,sans-serif;
  background: linear-gradient(180deg,#f5b8b4 0,#f9cac8 10%,#fde0de 20%,#fef0ef 35%,#fff 50%) top/100% 650px no-repeat,#fff;
  position:relative;
  width:100%;
  padding:0;
  color:var(--preto);
  -webkit-font-smoothing:antialiased
}
.spb__ * {
  box-sizing:border-box;
  margin:0;
  padding:0
}
.spb__ov,.spb__ov *,.spb__qtd-modal,.spb__qtd-modal *,.spb__patch-modal,.spb__patch-modal *,.spb__obs-modal,.spb__obs-modal *,.spb__conf-ov,.spb__conf-ov * {
  box-sizing:border-box;
  font-family:'Open Sans',system-ui,sans-serif
}
.spb__::before {
  content:'';
  position:fixed;
  top:-60px;
  right:-60px;
  width:420px;
  height:420px;
  border-radius:50%;
  background:radial-gradient(circle,#f5b6b018 0%,#f5b6b038 60%,transparent 100%);
  pointer-events:none;
  z-index:0
}
.spb__::after {
  content:'';
  position:fixed;
  bottom:-80px;
  left:-60px;
  width:380px;
  height:380px;
  border-radius:50%;
  background:radial-gradient(circle,#f5b6b018 0%,#f5b6b032 60%,transparent 100%);
  pointer-events:none;
  z-index:0
}
.spb__-stitches {
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:4px;
  background:repeating-linear-gradient(90deg,#f5b6b0 0,#f5b6b0 8px,transparent 8px,transparent 14px);
  opacity:.7;
  z-index:1;
  pointer-events:none
}
@keyframes spb-floatBg {
  0%,100% {
  transform:translateY(0) scale(1)
}
50% {
  transform:translateY(-20px) scale(1.05)
}

}
.spb__body {
  padding:20px 16px 90px;
  max-width:560px;
  margin:0 auto;
  position:relative;
  z-index:1
}
.spb__card {
  background:#fff;
  border-radius:var(--r);
  padding:20px 18px;
  box-shadow:var(--shadow);
  margin-bottom:12px;
  position:relative;
  z-index:1
}
.spb__field {
  margin-bottom:16px
}
.spb__field:last-child {
  margin-bottom:0
}
.spb__label {
  display:flex;
  align-items:center;
  gap:6px;
  font-size:13.5px;
  font-weight:600;
  color:var(--preto);
  margin-bottom:7px
}
.spb__label-hint {
  font-size:12px;
  font-weight:400;
  color:var(--cinza)
}
.spb__textarea {
  width:100%;
  padding:13px 14px;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r-sm);
  font-size:16px;
  color:var(--preto);
  background:var(--cinza-l);
  outline:none;
  transition:border-color .2s,box-shadow .2s,background .2s;
  font-family:inherit;
  -webkit-appearance:none;
  display:block;
  resize:none;
  min-height:84px;
  line-height:1.55
}
.spb__textarea::placeholder {
  color:#b0b7c3;
  font-size:14px
}
.spb__textarea:focus {
  border-color:var(--rosa);
  box-shadow:0 0 0 3px rgba(245,182,176,.2);
  background:#fff
}
.spb__trigger {
  width:100%;
  padding:13px 14px;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r-sm);
  font-size:14px;
  color:#b0b7c3;
  background:var(--cinza-l);
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
  transition:border-color .2s,background .2s,color .2s;
  font-family:inherit;
  text-align:left
}
.spb__trigger.spb-has-value {
  color:var(--preto);
  font-weight:600;
  background:#fff;
  border-color:var(--rosa)
}
.spb__trigger:hover {
  border-color:var(--rosa);
  background:var(--rosa-c)
}
.spb__trigger-text {
  flex:1
}
.spb__trigger-arrow {
  font-size:11px;
  color:var(--cinza);
  margin-left:auto
}
.spb__upload-opt {
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r);
  padding:8px 10px;
  text-align:center;
  cursor:pointer;
  transition:border-color .2s,background .2s;
  background:var(--cinza-l);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px
}
.spb__upload-opt:hover {
  border-color:var(--rosa);
  background:var(--rosa-c)
}
.spb__upload-opt-icon {
  font-size:22px
}
.spb__upload-opt-label {
  font-size:13.5px;
  font-weight:600;
  color:var(--preto)
}
.spb__upload-opt-hint {
  font-size:11.5px;
  color:#b0b7c3
}
.spb__previews {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px
}
.spb__thumb {
  position:relative;
  width:68px;
  height:68px;
  border-radius:10px;
  overflow:hidden;
  border:1.5px solid var(--cinza-b);
  background:var(--cinza-l)
}
.spb__thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transition:opacity .35s
}
.spb__thumb img.spb-loaded {
  opacity:1
}
.spb__thumb-rm {
  position:absolute;
  top:3px;
  right:3px;
  width:18px;
  height:18px;
  background:rgba(26,26,26,.7);
  border-radius:50%;
  border:none;
  color:#fff;
  font-size:11px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2
}
.spb__thumb-prog {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  background:rgba(243,244,246,.95);
  z-index:1;
  border-radius:9px;
  transition:opacity .3s
}
.spb__thumb-prog.spb-done {
  opacity:0;
  pointer-events:none
}
.spb__thumb-prog-bar {
  width:44px;
  height:4px;
  background:var(--cinza-b);
  border-radius:2px;
  overflow:hidden
}
.spb__thumb-prog-fill {
  height:100%;
  background:var(--rosa);
  border-radius:2px;
  width:0%;
  transition:width .25s ease
}
.spb__thumb-prog-pct {
  font-size:10px;
  font-weight:700;
  color:var(--cinza);
  font-family:inherit
}
.spb__btn-submit {
  position:relative;
  width:65%;
  margin:16px auto 0;
  padding:13px 16px;
  background:var(--rosa);
  border:none;
  border-radius:50px;
  font-size:14px;
  font-weight:700;
  color:#7a2e28;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:background .2s,transform .1s;
  box-shadow:0 4px 16px rgba(245,182,176,.5);
  font-family:inherit
}
.spb__btn-submit:hover {
  background:var(--rosa-e);
  color:#fff
}
.spb__btn-submit:active {
  transform:scale(.98)
}
.spb__ov {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.15);
  z-index:99999;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
  display:flex;
  align-items:center;
  justify-content:center
}
.spb__ov.spb-open {
  opacity:1;
  pointer-events:all
}
#spb-txt-ov { background:rgba(0,0,0,.5) }
.spb__txt-sheet {
  position:fixed;
  top:calc(50% + 20px);
  left:50%;
  transform:translate(-50%,-50%) scale(.92);
  width:calc(100% - 40px);
  max-width:400px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.22);
  z-index:100000;
  opacity:0;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  pointer-events:none;
  overflow-y:auto
}
.spb__ov.spb-open .spb__txt-sheet {
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
  pointer-events:all
}
#spb-sim-modal .spb__txt-sheet {
  top:16px;
  left:50%;
  transform:translateX(-50%) scale(.92);
  max-height:calc(100vh - 32px)
}
#spb-sim-modal.spb-open .spb__txt-sheet {
  transform:translateX(-50%) scale(1);
  opacity:1;
  pointer-events:all
}
.spb__txt-head {
  display:flex;
  align-items:center;
  gap:8px;
  padding:16px 18px 14px;
  border-bottom:1px solid var(--cinza-b)
}
.spb__txt-title {
  font-size:16px;
  font-weight:800;
  color:var(--preto)
}
.spb__txt-close {
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--cinza-l);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--cinza);
  transition:background .18s
}
.spb__txt-close:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
.spb__txt-body {
  padding:16px 18px 24px
}
.spb__txt-input {
  width:100%;
  padding:13px 14px;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r-sm);
  font-size:16px;
  color:var(--preto);
  background:var(--cinza-l);
  outline:none;
  font-family:inherit;
  display:block;
  transition:border-color .2s,background .2s;
  -webkit-appearance:none;
  box-sizing:border-box;
  resize:none;
  white-space:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  line-height:1.2
}
.spb__txt-input:focus {
  border-color:var(--rosa);
  background:#fff;
  box-shadow:0 0 0 3px rgba(245,182,176,.2)
}
.spb__txt-hint {
  font-size:12px;
  color:var(--cinza);
  margin-top:6px
}
.spb__txt-btn {
  width:100%;
  padding:14px;
  background:#F5B6B0!important;
  border:none;
  border-radius:var(--r-sm);
  font-size:15px;
  font-weight:700;
  color:#fff!important;
  cursor:pointer;
  font-family:inherit;
  transition:background .2s;
  margin-top:14px;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  text-align:center;
  box-sizing:border-box;
  line-height:1.4
}
.spb__txt-btn:hover {
  background:var(--rosa-e)
}
.spb__list-sheet {
  position:fixed;
  top:calc(50% + 45px);
  left:50%;
  transform:translate(-50%,-50%) scale(.92);
  width:calc(100% - 40px);
  max-width:320px;
  max-height:90vh;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.22);
  z-index:100000;
  opacity:0;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  pointer-events:none;
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.spb__ov.spb-open .spb__list-sheet {
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
  pointer-events:all
}
#spb-pick-ov .spb__list-sheet {
  top:50%
}
.spb__list-head {
  display:flex;
  gap:8px;
  align-items:center;
  padding:16px 18px 14px;
  border-bottom:1px solid var(--cinza-b)
}
.spb__list-title {
  font-size:16px;
  font-weight:800;
  color:var(--preto)
}
.spb__list-close {
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--cinza-l);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--cinza);
  transition:background .18s
}
.spb__list-close:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
.spb__list-body {
  padding:8px 0;
  flex:1 1 auto;
  overflow-y:auto;
  min-height:0
}
.spb__list-item {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 18px;
  cursor:pointer;
  transition:background .15s;
  border-bottom:1px solid var(--cinza-b)
}
.spb__list-item:last-child {
  border-bottom:none
}
.spb__list-item:hover {
  background:var(--rosa-f)
}
.spb__list-item.spb-sel {
  background:var(--rosa-c)
}
.spb__list-name {
  font-size:15px;
  font-weight:500;
  color:var(--preto)
}
.spb__list-check {
  width:22px;
  height:22px;
  border-radius:50%;
  border:1.5px solid var(--cinza-b);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  font-size:11px;
  transition:background .15s,border-color .15s
}
.spb__list-item.spb-sel .spb__list-check {
  background:var(--rosa-e);
  border-color:var(--rosa-e);
  color:#fff
}
.spb__conf-ov {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  z-index:99999;
  opacity:0;
  pointer-events:none;
  transition:opacity .42s cubic-bezier(.4,0,.2,1)
}
.spb__conf-ov.spb-open {
  opacity:1;
  pointer-events:all
}
.spb__conf-sheet {
  background:#fff;
  width:100%;
  max-width:560px;
  border-radius:22px 22px 0 0;
  padding:0 0 32px;
  max-height:88vh;
  overflow-y:auto;
  transform:translateY(100%);
  opacity:0;
  transition:transform .48s cubic-bezier(.32,.72,0,1),opacity .35s ease;
  box-shadow:0 -8px 40px rgba(0,0,0,.18)
}
.spb__conf-ov.spb-open .spb__conf-sheet {
  transform:translateY(0);
  opacity:1
}
.spb__conf-handle {
  width:38px;
  height:4px;
  background:var(--cinza-b);
  border-radius:2px;
  margin:13px auto 4px;
  cursor:grab;
  display:block;
  touch-action:none
}
.spb__conf-inner {
  padding:6px 20px 24px
}
.spb__conf-title {
  font-size:14px;
  font-weight:600;
  color:var(--cinza);
  text-align:center;
  margin-bottom:4px
}
.spb__price-box {
  background:transparent;
  border:none;
  border-radius:0;
  padding:4px 20px 18px;
  text-align:left;
  margin-bottom:0
}
.spb__price-label {
  display:none
}
.spb__price-value {
  font-size:21px;
  font-weight:500;
  color:#e89a93;
  letter-spacing:0;
  text-align:center
}
.spb__price-note {
  font-size:11.5px;
  color:var(--cinza);
  margin-top:4px
}
.spb__summary {
  border-radius:var(--r);
  overflow:hidden;
  margin-bottom:18px
}
.spb__sum-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:11px 14px;
  background:var(--cinza-l);
  border-bottom:1px solid var(--cinza-b);
  font-size:13.5px
}
.spb__sum-row:last-child {
  border-bottom:none
}
.spb__sum-label {
  color:var(--cinza)
}
.spb__sum-val {
  font-weight:700;
  color:var(--preto)
}
.spb__sum-val.hi {
  color:var(--rosa-e)
}
.spb__info-block {
  margin-bottom:18px
}
.spb__info-item {
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 13px;
  background:var(--cinza-l);
  border-radius:var(--r-sm);
  margin-bottom:8px
}
.spb__info-icon {
  font-size:17px;
  flex-shrink:0
}
.spb__info-text strong {
  display:block;
  font-size:13px;
  font-weight:700;
  color:var(--preto)
}
.spb__info-text span {
  font-size:12.5px;
  color:var(--cinza)
}
.spb__btn-wpp {
  width:100%;
  padding:16px;
  background:#25D366;
  border:none;
  border-radius:var(--r);
  font-size:15.5px;
  font-weight:700;
  color:#fff;
  cursor:pointer;
  font-family:inherit;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  transition:background .2s;
  box-shadow:0 4px 16px rgba(37,211,102,.3);
  margin-bottom:10px
}
.spb__btn-wpp:hover {
  background:#1ebe5d
}
.spb__btn-back {
  width:100%;
  padding:13px;
  background:transparent;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r);
  font-size:14px;
  font-weight:600;
  color:var(--cinza);
  cursor:pointer;
  font-family:inherit;
  transition:border-color .2s;
  display:block
}
.spb__btn-back:hover {
  border-color:var(--rosa);
  color:var(--preto)
}
.spb__qtd-modal {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:99999;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
  display:flex;
  align-items:center;
  justify-content:center
}
.spb__qtd-modal.spb-open {
  opacity:1;
  pointer-events:all
}
.spb__qtd-sheet {
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) scale(.92);
  width:calc(100% - 40px);
  max-width:340px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.22);
  z-index:100000;
  opacity:0;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  pointer-events:none;
  overflow:hidden
}
#spb-farda-modal .spb__qtd-sheet {
  max-width:310px
}
.spb__qtd-modal.spb-open .spb__qtd-sheet {
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
  pointer-events:all
}
.spb__qtd-head {
  display:flex;
  gap:8px;
  align-items:center;
  padding:12px 14px 10px;
  border-bottom:1px solid var(--cinza-b)
}
.spb__qtd-title {
  font-size:14px;
  font-weight:500;
  color:var(--preto)
}
.spb__qtd-close {
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--cinza-l);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--cinza);
  transition:background .18s
}
.spb__qtd-close:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
.spb__qtd-body {
  padding:12px
}
.spb__qtd-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:8px
}
.spb__qtd-btn {
  padding:12px 6px;
  background:#fff;
  border:1.5px solid #f5b6b0;
  border-radius:10px;
  font-size:14px;
  font-weight:700;
  color:#f5b6b0;
  cursor:pointer;
  font-family:inherit;
  transition:all .18s;
  text-align:center
}
.spb__qtd-btn:hover {
  background:#f5b6b0;
  color:#fff
}
.spb__qtd-btn.spb-sel {
  background:#f5b6b0;
  color:#fff;
  box-shadow:0 2px 8px rgba(245,182,176,.4)
}
.spb__qtd-btn-mais {
  width:100%;
  padding:10px;
  background:var(--cinza-l);
  border:1.5px solid var(--cinza-b);
  border-radius:10px;
  font-size:13px;
  font-weight:600;
  color:var(--cinza);
  cursor:pointer;
  font-family:inherit;
  transition:all .18s;
  text-align:center
}
.spb__qtd-btn-mais:hover {
  border-color:#f5b6b0;
  color:#f5b6b0;
  background:#fff
}
.spb__toast {
  position:fixed;
  bottom:28px;
  left:50%;
  transform:translateX(-50%) translateY(80px);
  background:var(--preto);
  color:#fff;
  padding:10px 22px;
  border-radius:30px;
  font-size:13.5px;
  z-index:100001;
  transition:transform .3s;
  pointer-events:none;
  white-space:nowrap
}
.spb__toast.spb-show {
  transform:translateX(-50%) translateY(0)
}
.spb__ride {
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  background:#fff;
  border-radius:20px 20px 0 0;
  z-index:9991;
  box-shadow:0 -8px 40px rgba(0,0,0,.18);
  transition:transform .38s cubic-bezier(.32,.72,0,1);
  transform:translateY(100%);
  will-change:transform;
  max-height:92vh;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  pointer-events:none
}
.spb__ride.spb-peek {
  transform:translateY(80%)
}
.spb__ride.spb-mid {
  transform:translateY(calc(100% - 52vh));
  pointer-events:all
}
.spb__ride.spb-full {
  transform:translateY(0);
  pointer-events:all
}
.spb__ride-hdl-w {
  padding:12px 0 4px;
  text-align:center;
  cursor:grab;
  flex-shrink:0;
  touch-action:none;
  pointer-events:all
}
.spb__ride-hdl {
  width:40px;
  height:4px;
  background:var(--cinza-b);
  border-radius:2px;
  display:inline-block
}
.spb__patch-modal {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.5);
  z-index:99999;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
  display:flex;
  align-items:center;
  justify-content:center
}
.spb__patch-modal.spb-open {
  opacity:1;
  pointer-events:all
}
.spb__patch-sheet {
  position:fixed;
  top:calc(50% - 35px);
  left:50%;
  transform:translate(-50%,-50%) scale(.92);
  width:calc(100% - 32px);
  max-width:480px;
  height:calc(85vh - 70px);
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.22);
  z-index:100000;
  opacity:0;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  pointer-events:none;
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.spb__patch-modal.spb-open .spb__patch-sheet {
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
  pointer-events:all
}
.spb__patch-head {
  display:flex;
  gap:8px;
  align-items:center;
  padding:14px 16px 12px;
  border-bottom:1px solid var(--cinza-b);
  flex-shrink:0;
  max-height:120px;
  overflow:hidden;
  transition:max-height .25s ease,opacity .18s ease,padding .25s ease,border-color .25s ease
}
.spb__patch-title {
  font-size:15px;
  font-weight:800;
  color:var(--preto)
}
.spb__patch-close {
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--cinza-l);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--cinza);
  transition:background .18s
}
.spb__patch-close:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
.spb__patch-counter {
  font-size:12px;
  color:var(--cinza);
  background:var(--rosa-c);
  padding:4px 12px;
  border-radius:20px;
  font-weight:600
}
.spb__patch-body {
  padding:12px 16px;
  overflow-y:auto;
  flex:1;
  min-height:0;
  background:var(--cinza-l)
}
.spb__patch-grid2 {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px
}
.spb__patch-item2 {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:0;
  border:2px solid #e5e7eb;
  border-radius:14px;
  cursor:pointer;
  transition:all .2s;
  background:#fff;
  position:relative;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
  overflow:hidden
}
.spb__patch-item2:hover {
  border-color:var(--rosa);
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(245,182,176,.3)
}
.spb__patch-item2.spb-sel {
  border-color:var(--rosa-e);
  background:var(--rosa-c);
  box-shadow:0 2px 8px rgba(245,182,176,.4)
}
.spb__patch-img-wrap {
  width:100%;
  overflow:hidden;
  line-height:0
}
.spb__patch-img2 {
  width:100%;
  height:auto;
  display:block;
  background:#fff
}
.spb__patch-ph2 {
  display:none;
  width:100%;
  aspect-ratio:1/1;
  background:linear-gradient(135deg,var(--rosa-c),var(--cinza-l));
  align-items:center;
  justify-content:center;
  font-size:32px
}
.spb__patch-text-row {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:7px 8px;
  flex-wrap:wrap
}
.spb__patch-name2 {
  font-size:12px;
  font-weight:500;
  color:var(--preto);
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.spb__patch-price2 {
  font-size:11px;
  font-weight:500;
  color:var(--rosa-e);
  white-space:nowrap;
  flex-shrink:0
}
.spb__patch-check2 {
  position:absolute;
  top:4px;
  right:4px;
  width:20px;
  height:20px;
  background:#f5b6b0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:11px;
  opacity:0;
  transition:opacity .2s;
  box-shadow:0 1px 3px rgba(0,0,0,.2)
}
.spb__patch-item2.spb-sel .spb__patch-check2 {
  opacity:1
}
.spb__patch-selected-area {
  padding:10px 16px;
  background:#fff;
  border-bottom:1px solid var(--cinza-b);
  display:none
}
.spb__patch-selected-area.spb-visible {
  display:block
}
.spb__patch-selected-title {
  font-size:11px;
  font-weight:700;
  color:var(--cinza);
  text-transform:uppercase;
  letter-spacing:.5px;
  margin-bottom:8px
}
.spb__patch-selected-list {
  display:flex;
  flex-wrap:wrap;
  gap:6px
}
.spb__patch-sel-tag {
  display:flex;
  align-items:center;
  gap:5px;
  background:var(--rosa-c);
  border:1.5px solid var(--rosa);
  border-radius:20px;
  padding:5px 8px 5px 6px;
  font-size:12px;
  font-weight:600;
  color:var(--preto)
}
.spb__patch-sel-tag img {
  width:20px;
  height:20px;
  border-radius:4px;
  object-fit:cover;
  flex-shrink:0
}
.spb__patch-sel-rm {
  width:16px;
  height:16px;
  border-radius:50%;
  background:var(--rosa-e);
  border:none;
  color:#fff;
  font-size:10px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  line-height:1;
  padding:0;
  transition:background .15s
}
.spb__patch-sel-rm:hover {
  background:#c0706a
}
.spb__patch-actions {
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:12px 16px;
  background:#fff;
  border-top:1px solid var(--cinza-b);
  flex-shrink:0;
  max-height:160px;
  overflow:hidden;
  transition:max-height .25s ease,opacity .18s ease,padding .25s ease,border-color .25s ease
}
.spb__patch-modal.patch-hdr-hidden .spb__patch-head,
.spb__patch-modal.patch-hdr-hidden .spb__patch-actions {
  max-height:0 !important;
  opacity:0;
  padding-top:0 !important;
  padding-bottom:0 !important;
  border-color:transparent !important
}
#sp-bottom-nav {
  transition:transform .25s ease
}
#sp-bottom-nav.spb-nav-hidden {
  transform:translate(-50%,140%) !important
}
.spb__patch-btn {
  flex:1;
  padding:12px;
  border-radius:10px;
  border:none;
  font-size:14px;
  font-weight:700;
  cursor:pointer;
  font-family:inherit;
  transition:all .2s
}
.spb__patch-btn-clear {
  background:var(--cinza-l);
  color:var(--cinza)
}
.spb__patch-btn-clear:hover {
  background:var(--cinza-b)
}
.spb__patch-btn-ok {
  background:var(--rosa);
  color:#7a2e28
}
.spb__patch-btn-ok:hover {
  background:var(--rosa-e);
  color:#fff
}
.spb__patch-btn-all {
  width:100%;
  padding:10px;
  border-radius:10px;
  border:1.5px solid var(--rosa);
  background:#fff;
  color:var(--rosa-e);
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  font-family:inherit;
  margin-bottom:12px;
  transition:all .2s
}
.spb__patch-btn-all:hover {
  background:var(--rosa);
  color:#fff
}
.spb__patch-preview {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px
}
.spb__patch-tag {
  display:flex;
  align-items:center;
  gap:4px;
  background:var(--rosa-c);
  border:1px solid var(--rosa);
  border-radius:20px;
  padding:4px 10px;
  font-size:11px;
  font-weight:600;
  color:var(--preto)
}
.spb__patch-tag img {
  width:16px;
  height:16px;
  border-radius:3px;
  object-fit:cover
}
.spb__btn-voltar {
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  background:#fff;
  border:none;
  border-radius:50%;
  cursor:pointer;
  color:#374151;
  flex:0 0 auto;
  box-shadow:0 1px 6px rgba(0,0,0,0.13);
  transition:background .2s,box-shadow .2s;
  margin-bottom:14px;
}
.spb__btn-voltar:hover {
  background:#f3f4f6;
}
.spb__btn-voltar svg {
  transition:transform .2s
}
.spb__btn-voltar:hover svg {
  transform:translateX(-2px)
}
.spb__flow-actions {
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  gap:8px;
  margin-top:14px;
  align-items:center
}
.spb__flow-ok {
  flex:1;
  padding:14px;
  background:#F5B6B0!important;
  border:none;
  border-radius:var(--r-sm);
  font-size:15px;
  font-weight:700;
  color:#fff!important;
  cursor:pointer;
  font-family:inherit;
  transition:background .2s;
  text-align:center;
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:6px;
  visibility:visible!important;
  opacity:1!important
}
.spb__flow-ok:hover {
  background:var(--rosa-e)!important
}
.spb__flow-skip {
  flex:0 0 auto;
  padding:12px 18px;
  background:#fff;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r-sm);
  font-size:14px;
  font-weight:600;
  color:var(--preto);
  cursor:pointer;
  font-family:inherit;
  transition:all .2s;
  text-align:center;
  white-space:nowrap
}
.spb__flow-skip:hover {
  border-color:var(--rosa);
  color:var(--rosa-e)
}
.spb__flow-back {
  flex:0 0 auto;
  padding:12px 16px;
  background:#fff;
  border:1.5px solid var(--cinza-b);
  border-radius:var(--r-sm);
  font-size:14px;
  font-weight:600;
  color:var(--cinza);
  cursor:pointer;
  font-family:inherit;
  transition:all .2s;
  text-align:center;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:4px
}
.spb__flow-back:hover {
  border-color:var(--cinza-b);
  color:var(--preto)
}
.spb__input-wrap {
  position:relative;
  width:100%;
  box-sizing:border-box
}
.spb__input-wrap .spb__txt-input {
  padding-right:38px;
  box-sizing:border-box;
  width:100%
}
.spb__input-clear {
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:20px;
  height:20px;
  border-radius:50%;
  background:var(--cinza-b);
  border:none;
  cursor:pointer;
  display:none;
  align-items:center;
  justify-content:center;
  font-size:12px;
  color:var(--cinza);
  transition:background .15s;
  line-height:1
}
.spb__input-clear.visible {
  display:flex;
}
.spb__input-clear:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
@keyframes spbShake {
  0%,100%{transform:translateX(0)}
  15%{transform:translateX(-8px)}
  30%{transform:translateX(8px)}
  45%{transform:translateX(-5px)}
  60%{transform:translateX(5px)}
  75%{transform:translateX(-3px)}
  90%{transform:translateX(3px)}
}
.spb-shake {
  animation:spbShake .45s cubic-bezier(.36,.07,.19,.97) both
}
.spb__x-warn {
  display:none;
  margin-top:10px;
  padding:10px 12px;
  background:#fff8f0;
  border:1.5px solid #f5c89a;
  border-radius:var(--r-sm);
  font-size:12.5px;
  color:#9a6200;
  font-weight:500;
  text-align:center
}
.spb__x-warn.spb-visible {
  display:block
}
.spb__sim-tipo-item {
  padding:9px 14px;
  border:1.5px solid var(--cinza-b);
  border-radius:10px;
  font-size:14px;
  font-weight:700;
  color:var(--preto);
  background:#fff;
  cursor:pointer;
  transition:all .15s;
  font-family:inherit
}
.spb__sim-tipo-item:hover,.spb__sim-tipo-item.spb-sel {
  border-color:var(--rosa-e);
  background:var(--rosa-c)
}
.spb__sim-cor-opt {
  display:flex;
  align-items:center;
  gap:6px;
  padding:8px 14px;
  border:2px solid var(--cinza-b);
  border-radius:10px;
  cursor:pointer;
  font-size:13px;
  font-weight:700;
  color:var(--preto);
  background:#fff;
  transition:all .15s;
  font-family:inherit
}
.spb__sim-cor-opt.spb-sel {
  border-color:var(--rosa-e);
  background:var(--rosa-c)
}
.spb__sim-cor-dot {
  width:14px;
  height:14px;
  border-radius:50%;
  flex-shrink:0
}
.spb__pick-card {
  border:2.5px solid var(--cinza-b);
  border-radius:14px;
  cursor:pointer;
  overflow:hidden;
  transition:border-color .2s,box-shadow .2s,transform .18s;
  background:var(--cinza-l);
  position:relative
}
.spb__pick-card:hover {
  border-color:var(--rosa);
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(245,182,176,.3)
}
.spb__pick-card.spb-sel {
  border-color:var(--rosa-e);
  box-shadow:0 4px 14px rgba(245,182,176,.4)
}
.spb__pick-img {
  width:100%;
  display:block;
  object-fit:cover
}
.spb__pick-check {
  position:absolute;
  top:8px;
  right:8px;
  width:24px;
  height:24px;
  background:var(--rosa-e);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:12px;
  opacity:0;
  transition:opacity .2s;
  box-shadow:0 2px 6px rgba(0,0,0,.2);
  font-weight:700
}
.spb__pick-card.spb-sel .spb__pick-check {
  opacity:1
}
.spb__pick-label {
  padding:10px;
  text-align:center
}
.spb__pick-name {
  font-size:13px;
  font-weight:500;
  color:var(--preto)
}
.spb__pick-desc {
  font-size:11.5px;
  color:var(--cinza);
  margin-top:2px
}
.spb__obs-modal {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.5);
  z-index:99999;
  opacity:0;
  pointer-events:none;
  transition:opacity .25s;
  display:flex;
  align-items:center;
  justify-content:center
}
.spb__obs-modal.spb-open {
  opacity:1;
  pointer-events:all
}
.spb__obs-sheet {
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%) scale(.92);
  width:calc(100% - 40px);
  max-width:420px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 48px rgba(0,0,0,.22);
  z-index:100000;
  opacity:0;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .25s;
  pointer-events:none;
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.spb__obs-modal.spb-open .spb__obs-sheet {
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
  pointer-events:all
}
.spb__obs-head {
  display:flex;
  gap:8px;
  align-items:center;
  padding:16px 18px 14px;
  border-bottom:1px solid var(--cinza-b)
}
.spb__obs-title {
  font-size:16px;
  font-weight:800;
  color:var(--preto)
}
.spb__obs-close {
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--cinza-l);
  border:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:var(--cinza);
  transition:background .18s
}
.spb__obs-close:hover {
  background:var(--rosa-c);
  color:var(--rosa-e)
}
.spb__obs-body {
  padding:16px 18px 22px;
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:0
}
#spb-obs-modal .spb__textarea {
  flex:1;
  min-height:60px;
  overflow:auto;
  resize:none
}
.spb-ok-off {
  opacity: 0.38 !important;
  pointer-events: none !important;
  box-shadow: none !important;
}


.spb__conf-icon {
  width:44px;
  height:44px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  margin:0 auto 6px
}
@media(max-width:767px) {
  .spb__body {
  padding:16px 12px 90px
}
.spb__patch-grid2 {
  grid-template-columns:repeat(2,1fr)
}
.spb__patch-modal {
  background:none;
  backdrop-filter:none
}
.spb__patch-sheet {
  top:0;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  max-width:none;
  height:100%;
  border-radius:0;
  transform:scale(.92)
}
.spb__patch-actions {
  padding-bottom:84px !important
}
.spb__patch-modal.spb-open .spb__patch-sheet {
  transform:scale(1)
}
}
@media(min-width:560px) {
  .spb__body {
  padding:28px 24px 90px
}
.spb__card {
  padding:24px 22px
}

}

@keyframes spBnavEnter {
  0%{ opacity:0; transform:translate(-50%, 28px) scale(.92); }
  60%{ opacity:1; transform:translate(-50%, -5px) scale(1.02); }
  100%{ opacity:1; transform:translate(-50%, 0) scale(1); }
}
@keyframes spBnavIconPop {
  0%{ transform:scale(1) rotate(0); }
  40%{ transform:scale(1.32) rotate(-6deg); }
  70%{ transform:scale(.92) rotate(3deg); }
  100%{ transform:scale(1) rotate(0); }
}
@keyframes spBnavDotPop {
  from{ transform:translateX(-50%) scale(0); }
  to{ transform:translateX(-50%) scale(1); }
}
#sp-bottom-nav {
  position: fixed;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  width: 78%;
  max-width: 360px;
  background: linear-gradient(160deg, #f8c8c2 0%, #f5b6b0 45%, #e39a90 100%);
  border-radius: 32px;
  padding: 5px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  z-index: 200000;
  box-shadow:
    0 1px 2px rgba(0,0,0,.05),
    0 6px 14px rgba(0,0,0,.08),
    0 20px 40px rgba(0,0,0,.12),
    0 10px 30px rgba(245,182,176,.4);
  isolation: isolate;
  animation: spBnavEnter .6s cubic-bezier(.34,1.56,.64,1) both;
}
.sp-bnav-btn {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  background: transparent;
  border: none;
  border-radius: 22px;
  cursor: pointer;
  font-family: 'Open Sans', sans-serif;
  font-size: 10px;
  font-weight: 700;
  color: rgba(255,255,255,.85);
  letter-spacing: .1px;
  text-transform: none;
  transition: color 0.2s ease, background 0.25s cubic-bezier(.4,0,.2,1), transform 0.15s cubic-bezier(.4,0,.2,1), box-shadow 0.25s ease;
  padding: 6px 4px;
  margin: 0 1px;
  position: relative;
}
.sp-bnav-btn:hover, .sp-bnav-btn:active, .sp-bnav-btn.active {
  color: #1a1a1a;
  background: rgba(255,255,255,.55);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6), 0 2px 6px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);
}
.sp-bnav-btn:active { transform: scale(.94); }
.sp-bnav-btn.active:active { transform: scale(.96); }
.sp-bnav-btn.active::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 2px;
  width: 4px; height: 4px;
  border-radius: 50%;
  background: #f5b6b0;
  transform: translateX(-50%);
  animation: spBnavDotPop .35s cubic-bezier(.34,1.56,.64,1) .05s both;
}
.sp-bnav-icon {
  width: 18px;
  height: 18px;
  border-radius: 0;
  background: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s;
  border: none;
  box-shadow: none;
}
.sp-bnav-icon svg { stroke: currentColor; transition: stroke 0.2s ease; }
.sp-bnav-icon svg.pop { animation: spBnavIconPop .45s cubic-bezier(.34,1.56,.64,1); }
.sp-bnav-btn:hover .sp-bnav-icon,
.sp-bnav-btn:active .sp-bnav-icon {
  background: none;
  transform: translateY(0);
}
.sp-bnav-sheet-ov {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0);
  z-index: 200001;
  pointer-events: none;
  transition: background 0.3s;
}
.sp-bnav-sheet-ov.open {
  background: rgba(0,0,0,0.45);
  pointer-events: all;
}
.sp-bnav-sheet {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%) scale(0.92) translateY(12px);
  opacity: 0;
  width: calc(100% - 48px);
  max-width: 380px;
  background: #ffffff;
  border-radius: 24px;
  padding: 0 0 8px;
  font-family: 'Open Sans', sans-serif;
  transition: transform 0.28s cubic-bezier(.34,1.56,.64,1), opacity 0.2s;
  box-shadow: 0 16px 48px rgba(0,0,0,0.2), 0 4px 12px rgba(0,0,0,0.08);
  max-height: calc(100dvh - 110px);
  overflow-y: auto;
}
.sp-bnav-sheet-ov.open .sp-bnav-sheet {
  transform: translateX(-50%) scale(1) translateY(0);
  opacity: 1;
}
.sp-bnav-sheet-handle {
  display: none;
}
.sp-bnav-sheet-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 16px 10px;
  border-bottom: 1px solid #f3f4f6;
  position: relative;
}
.sp-bnav-sheet-head button[aria-label="Fechar"] {
  position: absolute !important;
  right: 12px !important;
  margin-left: 0 !important;
}
.sp-bnav-sheet-head-icon {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: #fde8e6;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.95rem;
  flex-shrink: 0;
}
.sp-bnav-sheet-title {
  font-family: 'Open Sans', sans-serif;
  font-size: 0.9rem;
  font-weight: 700;
  color: #1a1a1a;
}
.sp-bnav-sheet-body {
  padding: 12px 14px 4px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sp-bnav-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #ffffff;
  border: 1.5px solid #e5e7eb;
  border-radius: 12px;
  padding: 12px 14px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.sp-bnav-row::after {
  content: '';
  position: absolute;
  top: 8px; bottom: 8px; left: 0;
  width: 3px; border-radius: 0 2px 2px 0;
  background: repeating-linear-gradient(180deg, #f5b6b0 0, #f5b6b0 5px, transparent 5px, transparent 10px);
  opacity: .55;
}
.sp-bnav-row-icon {
  font-size: 1.2rem;
  flex-shrink: 0;
}
.sp-bnav-row-label {
  font-size: 0.62rem;
  font-weight: 800;
  color: #e89a93;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 2px;
}
.sp-bnav-row-value {
  font-size: 0.82rem;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.5;
}
.sp-bnav-row-value small {
  font-size: 0.8rem;
  font-weight: 400;
  color: #6b7280;
}
.sp-bnav-badge {
  display: inline-block;
  background: #fde8e6;
  color: #e89a93;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 2px 10px;
  border-radius: 20px;
  margin-top: 4px;
}

#spb-cart-sidebar {
  position:fixed!important;
  left:0!important;right:0!important;bottom:0!important;
  width:100%!important;
  height:92vh!important;
  background:#fff!important;
  border-radius:16px 16px 0 0!important;
  display:flex!important;flex-direction:column!important;
  z-index:9999!important;
  overflow:hidden!important;
  box-shadow:0 -4px 32px rgba(0,0,0,.18)!important;
  overscroll-behavior:none!important;
  touch-action:pan-y!important;
}
#spb-cart-hdl {
  flex-shrink:0;padding:14px 20px 8px;cursor:grab;
  user-select:none;-webkit-user-select:none;
  display:flex;align-items:center;justify-content:center;position:relative;
}
#spb-cart-hdl:active { cursor:grabbing; }
#spb-cart-pill {
  width:44px;height:5px;background:#d1d5db;border-radius:4px;margin:0 auto;transition:background .2s;
}
#spb-cart-hdl:hover #spb-cart-pill { background:#F5B6B0; }
#spb-cart-x {
  position:absolute;right:16px;top:50%;transform:translateY(-50%);
  width:32px;height:32px;border-radius:50%;border:none;background:#f3f4f6;
  cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:14px;color:#6b7280;transition:background .2s,color .2s;
}
#spb-cart-x:hover { background:#fde8e6;color:#e89a93; }
#spb-cart-hdr {
  flex-shrink:0;padding:0 20px 12px;border-bottom:1.5px solid #fde8e6;
  display:flex;align-items:center;justify-content:space-between;
}
#spb-cart-hdr-title { font-size:16px;font-weight:800;color:#111827; }
#spb-cart-hdr-total { font-size:15px;font-weight:800;color:#e89a93; }
#spb-cart-body {
  flex:1 1 0;overflow-y:auto;padding:12px 20px 100px;
  display:block;
  min-height:0;
  -webkit-overflow-scrolling:touch;overscroll-behavior:contain;
}
#spb-cart-body::-webkit-scrollbar { width:4px; }
#spb-cart-body::-webkit-scrollbar-thumb { background:#F5B6B0;border-radius:4px; }
.spbc-item {
  background:#fff5f4;border:1.5px solid #fde8e6;border-radius:14px;
  padding:14px;display:flex;flex-direction:column;gap:8px;position:relative;
}
.spbc-row { display:flex;align-items:flex-start;gap:12px; }
.spbc-ico {
  width:48px;height:48px;background:#fde8e6;border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;
}
.spbc-info { flex:1;min-width:0; }
.spbc-name { font-size:14px;font-weight:500;color:#111827;margin-bottom:2px; }
.spbc-det  { font-size:12px;color:#6b7280;line-height:1.5; }
.spbc-price{ font-size:15px;font-weight:500;color:#e89a93;flex-shrink:0; }
.spbc-rm {
  position:absolute;top:10px;right:10px;width:24px;height:24px;
  border-radius:50%;border:none;background:#f3f4f6;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;color:#6b7280;transition:background .2s,color .2s;
}
.spbc-rm:hover { background:#fee2e2;color:#ef4444; }
#spb-cart-empty {
  display:flex;flex-direction:column;align-items:center;
  justify-content:center;padding:32px 0;gap:8px;
}
#spb-cart-empty-ico { font-size:2.8rem; }
#spb-cart-empty-txt { font-size:13px;color:#6b7280;text-align:center; }
#spb-cart-ftr {
  flex-shrink:0;padding:12px 20px 20px;
  border-top:1px solid #fde8e6;background:#fff;
  display:flex;flex-direction:column;gap:10px;
}
#spb-cart-total-row { display:flex;justify-content:space-between;align-items:center; }
#spb-cart-total-lbl { font-size:13px;color:#6b7280;font-weight:500; }
#spb-cart-total-val { font-size:20px;font-weight:800;color:#e89a93; }
#spb-cart-wpp {
  width:100%;padding:14px;background:#25D366;border:none;border-radius:12px;
  font-size:15px;font-weight:700;color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;gap:8px;
  font-family:inherit;transition:background .2s;
}
#spb-cart-wpp:hover { background:#1ebe5d; }
#spb-cart-mais {
  width:100%;padding:12px;background:#fde8e6;border:none;border-radius:12px;
  font-size:14px;font-weight:700;color:#e89a93;cursor:pointer;
  font-family:inherit;transition:background .2s,color .2s;
}
#spb-cart-mais:hover { background:#F5B6B0;color:#fff; }

@keyframes spb-spin {
  to { transform:rotate(360deg) }
}
@keyframes spbFabPulse {
  0%,100%{box-shadow:0 6px 24px rgba(232,154,147,.5),0 0 0 0 rgba(245,182,176,.5);}
  50%    {box-shadow:0 6px 24px rgba(232,154,147,.5),0 0 0 8px rgba(245,182,176,0);}
}
@keyframes spbFabPop {
  0%  {transform:scale(.5) translateY(20px);opacity:0;}
  60% {transform:scale(1.1) translateY(-4px);opacity:1;}
  80% {transform:scale(.96) translateY(1px);opacity:1;}
  100%{transform:scale(1) translateY(0);opacity:1;}
}
#spb-fab {
  position:fixed;right:16px;bottom:80px;
  display:none;align-items:center;gap:10px;
  background:linear-gradient(135deg,#fef0ee 0%,#f9ccc8 45%,#f5b6b0 100%);
  color:#111827;border:none;border-radius:999px;
  padding:11px 18px 11px 14px;cursor:pointer;
  font-family:'Open Sans',sans-serif;font-size:.88rem;font-weight:700;
  box-shadow:0 6px 24px rgba(232,154,147,.5),0 2px 8px rgba(0,0,0,.08);
  z-index:9997;transition:transform .2s,box-shadow .2s;white-space:nowrap;
}
#spb-fab:hover {
  background:linear-gradient(135deg,#fde8e6 0%,#f5b6b0 50%,#e89a93 100%);
  transform:translateY(-2px);
}
#spb-fab:active{transform:scale(.97);}
#spb-fab.spb-fab-pop{animation:spbFabPop .55s cubic-bezier(.34,1.56,.64,1) forwards,spbFabPulse 1.2s ease .55s 2;}
#spb-fab-ico {
  position:relative;width:28px;height:28px;background:#fff;border-radius:50%;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
#spb-fab-ico svg{width:15px;height:15px;fill:none;stroke:#6b7280;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
#spb-fab-cnt {
  position:absolute;top:-5px;right:-5px;
  background:#111827;color:#fff;font-size:.6rem;font-weight:800;
  width:16px;height:16px;border-radius:50%;
  display:none;align-items:center;justify-content:center;
  border:1.5px solid #f5b6b0;
}
#spb-fab-lbl{font-size:.72rem;font-weight:500;color:#6b7280;}
#spb-fab-val{font-size:.95rem;font-weight:800;letter-spacing:-.3px;}

@media (min-width: 769px) {
  #spb-cart-sidebar {
    left: calc(50vw - 280px) !important;
    right: calc(50vw - 280px) !important;
    width: auto !important;
    border-radius: 36px !important;
    overflow: hidden !important;
  }
  .spb__ {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .spb__body {
    width: 100%;
  }
}