/* Ductless Brothers — eye-catching "Our Gallery" section (homepage) */

/* Section: soft blue + orange glows over faint dots */
#gallery.section{
  position:relative; overflow:hidden;
  padding-top:72px !important; padding-bottom:80px !important;
  background:
    radial-gradient(600px 380px at 12% 18%, rgba(103,201,232,.16), transparent 70%),
    radial-gradient(560px 360px at 88% 85%, rgba(216,90,28,.14), transparent 70%),
    radial-gradient(rgba(255,255,255,.05) 1.5px, transparent 2px) 0 0 / 24px 24px,
    #0B1120 !important;
}

/* Title with a gradient underline */
#gallery .gallery-title{
  position:relative; display:table; margin:0 auto 44px !important;
  padding:0 0 14px !important; background:none !important; border:0 !important; box-shadow:none !important;
  font-size:clamp(34px,4vw,52px) !important; color:#FFFFFF !important; letter-spacing:-.5px;
}
#gallery .gallery-title::after{
  content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%);
  width:90px; height:5px; border-radius:99px;
  background:linear-gradient(90deg,#D85A1C,#67C9E8);
}

#gallery .gallery-layout{ align-items:stretch !important; gap:32px !important; }

/* Shared glowing gradient border for both cards */
#gallery .gallery-video-card,
#gallery .rotating-gallery-frame{
  border:2px solid transparent !important;
  background:
    linear-gradient(#151E33,#151E33) padding-box,
    linear-gradient(135deg,#D85A1C,#67C9E8) border-box !important;
  box-shadow:0 20px 50px rgba(0,0,0,.45), 0 0 40px rgba(103,201,232,.12) !important;
  transition:transform .3s ease, box-shadow .3s ease;
}
#gallery .gallery-video-card:hover,
#gallery .rotating-gallery-frame:hover{
  transform:translateY(-4px);
  box-shadow:0 26px 60px rgba(0,0,0,.5), 0 0 55px rgba(103,201,232,.22) !important;
}
#gallery .gallery-video-card::before{ display:none !important; }

/* Video card text */
#gallery .gallery-kicker{
  display:inline-block; padding:5px 12px !important; border-radius:99px;
  background:rgba(216,90,28,.16) !important; color:#F39566 !important;
  font-size:12px !important; letter-spacing:.14em;
}
#gallery .gallery-video-copy h3{ font-size:clamp(24px,2.2vw,30px) !important; color:#FFFFFF !important; }
#gallery .gallery-video-copy p:not(.gallery-kicker){ color:#D3DCE8 !important; }
#gallery .gallery-video{
  border-radius:16px !important; border:1px solid rgba(103,201,232,.35);
  box-shadow:0 14px 30px rgba(0,0,0,.5);
}

/* Before / after photo frame */
#gallery .rotating-gallery-frame{ overflow:hidden; }
#gallery .rotating-gallery-frame img{ transition:transform .6s ease, opacity .3s ease; }
#gallery .rotating-gallery-frame:hover img{ transform:scale(1.04); }
#gallery .rotating-gallery-frame::after{
  content:""; position:absolute; inset:auto 0 0 0; height:35%;
  background:linear-gradient(transparent, rgba(11,17,32,.55)); pointer-events:none;
}
#gallery .image-label{
  z-index:2; padding:8px 18px !important; font-size:14px !important; letter-spacing:.06em;
  text-transform:uppercase; box-shadow:0 8px 20px rgba(0,0,0,.4);
}
#gallery .gallery-arrow{
  z-index:2; background:rgba(11,17,32,.6) !important; border:1px solid rgba(103,201,232,.6) !important;
  backdrop-filter:blur(6px); color:#FFFFFF !important; transition:background .2s, transform .2s;
}
#gallery .gallery-arrow:hover{ background:#3AA9CF !important; transform:translateY(-50%) scale(1.08); }

/* Dots: active one stretches into a blue pill */
#gallery .gallery-dot{ background:rgba(255,255,255,.3) !important; transition:width .3s, background .3s; }
#gallery .gallery-dot.active{ width:28px !important; border-radius:99px !important; background:#67C9E8 !important; }

/* "See The Dramatic Difference" banner */
#gallery .gallery-message{
  border:0 !important; border-radius:16px !important;
  background:linear-gradient(135deg,#D85A1C 0%,#C2511A 45%,#3AA9CF 100%) !important;
  box-shadow:0 14px 34px rgba(216,90,28,.25) !important;
  color:#FFFFFF !important; font-weight:800 !important; letter-spacing:.02em;
  text-shadow:0 2px 6px rgba(0,0,0,.25);
}

@media (max-width:900px){
  #gallery.section{ padding-top:56px !important; padding-bottom:56px !important; }
  #gallery .gallery-title{ margin-bottom:32px !important; }
}

/* Let the video fill the card so there's no empty space at the bottom */
@media (min-width:901px){
  #gallery .gallery-video-card{ display:flex !important; flex-direction:column; }
  #gallery .gallery-video{ flex:1 1 auto; width:100%; min-height:0; object-fit:cover; background:#0B1120; }
}
