@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300&family=Sansita:wght@700&display=swap');
* {
	margin:0;
	padding:0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  font-family: 'Open Sans', Helvetica, Arial, sans-serif;
  font-size: 18px;
}
body {
  overflow-x: hidden;
}
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
a:focus, a:active, a:link {
    outline: 0;
    -moz-outline-style: none;
}
::-moz-focus-inner {
    border: 0;
}
input[type="button"]::-moz-focus-inner{
  outline: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
textarea {
  resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

.bg--blue-lt  { background-color: #D7F5FA; }
.bg--lilac-lt  { background-color: #E6D7FA; }
.bg--yellow-lt  { background-color: #FAF6D7; }
.bg--red-lt  { background-color: #FAD7D7; }
.bg-green-lt  { background-color: #a1edc7; }
.bg--blue  { background-color: #1292FF; }
.bg--lilac  { background-color: #C812FF; }
.bg--yellow  { background-color: #FFE200; }
.bg--gold { background-color: #ffcc00; }
.bg--red  { background-color: #FF0000; }
.greentext { color: #119D57; }

html {
  text-align: center;
}
h1, h2, h3, h4, h5 {
  font-family: 'Sansita', 'Arial Black', sans-serif;
  font-weight: bold;
}
header {
  display: flex;
  width: 100%;
  justify-content: space-between;
  background: white;
}
.logo {
  padding: 5px 0px 0px;
  margin-bottom: -100px;
}
img {
  max-width: 100%;
}
.logo {
  flex-grow: 2;
  text-align: center;
}
.logo img {
  width: 100px;
  transform: translateX(25%);
  position: relative;
  z-index: 2;
}
.logo a {
  display: inline-block;
}
nav {
  text-transform: uppercase;
}
nav a {
  text-decoration: none;
  color: #707070;
  padding: 0.5em;
}
nav a:hover {
  color: red;
}
.navbox {
  background-color: #fee200;
  padding: 1.5em;
  position: absolute;
  display: none;
  right: 100%;
  opacity: 0;
  transition: opacity 0.8s 0.1s;
}
.show {
  top: 100px;
  display: block;
  padding: 0px;
  background-color: transparent;
  right: 0%;
  opacity: 1;
  z-index: 2;
}
.show a {
  display: block;
  padding: 20px;
  margin-bottom: 1px;
  background-color: #fee200;
}
.menu {
  text-align: right;
}
.menu img {
  margin: 5px 10px;
  width: 40px;
}
.hero {
  width: 100%;
  min-height: 283px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  padding: 2em;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-shadow: 2px 2px #000;
}
.hero:not(.hero-home, .hero-about, .hero-test) {
  margin-bottom: 72px;
}
.hero-home {
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.65) 100%), url('../img/hero-home.jpg');
}
.hero-plants {
  max-height: 275px;
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.65) 100%), url('../img/panorama-plants.jpg');
}
.hero-gallery {
  max-height: 275px;
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.65) 100%), url('../img/panorama-gallery.jpg');
}
.hero-services {
  max-height: 275px;
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.65) 100%), url('../img/panorama-services.jpg');
}
.hero-about {
  max-height: 275px;
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.65) 100%), url('../img/panorama-about.jpg');
}
.hero-contact {
  max-height: 275px;
  background-image: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 75%, rgba(0,0,0,0.65) 100%), url('../img/panorama-contact.jpg');
}
.hero-test {
  padding: 0px;
  margin-bottom: 0px;
}
.hero-test .container {
  max-width: initial;
}
.hero-test .titles {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.titles h1 {
  max-width: 50%;
  display: inline-block;
  left: 50%;
  transform: translateX(50%);
}
.subtitle {
  text-align: center;
}
.section-header {
	padding: 3em 20px;
	text-align: center;
}
.section-header p {
	text-align: center;
}
.intersection {
  padding: 3vw;
  font-size: 24px;
}
.col4 {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.col4 div {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: center;
}
.categories > div {
  text-align: center;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100%;
  width: minmax(160px, 320px);
}
.categories a {
  display: block;
  text-decoration: none;
  width: 100%;
  padding-top: 100%;
}
.categories img {
  bottom: 0px;
  overflow: hidden;
}
.categories h3 {
  color: #505050;
  margin: 20px auto;
  font-size: 36px;
}
.categories .button {
  background-color: black;
  color: white;
  font-size: 1em;
  padding: 0.5em 1em;
  margin: 0px auto 40px;
  border-radius: 0.5em;
  white-space: nowrap;
  width: auto;
  display: inline-block;
}
button, .button {
  border: 2px solid transparent;
}
button:hover, .button:hover {
  border: 2px solid red;
}
.category {
  display: flex;
  flex-direction: column;
  height: 170vw;
}
.branding img {
  width: 100px;
}
.col3, .col2 {
  display: flex;
  flex-wrap: wrap;
}
.col3 div {
  flex-grow: 1;
  padding-top: 2vw;
  padding-bottom: 2vw;
}
.col2 div {
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 400px;
	padding: 0px 5vw;
	text-align: center;
}
.rightcol h3, .leftcol h3 {
  font-size: 2.0em;
  margin-bottom: 1rem;
}
.rightcol .button, .leftcol .button {
  padding: 10px 12px;
  font-size: 1.2em;
  margin-top: 2em;
  text-decoration: none;
  display: inline-block;
  width: 100%;
  font-weight: bold;
  border-radius: 5px;
}
.section--about-intro {
  background: #751C0E;
  color: white;
  padding: 40px;
}
.section--contact-intro {
  background: #ffe200;
  color: #505050;
  padding: 40px;
}
.section--services-intro, .section--services02 {
  background: #007629;
  color: white;
  padding: 40px;
}
.section--services01 {
  background: #505050;
  color: white;
  padding: 40px;
}
.about--intro {
  padding: 40px;
  background: rgba(255,255,255,0.5);
  border-radius: 20px;
}
.catalog-tab {
  margin-top: -53px;
  margin-bottom: 73px;
}
.catalog-tab h2 {
  color: white;
  display: inline-block;
  min-width: 200px;
  padding: 7px 0px;
  clip-path: polygon(15% 0%, 100% 0%, 100% 100%, 0% 100%);
  position: relative;
  left: -30%;
}
.catalog-grid {
  display: flex;
  padding: 20px;
  flex-wrap: wrap;
  justify-content: center;
  background-image: url('../img/flower-wh-op20.svg');
  background-position: 95% 95%;
  background-repeat: no-repeat;
  background-size: 300px;
}
.catalog-sample {
  min-width: 250px;
  min-height: 300px;
  margin: 5px;
  background-color: white;
  position: relative;
  display: inline-block;
}
.catalog-sample a {
  display: block;
  height: 100%;
}
.catalog-sample-name {
  position: absolute;
  bottom: 0px;
  width: 100%;
  background-color: #505050;
  color: white;
  text-align: center;
  padding: 10px;
  font-size: 0.7em;
}
.gallery-grid {
  display: flex;
  flex-wrap: wrap;
  padding: 0px 20px 20px;
  max-width: 90%;
  margin: -5px auto;
  justify-content: center;
}
.gallery-grid img:hover {
  transition: transform 1.2s ease-in-out 0.1s;
  transform: scale(1.15);
}
.gallery-grid div {
  background-color: #a1edc7;
  width: 300px;
  height: 300px;
  margin: 10px;
  cursor: zoom-in;
  overflow: hidden;
}
.services-section1 {
  background-image: url('../img/max-field-crop.jpg');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.intropic {
  position: relative;
}
.intropic-caption {
  position: absolute;
  bottom: 0px;
  width: 100%;
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.4);
}
.prebookings, .custom, .chainstores {
  background-image: url('../img/services03.jpg');
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 3em;
  text-shadow: 2px 2px #000;
  padding: 20px;
}
.custom {
  background-image: url('../img/services04.jpg');
}
.chainstores {
  background-image: url('../img/boxes.jpg');
}
.bio img {
  border-radius: 50%;
  width: 80%;
  margin: 10% 0;
}
.about--page {
  background-image: linear-gradient(to bottom, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.7) 15%, rgba(255,255,255,0.9) 80%), url('../img/about-bg.jpg');
  background-size: cover;
}
.container {
  position: relative;
}
.container-wide {
	padding: 0 5vw;
}
.about--page .container {
  display: grid;
  grid-template-columns: 1fr;
  padding: 5vw 0px;
}
.about--page h2 {
  font-size: clamp(36px, 6vw, 3em);
  color: #505050;
  max-width: 600px;
}
.about--logo {
  padding: 20px;
}
.about--page .container {
  padding: 30px;
}
.about--page .container h3 {
  font-size: clamp(24px, 4vw, 2em);
  color: #505050;
  text-align: center;
}
.about--page .container p {
  margin: 20px 0px;
}
.bio img {
  box-shadow: 10px 10px 5px rgba(0,0,0,0.5);
  transition: all 0.5s;
}
.bio img:hover {
  transform-origin: 50%;
  transform: scale(1.1);
}
.contact--info, .contact--hours {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2vw;
  max-width: 1920px;
  margin: 0px auto;
  padding: 5vw 3vw;
}
.contact--info-bold {
  font-family: "Sansita", "Open Sans", sans-serif;
  font-weight: bold;
  font-size: 1.1em;
}
.contact--data p {
  text-align: center;
  margin: 20px 0px;
}
.contact--data p:not(:last-of-type) {
  padding-bottom: 20px;
  border-bottom: 1px solid #9b9b9b;
}
.contact--data .button {
  display: inline-block;
  text-decoration: none;
  line-height: 40px;
  padding: 0px 25px;
  border-radius: 20px;
  background-color: #119D57;
  color: white;
}
.contact--hours {

}
.map, .trucks {
  padding: 0px 20px;
}
.map h2, .trucks h2 {
  font-size: clamp(36px, 6vw, 3em);
  color: #119D57;
}
.map img, .trucks img {
  padding: 30px;
}
.topbrand {
  position: relative;
}
.topbrand::before {
  content: url('../img/flower-logo-lilac.svg');
  position: absolute;
  width: 100px;
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
.sidelined {
  min-height: 100px;
}
.sidelined--left {
  transform: translateX(-100%);
  transition: transform 0.5s ease-out;
}
.sidelined--right {
  transform: translateX(100%);
  transition: transform 0.5s ease-out;
}
.slideIn {
  transform: translateX(0);
  transform: translateX(0%);
}
a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
}
.contact--data a {
	margin: 15px auto;
}

footer {
  background: linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)), url('../img/flowerpat2.png');
  color: white;
  padding: 20px;
  line-height: 2.5em;
  font-size: 0.9em;
}
.footerlogo img {
  width: 150px;
}
footer a {
  color: white;
  text-decoration: none;
}
.byline {
  font-size: .7em;
  line-height: 1;
}
.video {
  padding: 5vw;
}
.video h3 {
  font-size: 2.2em;
  text-align: center;
  margin-bottom: 1.5em;
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden,
[hidden] {
  display: none !important;
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}
.invisible {
  visibility: hidden;
}

.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}

.clearfix::after {
  clear: both;
}

    /*==========  Mobile First Method  ==========*/

    /* Custom, iPhone Retina */
    @media only screen and (min-width : 320px) {
      .about--page .container {

      }
    }

    /* Extra Small Devices, Phones */
    @media only screen and (min-width : 480px) {
      .about--page .container {
        grid-template-columns: 30% 1fr;
      }
      .about--owners {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
      }
    }

    /* Small Devices, Tablets */
    @media only screen and (min-width : 768px) {
      .hero h1 {
        font-size: clamp(36px, 6vw, 4em);
        max-width: 28ch;
      }
      .categories div {
        width: 50vw;
      }
      .category {
        height: 85vw;
      }
      .category h3 {
        text-align: center;
      }
      .hero-home h2 {
        font-size: 2em;
        background: rgba(0, 0, 0, 0.5);
        display: inline-block;
        padding: 0.2em 0.5em;
        border-radius: 0.5em;
        letter-spacing: 10px;
      }
      .col4 {
      	flex-wrap: nowrap;
      }
      .footerlogo {
        text-align: left;
        padding-left: 6vw;
      }
      .contactmedia {
        text-align: center;
        display: table-cell;
      }
      .address {
        text-align: right;
        padding-right: 6vw;
      }
      .rightcol {
        display: grid;
        grid-template-columns: 2fr 1fr;
        min-height: 30vw;
      }
      .leftcol {
        display: grid;
        grid-template-columns: 1fr 2fr;
        min-height: 30vw;
      }
      .section--about {
        background: url('../img/home-about.jpg') no-repeat center/cover;
      }
      .section--contact {
        background: url('../img/home-shipping.jpg') no-repeat center/cover;
      }
      .section--services {
        background: url('../img/home-arial.jpg') no-repeat center top/cover;
      }
      .services-section2 {
        background: url('../img/services-lex.jpg') no-repeat center top/cover;
      }
      p, h3 {
        text-align: left;
      }
      p {
        line-height: 2em;
      }
      .gallery-grid div {
        width: 250px;
        height: 250px;
      }
      .about--logo {
        flex-basis: 30%;
      }
      .about--content {
        flex-grow: 2;
      }
      .about--page h2 {
        text-align: left;
      }
      .contact--info, .contact--hours {
        grid-template-columns: repeat(3, 1fr);
      }
    }

    /* Medium Devices, Desktops */
    @media only screen and (min-width : 992px) {
      header {
        flex-direction: row;
        align-items: start;
      }
      .logo img {
        width: 150px;
      }
      .logo {
        text-align: left;
      }
      .navbox {
        padding-right: 5vw;
        position: relative;
        display: inline-block;
        opacity: 1;
        right: auto;
      }
      #angle {
        height: 100%;
      }
      .navbox::before {
        content: "";
        background-color: transparent;
        position: absolute;
        top: 0px;
        left: -30px;
        border-right: 15px solid #fee000;
        border-left: 15px solid transparent;
        border-top: 40px solid transparent;
        border-bottom: 39px solid #fee000;
      }
      nav {
      	white-space: nowrap;
      }
      nav a {
        position: relative;
      }
      nav a::before {
        content: "";
        position: absolute;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        border-top: 15px solid #fee000;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-bottom: 0px;
      }
      nav a.current::before {
        border-top: 15px solid red;
      }
      .menu {
        display: none;
      }
      .hero-home {
        height: 56vw;
      }
      .categories div {
        width: 25vw;
      }
      .category {
        height: 42.5vw;
      }
      .intersection {
        font-size: 36px;
      }
      .hero-home h2 {
        margin-top: -2em;
      }
      .map p, .trucks p {
        text-align: center;
      }
    }

    /* Large Devices, Wide Screens */
    @media only screen and (min-width : 1200px) {
      .container {
        max-width: 70%;
        margin: 0px auto;
      }
      .hero h1 {
          text-shadow: 5px 5px #000;
      }
      .section--about-intro, .section--contact-intro, .section--services-intro, .section--services01, .section--services02 {
        padding: 4vw;
      }
      .section--contact-intro, .section--services-intro, .section--services01, .section--services02 {
        position: relative;
        z-index: 2;
      }
      .section--contact-intro::before, .section--services02::before {
        content: "";
        background-color: inherit;
        position: absolute;
        top: 0px;
        right: 0px;
        width: 100%;
        height: 100%;
        transform-origin: bottom left;
        transform: skew(-15deg,0);
        z-index: -1;
      }
      .section--services-intro::before, .section--services01::before {
        content: "";
        background-color: inherit;
        position: absolute;
        top: 0px;
        right: 0px;
        width: 100%;
        height: 100%;
        transform-origin: top right;
        transform: skew(-15deg,0);
        z-index: -1;
      }
      #info-section {
        background: white url('../img/bg-contact.png') no-repeat;
        background-size: cover;
      }
    }

@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *::before,
  *::after {
    background: #fff !important;
    color: #000 !important;
    /* Black prints faster */
    box-shadow: none !important;
    text-shadow: none !important;
  }

  a,
  a:visited {
    text-decoration: underline;
  }

  a[href]::after {
    content: " (" attr(href) ")";
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]::after,
  a[href^="javascript:"]::after {
    content: "";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }

  /*
   * Printing Tables:
   * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
  }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }
}

