:root {
  --gold: #cda86f;
  --gold-dark: #9d7c59;
  --logo-gold: #bd842d;
  --beige: #d5c4a8;
  --header: #d8d4cc;
  --section: #f4f1ed;
  --text: #595959;
  --white: #fff;
  --page: 1704px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--text); background: var(--white); font-family: "Nunito", sans-serif; }
body.locked { overflow: hidden; }
body.is-loading { overflow: hidden; }
img, svg { display: block; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.page-width { width: min(calc(100% - 48px), var(--page)); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.page-loader { position: fixed; z-index: 1000; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 18px; background: #f7f4ef; opacity: 1; visibility: visible; transition: opacity .55s ease, visibility .55s ease; }
.page-loader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.page-loader__mark { position: relative; display: flex; width: 210px; height: 165px; align-items: center; justify-content: flex-start; flex-direction: column; overflow: visible; }
.page-loader__mark img { position: relative; z-index: 1; width: 165px; height: auto; object-fit: contain; animation: loader-logo 1.6s ease-in-out infinite; }
.page-loader__ring { position: absolute; z-index: 2; bottom: 0; width: 38px; height: 38px; border: 3px solid rgba(205,168,111,.25); border-top-color: var(--gold-dark); border-right-color: var(--gold); border-radius: 50%; animation: loader-spin 1.1s linear infinite; }
.page-loader__text { color: var(--gold-dark); font-size: 13px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; animation: loader-text 1.4s ease-in-out infinite; }
@keyframes loader-spin { to { transform: rotate(360deg); } }
@keyframes loader-logo { 50% { opacity: .68; transform: scale(.97); } }
@keyframes loader-text { 50% { opacity: .45; } }

.header { height: 124px; background: var(--header); }
.header__content { display: grid; height: 100%; grid-template-columns: 34px 150px 442px 1fr; align-items: center; gap: 20px; }
.header-icon, .cart-button, .header-links a { display: grid; width: 42px; height: 42px; place-items: center; padding: 0; color: var(--logo-gold); border: 1px solid transparent; background: transparent; border-radius: 50%; cursor: pointer; transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.header-icon:hover, .cart-button:hover, .header-links a:hover { color: #96651f; background: rgba(255,255,255,.62); border-color: rgba(189,132,45,.28); box-shadow: 0 5px 12px rgba(142,93,24,.13); transform: translateY(-2px); }
.header-icon i, .cart-button i, .header-links i { font-size: 26px; filter: drop-shadow(0 1px 1px rgba(255,255,255,.35)); }
.header-logo { width: 125px; height: 76px; overflow: hidden; }
.header-logo img { width: 100%; height: 100%; object-fit: contain; transition: transform .3s ease, filter .3s ease; }
.header-logo:hover img { filter: drop-shadow(0 4px 7px rgba(157,124,89,.25)); transform: scale(1.04); }
.header-search { position: relative; width: 442px; }
.header-search input { width: 100%; height: 66px; padding: 0 58px 0 24px; border: 4px solid var(--gold); border-radius: 15px; outline: 0; font-size: 18px; font-weight: 700; transition: border-color .2s ease, box-shadow .2s ease; }
.header-search input:focus { border-color: var(--gold-dark); box-shadow: 0 0 0 5px rgba(205,168,111,.18); }
.header-search input::placeholder { color: #d6d6d6; }
.header-search button { position: absolute; top: 5px; right: 8px; display: grid; width: 48px; height: 52px; place-items: center; color: var(--logo-gold); border: 0; background: transparent; cursor: pointer; transition: color .2s ease, transform .2s ease; }
.header-search button:hover { color: #96651f; transform: scale(1.08); }
.header-search i { font-size: 24px; }
.header-links { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.header-links .dot { fill: currentColor; stroke: none; }
.cart-button { position: relative; }
.cart-button span { position: absolute; top: 0; right: 0; display: grid; min-width: 17px; height: 17px; place-items: center; padding: 0 3px; color: white; background: var(--logo-gold); border: 2px solid var(--header); border-radius: 9px; font-size: 10px; font-weight: 800; }

.mobile-menu { position: fixed; z-index: 100; inset: 0 auto 0 0; display: flex; width: min(330px, 88%); flex-direction: column; gap: 5px; padding: 80px 30px 30px; background: white; box-shadow: 10px 0 40px #0002; transform: translateX(-105%); transition: transform .25s; }
.mobile-menu.open { transform: translateX(0); }
.mobile-menu button { position: absolute; top: 20px; right: 20px; font-size: 35px; border: 0; background: none; cursor: pointer; }
.mobile-menu a { padding: 16px 5px; border-bottom: 1px solid #ddd; font-weight: 800; transition: color .2s ease, padding-left .2s ease; }
.mobile-menu a:hover { padding-left: 12px; color: var(--gold-dark); }

.top-area { padding-top: 17px; }
.monthly-plan { display: flex; height: 81px; align-items: center; justify-content: center; margin-bottom: 16px; color: white; background: var(--beige); border-radius: 15px; font-size: 25px; transition: background-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.monthly-plan:hover { background: var(--gold); box-shadow: 0 9px 22px rgba(157,124,89,.18); transform: translateY(-2px); }
.hero { position: relative; height: 842px; overflow: hidden; border-radius: 12px 12px 0 0; }
.hero-slide { position: absolute; inset: 0; visibility: hidden; opacity: 0; background-position: center; background-size: cover; transition: opacity .35s, visibility .35s; }
.hero-slide.is-active { visibility: visible; opacity: 1; }
.hero-slide--one { background-image: url("../images/banners/clube-zeal.png"); }
.hero-slide--two { background-image: url("../images/banners/cuidado-zeal.png"); }
.hero-slide--three { background-image: url("../images/banners/cuidado-patinhas.png"); }
.hero-slogan { position: absolute; z-index: 1; top: 50%; left: 7%; width: 49%; color: var(--gold-dark); transform: translateY(-50%); }
.hero-slogan span { display: block; margin-bottom: 24px; font-size: 33px; font-weight: 700; }
.hero-slogan strong { display: block; color: var(--logo-gold); font-size: clamp(48px,5vw,82px); line-height: 1.04; }
.hero-slide__link { position: absolute; z-index: 2; inset: 0; }
.hero-slide::after { position: absolute; right: -5%; bottom: -55px; left: -5%; height: 80px; content: ""; background: white; border-top: 8px solid var(--gold); border-radius: 50% 50% 0 0; transform: rotate(1deg); }
.hero-copy { position: absolute; z-index: 2; top: 30px; left: 96px; color: white; }
.hero-copy h1, .hero-copy h2 { margin: 0; font-size: 80px; font-weight: 700; letter-spacing: -6px; line-height: 1.03; }
.hero-copy h1 span, .hero-copy h1 strong, .hero-copy h2 span, .hero-copy h2 strong { display: block; }
.hero-copy h1 strong, .hero-copy h2 strong { color: var(--gold); font-weight: 800; }
.hero-copy p { margin: 78px 0 22px; font-size: 42px; font-weight: 800; }
.gold-button { display: inline-flex; min-height: 64px; align-items: center; justify-content: center; padding: 0 25px; color: white; background: linear-gradient(#ffcd6d, #a97922); background-size: 100% 160%; border-radius: 15px; box-shadow: 0 7px 14px rgba(107,72,20,.18); font-size: 31px; font-weight: 800; text-transform: uppercase; transition: background-position .25s ease, box-shadow .25s ease, transform .25s ease; }
.gold-button:hover { background-position: 0 100%; box-shadow: 0 11px 22px rgba(107,72,20,.28); transform: translateY(-3px); }
.hero-arrow { position: absolute; z-index: 4; top: 43%; display: grid; width: 52px; height: 52px; place-items: center; padding: 0; color: var(--gold); background: #666a; border: 0; border-radius: 50%; cursor: pointer; transition: color .2s ease, background-color .2s ease, transform .2s ease; }
.hero-arrow i { font-size: 22px; }
.hero-arrow:hover { color: white; background: var(--gold-dark); transform: scale(1.08); }
.hero-arrow--prev { left: 26px; }.hero-arrow--next { right: 26px; }

.advantages { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; padding-block: 27px 59px; }
.advantage { overflow: hidden; background: var(--beige); border-radius: 18px; transition: box-shadow .3s ease, transform .3s ease; }
.advantage:hover { box-shadow: 0 16px 30px rgba(90,67,38,.17); transform: translateY(-7px); }
.advantage img { width: 100%; height: 217px; object-fit: cover; transition: filter .35s ease, transform .5s ease; }
.advantage:hover img { filter: saturate(1.12); transform: scale(1.045); }
.advantage div { min-height: 154px; padding: 22px 47px 26px; color: white; }
.advantage h2 { margin: 0; font-size: 28px; line-height: 1.2; }
.advantage p { margin: 8px 0 0; font-size: 22px; line-height: 1.25; }

.products { min-height: 622px; padding: 35px 0 70px; background: var(--section); }
.products--parasite { padding-top: 66px; background: #e9e1d5; }
.section-kicker { margin: 0 0 5px; color: var(--logo-gold); font-size: 14px; font-weight: 800; letter-spacing: .15em; text-align: center; text-transform: uppercase; }
.section-title { margin: 0 0 27px; color: var(--gold-dark); font-size: 36px; text-align: center; }
.product-list { display: grid; max-width: 1552px; grid-template-columns: repeat(5, 1fr); gap: 42px; margin: auto; }
.product { position: relative; display: flex; min-height: 530px; flex-direction: column; padding: 18px 16px 20px; background: white; border-radius: 14px; transition: box-shadow .28s ease, transform .28s ease; }
.product:hover { box-shadow: 0 15px 32px rgba(90,67,38,.14); transform: translateY(-7px); }
.product.search-match, .service.search-match { box-shadow: 0 0 0 3px rgba(189,132,45,.62),0 15px 32px rgba(90,67,38,.14); }
.product[hidden], .service[hidden] { display: none!important; }
.filter-empty { max-width: 720px; margin: 28px auto 0; padding: 22px 28px; color: var(--gold-dark); background: rgba(255,255,255,.72); border: 1px solid rgba(189,132,45,.38); border-radius: 10px; font-size: 18px; font-weight: 700; text-align: center; }
.filter-empty[hidden] { display: none!important; }
.product-image { position: relative; display: grid; height: 190px; min-width: 0; place-items: center; overflow: hidden; margin-bottom: 20px; padding: 12px; background: #fff; transition: transform .35s ease; }
.product:hover .product-image { transform: scale(1.06); }
.product-image img { position: relative; z-index: 1; width: 100%; max-width: 100%; height: 100%; max-height: 175px; object-fit: contain; }
.product-image--bear img { max-width: 100%; max-height: 180px; }
.product-image--balls img { max-width: 100%; max-height: 168px; }
.product-image--bottle img { max-width: 52%; max-height: 175px; }
.product-image--bed img { max-width: 100%; max-height: 145px; }
.product-image--pack img { max-width: 100%; max-height: 178px; }
.product-image::after { position: absolute; bottom: 8px; width: 42%; height: 7px; content: ""; background: #0001; border-radius: 50%; filter: blur(5px); }
.product h3 { min-height: 42px; margin: 0 8px 18px; color: #4f4f4f; font-size: 15px; font-weight: 600; line-height: 1.3; }
.product-description { min-height: 58px; margin: 0 8px 20px; color: #777; font-size: 12px; font-weight: 400; line-height: 1.45; }
.regular-price { margin: 0 7px 2px; color: #777; font-size: 14px; }
.regular-price strong { color: var(--gold-dark); font-size: 18px; }
.price { margin-left: 7px; color: var(--gold-dark); font-size: 27px; font-weight: 800; }
.price small { padding: 4px 8px; color: white; background: #ff58b3; border-radius: 7px; font-size: 12px; vertical-align: middle; }
.club-price { margin: 4px 7px 8px; color: var(--gold); font-size: 16px; font-weight: 800; }
.product button { display: inline-flex; height: 43px; align-items: center; justify-content: center; gap: 9px; margin-top: auto; color: white; background: var(--gold); border: 0; border-radius: 5px; cursor: pointer; font-size: 18px; font-weight: 800; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.product button::before { content: "\f217"; font-family: "Font Awesome 6 Free"; font-size: 16px; font-weight: 900; }
.product button:hover { background: var(--gold-dark); box-shadow: 0 7px 13px rgba(157,124,89,.25); transform: translateY(-2px); }
.medicine-note { max-width: 800px; margin: 30px auto 0; color: #6d6254; font-size: 14px; text-align: center; }

.services { padding: 58px 0 107px; }
.large-title { margin: 0 0 48px; color: var(--gold-dark); font-size: 54px; text-align: center; }
.service-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 45px; }
.service { display: flex; min-height: 758px; align-items: center; flex-direction: column; padding: 29px 56px 39px; background: var(--section); border-radius: 14px; transition: box-shadow .3s ease, transform .3s ease; }
.service:hover { box-shadow: 0 17px 34px rgba(90,67,38,.13); transform: translateY(-7px); }
.service img { width: 205px; height: 205px; object-fit: cover; border-radius: 50%; transition: filter .35s ease, transform .4s ease; }
.service img.service-image--wide { object-position: 23% center; }
.service:hover img { filter: saturate(1.12); transform: scale(1.045) rotate(1deg); }
.service h3 { margin: 24px 0 25px; font-size: 30px; text-align: center; }
.service p { margin: 0; font-size: 24px; font-weight: 400; line-height: 1.37; text-align: justify; }
.service-actions { display: grid; width: 100%; gap: 10px; margin-top: auto; padding-top: 28px; }
.service-actions a, .service-actions button { display: flex; width: 100%; min-height: 58px; align-items: center; justify-content: center; padding: 8px 12px; border-radius: 6px; font-size: 18px; font-weight: 800; text-align: center; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.service-actions a { color: white; background: var(--gold); }
.service-actions button { color: var(--gold-dark); background: transparent; border: 2px solid var(--gold); cursor: pointer; text-transform: none; }
.service-actions a:hover, .service-actions button:hover { color: white; background: var(--gold-dark); box-shadow: 0 8px 17px rgba(157,124,89,.25); transform: translateY(-2px); }

.breed-plans { padding: 82px 0; color: white; background: linear-gradient(125deg,#8c6945,#c8a56c); }
.breed-plans__content { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 80px; }
.breed-plans .section-kicker { color: #fff3d8; text-align: left; }
.breed-plans .large-title { max-width: 820px; margin: 5px 0 18px; color: white; text-align: left; }
.breed-plans__content > div > p:last-child { max-width: 760px; margin: 0; font-size: 21px; line-height: 1.5; }
.breed-plans__preview { display: flex; min-height: 260px; align-items: center; justify-content: center; flex-direction: column; padding: 35px; border: 1px solid rgba(255,255,255,.55); background: rgba(255,255,255,.12); border-radius: 22px; text-align: center; backdrop-filter: blur(6px); }
.breed-plans__preview i { margin-bottom: 18px; font-size: 56px; }
.breed-plans__preview strong { font-size: 27px; }
.breed-plans__preview span { margin-top: 5px; font-size: 16px; }

.stores { padding: 102px 0 134px; background: var(--section); }
.stores .large-title { margin-bottom: 58px; }
.store-list { display: grid; max-width: 1422px; grid-template-columns: repeat(2, 1fr); gap: 97px; margin: auto; }
.store { display: flex; min-height: 720px; align-items: center; flex-direction: column; padding: 28px 28px 33px; background: white; border-radius: 14px; transition: box-shadow .3s ease, transform .3s ease; }
.store:hover { box-shadow: 0 18px 36px rgba(90,67,38,.15); transform: translateY(-8px); }
.store-photo { position: relative; width: 100%; height: 372px; overflow: hidden; background: #171717; border-radius: 14px; transition: filter .35s ease, transform .45s ease; }
.store:hover .store-photo { filter: brightness(1.08); transform: scale(1.012); }
.store-photo > img { width: 100%; height: 100%; object-fit: cover; }
.pin { display: grid; width: 64px; height: 64px; place-items: center; margin: 38px 0 18px; color: white; background: linear-gradient(#ffd55e,#b37717); border-radius: 50%; font-size: 18px; box-shadow: 0 1px 4px #555; transition: box-shadow .3s ease, transform .3s ease; }
.pin i { font-size: 32px; }
.store:hover .pin { box-shadow: 0 7px 14px rgba(157,124,89,.34); transform: translateY(-3px) scale(1.05); }
.store h3 { margin: 0; color: #000; font-size: 36px; }
.store address { margin-top: 4px; color: #000; font-size: 26px; font-style: normal; font-weight: 800; text-align: center; }
.store > a:not(.pin) { display: flex; min-height: 57px; align-items: center; justify-content: center; margin-top: 20px; padding: 0 36px; color: white; background: var(--gold); border-radius: 5px; font-size: 27px; font-weight: 800; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.store > a:not(.pin):hover { background: var(--gold-dark); box-shadow: 0 8px 17px rgba(157,124,89,.25); transform: translateY(-2px); }

.club-banner { display: none; height: 1080px; background-image: linear-gradient(90deg,#124578 0 48%,transparent 70%),url("../images/services/massagem-relaxante.png"); background-position: center; background-size: cover; }
.club-banner__content { padding-top: 77px; color: white; }
.club-banner h2 { margin: 0; font-size: 92px; line-height: 1.1; }.club-banner h2 span,.club-banner h2 strong{display:block}.club-banner h2 strong{color:var(--gold)}.club-banner .gold-button{margin-top:180px}

.footer { padding-top: 34px; padding-bottom: 24px; }
.footer-top { display: flex; min-height: 150px; align-items: center; justify-content: space-between; gap: 40px; padding-bottom: 20px; border-bottom: 1px solid #999; }
.footer-brand { width: 190px; }
.footer-brand > img { width: 190px; height: 105px; object-fit: contain; }
.footer-brand nav { display: flex; justify-content: center; gap: 10px; margin-top: 2px; }
.footer-brand nav a { display: grid; width: 40px; height: 40px; place-items: center; color: white; background: var(--gold); border-radius: 50%; font-size: 24px; font-weight: 800; transition: background-color .2s ease, transform .2s ease; }
.footer-brand nav a:hover { background: var(--gold-dark); transform: translateY(-3px) rotate(-3deg); }
.footer-brand nav i { font-size: 20px; }
.footer-bottom { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(500px, 2fr) minmax(150px, 1fr); align-items: center; gap: 20px; padding-top: 18px; }
.footer-copy { color: #555; font-size: 12px; font-weight: 700; line-height: 1.3; text-align: center; }.footer-copy p{margin:0}.footer-copy.reveal{opacity:1;transform:none;transition:none}
.developed-by { position: relative; display: flex; width: 155px; align-items: flex-start; justify-self: end; flex-direction: column; padding-bottom: 15px; }
.developed-by::after { position: absolute; bottom: -10px; left: 0; width: 100%; height: 2px; content: ""; background: #00c3ff; opacity: 0; transition: bottom .4s ease, opacity .4s ease; }
.developed-by img { display: block; }
.developed-by__text { position: relative; left: 0; width: 118px; transition: left .4s ease, transform .4s ease; }
.developed-by__logo { width: 155px; margin-top: 7px; }
.developed-by:hover .developed-by__text { left: 50%; transform: translateX(-50%); }
.developed-by:hover::after { bottom: 0; opacity: 1; }
.whatsapp { position: fixed; z-index: 30; right: 24px; bottom: 24px; display: flex; width: 68px; height: 68px; align-items: center; justify-content: center; color: white; background: linear-gradient(145deg,#2ee66d,#16b94d); border: 4px solid white; border-radius: 50%; box-shadow: 0 8px 24px rgba(18,135,62,.3), inset 0 1px 1px rgba(255,255,255,.38); transition: width .3s ease, border-radius .3s ease, box-shadow .25s ease, transform .25s ease; animation: whatsapp-pulse 3s ease-in-out infinite; }
.whatsapp::before { position: absolute; inset: -8px; content: ""; border: 1px solid rgba(37,211,102,.26); border-radius: inherit; pointer-events: none; }
.whatsapp span { max-width: 0; overflow: hidden; font-size: 13px; font-weight: 800; letter-spacing: .02em; opacity: 0; white-space: nowrap; transition: max-width .3s ease, margin-right .3s ease, opacity .2s ease; }
.whatsapp i { flex: 0 0 auto; font-size: 35px; }
.whatsapp:hover { width: 174px; border-radius: 34px; box-shadow: 0 12px 30px rgba(18,135,62,.38), inset 0 1px 1px rgba(255,255,255,.38); transform: translateY(-4px); animation-play-state: paused; }
.whatsapp:hover span { max-width: 100px; margin-right: 10px; opacity: 1; }
@keyframes whatsapp-pulse { 50% { box-shadow: 0 8px 24px rgba(18,135,62,.3), 0 0 0 9px rgba(37,211,102,0), inset 0 1px 1px rgba(255,255,255,.38); } }
.notice { position: fixed; z-index: 200; bottom: 25px; left: 50%; padding: 12px 20px; color: white; background: #444; border-radius: 7px; opacity: 0; pointer-events: none; transform: translate(-50%,20px); transition: .2s; }.notice.visible{opacity:1;transform:translate(-50%,0)}

.cart-overlay { position: fixed; z-index: 300; inset: 0; visibility: hidden; background: rgba(38,31,24,.42); opacity: 0; transition: opacity .25s,visibility .25s; }
.cart-overlay.open { visibility: visible; opacity: 1; }
.cart-panel { position: fixed; z-index: 301; top: 0; right: 0; display: flex; width: min(480px,100%); height: 100dvh; flex-direction: column; padding: 28px; background: #fff; box-shadow: -15px 0 45px rgba(50,38,22,.2); transform: translateX(105%); transition: transform .3s ease; }
.cart-panel.open { transform: translateX(0); }
.cart-panel__header { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid #ddd3c6; }
.cart-panel__header span { color: var(--logo-gold); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.cart-panel__header h2 { margin: 0; color: #4f4f4f; font-size: 32px; }
.cart-panel__header button { width: 42px; height: 42px; color: #777; background: var(--section); border: 0; border-radius: 50%; cursor: pointer; font-size: 30px; line-height: 1; }
.cart-items { overflow-y: auto; flex: 1; padding: 8px 4px 12px 0; }
.cart-item { display: grid; grid-template-columns: 1fr auto; gap: 8px 15px; padding: 18px 0; border-bottom: 1px solid #eee8df; }
.cart-item h3 { margin: 0; color: #4f4f4f; font-size: 16px; }
.cart-item__prices { margin: 4px 0 0; color: #777; font-size: 13px; }
.cart-item__prices strong { color: var(--gold-dark); }
.cart-item__controls { display: flex; align-items: center; align-self: center; gap: 7px; }
.cart-item__controls button { display: grid; width: 28px; height: 28px; place-items: center; color: var(--gold-dark); background: #f5f1eb; border: 0; border-radius: 50%; cursor: pointer; font-weight: 800; }
.cart-item__remove { grid-column: 1/-1; justify-self: start; padding: 0; color: #8b7770; background: none; border: 0; cursor: pointer; font-size: 12px; text-decoration: underline; }
.cart-empty { display: flex; flex: 1; align-items: center; justify-content: center; flex-direction: column; color: #8c8177; text-align: center; }
.cart-empty[hidden], .cart-summary[hidden] { display: none!important; }
.cart-empty i { color: var(--beige); font-size: 50px; }.cart-empty p{font-size:18px}.cart-empty a{padding:10px 18px;color:white;background:var(--gold);border-radius:5px;font-weight:800}
.cart-summary { padding-top: 18px; border-top: 1px solid #ddd3c6; }
.cart-summary p { display: flex; justify-content: space-between; margin: 5px 0; font-size: 17px; }
.cart-summary__club { color: var(--logo-gold); font-size: 20px!important; }
.cart-summary > button { width: 100%; min-height: 56px; margin-top: 16px; color: white; background: #22bd5b; border: 0; border-radius: 7px; cursor: pointer; font-size: 17px; font-weight: 800; }
.cart-summary > button:hover { background: #159f47; }
.cart-summary small { display: block; margin-top: 10px; color: #888; line-height: 1.35; text-align: center; }
.video-dialog { width: min(520px,calc(100% - 30px)); padding: 48px 40px 40px; color: var(--text); border: 0; border-radius: 16px; box-shadow: 0 25px 80px #0005; text-align: center; }
.video-dialog::backdrop { background: #251d17a8; }
.video-dialog > button { position: absolute; top: 12px; right: 14px; color: #777; background: none; border: 0; cursor: pointer; font-size: 32px; }
.video-dialog > i { color: var(--gold); font-size: 56px; }.video-dialog h2{margin:18px 0 8px;color:var(--gold-dark)}.video-dialog p{margin:0;font-size:17px;line-height:1.5}

.reveal { opacity: 0; transform: translateY(34px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.65,.3,1); transition-delay: var(--reveal-delay, 0ms); }
.reveal.reveal--left { transform: translateX(-34px); }
.reveal.reveal--right { transform: translateX(34px); }
.reveal.is-visible { opacity: 1; transform: translate(0); }

@media (max-width: 1100px) {
  .header__content { grid-template-columns: 34px 112px 1fr auto; }.header-logo{width:112px;height:70px}.header-search{width:100%}.header-links a{display:none}
  .hero{height:650px}.hero-copy h1,.hero-copy h2{font-size:60px}.hero-copy p{font-size:32px;margin-top:55px}
  .advantages{grid-template-columns:repeat(2,1fr)}.product-list{gap:14px}.service-list{grid-template-columns:repeat(2,1fr);gap:24px}.service{padding-inline:30px}.store-list{gap:24px}
}

@media (max-width: 720px) {
  .page-width { width: min(calc(100% - 24px), var(--page)); }
  .header{height:135px}.header__content{grid-template-columns:40px 1fr 40px;grid-template-rows:76px 50px;gap:0 8px}.header-logo{justify-self:center;width:100px;height:60px}.header-search{grid-row:2;grid-column:1/-1}.header-search input{height:44px;border-width:2px;border-radius:9px;font-size:15px}.header-search button{top:0;height:44px}.header-links{grid-column:3;grid-row:1}.cart-button{width:40px}.menu-button{grid-row:1}.monthly-plan{height:52px;margin-bottom:12px;font-size:15px;text-align:center}
  .hero{height:calc((100vw - 24px) * .5625);min-height:206px;border-radius:9px;background:#f5ede5}.hero-slide{background-position:center;background-repeat:no-repeat;background-size:contain}.hero-slide--one{background-image:url("../images/banners/clube-zeal.png")}.hero-slide--two{background-image:url("../images/banners/cuidado-zeal.png")}.hero-slide--three{background-image:url("../images/banners/cuidado-patinhas.png")}.hero-slide::after{height:42px;bottom:-29px;border-top-width:5px}.hero-arrow{top:50%;bottom:auto;width:36px;height:36px;transform:translateY(-50%)}.hero-arrow:hover{transform:translateY(-50%) scale(1.08)}.hero-arrow i{font-size:18px}.hero-arrow--prev{left:10px}.hero-arrow--next{right:10px}
  .advantages{grid-template-columns:1fr;gap:15px;padding-bottom:45px}.advantage{display:grid;grid-template-columns:42% 58%}.advantage img{height:150px}.advantage div{display:flex;min-height:150px;justify-content:center;flex-direction:column;padding:15px 18px}.advantage h2{font-size:20px}.advantage p{font-size:16px}
  .products{padding:34px 0 45px}.section-title{font-size:27px}.product-list{overflow-x:auto;grid-auto-columns:76%;grid-auto-flow:column;grid-template-columns:none;scroll-snap-type:x mandatory}.product{scroll-snap-align:start}.product-list::-webkit-scrollbar{display:none}
  .services{padding:48px 0}.large-title{margin-bottom:30px;font-size:40px}.service-list{grid-template-columns:1fr;gap:20px}.service{min-height:650px;padding:24px 30px 30px}.service img{width:180px;height:180px}.service p{font-size:19px}.service-actions a,.service-actions button{min-height:54px;font-size:17px}.breed-plans{padding:55px 0}.breed-plans__content{grid-template-columns:1fr;gap:32px}.breed-plans .large-title{font-size:36px}.breed-plans__content>div>p:last-child{font-size:18px}.breed-plans__preview{min-height:210px}
  .stores{padding:55px 0}.store-list{grid-template-columns:1fr}.store{min-height:580px;padding:18px}.store-photo{height:270px}.store h3{font-size:30px}.store address{font-size:19px}.store > a:not(.pin){font-size:20px}.pin{margin-top:25px}
  .club-banner{height:690px}.club-banner h2{font-size:50px}.club-banner .gold-button{margin-top:100px}
  .footer{padding-top:28px;padding-bottom:22px}.footer-top{min-height:0;align-items:center;flex-direction:column;justify-content:center;gap:24px;padding-bottom:22px}.footer-brand{width:155px;margin:0 auto}.footer-brand>img{width:155px;height:88px}.footer-brand nav{gap:9px}.footer-brand nav a{width:38px;height:38px}.footer-brand nav i{font-size:19px}.footer-bottom{grid-template-columns:1fr;gap:0;padding-top:16px}.footer-bottom__spacer{display:none}.footer-copy{font-size:10px}.developed-by{width:145px;align-self:center;justify-self:center;padding-bottom:12px}.developed-by__text{width:110px}.developed-by__logo{width:145px;margin-top:6px}.whatsapp,.whatsapp:hover{right:16px;bottom:16px;width:60px;height:60px;border-width:3px;border-radius:50%;transform:none}.whatsapp span,.whatsapp:hover span{display:none}.whatsapp i{font-size:31px}.cart-panel{padding:22px 18px}.cart-panel__header h2{font-size:28px}
}

@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.page-loader__ring,.page-loader__mark img,.page-loader__text,.whatsapp{animation:none}}
