body {
  width: 100%;
  height: 100%;
}
h1, h2, h3, h4, h5, h6 {
  color: #444;
}
legend {
  padding: 7px 0;
  margin-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
}
label {
  font-size: 12px;
  font-weight: normal;
}
/* Chrome border line */
button:focus {
  outline: none !important;
}
/* container */
#container {
  width: 100%;
  min-height: 100%;
  position: absolute;
  margin-bottom: 300px;
}
/* content */
#content, #column-left, #column-right {
  padding-bottom: 730px;
}
@media (min-width: 576px) {
  #content, #column-left, #column-right {
    padding-bottom: 400px;
  }
}
#alert {
  z-index: 9999;
  position: fixed;
  top: 30%;
  left: 50%;
  width: 400px;
  margin-left: -200px;
}
@media (min-width: 992px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
@media (min-width: 1140px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
@media (min-width: 1320px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
#alert .alert {
  margin-bottom: 15px;
}
#alert .alert-primary {
  box-shadow: 0 0 0 5px rgb(var(--bs-primary-rgb), 0.1);
}
#alert .alert-secondary {
  box-shadow: 0 0 0 5px rgb(var(--bs-secondary-rgb), 0.1);
}
#alert .alert-success {
  box-shadow: 0 0 0 5px rgb(var(--bs-success-rgb), 0.1);
}
#alert .alert-warning {
  box-shadow: 0 0 0 5px rgb(var(--bs-warning-rgb), 0.1);
}
#alert .alert-danger {
  box-shadow: 0 0 0 5px rgb(var(--bs-danger-rgb), 0.1);
}
#alert .alert-info {
  box-shadow: 0 0 0 5px rgb(var(--bs-info-rgb), 0.1);
}
#alert .alert-light {
  box-shadow: 0 0 0 5px rgb(var(--bs-light-rgb), 0.1);
}
#alert .alert-dark {
  box-shadow: 0 0 0 5px rgb(var(--bs-dark-rgb), 0.1);
}
/* top */
#top {
  background-color: var(--bs-tertiary-bg);
  border-bottom: 1px solid var(--bs-border-color);
  margin-bottom: 20px;
  position: relative;
  padding-bottom: 5px;
}
#top ul.list-inline {
  margin-bottom: 0;
}
#top .list-inline-item > a, #top .list-inline-item .dropdown > a {
  font-size: 1.1em;
  color: var(--bs-gray-600);
  line-height: 40px;
  vertical-align: middle;
  padding: 10px 0px 5px 0px;
}
/* logo */
#logo {
  text-align: center;
  margin: 7px 0 7px 0;
}
#logo img {
  max-width: 200px;
}
@media (min-width: 768px) {
  #logo {
    text-align: left;
  }
}
/* search */
#search {
  margin-bottom: 10px;
}
#search .form-control-lg {
  height: 40px;
  font-size: 12px;
  line-height: 20px;
  padding: 0 10px;
}
#search .btn-lg {
  font-size: 15px;
  line-height: 18px;
  padding: 0.57rem 35px;
  text-shadow: 0 1px 0 #FFF;
}
/* cart */
#cart {
  margin-bottom: 10px;
}
#cart .img-thumbnail {
  min-width: 100px;
}
#cart .btn-lg {
  font-size: 15px;
  line-height: 18px;
  padding: 14px 35px;
}
#cart .dropdown-menu {
  background: #eee;
}
#cart .dropdown-menu li {
  min-width: 300px;
}
@media (max-width: 768px) {
  #cart .dropdown-menu li {
    min-width: 100%;
  }
}
/* menu */
#menu {
  /*background-color: #229ac8;
  background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
  background-repeat: repeat-x;
  border: 1px solid #1f90bb;
  border-color: #1f90bb #1f90bb #145e7a;*/
  min-height: 40px;
  border-radius: 4px;
  padding: 0 1rem;
  margin-bottom: 20px;
}
#menu .navbar-nav > li > a {
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  padding: 10px 15px 10px 15px;
  background-color: transparent;
}
#menu .navbar-nav > li > a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
#menu .dropdown-inner {
  display: flex;
  flex-direction: column;
}
#menu .dropdown-inner ul {
  width: 100%;
  min-width: 200px;
}
@media (min-width: 960px) {
  #menu .dropdown:hover .dropdown-menu {
    display: block;
  }
  #menu .dropdown-inner {
    flex-direction: row;
  }
  #menu .nav-item + .nav-item + .nav-item .dropdown-column-3 {
    left: -200px;
  }
  #menu .nav-item + .nav-item + .nav-item .dropdown-column-4 {
    left: -400px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-2 {
    left: -200px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-3 {
    left: -400px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-4 {
    left: -600px;
  }
}
#category {
  float: left;
  font-size: 16px;
  font-weight: 700;
  line-height: 40px;
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .navbar-toggler i {
  color: #fff;
  border-color: #fff;
  font-size: 0.9em;
}
/* default boostrap changes */
div.required .col-form-label:before, div.required .form-label:before {
  content: "* ";
  color: #F00;
  font-weight: bold;
}
.form-switch-lg {
  font-size: 20px;
  min-height: 30px;
  line-height: 30px;
}
.nav-tabs {
  margin-bottom: 15px;
}
.form-check .form-check-input {
  margin-top: 0.25rem;
}
@media (min-width: 768px) {
  .col-form-label {
    text-align: right;
  }
}
/* footer */
footer {
  border: 1px solid #000000;
  position: absolute;
  bottom: -1px;
  width: 100%;
  padding-top: 30px;
  background-color: #303030;
  border-top: 1px solid #ddd;
  color: #e2e2e2;
}
footer hr {
  border-top: none;
  border-bottom: 1px solid #666;
}
footer a {
  color: #ccc;
  text-decoration: none;
}
footer a:hover {
  color: #fff;
}
footer h5 {
  font-family: "Open Sans", sans-serif;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  margin-top: 10px;
  margin-bottom: 10px;
}
/* breadcrumb */
.breadcrumb {
  margin: 0 0 20px 0;
  padding: 8px 0;
  border: 1px solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  background-color: var(--bs-tertiary-bg);
}
.breadcrumb i {
  font-size: 15px;
}
.breadcrumb > li.breadcrumb-item {
  text-shadow: 0 1px 0 #FFF;
  padding: 0 20px;
  position: relative;
  white-space: nowrap;
}
.breadcrumb > li.breadcrumb-item > a {
  text-decoration: none;
}
.breadcrumb > li.breadcrumb-item:after {
  content: "";
  display: block;
  position: absolute;
  top: -3px;
  right: -5px;
  width: 29px;
  height: 29px;
  border-right: 1px solid var(--bs-border-color);
  border-bottom: 1px solid var(--bs-border-color);
  transform: rotate(-45deg);
}
.breadcrumb > li.breadcrumb-item + li:before {
  content: "";
  padding: 0;
}
.product-thumb {
  border: 1px solid #ddd;
  position: relative;
  height: 100%;
}
.product-thumb .image {
  text-align: center;
}
.product-thumb .image a:hover {
  opacity: 0.8;
}
.product-thumb .description {
  padding: 15px;
  margin-bottom: 45px;
}
.product-thumb .description h4 {
  font-weight: bold;
}
.product-thumb .button {
  display: flex;
  position: absolute;
  width: 100%;
  bottom: 0;
}
.product-thumb .button button {
  width: 33.33%;
  border: none;
  border-top: 1px solid var(--bs-border-color);
  background-color: var(--bs-tertiary-bg);
  color: var(--bs-gray-600);
  line-height: 38px;
  text-align: center;
}
.product-thumb .button button:hover {
  color: var(--bs-gray-600);
  background-color: #ddd;
  text-decoration: none;
  cursor: pointer;
}
.product-thumb .button button + button {
  border-left: 1px solid var(--bs-border-color);
}
@media (min-width: 960px) {
  .product-list .product-thumb {
    display: flex;
  }
  .product-list .product-thumb .image {
    flex-direction: column;
    margin-bottom: 0px;
  }
  .product-list .product-thumb .content {
    flex-direction: column;
    flex: 75%;
    position: relative;
  }
  .product-list .product-thumb .button {
    border-left: 1px solid #ddd;
    width: calc(100% -  15px);
    margin-left: 15px;
  }
}
.rating .fa-stack {
  width: 20px;
}
.rating .fa-star {
  color: #999;
  font-size: 15px;
}
.rating .fa-star {
  color: #FC0;
  font-size: 15px;
}
.rating .fa-star + .fa-star {
  color: #E69500;
}
/* product list */
.price {
  color: #444;
}
.price-new {
  font-weight: 600;
}
.price-old {
  color: #dc512c;
  text-decoration: line-through;
}
.price-tax {
  color: #999;
  font-size: 12px;
  display: block;
}
/* blog */
.blog-thumb {
  border: 1px solid #ddd;
  margin-bottom: 15px;
}
.blog-thumb h4 {
  font-weight: bold;
}
.blog-thumb .image {
  text-align: center;
  margin-bottom: 15px;
}
.blog-thumb .image a:hover {
  opacity: 0.8;
}
.blog-thumb .description {
  padding: 15px;
}
/* Theme Custom CSS */
#cookie {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 150px;
  z-index: 9999;
  opacity: 0.95;
  color: #ecf0f1;
  background: #343a40;
}
#cookie div {
  font-size: 16px;
  color: #FFFFFF;
}
/*biomass title and description*/
.biomass-title{
	font-size: 52px;
	font-weight: 700;
	line-weight: 1.15;
	color: #ffffff;
	margin-bottom: 24px;
	letter-spacing: -0.5px;
}

.biomass-description{
	font-size: 20px;
	font-weight: 400;
	line-height: 1.5;
	color: #e2f1fa;
	max-width: 650px;
	margin-bottom: 40px;
}



/* Container holds everything */
.technical-specifications-container {
  background-color: hsl(var(--card)); /* Dark blue from image */
  padding-top: 5rem;
  padding-bottom: 5rem;
  color: #ffffff;
}

/* Forces the main Header and the Features area side-by-side */
.technical-specifications-container .row {
  display: flex;
  flex-direction: row;
  /*align-items: stretch;*/
  gap: 30px;
}

/* Left side header styling */
.header-column {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  padding-right: 20px;
}

/* Makes text rotate vertically like your photo */
.spec-title {
  writing-mode: vertical-lr; 
  /*transform: rotate(180deg);*/
  font-size: 28px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
  white-space: nowrap;
}

/* Right side cards area */
.features-column {
  flex: 1;
  display: grid;
  flex-direction: row;
  gap: 2rem;
}

/* Inside the card: forces Icon and Text side-by-side */
.feature-card {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%); 
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border-radius: 0.75rem;
  padding: 2rem;
  /*display: flex;
  /*flex-direction: row; /* Forces side-by-side alignment */
  /*align-items: flex-start;
  /*gap: 20px;*/
  opacity: 1;
  transform: none;
}

/* Icon box */
.card-icon {
  flex: 0 0 auto;
  font-size: 28px;
  color: #f3a63b; /* Orange accent */
  line-height: 1;
}

/* Text area inside card */
.card-content {
  flex: 1;
}

.card-title {
  font-size: 20px;
  margin-top: 0;
  margin-bottom: 8px;
  font-weight: 600;
}

.card-text {
  font-size: 15px;
  color: #a7b3be;
  line-height: 1.625;
}

@media (max-width: 768px){
	.features-column {
		display: block;
	}
	.feature-card {
		margin-bottom: 20px;
	}
}

/* Mobile responsive fallback: stacks them on small screens */
@media (max-width: 768px) {
  .technical-specifications-container .row {
    flex-direction: column;
  }
  .header-column {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding-right: 0;
    padding-bottom: 20px;
  }
  .spec-title {
    writing-mode: vertical-tb;
    transform: none;
  }
}
@media (min-width: 768px) {
    .md/:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
/* Container & Background */
.tech-specs-section {
    padding: 60px 20px;
    text-align: center;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #ffffff;
}

/* Typography */
.tech-specs-title {
    font-weight: 700;
}

.tech-specs-subtitle {
    font-size: 1.125rem;
    color: #a7b3be;
    font-weight: 400;
    line-height: 1.75rem;
}

/* Table Wrapper styling (Card view) */
.tech-specs-table-wrapper {
    margin: 0 auto;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border-radius: 0.75rem;
    overflow: hidden;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
}

/* Core Table Structural Rules */
.tech-specs-table {
    width: 100%;
    text-align: left;
    font-size: 15px;
}

.tech-specs-table thead{
    background-color: #ff63331a;
}

.tech-specs-table tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tech-specs-table tbody tr:last-child {
    border-bottom: none;
}

/* Cell Spacing & Widths */
.tech-specs-table th,
.tech-specs-table td {
    padding: 1rem 1.5rem;
}

.tech-specs-table .col-param {
    width: 35%;
    font-weight: 600;
    color: #ffffff;
}

.tech-specs-table .col-spec {
    font-weight: 600;
    color: #ffffff;
}

.tech-specs-table .cell-param {
    color: #BAC7D5;
    font-weight: 500;
}

.tech-specs-table .cell-spec {
    color: #ffffff;
    font-weight: 500;
}

/* Mobile Responsiveness */
@media (max-width: 600px) {
    .tech-specs-title {
        font-size: 26px;
    }
    
    .tech-specs-table th,
    .tech-specs-table td {
        padding: 12px 16px;
        font-size: 14px;
    }
}
/* Container Background & Layout */
.industries-section {
    background: hsl(var(--card));
    padding: 5rem;
    text-align: center;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #ffffff;
}

/* Typography styling */
.industries-title {
    font-size: 36px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 12px;
    letter-spacing: -0.5px;
}

.industries-subtitle {
    font-size: 16px;
    color: #BAC7D5;
    margin-top: 0;
    margin-bottom: 48px;
    font-weight: 400;
}

/* Flexbox/Grid setup for the 5 cards row */
.industries-grid {
    display: flex;
    justify-content: center;
    gap: 20px;
    max-width: 1280px;
    margin: 0 auto 50px auto;
    flex-wrap: wrap;
}

/* Card Styling & Hover Transitions */
.industry-card {
    flex: 1;
    min-width: 200px;
    max-width: 240px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    overflow: hidden;
    text-align: left;
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), 
                box-shadow 0.3s ease, 
                border-color 0.3s ease,
                background-color 0.3s ease;
    cursor: pointer;
}

/* HOVER EFFECTS */
.industry-card:hover {
    transform: translateY(-8px); /* Card lifts smoothly up */
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(255, 255, 255, 0.25);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4), 
                0 0 15px rgba(255, 255, 255, 0.03);
}

/* Image Presentation within card */
.card-image-wrapper {
    width: 100%;
    height: 150px;
    overflow: hidden;
    background: #102A43; /* Fallback color */
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

/* Subtle image scale down/zoom when hovering card */
.industry-card:hover .card-img {
    transform: scale(1.05);
}

/* Text spacing layout inside cards */
.card-content {
    padding: 20px 16px;
}

.card-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 0.75rem 0;
    color: #ffffff;
    line-height: 1.2;
}

.card-desc {
    font-size: 13px;
    color: #BAC7D5;
    margin: 0;
    line-height: 1.4;
}

/* Centered Button Styling & Interactions */
.cta-wrapper {
    margin-top: 20px;
}

.industries-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.3);
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    transition: background 0.2s ease, border-color 0.2s ease;
}

.industries-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: #ffffff;
}

.btn-arrow {
    transition: transform 0.2s ease;
}

.industries-btn:hover .btn-arrow {
    transform: translateX(4px); /* Arrow shifts slightly forward */
}

/* Mobile responsive alignment adaptations */
@media (max-width: 1024px) {
    .industries-grid {
        justify-content: center;
    }
    .industry-card {
        flex: unset;
        width: calc(50% - 20px);
        max-width: 280px;
    }
}

@media (max-width: 600px) {
    .industries-section {
        padding: 50px 20px;
    }
    .industries-title {
        font-size: 28px;
    }
    .industry-card {
        width: 100%;
        max-width: 100%;
    }
}
/* Base Container Framework */
.homepage-showcase {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #ffffff;
    text-align: center;
}

/* ----------------------------------------------------
   1. UPPER SECTION (DARKER BACKGROUND)
---------------------------------------------------- */
.section-dark-panel {
    padding: 5rem;
}

/* Glassmorphism Badge Ribbon Border Box */
.badges-ribbon {
    max-width: 1100px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 24px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.badge-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.badge-icon {
    font-size: 16px;
}

.badge-text {
    font-size: 14px;
    font-weight: 600;
    color: #A3E635; /* Leaf Green matching text style */
    letter-spacing: -0.2px;
}

/* ----------------------------------------------------
   2. LOWER SECTION (LIGHTER GRADIENT / OPACITY)
---------------------------------------------------- */
.section-light-panel {
    background: hsl(var(--card)); /* Visually elevated lighter tone */
    padding: 5rem;
}

.featured-header {
    margin-bottom: 35px;
}

.featured-title {
    font-size: 40px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.featured-subtitle {
    font-size: 16px;
    color: #BAC7D5;
    margin-top: 0;
    font-weight: 400;
}

/* Button & Hover Properties */
.featured-action {
    display: flex;
    justify-content: center;
}

.btn-orange {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #FF6B4A 0%, #ED4C2F 100%);
    color: #ffffff;
    padding: 14px 32px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    box-shadow: 0 4px 15px rgba(237, 76, 47, 0.3);
    transition: transform 0.2s cubic-bezier(0.25, 0.8, 0.25, 1),
                box-shadow 0.2s ease,
                filter 0.2s ease;
}

.btn-orange:hover {
    transform: translateY(-2px);
    filter: brightness(1.08);
    box-shadow: 0 6px 20px rgba(237, 76, 47, 0.45);
}

.btn-orange .btn-arrow {
    transition: transform 0.2s ease;
}

.btn-orange:hover .btn-arrow {
    transform: translateX(4px);
}

/* Responsive Adapters */
@media (max-width: 900px) {
    .badges-ribbon {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        justify-items: start;
        padding-left: 40px;
    }
    .featured-title {
        font-size: 32px;
    }
}

@media (max-width: 600px) {
    .section-dark-panel, 
    .section-light-panel {
        padding: 40px 20px;
    }
    .badges-ribbon {
        grid-template-columns: 1fr;
        padding-left: 20px;
        gap: 16px;
    }
    .featured-title {
        font-size: 28px;
    }
    .btn-orange {
        width: 100%;
        justify-content: center;
    }
}
/* Core Layout Container & Background */
.sample-request-section {
    padding: 5rem;
    text-align: center;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #ffffff;
}

/* Typography Headers styling */
.sample-title {
    font-size: 36px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.sample-subtitle {
    font-size: 16px;
    color: #BAC7D5;
    margin-top: 0;
    margin-bottom: 48px;
    font-weight: 400;
}

/* Form Container Style (Glassmorphism layout card) */
.sample-form-card {
    max-width: 800px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 12px;
    padding: 40px;
    text-align: left;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

/* Form Groups Layout Rules */
.form-group {
    margin-bottom: 24px;
}

.form-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 8px;
}

.form-label .required {
    color: #EF4444;
    margin-left: 2px;
}

/* Base Form Input Styling Rules */
.form-control,
.form-select {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    padding: 12px 16px;
    font-size: 15px;
    color: #ffffff;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.form-control:focus,
.form-select:focus {
    border-color: #A3E635; /* Glow border transitions green on active focus */
    background-color: rgba(255, 255, 255, 0.08);
}

/* Custom Dropdown Chevron Icon Styling Injection */
.select-wrapper {
    position: relative;
    width: 100%;
}

.form-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 40px;
    cursor: pointer;
}

/* Inline dynamic chevron arrow vector */
.select-wrapper::after {
    content: "";
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid rgba(255, 255, 255, 0.5);
    pointer-events: none;
}

/* Two-column layout grid styling */
.form-row {
    display: flex;
    gap: 20px;
}

.col-half {
    flex: 1;
}

/* Custom placeholder visibility settings */
.form-control::placeholder {
    color: rgba(255, 255, 255, 0.3);
}

/* Styling specifically targetting default browser selected/unselected placeholder text colors */
.form-select:invalid,
.form-select option[value=""] {
    color: rgba(255, 255, 255, 0.4);
}

.form-select option {
    background-color: #102A43; /* Changes drop-down dark layer background option list values */
    color: #ffffff;
}

/* Neon Lime-Green Interactive Action Button styling rules */
.form-action {
    margin-top: 32px;
}

.btn-submit-lime {
    width: 100%;
    background-color: #A3E635; /* Bright neon green base color rule */
    color: #0B1D33; /* Contrasting core navy text output style */
    border: none;
    border-radius: 6px;
    padding: 15px 24px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(163, 230, 53, 0.2);
    transition: transform 0.2s cubic-bezier(0.25, 0.8, 0.25, 1), 
                box-shadow 0.2s ease, 
                filter 0.2s ease;
}

.btn-submit-lime:hover {
    transform: translateY(-2px); /* Lifts upward slightly */
    filter: brightness(1.05); /* Lights up cleaner background saturation colors */
    box-shadow: 0 6px 20px rgba(163, 230, 53, 0.4);
}

.btn-submit-lime:active {
    transform: translateY(0);
}

/* Responsive Structural Breakpoints adaptation */
@media (max-width: 768px) {
    .form-row {
        flex-direction: column;
        gap: 0;
    }
    .sample-form-card {
        padding: 24px;
    }
    .sample-title {
        font-size: 28px;
    }
}

@media (max-width: 480px) {
    .sample-request-section {
        padding: 50px 20px;
    }
}
/* Core Section Background */
.sample-request-section {
    padding: 5rem;
    text-align: center;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #ffffff;
}

.sample-title {
    font-size: 36px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.sample-subtitle {
    font-size: 16px;
    color: #BAC7D5;
    margin-top: 0;
    margin-bottom: 48px;
}

/* Glassmorphism Form Card Layout */
.sample-form-card {
    max-width: 800px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 12px;
    padding: 40px;
    text-align: left;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

.form-group { margin-bottom: 24px; }
.form-label { display: block; font-size: 14px; font-weight: 600; color: #ffffff; margin-bottom: 8px; }
.form-label .required { color: #EF4444; margin-left: 2px; }

/* Structural Form Control Inputs */
.form-control, .form-select {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 6px;
    padding: 12px 16px;
    font-size: 15px;
    color: #ffffff;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.form-control:focus, .form-select:focus {
    border-color: #A3E635;
    background-color: rgba(255, 255, 255, 0.08);
}

.select-wrapper { position: relative; width: 100%; }
.form-select { appearance: none; -webkit-appearance: none; -moz-appearance: none; padding-right: 40px; cursor: pointer; }
.select-wrapper::after {
    content: ""; position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
    width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid rgba(255, 255, 255, 0.5); pointer-events: none;
}

.form-row { display: flex; gap: 20px; }
.col-half { flex: 1; }
.form-select option { background-color: #102A43; color: #ffffff; }

/* Interactive Neon Lime Button */
.btn-submit-lime {
    width: 100%; background-color: #A3E635; color: #0B1D33; border: none; border-radius: 6px;
    padding: 15px 24px; font-size: 16px; font-weight: 700; cursor: pointer;
    box-shadow: 0 4px 15px rgba(163, 230, 53, 0.2);
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.btn-submit-lime:hover { transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 6px 20px rgba(163, 230, 53, 0.4); }

/* Feedback & Warning Ribbon UI styling */
.backend-error-ribbon {
    max-width: 800px; margin: 0 auto 30px auto; background-color: rgba(239, 68, 68, 0.15);
    border: 1px solid #EF4444; color: #FCA5A5; padding: 16px 20px; border-radius: 8px; text-align: left;
}

/* Success Pop-up Modal Design Layout */
.alert-modal-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(11, 29, 51, 0.85);
    backdrop-filter: blur(8px); display: flex; justify-content: center; align-items: center; z-index: 99999;
    animation: fadeIn 0.25s ease forwards;
}

.alert-modal-card {
    background: #102A43; border: 1px solid rgba(255, 255, 255, 0.15); border-radius: 16px;
    width: 90%; max-width: 480px; padding: 40px 30px; text-align: center; box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
    animation: scaleUp 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.success-checkmark-circle {
    width: 70px; height: 70px; background-color: rgba(163, 230, 53, 0.15); border: 2px solid #A3E635;
    color: #A3E635; border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: 32px; font-weight: bold; margin: 0 auto 24px auto;
}

.modal-alert-title { font-size: 22px; font-weight: 700; color: #ffffff; margin-bottom: 12px; }
.modal-alert-desc { font-size: 14px; color: #BAC7D5; line-height: 1.6; margin-bottom: 30px; }
.btn-modal-close { background-color: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.2); color: #ffffff; padding: 12px 32px; border-radius: 6px; font-weight: 600; cursor: pointer; }

@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes scaleUp { from { transform: scale(0.9); opacity: 0; } to { transform: scale(1); opacity: 1; } }

@media (max-width: 768px) { .form-row { flex-direction: column; gap: 0; } .sample-form-card { padding: 24px; } .sample-title { font-size: 28px; } }
/* Core Structural Layout Foundations */
.site-footer {
    background-color: hsl(var(--card)); /* Deep dark navy tone background matching your screen */
    color: #ffffff;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    padding: 60px 0 0 0;
    font-size: 14px;
}

.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px 40px 20px;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1.2fr 1.2fr;
    gap: 40px;
}

/* Typography Headings Controls */
.footer-title {
    color: #ffffff;
    font-size: 16px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 24px;
    position: relative;
}

/* Brand Identity Column Styles */
.col-brand .footer-logo {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

.col-brand .logo-icon {
    color: #FF6B4A; /* Vibrant accent color */
    font-size: 20px;
}

.col-brand .logo-text {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
}

.brand-desc {
    color: #BAC7D5;
    line-height: 1.6;
    margin-bottom: 24px;
}

/* Interactive Social Link Blocks */
.social-links {
    display: flex;
    gap: 12px;
}

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #BAC7D5;
    text-decoration: none;
    border-radius: 50%;
    font-weight: bold;
    transition: background 0.2s ease, color 0.2s ease;
}

.social-icon:hover {
    background: #FF6B4A;
    color: #ffffff;
}

/* List Formatting Framework Norms */
.footer-menu, 
.contact-details, 
.cert-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-menu li, 
.contact-details li, 
.cert-list li {
    margin-bottom: 14px;
    line-height: 1.5;
}

/* Navigation Links States Rule sets */
.footer-menu a, 
.contact-details a {
    color: #BAC7D5;
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer-menu a:hover, 
.contact-details a:hover {
    color: #ffffff;
}

/* Contact and Verification Certifications Vectors spacing */
.contact-icon {
    color: #FF6B4A;
    margin-right: 8px;
    display: inline-block;
    width: 16px;
}

.cert-list li {
    color: #BAC7D5;
    display: flex;
    align-items: center;
    gap: 10px;
}

.cert-check {
    color: #A3E635; /* Neon green indicator alignment matching top badges */
    font-weight: bold;
}

/* Legals & Copyright Strip Formatting Rules */
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding: 24px 0;
    margin-top: 20px;
}

.bottom-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}

.copyright-text {
    color: rgba(255, 255, 255, 0.4);
    margin: 0;
}

.legal-links a {
    color: rgba(255, 255, 255, 0.4);
    text-decoration: none;
    margin-left: 24px;
    transition: color 0.2s ease;
}

.legal-links a:hover {
    color: #ffffff;
}

/* Responsive Adaptive Viewport Scaling */
@media (max-width: 992px) {
    .footer-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }
}

@media (max-width: 600px) {
    .footer-container {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .bottom-wrapper {
        flex-direction: column-reverse;
        text-align: center;
    }
    .legal-links a {
        margin: 0 12px;
    }
}
/* ==========================================================================
   HOMEPAGE INDUSTRIAL HERO SECTION LAYOUT STYLES
   ========================================================================== */

.hero-section {
    position: relative;
    width: 100%;
    min-height: 100dvh; /* Covers most of the desktop viewport height display */
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 80px 10%;
    box-sizing: border-box;
    background-image: url('/image/catalog/biomass.jpg'); /* Place your industrial background asset image here */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Linear overlay mask that dissolves the raw photo boundaries into the dark blue site background */
.hero-overlay-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, hsl(210 60% 8% / 0.95) , hsl(210 60% 8% / 0.8) , hsl(210 60% 8% / 0.6));
    z-index: 1;
    pointer-events: none;
}

/* Content Container positioning above overlay layers */
.hero-content-wrapper {
    position: relative;
    z-index: 2;
    max-width: 850px;
    text-align: left;
    color: #ffffff;
}

/* Master Heading Styles */
.hero-main-title {
    font-size: 3.75rem;
    font-weight: 700;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 24px;
    letter-spacing: -1px;
}

/* Paragraph Text Parameters */
.hero-sub-description {
    font-size: 1.5rem;
    color: #BAC7D5; /* Soft grayish-blue to match image layout */
    line-height: 2rem;
    margin-top: 0;
    margin-bottom: 40px;
    font-weight: 400;
}

/* Flexible Buttons Group Placement Grid rules */
.hero-buttons-group {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    align-items: center;
}

/* Vibrant Orange Commercial Button CTA rules */
.btn-hero-orange {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #ff6333;
    color: #ffffff;
    padding: 16px 32px;
    font-size: 1.125rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    box-shadow: 0 4px 15px rgba(237, 76, 47, 0.3);
    transition: transform 0.2s cubic-bezier(0.25, 0.8, 0.25, 1),
                box-shadow 0.2s ease,
                filter 0.2s ease;
}

.btn-hero-orange:hover {
    transform: translateY(-2px);
    filter: brightness(1.06);
    box-shadow: 0 6px 20px rgba(237, 76, 47, 0.45);
}

.btn-hero-orange .btn-arrow {
    transition: transform 0.2s ease;
}

.btn-hero-orange:hover .btn-arrow {
    transform: translateX(4px); /* Arrow glides forward smoothly on hover */
}

/* Dark Translucent Glassmorphism Technical Button CTA rules */
.btn-hero-glass {
    display: inline-flex;
    align-items: center;
    background-color: #081421;
    
    color: #295214; /* Bright neon leaf-green text matching your spec themes */
    padding: 16px 32px;
    font-size: 1.125rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
}

.btn-hero-glass:hover {
    background-color: #295214;
    color: #ffffff;
    transform: translateY(-2px);
}

/* Responsive Scaling Breakpoints adaptations matrix */
@media (max-width: 992px) {
    .hero-section {
        padding: 60px 5%;
        min-height: 70vh;
    }
    .hero-main-title {
        font-size: 38px;
    }
    .hero-sub-description {
        font-size: 16px;
    }
    .hero-sub-description br, .hero-main-title br {
        display: none; /* Collapses structural formatting line breaks safely on mobile dashboards layout viewport screen sizes */
    }
}

@media (max-width: 600px) {
    .hero-section {
        text-align: center;
        justify-content: center;
    }
    .hero-content-wrapper {
        text-align: center;
    }
    .hero-buttons-group {
        flex-direction: column;
        width: 100%;
        gap: 14px;
    }
    .btn-hero-orange, .btn-hero-glass {
        width: 100%;
        justify-content: center;
        box-sizing: border-box;
    }
}
.header-nav-bar {
    position: fixed; /* Keeps header pinned to the top of the browser view on scroll */
    top: 0;
    left: 0;
    width: 100%;
    background-color: hsl(var(--card) / 0.95); /* Dark transparent navy background */
    backdrop-filter: blur(12px); /* Glassmorphism blur overlay effect */
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    z-index: 9999; /* Keeps header positioned above hero and banner modules */
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    box-sizing: border-box;
}

.nav-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 16px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 1. BRAND LOGO BLOCK OBJECT RULES */
.nav-brand-block .brand-link {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.brand-logo-txt {
    font-size: 20px;
    line-height: 1;
}

.brand-text-label {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.2px;
}

/* 2. CENTERED MENU INTERACTION SCHEMAS */
.nav-links-center .menu-items-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 28px;
}

.menu-link {
    font-size: 14px;
    font-weight: 500;
    color: #BAC7D5; /* Subdued gray-blue font color */
    text-decoration: none;
    transition: color 0.2s ease;
}

.menu-link:hover {
    color: #ffffff;
}

/* High-priority dynamic orange marker state for the active tab */
.menu-link.active-page {
    color: #FF6B4A !important;
    font-weight: 600;
}

/* 3. UTILITIES PANEL LAYOUT COMPONENT CONTROLS */
.nav-utilities-right {
    display: flex;
    align-items: center;
    gap: 24px;
}

.link-admin {
    font-size: 13px;
    font-weight: 500;
    color: #BAC7D5;
    text-decoration: none;
    transition: color 0.2s ease;
}

.link-admin:hover {
    color: #ffffff;
}

.link-cart {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: transform 0.2s ease;
}

.cart-icon-txt {
    font-size: 18px;
    line-height: 1;
}

.link-cart:hover {
    transform: scale(1.05);
}

/* RESPONSIVE LAYOUT RESPONSES MATRIX ADAPTERS */
@media (max-width: 992px) {
    .nav-container {
        padding: 16px 20px;
    }
    .nav-links-center {
        display: none; /* Hides full links row to swap for mobile drop menus if needed later */
    }
}
/* Custom Dark Sidebar Drawer Container */
.cart-drawer {
  position: fixed;
  top: 0;
  right: -450px; /* Hidden out of active window bounds */
  width: 400px;
  max-width: 100%;
  height: 100vh !important;
  background-color: #0b1424 !important; /* Deep Slate Navy-Blue tone matching your picture */
  box-shadow: -8px 0 25px rgba(0, 0, 0, 0.5);
  transition: right 0.35s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 999999 !important; /* Maximum layout priority stack to stay on top */
  display: flex !important;
  flex-direction: column !important;
}
.cart-drawer.open {
  right: 0; /* Brings panel into screen focus */
}

/* Enforced Visible Header Section */
.cart-drawer .cart-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 24px 20px !important;
  border-bottom: 1px solid #1e293b !important;
  background-color: #0b1424 !important; /* Explicitly matches container base */
  flex-shrink: 0 !important; /* Prevents the header height from getting crushed */
}

/* Explicitly Styled White Header Text */
.cart-drawer .cart-header h2 {
  font-size: 1.45rem !important;
  font-weight: 600 !important;
  color: #ffffff !important; /* Forced bright white visibility */
  margin: 0 !important;
}

/* Explicitly Styled Close Button */
.cart-drawer .close-btn {
  background: none !important;
  border: none !important;
  color: #94a3b8 !important; /* Clean gray/white contrast */
  font-size: 2.2rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: color 0.2s;
}
.cart-drawer .close-btn:hover {
  color: #ffffff !important;
}

/* Empty content block scrolling space */
.cart-drawer .cart-content {
  flex: 1 !important;
  overflow-y: auto !important;
  display: flex !important;
  flex-direction: column !important;
}
.cart-drawer .empty-state {
  margin: auto !important; /* Centers the empty state vertically and horizontally */
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  color: #94a3b8 !important;
}
.cart-drawer .cart-icon {
  font-size: 3.5rem !important;
  margin-bottom: 15px !important;
  color: #475569 !important;
}
.cart-drawer .empty-state p {
  font-size: 1.05rem !important;
  color: #94a3b8 !important;
  margin: 0 !important;
}
/* 1. Ensure the parent navbar container doesn't cut off the overflowing logo */
header.header-nav-bar {
  position: fixed !important;
  z-index: 100 !important; /* Puts the header stack above the lower banner content */
}

header.header-nav-bar .nav-container {
  display: flex !important;
  align-items: center !important; /* Keeps links centered in the navbar */
  justify-content: space-between !important;
  overflow: visible !important; /* Allows the logo to pop out downward */
}

/* 2. Style your specific logo wrapper block */
header.header-nav-bar .nav-brand-block {
  position: relative !important;
  overflow: visible !important;
  display: flex !important;
  align-items: center !important;
}

/* 3. Increase the logo size and offset it so it hangs downwards safely */
header.header-nav-bar #logo img {
  width: auto !important; 
  display: block !important;
  position: absolute !important; /* Detaches it from stretching the main menu height */
  top: -60px; /* Adjust this value up/down to vertically center the logo image */
  left: 0;
  z-index: 101 !important;
}

@media (max-width: 768px){
	header .header-nav-bar {
		padding: 10px 0 !important;
	}
	
	header .header-nav-bar .nav-container{
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
	}
	
	header .header-nav-bar .nav-brand-block,
	header .header-nav-bar #logo{
		position: static !important;
		width: auto !important;
		height: auto !important;
		max-width: 60% !important;
	}
	
	header .header-nav-bar #logo img{
		position: static !important;
		max-height: 50px !important;
		width: auto !important;
		max-width: 100% !important;
		object-fit: contain !important;
	}
}
/* Gray background overlay mask layer styles */
.cart-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75) !important;
  z-index: 999998 !important;
  display: none;
}
.cart-overlay.open { display: block; }

/* Main Navy Dark Sidebar Block Presentation Parameters */
.cart-drawer {
  position: fixed;
  top: 0;
  right: -420px; /* Fully outside right viewport coordinates */
  width: 380px;
  max-width: 100%;
  height: 100vh !important;
  background-color: #0b1424 !important; /* Deep Slate Navy color matching your design */
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.6);
  transition: right 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 999999 !important; /* Forces maximum depth priority stack top display */
  overflow: hidden;
}
.cart-drawer.open { right: 0 !important; }

/* Internal component structural splits alignment */
.cart-header-wrapper {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 22px 20px !important;
  border-bottom: 1px solid #1e293b !important;
  flex-shrink: 0;
}
.cart-header-wrapper h2 {
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  margin: 0 !important;
}
.cart-header-wrapper .close-btn {
  background: none !important;
  border: none !important;
  color: #64748b !important;
  font-size: 2.2rem !important;
  line-height: 1;
  cursor: pointer;
}
.cart-header-wrapper .close-btn:hover { color: #ffffff !important; }

.cart-body-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: calc(100vh - 80px);
}
.cart-items-scroll-list {
  flex: 1;
  overflow-y: auto;
  padding: 0 20px;
}

/* Individual list item component layout architecture */
.cart-item-row {
  display: flex !important;
  align-items: center !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid #1e293b !important;
  gap: 12px;
}
.item-thumb img {
  width: 60px !important;
  height: 60px !important;
  object-fit: cover;
  background-color: #1e293b;
  border: 1px solid #334155;
  border-radius: 6px;
}
.item-details { flex: 1; }
.item-name {
  color: #f8fafc !important;
  font-weight: 500;
  text-decoration: none !important;
  font-size: 0.95rem;
  display: block;
}
.item-name:hover { color: #38bdf8 !important; }
.item-option { color: #64748b; font-size: 0.8rem; margin-top: 2px; }
.item-meta { margin-top: 4px; font-size: 0.9rem; }
.item-qty { color: #475569; margin-right: 6px; }
.item-price { color: #f1f5f9; font-weight: 600; }

.btn-remove-item {
  background: none !important;
  border: none !important;
  color: #ef4444 !important;
  cursor: pointer;
  padding: 6px;
}

/* Base sticky bottom panel block styles setup */
.cart-drawer-footer {
  background-color: #070c16 !important;
  border-top: 1px solid #1e293b !important;
  padding: 20px !important;
  flex-shrink: 0;
}
.total-line {
  display: flex !important;
  justify-content: space-between !important;
  margin-bottom: 6px;
  font-size: 0.95rem;
}
.total-line:last-child {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  border-top: 1px dashed #273549;
  padding-top: 8px;
  margin-top: 6px;
}
.total-label { color: #94a3b8; }
.total-value { color: #f8fafc; }

.cart-actions-buttons { display: flex; gap: 10px; margin-top: 12px; }
.cart-actions-buttons .btn {
  flex: 1; padding: 11px !important; font-weight: 600 !important; border-radius: 6px !important; text-align: center; text-decoration: none;
}
.btn-view-cart { background-color: #1e293b !important; color: #f1f5f9 !important; border: 1px solid #334155 !important; }
.btn-checkout { background-color: #2563eb !important; color: #ffffff !important; border: none !important; }

/* Empty state styling */
.cart-body-content .empty-state {
  margin: auto !important; display: flex !important; flex-direction: column !important; align-items: center !important; color: #64748b !important;
}
.cart-body-content .cart-icon { font-size: 3.2rem; margin-bottom: 12px; color: #334155; }
/* Keeps the right side utility bar perfectly uniform on desktop displays */
.nav-right-utilities {
  display: flex !important;
  align-items: center !important; /* Forces vertical centering for user links and cart */
  gap: 15px !important; /* Standard spacing gap parameter between utility blocks */
}

.header-cart-wrapper #cart button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important; /* Change color value here to match navbar color guidelines */
}

/* Optional adjustment for your dynamic numerical bubble */
#cart-total-badge {
  font-size: 0.7rem !important;
  padding: 0.35em 0.5em !important;
}
/* ==========================================================================
   1. GLOBAL DARK THEME MODULE OVERRIDES FOR CART & CHECKOUT PAGES
   ========================================================================== */
/* Targets specific body templates via native routing attributes */
body[class*="checkout-cart"], 
body[class*="checkout-checkout"],
.checkout-cart-wrapper,
#checkout-checkout {
  background-color: #070c16 !important; /* Darkest matching layout background */
  color: #f8fafc !important;
}

/* 2. CARD BOARDS & TABLES CONTAINERS */
.checkout-cart-wrapper .card,
#checkout-checkout .card,
.checkout-cart-wrapper .table,
#checkout-checkout .table,
#accordion {
  background-color: #0b1424 !important; /* Slate navy tint from drawer */
  color: #f8fafc !important;
  border: 1px solid #1e293b !important;
  border-radius: 8px !important;
}

/* Force text inside tables to align visibly */
.table th, .table td {
  color: #f8fafc !important;
  border-color: #1e293b !important;
  vertical-align: middle !important;
  background-color: transparent !important;
}

.table th {
  background-color: #0f172a !important;
  font-weight: 600;
}

/* Links inside tables */
.table td a {
  color: #38bdf8 !important;
  text-decoration: none;
}
.table td a:hover {
  text-decoration: underline;
}

/* 3. INPUT FORM ELEMENT BOXES STYLING */
.checkout-cart-wrapper input, .checkout-cart-wrapper select, .checkout-cart-wrapper textarea,
#checkout-checkout input, #checkout-checkout select, #checkout-checkout textarea {
  background-color: #1e293b !important;
  color: #ffffff !important;
  border: 1px solid #334155 !important;
  border-radius: 6px !important;
}

.checkout-cart-wrapper input:focus, #checkout-checkout input:focus,
.checkout-cart-wrapper select:focus, #checkout-checkout select:focus {
  border-color: #2563eb !important;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.25) !important;
  outline: none;
}

/* Accordion headings */
.card-header, .accordion-header {
  background-color: #0f172a !important;
  border-bottom: 1px solid #1e293b !important;
  color: #ffffff !important;
}

/* 4. BUTTON THEMING */
/* View/Update Actions */
.checkout-cart-wrapper .btn-default, 
#checkout-checkout .btn-default,
.checkout-cart-wrapper .btn-light {
  background-color: #1e293b !important;
  color: #f1f5f9 !important;
  border: 1px solid #334155 !important;
}
.checkout-cart-wrapper .btn-default:hover, #checkout-checkout .btn-default:hover {
  background-color: #334155 !important;
}

/* Primary Progression Buttons (Checkout/Confirm Order) */
.checkout-cart-wrapper .btn-primary, 
#checkout-checkout .btn-primary,
#button-confirm {
  background-color: #2563eb !important; /* Vivid Blue Accent branding color */
  color: #ffffff !important;
  border: none !important;
  font-weight: 600 !important;
  padding: 10px 20px !important;
  border-radius: 6px !important;
  transition: background-color 0.2s;
}
#checkout-checkout .btn-primary:hover, #button-confirm:hover {
  background-color: #1d4ed8 !important;
}

/* Alert Boxes custom display */
.alert-success {
  background-color: #064e3b !important;
  border-color: #065f46 !important;
  color: #6ee7b7 !important;
}
.alert-danger {
  background-color: #7f1d1d !important;
  border-color: #991b1b !important;
  color: #fca5a5 !important;
}
/* ==========================================================================
   ELIMINATE THE BOTTOM SCROLL GAP ENTIRELY
   ========================================================================== */

/* 1. Base reset: Remove hard height constraints from the canvas fields */
html, body {
  height: auto !important; 
  margin: 0 !important;
  padding: 0 !important;
}

body {
  display: flex !important;
  flex-direction: column !important;
  min-height: 100vh !important; /* Forces the layout to be exactly screen height without overflow [1, 2] */
}

/* 2. Main content expands smoothly to push footer to absolute baseline [1] */
#content, 
main {
  flex: 1 0 auto !important; /* Naturally fills up any empty browser space [1] */
  padding-bottom: 50px !important; /* Safe workspace padding right before footer */
}

/* 3. Footer locks to the bottom with absolutely zero margins underneath */
footer {
  flex-shrink: 0 !important; /* Prevents the blue box from flattening out */
  position: relative !important;
  margin-top: auto !important; /* Pushes footer tight against screen bottom if page is short [1] */
  margin-bottom: 0 !important;
  padding-bottom: 30px !important;
  overflow: hidden !important; /* Safely clips inner margins from breaking outward */
}

/* 4. Strip margins off the final element block layers inside the footer */
footer p:last-child,
footer div:last-child,
footer .container:last-child {
  margin-bottom: 0 !important;
}
#content, main {
	padding-bottom: 0PX !important;
}
/* ==========================================================================
   MASTER GLOBAL DARK THEME OVERRIDE (APPLIES TO EVERY STORE PAGE)
   ========================================================================== */

/* 1. Core Backdrop & Base Typography Reset */
html, body {
  background-color: #081421 !important; /* Deepest dark main site canvas background */
  color: #f8fafc !important;            /* Universal soft white/gray body text */
}

/* 2. Style All Default Outer Content Structural Columns */
#content, 
main, 
#container,
.main-container,
.container {
  
  color: #f8fafc !important;
}

/* 3. Global Card & Inner Section Board Standardizer */
.card, 
.well, 
.thumbnail, 
.list-group-item,
.account-wrapper,
.product-thumb {
  background-color: #0b1424 !important; /* Deep Navy Slate panel color matching your side drawer */
  color: #f8fafc !important;
  border: 1px solid #1e293b !important;
  border-radius: 8px !important;
}

/* 4. Heading Element Structural Visibility Locks */
h1, h2, h3, h4, h5, h6, 
.page-header, 
.card-title,
strong {
  color: #ffffff !important; /* Forces bright standout white headings globally */
}

/* 5. Clean, Visible Interactive Hyperlinks */
a {
  text-decoration: none !important;
  transition: color 0.15s ease-in-out;
}
a:hover {
  color: #60a5fa !important;
  text-decoration: underline !important;
}

/* 6. Form Field Component Uniformity Layer */
input[type="text"], input[type="email"], input[type="password"], input[type="tel"],
select, textarea {
  background-color: #1e293b !important;
  color: #ffffff !important;
  border: 1px solid #334155 !important;
}
body #information-information #content{
	padding: 50px !important;
}
.h-12{
    height: 3rem;
}
.w-12{
    width: 3rem;
}
@media (min-width: 768px) {
    .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
.max-w-7xl {
    max-width: 80rem;
}
@media (min-width: 1024px) {
    .lg\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}
@media (min-width: 640px) {
    .sm\:px-6 {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}
.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}
.text-primary-orange{
    color: #ff6333;
}
.py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}
@media (min-width: 768px) {
    .md\:text-4xl {
        font-size: 2.25rem;
        line-height: 2.5rem;
    }
}
.text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
}