body {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}

section .full-length-border {
  width: 100%;
  height: 7px;
  background-color: #000099;
  border-top: 2px solid grey;
  border-bottom: 2px solid grey;
}

section #main {
  width: 100%;
  height: 600px;
  background: url("../images/viewguard/window_guards/background4.jpg") no-repeat top/cover;
}

section #main a {
  margin-top: 10px;
  margin-right: 10px;
  text-decoration: none;
  font-weight: bold;
  color: white;
  font-family: "Open Sans", sans-serif;
  padding: 7px;
  font-size: 20px;
  border: 2px solid white;

  text-shadow: -1px -1px 0 #000099, 1px -1px 0 #000099, -1px 1px 0 #000099,
    1px 1px 0 #000099;

  background-color: rgb(49, 86, 134, 0.7);
}

section #main a:hover {
  box-shadow: 0.1px 0.1px 20px 0.2px rgb(236, 236, 109);
  border-color: lightyellow;
  color: lightyellow;
}

section #main #main-title {
  border-top: 2px solid white;
  border-bottom: 2px solid white;
  background-color: rgb(139, 147, 158, 0.9);
  margin-top: 260px;
}

section #main h1 {
  font-family: "Roboto", sans-serif;
  color: white;
  font-size: 120px;
  text-shadow: -1.5px -1.5px 0 black, 1.5px -1.5px 0 black, -1.5px 1.5px 0 black,
    1.5px 1.5px 0 black;
  text-align: center;
  margin-bottom: 0px !important;
  margin-top: 0px !important;
}

section .change-bg {
  background-color: whitesmoke;
}

section .container .left-col .insert-border {
  border-right: 0.7px solid lightgray;
}

section .container .left-col #audit-video {
  display: flex;
  justify-content: center;
  width: 90%;
  margin: auto;
  height: 375px;
}

section .container .left-col h2 {
  /*
  text-align: center;
  font-size: 40px;
  margin-top: 5px !important;
  font-weight: 300 !important;
  color: #000000;
  font-family: "Opens Sans", sans-serif;
  text-shadow: -1px -1px 0 white, 1px -1px 0 white, -1px 1px 0 #000000,
    1px 1px #000000 !important;
  border-bottom: 0.7px solid lightgray;
  margin-bottom: 20px;
  padding-bottom: 7px;
  */

  text-align: center;
  font-family: "Open Sans", sans-serif !important;
  font-size: 57px;
  font-weight: bold;
  padding-top: 4px;
  text-shadow: -1px -1px 0 lightyellow, 1px -1px 0 lightyellow, -1px 1px 0 black,
    1px 1px 0 black !important;
  padding-bottom: 7px;
  border-bottom: 0.7px solid lightgray;
  margin-bottom: 20px;
}

section .container .left-col img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 80%;
}

section .container .left-col .align-center img {
  width: 90%;
}

section .container .left-col .numbered-stuff span {
  font-weight: bold;
  font-size: 20px;
}

section .container #special-images img,
section .container #special-images iframe {
  border-radius: 0px;
  box-shadow: 0.5px 1px 4px 3px rgb(175, 174, 174);
}

section .container #special-images iframe {
  margin-bottom: 15px !important;
}

section .container #special-images p {
  text-align: center;
  font-weight: bold;
}

section .container .right-col img {
  width: 100%;
  margin-bottom: 15px;
  box-shadow: 0.5px 1px 4px 3px rgb(175, 174, 174);
  border-radius: 3px;
  border: solid white 1px;

  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

section .container .right-col a {
  text-decoration: none !important;
}

section .container .right-col img:hover {
  box-shadow: 1px 1px 5px 4px lightyellow;
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

section .container .right-col a h4 {
  font-size: 15px;
  text-align: center;
  font-family: "Open Sans", sans-serif;
  text-shadow: -0.5px -0.5px 0 lightyellow, 0.5px -0.5px 0 lightyellow,
    -0.5px 0.5px 0 black, 0.5px 0.5px 0 black !important;
  color: black;
  margin-bottom: 20px;
}

section .container .right-col a h4:hover {
  text-shadow: -1px 1px 0 lightyellow, 1px 1px 0 lightyellow !important;
}

section .container .left-col p,
section .container .left-col span {
  font-family: "Gruppo", cursive !important;
  font-size: 20px !important;
}

section .container .left-col .quote-text {
  text-align: right;
  font-style: italic;
}

section .container .left-col .link-in-parag {
  text-decoration: none;
}

section .container .left-col .parag-heading {
  text-align: center;
  font-weight: bold;
}

section .container .left-col .filler-div img {
  width: 15%;
}

section .container .left-col {
  background-color: white;
  border: 0.7px solid lightgray;
}

section .container .right-col h3 {
  border-bottom: 0.5px solid gray;
  font-size: 25px;
  text-align: center;
  color: #000000;
  font-family: "Gruppo", cursive;

  padding-bottom: 5px;
  margin-bottom: 15px;

  text-shadow: -0.5px -0.5px 0 lightyellow, 0.5px -0.5px 0 lightyellow,
    -0.5px 0.5px 0 black, 0.5px 0.5px 0 black !important;
}

section .container .left-col .parag-border {
  border-bottom: 0.5px solid lightgray;
  padding-bottom: 10px;
}

section .container .left-col .special-border {
  border-bottom: 0.7px solid lightgray;
  margin-top: 20px;
  /*padding-bottom: 7px;*/
}

/*-------------------new addition---------------------*/

section #category .outer-outer-div {
  padding-left: 0px;
  padding-right: 0px;
}

section #category .outer-div {
  padding-left: 0px;
  padding-right: 0px;
  padding-top: 170px;
  padding-bottom: 75px;
  box-shadow: 0.1px 0.1px 10px 0.2px black;
  border: 5px solid white;
}

section #category #commercial .col-12,
section #category #residential .col-12 {
  background: rgb(255, 255, 255, 0.7);
  padding-left: 0px !important;
  padding-right: 0px !important;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
}

section #category .col-12 h4 {
  font-family: "Open Sans", sans-serif !important;
  font-size: 57px;
  font-weight: bold;
  padding-top: 4px;
  text-shadow: -1px -1px 0 lightyellow, 1px -1px 0 lightyellow, -1px 1px 0 black,
    1px 1px 0 black !important;
}

section #category a {
  text-decoration: none;
  color: black;
}

section #category a:hover .outer-div {
  box-shadow: 0.1px 0.1px 20px 0.2px rgb(236, 236, 109);
  border-color: lightyellow;
}

section #category a:hover h4 {
  text-shadow: -1px -1px 0 yellow, 1px -1px 0 yellow, -1px 1px 0 black,
    1px 1px 0 black !important;
}

section #category #commercial a:hover .outer-outer-div {
  border-top: 2px solid yellow !important;
  border-bottom: 2px solid yellow !important;
}

section #category h3 {
  color: black;
  text-shadow: -0.5px -0.5px 0 yellow, 0.5px -0.5px 0 yellow, -1px 1px 0 black,
    1px 1px 0 black !important;
  font-size: 4vw;
  padding-top: 20px;
  padding-bottom: 20px;
}

section #prefabricated-window-guards h3,
section #custom-window-guards h3 {
  text-shadow: -0.5px -0.5px 0 yellow, 0.5px -0.5px 0 yellow, -1px 1px 0 black,
    1px 1px 0 black !important;
  font-size: 50px;
}

section #prefabricated-window-guards .for-border,
section #custom-window-guards .for-border {
  border-top: 0.5px solid grey;
}

section #services .service a {
  text-decoration: none;
}

section #services .service img {
  width: 100%;
  border: 3px solid grey;
  border-radius: 0% !important;
  box-shadow: 0.1px 0.1px 10px 0.2px black;
}

section #services .service h3 {
  margin-top: 5px;
  color: darkblue;
  text-shadow: -1px -1px 0 lightyellow, 1px -1px 0 lightyellow,
    -1px 1px 0 #000099, 1px 1px 0 #000099 !important;
}

section #services .bord-bottom {
  border-bottom: 0.5px solid grey;
}

section #services .service {
  margin-top: 35px;
  padding-bottom: 20px;
}

section .filler-div {
  text-align: center;
}

/*section .filler-div img {
  width: 15%;
}*/

section #services .service a {
  text-decoration: none;
}

section #services .service img {
  /*width: 100%;
  border: 1px solid grey;
  border-radius: 3%;
  box-shadow: 0.1px 0.1px 8px 0.1px black;*/
  width: 100%;
  border: 1px solid grey;
  border-radius: 3%;
  box-shadow: 0.1px 0.1px 8px 0.1px black;
  transition: transform 0.8s cubic-bezier(0.68, -0.55, 0.27, 1.55), box-shadow 0.3s ease-in-out, border-color 0.3s ease-in-out; /* Bouncier transition */
}

section #services .top-product {
  margin-top: 20px !important;
}

section #services .service {
  margin-top: 15px;
  padding-bottom: 20px;
}

section #services .service a:hover img {

  transform: scale(1.08) rotateY(360deg); 
  box-shadow: 0 12px 30px rgba(0,0,0,0.3); 
  border-color: lightyellow;
  /*transform: rotateY(180deg);
  transition: transform 0.8s;
  box-shadow: 0.1px 0.1px 20px 0.2px rgb(236, 236, 109);
  border-color: lightyellow;*/
}

/*------------------end of new addition-------------*/

/* Force perfect square using aspect-ratio */
.square-col {
  aspect-ratio: 1 / 1;
  padding: 0 !important;
}

/* Full-size colored square with centered text */
.color-swatch {
  width: 100% !important;
  height: 100% !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  font-weight: bold;
  font-size: 0.95rem;
  text-align: center;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 0 !important; /* SHARP EDGES */
  text-shadow: 0 1px 2px rgba(0,0,0,.4);
}

/* Light backgrounds → dark text */
.desert-sand .color-swatch,
.sky-white .color-swatch,
.champagne-beige .color-swatch,
.alabaster .color-swatch,
.almond-cream .color-swatch,
.new-england-gray .color-swatch { color: #222; text-shadow: none; }


/* Accurate paint colors from your image */
.desert-sand     .color-swatch { background: #E3C9A6; }
.sky-white       .color-swatch { background: #F5F9FD; }
.new-bronze      .color-swatch { background: #6B3E2E; }
.champagne-beige .color-swatch { background: #E8D5B0; }
.statuary-bronze .color-swatch { background: #4A2C1F; }
.satin-black     .color-swatch { background: #1A1F23; }

.post-office-blue   .color-swatch { background:#1A2A6C; }
.evening-blue       .color-swatch { background:#1E3A8A; }
.country-blue       .color-swatch { background:#5B9BD5; }
.forest-green       .color-swatch { background:#1B4D3E; }
.hunter-green       .color-swatch { background:#1B4D3E; }
.alabaster          .color-swatch { background:#F5F5F0; }
.almond-cream       .color-swatch { background:#F0E6D2; }
.autumn-brown       .color-swatch { background:#5D2E1E; }
.green-patina       .color-swatch { background:#4A7C6B; }
.pacific-granite    .color-swatch { background:#6B5B52; }
.charcoal-gray      .color-swatch { background:#3C3F42; }
.new-england-gray   .color-swatch { background:#A7B7C7; }

/*
.row.g-3 {
  --bs-gutter-x: 0.75rem; 
}
*/

/* === SPACING FOR COLOR SWATCH ROWS (Bootstrap 4) === */
.color-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -6px; /* negative margin to offset padding */
}

.color-grid > [class*="col-"] {
  padding: 6px;
  box-sizing: border-box;
}

.color-grid .square-col {
  padding: 0 !important; /* keep square shape */
}





/* -------------------------------------------------
   COLOR SWATCH GRID – Bootstrap 4 (Safe to add)
   ------------------------------------------------- */
.color-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -0.375rem;               /* -6px */
}
.color-grid > [class*="col-"] {
  padding: 0.375rem;               /* +6px → 12px gap */
}
.color-grid .square-col {
  aspect-ratio: 1/1;
  padding: 0 !important;
}
.color-grid .color-swatch {
  width: 100% !important;
  height: 100% !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  font-weight: bold;
  font-size: 0.95rem;
  text-align: center;
  padding: 8px;
  box-sizing: border-box;
  border-radius: 0 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.4);
}

/* Light colors → dark text */
.color-grid .desert-sand .color-swatch,
.color-grid .sky-white .color-swatch,
.color-grid .champagne-beige .color-swatch,
.color-grid .alabaster .color-swatch,
.color-grid .almond-cream .color-swatch,
.color-grid .new-england-gray .color-swatch { 
  color: #222; 
  text-shadow: none; 
}

/* ==== FORCE 12 px GAP BETWEEN COLOR SQUARES ==== */
.color-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -6px;               /* pull the row in */
}
.color-grid > [class*="col-"] {
  padding: 6px;               /* the actual gap */
}



/* ==== MOBILE-OPTIMIZED TEXT IN COLOR SWATCHES ==== */
.color-swatch {
  font-size: clamp(0.8rem, 2.5vw, 1rem) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  padding: 6px 4px !important;
  word-wrap: break-word;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 60px;
}


/* ==== STYLISH HEADINGS FOR PAINT COLORS (Smaller Size) ==== */
.paint-heading {
  font-family: "Cinzel", serif !important;
  font-size: clamp(1.2rem, 2.5vw, 2rem);    /* Reduced from 1.5rem/2.5rem to 1.2rem/2rem */
  font-weight: 700;
  text-align: center;
  color: #2c3e50;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  padding: 8px 0;                           /* Reduced from 10px to 8px */
  /*border-bottom: 2px solid #3498db;*/
}

.paint-heading:hover {
  color: #2980b9;
  text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
  transform: scale(1.05);
}


#shorts-container {
  width: 545px;           /* Original width */
  height: 960px;          /* Original height */
  max-width: 100%;        /* Ensures it fits on smaller screens */
  border: none;           /* Removes default border if any */
}

/* ==== STYLISH HIGHLIGHT FOR SPECIAL TEXT ==== */
.highlight-text {
  font-weight: bold;
  font-style: italic;
  text-decoration: underline;
  color: #2e72a9; /* Matches your paint-heading color for consistency */
  /*transition: color 0.3s ease;*/
}

/*
.highlight-text:hover {
  color: #2980b9; 
}
*/


@media (min-width: 1280px) {
  section #main {
    height: 37vw;
  }

  section #main h1 {
    font-size: 7.6vw !important;
  }

  section #main #main-title {
    margin-top: 18vw !important;
  }
}

@media (max-width: 1280px) {
  section #main h1 {
    font-size: 7.6vw;
  }

  section #main {
    height: 36vw;
  }

  section #main #main-title {
    margin-top: 16vw !important;
  }
}


/*@media (min-width: 1280px) {
  section #main h1 {
    font-size: 8.5vw;
  }
}*/

@media (max-width: 1200px) {
  section #main {
    height: 570px;
  }
  section #main #main-title {
    margin-top: 220px;
  }

  section #main h1 {
    font-size: 100px;
  }

  section .container .right-col h3 {
    font-size: 19px;
  }

  section .container .right-col h4 {
    font-size: 12px !important;
  }
}

@media (max-width: 992px) {
  section #main {
    height: 470px;
  }
  section #main #main-title {
    margin-top: 150px;
  }

  section #main h1 {
    font-size: 87px;
  }

  #shorts-container {
    height: auto !important;         /* Maintains aspect ratio */
    aspect-ratio: 9 / 16 !important; /* Standard YouTube Short aspect ratio */
  }
}

@media (max-width: 767px) {
  section #main {
    height: 470px;
  }
  section #main #main-title {
    margin-top: 160px;
  }

  section #main h1 {
    font-size: 70px;
    text-shadow: -1px -1px 0 black, 1px -1px 0 black, -1px 1px 0 black,
      1px 1px 0 black;
  }
  section .container .right-col h3 {
    margin-top: 15px;
    margin-bottom: 20px;
  }
  /*
  #shorts-container {
    height: auto !important;    
    aspect-ratio: 9 / 16 !important;
  }*/
}

@media (max-width: 575px) {
  section #main {
    height: 84vw;
  }

  #main-heading p {
    text-align: left;
  }

  section #main #main-title {
    margin-top: 31vw !important;
    background-color: rgb(139, 147, 158, 0.9);
  }

  section #main h1 {
    font-size: 13.5vw;
  }

  section .container .left-col h2 {
    font-size: 10vw !important;
  }

  section #main a {
    padding: 5px;
    font-size: 15px;
    border: 2px solid white;

    text-shadow: -0.2px -0.2px 0 lightyellow, 0.2px -0.2px 0 lightyellow,
      -0.2px 0.2px 0 #000099, 0.2px 0.2px 0 #000099;

    background-color: rgb(49, 86, 134, 0.7);
  }

  section .container .left-col .filler-div img {
    width: 40%;
  }

  section .container .left-col h2 {
    border-bottom: 0.7px solid gray;
    margin-bottom: 20px !important;
    font-size: 8.5vw;
  }

  section .container .left-col img {
    width: 90%;
    margin-bottom: 10px;
  }

  section .container .left-col .special-margin {
    margin-top: -30px;
  }

  section .container .left-col .after-img {
    margin-top: 15px;
  }

  section .container .left-col .insert-border {
    border-right: 0px solid lightgray;
  }

  section .change-bg .container {
    padding-top: 0px !important;
  }

  section .change-bg .container {
    padding-bottom: 0px !important;
  }

  section .container .right-col h3 {
    font-size: 25px;
  }

  section .container .right-col h4 {
    font-size: 15px !important;
  }

  section .container .left-col .parag-heading {
    font-size: 6vw;
  }

  section .container .left-col #audit-video {
    width: 100%;
    height: 300px;
  }

  section #prefabricated-window-guards h3 {
    font-size: 10vw !important;
  }


}

@media (max-width: 480px) {
  .color-swatch {
    font-size: 0.75rem !important;
    padding: 4px 2px !important;
  }
}

/*------------------End of Carousel-------------------*/

section #contact-form h3 {
  color: white;
  text-shadow: 2px 2px black;
  padding-bottom: 13.5px;
  border-bottom: 1px solid white;
}

section #contact-form {
  padding-top: 20px;
  padding-bottom: 7px !important;
  background-color: lightgray;
}

section #contact-form .control-label {
  font-family: "Roboto", sans-serif;
  text-shadow: 0.5px 0.5px #000099;
}

section #contact-form .control-label span {
  color: red;
}

section #contact-form .form-control {
  border: 1px solid lightyellow;
  box-shadow: 0.1px 0.1px 5px 0.2px rgb(236, 236, 109);
}

section #contact-form #top-form-section {
  padding-top: 10px;
}

section #contact-form {
  padding-bottom: 13px;
}

section #contact-form button {
  font-size: 20px;
  border: 2px solid #b8b8b8;
  border-radius: 2px;
  color: #ebebeb;
  font-weight: bold;
  background-color: #000099;
  padding-top: 0px;
  padding-bottom: 1px;
  padding-left: 7px;
  padding-right: 7px;
  text-shadow: none;
}

section #contact-form button:hover {
  box-shadow: 0.1px 0.1px 20px 0.2px rgb(236, 236, 109);
  border-color: lightyellow;
  color: lightyellow;
}

section #social-media {
  margin-bottom: 25px !important;
}

section #social-media #facebook i {
  color: darkblue;
}

section #social-media #youtube i {
  color: darkred;
}

section #social-media #instagram i {
  color: darkviolet;
}

section #social-media i:hover,
section #bbb img:hover {
  box-shadow: 0.1px 0.1px 20px 0.2px rgb(236, 236, 109);
}

section #call-us {
  margin-top: 25px;
}

section #call-us a {
  font-family: "Roboto", sans-serif;
  text-decoration: none;
  color: black;
  font-size: 20px;
  text-shadow: 0.5px 0.5px #000099;
}

section #call-us a:hover {
  text-shadow: -1px -1px 0 lightyellow, 1px -1px 0 lightyellow,
    -1px 1px 0 lightyellow, 1px 1px 0 lightyellow;
}


/* ==== FINAL: FORCE 12px GAP BETWEEN COLOR SQUARES ==== */
.color-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -6px;
}
.color-grid > [class*="col-"] {
  padding: 6px !important;   /* <-- !important beats your square-col rule */
}

/* ==== ELEVATED COLOR SWATCHES WITH SHADOW ==== */
.color-swatch {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.2s ease;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.color-swatch:hover {
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.25) !important;
  transform: translateY(-2px);
}