/*
Theme Name: David Brown Photography
Theme URI: 
Author: Chris Boggs
Author URI: 
Description: A custom child-theme for Davidbrownphotography.us
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: twentytwentyfive
Text Domain: david-brown-photography
Tags: 
*/
/* Remove unwanted magnifying glass from PDP galleries */
#wpgs-gallery .wcgs-lightbox .sp_wgs-lightbox {display:none!important;}

/* Ensure product gallery is visible even if JS doesn't run */
.woocommerce-product-gallery.images {
    opacity: 1 !important;
}

/* Force WooCommerce single product images to be visible */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
    opacity: 1 !important;
    visibility: visible !important;
}
/* Force WooCommerce product gallery image itself to be visible */
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    background: none !important;
}
/* DEBUG: color the gallery area so we can see it */
.woocommerce div.product div.images .woocommerce-product-gallery__image {
    background: #c00 !important;      /* bright red for debugging */
    border: 3px solid #000 !important;
}
/* DEBUG: make sure the actual img is drawn and above overlays */
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
    position: relative !important;
    z-index: 5 !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    clip: auto !important;
    clip-path: none !important;
    transform: none !important;
    filter: none !important;
}
/* DEBUG: remove any before/after overlays on the gallery image wrapper */
.woocommerce div.product div.images .woocommerce-product-gallery__image::before,
.woocommerce div.product div.images .woocommerce-product-gallery__image::after {
    display: none !important;
    content: none !important;
}
.gallery-limiter {
  max-width: 1140px!important; /* Adjust to your preferred limit */
  margin-left: auto!important;
  margin-right: auto!important;
  padding-left: 1rem!important;
  padding-right: 1rem!important;
}

.gallery-limiter .kb-gallery-wrap.kb-gallery-type-grid {
  justify-content: center; /* centers the gallery grid */
  column-gap: 0px!important; /* reduce horizontal spacing between columns */
  row-gap: 0px!important; /* reduce vertical spacing between rows */
  max-width: 100% !important;
}

.gallery-limiter .kb-gallery-item {
  margin: 0 !important; /* eliminate any default spacing */
  flex: 1 1 30% !important; /* forces approx 3 columns */
  max-width: 32% !important;
}
/* PDP Variation price only (inside the variation wrapper) */
.woocommerce div.single_variation_wrap .woocommerce-Price-amount.amount {
    font-weight: bold;
    color: #000;
    font-size: 2em;
}
/* PDP Product Description rules */
.dbp-product-description {
    margin-top: 3rem;
}

.dbp-product-description h2 {
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* Single product description section (block theme) */
.wc-block-product-details {
    margin-top: 3rem;
}

.wc-block-product-details h2,
.dbp-product-description h2 {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}


/* DBP Title colored first-letter css */
.first-letter {color:#ab8b00!important;}
.wp-block-heading .first-letter {
  color: #ab8b00 !important;
}
a {
    text-decoration: none!important;  
	color: #717070!important;
}
a:visited {
    color: #b49400!important;
}

/* mouse over link */
 a:hover {
    font-weight: bolder!important;
}

/* selected link */
a:active {
     color: #2C9AB7!important;
}
a:active, a:focus {
    outline: 0!important;
    border: none!important;
	box-shadow: none !important;
    -moz-outline-style: none; /* For older Firefox */
}
/* === DBP product image lightbox === */

.dbp-lightbox-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease-in-out, visibility 0.25s ease-in-out;
    z-index: 9999;
}

.dbp-lightbox-overlay.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


.dbp-lightbox-inner {
    opacity: 0;
    transform: scale(0.97);
    transition: opacity 0.35s ease-in-out, transform 0.35s ease-in-out;
}

.dbp-lightbox-overlay.is-active .dbp-lightbox-inner {
    opacity: 1;
    transform: scale(1);
}

.dbp-lightbox-inner img {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);
    background: #000;
}

/* Prevent scrolling while lightbox is open */
body.dbp-lightbox-open {
    overflow: hidden;
}


/* Prevent scrolling while lightbox is open */
body.dbp-lightbox-open {
    overflow: hidden;
}

/* =========================================================
   Woo Blocks – Product Image “Contain” in Fixed Ratio Box
   ========================================================= */

.woocommerce .wc-block-components-product-image {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: block;
}

.woocommerce .wc-block-components-product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center;
}


@media (min-width: 1024px) {
  .gallery-limiter .kb-gallery-wrap.kb-gallery-type-grid {
    column-gap: 0px!important;
    row-gap: 0px!important;
 	}
}
/* Product grid image: fixed square viewport */
.wc-block-components-product-image.wp-block-woocommerce-product-image{
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

/* Link fills the square */
.wc-block-components-product-image.wp-block-woocommerce-product-image > a{
  display:block;
  width:100%;
  height:100%;
}

/* Force contain (beats inline cover) */
.wc-block-components-product-image.wp-block-woocommerce-product-image > a > img{
  width:100% !important;
  height:100% !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  display:block;
}

/* CUSTOM RULES for Desktop and mobile menus 

@media (min-width: 782px) {
    .nav-primary--mobile {
        display: none!important;
    }
}

@media (max-width: 783px) {
    .wp-block-navigation.nav-primary--desktop {
        display: none;
    }
	.wp-block-navigation.nav-category--desktop {
		display: none;
	}
}
.montserrat-<uniquifier> {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.nextend-thumbnail-button {
	display:none!important;
}
h1 {font-size: 300px!important;}
*/
