/* Vet World WordPress + WooCommerce overrides. Loaded after the prototype design CSS. */
:root{--vw-blue:#0080C0;--vw-bright:#1397D7;--vw-navy:#102E60;--vw-red:#D61917}
html{margin-top:0!important}
body.admin-bar .site-header{top:32px}
@media (max-width:782px){body.admin-bar .site-header{top:46px}}
.wp-caption,.gallery-caption{max-width:100%}
.alignleft{float:left;margin:.4rem 1.2rem 1rem 0}.alignright{float:right;margin:.4rem 0 1rem 1.2rem}.aligncenter{display:block;margin-left:auto;margin-right:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.current-menu-item>.nav-link,.current-menu-ancestor>.nav-link{color:var(--vw-blue)!important}
.dropdown-menu .current-menu-item>.dropdown-item{color:var(--vw-blue);font-weight:700}
.footer-menu,.footer-cats{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;font-size:.875rem}
.social-links{display:flex;gap:.5rem;margin-top:1rem}.social-links a{width:38px;height:38px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.vw-cart-link{position:relative}.cart-count{background:var(--vw-red);color:#fff;font-size:.68rem;min-width:20px;height:20px;border-radius:99px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;position:absolute;top:-6px;right:-9px;padding:0 5px}
.search-overlay{z-index:2100}.search-overlay .search-product-form{max-width:820px}
.search-result-card{display:block;background:#fff;color:var(--vw-dark);border-radius:16px;padding:1rem;text-decoration:none;height:100%}
.search-result-card:hover{color:var(--vw-navy);box-shadow:0 12px 30px rgba(0,0,0,.22)}

/* Product cards: match the prototype .card-vw / .product-card treatment. */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:0;padding:0}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important}
.product-card{height:100%;display:flex;flex-direction:column;overflow:hidden}
.product-card-media{height:210px;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--vw-navy),var(--vw-bright));display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none}
.product-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.product-card-media .prod-illus{width:100%;height:100%;font-size:4.4rem}
.product-card-media .badge-chip{z-index:2}.product-card-body{padding:1.25rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.product-card-body h2,.product-card-body h3{font-size:1.05rem;line-height:1.35;margin:0;font-weight:800}
.product-card-body h2 a,.product-card-body h3 a{color:var(--vw-dark);text-decoration:none}
.product-card-sku{font-size:.82rem;color:var(--vw-muted);font-weight:700;letter-spacing:.02em}
.product-card-cat{font-size:.82rem;color:var(--vw-blue);font-weight:700}
.product-card .price,.vw-price-request{font-weight:800;color:var(--vw-navy);margin-top:auto}
.product-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}
.product-card-actions .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{border-radius:999px!important;background:var(--vw-blue)!important;color:#fff!important;border:1px solid var(--vw-blue)!important;font-weight:700;padding:.62rem 1.25rem!important;line-height:1.25}
.product-card-actions .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--vw-navy)!important;border-color:var(--vw-navy)!important}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--vw-navy)!important;border-color:var(--vw-navy)!important}
.woocommerce a.checkout-button{background:var(--vw-blue)!important}
.woocommerce .button.vw-whatsapp-btn,.vw-whatsapp-btn{background:#25D366!important;border-color:#25D366!important;color:#07301a!important}
.woocommerce .button.vw-whatsapp-btn:hover,.vw-whatsapp-btn:hover{background:#1eb85a!important;color:#fff!important}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:14px;border-top-color:var(--vw-blue);box-shadow:0 8px 24px rgba(16,46,96,.08)}
.woocommerce-info{border-top-color:var(--vw-bright)}.woocommerce-error{border-top-color:var(--vw-red)}

/* Shop layout + toolbar */
.vw-shop-toolbar{background:#fff;border:1px solid var(--vw-border);border-radius:18px;padding:1rem 1.15rem;margin-bottom:1.5rem;box-shadow:0 4px 18px rgba(16,46,96,.05)}
.woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{margin:0}
.woocommerce .woocommerce-ordering select{border:1px solid var(--vw-border);border-radius:999px;padding:.55rem 2rem .55rem 1rem}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:.4rem}.woocommerce nav.woocommerce-pagination ul li{border:0;overflow:visible}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border:1px solid var(--vw-border);border-radius:999px;padding:.55rem .9rem;background:#fff}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--vw-blue);color:#fff;border-color:var(--vw-blue)}
.woocommerce .term-description{max-width:760px;color:var(--vw-muted);margin-bottom:1.5rem}

/* Single product */
.single-product .vw-product-shell{background:#fff;border:1px solid var(--vw-border);border-radius:28px;box-shadow:0 18px 44px rgba(16,46,96,.08);padding:clamp(1.25rem,4vw,3rem)}
.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem)}
.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{float:none!important;width:auto!important;margin:0!important}
.single-product div.product .woocommerce-product-gallery{border-radius:24px;box-shadow:0 24px 50px rgba(16,46,96,.16);overflow:hidden;background:linear-gradient(135deg,var(--vw-navy),var(--vw-bright));min-height:340px}
.single-product div.product .woocommerce-product-gallery .flex-viewport,.single-product div.product .woocommerce-product-gallery img{border-radius:0}
.vw-product-placeholder{min-height:420px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:6rem;gap:1rem;text-align:center;padding:2rem}.vw-product-placeholder small{font-size:1rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800}
.single-product .product_title{font-size:clamp(2rem,4vw,3rem);font-weight:800;letter-spacing:-.02em;color:var(--vw-dark)}
.single-product .summary .price{font-size:1.2rem!important}.single-product .sku_wrapper,.single-product .posted_in,.single-product .tagged_as{display:block;color:var(--vw-muted);margin:.25rem 0}.single-product .sku{color:var(--vw-dark);font-weight:700}
.single-product form.cart{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1.5rem 0}.single-product form.cart .quantity .qty{width:84px;text-align:center;border-radius:999px;border:1px solid var(--vw-border);padding:.62rem}
.single-product .product_meta{border-top:1px solid var(--vw-border);padding-top:1rem;margin-top:1rem}
.single-product .woocommerce-tabs{grid-column:1/-1;margin-top:1rem}.single-product .woocommerce-tabs ul.tabs{border:0!important;padding:0!important;display:flex;gap:.5rem;flex-wrap:wrap}.single-product .woocommerce-tabs ul.tabs:before,.single-product .woocommerce-tabs ul.tabs li:before,.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}.single-product .woocommerce-tabs ul.tabs li{border:1px solid var(--vw-border)!important;background:#fff!important;border-radius:999px!important;margin:0!important}.single-product .woocommerce-tabs ul.tabs li.active{background:var(--vw-blue)!important}.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}.single-product .woocommerce-tabs .panel{border:1px solid var(--vw-border);border-radius:20px;padding:1.5rem;box-shadow:0 4px 18px rgba(16,46,96,.05)}
.single-product .related,.single-product .upsells{grid-column:1/-1}.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
.woocommerce table.shop_attributes{border:1px solid var(--vw-border);border-radius:14px;overflow:hidden}.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{padding:.75rem 1rem}.woocommerce table.shop_attributes tr:nth-child(even) th,.woocommerce table.shop_attributes tr:nth-child(even) td{background:var(--vw-light)}

/* Cart / checkout / account */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,.woocommerce-account .woocommerce{margin-bottom:2rem}
.woocommerce table.shop_table{border:1px solid var(--vw-border);border-radius:18px;overflow:hidden;border-collapse:separate;border-spacing:0}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:1rem}.woocommerce-cart-form__cart-item td{vertical-align:middle}
.woocommerce .cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--vw-border);border-radius:20px;padding:1.25rem;box-shadow:0 4px 18px rgba(16,46,96,.05)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text{border:1px solid var(--vw-border);border-radius:10px;padding:.65rem .8rem}
.woocommerce-account .woocommerce-MyAccount-navigation{background:#fff;border:1px solid var(--vw-border);border-radius:20px;padding:1rem;box-shadow:0 4px 18px rgba(16,46,96,.05)}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}.woocommerce-account .woocommerce-MyAccount-navigation-link a{display:block;padding:.7rem .95rem;border-radius:10px;color:var(--vw-dark);text-decoration:none}.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover{background:#eaf3fa;color:var(--vw-blue)}
.woocommerce-account .woocommerce-MyAccount-content{background:#fff;border:1px solid var(--vw-border);border-radius:20px;padding:1.5rem;box-shadow:0 4px 18px rgba(16,46,96,.05)}
.vw-quote-note{background:#eaf3fa;border:1px solid #bcd9ef;color:var(--vw-navy);border-radius:14px;padding:.9rem 1rem;font-weight:600}
.vw-whatsapp-single{margin:.5rem 0 1rem}

/* Gallery / forms / content */
.vw-gallery-item{display:none}.vw-gallery-item.is-visible{display:block}
.contact-info-card .ratio iframe{width:100%;height:100%;border:0}
.page-template-page-contact .wp-block-button__link,.wp-block-button__link{background:var(--vw-blue);border-radius:999px}
.entry-content img{max-width:100%;height:auto}.entry-content table{width:100%;margin-bottom:1rem}

@media(max-width:991px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.single-product div.product{grid-template-columns:1fr}.vw-product-placeholder{min-height:300px}}
@media(max-width:575px){.woocommerce ul.products{grid-template-columns:1fr}.single-product .related ul.products{grid-template-columns:1fr}.product-card-media{height:190px}.woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{float:none;width:100%;margin-bottom:.6rem}}
.custom-logo-link{display:inline-flex;align-items:center;margin-right:1rem;padding:.35rem 0}
.custom-logo-link .custom-logo{height:52px;width:auto;max-width:220px;object-fit:contain}
@media(max-width:991px){.custom-logo-link .custom-logo{height:44px}}

/* Product enquiry (2026-10-21) */
.vw-hp { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.vw-enquiry-actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin-top: 1rem; }
.vw-enquire-btn { display: inline-flex; align-items: center; gap: .4rem; }
.vw-enquiry-modal .modal-header { background: var(--vw-navy, #102E60); color: #fff; }
.vw-enquiry-modal .btn-close { filter: invert(1); }
.vw-enquiry-product { font-size: 1.02rem; }
.vw-enquiry-banner { padding: .9rem 0; font-weight: 600; }
.vw-enquiry-banner-success { background: #e6f6ec; color: #14532d; border-bottom: 2px solid #22c55e; }
.vw-enquiry-banner-error { background: #fdecec; color: #7f1d1d; border-bottom: 2px solid #ef4444; }
/* Variable products: options stay selectable, but purchase controls are
   replaced by the Enquire form (quantity is asked inside the form). */
.single-product form.variations_form .single_add_to_cart_button,
.single-product form.variations_form .quantity { display: none !important; }
@media (max-width: 576px) {
    .vw-enquiry-modal .modal-footer .btn { flex: 1 1 auto; }
    .vw-enquiry-actions .btn { flex: 1 1 100%; justify-content: center; }
}

/* Single product: Enquire + WhatsApp buttons must render at identical size
   (the generic WooCommerce .button rule shrinks <button> elements). */
.woocommerce div.vw-enquiry-actions .btn { display: inline-flex !important; align-items: center; justify-content: center; gap: .45rem; padding: .8rem 1.6rem !important; font-size: 1.05rem !important; line-height: 1.3 !important; border-radius: 999px !important; font-weight: 700; }

/* Mobile responsiveness fixes (reviews grid overflow + safety net) */
html, body { overflow-x: clip; }
.rev-widget { grid-template-columns: 290px minmax(0, 1fr); }
.rev-track-wrap { min-width: 0; }
.rev-track { min-width: 0; }
@media (max-width: 900px) {
    .rev-widget { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 575px) {
    .cta-panel .inner { padding: 1.8rem 1.4rem; }
    .rev-next { right: 2px; }
    .rev-summary { padding: 1.5rem 1rem; }
}
