/* ==========================================================================
   RESPONSIVE MEDIA QUERIES
   ========================================================================== */

@media (max-width: 1024px) and (min-height: 600px) {
  h1 {
    font-size: 4em;
  }

  h1.baccto,
  h2 {
    font-size: 3.1rem;
  }

  .intro-text {
    font-size: 1.84rem;
    line-height: 2.25rem;
  }

  .navbar-topbar.main-padding,
  .navbar.main-padding {
    padding-left: var(--space-15) !important;
    padding-right: var(--space-15) !important;
  }

  .home-section {
    min-height: 770px !important;
    margin-top: -90px;
  }

  .home-section .home-content {
    padding-top: 95px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 540px !important;
  }

  .grow-section {
    margin-top: -120px;
    min-height: 565px !important;
  }

  .grow-section .grow-content {
    padding-top: 50px;
  }

  .grow-top-section {
    margin-top: -155px;
    min-height: 840px;
  }

  .grow-top-section .grow-content {
    padding-top: 200px;
  }

  .bottom-section {
    min-height: 750px !important;
  }
  .bottom-section.baccto {
    min-height: 660px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 180px;
  }

  .section-padding,
  .section-brands {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }

  #baccto-products,
  #garden-magic-products {
    padding-top: 2rem;
    margin-bottom: -40px;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .baccto-photo-img {
    height: 330px;
  }

  .col-form-label {
    text-align: left !important;
  }

  .card-brand .card-body {
    min-height: 390px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(3.5rem, 5vw, 3.75rem);
  }

  .card-footer {
    padding-left: 2em;
    min-height: 70px;
  }

  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link,
  .bottom-lead,
  .bottom-lead a.link {
    text-shadow: 1.5px 1.5px 3px rgb(50 50 50 / 75%);
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-10) !important;
    padding-right: var(--space-10) !important;
  }

  #contactForm {
    margin-bottom: 40px;
  }
}

@media (max-width: 912px) and (min-height: 1368px) {
  .grow-top-section {
    margin-top: -150px;
    min-height: 740px;
  }

  .grow-top-section .grow-content {
    padding-top: 200px;
  }

  .grow-content-pb {
    padding-bottom: 150px;
  }

  .grow-section .grow-content {
    padding-top: 150px;
  }

  .bottom-section,
  .bottom-section.baccto {
    min-height: 590px !important;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }

  #baccto-products > .container,
  #garden-magic-products > .container,
  .section-brands > .container {
    max-width: 820px;
  }
  .card-body .brand-card-img-wrap {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  .card-brand .card-body {
    min-height: 550px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    height: 572px !important;
  }

  .card.card-product .card-body {
    height: 300px !important;
  }
}

@media (max-width: 853px) and (min-height: 1280px) {
  .home-section {
    min-height: 630px !important;
    margin-top: -40px;
  }

  .grow-top-section {
    margin-top: -155px;
    min-height: 740px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 440px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 170px;
  }

  .grow-section {
    margin-top: -120px;
    min-height: 430px !important;
  }

  .grow-section .grow-content {
    padding-top: 85px;
  }

  .grow-content-pb {
    padding-bottom: 100px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    height: 590px !important;
  }

  #baccto-products .card.card-product .card-body,
  #garden-magic-products .card.card-product .card-body {
    height: 320px !important;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(5rem, 5vw, 4.75rem);
  }
  #brands .card-body .col-lg-6.mb-sm-2.mb-lg-0.align-top > p.mb-md-5 {
    margin-bottom: 22px !important;
  }
}

@media (max-width: 820px) and (min-height: 1180px) {
  .grow-top-section {
    margin-top: -120px;
    min-height: 650px;
  }

  .grow-top-section .grow-content {
    padding-top: 130px;
  }

  .grow-section {
    min-height: 470px !important;
  }

  .grow-section .grow-content {
    padding-top: 100px;
  }

  .bottom-section {
    min-height: 540px !important;
  }

  .bottom-section.baccto {
    min-height: 560px !important;
  }

  .card-brand .card-body {
    min-height: 615px !important;
  }

  .card-brand .card-header {
    min-height: 75px;
  }

  .card-header.bg-gm-primary {
    padding-top: 18px;
  }

  .mb-sm-2 {
    margin-bottom: 0.25rem !important;
  }

  #baccto-products .card.card-brand-main .card-body {
    min-height: 580px !important;
  }

  #baccto-products .card .card-body {
    min-height: 319px !important;
  }

  #garden-magic-products .card.card-brand-main .card-body .product-description {
    margin-bottom: 88px !important;
  }

  #garden-magic-products .card .card-body {
    min-height: 320px !important;
  }
}

@media (max-width: 800px) and (min-height: 1280px) {
  .bottom-section .bottom-content {
    padding-top: 80px;
  }

  .bottom-section.baccto .bottom-content {
    padding-top: 0px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(4.5rem, 5vw, 4.75rem);
  }
}

@media (max-width: 768px) and (min-height: 1024px) {
  .home-section {
    min-height: 565px !important;
    margin-top: -50px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 410px !important;
  }

  .grow-section {
    margin-top: -85px;
    min-height: 425px !important;
  }

  .grow-section .grow-content {
    padding-top: 90px;
  }
  .grow-top-section {
    min-height: 380px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 200px;
  }

  .bottom-section {
    min-height: 560px !important;
  }

  .bottom-section.baccto {
    min-height: 590px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 165px;
  }

  .section-brands .card-brand .card-body,
  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 600px !important;
  }

  #baccto-products .card.card-brand-main .card-body .product-description {
    margin-bottom: 48px !important;
  }

  #garden-magic-products .card.card-brand-main .card-body .product-description {
    margin-bottom: 114px !important;
  }

  .card-brand .card-header {
    min-height: 75px;
  }
  .card-header.bg-gm-primary {
    padding-top: 12px;
  }

  #baccto-products .check-list div,
  #garden-magic-products .check-list div {
    text-indent: -33px;
    padding-left: 28px;
    text-justify: auto;
  }

  #baccto-products .check-list i,
  #garden-magic-products .check-list i {
    text-align: right;
  }

  #baccto-products .card .card-body {
    min-height: 280px !important;
  }

  #garden-magic-products .card .card-body {
    margin-top: -50px;
  }
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 629px !important;
    margin-top: 0;
  }

  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }
  .baccto-photo-img {
    height: 378px;
  }
}

@media (max-width: 712px) and (min-height: 1138px) {
  h1 {
    font-size: 3.5em;
  }

  h1.baccto,
  h2 {
    font-size: 3.1rem;
  }

  .intro-text {
    font-size: 1.42rem;
    line-height: 2.25rem;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 375px !important;
  }

  .grow-section {
    margin-top: -85px;
    min-height: 400px !important;
  }

  .grow-section .grow-content {
    padding-top: 50px;
  }
  .grow-top-section {
    min-height: 380px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 200px;
  }

  .bottom-section {
    min-height: 550px !important;
  }
  .bottom-section .bottom-content {
    padding-top: 140px;
  }

  .bottom-section.baccto {
    min-height: 590px !important;
  }

  .card-brand .card-body {
    min-height: 490px;
  }
  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link,
  .bottom-lead,
  .bottom-lead a.link {
    text-shadow: 1.5px 1.5px 3px rgb(50 50 50 / 75%);
  }

  #contactForm {
    margin-bottom: 40px;
  }

  .container.bottom-content.main-padding,
  .container.bottom-content.main-padding .row.main-padding {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 600px) and (min-height: 1024px) {
  h1 {
    font-size: 3.5em;
  }

  h1.baccto,
  h2 {
    font-size: 3.1rem;
  }

  .intro-text {
    font-size: 1.42rem;
    line-height: 2.25rem;
  }

  .home-section {
    min-height: 450px !important;
    margin-top: 0px;
  }

  .home-section .home-content {
    padding-top: 95px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 315px;
  }

  .grow-section {
    margin-top: -85px;
    min-height: 400px !important;
  }

  .grow-section .grow-content {
    padding-top: 50px;
  }
  .grow-top-section {
    min-height: 380px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 200px;
  }

  .bottom-section {
    min-height: 500px;
  }
  .bottom-section.baccto {
    min-height: 550px;
  }

  .bottom-section .bottom-content {
    padding-top: 140px;
  }

  .section-padding,
  .section-brands {
    padding-top: 3rem;
    padding-bottom: 2rem;
  }

  #baccto-products,
  #garden-magic-products {
    padding-top: 2rem;
    margin-bottom: -40px;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .baccto-photo-img {
    height: 330px;
  }

  .col-form-label {
    text-align: left !important;
  }

  .card-brand .card-body {
    min-height: 490px !important;
  }
  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(3rem, 5vw, 3.25rem);
  }

  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link,
  .bottom-lead,
  .bottom-lead a.link {
    text-shadow: 1.5px 1.5px 3px rgb(50 50 50 / 75%);
  }

  #contactForm {
    margin-bottom: 40px;
  }
}

@media (max-width: 575.98px) {
  h1 {
    font-size: 3em;
  }

  .navbar-topbar a,
  .navbar-topbar i {
    margin-top: 20px;
    font-size: var(--font-size-sm);
  }

  .navbar-toggler {
    margin-top: 15px;
  }

  /* Tighten hero overlay padding */
  .home-content {
    padding-top: var(--space-12); /* 48px  ← was 134px */
  }
  .grow-content {
    padding-top: 40px; /* 64px  ← was 270px */
  }
  .bottom-content {
    padding-top: var(--space-12); /* 48px  ← was 210px */
  }
  .grow-content-pb {
    padding-bottom: 3.5em;
    padding-top: 1.5em;
    margin-top: 0.5em;
  }

  /* Collapse fixed hero section heights — let content drive height */
  .home-section {
    min-height: 300px !important;
  }
  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 215px !important;
  }
  .grow-top-section,
  .grow-section,
  .bottom-section {
    min-height: 0 !important;
    height: auto;
  }
  .grow-top-section {
    margin-top: -110px;
  }

  .grow-top-section .grow-content {
    padding-top: 80px;
  }
  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link {
    text-shadow: 3px 3px 5px rgb(50 50 50 / 75%);
  }

  .grow-section {
    margin-top: -42px;
  }

  .section-padding,
  .section-brands {
    padding-left: var(--space-5);
    padding-right: var(--space-5);
    padding-top: var(--space-5);
  }

  .section-padding {
    padding-bottom: var(--space-2);
  }

  .main-padding {
    padding-left: 19px;
    padding-right: 10px;
  }
  .questions-row {
    margin-top: -75px;
    padding-bottom: 3em;
    padding-top: 5em;
  }

  #about-heading {
    font-size: var(--font-size-3xl);
  }

  .intro-text {
    font-size: 1.25rem; /* 20px */
    line-height: 1.75rem; /* 28px */
  }

  .body-text,
  .grow-lead {
    font-size: 1rem; /* 16px */
    line-height: 1.5rem; /* 24px */
  }

  .brand-card-title,
  .brand-card-title-lg {
    font-size: clamp(1.25rem, 6vw, 1.75rem);
  }

  .brand-card-logo {
    max-width: 160px;
  }

  .card-brand .card-body {
    min-height: 495px !important;
  }

  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }
  .section-brands {
    padding-top: var(--space-10);
  }

  #grow-heading,
  #footer-heading {
    font-size: clamp(3rem, 5vw, 3.25rem);
  }

  .footer-copyrights {
    width: 100%;
  }
  .footer-copyrights-divider {
    display: none;
  }
  .grow-lead {
    margin-bottom: 15px;
  }
}

@media (max-width: 540px) and (min-height: 720px) {
  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 286px !important;
  }

  .bottom-section {
    height: 400px !important;
  }

  .bottom-section.baccto {
    min-height: 430px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 70px !important;
  }

  .bottom-section.baccto .bottom-content {
    padding-top: 85px !important;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(2.75rem, 5vw, 3rem);
  }
}

@media (min-width: 430px) and (max-width: 575.98px) {
  .home-section {
    min-height: 350px !important;
  }

  .col-form-label {
    text-align: left !important;
  }

  #contactForm {
    margin-bottom: 40px;
  }
}

@media (min-width: 430px) and (min-height: 932px) {
  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 500px !important;
  }

  .bottom-section {
    height: 490px !important;
  }
  .bottom-section.baccto {
    height: 530px !important;
  }
}

@media (max-width: 414px) and (min-height: 736px) {
  .home-section {
    min-height: 400px !important;
    margin-top: 0px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 500px !important;
  }

  .bottom-section {
    min-height: 460px !important;
  }

  .bottom-section.baccto {
    min-height: 480px !important;
  }

  .bottom-section.baccto .bottom-content {
    padding-top: 70px;
  }

  .bottom-section .bottom-content {
    padding-top: 90px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(2.3rem, 5vw, 2.7rem);
  }
}

@media (max-width: 402px) and (min-height: 874px) {
  .bottom-section {
    min-height: 480px !important;
  }
  .bottom-section.baccto {
    min-height: 530px !important;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 300px !important;
  }
}

@media ((max-width: 390px) or (max-width: 393px)) and (min-height: 844px) {
  .bottom-section {
    min-height: 500px !important;
  }

  .bottom-section.baccto {
    min-height: 520px !important;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 300px !important;
  }
}

@media (max-width: 384px) and (min-height: 640px) {
  .home-section {
    min-height: 396px !important;
    margin-top: 0;
  }

  .bottom-section {
    min-height: 400px !important;
  }

  .bottom-section.baccto {
    min-height: 515px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 80px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(2rem, 5vw, 2.25rem);
  }
  .bottom-lead {
    margin-bottom: var(--space-4);
  }
}

@media (max-width: 375px) and ((min-height: 667px) or (min-height: 812px)) {
  /* Pull down the rem base so all token-based sizes shrink proportionally */
  html {
    font-size: 15px;
  }

  /* Topbar strip is squeezed at 320 px — hide the tagline text */
  .navbar-topbar .col-sm-12.col-lg-6:first-child {
    display: none;
  }

  h1 {
    font-size: 2.5em;
  }

  h1.baccto,
  h2,
  h2#about-heading {
    font-size: 2.1em;
  }

  .intro-text {
    font-size: 1.24rem;
    line-height: 2rem;
  }

  .navbar-topbar.main-padding,
  .navbar.main-padding {
    padding-left: var(--space-15) !important;
    padding-right: var(--space-15) !important;
  }

  .home-section {
    min-height: 300px !important;
    margin-top: 0;
  }

  .home-section .home-content {
    padding-top: 95px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 200px !important;
  }

  .card.card-brand-main .check-list div,
  .product-description {
    font-size: 0.9rem;
  }

  .card.card-brand-main .check-list div {
    text-indent: -29px;
    padding-left: 26px;
    text-justify: auto;
  }
  .card.card-brand-main .check-list i {
    text-align: right;
  }

  .grow-section {
    margin-top: -85px;
    min-height: 300px !important;
  }

  .grow-section .grow-content {
    padding-top: 55px;
  }

  .grow-top-section {
    margin-top: -85px;
    min-height: 550px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 95px;
  }

  .bottom-section,
  .bottom-section.baccto {
    min-height: 440px !important;
  }
  .bottom-section.baccto {
    min-height: 485px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 95px;
  }

  .section-padding,
  .section-brands {
    padding-top: 2.2rem;
    padding-bottom: 1.2rem;
  }

  #baccto-products,
  #garden-magic-products {
    padding-top: 2rem;
    margin-bottom: -40px;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }

  .baccto-photo-img {
    height: 330px;
  }

  .col-form-label {
    text-align: left !important;
  }

  .card-brand .card-header {
    min-height: 70px;
  }

  .card-header.bg-gm-primary {
    padding-top: 18px;
  }

  .card-brand .card-body {
    min-height: 420px !important;
  }

  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 435px !important;
  }

  .card.card-brand-main .card-body {
    min-height: 475px !important;
  }

  .brand-card-img {
    height: 215px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(2.3rem, 5vw, 2.7rem);
  }

  .card-footer {
    padding-left: 2em;
    min-height: 70px;
  }

  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link,
  .bottom-lead,
  .bottom-lead a.link {
    text-shadow: 1.5px 1.5px 3px rgb(50 50 50 / 75%);
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-5) !important;
    padding-right: var(--space-5) !important;
  }

  #contactForm {
    margin-bottom: 40px;
  }
}

@media (max-width: 374.98px) {
  /* Pull down the rem base so all token-based sizes shrink proportionally */
  html {
    font-size: 15px;
  }

  /* Topbar strip is squeezed at 320 px — hide the tagline text */
  .navbar-topbar .col-sm-12.col-lg-6:first-child {
    display: none;
  }

  h1 {
    font-size: 2.5em;
  }

  h1.baccto,
  h2,
  h2#about-heading {
    font-size: 2.1em;
  }

  .intro-text {
    font-size: 1.24rem;
    line-height: 2rem;
  }

  .navbar-topbar.main-padding,
  .navbar.main-padding {
    padding-left: var(--space-15) !important;
    padding-right: var(--space-15) !important;
  }

  .home-section {
    min-height: 300px !important;
    margin-top: 0;
  }

  .home-section .home-content {
    padding-top: 95px;
  }

  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 190px !important;
  }

  .card.card-brand-main .check-list div,
  .product-description {
    font-size: 0.9rem;
  }

  .card.card-brand-main .check-list div {
    text-indent: -29px;
    padding-left: 26px;
    text-justify: auto;
  }
  .card.card-brand-main .check-list i {
    text-align: right;
  }

  .grow-section {
    margin-top: -85px;
    min-height: 300px !important;
  }

  .grow-section .grow-content {
    padding-top: 55px;
  }

  .grow-top-section {
    margin-top: -85px;
    min-height: 550px !important;
  }

  .grow-top-section .grow-content {
    padding-top: 95px;
  }

  .bottom-section,
  .bottom-section.baccto {
    min-height: 440px !important;
  }
  .bottom-section.baccto {
    min-height: 485px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 95px;
  }

  .section-padding,
  .section-brands {
    padding-top: 2.2rem;
    padding-bottom: 1.2rem;
  }

  #baccto-products,
  #garden-magic-products {
    padding-top: 2rem;
    margin-bottom: -40px;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 1.2rem;
    padding-right: 1.2rem;
  }

  .baccto-photo-img {
    height: 330px;
  }

  .col-form-label {
    text-align: left !important;
  }

  .card-brand .card-header {
    min-height: 70px;
  }

  .card-header.bg-gm-primary {
    padding-top: 18px;
  }

  .card-brand .card-body {
    min-height: 420px;
  }

  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }
  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 435px !important;
  }

  .card.card-brand-main .card-body {
    min-height: 475px !important;
  }

  .brand-card-img {
    height: 215px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(2.3rem, 5vw, 2.7rem);
  }

  .card-footer {
    padding-left: 2em;
    min-height: 70px;
  }

  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link,
  .bottom-lead,
  .bottom-lead a.link {
    text-shadow: 1.5px 1.5px 3px rgb(50 50 50 / 75%);
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-5) !important;
    padding-right: var(--space-5) !important;
  }

  #contactForm {
    margin-bottom: 40px;
  }
}

@media (max-width: 344px) and (min-height: 882px) {
  .navbar-topbar a,
  .navbar-topbar i {
    font-size: var(--font-size-xs) !important;
  }
}

@media (min-width: 576px) and (max-width: 767.98px) {
  /* .home-content {
    padding-top: var(--space-16); 
  }
  .grow-content {
    padding-top: var(--space-20); 
  }
  .bottom-content {
    padding-top: var(--space-16);
  }
  .grow-content-pb {
    padding-bottom: var(--space-20); 
  } */
}

@media (min-width: 768px) and (max-width: 991.98px) {
  /* .home-content {
    padding-top: var(--space-20);
  }
  .grow-content {
    padding-top: var(--space-24);
  }
  .bottom-content {
    padding-top: var(--space-20); 
  }
  .grow-content-pb {
    padding-bottom: var(--space-24); 
  }
  .brand-card-logo {
    max-width: 200px;
  } */
}

@media (min-width: 1920px) {
  .container {
    max-width: 1600px;
  }
}

/* --------------------------------------------------------------------------
   LANDSCAPE PHONES
   When a phone is rotated, viewport height drops well below 500 px.
   Fixed min-heights on hero sections would push content off-screen.
   -------------------------------------------------------------------------- */

@media (orientation: landscape) and (max-width: 1368px) {
  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 415px !important;
  }

  #baccto-products .card.card-product .card-body,
  #garden-magic-products .card.card-product .card-body {
    min-height: 275px !important;
  }

  .grow-content.main-padding,
  .bottom-content.main-padding {
    padding-left: var(--space-5) !important;
    padding-right: var(--space-5) !important;
  }
}

@media (orientation: landscape) and (max-width: 1280px) {
  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 300px !important;
  }

  #brands .card .card-body {
    min-height: 365px !important;
  }

  .card.card-product .card-body {
    min-height: 260px !important;
  }
  .grow-content.main-padding,
  .bottom-content.main-padding {
    padding-left: var(--space-5) !important;
    padding-right: var(--space-5) !important;
  }
}

@media (orientation: landscape) and (max-width: 1180px) {
  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 350px !important;
  }

  #brands .card .card-body {
    min-height: 365px !important;
  }

  .card.card-product .card-body {
    min-height: 350px !important;
  }
  .grow-content.main-padding,
  .bottom-content.main-padding {
    padding-left: var(--space-5) !important;
    padding-right: var(--space-5) !important;
  }

  h4 {
    font-size: 5rem;
  }

  h3.brand-card-title {
    font-size: 30px;
  }
}

@media (orientation: landscape) and (max-width: 1138px) {
  .card-brand .card-body {
    min-height: 495px !important;
  }

  .section-brands .card-brand .card-body {
    min-height: 410px !important;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(4rem, 5vw, 4.25rem);
  }

  .main-padding {
    padding-left: var(--space-10) !important;
    padding-right: var(--space-10) !important;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 495px !important;
  }

  .baccto-photo-img {
    height: 318px;
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-section .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-10) !important;
    padding-right: var(--space-10) !important;
  }
}

@media (orientation: landscape) and (max-width: 932px) {
  .home-section {
    height: 695px !important;
  }

  .grow-top-section {
    min-height: 675px !important;
  }

  .grow-section {
    margin-top: -60px;
    min-height: 510px !important;
  }

  .bottom-section {
    min-height: 600px !important;
  }

  .bottom-section.baccto {
    min-height: 600px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 150px;
  }

  .baccto-photo-img {
    height: 280px;
  }

  .card-header.bg-gm-primary {
    padding-top: 0 !important;
    height: 75px;
  }

  #garden-magic-products h3.brand-card-title-lg,
  #garden-magic-products .product-description {
    margin-bottom: 40px !important;
  }

  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 588px !important;
  }

  #brands
    > div
    > div
    > div:nth-child(2)
    > div
    > div.card-body
    > div
    > div.col-lg-6.mb-sm-2.mb-lg-0.align-top
    > p {
    margin-bottom: 18px !important;
  }
}

@media (orientation: landscape) and (max-width: 896px) {
  .grow-top-section {
    min-height: 685px !important;
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-section .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-2) !important;
    padding-right: var(--space-2) !important;
  }
  .bottom-section {
    min-height: 578px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 150px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 502px !important;
  }

  .card-header.bg-gm-primary {
    padding-top: 10px !important;
    height: 50px;
  }

  .card.card-product .card-body {
    min-height: 250px !important;
  }

  #baccto-products .card.card-product .card-body {
    min-height: 355px !important;
  }

  .baccto-photo-img {
    height: 218px !important;
  }

  .card-body > .row.align-items-center > .align-top > .mb-sm-2 {
    margin-bottom: 0.23rem !important;
  }

  .gm-brand .brand-card-img {
    margin-bottom: 10px !important;
  }
}

@media (orientation: landscape) and (max-width: 874px) {
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 527px !important;
  }

  #garden-magic-products .card.card-product .card-body {
    min-height: 332px !important;
  }

  .card-header.bg-gm-primary {
    padding-top: 0 !important;
  }
}

@media (orientation: landscape) and (max-width: 852px) {
  .grow-top-section {
    min-height: 685px !important;
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-section .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-2) !important;
    padding-right: var(--space-2) !important;
  }
  .bottom-section {
    min-height: 578px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 150px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 502px !important;
  }

  #brands .card .card-body {
    min-height: 535px !important;
  }

  .card-header.bg-gm-primary {
    padding-top: 10px !important;
    height: 50px;
  }

  .card.card-product .card-body {
    min-height: 250px !important;
  }

  #baccto-products .card.card-product .card-body {
    min-height: 355px !important;
  }

  .baccto-photo-img {
    height: 218px !important;
  }

  .card-body > .row.align-items-center > .align-top > .mb-sm-2 {
    margin-bottom: 0.23rem !important;
  }

  .gm-brand .brand-card-img {
    margin-bottom: 10px !important;
  }
}

@media (orientation: landscape) and (max-width: 844px) {
  .home-section,
  .baccto-section,
  .gm-section,
  .general-section,
  .grow-top-section,
  .grow-section,
  .bottom-section {
    min-height: 628px;
    height: auto;
  }
  .navbar.main-padding {
    padding-left: var(--space-1) !important;
    padding-right: var(--space-1) !important;
  }

  .grow-section .grow-content {
    padding-top: 120px;
  }
  .grow-section {
    min-height: 525px;
  }

  .card-header {
    min-height: 75px;
  }
  .card-header.bg-gm-primary {
    padding-top: 15px;
  }

  .card-brand .card-body {
    min-height: 550px !important;
  }
}

@media (orientation: landscape) and (max-width: 812px) {
  .card-brand .card-body {
    min-height: 495px !important;
  }

  .section-brands .card-brand .card-body {
    min-height: 410px !important;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(4rem, 5vw, 4.25rem);
  }

  .main-padding {
    padding-left: var(--space-10) !important;
    padding-right: var(--space-10) !important;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 549px !important;
  }

  .baccto-photo-img {
    height: 318px;
  }

  .grow-content-pb.main-padding,
  .main-padding.questions-row,
  .bottom-section .bottom-content .main-padding,
  footer.main-padding {
    padding-left: var(--space-8) !important;
    padding-right: var(--space-8) !important;
  }

  .bottom-section {
    min-height: 525px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 150px;
  }
}

@media (orientation: landscape) and (max-width: 740px) {
  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 390px !important;
  }

  .bottom-section {
    min-height: 480px !important;
    margin-top: -50px;
  }

  .bottom-section .bottom-content {
    padding-top: 120px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 350px !important;
  }

  .card-header.bg-gm-primary {
    padding-top: 0 !important;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(3rem, 5vw, 3.25rem);
  }
}

@media (orientation: landscape) and (max-width: 720px) {
  .grow-top-section {
    min-height: 560px !important;
  }
  .grow-top-section .grow-content {
    padding-top: 170px;
  }

  .grow-section {
    margin-top: -60px;
    min-height: 430px !important;
  }
  .grow-section .grow-content {
    padding-top: 70px;
  }

  .grow-content-pb {
    padding-bottom: 100px;
  }

  .bottom-section {
    min-height: 500px !important;
  }
  .bottom-section .bottom-content {
    padding-top: 110px;
  }

  .bottom-section.baccto {
    min-height: 580px !important;
  }
  .bottom-section.baccto .bottom-content {
    padding-top: 120px;
  }

  .grow-content.main-padding,
  .bottom-content.main-padding {
    padding-left: var(--space-2) !important;
    padding-right: var(--space-2) !important;
  }
}

@media (orientation: landscape) and (max-width: 640px) {
  .home-section,
  .baccto-section,
  .gm-section,
  .general-section,
  .grow-top-section,
  .grow-section,
  .bottom-section {
    min-height: 475px !important;
  }
  .baccto-section,
  .gm-section,
  .general-section {
    min-height: 335px !important;
  }

  .navbar.main-padding {
    padding-left: var(--space-1) !important;
    padding-right: var(--space-1) !important;
  }

  .grow-section .grow-content {
    padding-top: 80px !important;
  }
  .grow-section {
    min-height: 400px !important;
  }

  .bottom-section {
    min-height: 410px !important;
    margin-top: -30px;
  }

  .bottom-section.baccto {
    min-height: 420px !important;
  }

  .bottom-section .bottom-content {
    padding-top: 60px;
  }

  .bottom-section.baccto .bottom-content {
    padding-top: 80px;
  }

  .card-header {
    min-height: 75px;
  }
  .card-header.bg-gm-primary {
    padding-top: 15px;
  }

  #baccto-products .card.card-brand-main .card-body,
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 350px !important;
  }

  .section-brands .card-brand .card-body {
    min-height: 420px !important;
  }

  #baccto-products,
  #garden-magic-products,
  .section-brands {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  #garden-magic-products .card-header.bg-gm-primary {
    padding-top: 0px;
  }

  #grow-heading,
  #footer-heading,
  .bottom-section h4 {
    font-size: clamp(3rem, 5vw, 3.25rem);
  }
}

@media (orientation: landscape) and (max-height: 499.98px) {
  /* Let content height drive section height */
  .home-section,
  .baccto-section,
  .gm-section,
  .general-section,
  .grow-top-section,
  .grow-section,
  .bottom-section {
    min-height: 495px;
    height: auto;
  }

  .home-section {
    min-height: 660px;
  }

  .grow-top-section {
    min-height: 660px;
  }
  .grow-top-section .grow-content {
    padding-top: 174px;
  }

  .grow-section {
    margin-top: -60px;
    min-height: 490px;
  }
  .grow-section .grow-content {
    padding-top: 150px;
  }

  h1 {
    font-size: 4em;
  }

  h1.baccto,
  h2 {
    font-size: 3em;
  }

  /* Compact overlay padding so hero is still visually balanced */
  .home-content {
    padding-top: 115px; /* 40px */
  }
  .grow-content,
  .bottom-content {
    padding-top: var(--space-8); /* 32px */
  }
  .grow-content-pb {
    padding-bottom: 100px; /* 40px */
  }

  .section-padding,
  .section-brands {
    padding-top: 40px;
    padding-bottom: 25px;
    padding-left: var(--section-padding-x-sm);
    padding-right: var(--section-padding-x-sm);
  }

  .intro-text {
    font-size: 1.1rem;
    line-height: 2rem;
  }

  .body-text {
    font-size: 0.9rem;
    line-height: 1.75rem;
  }

  .brand-card-title,
  .brand-card-title-lg {
    font-size: 1.75em;
  }

  .card-header.bg-gm-primary {
    padding-top: 15px;
    height: 75px;
  }

  .card-brand .card-body {
    height: 495px;
  }

  .section-brands .card-brand .card-body {
    min-height: 510px !important;
  }

  .section-brands .card-brand .card-body .brand-card-img {
    height: 245px;
  }

  .card-body .brand-card-img-wrap,
  .card-footer {
    text-align: center;
  }

  .card-body .brand-card-img-wrap picture img {
    display: block;
    margin: 0 auto;
  }

  .grow-top-section {
    margin-top: -125px;
  }

  #grow-heading,
  #footer-heading {
    font-size: 3.2rem;
  }
  .grow-top-section .grow-content p.grow-lead,
  .grow-section .grow-content p.grow-lead,
  .grow-content a.link {
    text-shadow: 3px 3px 5px rgb(50 50 50 / 75%);
  }

  .main-padding {
    padding-left: var(--space-2) !important;
    padding-right: var(--space-2) !important;
  }
}

@media (orientation: landscape) and (min-height: 430px) {
  #baccto-products .card.card-brand-main .card-body {
    min-height: 550px;
  }
  #garden-magic-products .card.card-brand-main .card-body {
    min-height: 600px;
  }
}

@media (orientation: landscape) and (max-height: 384px) {
  #baccto-products .card.card-product .card-body,
  #garden-magic-products .card.card-product .card-body {
    min-height: 230px !important;
  }

  .bottom-section.baccto {
    min-height: 485px !important;
  }

  .grow-section .grow-content p.grow-lead,
  .grow-content a.link {
    margin-bottom: var(--space-4);
  }
}

@media (orientation: landscape) and (max-height: 320px) {
  .home-section {
    min-height: 490px !important;
  }

  .section-brands .card-brand .card-body {
    min-height: 440px !important;
  }
}

/* --------------------------------------------------------------------------
   RETINA / HiDPI (device-pixel-ratio ≥ 2)
   All images are already served via <picture> + srcset, so no CSS bg-image
   overrides are needed today. This block is kept as a named anchor for
   future CSS background-image additions.
   -------------------------------------------------------------------------- */
@media (min-resolution: 2dppx), (-webkit-min-device-pixel-ratio: 2) {
  /* CSS background-image high-DPI overrides — add here if needed */
}

/* --------------------------------------------------------------------------
   REDUCED MOTION
   Respects the OS/browser "reduce motion" accessibility preference.
   Collapses all custom transitions and animations to near-instant.
   Bootstrap's own transitions are handled separately by its built-in check.
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

@media (min-width: 992px) {
  .main-padding {
    padding-left: var(--space-25) !important;
    padding-right: var(--space-25) !important;
  }

  .home-section {
    min-height: 968px;
  }

  .baccto-section,
  .gm-section {
    min-height: 685px;
  }

  .general-section {
    min-height: 520px;
  }

  .grow-top-section {
    min-height: 964px; /* matches home-footer-top-1920.png height */
  }
  .grow-section {
    min-height: 740px;
  }
  /* Questions content needs less top padding than the hero grow-content default */
  .grow-section .grow-content {
    padding-top: 180px;
  }
  .bottom-section {
    min-height: 840px;
  }
}
