:root {
  /* Monochromatic theme overrides */
  --theme-default: #FF7A00;
  --theme-light: #D57923;
  --theme-dark: #332F2B;
  --theme-secondary: #805F40;
  --bs-primary: #FF7A00;
  --bs-primary-rgb: 255,122,0;
  --text-color: #2F2F3B;
}

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
  height: auto;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

section,
.section-padding,
.section-padding-top,
.section-padding-bottom {
  scroll-margin-top: 100px;
}

.section-title,
.section-heading,
.page-title,
.section-title h2,
.section-title h3,
.section-title h4,
.section-title h5,
.section-title h6 {
  text-align: left;
}

.section-title p,
.section-title .subtitle,
.breadcrumb-wrapper p,
.page-heading p,
.page-heading h1,
.page-heading h2,
.page-heading h3,
.page-heading h4,
.page-heading h5,
.page-heading h6 {
  margin-bottom: 0;
}

.container,
.container-fluid {
  padding-left: 24px;
  padding-right: 24px;
}

@media (max-width: 575.98px) {
  .container,
  .container-fluid {
    padding-left: 16px;
    padding-right: 16px;
  }
}

.breadcrumb-section,
.section-padding {
  padding-top: 80px;
  padding-bottom: 80px;
}

.section-padding.pt-0 {
  padding-top: 0;
}

.section-padding.pb-0,
.section-padding-bottom.pb-0 {
  padding-bottom: 0;
}

.breadcrumb-wrapper,
.page-heading,
.section-title,
.product-content,
.single-footer-widget,
.offcanvas__content,
.shop-main-sidebar,
.single-sidebar-widget {
  text-wrap: pretty;
}

.page-heading.center,
.section-title.text-center,
.text-center .section-title,
.text-center .page-heading {
  text-align: center;
}

.breadcrumb-wrapper .page-heading h1,
.page-heading h1 {
  line-height: 1.08;
  letter-spacing: -0.03em;
}

.breadcrumb-wrapper .page-heading h6,
.section-title h6 {
  line-height: 1.2;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
}

.section-title h2,
.section-title h3,
.section-title h4 {
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.section-title p,
.product-content span,
.product-content del,
.shop-main-sidebar li,
.offcanvas__contact-text,
.footer-content p,
.header-top-wrapper p,
.header-top-wrapper a {
  line-height: 1.65;
}

.theme-btn,
.theme-btn-2,
.link-btn,
.header-right .cart-item .content h6,
.header-right .cart-item .content p,
.header-top-wrapper p,
.header-top-wrapper a {
  white-space: normal;
}

/* Limit flex layout to header/navigation related groups only to avoid
   unintended layout changes in product and footer sections. */
.header-top-wrapper,
.header-main,
.header-left,
.header-right,
.header__hamburger,
.offcanvas__top,
.offcanvas__contact ul li,
.social-icon,
.cart-item,
.cart-item .content,
.product-icon,
.form-clt,
.page-nav-wrap {
  display: flex;
  align-items: center;
}

.header-top-wrapper,
.cta-content {
  align-items: flex-start;
}

.header-top-wrapper,
.page-nav-wrap,
.cta-content {
  flex-direction: column;
}

/* Keep header top items horizontal on larger screens for better alignment */
@media (min-width: 992px) {
  .header-top-wrapper {
    flex-direction: row;
    align-items: center;
  }
}

.header-top-wrapper,
.header-main,
.header-left,
.header-right,
.offcanvas__top,
.offcanvas__contact ul li,
.social-icon,
.cart-item,
.cart-item .content,
.shop-catagory-items li a,
.product-icon,
.product-content .star,
.form-clt {
  gap: 10px;
}

.breadcrumb-wrapper,
.section-title,
.offcanvas__content,
.page-nav-wrap {
  gap: 16px;
}

.breadcrumb-wrapper {
  display: block;
  justify-content: center;
  padding: 42px 24px;
  text-align: center;
}

.breadcrumb-wrapper .page-heading {
  display: block;
  width: 100%;
}

.offcanvas__content,
.shop-main-sidebar,
.single-sidebar-widget,
.footer-content,
.product-content {
  justify-content: flex-start;
}

.shop-main-sidebar .single-sidebar-widget,
.offcanvas__contact ul,
.footer-widgets-wrapper .single-footer-widget,
.product-box-items,
.product-image,
.product-gallery-item,
.single-sidebar-widget {
  width: 100%;
}

.product-content,
.footer-content,
.shop-main-sidebar,
.single-sidebar-widget,
.woocommerce-notices-wrapper {
  display: block;
}

.product-content {
  padding-top: 16px;
  text-align: center;
}

/* Product detail pages use a left-aligned content layout for readability */
.product-details-content .product-content,
.product-details-wrapper .product-content {
  text-align: left;
}

.footer-content,
.shop-main-sidebar,
.single-sidebar-widget {
  text-align: left;
}

.product-content h6,
.product-content span,
.product-content del,
.product-content .star,
.shop-main-sidebar h4,
.offcanvas__contact h4,
.footer-content h6,
.footer-content h3,
.cta-content h2,
.cta-content h3 {
  margin-bottom: 0;
}

.product-content h6 a,
.shop-catagory-items li a,
.footer-content p,
.offcanvas__contact-text a,
.header-top-wrapper a,
.header-top-wrapper p,
.breadcrumb-wrapper h1,
.page-heading h1 {
  word-break: break-word;
}

.product-box-items,
.single-sidebar-widget,
.offcanvas__content,
.footer-content,
.cta-wrapper-2,
.breadcrumb-wrapper {
  border-radius: 20px;
}

.product-box-items {
  height: 100%;
}

.product-image {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}

.product-image img {
  width: 100%;
  object-fit: cover;
}

.theme-btn,
.btn,
.theme-btn-2,
.link-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}

.theme-btn i,
.btn i,
.theme-btn-2 i,
.link-btn i {
  flex-shrink: 0;
}

.contact-area .contact-form-items .theme-btn:hover,
.contact-area .contact-form-items .theme-btn:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(128, 95, 64, 0.28);
  background-color: #805f40;
}

.contact-area .contact-form-items .theme-btn:hover i,
.contact-area .contact-form-items .theme-btn:focus-visible i {
  transform: translateX(3px);
}

.contact-area .contact-form-items .theme-btn i {
  transition: transform 0.25s ease;
}

.contact-area .contact-form-items .theme-btn::before {
  background-color: #805f40;
}

/* Keep the contact info tiles the same size on the contact page. */
.contact-info-section .row > [class*="col-"] {
  display: flex;
}

.contact-info-section .contact-info-items {
  width: 100%;
  min-height: 273px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product-icon {
  justify-content: flex-end;
}

.woocommerce-notices-wrapper {
  justify-content: space-between;
  flex-wrap: wrap;
}

.form-clt {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.page-nav-wrap {
  justify-content: center;
}

.woocommerce-notices-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
}

.footer-content p {
  margin-bottom: 0;
}

.offcanvas__contact ul li {
  align-items: flex-start;
}

.offcanvas__contact-text a,
.shop-catagory-items li a,
.header-top-wrapper a,
.cart-item .content a,
.footer-content a {
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.main-menu ul li a,
.submenu li a,
.sidebar-wrapper .sidebar-link,
.sidebar-wrapper .sidebar-submenu li a {
  line-height: 1.3;
}

body {
  font-family: 'Outfit', sans-serif;
  color: var(--text-color);
}

.page-body {
  padding: 24px 28px 32px;
}

.page-header {
  align-items: center;
  margin-bottom: 18px;
}

.page-header .page-title {
  min-height: 56px;
  display: flex;
  align-items: center;
}

.page-header .page-title h4,
.page-header .page-title h1,
.page-header .page-title h2,
.page-header .page-title h3,
.page-header .page-title h5,
.page-header .page-title h6 {
  margin-bottom: 0;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.page-header .header-wrapper,
.page-header .right-header,
.page-header .nav-menus,
.page-header .profile-media {
  align-items: center;
}

.card,
.card-header,
.table,
.table-responsive,
.form-control,
.form-select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  border-radius: 16px;
}

.card {
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(24, 34, 56, 0.06);
}

.card .card-header {
  padding: 18px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.card .card-body {
  padding: 22px;
}

.page-body .row {
  --bs-gutter-x: 1.25rem;
  --bs-gutter-y: 1.25rem;
}

.page-body .row.g-0,
.page-body .row.g-1,
.page-body .row.g-2,
.page-body .row.g-3,
.page-body .row.g-4,
.page-body .row.g-5 {
  --bs-gutter-x: inherit;
  --bs-gutter-y: inherit;
}

.table > :not(caption) > * > * {
  padding: 14px 16px;
  vertical-align: middle;
}

.table thead th {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.table td,
.table th {
  white-space: nowrap;
}

.form-control,
.form-select {
  min-height: 46px;
  padding: 0.75rem 1rem;
}

.form-label,
.col-form-label,
.input-group-text {
  line-height: 1.35;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  min-height: 46px;
  padding: 0.35rem 0.75rem;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  line-height: 1.9;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 9px;
}

.sidebar-wrapper .sidebar-link,
.sidebar-wrapper .sidebar-submenu li a {
  display: flex;
  align-items: center;
  gap: 10px;
}

.sidebar-wrapper .sidebar-link span,
.sidebar-wrapper .sidebar-submenu li a {
  line-height: 1.25;
}

.sidebar-wrapper .logo-wrapper,
.sidebar-wrapper .logo-icon-wrapper,
.header-logo-wrapper,
.right-header .profile-media {
  display: flex;
  align-items: center;
}

.sidebar-wrapper .sidebar-main-title,
.sidebar-wrapper .sidebar-list {
  margin-bottom: 8px;
}

.badge,
.btn {
  border-radius: 999px;
}

.btn {
  padding: 0.65rem 1rem;
}

.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

/* Helpful fallbacks for common classes */
.btn-primary, .bg-primary { background-color: var(--theme-default) !important; border-color: var(--theme-default) !important; }
.btn-primary, a.link-primary { color: #fff !important; }
.text-primary { color: var(--theme-dark) !important; }
.badge-primary { background-color: var(--theme-default) !important; }
