
@font-face
{
   font-family: "logo_font";
   src: url("/fonts/Merriweather-Regular.ttf") format("truetype");
}
@font-face
{
   font-family: "heading_font";
   src: url("/fonts/Merriweather-Regular.ttf") format("truetype");
}
@font-face
{
   font-family: "nav_font";
   src: url("/fonts/Montserrat-Regular.ttf") format("truetype");
}
@font-face
{
   font-family: "main_font";
   src: url("/fonts/Montserrat-Regular.ttf") format("truetype");
}
@font-face
{
   font-family: "fancy_font";
   src: url("/fonts/GreatVibes-Regular.ttf") format("truetype");
}



:root
{
   --colour_white:  #FFFFFF; 
   --colour_black:  #000000;
   --colour_logo_green: #126603;
   --colour_light_green: #77AB59;
}





BODY
{
   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 20px;
   background: #FFFFFF;
   padding: 0;
   margin: 0;
   color: #222222;
}


TABLE
{
   border-collapse: collapse;
   border-spacing: 0;
   border: 0;
   padding: 0;
   margin: 0;
}


P, LI
{
   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 16px;
   /*line-height: 1.75em;*/
   line-height: 2.25em;
   color: #222222;
   padding: 0 10px;
   text-align: justify;
}
P STRONG, LI STRONG
{
   font-weight: bold;
}

A
{
   text-decoration: none;
   color: inherit;
}


P A,
.section_page_width LI A
{
   text-decoration: none;
   /*outline: none;*/
   padding: 0;
   margin: 0;
   color: #227722;
   position: relative;
   border-bottom: #227722 1px solid;
   transition: all 0.2s ease-in-out;
}
P A:hover,
.section_page_width LI A:hover
{
   color: #55AA55;
   border-bottom: #55AA55 1px solid;
   transition: all 0.2s ease-in-out;
}
/*
P A::before
{
   content: '';
   background-color: #4F2A6C;
   position: absolute;
   left: -2px;
   bottom: 0;
   width: 100%;
   height: 2px;
   z-index: -1;
   transition: all 0.2s ease-in-out;
   padding: 0 2px;
}
P A:hover::before
{
   bottom: 0;
   height: 100%;
}
*/



.centered_div
{
    display: flex;
    align-items: center;
}

.nowrap
{
   white-space: nowrap;
}

.bg_dark_radial
{
   background-image: radial-gradient(circle, #000000, #000022, #000000);
}


.section_full
{
   width: 100%;
   padding: 0;
   margin: 0;
}
.section_page_width
{
   width: 100%;
   max-width: 1200px;
   margin: auto;
   padding: 50px 0;
}

/*
@media screen and (max-width: 1200px)
{
   .section_page_width{ width: 90%; }
}
*/


.section_half_container
{
   width: 100%;
   margin: 0;
   padding: 0;
}

.section_half_outer
{
   width: 100%;
   max-width: 2000px;
   padding: 0;
   margin: 0 auto;

   display: grid;
   grid-gap: 20px;
   grid-template-columns: 1fr 1fr;
}
.section_half_image
{
   background-repeat: no-repeat;
   background-size: cover;
   min-height: 500px;
}

.section_half_left
{
   width: 100%;
   max-width: 600px;
   margin: auto 0 auto auto;
   padding: 0px;
   vertical-align: middle;
}

.section_half_right
{
   width: 100%;
   max-width: 600px;
   margin: auto auto auto 0;
   padding: 0px;
   vertical-align: middle;
}

@media screen and (max-width: 1200px)
{
   .section_half_outer{ grid-template-columns: 1fr; }
   .section_half_left{ max-width: 1200px; margin: auto; }
   .section_half_right{ max-width: 1200px; margin: auto; }
}
@media screen and (max-width: 500px)
{
   .section_half_image{ min-height: 300px; }
}





HEADER
{
   background-color: #FFFFFF;
   width: 100%;
   font-family: "main_font", sans-serif;
   padding: 0;
   margin: 0;
   top: 0;
   z-index: 10;
}
@media screen and (min-width: 1000px)
{
   HEADER
   {
      /* position: sticky; */
   }
}

.header
{
   max-width: 1200px;
   width: 100%;
   margin: 0 auto;
   padding: 0;

   display: grid;
   grid-gap: 20px;
   grid-template-columns: 1fr 1fr;
}


.header_title
{
   display: inline-block;
   padding: 10px;
   text-align: left;
   font-family: "logo_font", sans-serif;
   font-size: 30px;
   white-space: nowrap;
}

.logo_image
{
   vertical-align: middle;

   animation-duration: 30s;
   animation-name: logo_rotate;
   animation-iteration-count: infinite;
   animation-direction: normal;
}
@keyframes logo_rotate
{
   0%
   {
      -webkit-transform: rotateY(0deg);
              transform: rotateY(0deg);
   }
   80%
   {
      -webkit-transform: rotateY(0deg);
              transform: rotateY(0deg);
   }
   100%
   {
      -webkit-transform: rotateY(360deg);
              transform: rotateY(360deg);
   }
}


.logo_title
{
   display: inline-block;
   vertical-align: middle;
   width: max-content;
}
.logo_devon_stork,
.logo_nursery
{
   font-family: "logo_font", sans-serif;
   font-size: 40px;
   font-weight: normal;
   color: var(--colour_logo_green);
}
.logo_nursery
{
   color: #555555;
}
.logo_horseshoe_drive
{
   font-family: "logo_font", sans-serif;
   font-size: 16px;
   font-weight: normal;
   line-height: 16px;
   color: #999999;
   width: 100%;
   text-align: center;
   margin-top: -5px;
}




.header_slogan
{
   display: block;
   padding: 10px;
   margin: auto 0;
   text-align: right;
   color: #555555;

   font-family: "logo_font", sans-serif;
   font-weight: normal;
   font-size: 24px;
   white-space: nowrap;

   animation-duration: 42s;
   animation-name: animate_slogan;
   animation-iteration-count: infinite;
   animation-direction: normal;
}
@keyframes animate_slogan
{
   0%
   {
      transform: scale(100%, 100%);
      -ms-transform: scale(100%, 100%);
      -webkit-transform: scale(100%, 100%);
   }
   90%
   {
      transform: scale(100%, 100%);
      -ms-transform: scale(100%, 100%);
      -webkit-transform: scale(100%, 100%);
   }
   95%
   {
      transform: scale(100%, 150%);
      -ms-transform: scale(100%, 150%);
      -webkit-transform: scale(100%, 150%);
   }
   100%
   {
      transform: scale(100%, 100%);
      -ms-transform: scale(100%, 100%);
      -webkit-transform: scale(100%, 100%);
   }
}







@media screen and (max-width: 1100px)
{
   .header{ grid-template-columns: 1fr; }
   .header_slogan{ display: none; }
}
@media screen and (max-width: 600px)
{
   .header{ grid-template-columns: 1fr; }
   .header_slogan{ display: none; }

   .logo_image{ height: 70px; }

   .logo_devon_stork,
   .logo_nursery
   {
      font-size: 30px;
   }
   .logo_horseshoe_drive
   {
      font-size: 12px;
   }
}
@media screen and (max-width: 500px)
{
   .header{ grid-template-columns: 1fr; }
   .header_slogan{ display: none; }

   .logo_image{ height: 50px; }

   .logo_devon_stork,
   .logo_nursery
   {
      font-size: 25px;
   }
   .logo_horseshoe_drive
   {
      font-size: 10px;
   }
}






.nav_menu_container
{
   background-color: var(--colour_logo_green);
   width: 100%;
   padding: 0;
   margin: 0;
   position: relative;
   z-index: 10;
}






.nav_toggle, [id^=nav_dropdown]
{
   display: none;
}

NAV
{
   margin: 0 auto;
   padding: 0;
   max-width: 1200px;
   font-size: 0;
}

NAV UL
{
   padding: 0;
   margin: 0;
   list-style: none;
   position: relative;
}

NAV UL LI
{
   margin: 0;
   display: inline-block;
   font-family: "nav_font", sans-serif;
   font-size: 16px;
   font-weight: bold;
   color: #FFFFFF;
   
   text-decoration: none;
   line-height: inherit;
   padding: 0;
   text-align: left;
}

NAV .nav_heading,
NAV .nav_main_item,
NAV A
{
   display: block;
   text-decoration: none;
   padding: 10px 17px;
   margin: 0;
}

NAV .nav_heading
{
   background-color: inherit;
   cursor: default;
   border: none;
}

NAV .nav_main_item
{
   background-color: inherit;
   border: none;
}

NAV A
{
   background-color: var(--colour_logo_green);
   border-top: #000000 1px solid;
}

NAV .nav_heading:hover,
NAV .nav_main_item:hover,
NAV A:hover,
NAV LI:hover,
NAV LI:hover A:hover
{
   background-color: #333333;
   color: #FFFFFF;
}

NAV UL UL
{
   display: none;
   position: absolute;
   top: 38px;
   box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.5);

}

NAV UL LI:hover > UL { display: inherit; }

NAV UL UL LI
{
   display: list-item;
   position: relative;

}

NAV UL UL UL LI
{
   position: relative;
   top: -60px;
   left: 170px;
}

@media screen and (max-width: 1200px)
{
   NAV { margin: 0; }

   .nav_toggle + a,
   .nav_toggle + .nav_heading,
   .nav_toggle + .nav_main_item,
   .nav_menu
   {
      display: none;
   }

   .nav_toggle
   {
      display: block;
   }

   .nav_hamburger
   {
      line-height: 60px;
      font-size: 20px;
      padding: 0 20px;
      color: #CCCCCC;
      text-decoration: none;
      border: none;
   }

   .nav_toggle:hover
   {
      color: #FFFFFF;
   }

   [id^=nav_dropdown]:checked + ul { display: block; }


   NAV .nav_heading,
   NAV .nav_main_item,
   NAV A
   {
      padding: 0;
      margin: 0;
   }


   NAV UL LI
   {
      display: block;
      width: 100%;
      padding: 0;
      font-family: "nav_font", sans-serif;
      font-size: 20px;
      font-weight: normal;
      color: #CCCCCC;
   }

   NAV .nav_heading,
   NAV .nav_main_item
   {
      padding: 15px 0 15px 20px;
   }


   NAV UL UL .nav_toggle,
   NAV UL UL A
   {
      padding: 15px 0 15px 40px;
   }



   NAV UL UL
   {
      position: static;
      color: #ffffff;
   }

   NAV UL UL LI:hover > UL,
   NAV UL LI:hover > UL { display: none; }

   NAV UL UL LI
   {
      display: block;
      width: 100%;
   }

   NAV UL UL UL LI { position: static; }

}









FOOTER
{
   background-color: #111111;
   width: 100%;
   font-family: "main_font", sans-serif;
   color: #FFFFFF;
   padding: 0;
   margin: 0;
}

.footer1_container
{
   background-color: #222222;
   width: 100%;
}
.footer1
{
   max-width: 1200px;
   width: 100%;
   margin: 0 auto;
   padding: 0;
   color: #DDDDDD;
   font-size: 16px;
   display: grid;
   grid-gap: 0;
   grid-template-columns: 5fr 4fr;
}
.footer1_title
{
   padding: 10px 0;
   margin: auto;
   text-align: left;
   font-family: "logo_font", sans-serif;
   font-size: 40px;
   white-space: nowrap;
}

.footer1 .logo_image
{
   filter: brightness(0) saturate(100%) invert(100%);
}

.footer1 .logo_devon_stork,
.footer1 .logo_nursery
{
   color: #FFFFFF;
}
.footer1 .logo_nursery
{
   color: #AAAAAA;
}
.footer1 .logo_horseshoe_drive
{
   color: #999999;
}

.footer1_menu
{
   margin: 0 auto;
   padding: 10px 10px 20px 10px;
   display: grid;
   grid-row-gap: 0;
   grid-column-gap: 10px;
   grid-template-columns: 3fr 2fr 2fr;

}
.footer1_menu_block
{
   display: block;
   padding: 0;
   margin: 0 auto auto 0;
   text-align: left;
   line-height: 30px;
}

.footer1_menu_block A
{
   text-decoration: none;
   padding: 0;
   margin: 0;
   position: relative;
   transition: all 0.1s ease-in-out;

   font-family: "main_font", sans-serif;
   font-size: 15px;
   color: #DDDDDD;
}

.footer1_menu_block A:hover
{
   color: #77FF77;
   text-shadow: 0 0 5px #126603;
}



.footer1_right_wrapper
{
   text-align: center;
}

.footer1_slogan
{
   display: block;
   padding: 40px 0;
   margin: auto 0;
   text-align: center;
   color: #777777;

   font-family: "logo_font", sans-serif;
   font-weight: normal;
   font-size: 24px;
   white-space: nowrap;
}

.footer1_contact_details
{
   transition: all 0.2s ease-in-out;

   font-family: "main_font", sans-serif;
   font-size: 16px;
   line-height: 16px;
   text-align: left;

   color: #999999;
   padding: 0;
   margin: auto;
   width: max-content;
}
.footer1_contact_details A
{
   transition: all 0.2s ease-in-out;
}
.footer1_contact_details A:hover
{
   color: #77FF77;
   text-shadow: 0 0 5px #126603;
}



.footer1_contact_details .contact_phone
{
   margin: 0 auto;
   padding: 0;
   display: grid;
   grid-row-gap: 20px;
   grid-column-gap: 10px;
   grid-template-columns: 1fr 1fr;
}
.footer1_contact_icon
{
   vertical-align: middle;
   padding-bottom: 3px;
   padding-right: 10px;
   filter: invert(70%) sepia(0%) saturate(1%) hue-rotate(276deg) brightness(89%) contrast(82%);
}
.footer1_contact_details .footer1_contact_br
{
   display: none;
}


@media screen and (max-width: 1100px)
{
   .footer1{ grid-template-columns: 1fr; padding-bottom: 50px;}

   .footer1_title{ text-align: center; }

   .footer1_menu{ grid-template-columns: 1fr; width: 100%; padding: 0; margin: 50px 0 0 0;}
   .footer1_menu_block
   {
      width: 100%;
      text-align: center;
      padding: 0;
      line-height: 20px;
   }
   .footer1_menu_block A
   {
      animation: none;

      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      -khtml-border-radius: 10px;
      border-radius: 10px;

      border: 0;
      margin: auto;
      padding: 10px 0;
      background-color: var(--colour_logo_green);
      display: block;
      max-width: 400px;
      width: 90%;
      outline: none;
      color: #FFFFFF;
   }

   .footer1_menu_block A:hover::before
   {
      left: 0;
      width: 0%;
   }

   .footer1_contact_details
   {
      display: inline-block;
      width: auto;
   }
   .footer1_contact_details .contact_phone
   {
      grid-template-columns: 1fr;
   }
   .footer1_contact_details .footer1_contact_br
   {
      display: inline;
   }

}









.footer2
{
   max-width: 1200px;
   width: 100%;
   margin: 0 auto;
   padding: 20px 0;

   display: grid;
   grid-gap: 20px;
   grid-template-columns: 1fr 1fr;

   font-family: "main_font", sans-serif;
   font-size: 14px;
   color: #555555;
}
.footer2_company
{
   display: block;
   padding: 5px 10px;
   margin: auto 0;
   text-align: left;
}
.footer2_copyright
{
   display: inline-block;
   padding: 5px 10px;
   text-align: right;
}

@media screen and (max-width: 800px)
{
   .footer2{ grid-template-columns: 1fr; }
   .footer2_copyright{ text-align: center; }
   .footer2_company{ text-align: center; padding-bottom: 20px;}
}






.main_banner_container
{
   margin: 0;
}
.main_banner_container,
.main_banner_container #main-slide,
.main_banner_container #main-slide > LI
{
   width: 100%;
   height: 500px;
   overflow: hidden;
   position: relative;
   padding: 0;
}
.main_banner_container #main-slide > LI > IMG
{
   height: 100%;
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50% , -50%);
}













H1, H2, H3, H4, H5
{
   font-family: "heading_font", sans-serif;
   color: #222222;
   padding: 0 10px;
   margin: 0;

   max-width: 100%;
}

H1
{
   font-weight: bold;
   font-size: 40px;
   line-height: 50px;
}
.h1_sub
{
   font-weight: normal;
   font-size: 24px;
   line-height: 24px;
   text-transform: uppercase;
}
H2
{
   font-weight: normal;
   font-size: 34px;
   line-height: 38px;
/*
   font-size: 24px;
   line-height: 34px;
*/
}
H3
{
   font-weight: normal;
   font-size: 20px;
   line-height: 30px;
}
H4
{
   font-family: "fancy_font", sans-serif;
   font-size: 70px;
   font-weight: normal;
   padding: 0;
   margin: 0 auto;
   color: var(--colour_logo_green);
   text-shadow: 2px 2px 5px #444444;
   max-width: 95%;
}
H5
{
   font-weight: normal;
   font-size: 30px;
   line-height: 40px;
   text-transform: uppercase;
}




.breadcrumb
{
   color: #777777;
}


.breadcrumb A
{
   text-decoration: none;
   /*outline: none;*/
   padding: 0;
   margin: 0;
   color: #777777;
   position: relative;
   transition: all 0.1s ease-in-out;
   border: none;
}
.breadcrumb A:hover
{
   color: #227722;
   border: none;
}







.greenlife
{
   max-width: 50%;
   
   animation-duration: 20s;
   animation-name: animate_greenlife;
   animation-iteration-count: infinite;
   animation-direction: normal;
}
@keyframes animate_greenlife
{
   0%
   {
      filter: blur(0);
   }
   96%
   {
      filter: blur(0);
   }
   98%
   {
      filter: blur(5px);
   }
   100%
   {
      filter: blur(0);
   }
}




.photo_float_left, .photo_float_right, .photo_center
{
      -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
    -khtml-border-radius: 10px;
           border-radius: 10px;
}

.photo_float_left
{
   float: left;
   margin-right: 20px;
}

.photo_float_right
{
   float: right;
   margin-left: 20px;
}

@media screen and (max-width: 900px)
{
   .photo_float_left{ float: none; width: 95%; }
   .photo_float_right{ float: none; width: 95%; }
   .photo_center{ float: none; width: 95%; }
}












.search_container
{
   text-align: center;
}



.search_container INPUT
{
   border: #CCCCCC 2px solid;
}

.search_container INPUT:focus
{
   border: var(--colour_logo_green) 2px solid;
}


.search_container .form_button
{
   background-color: var(--colour_logo_green);
   color: #FFFFFF;
   text-align: center;

   border: var(--colour_logo_green) 2px solid;

   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}

.search_container .form_button:hover
{
   background-color: #FFFFFF;
   color: var(--colour_logo_green);
}









.category_image
{
   float: right;   

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   margin: 10px;
}
.category_image_wrapper
{
   margin: 0;
}


@media screen and (max-width: 900px)
{
   .category_image
   {
      float: none;
      width: 100%;
      margin: 0;
   }
   .category_image_wrapper
   {
      margin: 10px;
   }
}






.category_view
{
   margin: 30px 10px 10px 10px;
   padding: 0;

   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 30px;
   grid-template-columns: 1fr 1fr 1fr 1fr;

   font-family: "main_font", sans-serif;
   font-size: 16px;
   line-height: 24px;
   color: #222222;
   text-align: center;
}
.category_view .category_product
{
   
}
.category_view .category_product .category_product_image
{
   margin: 0;
   padding: 0;
}
.category_view .category_product .category_product_image DIV
{
   width: 100%;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   overflow: hidden;
}
.category_view .category_product .category_product_image DIV DIV
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   /* padding-bottom: 100%; */
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
}
.category_view .category_product .category_product_image DIV DIV:hover
{
   transform: scale(1.1);
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}
.category_view .category_product .category_product_image DIV DIV .category_product_image_overlay
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   margin: 0;
   padding-bottom: 100%;

/*
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
*/
   overflow: hidden;

}

.category_view .category_product .category_product_text
{
   font-family: "main_font", sans-serif;
   font-size: 16px;
   line-height: 24px;
   color: #222222;
   text-align: center;
   font-weight: bold;
   margin: 10px;
}

@media screen and (max-width: 900px)
{
   .category_view
   {
      grid-template-columns: 1fr 1fr 1fr;
   }
}
@media screen and (max-width: 600px)
{
   .category_view
   {
      grid-template-columns: 1fr 1fr;
   }
}







.product_display
{
   margin: 10px;
   padding: 0;

   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 0;
   grid-template-columns: 45fr 55fr;

   font-family: "main_font", sans-serif;
   font-size: 16px;
   line-height: 16px;
   color: #222222;
   text-align: left;
}

.product_display .product_details
{
   /*order: 1;*/

   margin: 0;
   padding: 0;
}


.main_h1,
.product_display .product_details H1
{
   /*
   font-family: "heading_font", sans-serif;
   color: #222222;
   font-weight: bold;
   font-size: 24px;
   line-height: 26px;
   */
   padding: 0;
   margin: 0 auto 10px auto;
   max-width: 100%;
}
.main_h1
{
   display: none;
   margin: 20px 10px;
   text-align: center;
}
.product_display .product_details H1
{
   display: block;
}



.product_display .product_details P
{
   margin: 0;
   padding: 0;

   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 16px;
   /*line-height: 1.75em;*/
   line-height: 2em;
   color: #222222;
   text-align: justify;
}
.product_display .product_details .product_price
{
   margin: 20px 0;
   padding: 0;
   
   font-family: "main_font", sans-serif;
   font-size: 30px;
   line-height: 30px;
   font-weight: bold;
   color: #222222;
   text-align: right;
}

.product_display .product_details .available_in
{
   font-family: "main_font", sans-serif;
   font-size: 16px;
   line-height: 20px;
   font-weight: bold;
   color: var(--colour_logo_green);
   text-align: left;
}



.product_display .product_images
{
/*   order: 2; */

   margin: 0;
   padding: 0;
}

.product_display .product_images .product_images_wrapper
{
   margin: 0;
   padding: 0;

   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 10px;
   grid-template-rows: auto auto;

}

.product_display .product_images .product_images_wrapper .product_thumbnail_main DIV
{
   width: 100%;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   overflow: hidden;
}

.product_display .product_images .product_images_wrapper .product_thumbnail_main DIV DIV
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   padding-bottom: 75%;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
}
.product_display .product_images .product_images_wrapper .product_thumbnail_main DIV DIV:hover
{
   transform: scale(1.1);
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}

.product_display .product_images .product_images_wrapper .product_thumbnails
{
   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 10px;
   grid-template-columns: 1fr 1fr 1fr;
}
.product_display .product_images .product_images_wrapper .product_thumbnails DIV
{
   width: 100%;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   overflow: hidden;
}
.product_display .product_images .product_images_wrapper .product_thumbnails DIV DIV
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   margin: 0;
   padding: 0 0 75% 0;

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
}
.product_display .product_images .product_images_wrapper .product_thumbnails DIV DIV:hover
{
   transform: scale(1.2);
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}

.product_display .product_options
{
   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 10px;
   grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.product_display .product_options .product_option
{
/*
   display: grid;
   grid-column-gap: 10px;
   grid-row-gap: 10px;
   grid-template-columns: 100px auto;
*/
   margin: 5px;
}
.product_display .product_options .product_option_thumbnail
{
   width: 100%;
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   overflow: hidden;
}
.product_display .product_options .product_option_thumbnail .product_option_image
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   margin: 0;
   padding: 0;
/*   padding: 0 0 75% 0; */

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;

   overflow: hidden;
}
.product_display .product_options .product_option_thumbnail .product_option_image .product_option_image_overlay
{
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
   margin: 0;

   padding: 0 0 75% 0;
/*
   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
*/
   overflow: hidden;

}
.product_display .product_options .product_option_thumbnail .product_option_image:hover
{
   transform: scale(1.2);
   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}




/*
.product_display .product_options .product_option_thumbnail .product_option_image .banner_wrapper
{
	width: 150px;
	height: 150px;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	&:after {
		content: "";
		display: block;
		width: 10px;
		height: 5px;
		background-color: darken(#FF0000, 5%);
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
	}
	&:before {
		content: "";
		display: block;
		height: 10px;
		width: 5px;
		background-color: darken(#FF0000, 5%);
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: -1;
	}
}

.product_display .product_options .product_option_thumbnail .product_option_image .banner
{
	width: 100px;
	padding: 3px;
	background-color: #FF0000;
	text-align: center;
	transform: rotate(-45deg) translate(-28%, -35%);
	box-shadow: 0px 5px 5px rgba(0,0,0,0.4);
	text-transform: uppercase;
	text-shadow: 0 2px 2px rgba(0,0,0,0.4);


   font-family: "main_font", sans-serif;
   font-size: 10px;
   line-height: 10px;
   font-weight: bold;
   color: #FFFFFF;
   overflow: hidden;

}
*/



.product_display .product_options .product_option_text
{
/*
   display: flex;
   align-items: center;
*/
}
.product_display .product_options .product_option_text P
{
   margin: 0;
   padding: 0;

   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 14px;
   line-height: 20px;
   color: #222222;
   text-align: center;
}
.product_display .product_options .product_option_text .product_special_price
{
   color: #DD0000;
   font-weight: bold;
}

.product_display .product_details .product_price_conditions
{
   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 14px;
   line-height: 18px;
   color: #777777;
   text-align: center;
   padding: 0 20px;
}




.product_display .product_enquiry_button
{
   margin: 30px;
   padding: 10px;

   background-color: var(--colour_logo_green);

   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 16px;
   line-height: 16px;
   color: #FFFFFF;
   text-align: center;

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: var(--colour_logo_green) 2px solid;

   transition: all .3s ease-in-out;
   -webkit-transition: all .3s ease-in-out;
}

.product_display .product_enquiry_button:hover
{
   background-color: #FFFFFF;
   color: var(--colour_logo_green);
}





.product_pdf_section
{
   width: 100%;
   text-align: center;
}
.product_pdf_section .product_pdf_frame
{
   margin: 10px;
   padding: 30px 0;
   border-top: #AAAAAA 1px solid;
   text-align: center;
}

.product_pdf_section .product_pdf_frame .product_pdf_file
{
   display: inline-block;
   margin: 10px 50px;

   font-family: "main_font", sans-serif;
   text-decoration: none;
   font-size: 14px;
   line-height: 20px;
   color: #222222;
   text-align: center;
}


.product_points_section
{
   border-top: #AAAAAA 1px solid;
}

.product_video_section
{
   border-top: #AAAAAA 1px solid;
   text-align: center;
   padding: 20px 0;
}

.product_video
{
   width: 400px;
   max-width: 90%;
   margin: 0;

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;
   border: none;
}
.product_video_section P
{
   text-align: center;
   margin: 0;
   padding: 0;
}



@media screen and (max-width: 1100px)
{
   .product_display{ grid-template-columns: 1fr; }

   .main_h1
   {
      display: block;
   }
   .product_display .product_details H1
   {
      display: none;
   }

   .product_display .product_details P
   {
      margin-top: 20px;
   }


/*
   .product_display .product_details{ order: 2; margin: 20px 0 0 0; }
   .product_display .product_images{ order: 1; }
*/

}


































.shake
{
   animation: shake 10s;
   animation-iteration-count: infinite;
}



@keyframes shake
{
     0% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
    89% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
    92% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    93% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    94% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    95% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    96% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    97% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    98% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    99% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
   100% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
}


.shake2
{
   animation: shake2 5s;
   animation-iteration-count: infinite;
}



@keyframes shake2
{
     0% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
    78% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
    84% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    86% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    88% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    90% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    92% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    94% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
    96% { transform: rotate(-2deg); -webkit-transform: rotate(-2deg); }
    98% { transform: rotate( 2deg); -webkit-transform: rotate( 2deg); }
   100% { transform: rotate( 0deg); -webkit-transform: rotate( 0deg); }
}






.reveal_content
{
   filter: opacity(1);
   transition: all .5s ease-in-out;
   -webkit-transition: all .5s ease-in-out;
}

.reveal_content.reveal_slideup
{
   filter: opacity(0);
   transform: translate(0px, 200px);
   -ms-transform: translate(0px, 200px);
   -webkit-transform: translate(0px, 200px);
}

.reveal_content.reveal_slideright
{
   filter: opacity(0);
   transform: translate(-500px, 0px);
   -ms-transform: translate(-500px, 0px);
   -webkit-transform: translate(-500px, 0px);
}

.reveal_content.reveal_fadein
{
   filter: opacity(0);
}

.reveal_content.reveal_grow
{
   transform: scale(0, 0);
   -ms-transform: scale(0, 0);
   -webkit-transform: scale(0, 0);
}










/*
.big_button
{
   background-color: var(--colour_purple);
   display: inline-block;
   min-width: 100px;
   max-width: 90%;

      -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
    -khtml-border-radius: 10px;
           border-radius: 10px;
   
   padding: 10px 20px;

   border: var(--colour_purple) 1px solid;
   
   font-family: "intro_font", sans-serif;
   font-size: 20px;
   color: #FFFFFF;

   transition: 0.5s ease-in-out;
}

.big_button:hover
{
   background-color: #000000;
   border: var(--colour_cyber_blue) 1px solid;
   color: var(--colour_cyber_blue);
   transition: 0.5s ease-in-out;
   cursor: pointer;
}
*/





.section_contact_block
{
   background-color: var(--colour_logo_green); /*#74B248; /*#A0D468; /* #8CC152; */
   color: #FFFFFF;
}

.section_contact_block H2,
.section_contact_block P
{
   color: #FFFFFF;
   text-align: center;
}


.contact_phone_numbers_wrapper
{
   width: 100%;

   display: grid;
   grid-column-gap: 20px;
   grid-row-gap: 20px;
   grid-template-columns: 1fr 1fr;
}
.contact_phone_number
{
   width: 70%;
   margin: auto;
}
.contact_email
{
   width: 70%;
   margin: auto;
}
.contact_directions
{
   width: 70%;
   margin: auto;
}
@media screen and (max-width: 900px)
{
   .contact_phone_numbers_wrapper{ grid-template-columns: 1fr; }
   .contact_phone_number{ width: 90%; }
   .contact_email{ width: 90%; }
   .contact_directions{ width: 90%; }
}



.contact_button
{
   background-color: var(--colour_logo_green);
   border: var(--colour_logo_green) 2px solid;

   text-align: center;

      -moz-border-radius: 25px;
   -webkit-border-radius: 25px;
    -khtml-border-radius: 25px;
           border-radius: 25px;

   font-size: 24px;
   line-height: 30px;
   color: #FFFFFF;
   padding: 10px;
   transition: 0.3s;
}
.contact_button:hover
{
   background-color: #FFFFFF;
   border: var(--colour_logo_green) 2px solid;
   color: var(--colour_logo_green);
}


.contact_map_iframe
{
   width: 100%;
   height: 500px;
   border: 0;
   padding: 0;
   display: block;
}

@media screen and (max-width: 900px)
{
   .contact_map_iframe{ height: 300px; }
}




.form_row
{
   margin: 0 auto;
   display: grid;
   grid-gap: 10px;
   grid-template-columns: 200px auto;
   width: 80%;
}

.form_label
{
   padding: 0;
   margin: 20px 0;

   font-family: "main_font", sans-serif;
   font-size: 16px;
   color: #FFFFFF;
   text-align: left;
}

.form_field
{
   margin: auto 0;
}

.form_field_input
{
   width: 100%;
}

FORM
{
   display: inline;
   margin: 0px;
   padding: 0px;   
}

SELECT
{
   width: 100%;
}

INPUT, TEXTAREA, SELECT
{
   box-sizing: border-box;
   display: inline-block;

   font-family: "main_font", sans-serif;
   font-size: 20px;
   line-height: 30px;
   padding: 5px 10px;
   margin: 10px 0;
   font-weight: bold;
   color: #222222;

   background-color: #EEEEEE; /* #126603; #77AB59; var(--colour_light_green);*/
   text-align: left;
   outline: none;
   border: #FFFFFF 1px solid;

      -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
           border-radius: 5px;

   transition: 0.3s;

}
INPUT:focus, TEXTAREA:focus, SELECT:focus
{
   border: #FFFFFF 1px solid;
   background-color: var(--colour_light_green);
   transition: 0.3s;
}
INPUT::PLACEHOLDER
{
   font-size: 14px;
   color: var(--colour_light_green);
}

INPUT[name="fax"]
{
   display: none;
}





.form_button
{
   box-sizing: border-box;
   display: inline-block;

   font-family: "main_font", sans-serif;
   font-size: 20px;
   line-height: 30px;
   padding: 5px 30px;
   margin: 10px 0;
   font-weight: normal;
   color: #FFFFFF;

   background-color: var(--colour_light_green);
   text-align: left;
   outline: none;
   border: none;

      -moz-border-radius: 5px;
   -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
           border-radius: 5px;

   transition: 0.5s;

}
.form_button:hover
{
   background-color: #000000;
   transition: 0.5s;
   cursor: pointer;
}




@media screen and (max-width: 900px)
{
   .form_row
   {
      grid-template-columns: auto;
      grid-gap: 10px;
      width: 90%;
   }
   .form_label
   {
      margin: 20px 0 0 0;
   }
   INPUT, TEXTAREA
   {
      margin: 0;
   }

}


.form_message_success
{
   box-sizing: border-box;

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;

   font-family: "main_font", sans-serif;
   font-size: 20px;
   line-height: 26px;

   width: 90%;
   padding: 30px;
   margin: 10px auto 20px auto;
   font-weight: bold;
   text-align: center;

   background: #DDFFDD;
   color: #222222;
   border: #00EE00 3px solid;
}

.form_message_error
{
   box-sizing: border-box;

   -moz-border-radius: 10px;
   -webkit-border-radius: 10px;
   -khtml-border-radius: 10px;
   border-radius: 10px;

   font-family: "main_font", sans-serif;
   font-size: 20px;
   line-height: 26px;

   width: 90%;
   padding: 30px;
   margin: 10px auto 20px auto;
   font-weight: bold;
   text-align: center;

   background: #FFDDDD;
   color: #EE0000;
   border: #EE0000 3px solid;
}








