/* PETVENTORY v3.6.1 — CSS-only visual polish; intentionally no global resets.
   All rules are scoped to the existing .pv-store premium storefront. */
:root{--pv361-navy:#102a43;--pv361-teal:#159a9c;--pv361-coral:#f26b5b;--pv361-border:#e3e9ed;--pv361-muted:#586e7d}

/* Floating chat: compact icon never hides a purchase panel or checkout fields. */
.pv-store .pv29-whatsapp{
    width:60px!important;height:60px!important;min-height:60px!important;
    padding:5px!important;gap:0!important;right:max(18px,env(safe-area-inset-right))!important;
    bottom:max(18px,env(safe-area-inset-bottom))!important;
    justify-content:center!important;border-radius:50%!important;
    box-shadow:0 13px 35px rgba(16,42,67,.20)!important;
    z-index:180!important;
}
.pv-store .pv29-whatsapp .pv29-whatsapp-label,
.pv-store .pv29-whatsapp .pv29-whatsapp-arrow{display:none!important}
.pv-store .pv29-whatsapp .pv29-whatsapp-icon{
    width:47px!important;height:47px!important;flex:0 0 47px!important;
    font-size:28px!important;box-shadow:none!important
}
.pv-store .pv29-whatsapp:hover{transform:translateY(-2px) scale(1.025)}
.pv-store .pv29-whatsapp:focus-visible{outline:3px solid #159a9c!important;outline-offset:3px}

/* Common: consistent readable links, keyboard focus and better rhythm. */
.pv-store :is(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(21,154,156,.7);outline-offset:3px}
.pv-store .newsletter-strip{box-shadow:none}
.pv-store .newsletter-strip .newsletter-inner{
    min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;gap:20px;padding-top:21px;padding-bottom:21px;
}
.pv-store .newsletter-strip .newsletter-inner h2{font-size:clamp(16px,1.6vw,20px);line-height:1.3;margin:0 0 4px;color:#fff}
.pv-store .newsletter-strip .newsletter-inner p{font-size:13px;line-height:1.55;margin:0;color:#ebffff}
.pv-store .newsletter-strip .newsletter-inner .btn{min-height:43px;border-radius:13px;white-space:nowrap}

/* Footer: bring brand, policies, assurances and copyright into one tight visual system. */
.pv-store .site-footer{background:#102a43;color:#ecf5f7}
.pv-store .site-footer .footer-grid{
    display:grid;grid-template-columns:minmax(190px,1.35fr) repeat(2,minmax(125px,.9fr)) minmax(200px,1.15fr);
    column-gap:clamp(22px,3.5vw,52px);row-gap:28px;
    padding-top:43px!important;padding-bottom:32px!important;
}
.pv-store .site-footer .footer-grid>div{min-width:0}
.pv-store .site-footer .footer-brand p{font-size:13px;max-width:290px;line-height:1.65;margin:14px 0 15px;color:#c7d8e2}
.pv-store .site-footer .footer-grid h3{font-size:14px;line-height:1.4;color:#fff;margin:3px 0 14px}
.pv-store .site-footer .footer-grid>div:not(.footer-brand) a{
    display:block;max-width:100%;overflow-wrap:anywhere;line-height:1.5;
    font-size:13px;margin:0 0 11px;color:#d5e6ec;
}
.pv-store .site-footer .footer-grid>div:not(.footer-brand) p{max-width:260px;font-size:13px;line-height:1.7;color:#c6d9e4;margin:0 0 14px}
.pv-store .site-footer .footer-values{gap:8px 16px;font-size:12px}
.pv-store .site-footer .pv-policy-footer{
    padding:0!important;margin:0!important;background:transparent!important;
    border-top:1px solid rgba(200,227,232,.16)!important;
    border-bottom:0!important;
}
.pv-store .site-footer .pv-policy-footer>.container{
    display:flex;align-items:center;justify-content:center;
    gap:9px 23px;padding-top:17px!important;padding-bottom:16px!important;
}
.pv-store .site-footer .pv-policy-footer-title{font-size:11px;letter-spacing:.11em;margin-right:6px;color:#8be1db}
.pv-store .site-footer .pv-policy-footer a{font-size:12px;color:#d5e6ec;text-underline-offset:3px}
.pv-store .site-footer .pv-policy-footer a:hover{text-decoration:underline;color:#fff}
.pv-store .site-footer .pv36-footer-assurances{
    border-top:1px solid rgba(200,227,232,.16);border-bottom:0;
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;max-width:1216px;margin:auto;
    padding:15px 26px!important;
}
.pv-store .site-footer .pv36-footer-assurances>div{display:flex;align-items:center;gap:11px;padding:0;min-width:0}
.pv-store .site-footer .pv36-footer-assurances i{
    height:37px;width:37px;flex-basis:37px;border-radius:11px;font-size:15px;
    background:rgba(97,205,196,.12);color:#84ded8;
}
.pv-store .site-footer .pv36-footer-assurances strong{font-size:12px;color:#f0fbfb;line-height:1.4}
.pv-store .site-footer .pv36-footer-assurances small{font-size:11px;line-height:1.4;color:#b6cbd5;margin-top:2px}
.pv-store .site-footer .footer-bottom{
    border-top:1px solid rgba(200,227,232,.16)!important;
    padding-top:14px!important;padding-bottom:16px!important;
    color:#bdd1db;font-size:12px;
    display:flex;align-items:center;gap:16px;flex-wrap:wrap;
}
.pv-store .site-footer .footer-bottom :is(a,button){color:#d7e7ef;font-size:12px}
.pv-store .site-footer .footer-bottom .pv29-preferences{padding:0}

/* Product gallery: more proportionate photos, clear controls and consistent alignment. */
.pv-store .pv342-pdp{background:#faf9f6;padding-top:21px;padding-bottom:55px}
.pv-store .pv342-pdp .pv342-breadcrumb{margin-bottom:20px;font-size:13px;line-height:1.6}
.pv-store .pv342-pdp .pv342-columns{
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:clamp(22px,3.6vw,43px);align-items:start;
}
.pv-store .pv342-pdp .pv342-gallery-canvas{
    min-height:0;aspect-ratio:1.02;
    border:1px solid #e6e8eb;border-radius:22px;
    background:#f7f3f0;box-shadow:0 11px 29px rgba(16,42,67,.035);
}
.pv-store .pv342-pdp .pv342-gallery-canvas>img{
    inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);
    object-fit:contain;border-radius:16px;
}
.pv-store .pv342-pdp .pv342-expand{min-height:39px;padding:9px 13px;border-radius:12px;font-size:12px}
.pv-store .pv342-pdp .pv342-gallery-caption{
    font-size:12px;line-height:1.55;align-items:center;gap:12px;margin:10px 0 0;
}
.pv-store .pv342-pdp .pv342-gallery-caption span:last-child{color:#657687;white-space:nowrap}
.pv-store .pv342-pdp .pv342-summary{padding-top:0}
.pv-store .pv342-pdp .pv342-summary h1{font-size:clamp(30px,3.3vw,43px);line-height:1.16;margin:0 0 12px}
.pv-store .pv342-pdp .pv342-summary-top{margin-bottom:10px}
.pv-store .pv342-pdp .pv342-reviews-link{font-size:13px;margin-bottom:14px;flex-wrap:wrap}
.pv-store .pv342-pdp .pv342-short{font-size:15px;line-height:1.7;margin-bottom:16px;color:#506373}
.pv-store .pv342-pdp .pv342-buybox{
    padding:clamp(18px,2.15vw,26px)!important;
    border-radius:21px!important;border:1px solid #dce7e8!important;
    background:#fff!important;box-shadow:0 14px 34px rgba(16,42,67,.065)!important;
}
.pv-store .pv342-pdp .pv342-buybox-top{gap:12px;padding-bottom:15px;margin-bottom:15px;flex-wrap:wrap}
.pv-store .pv342-pdp .pv342-price{font-size:clamp(29px,3vw,36px)}
.pv-store .pv342-pdp .pv342-stock{font-size:12px;white-space:normal;flex:none}
.pv-store .pv342-pdp .pv342-demo-alert{font-size:13px;line-height:1.55;padding:11px 13px;margin:0 0 15px;border-radius:12px}
.pv-store .pv342-pdp .pv342-cart-form>label{font-size:13px;margin-bottom:7px}
.pv-store .pv342-pdp .pv342-cart-form>select{
    min-height:47px;border-radius:12px;padding:10px 12px;
    font-size:13px;margin-bottom:16px;
}
.pv-store .pv342-pdp .pv342-purchase-row{
    display:grid;grid-template-columns:minmax(120px,135px) minmax(0,1fr);
    gap:13px;align-items:end;
}
.pv-store .pv342-pdp .pv342-quantity-label{margin:0;font-size:13px}
.pv-store .pv342-pdp .pv342-qty-control{height:51px;max-width:140px}
.pv-store .pv342-pdp .pv342-qty-control button{width:35px;min-width:35px}
.pv-store .pv342-pdp .pv342-qty-control input{min-width:0;width:45px;padding:0!important;margin:0!important;border:0!important;min-height:0!important}
.pv-store .pv342-pdp .pv342-add-button{
    height:51px!important;min-width:0!important;border-radius:13px!important;
    font-size:14px!important;white-space:normal;padding:0 12px;line-height:1.3;
}
.pv-store .pv342-pdp .pv342-add-button:not(:disabled):hover{filter:brightness(.96)}
.pv-store .pv342-pdp .pv342-wishlist-form{margin:12px 0 4px}
.pv-store .pv342-pdp .pv342-wishlist{font-size:13px;min-height:34px}
.pv-store .pv342-pdp .pv342-payment-note{font-size:12px;line-height:1.55;margin-top:12px}
.pv-store .pv342-pdp .pv36-buy-perks{padding-top:12px;margin-top:16px;gap:10px 16px}
.pv-store .pv342-pdp .pv36-buy-perks span{font-size:12px;line-height:1.45}
.pv-store .pv342-pdp .pv342-help-row{padding:13px 15px;border-radius:13px;gap:9px;flex-wrap:wrap}
.pv-store .pv342-pdp .pv342-help-row span{font-size:13px}
.pv-store .pv342-pdp .pv342-below{margin-top:28px;gap:18px}
.pv-store .pv342-pdp .pv342-detail-card,
.pv-store .pv342-pdp .pv342-assurance,
.pv-store .pv342-pdp .pv342-review-section{
    padding:clamp(20px,2.4vw,29px);border-radius:20px;
}
.pv-store .pv342-pdp .pv342-rich{font-size:14px;line-height:1.8}
.pv-store .pv342-pdp .pv342-review-section{margin-top:18px}
.pv-store .pv342-pdp .pv342-empty-reviews{font-size:13px}

/* Store results, journal, homepage cards: spacing and touch-target cleanup. */
.pv-store .page-banner .container{padding-top:clamp(26px,3vw,42px);padding-bottom:clamp(26px,3vw,42px)}
.pv-store .page-banner h1{line-height:1.13;letter-spacing:-.042em}
.pv-store .filter-bar[data-pv36-search]{gap:11px;padding:17px;border-radius:18px}
.pv-store .filter-bar[data-pv36-search] :is(input,select){margin:0;min-height:44px;font-size:13px}
.pv-store .pv36-search-status{min-height:20px;font-size:13px;line-height:1.5;margin:10px 2px 13px}
.pv-store .products-grid{row-gap:22px}
.pv-store .pvj-hero-inner{padding-top:clamp(34px,4vw,53px)!important;padding-bottom:clamp(34px,4vw,53px)!important}
.pv-store .pvj-hero h1{line-height:1.15!important}
.pv-store .pvj-hero-accent{border-radius:26px}

/* Checkout: readable prices, clear sections; no payment/shipping logic is altered. */
.pv-store:has(#checkout) .section-heading{margin-bottom:18px}
.pv-store:has(#checkout) .pv36-checkout-trust{gap:10px;margin-bottom:17px}
.pv-store:has(#checkout) .pv36-checkout-trust>div{font-size:12px;line-height:1.4;min-height:54px}
.pv-store:has(#checkout) .cart-layout{gap:21px;align-items:start}
.pv-store:has(#checkout) #checkout.panel,
.pv-store:has(#checkout) .summary-card{border-radius:22px;padding:clamp(18px,2.5vw,28px)}
.pv-store:has(#checkout) #checkout label{color:#102a43;font-size:13px;line-height:1.5}
.pv-store:has(#checkout) #checkout :is(input,select){min-height:47px;font-size:14px}
.pv-store:has(#checkout) .summary-card .summary-row{font-size:13px;line-height:1.6;gap:14px}
.pv-store:has(#checkout) .summary-card .summary-row.grand{font-size:16px;color:#102a43}
.pv-store:has(#checkout) .pv35-international-disclosure{border-radius:15px;font-size:13px;line-height:1.55;margin-bottom:17px}

@media (max-width:1100px){
 .pv-store .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 38px}
 .pv-store .pv342-pdp .pv342-columns{gap:24px}
}
@media (max-width:980px){
 .pv-store .pv342-pdp .pv342-columns{grid-template-columns:minmax(0,1fr)}
 .pv-store .pv342-pdp .pv342-gallery-canvas{aspect-ratio:1.25}
 .pv-store .site-footer .pv36-footer-assurances{gap:14px}
}
@media (max-width:700px){
 .pv-store .newsletter-strip .newsletter-inner{display:grid;grid-template-columns:45px 1fr;gap:11px;padding-top:18px;padding-bottom:19px}
 .pv-store .newsletter-strip .newsletter-inner .btn{grid-column:2;justify-self:start;margin-top:2px}
 .pv-store .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px;padding-top:32px!important;padding-bottom:27px!important}
 .pv-store .site-footer .footer-grid .footer-brand{grid-column:1/-1}
 .pv-store .site-footer .pv-policy-footer>.container{justify-content:flex-start;gap:10px 19px;padding-top:16px!important;padding-bottom:14px!important}
 .pv-store .site-footer .pv36-footer-assurances{grid-template-columns:1fr;gap:9px;padding:15px 19px!important}
 .pv-store .site-footer .footer-bottom{align-items:start;justify-content:flex-start;gap:10px 18px}
 .pv-store .pv29-whatsapp{width:51px!important;height:51px!important;min-height:51px!important;right:12px!important;bottom:max(12px,env(safe-area-inset-bottom))!important}
 .pv-store .pv29-whatsapp .pv29-whatsapp-icon{width:39px!important;height:39px!important;flex-basis:39px!important;font-size:24px!important}
 .pv-store .pv342-pdp{padding-bottom:43px}
 .pv-store .pv342-pdp .pv342-gallery-canvas{aspect-ratio:1.08;min-height:280px}
 .pv-store .pv342-pdp .pv342-summary h1{font-size:clamp(29px,7vw,35px)}
 .pv-store .pv342-pdp .pv342-buybox{padding:18px!important}
 .pv-store .pv342-pdp .pv342-purchase-row{grid-template-columns:112px minmax(0,1fr);gap:9px}
 .pv-store .pv342-pdp .pv342-qty-control{max-width:112px}
 .pv-store .pv342-pdp .pv342-qty-control button{width:29px;min-width:29px}
 .pv-store .pv342-pdp .pv342-qty-control input{width:41px}
 .pv-store .pv342-pdp .pv342-add-button{font-size:13px!important;padding:0 8px}
 .pv-store:has(#checkout) .pv36-checkout-trust{grid-template-columns:1fr;gap:7px}
 .pv-store:has(#checkout) .pv36-checkout-trust>div{min-height:0;padding:10px}
 .pv-store:has(#checkout) .summary-card{position:static!important}
}
@media (max-width:370px){
 .pv-store .pv342-pdp .pv342-purchase-row{grid-template-columns:1fr}
 .pv-store .pv342-pdp .pv342-quantity-label{width:132px}
 .pv-store .site-footer .footer-grid{grid-template-columns:1fr}
 .pv-store .site-footer .footer-grid .footer-brand{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){
 .pv-store .pv29-whatsapp{transition:none!important}
}
/* Don't let floating chat compete with the buy form. It returns after scrolling away. */
.pv-store.pv361-buybox-visible .pv29-whatsapp,
.pv-store:has(#checkout) .pv29-whatsapp{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transform:translateY(12px)!important;
}
