.elementor-500 .elementor-element.elementor-element-3fcb303{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-500 .elementor-element.elementor-element-2cbb9a3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-500 .elementor-element.elementor-element-2847b964{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-500 .elementor-element.elementor-element-45f85e8e{padding:0px 0px 42px 0px;}.elementor-500 .elementor-element.elementor-element-45f85e8e .elementskit-section-title-wraper .elementskit-section-title{color:#646464;font-family:"Lato", Sans-serif;font-size:36px;font-weight:bold;}.elementor-500 .elementor-element.elementor-element-45f85e8e .elementskit-section-title-wraper .elementskit-section-title > span{color:#000000;}.elementor-500 .elementor-element.elementor-element-45f85e8e .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#000000;}.elementor-widget-image-gallery .gallery-item .gallery-caption{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item .gallery-caption{display:none;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-500 .elementor-element.elementor-element-2847b964{--padding-top:50px;--padding-bottom:100px;--padding-left:15px;--padding-right:15px;}}@media(max-width:767px){.elementor-500 .elementor-element.elementor-element-2847b964{--padding-top:50px;--padding-bottom:80px;--padding-left:15px;--padding-right:15px;}.elementor-500 .elementor-element.elementor-element-45f85e8e .elementskit-section-title-wraper .elementskit-section-title{font-size:30px;}}/* Start custom CSS for image-gallery, class: .elementor-element-0003c11 *//* ===================================================
   TAMIYA UNDERGROUND - GALLERY WIDGET STYLING
   Targeting Widget ID: 0003c11 & Gallery ID: gallery-1
   =================================================== */

/* 0. Remove Default WordPress / Theme Image Borders & Padding */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item,
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon,
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon a,
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon img,
.elementor-element-0003c11 .gallery-item,
.elementor-element-0003c11 .gallery-icon,
.elementor-element-0003c11 .gallery-icon a,
.elementor-element-0003c11 .gallery-icon img {
  border: none !important;
  outline: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  box-shadow: none;
}

/* 1. Transform Grid Layout */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery,
.elementor-element-0003c11 .gallery {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 2. Gallery Item Card Container */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item,
.elementor-element-0003c11 .gallery-item {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  background: transparent !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
              box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

/* 3. Image Container & Uniform Sizing */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon,
.elementor-element-0003c11 .gallery-icon {
  position: relative;
  overflow: hidden;
  display: block;
  border-radius: 12px;
}

.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon a,
.elementor-element-0003c11 .gallery-icon a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}

/* Normalizes portrait and landscape aspect ratios */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon img,
.elementor-element-0003c11 .gallery-icon img {
  width: 100% !important;
  height: 230px !important;
  object-fit: cover !important;
  display: block;
  border: none !important;
  outline: none !important;
  border-radius: 12px;
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), 
              filter 0.4s ease;
  transform-origin: center;
}

/* 4. Hover Overlay Gradient (Brand Colors: Blue to Red) */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon a::after,
.elementor-element-0003c11 .gallery-icon a::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0, 34, 161, 0.45) 0%, rgba(220, 24, 40, 0.6) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
  z-index: 1;
  border-radius: 12px;
}

/* Hover Expand Badge */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon a::before,
.elementor-element-0003c11 .gallery-icon a::before {
  content: '⤢';
  font-size: 22px;
  font-weight: bold;
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -30%) scale(0.6);
  opacity: 0;
  transition: transform 0.4s ease, opacity 0.4s ease;
  z-index: 2;
  pointer-events: none;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

/* 5. Hover & Focus States */
.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item:hover,
.elementor-element-0003c11 .gallery-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 28px rgba(11, 15, 25, 0.22);
}

.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item:hover img,
.elementor-element-0003c11 .gallery-item:hover img {
  transform: scale(1.09);
  filter: brightness(0.92);
}

.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item:hover .gallery-icon a::after,
.elementor-element-0003c11 .gallery-item:hover .gallery-icon a::after {
  opacity: 0.45;
}

.elementor-500 .elementor-element.elementor-element-0003c11 .gallery-item:hover .gallery-icon a::before,
.elementor-element-0003c11 .gallery-item:hover .gallery-icon a::before {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

/* 6. Section Heading Tweaks (ElementsKit) */
.elementor-element-45f85e8e .elementskit-section-subtitle {
  color: #dc1828 !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
}

.elementor-element-45f85e8e .elementskit-section-title {
  color: #0b0f19 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  font-style: italic !important;
}

/* 7. Responsive Breakpoints */
@media (max-width: 1024px) {
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery,
  .elementor-element-0003c11 .gallery {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
  }
  
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon img,
  .elementor-element-0003c11 .gallery-icon img {
    height: 200px !important;
  }
}

@media (max-width: 767px) {
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery,
  .elementor-element-0003c11 .gallery {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon img,
  .elementor-element-0003c11 .gallery-icon img {
    height: 170px !important;
  }
}

@media (max-width: 480px) {
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery,
  .elementor-element-0003c11 .gallery {
    grid-template-columns: repeat(1, 1fr) !important;
    gap: 16px !important;
  }
  
  .elementor-500 .elementor-element.elementor-element-0003c11 .gallery-icon img,
  .elementor-element-0003c11 .gallery-icon img {
    height: 240px !important;
  }
}/* End custom CSS */